我在画布上绘制一个位图,然后对其进行一些缩放,非常简单,仅使用canvas.scale(int,int,ivot,ivot),然后在缩放完成后,我需要获取位图的坐标相对于视口。有没有一种简便的方法可以完成此操作,而无需自己计算出标尺之后的初始位置是什么?

实际上,具有缩放比例的位图可以变得比Canvas更大,因此我实际上需要视图和位图的剪辑大小(不可见的区域的大小,我想应小于x,y(0,0)。

最佳答案

我在想这个:

canvas.scale(scaleX, scaleY, pivotX, pivotY);

if (scaleX >= 1){
  objectNewX = objectOldX + (objectOldX - pivotX)*(scaleX - 1);
}else{
  objectNewX = objectOldX - (objectOldX - pivotX)*(1 - scaleX);
}

Y和另一个拐角都一样,这是我的头顶,还没尝试过...

07-24 09:25