Canvas 带有结构画布的FileSaver.js
我试图将FileSaver.js与Fabric.canvas对象一起使用,但Fabric js似乎没有blob选项 顺便说一下,我正在使用Meteor框架 如何在不使用basic canvas.todata URL的情况下导出结构画布?”Canvas 带有结构画布的FileSaver.js,canvas,meteor,fabricjs,filesaver.js,Canvas,Meteor,Fabricjs,Filesaver.js,我试图将FileSaver.js与Fabric.canvas对象一起使用,但Fabric js似乎没有blob选项 顺便说一下,我正在使用Meteor框架 如何在不使用basic canvas.todata URL的情况下导出结构画布?” 谢谢:)布料没有Blob的直接选项。但是您可以通过canvas.toJSON()将其导出到json中,也可以通过canvas.toDataURL()将其导出到image中。然后,只需这样做,就可以转换blob中的数据 导出布块中的织物画布: var dat
谢谢:)布料没有Blob的直接选项。但是您可以通过
canvas.toJSON()
将其导出到json中,也可以通过canvas.toDataURL()
将其导出到image中。然后,只需这样做,就可以转换blob中的数据
导出布块中的织物画布:
var data = JSON.stringify(canvas.toJSON()),
blob = new Blob([data], {type: "octet/stream"});
或
var data = canvas.toDataURL(),
blob = new Blob([data], {type: "octet/stream"});
您可以通过使用本机Canvas元素来实现这一点
var canvas=newfabric.canvas(“canvas”);
// ... 你的代码在这里。。。
canvas.getElement().toBlob(函数(blob){
saveAs(blob,“canvas.png”);
});
如果你想在Safari中使用它,你可以使用Sebastian Tschan。,文件服务器的github。你可以轻松地将dataURI字符串转换为blob。谢谢,这是一个非常好的主意。问题是它不适用于Safari…对我来说,png作为base64数据输出。所以它是一个无效的图像文件。调试后,我注意到变量blob2的data属性与变量data2具有相同的base64数据集。blob函数不是应该将这个base64转换成二进制数据吗?