Как обрезать изображение, используя только матрицу? - PullRequest
0 голосов
/ 28 февраля 2020

Я хочу обрезать изображение, используя только матрицу в android. Информация об изображении: ширина: 2332, высота: 1660, прямоугольник обрезки: x: 700, y: 350, ширина: 520, высота: 560.

Я кодировал ниже, но это не удалось.

int width = bm.getWidth(); // 2332
int height = bm.getHeight(); // 1660
int newWidth = 520;
int newHeight = 560;
float scaleWidth = ((float) newWidth) / width;
float scaleHeight = ((float) newHeight) / height;

Matrix m = new Matrix();
m.setTranslate(-700, -350);
m.postScale(scaleWidth, scaleHeight);

iv.setImageBitmap(bm);
iv.setImageMatrix(m);
iv.setScaleType(ImageView.ScaleType.MATRIX);

Я знаю, что могу обрезать его методом createBitmap, но мне нужно использовать матрицу. Можете ли вы помочь решить эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...