Java / JAI - 将图像保存为灰度图像

4

我想保存彩色 tiff 文件,而不是灰度图像。我该怎么做?(必须使用 JAI,因为它是 tiff 格式!)

非常感谢您的帮助和支持。

2个回答

3
你需要下载JAI Image I/O工具,它为JAI提供了ImageIO适配器。一旦安装完成,就可以顺利使用了。
final BufferedImage in = ImageIO.read(new File("frabozzle.tif"));
final BufferedImage out = new BufferedImage(
    in.getWidth(), in.getHeight(),
    BufferedImage.TYPE_BYTE_GRAY);
out.getGraphics().drawImage(in, 0, 0, null);
ImageIO.write(out, "TIFF", new File("graybozzle.tif"));

嗯,我怎么能将图像保存为无压缩的灰度图像呢? - Tim
我在执行out.getGraphics()时遇到了异常:"main" java.lang.ArrayIndexOutOfBoundsException: 6422430。 - Tim
in = (java.awt.image.BufferedImage) BufferedImage@381d92; type = 0 ColorModel: #pixelBits = 32 numComponents = 1 color space = java.awt.color.ICC_ColorSpace@1d8e92 transparency = 1 alpha = false isAlphaPre = false sun.awt.image.SunWritableRaster@7e5130 - Tim
问题已经解决。我的图片,但是IrfanView显示为红色。我不知道为什么,在其他程序中可以正常显示,但在GIMP中不能 :-( - Tim

3

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接