diff gnv-artifacts/src/main/java/de/intevation/gnv/exports/ChartExportHelper.java @ 318:5f2820e821e0

Implemented a helper class for exporting charts. Adapted code. gnv-artifacts/trunk@376 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Thu, 26 Nov 2009 16:10:47 +0000
parents
children 18302372703f
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gnv-artifacts/src/main/java/de/intevation/gnv/exports/ChartExportHelper.java	Thu Nov 26 16:10:47 2009 +0000
@@ -0,0 +1,49 @@
+package de.intevation.gnv.exports;
+
+import java.awt.Transparency;
+import java.awt.image.BufferedImage;
+import java.io.OutputStream;
+import java.io.IOException;
+import javax.imageio.ImageIO;
+
+import org.apache.log4j.Logger;
+
+import org.jfree.chart.JFreeChart;
+
+/**
+ * @author Ingo Weinzierl <ingo.weinzierl@intevation.de>
+ */
+public class ChartExportHelper {
+
+    private static final String DEFAULT_PAGE_SIZE = "A4";
+
+    private static Logger log = Logger.getLogger(ChartExportHelper.class);
+
+    public static void exportImage(
+        OutputStream out,
+        JFreeChart chart,
+        String format,
+        int width,
+        int height
+    )
+    throws IOException
+    {
+        log.info("export chart as png");
+
+        ImageIO.write(
+            chart.createBufferedImage(
+                width, height, Transparency.BITMASK, null
+            ),
+            format,
+            out
+        );
+    }
+
+    public static void exportSVG() {
+        log.info("export chart as svg (not implemented yet)");
+    }
+
+    public static void exportPDF() {
+        log.info("export chart as pdf (not implemented yet)");
+    }
+}

http://dive4elements.wald.intevation.org