如何在fabricjs中保留图像的位置
how to retain positions for images in fabric js
我正在尝试使用fabric js进行图像处理。我处理的是非常巨大的图像,因此我必须在图像处理后保存画布的副本,以便下次使用jquery的id.show可以更快地显示。
但我想在准确的位置渲染图像。我使用canvas.zoomToPoint and canvas.relativePan
缩放和平移图像,但在进行缩放+平移然后应用图像处理以显示隐藏画布并在隐藏画布上应用hiddencanvas.zoomToPoint and hiddencanvas.relativePan
之后,它不会在我离开旧画布的确切位置渲染图像
我做错了吗。这里有一个支持Fiddle。然而,Fiddle通过上传来渲染图像,如果你缩放、平移并点击反转,反转的图像不会移动到那里。平移代码:``var panding=false;canvas.on('mous:up',function(e){平移=错误;});
canvas.on('mouse:down', function (e) {
panning = true;
});
canvas.on('mouse:move', function(e) {
if (panning && e && e.e) {
var x = e.offsetX, y = e.offsetY;
var delta = new fabric.Point(e.e.movementX, e.e.movementY);
canvas.relativePan(delta);
//Above statement pan's the image but what to save to server in order to render the image on the exact panned location ?
}
});
``而这是缩放代码:canvas.zoomToPoint({ x: x, y: y }, newZoom);
我找到了答案,这是一个非常愚蠢的错误。
每个画布都有一个Viewport变换。所以,我们只需要得到canvas.viewportTransform
,然后我们就可以得到ScaleX,scaleY,left,top作为[ScaleX,0,0,scaleY,left,top]。
希望它能帮助到别人。
相关文章:
- javascript背景图像位置循环
- 使用JavaScript功能切换图像位置
- 视差'背景图像/位置/附件'jQuery的动画很不稳定
- 通过图像计数计算图像位置
- 如何在jquery中使用图像ID获取图像位置
- 在 HTML5 画布中,图像位置在设备之间更改
- 根据图像位置目录附加 CSS 样式
- 似乎无法使用关键事件更改图像位置
- 使用图形 API 检索照片的图像位置
- 具有自定义图像位置的全屏背景幻灯片(每张幻灯片)
- 使图像(位置:固定)仅在DIV内部可见
- 基于鼠标单击坐标显示图像位置
- 如何使用javascript更改网站上的背景图像位置
- 用javascript设置图像位置,不总是正确放置
- Javascript图像位置
- 如何在点击按钮时实现背景图像位置变化的幻灯片效果
- Javascript光标图像位置
- 链接或按钮鼠标悬停弹出框/图像位置更改
- 刷新页面后图像位置不正确
- 使用绝对图像位置