2012-07-20 12 views
5

私はBIRT(3.7)をRCPアプリケーションと統合しようとしています。BIRT HTMLレポートに埋め込み画像のチャートを作成するには?

イメージ(PNG、SVG、e.t)に変換されたレポートチャートを生成する場合。私は生成中にしたいHTMLレポートは、埋め込まれたチャート(画像)を作る

埋め込み画像のチャートをHTMLレポートにするには?

setBaseImageUrl( "url")の決定が私に合っていません。

答えて

7

としてデザインを取り込むことができ、私は解決策を見つけた:)

... 
IReportRunnable design = engine.openReportDesign(designInputStream); 
IRunAndRenderTask task = engine.createRunAndRenderTask(design); 
IRenderOption options = null; 
switch (format) { 
      case ReportFormats.HTML_REPORT: 
       options = new HTMLRenderOption(); 
       options.setOutputFormat(HTMLRenderOption.HTML); 
       options.setOutputStream(outputStream); 
       options.setSupportedImageFormats("PNG"); 
       ((HTMLRenderOption) options).setEmbeddable(true); 
       options.setImageHandler(new HTMLServerImageHandler() { 
        @Override 
        protected String handleImage(IImage image, Object context, 
          String prefix, boolean needMap) { 
         String embeddedImage = null; 

         //embeddedImage = convert image.getImageStream() to Base64 String 

         return "data:image/png;base64," + embeddedImage; 
        } 
       }); 
       break; 
       ... 

if (options != null) { 
    task.setRenderOption(options);        
    task.run(); 
    task.close(); 
    engine.destroy(); 
} 
... 
0

あなたは、base64は、画像内のデータをエンコードし、これが便利なことが、あなたのページが大きくなりますすることができ、直接HTMLにまたはJavaScript変数

http://www.greywyvern.com/code/php/binary2base64/

としてそれを埋め込むことができます。

1

steps to insert image in birt design

ドラッグは、画像パレットからアイテムとは、上記の手順に従います。デザインにイメージを簡単に追加できます。あなたのcconvenienceに応じて、あなたは、HTML、DOC、PDFなど

+1

私はBIRTの要素画像をない意味あなたの答えをいただき、ありがとうございます。 イメージ(PNG、SVG、e.t)に変換されたレポートチャートを生成するとき。 世代中にしたいhtmlレポートチャート(画像)を埋め込む – archik

関連する問題