Как экспортировать JFreeChart ChartPanel в объект Image, включая добавленный CrosshairOverlay? - PullRequest
0 голосов
/ 13 октября 2019

У меня есть приложение, созданное с помощью Swing и JFreeChart, и я экспортирую объект ChartPanel в изображение (BufferedImage, если быть точным). Я ожидал, что добавленное наложение будет «частью» панели и будет экспортировано вместе с панелью, но это не так. Все экспортируется правильно, кроме наложения. Как сделать так, чтобы это включало наложение или экспортировать его в само изображение, чтобы я мог хотя бы попытаться как-то соединить их вместе?

Упрощенный код:

    CrosshairOverlay crosshairOverlay = new CrosshairOverlay();
    //overlay configuration here
    chartPanel.addOverlay(crosshairOverlay);

Код для экспорта панели:

    int width = 450;
    int height = 350;
    JFreeChart chart = chartPanel.getChart();
    BufferedImage image = chart.createBufferedImage(width, height);

Для справки вот скриншот из CrosshairOverlayDemo1:

CrosshairOverlayDemo1

...