JFreeChart 1.09 渲染 JPG 图表,整个背景为红色(或粉色)

发布于 2024-12-03 13:16:52 字数 219 浏览 2 评论 0原文

我遇到了这个问题,JFreeChart 1.09 渲染 JPG 图表,整个背景为红色(或粉红色)。我不是直接使用 JFreeChart,而是通过 Seam JSF 标签库、组件:linechartbarchart。它们都工作正常,只是渲染的 JPG 图像具有浅红色覆盖层背景。

是这样吗?或者我错过了什么?

非常感谢!

i'm stuck with this problem, JFreeChart 1.09 renders JPG charts with whole background in RED (or pink). I'm using JFreeChart not directly, but over Seam JSF taglibs, the components: linechart and barchart. They both work fine, only that the rendered JPG images have an light-red overlayer background.

Is it correct so? or im missing something?

Thank you very much!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

如果没结果 2024-12-10 13:16:52

完全相同的问题:JPEG 渲染上的红色/粉色背景。巴布亚新几内亚很好。
我尝试过几个不同版本的 jfreechart 和 jcommon,但没有任何运气。

我最终通过在创建缓冲图像时使用设置为 RGB 的 imageType 参数解决了该问题。

我有这样的代码:

BufferedImage buf = chart.createBufferedImage(320, 200, null);
response.setContentType("image/jpeg");
ChartUtilities.writeBufferedImageAsJPEG(response.getOutputStream(), 0.75f, buf);

我通过在第一行添加 BufferedImage.TYPE_INT_RGB 参数来解决:

BufferedImage buf = chart.createBufferedImage(320, 200, 
                             BufferedImage.TYPE_INT_RGB, null);

Exact same issue: red/pink background on JPEG rendering. PNG was fine.
I have tried with a few different versions of jfreechart and jcommon without any luck.

I have finally solved the issue by using an imageType parameter set to RGB when creating the buffered image.

I had this code:

BufferedImage buf = chart.createBufferedImage(320, 200, null);
response.setContentType("image/jpeg");
ChartUtilities.writeBufferedImageAsJPEG(response.getOutputStream(), 0.75f, buf);

I have solved by adding a BufferedImage.TYPE_INT_RGB parameter on the 1st line:

BufferedImage buf = chart.createBufferedImage(320, 200, 
                             BufferedImage.TYPE_INT_RGB, null);
感情旳空白 2024-12-10 13:16:52

问题是 jfreechart 的 1.09 版本有问题,以及每个 Maven 自动下载的 jcommon-1.012.jar。当我用 Seam 2.2.0.GA 发行版的 JAR 替换它们时,它们工作得很好。现在我可以保存并显示渲染的图像,没有任何问题。

The problem is the buggy version 1.09 of jfreechart, together with jcommon-1.012.jar automatica downloaded per Maven. As fas as i replaced them with the JAR from Seam 2.2.0.GA distribution, they worked fine. And now i can save ans show the rendered images without any problem.

友欢 2024-12-10 13:16:52

我认为你必须在 Plot 对象上设置背景颜色,例如:

plot.setBackgroundPaint(Color.WHITE);

I think you have to set the background color on your Plot object, something like:

plot.setBackgroundPaint(Color.WHITE);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文