1
使用以下代码保存Google图表。但它越来越下载的文件,而不是图像,它被扔以下将资源解释为文档,但以MIME类型图像/八位字节流传输
"Resource interpreted as Document but transferred with MIME type image/octet-stream: "data:image/octet-stream;base64,..."
,代码:
function getImgData(chartContainer) {
var chartArea = chartContainer.getElementsByTagName('div')[1];
var svg = chartArea.innerHTML;
var doc = chartContainer.ownerDocument;
var canvas = doc.createElement('canvas');
canvas.setAttribute('width', chartArea.offsetWidth);
canvas.setAttribute('height', chartArea.offsetHeight);
canvas.setAttribute(
'style',
'position: absolute; ' +
'top: ' + (-chartArea.offsetHeight * 2) + 'px;' +
'left: ' + (-chartArea.offsetWidth * 2) + 'px;');
doc.body.appendChild(canvas);
canvg(canvas, svg);
var imgData = canvas.toDataURL("image/png");
canvas.parentNode.removeChild(canvas);
return imgData;
}
function saveAsImg(chartContainer) {
var imgData = getImgData(chartContainer);
window.location = imgData.replace("image/png", "image/octet-stream");
}
你节省什么类型的图表?为什么不使用['getImageURI()'](https://developers.google.com/chart/interactive/docs/printing)?另外,你可以澄清,_getting下载为一个文件,而不是一个image_?你如何计划保存图表,如果不在文件中? – WhiteHat
这是一个没有扩展名的文件。就像一个Windows exe文件。 – NaaN