【问题标题】:Zooming in fabricjs, object positions放大fabricjs,对象位置
【发布时间】:2013-10-27 03:53:34
【问题描述】:

我有一个关于对象位置的问题(我相信它类似于 calcOffset 正在修复的问题)。

我用鼠标滚轮放大。缩放后,形状会显示在新位置,但无法在这些位置处理。仅在其预变焦位置。

jsfiddle example

这是我的缩放代码:

function displaywheel(e){
    var SCALE_FACTOR = 1.1;
    var evt=window.event || e
    var delta=evt.detail? evt.detail*(-120) : evt.wheelDelta
    var objects = canvas.getObjects();
    var dd = 1;
    if (delta == 120) dd=SCALE_FACTOR;
    if (delta == -120) dd=1/SCALE_FACTOR;
    globscale = globscale * dd;
    for (var i in objects) {
        objects[i].setCoords;
        objects[i].scaleX = globscale;
        objects[i].scaleY = globscale;
        objects[i].left = objects[i].left * dd;
        objects[i].top = objects[i].top * dd;
        objects[i].setCoords;
    }
    canvas.renderAll();
    canvas.calcOffset();
}

【问题讨论】:

    标签: javascript canvas fabricjs


    【解决方案1】:

    setCoordsis a function,你需要这样称呼它:

    objects[i].setCoords();

    objects[i].setCoords; 什么都不做。

    http://jsfiddle.net/w5NjC/1/

    【讨论】:

    • 最初的小提琴不适用于 Mozilla。已修复 - jsfiddle.net/lakshaydulani/L8Lzc 归功于原始代码。
    • 并且他不需要在一个循环中调用 setCoords 两次。最后一个就够了
    猜你喜欢
    • 1970-01-01
    • 2021-01-04
    • 1970-01-01
    • 2012-06-08
    • 2015-08-23
    • 2015-11-19
    • 2017-01-31
    • 1970-01-01
    • 2019-05-19
    相关资源
    最近更新 更多