Fabric.js:旋转组时的定位错误?

时间:2014-06-19 12:22:23

标签: javascript fabricjs

在fabric.js中旋转组时,组的.left和.top值会“跳转”。这是一个fabric.js错误还是以某种方式解释/打算?

group.on "moving", ->
    #Yields values of about 100 px, also after the group was rotated

group.on "rotating", ->
    #Yields values of about 130 px

JSFiddle - > http://jsfiddle.net/thomasf1/X76X9/2/

2 个答案:

答案 0 :(得分:2)

差异是由于originX和originY值在旋转时发生变化。 originX和originY将成为“中心”,取代其“左”和“顶”的典型值。我遇到了类似的问题,定位会改变,发现我需要知道原点值。

答案 1 :(得分:0)

我面临类似的问题,但不是与群体,而是单个对象。 对我来说,解决方案不是采用旋转物体的顶部和左侧位置,而是左上角Oocord x和y位置。

例如:

fabricPlace.on('object:modified', function(event){
var object = event.target;

var save = {};
save.position = {};

save.id = object.id;
save.position.y = object.oCoords.tl.y;
save.position.x = object.oCoords.tl.x;
save.position.angle = object.angle;

console.log(object);

changeObject(save);
});