Zingchart通过冷融合获得图像数据



我试图提取通过CFCHART生成的曲线图的SVG内容,并将其传递给我的服务器,以将SVG转换为PNG

$('#downloadGraph').click(function() {
    zingchart.EXPORTURL = 'imageexport.cfm'; 
    zingchart.AJAXEXPORT = true;
    zingchart.exec('myChart', 'getimagedata', {
        format : 'png',
        callback : function(sImageData) {
            console.log(sImageData);
        }
    });
});

但是我得到以下错误

Uncaught TypeError: Cannot call method 'zcExec' of null 
cfchart-lite.js:1
zingchart.exec_flash cfchart-lite.js:1
zingchart.exec cfchart-html.js:165

我知道这个功能是有效的,因为如果你右键单击图形并选择"导出为PNG",它就可以工作,但我想在我的页面上放一个按钮来做同样的动作。

我解决了这个问题。除非呈现模式为canvas,否则不能调用getImageData。当我使用'SVG'它返回-1。然而,我认为cfchart-lite.js没有正确处理这个返回值。

解决方法是用saveasimage代替

zingchart.EXPORTURL = 'imageexport.cfm'; 
zingchart.AJAXEXPORT = true;
zingchart.exec('datasetChart', 'saveasimage', {
        format : 'png',
        callback : function(sImageData) {
            console.log(sImageData);
    }
});

相关内容

  • 没有找到相关文章

最新更新