Google visualization 解释为文档但使用MIME类型图像/八位字节流传输的资源

Google visualization 解释为文档但使用MIME类型图像/八位字节流传输的资源,google-visualization,Google Visualization,使用以下代码保存Google图表。但它是作为一个文件而不是一个图像被下载的,它是这样做的 "Resource interpreted as Document but transferred with MIME type image/octet-stream: "data:image/octet-stream;base64,..." 以及守则: function getImgData(chartContainer) { var chartArea = chartContainer.get

使用以下代码保存Google图表。但它是作为一个文件而不是一个图像被下载的,它是这样做的

"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");
  }

您可以使用带有
download
属性的锚定标记来分配文件名

大多数图表都有一个
getImageURI
方法

另外,不需要
替换(“image/png”、“image/octet-stream”)

请参阅以下工作片段

google.charts.load('current'{
回调:函数(){
var chart=new google.visualization.PieChart(document.getElementById('chart_div');
google.visualization.events.addListener(图表'ready',函数(){
//设置锚定标签
var saveLink=document.getElementById('saveLink');
saveLink.href=chart.getImageURI();
//使下载发生
saveLink.click();
});
chart.draw(google.visualization.arrayToDataTable([
[‘任务’、‘小时’],
[A',19.2],
[B',30.8],
[C',50.0]
]), {
身高:200,
图表区:{
top:24
},
图例:“无”,
pieHole:0.4,
主题:“最大化”,
宽度:200
});
},
软件包:['corechart']
});


保存图表
您要保存什么类型的图表?为什么不使用?另外,你能澄清一下,下载是作为文件而不是图像吗?如果不是在文件中,您打算如何保存图表?它是一个没有扩展名的文件。类似于windows exe文件的东西。