在序列化后,FabricJS与克隆的翻转问题

时间:2016-02-14 13:30:58

标签: canvas serialization fabricjs flip

当我改变一个对象的翻转时,画布上的所有内容看起来都是正确的,但是当我序列化画布和seserializatio后,它会采取错误的翻转。 我改变翻转的方式:

if(object) {
    if(type === 'flip-x'){
        (object.flipX ? object.set({ flipX: false }) : object.set({ flipX: true }));
    }else{
        (object.flipY ? object.set({ flipY: false }) : object.set({ flipY: true }));
    }
}
canvas.renderAll();

之后我用两种不同的方法克隆对象:

//1
var clonedObj = jQuery.extend(true, {}, arr[i]);
//2
savingOptions=['id'];
arr[i].clone(function(clonedObj){
    // getting clonedObj
},savingOptions);

这两个工作,也许首先需要改进但是在序列化之后克隆对象丢失了他的flipX和flipY无论我做什么。我正在做的序列化:

var data=JSON.stringify(canvas.toObject(savingOptions));
canvas.loadFromJSON(data,function(){
    canvas.renderAll();
});

我也在检查object.originalState,一切都好。

0 个答案:

没有答案