获取 2D 变换后画布上位图的测量尺寸和位置

发布于 2024-11-06 01:43:42 字数 163 浏览 0 评论 0原文

我有一堆位图,我在应用了 2D 转换的画布上绘制(android.graphics.Camera 和 android.graphics.Matrix)。如何获取 Canvas 上位图的大小/位置?大小将是在画布上渲染的位图的边界,位置将是边界的左上角/左上角的坐标。所有位图都是没有 Alpha 通道的规则矩形。

I have a bunch of bitmaps that I draw on a Canvas applied with 2D transformation (android.graphics.Camera and android.graphics.Matrix). How do I get the sizes/positions of the bitmaps on Canvas? The size would be the bounds of the bitmap as rendered on Canvas and the position would be the coordinates of the top/left corner of the bounds. All the bitmaps are regular rectangles without an alpha channel.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

虚拟世界 2024-11-13 01:43:42

矩阵类有一个用于此目的的mapRect函数:

mapRect(RectF dst, RectF src)
将此矩阵应用于 src 矩形,并将转换后的矩形写入 dst。

将图像的尺寸作为源(如果使用整个图像,则将 x,y 指定为 0,0),然后将其将为您提供转换后的尺寸作为目标矩形。

The matrix class has a mapRect function for this purpose:

mapRect(RectF dst, RectF src)
Apply this matrix to the src rectangle, and write the transformed rectangle into dst.

Give the dimensions of the image as the source (and 0,0 for the x,y if you're using the whole image) and it will give you the transformed dimensions back as the dst rectangle.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文