我正在尝试提取通过CFCHART生成的zingchart的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’,它就可以工作,但我想在我的页面上放一个按钮来做同样的事情。
发布于 2013-01-10 06:42:28
我解决了这个问题。除非渲染模式为canvas,否则不能调用getImageData。当我使用'SVG‘时,它返回-1。但是,我认为cfcharlite.js没有正确处理这个返回值。
解决这个问题的方法是使用saveasimage
zingchart.EXPORTURL = 'imageexport.cfm';
zingchart.AJAXEXPORT = true;
zingchart.exec('datasetChart', 'saveasimage', {
format : 'png',
callback : function(sImageData) {
console.log(sImageData);
}
});https://stackoverflow.com/questions/14225801
复制相似问题