Java语言利用Google的Thumbnailator处理图片
Posted 缘故为何
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java语言利用Google的Thumbnailator处理图片相关的知识,希望对你有一定的参考价值。
导读:在Java中制作高质量的缩略图可能是一项相当困难的任务,或者图片质量高页面加载慢等等原因使需要对图片进行处理,但是又不想写太多的代码太麻烦去处理图片,那么就可以使用Thumbnailator——Thumbnailator是一个单独的JAR文件,不依赖于外部库,使开发和部署变得简单和容易。
1.Thumbnailator能提供那些功能
- 图片裁剪
- 修改像素
- 缩小/扩大
- 压缩质量
- 旋转
- 加水印
- 转化图片格式
- 其他……
2.Thumbnailator怎么引入项目
maven的pom.xml添加下面的dependency:
<!-- https://mvnrepository.com/artifact/net.coobird/thumbnailator --> <dependency> <groupId>net.coobird</groupId> <artifactId>thumbnailator</artifactId> <version>0.4.8</version> </dependency>
也可以下载thumbnailator-0.4.8.jar包,导入工程lib下面;
3.Thumbnailator怎么使用
package com.tao.springboot; import net.coobird.thumbnailator.Thumbnails; import net.coobird.thumbnailator.geometry.Positions; import javax.imageio.ImageIO; import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; public class Thumbnailator { public static void main(String[] args) throws IOException { // 需要压缩的图片 File inFile = new File("C:/images/test.jpg"); // 压缩完的存放地址 String outFile = "C:/images/test.jpg"; // 图片裁剪 Thumbnails.of(inFile).sourceRegion(0,0,400,400).size(200,200).toFile(outFile); // 修改像素 Thumbnails.of(inFile).size(200,200).toFile(outFile); // 缩小 Thumbnails.of(inFile).scale(0.5f).toFile(outFile); // 扩大 Thumbnails.of(inFile).scale(2f).toFile(outFile); // 压缩质量 Thumbnails.of(inFile).outputQuality(0.5f).toFile(outFile); // 旋转 Thumbnails.of(inFile).rotate(90).toFile(outFile); // 图片水印 File waterFile = new File("C:/images/water.jpg"); Thumbnails.of(inFile).watermark(Positions.BOTTOM_CENTER, ImageIO.read(waterFile),0.5f).toFile(outFile); // 文字水印 BufferedImage bi = new BufferedImage(80,30,BufferedImage.TYPE_INT_BGR); Graphics2D g = bi.createGraphics(); g.setColor(Color.lightGray); g.drawRect(0,0,50,10); g.drawString("文字水印", 20,20); Thumbnails.of(inFile).watermark(Positions.BOTTOM_LEFT, bi, 0.5f).toFile(outFile); // 转化图片格式 Thumbnails.of(inFile).outputFormatType("png").toFile(outFile); } }
4.参考资料
github地址:https://github.com/coobird/thumbnailator
maven地址:https://mvnrepository.com/artifact/net.coobird/thumbnailator
以上是关于Java语言利用Google的Thumbnailator处理图片的主要内容,如果未能解决你的问题,请参考以下文章