画布缩放时如何裁剪图像

保罗·斯宾塞

在我正在处理的应用程序中,我实现了将图像拖动到结构Canvas上的拖放区的操作,其中拖放区用表示Rect放下时,Image会添加一个新的图像,我想用放到其上的矩形裁剪图像。我的实现基于这个小提琴:

http://jsfiddle.net/PromInc/ZxYCP/

由于页面大小可能很大,因此我正在使用该Canvas setZoom方法来管理放大和缩小。但是,当画布的缩放比例不是1时,上面的小提琴中的剪切技术将不起作用-上面的示例将画布缩放为0.5:

http://jsfiddle.net/pagameba/jjLe9wps/

我尝试了多种基于缩放来调整剪辑矩形的方法,但我只是想不出正确的组合。

保罗·斯宾塞

我已经使用固定版本更新了http://jsfiddle.net/pagameba/jjLe9wps/上的小提琴解决方法是根据画布的viewportTransform缩放和转换上下文。

ctx.scale(1 / x[0], 1 / x[3]);
ctx.translate(x[4], x[5]);

并缩放剪辑矩形的位置和大小

ctx.rect(
x[0] * clipRect.left - this.oCoords.tl.x,
x[3] * clipRect.top - this.oCoords.tl.y,
x[0] * clipRect.width,
x[3] * clipRect.height);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何缩放画布中的图像?

来自分类Dev

如何从图像画布中裁剪颜色部分?

来自分类Dev

如何在画布中对角裁剪图像

来自分类Dev

如何缩放,旋转和裁剪图像

来自分类Dev

如何缩放,旋转和裁剪图像

来自分类Dev

裁剪/缩放ImageNet图像

来自分类Dev

缩放和裁剪图像

来自分类Dev

画布内的图像缩放

来自分类常见问题

缩放图像以适合画布

来自分类Dev

缩放画布而不在画布内缩放图像

来自分类Dev

如何调整大小然后使用画布裁剪图像

来自分类Dev

如何按路径而不是区域裁剪画布图像

来自分类Dev

裁剪画布中显示的图像

来自分类Dev

缩放和裁剪图像(矩阵)

来自分类Dev

缩放div时裁剪内容

来自分类Dev

缩放div时裁剪内容

来自分类Dev

ffmpeg缩放,如何正确裁剪

来自分类Dev

缩放画布后如何在画布中保存原始尺寸的图像

来自分类Dev

单击按钮时如何使图像缩放

来自分类Dev

画布-裁剪不同形状的图像

来自分类Dev

图像对象裁剪并在画布中心绘制

来自分类Dev

通过画布旋转后的图像裁剪

来自分类Dev

使用画布旋转和裁剪图像

来自分类Dev

图像对象裁剪并在画布中心绘制

来自分类Dev

使用角度指令在页面加载时重新缩放和裁剪图像

来自分类Dev

使用缩放并拖动矩形来裁剪图像

来自分类Dev

在SVG中裁剪和缩放图像

来自分类Dev

如何从保存的base64图像中裁剪未使用的画布空间?

来自分类Dev

如何从相机裁剪图像