;
使用鼠标滚轮缩放后 , 在 Canvas 中绘制的图片的尺寸肯定是放大或者缩小了 , 尺寸发生了改变 ;
图片缩放时 , 鼠标指针指向一个位置 , 该位置对应着一个当前 Canvas 画布中的 x..., 需要进行下面两个步骤的操作 :
保存当前鼠标指针指向的位置 , 以及鼠标指针指向位置对应图片中坐标位置的比例 ;
鼠标指针指向的位置不变 , 指向图片坐标比例不变 , 图片尺寸发生了改变 , 重新计算当前图片的放置位置..., 并设置图片位置 ;
这样图片缩放时 , 始终可以保证鼠标指向的部位保持位置不变 ;
1、保存当前鼠标指针指向的位置
首先 , 在类中定义如下成员字段 ,
pointer_x 和 pointer_y...offsetX = (int) (pointer_x - canvasX);
offsetY = (int) (pointer_y - canvasY);
}
二、绘制超大图像...//g2.drawImage(image, 0, 0, this);
// 绘制图像
int imageWidth = (int) (image.getWidth