gpt4 book ai didi

java - 如何更改 GRAL 中的插图颜色?

转载 作者:太空宇宙 更新时间:2023-11-04 12:01:31 25 4
gpt4 key购买 nike

我正在尝试创建 GRAL 图表并将其导出为 JPG。

不知道为什么,但“插入”区域(边框外)的颜色似乎默认为黑色。这特别令人困惑,因为文档似乎表明插图默认为白色。

如何更改插图的颜色?

这是我导出 jpg 的方法

private void getJpg(BarPlot plot) {
BufferedImage bImage = new BufferedImage(800, 600, BufferedImage.TYPE_INT_ARGB);
Graphics2D g2d = (Graphics2D) bImage.getGraphics();
DrawingContext context = new DrawingContext(g2d);
plot.draw(context);
DrawableWriter wr = DrawableWriterFactory.getInstance().get("image/jpeg");
try {
wr.write(plot, new FileOutputStream("/path/out.jpg"), 800, 600);
} catch (IOException err) {
System.out.println(err);
}
}

这是我当前的结果(现在在黑色背景上使用白色文本,但希望在白色背景上使用黑色文本)。 current output

最佳答案

我明白了! (在同事的帮助下)

插入区域默认为透明黑色(RGBA(0,0,0,0))。因此,当图形导出为 JPEG(不支持透明度)时,它会删除 alpha 值并将其全部渲染为黑色。通过导出为 png,我能够保留透明度,并且当嵌入到具有白色背景的文档中时,图形现在看起来很好。

private static void getPng(XYPlot plot, String fileName) {
BufferedImage bImage = new BufferedImage(800, 600, BufferedImage.TYPE_INT_RGB);
Graphics2D g2d = (Graphics2D) bImage.getGraphics();
DrawingContext context = new DrawingContext(g2d);
plot.draw(context);
DrawableWriter wr = DrawableWriterFactory.getInstance().get("image/png");
try {
wr.write(plot, new FileOutputStream(fileName + ".png"), 800, 600);
} catch (IOException err) {
System.out.println(err);
}
}

关于java - 如何更改 GRAL 中的插图颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40852386/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com