首页 > 编程知识 正文

手机屏幕坐标软件(识别图片坐标的软件)

时间:2023-05-03 17:37:43 阅读:72578 作者:1621

ImageView使用矩阵类进行缩放(缩放)和平移(平移)。 如果可以获取矩阵,则可以获取缩放/平移视图的“左、上”坐标。

可伸缩代码和pannable extended imageview (可在堆栈溢出开机自检中使用)

在此帖子中,您可以看到扩展的ImageView类将矩阵用作用于缩放/变换的成员变量。

可以使用以下代码从矩阵中获取缩放/平移的ImagevIew (实际上是位图)边界:

RectF r=new RectF (;

matrix.maprect(r;

log.I(tag,' rect ' r.left ' ' r.top ' ' r.right ' ' r.bottom ' ' moverallscale ' ' );

新添加的回答

要理解以下代码,必须通过此link进行理解

翻译

用户拖动图像时,屏幕坐标(绝对)和位图坐标不同步。 应用“写入位图的所有内容都通过画布显示(onDraw )”明暗处理后,用户可以看到它应用于位图图像的其他区域。 要修正这个问题,必须进行翻译。 翻译将用户输入的坐标(画面坐标) )更改为位图坐标)。 正如用户的意图)。

下面的代码对翻译很有用。

让用户输入坐标(x,y )后,

RectF r=new RectF (;

matrix.maprect(r;

log.I(tag,' rect ' r.left ' ' r.top ' ' r.right ' ' r.bottom ' ' moverallscale ' ' );

float newX=x - r.left;

float newY=y - r.top;

请使用新坐标代替x,y。

缩放(缩放) ) )。

用户捏分/捏分时; 位图将缩小/放大。 必须观察原始位图保持不变,仅从显示角度进行缩放。

这将再次导致屏幕和位图之间的同步丢失。 应用于屏幕的着色必须反映在显示的图像中。

以下代码段有助于缩放。

//mscalingfactorshallcontainthescale/zoom factor

floatscaledx=(event.getx (-r.left ) );

floatscaledy=(event.gety (-r.top );

scaledX /=mScalingFactor;

scaledY /=mScalingFactor;

单词shash

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。