【发布时间】:2014-03-25 14:39:59
【问题描述】:
我需要一点帮助。我有一个带有触摸侦听器的 ImageView,我能够将所有触摸输入捕获到一个矩阵中,并将该矩阵应用于 ImageView 和瞧!图像可以适当地平移和缩放。
问题来了:我现在想裁剪图像,使其始终以相同的大小结束;例如 300x300 的图像。
换句话说,假设我的屏幕中间有一个 300x300 的正方形,用户平移和缩放图像,直到感兴趣的项目适合该正方形,然后点击“下一个”。我想要一张将照片裁剪为仅包含在框中的 300x300 部分的结果图像。
有道理吗??请帮忙!谢谢同志们!到目前为止,请参阅下面的一些代码。
float[] matrixVals = new float[9];
ImageTouchListener.persistedMatrix.getValues(matrixVals);
model.setCurrentBitmap(Bitmap.createBitmap(model.getOriginalBitmap(), 0, 0, model.getTargetWidth(), model.getTargetHeight(), ImageTouchListener.persistedMatrix, true));
model.setCurrentBitmap(Bitmap.createBitmap(model.getCurrentBitmap(), Math.round(matrixVals[Matrix.MTRANS_X]), Math.round(matrixVals[Matrix.MTRANS_Y]), model.getTargetWidth(), model.getTargetHeight(), null, false));
最后,我还希望能够将图像缩小到盒子中,其中边缘实际上可能需要用黑色或白色或某种边框填充......到目前为止,我所做的一切除了当我点击下一个时,完全没有平移或缩放崩溃。
再次感谢!
【问题讨论】: