如何从 Android 位图中提取区域

发布于 2024-12-03 09:11:10 字数 218 浏览 0 评论 0原文

我遇到了以下问题:

我有一个 android 位图和一组 4 个坐标,代表一个矩形。然而,矩形可以旋转。例如,我可能有坐标 0/50、50/0、100/50、50/100。因此,我不能简单地使用 Canvas drawBitmap(Bitmap bitmap, Rect src, RectF dst, Paint Paint) 函数,因为我无法在矩形对象中指定此类坐标。提取这样一个矩形的最佳方法是什么?

I am stuck with the following problem:

I have an android Bitmap and a set of 4 coordinates, representing a rectangle. However, the rectangle may be rotated. For example I may have the coordinates 0/50, 50/0, 100/50, 50/100. Therefore I cannot simply use the Canvas drawBitmap(Bitmap bitmap, Rect src, RectF dst, Paint paint) function because I cannot specify such coordinates in a rect Object. What would be the best way to extract such a rectangle?

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

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

发布评论

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

评论(1

蝶舞 2024-12-10 09:11:10

你能计算出你的矩形倾斜了多少角度吗?在这种情况下,您可以旋转画布:

canvas.rotate(angle, px, py);

其中 px 和 py 是矩形中心的坐标。

然后执行drawBitmap(Bitmap bitmap, Rect src, RectF dst, Paint Paint)。

Can you calculate what angle your rectangle is tilted? In that case you can rotate the canvas:

canvas.rotate(angle, px, py);

where px and py are the coordinates for the center of the rectangle.

And then do the drawBitmap(Bitmap bitmap, Rect src, RectF dst, Paint paint).

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