问题描述
我正在尝试下载PNG Imgaes,此代码适用于Chrome,Firefox,Edge。但是在IE10,IE11中,它是下载空白图片。无法理解,如何解决。在Blob里面有空内容。因此,请先获得帮助和感谢。
$scope.downloadGraPHPNG = function () {
var image = new Image();
console.log("PNG Images");
var canvas = document.createElement('canvas');
var svgElement = document.getElementById('svg_element');
svgElement.setAttribute('xmlns','http://www.w3.org/2000/svg');
var width = svgElement.getBBox().width;
var height = svgElement.getBBox().height;
var clonedSvgElement = svgElement.cloneNode(true);
var outerHTML = clonedSvgElement.outerHTML;
var URL = window.URL || window.webkitURL || window;
image.onload = function () {
canvas.setAttribute('width',parseFloat(svgElement.getAttribute('width')));
canvas.setAttribute('height',parseFloat(svgElement.getAttribute('height')));
var context = canvas.getContext('2d');
context.fillStyle = "#ffffff";
context.fillRect(0,canvas.width,canvas.height);
context.drawImage(image,0);
var png = canvas.toDataURL();
var fileName = getFileName("png");
if ($scope.isIe) {
window.navigator.msSaveBlob(blob,fileName);
} else {
var link = document.createElement('a');
link.download = fileName;
link.href = png;
raiseEvent(link,'click');
}
};
var blob = $scope.isIe ? canvas.msToBlob() : new Blob([outerHTML],{type: 'image/svg+xml;charset=utf-8'});
var blobURL = URL.createObjectURL(blob);
image.src = blobURL;
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)