2012-07-20 6 views
5

Ich versuche, BIRT (3.7) mit meiner RCP-Anwendung zu integrieren.BIRT Wie mache ich eingebettete Bild-Chart in HTML-Bericht?

Beim Generieren eines Berichtsdiagramms in ein Bild konvertiert (PNG, SVG, e.t). Ich möchte während der Generierung HTML-Bericht ein Diagramm (Bild) eingebettet machen

Wie mache ich eingebettete Bild-Chart in HTML-Bericht?

Die Entscheidung für setBaseImageUrl ("url") passt mir nicht.

Antwort

7

ich eine Lösung füllen :)

gefunden
... 
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(); 
} 
... 
1

steps to insert image in birt design

Ziehen Sie ein Bild Element aus Palette und die obigen Schritte folgen. Sie können Bild zu Ihrem Design leicht hinzufügen. nach Ihren cconvenience Sie können Ihren Entwurf als html, doc, pdf etc

+1

Vielen Dank für Ihre Antwort ich meine Element Bild ist nicht birt. Beim Generieren eines Berichtsdiagramms, das in ein Bild konvertiert wurde (PNG, SVG, e.t). Ich möchte während der Generierung HTML-Bericht ein Diagramm (Bild) eingebettet – archik