首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Java中将BufferedImage设置为颜色

在Java中将BufferedImage设置为颜色
EN

Stack Overflow用户
提问于 2009-09-17 19:05:18
回答 5查看 47.4K关注 0票数 25

我需要创建一个具有指定背景颜色的矩形BufferedImage,在背景上绘制一些图案并将其保存到文件中。我不知道如何创建背景。

我使用的是嵌套循环:

代码语言:javascript
复制
BufferedImage b_img = ...
for every row
for every column
setRGB(r,g,b);

但当图像很大时,它会非常慢。

如何以更有效的方式设置颜色?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-09-17 19:09:31

获取图像的图形对象,将当前绘制设置为所需的颜色,然后调用fillRect(0,0,width,height)

代码语言:javascript
复制
BufferedImage b_img = ...
Graphics2D    graphics = b_img.createGraphics();

graphics.setPaint ( new Color ( r, g, b ) );
graphics.fillRect ( 0, 0, b_img.getWidth(), b_img.getHeight() );
票数 61
EN

Stack Overflow用户

发布于 2009-09-17 19:10:02

可能是这样的:

代码语言:javascript
复制
BufferedImage image = new BufferedImage(...);
Graphics2D g2d = image.createGraphics();
g2d.setColor(...);
g2d.fillRect(...);
票数 9
EN

Stack Overflow用户

发布于 2015-03-24 18:25:22

使用以下命令:

代码语言:javascript
复制
BufferedImage bi = new BufferedImage(width, height,
                BufferedImage.TYPE_INT_ARGB);
Graphics2D ig2 = bi.createGraphics();

ig2.setBackground(Color.WHITE);
ig2.clearRect(0, 0, width, height);
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1440750

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档