Я нашел приведенный ниже код, который отлично работает. Делит изображение на 9 частей. Вы можете использовать этот код, чтобы разделить изображение на 16 частей. Это очень простой подход.
public Bitmap[] splitBitmap(Bitmap picture)
{
Bitmap scaledBitmap = Bitmap.createScaledBitmap(picture, 240, 240, true);
Bitmap[] imgs = new Bitmap[9];
imgs[0] = Bitmap.createBitmap(scaledBitmap, 0, 0, 80 , 80);
imgs[1] = Bitmap.createBitmap(scaledBitmap, 80, 0, 80, 80);
imgs[2] = Bitmap.createBitmap(scaledBitmap,160, 0, 80,80);
imgs[3] = Bitmap.createBitmap(scaledBitmap, 0, 80, 80, 80);
imgs[4] = Bitmap.createBitmap(scaledBitmap, 80, 80, 80,80);
imgs[5] = Bitmap.createBitmap(scaledBitmap, 160, 80,80,80);
imgs[6] = Bitmap.createBitmap(scaledBitmap, 0, 160, 80,80);
imgs[7] = Bitmap.createBitmap(scaledBitmap, 80, 160,80,80);
imgs[8] = Bitmap.createBitmap(scaledBitmap, 160,160,80,80);
return imgs;
}
Функция принимает исходное растровое изображение в качестве параметра, затем использует Bitmap.createScaledBitmap (изображение, 240, 240, true); я создал масштабированное изображение размером 240 x 240, чтобы разделить его на равные части, я создал сетку 3 x 3, в которой размер каждого изображения составляет 80 x 80. Это можно изменить в соответствии с вашими потребностями, но Ширина должна быть сохранена до 240, потому что все нормальные экраны телефонов Android имеют ширину 240 точек.
Все растровые изображения хранятся в массиве растровых изображений, и, наконец, функция возвращает массив обратно вызывающей функции.