我正在尝试从画布数据中提取图像信息并将其显示在 .png 文件中。到目前为止,我已经能够使用 toDataURL() 方法从画布中提取 Base64 信息并创建一个 blob 对象(正确识别为 .png 图像),但图像始终为空白。有什么建议么?这是代码
var canvasData = markup.find('canvas');
var imageDataURL = canvasData[4].toDataURL("image/png");
var theData = atob(imageDataURL.substring('data:image/png;base64,'.length)), asArray = new Uint8Array(theData.length);
for (var i = 0, len = theData.length; i < len; ++i) {
asArray[i] = theData.charCodeAt(i);
}
var blob = new Blob([asArray.buffer], { type: 'image/png' }); saveAs(blob, 'export_' + Date.now() + '.png');
有趣的是,大小是正确的,唯一缺少的是 .png 中的实际图像。