当我试图在画布上保存已编辑的图像时,边框会附加到图像上

时间:2015-05-26 13:00:38

标签: javascript html5 canvas fabricjs

我正在使用fabric.js开发一个图像编辑器,用户可以通过它编写,文本,签名并执行缩放和旋转操作。要将编辑后的图像保存在画布上,我使用以下功能。但是在保存该图像时,每次都会在图像上附加黑色边框。 saveAjaxCall是一个发送AJAX调用以将图像保存在服务器上的函数。我可以知道我在哪里做错了。

canvas.discardActiveGroup().renderAll();
var objs = canvas.getObjects().map(function(o) {
    return o.set('active', false);
});
var group = new fabric.Group(objs, {
    originX: 'center', 
    originY: 'center'
});
saveAjaxCall(group.toDataURL());
group._restoreObjectsState();

1 个答案:

答案 0 :(得分:0)

试试这个:

canvas.discardActiveGroup().renderAll();
var objs = canvas.getObjects().map(function(o) {
    return o.set('active', false);
});
var group = new fabric.Group(objs, {
    originX: 'center', 
    originY: 'center'
});
canvas.setWidth(1500);
canvas.setHeight(1200);
canvas.renderAll();
saveAjaxCall(canvas.toDataURL("png")); //default is jpg
group._restoreObjectsState();
canvas.setWidth(900);
canvas.setHeight(600);
canvas.renderAll();