javax.imageio.ImageIO 是否读取 PPM 格式的图像(例如 rawbits P6)?
BufferedImage rawimage = ImageIO.read(new File(getClass().getResource("/lena.ppm").getFile()));
没有异常,但 rawimage
为 null
。其他格式(例如 png 和 jpg)也可以正常工作。
我有一个尴尬的解决方法,即去掉标题并逐行扫描 ppm 文件。 我假设 JAVA JAI(现在是 JDK 的一部分)将立即执行此操作。
我错过了什么吗?
最佳答案
据我所知,JAI 仍然不是 JDK/JRE 的一部分,它是单独的下载/安装。并且,是的,您将需要 JAI ImageIO (或其他第 3 方插件,如 my own )来读取 PPM,它不支持开箱即用。
ImageIO.read()
对于不支持的格式将返回 null
。这是预期/记录的行为。
您可以使用 ImageIO.getReaderFormatNames()
查询已安装支持的格式。 。
关于Java ImageIO读取ppm格式的图像返回null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22869957/