问题
对1MB以上的图片进行图片压缩处理
thumbnailator
Maven
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.14</version>
</dependency>
Java
// 生成压缩图片
Thumbnails.of(originalImage)
.scale(0.25)
.toFile(tmpImageFile);
压缩成原来的25%的缩略图:
The above code takes the image in originalImage and creates a thumbnail that is 25% of the original image, and uses the default scaling technique in order to make the thumbnail which is stored in thumbnail.
TwelveMonkeys
由于JDK对BMP,JPEG,TIFF支持不是很好,例如,JPEG格式中的CMYK色彩空间,JDK就不支持,为了解决这些问题就有了TwelveMonkeys。
Note that GIF, PNG and WBMP formats are already supported through the ImageIO API, using the JDK standard plugins. For BMP, JPEG, and TIFF formats the TwelveMonkeys plugins provides extended format support and additional features.
Maven
</properties>
<twelvemonkeys.version>3.7.0</twelvemonkeys.version>
</properties>
...
<dependency>
<groupId>com.twelvemonkeys.imageio</groupId>
<artifactId>imageio-jpeg</artifactId>
<version>${twelvemonkeys.version}</version>
</dependency>
<dependency>
<groupId>com.twelvemonkeys.imageio</groupId>
<artifactId>imageio-tiff</artifactId>
<version>${twelvemonkeys.version}</version>
</dependency>
<dependency>
<groupId>com.twelvemonkeys.imageio</groupId>
<artifactId>imageio-bmp</artifactId>
<version>${twelvemonkeys.version}</version>
</dependency>
SPI
在META-INF/services
文件目录下,创建如下文件夹即可:
javax.imageio.spi.ImageReaderSpi
javax.imageio.spi.ImageWriterSpi
SPI效果:
git空目录提交
在空目录下面添加一个空文件,提交即可。