为了账号安全,请及时绑定邮箱和手机立即绑定

为什么canvas.toDataURL获取图片是空白。

为什么canvas.toDataURL获取图片是空白。

胡说叔叔 2018-09-04 13:14:57
 var type = 'png'; var canvas = document.createElement('canvas'); var imgData = canvas.toDataURL(type);var _fixType = function(type) {       type = type.toLowerCase().replace(/jpg/i, 'jpeg');       var r = type.match(/png|jpeg|bmp|gif/)[0];       return 'image/' + r;};imgData = imgData.replace(_fixType(type), 'image/octet-stream'); var saveFile = function(data, filename) {    var save_link = document.createElementNS('http://www.w3.org/1999/xhtml', 'a');        save_link.href = data;        save_link.download = filename;        var event = document.createEvent('MouseEvents');        event.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);         save_link.dispatchEvent(event);};var filename = 'weiyin_' + (new Date()).getTime() + '.' + type;saveFile(imgData, filename);为什么我最后下载出来的png是空白的呢
查看完整描述

1 回答

?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

你把

var imgData = canvas.toDataURL(type);

这句放在获取_fixType后面,并传一个_fixType进去再试试

var fixType = _fixType(type);var imgData = canvas.toDataURL(fixType);imgData = imgData.replace(fixType, 'image/octet-stream');

var canvas = document.createElement('canvas');

这句代码的意思,新创建一个空白canvas元素,所以后面获取到的base64图片也应该是空白的。所以最后就获取了空白了的图片


查看完整回答
反对 回复 2018-10-28
  • 1 回答
  • 0 关注
  • 4546 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号