我知道这个问题已被要求死亡,但我对我所看到的答案感到有些困惑。所以我想调整我在Android应用程序中显示在屏幕上的位图。我需要能够实时高效地调整大小。预计用户将不断调整图像周围的大小/平移,因此我希望尽可能高效地完成此操作。
到目前为止,我只看到Bitmap.createScaledBitmap(...)
,它似乎完全重建了位图。当用户执行捏合和缩放(许多连续调整大小)时,它会有一些延迟。
奇怪的是,当我尝试使用canvas.scale(...)
时,缩放图像没有任何延迟。唯一的问题是它也会调整坐标的大小,使其无法在此应用程序中使用。是否有类似于canvas.scale()
的位图,只是缩放图像而不重新加载它,类似于canvas.scale()
?
答案 0 :(得分:1)
您可以找到所有Canvas方法here
您所追求的可能是Canvas.scale(...)
和Canvas.save()
/ Canvas.restore()
方法的组合,可在绘制后重置坐标。
如果这不是您要找的,则另一个解决方案可能到get the current transformation matrix并应用于您的坐标以获取“当前有效”坐标。