Javascript 将画布保存到节点webkit中的磁盘
在我的应用程序中,我有从磁盘加载一些图像的画布。现在在修改画布之后,我需要一种将画布保存到磁盘的方法。我所有的工作都在Node Webkit平台上,因此它是一个桌面应用程序,我无法将Javascript 将画布保存到节点webkit中的磁盘,javascript,html,node.js,canvas,node-webkit,Javascript,Html,Node.js,Canvas,Node Webkit,在我的应用程序中,我有从磁盘加载一些图像的画布。现在在修改画布之后,我需要一种将画布保存到磁盘的方法。我所有的工作都在Node Webkit平台上,因此它是一个桌面应用程序,我无法将canvas.datatour发送到服务器。我也知道一些像这样的图书馆有一些保存的功能 var Caman = require('caman').Caman; Caman("/path/to/file.png", function () { this.brightness(5); this.render(fun
canvas.datatour
发送到服务器。我也知道一些像这样的图书馆有一些保存的功能
var Caman = require('caman').Caman;
Caman("/path/to/file.png", function () {
this.brightness(5);
this.render(function () {
this.save("/path/to/output.png");
});
});
但是我不知道如何使用它或如何将画布传递给此函数。因此,如何将当前画布保存为磁盘上的图像文件,如
png
或jpg
中的节点webkit
最后,我可以解决我的问题,并将不同图像格式的画布保存到磁盘上
在html页面上,而不是node.js端,包含html2canvas.js 然后: 不需要其他包
canvas.toBlob(function(blob) {
saveAs(blob, "image.jpg");
});
html2canvas($('div#main')).then(function(canvas) {
var dataurl = canvas.toDataURL();
dataurl = dataurl.replace(/^data:image\/(png|jpg|jpeg);base64,/, "");
require("fs").writeFile("C:\\out.png", dataurl, 'base64', function(err) {
console.log(err);
});
}).catch(function(e) {
console.log(e);
})