用java处理图片的时候,ImageIO读jpg的时候出现exception:bandOffsets.length is wrong。我也遇到过,最终也解决啦,把成果跟大家分享。
原因可能是JPEG图片的ICC信息可能已经被破坏了,所以ImageIO会抛出异常
解决办法:
BufferedImage bis = null;
try{
bis = ImageIO.read(file);
bis.getWidth();
bis.getHeight();
}catch(Exception e){
try
{
ThumbnailConvert tc = new ThumbnailConvert();
tc.setCMYK_COMMAND(file.getPath());
Image image =null;
image = Toolkit.getDefaultToolkit().getImage(file.getPath());
MediaTracker mediaTracker = new MediaTracker(new Container());
mediaTracker.addImage(image, 0);
mediaTracker.waitForID(0);
image.getWidth(null);
image.getHeight(null);
}catch (Exception e1){
e1.printStackTrace();
}
}
这两句代码,是处理cmyk类型的图片,需要ImageMagick的支持
ThumbnailConvert tc = new ThumbnailConvert();
tc.setCMYK_COMMAND(file.getPath());//用于把cmyk转成rgb
ImageMagick的具体指令是:mogrify -colorspace RGB -quality 100 file1
分享到:
- 2008-08-28 13:51
- 浏览 3425
- 评论(6)
- 论坛回复 / 浏览 (4 / 6710)
- 查看更多
相关推荐
赠送jar包:imageio-core-3.1.1.jar; 赠送原API文档:imageio-core-3.1.1-javadoc.jar; 赠送源代码:imageio-core-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-core-3.1.1.pom; 包含翻译后的API文档:...
javax.imageio.ImageIO:用于读取和保存图像。 javax.swing:用于创建图形用户界面。 java.awt:用于图像处理。 java.awt.event:用于处理事件。 java.io:用于文件操作。 java.util.Random:用于生成高斯噪声。 ...
在Java编程环境中,图片处理是一项常见的任务,但有时可能会遇到“javax.imageio.IIOException: Unsupported Image Type”的错误。这个异常通常表示Java的`ImageIO`类库无法识别或支持所尝试读取或写入的图像格式。...
赠送jar包:jai-imageio-core-1.4.0.jar; 赠送原API文档:jai-imageio-core-1.4.0-javadoc.jar; 赠送源代码:jai-imageio-core-1.4.0-sources.jar; 赠送Maven依赖信息文件:jai-imageio-core-1.4.0.pom; 包含...
赠送jar包:jai-imageio-core-1.4.0.jar; 赠送原API文档:jai-imageio-core-1.4.0-javadoc.jar; 赠送源代码:jai-imageio-core-1.4.0-sources.jar; 赠送Maven依赖信息文件:jai-imageio-core-1.4.0.pom; 包含...
在Java编程中,图片处理...总的来说,理解和使用`ImageIO.read()`需要对Java I/O机制有一定了解,并能处理可能出现的各种异常情况。通过学习源码,开发者可以更深入地理解其工作原理,从而更好地应对实际开发中的挑战。
OCR(Optical Character Recognition,光学字符识别)技术是将图像中的文本转换为机器可读格式的关键工具,而`com.sun.media.imageio.plugins.tiff.TIFFImageWriteParam`则是Java中处理TIFF图像格式时的一个关键类,...
2. **写入 WebP 图像**:利用 ImageIO.write() 方法,将 Java 中的 BufferedImage 对象转换为 WebP 格式,进行文件保存或网络传输。 3. **支持透明度和动画**:由于 WebP 支持透明通道(Alpha 通道),这个库同样...
赠送jar包:imageio-tiff-3.1.1.jar; 赠送原API文档:imageio-tiff-3.1.1-javadoc.jar; 赠送源代码:imageio-tiff-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-tiff-3.1.1.pom; 包含翻译后的API文档:...
赠送jar包:imageio-jpeg-3.1.1.jar; 赠送原API文档:imageio-jpeg-3.1.1-javadoc.jar; 赠送源代码:imageio-jpeg-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-jpeg-3.1.1.pom; 包含翻译后的API文档:...
javax.imageio-1.0.5.jar, java处理图片的库。 从maven中央仓库下载的。实测可用。
赠送jar包:imageio-core-3.1.1.jar; 赠送原API文档:imageio-core-3.1.1-javadoc.jar; 赠送源代码:imageio-core-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-core-3.1.1.pom; 包含翻译后的API文档:...
imageio 2.3.0版本,下载到本地进行安装,直接pip安装可能因为下载文件速度太慢而报错。安装方法:1.打开cmd 2.安装whl文件,pip install imageio-2.3.0-py2.py3-none-any.whl(依赖会自行安装,下载速度还可以)
一个可以支持通过Java进行图片转换的jar包,封装好了跨平台动态链接库调用支持。https://link.zhihu.com/?target=https%3A//github.com/nintha/webp-imageio-core
赠送jar包:imageio-bmp-3.1.1.jar; 赠送原API文档:imageio-bmp-3.1.1-javadoc.jar; 赠送源代码:imageio-bmp-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-bmp-3.1.1.pom; 包含翻译后的API文档:...
赠送jar包:imageio-tiff-3.1.1.jar; 赠送原API文档:imageio-tiff-3.1.1-javadoc.jar; 赠送源代码:imageio-tiff-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-tiff-3.1.1.pom; 包含翻译后的API文档:...
jai-imageio-core-1.3.0.1.jar jai-imageio-core-1.3.0.1.jar
赠送jar包:imageio-metadata-3.1.1.jar; 赠送原API文档:imageio-metadata-3.1.1-javadoc.jar; 赠送源代码:imageio-metadata-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-metadata-3.1.1.pom; 包含...
赠送jar包:imageio-jpeg-3.1.1.jar; 赠送原API文档:imageio-jpeg-3.1.1-javadoc.jar; 赠送源代码:imageio-jpeg-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-jpeg-3.1.1.pom; 包含翻译后的API文档:...
1. **读取图像**:使用`javax.imageio.ImageIO.read()`方法,可以读取各种支持的图像格式,如JPEG、PNG等,添加WebP插件后,也可以读取WebP格式。 2. **写入图像**:`javax.imageio.ImageIO.write()`方法用于将...