Example usage for org.jfree.chart.util ExportUtils writeAsSVG

List of usage examples for org.jfree.chart.util ExportUtils writeAsSVG

Introduction

In this page you can find the example usage for org.jfree.chart.util ExportUtils writeAsSVG.

Prototype

public static void writeAsSVG(Drawable drawable, int w, int h, File file) 

Source Link

Document

Writes the current content to the specified file in SVG format.

Usage

From source file:io.github.mzmine.util.jfreechart.JFreeChartUtils.java

public static void exportToImageFile(ChartViewer chartNode, File file, ImgFileType fileType) {

    final JFreeChart chart = chartNode.getChart();
    final int width = (int) chartNode.getWidth();
    final int height = (int) chartNode.getHeight();

    try {/*w ww  . j ava 2s  .c  o m*/

        switch (fileType) {

        case JPG:
            ExportUtils.writeAsJPEG(chart, width, height, file);
            break;

        case PNG:
            ExportUtils.writeAsPNG(chart, width, height, file);
            break;

        case SVG:
            setDrawSeriesLineAsPath(chart, true);
            ExportUtils.writeAsSVG(chart, width, height, file);
            setDrawSeriesLineAsPath(chart, false);
            break;

        case PDF:
            setDrawSeriesLineAsPath(chart, true);
            ExportUtils.writeAsPDF(chart, width, height, file);
            setDrawSeriesLineAsPath(chart, false);
            break;

        case EMF:
            FileOutputStream out2 = new FileOutputStream(file);
            setDrawSeriesLineAsPath(chart, true);
            EMFGraphics2D g2d2 = new EMFGraphics2D(out2, new Dimension(width, height));
            g2d2.startExport();
            chart.draw(g2d2, new Rectangle(width, height));
            g2d2.endExport();
            setDrawSeriesLineAsPath(chart, false);
            break;

        case EPS:
            FileOutputStream out = new FileOutputStream(file);
            setDrawSeriesLineAsPath(chart, true);
            EPSDocumentGraphics2D g2d = new EPSDocumentGraphics2D(false);
            g2d.setGraphicContext(new GraphicContext());
            g2d.setupDocument(out, width, height);
            chart.draw(g2d, new Rectangle(width, height));
            g2d.finish();
            setDrawSeriesLineAsPath(chart, false);
            out.close();
            break;

        }

    } catch (IOException e) {
        MZmineGUI.displayMessage("Unable to save image: " + e.getMessage());
        e.printStackTrace();
    }
}

From source file:de.hs.mannheim.modUro.controller.diagram.fx.ChartViewer.java

/**
 * A handler for the export to SVG option in the context menu.
 *///from   w w  w.  j a  v a 2s.c  om
private void handleExportToSVG() {
    FileChooser fileChooser = new FileChooser();
    fileChooser.setTitle("Export to SVG");
    fileChooser.setSelectedExtensionFilter(
            new FileChooser.ExtensionFilter("Scalable Vector Graphics (SVG)", "svg"));
    File file = fileChooser.showSaveDialog(this.getScene().getWindow());
    if (file != null) {
        ExportUtils.writeAsSVG(this.chart, (int) getWidth(), (int) getHeight(), file);
    }
}