JavaFX LineChart - 保存透明图像

时间:2016-06-29 20:06:05

标签: java javafx background-color linechart

我正在尝试将javaFX LineChart保存为PNG,我希望背景是透明的。如果我这样做:

SnapshotParameters spa = new SnapshotParameters();
spa.setFill(Color.TRANSPARENT);
chart.setStyle("-fx-background-color: transparent");
WritableImage writableImage = new WritableImage(width,height);
spa.setTransform(Transform.scale(x,y));
WritableImage img= chart.snapshot(spa, writableImage);    

我最终得到这样的东西:

img 1

正如您在此处所见,Axis刻度和标签变得透明,但绘图区域本身仍然具有背景灰色。有没有办法删除它?

1 个答案:

答案 0 :(得分:2)

如果您还没有使用您提供的tip jewelsea,可以使用以下内容在图表中添加样式表:

.chart > .chart-content > .chart-plot-background {
    -fx-background-color: transparent;
}