gpt4 book ai didi

java.awt.color.CMMException : LCMS error 12288

转载 作者:行者123 更新时间:2023-12-02 05:46:05 25 4
gpt4 key购买 nike

ImageIO.read 适用于我的大多数图像,但对于特定的 jpg 图像抛出此异常。

im = ImageIO.read(this.getClass().getResourceAsStream("plan3v2.jpg"));

此行抛出异常:

Exception in thread "main" java.awt.color.CMMException: LCMS error 12288
at sun.java2d.cmm.lcms.LCMS.getProfileData(Native Method)
at java.awt.color.ICC_Profile.getData(ICC_Profile.java:1310)
at com.sun.imageio.plugins.jpeg.JPEGImageReader.setImageData(JPEGImageReader.java:652)
at com.sun.imageio.plugins.jpeg.JPEGImageReader.readImageHeader(Native Method)
at com.sun.imageio.plugins.jpeg.JPEGImageReader.readNativeHeader(JPEGImageReader.java:593)
at com.sun.imageio.plugins.jpeg.JPEGImageReader.checkTablesOnly(JPEGImageReader.java:338)
at com.sun.imageio.plugins.jpeg.JPEGImageReader.gotoImage(JPEGImageReader.java:470)
at com.sun.imageio.plugins.jpeg.JPEGImageReader.readHeader(JPEGImageReader.java:586)
at com.sun.imageio.plugins.jpeg.JPEGImageReader.readInternal(JPEGImageReader.java:1004)
at com.sun.imageio.plugins.jpeg.JPEGImageReader.read(JPEGImageReader.java:984)
at javax.imageio.ImageIO.read(ImageIO.java:1438)
at javax.imageio.ImageIO.read(ImageIO.java:1342)
at TestClass.run(TestClass.java:13)
at TestClass.main(TestClass.java:8)

不确定错误“LCMS 错误 12288”的含义。

是否有任何替代 API 可以读取此类图像?

提前致谢。

最佳答案

您看到的“LCMS 错误”异常消息源自 LittleCMS 颜色管理模块,该模块首先在 OpenJDK 中引入,但现已在 Oracle JDK8 中取代了 KCMS(Sun 在其 Java 实现中使用的原始 Kodak CMM)。

假设图像与 this RedHat bug report 中引用的图像相同(它具有相同的文件名,并导致相同的异常),TwelveMonkeys ImageIO JPEGImageReader plugin可以阅读*。

图像中嵌入的 ICC 配置文件已损坏,因此我的读者会忽略它,但图像完全可读并且看起来仍然不错。

要使用该插件,只需将具有依赖关系的插件放置在类路径( see example )上。然后,您现有的代码应该像以前一样工作(没有异常(exception))。无需更改或重新编译任何内容。

<小时/>

*) 我只在 OS X 上的 JDK 1.6 和 OpenJDK 7 以及 Windows 上的 JDK 7 和 8 上进行了测试,但这应该不重要。 :-)

关于java.awt.color.CMMException : LCMS error 12288,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24064065/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com