缩放fabricjs,对象位置

时间:2013-10-24 08:06:57

标签: javascript canvas fabricjs

我有一个问题(我认为它类似于一个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();
}

1 个答案:

答案 0 :(得分:0)

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

objects[i].setCoords();

objects[i].setCoords;绝对没有。

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