4

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 にエクスポート」を選択すると機能するため、この機能が機能することはわかっていますが、ページに同じアクションを実行するためのボタンを配置したいと考えています。

4

1 に答える 1

3

問題を解決しました。getImageDataレンダリング モードが でない限り、呼び出すことはできませんcanvas。「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);

    }
});
于 2013-01-09T22:42:28.417 に答える