【发布时间】:2012-10-23 22:57:59
【问题描述】:
如何在画布平移和缩放后获得鼠标单击图像的 x 和 y 像素值?事件 x 和 y 需要计算什么?
我正在使用来自this answer 的平移和缩放代码:
var zoom = function(clicks) {
var pt = ctx.transformedPoint(lastX,lastY);
ctx.translate(pt.x,pt.y);
var factor = Math.pow(scaleFactor,clicks);
ctx.scale(factor,factor);
ctx.translate(-pt.x,-pt.y);
redraw();
}
var handleScroll = function(evt) {
var delta = evt.wheelDelta ? evt.wheelDelta/40 : evt.detail ? -evt.detail : 0;
if (delta) zoom(delta);
return evt.preventDefault() && false;
};
【问题讨论】:
-
你能告诉我们一些你试过的代码吗?
-
@cereallarceny - 感谢您的耐心和帮助!我删除了我以前无用的帖子。所以给定上面的代码,在用户缩放后,我需要做哪些计算才能在 mousedown 事件中获取图像 x 和 y 像素?
标签: javascript canvas mouseevent transform