0

グラフを PDF にエクスポートする際に問題があります。以下の例を見てください。

http://jsfiddle.net/adrianCC/MLasL/28/

    var chart = new Highcharts.Chart({
                chart: {
                    renderTo: 'container',
                    width: 600,
                    height: 90,
                    borderColor: '#000000',
                    borderWidth: 0,
                    type: 'line',
                    spacingLeft: 175 
                },
...

グラフは画像を埋め込んでエクスポートする必要がありますが、画像は pdf にエクスポートされません。ASP を使用しています。何が問題なのですか?

ありがとうございました!

4

2 に答える 2

0

エクスポート ツールは、コールバックでレンダラーを使用するなど、動的コンテンツなしでチャートを使用します。したがって、チャートの初期化中に画像を追加するロードチャートイベントでレンダラーを使用する必要があります。( http://api.highcharts.com/highcharts#chart.events.load )

例を見てみましょう: http://jsfiddle.net/MLasL/38/

events:{
                    load:function(){
                     this.renderer.image('http://87.106.176.87/Carel/Content/images/logo.jpg', 1, 1, 150, 50).add();

                    }
                }
于 2013-03-13T11:13:56.850 に答える
0

これが私がそれを解決する方法です:

  • Google canvgを使用 SVG ファイルまたは SVG ファイルのテキストへの URL を取得し、JavaScript で解析し、その結果を Canvas 要素にレンダリングします。

  • を使用してチャート SVG をキャンバスにレンダリングします

     canvg(document.getElementById('canvas'),getSVG());
    
  • キャンバスにあるものを画像に変換する

      var canvas = document.getElementById("canvas") ; 
      var img = canvas.toDataURL("image/png"); //img is data:image/png;base64
       img = img.replace('data:image/png;base64,', '');
    
  • 画像を非表示フィールドにレンダリングします

      $("hidden field").val(img) ;
    
  • この文字列をバイト配列に変換するには

     Dim imageFile() As Byte = Convert.FromBase64String(YOUR HIDDEN FIELD .Value)
    

アップデート

ハイチャート SVG を取得する

  • chart.getSVG()メソッドを使用する

ハイチャート API

jsFiddle の例

  • または単に使用する$(your svg).html()
于 2013-03-13T18:28:27.833 に答える