Example usage for org.jfree.chart.fx ChartViewer getHeight

List of usage examples for org.jfree.chart.fx ChartViewer getHeight

Introduction

In this page you can find the example usage for org.jfree.chart.fx ChartViewer getHeight.

Prototype

public final double getHeight() 

Source Link

Usage

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

public static void exportToClipboard(ChartViewer chartNode) {
    final Clipboard clipboard = Clipboard.getSystemClipboard();
    final ClipboardContent content = new ClipboardContent();
    final int width = (int) chartNode.getWidth();
    final int height = (int) chartNode.getHeight();
    WritableImage img = new WritableImage(width, height);
    SnapshotParameters params = new SnapshotParameters();
    chartNode.snapshot(params, img);//  w  w w.  j  a  v  a2  s  .  c o  m
    content.putImage(img);
    clipboard.setContent(content);
}

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 {/*  ww  w .  java2 s  .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();
    }
}