如何将图像转换为灰度?

时间:2015-03-17 14:29:10

标签: java graphics

我想简单地将图像转换为灰度。但我得到的只是一张完整的black图片。为什么呢?

BufferedImage original = ImageIO.read(url);
BufferedImage image = new BufferedImage(original.getWidth(), original.getHeight(), BufferedImage.TYPE_BYTE_GRAY);
Graphics g = image.getGraphics();  
g.drawImage(image, 0, 0, null);  
g.dispose();

它具有与源图像一样的正确宽度和高度,但是完全是黑色......

1 个答案:

答案 0 :(得分:3)

您正在将空图像写入自身。

更改

g.drawImage(image, 0, 0, null); 

g.drawImage(original, 0, 0, null);