想要在android imageview中将缩放的图像坐标与实际图像坐标进行映射

时间:2016-06-18 16:50:28

标签: android touchimageview

我目前正在使用这个gitup touchimageview https://github.com/MikeOrtiz/TouchImageView库....在缩放后,根据缩放百分比,我想将longpress坐标映射到原始图像坐标。任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

尝试获取ImageView的矩阵:

float[] values = new float[9];
getImageMatrix().getValues(values);

使用此数组,您在索引2和5上的图像方面具有左上角的位置。例如,当values[2], values[5]为-10时,-10表示,屏幕的左上角是10,10像素的图像。所以,你可以得到长按的坐标:

float imageX = (pressX - values[2])/scale;
float imageY = (pressY - values[5])/scale;

最近我使用缩放图像,并使用此库:https://github.com/chrisbanes/PhotoView 我认为它好一点,它有一些预先设定的图像坐标,并且仍在改进(最后提交〜2个月前)