图片压缩Unsupported Image Type异常,解决方法

问题

  • 需要对上传的大图片,在存储原文件后,另对它进行压缩存储作为缩略图。部分jpg图片在压缩时报错,导致没有压缩直接保存。网站页面展示这些5M左右的图片,打开变慢,影响使用
  • javax.imageio.IIOException: Unsupported Image Type
  • java.lang.IllegalArgumentException: Numbers of source Raster bands and source color space components

引入新的maven依赖

  • 按照网上教程试了一堆方法,各有瑕疵
  • 这个是imageio的bug,针对部分处理过的图片,无法正常读取
  • 最终找到了这个现成的解决方案,别人搞好的,这里就直接用了
  • 使用环境,jdk1.8,高版本应该都没问题,低版本没试过


    com.twelvemonkeys.imageio
    imageio-jpeg
    3.6


  • 引入后,确实没问题了
  • 如果没有使用maven,可以直接把jar包放进去,我这儿提供一个我使用的jar包的压缩包供参考:图片压缩新增依赖的jar包.zip

你可能感兴趣的:(java,异常报错,java,图片压缩,imageio,UnsupportedType)