Sample ImageКак масштабировать Bitmap нарисованы на холсте, спасая вращение и перемещение, заданное с Матрицей
Привет всем. Я новичок в манипулировании изображениями в android с использованием матрицы. Я работаю над приложением, которое отображает Bitmap # 1 на экране устройства.
Растровое изображение # 1 действительно большое, около 2592 X 1456, но уменьшено, чтобы соответствовать размеру экрана устройства для отображения целей.
Затем я нарисовал губы Растровое изображение (# 2) на растровой картинке # 1 Холст, используя матрицу (с поворотом, масштаб, перевод), как показано выше.
Именно поэтому я хочу сохранить копию окончательного растрового изображения, масштабированного назад до первоначального размера (2592 x 1456).
Я попытался достичь этого, масштабируя матрицу Bitmap # 1.
Это то, что я пытался до сих пор:
// adjust the matrix to the original image size
// new matrix big
Matrix newMatrix = new Matrix();
// copy matrix from small matrix
newMatrix = matrix;
RectF src = new RectF(0,0,backgroundImage.getWidth(), backgroundImage.getHeight());
RectF dst = new RectF(0,0, origBackground.getWidth(), origBackground.getHeight());
newMatrix.setRectToRect(src, dst, Matrix.ScaleToFit.CENTER);
canvas.drawBitmap(bitmap, newMatrix, paint);
Моя проблема заключается в том, что в результате растровый # 1, губы Bitmap (# 2) будет размещена на х = 0 и у = 0 а не в требуемых координатах, отсутствует указанное вращение.
http://developer.android.com/guide/practices/screens_support.html#scaling – xAF
Привет @xAF. Это делается на холсте. Я не использую виджет, который автоматически настраивается на экран. Я использую матрицу для этого. –
Пожалуйста, ознакомьтесь с моим предлагаемым правлением (надеюсь, я хорошо понял ваш вопрос) – xAF