Thumbnailator概述:
Thumbnailator是与Java界面流畅的缩略图生成库。它简化了通过提供一个API允许精细的缩略图生成调整生产从现有的图像文件的缩略图和图像对象的过程,同时保持所需要的最少的代码量。个人的理解,它对java自带的图片处理工具进行了优化,在效率和使用的方便程度上都要高于java自带的处理工具。Thumbnailator的主要常用功能如下:
- 按尺寸原比例缩放图片
- 按百分比缩放图片
- 按尺寸缩放图片,但不保持原图片比例
- 按角度旋转图片
- 给图片添加水印效果
- 缩放图片写入到输出流中
下面将对各个功能进行逐一的示范演示,以及最终的处理效果
- 原图展示
- 按尺寸原比例缩放图片
代码如下:
public static boolean operateByMaxSize(String inSrc, String outSrc, int height, int width){ boolean flag = false; if(checkNull(inSrc) || checkNull(outSrc)){ return flag; } try { Thumbnails.of(inSrc).size(width, height).toFile(outSrc); flag = true; } catch (IOException e) { e.printStackTrace(); } return flag; }
处理之后的图片效果如下:
- 按百分比缩放图片
代码如下:
public static boolean operateByPer(String inSrc, String outSrc, double percent){ boolean flag = false; if(checkNull(inSrc) || checkNull(outSrc)){ return flag; } Builder<File> builder = Thumbnails.of(inSrc); builder.scale(percent); try { builder.toFile(outSrc); flag = true; } catch (IOException e) { e.printStackTrace(); } return flag; }
效果展示如下:
- 按尺寸缩放图片,但不保持原图片比例
代码如下:
public static boolean operateBySize(String inSrc, String outSrc, int height, int width){ boolean flag = false; if(checkNull(inSrc) || checkNull(outSrc)){ return flag; } Builder<File> builder = Thumbnails.of(inSrc); builder.size(width, height); builder.keepAspectRatio(false); try { builder.toFile(outSrc); flag = true; } catch (IOException e) { e.printStackTrace(); } return flag; }
效果展示如下:
- 按角度旋转图片
代码如下:
public static boolean rotate(String inSrc, String outSrc, double angle){ boolean flag = false; if(checkNull(inSrc) || checkNull(outSrc)){ return flag; } try { Thumbnails.of(inSrc).rotate(angle).size(1000, 1000).toFile(outSrc); flag = true; } catch (IOException e) { e.printStackTrace(); } return flag; }
效果展示如下:
- 给图片添加水印效果
代码如下:
public static boolean addWaterImg(String inSrc, String outSrc, String waterImg, Positions position, double percent) { boolean flag = false; if (checkNull(inSrc) || checkNull(outSrc) || checkNull(waterImg)) { return flag; } try { Thumbnails .of(inSrc).size(1000, 1000) .watermark(position, ImageIO.read(new File(waterImg)), 0.1f) .outputQuality(percent).toFile(outSrc); flag = true; } catch (IOException e) { e.printStackTrace(); } return flag; }
效果如下:
- 缩放图片写入到输出流中
代码如下:
public static void toOutputStream(String inSrc, String outSrc, int height, int width){ if (checkNull(inSrc) || checkNull(outSrc)) { return ; } OutputStream os = null; try { os = new FileOutputStream(outSrc); Thumbnails.of(inSrc).size(width, height).toOutputStream(os); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { try { os.close(); } catch (IOException e) { e.printStackTrace(); } } }
效果如下:
以上资源仅仅是为了个人的总结回顾,如有不当的地方请大家包含!
相关推荐
在Java编程环境中,图片压缩是一项常见的任务,尤其在处理用户上传的图像时,为了节省存储空间、优化网页加载速度或符合服务器对文件大小的限制,往往需要对图片进行压缩。以下是一些Java实现图片压缩的方法: 1. *...
这个库提供了一系列灵活的方法,使得在Java应用程序中进行图片操作变得简单易行。它不仅能够进行基本的图片缩放,还支持多种复杂的图像处理操作,如指定大小、旋转、添加水印以及裁剪等。 1. **图片缩放**:...
在Java编程语言中,处理图片是一项常见的任务,包括图片的缩放、比例调整以及压缩等操作。这些功能在各种应用场景中都有所体现,比如网页设计、图像处理软件、移动应用等。下面我们将深入探讨Java中如何进行图片的...
这是个工具类,可以实现图片的等比缩放,坑根据图片百分比,或者固定尺寸等进行缩放,还可以给图片增加水印,很好用
thumbnailator(包括jar包跟api) java用于图片压缩 生成缩略图 添加水印等 这是我见过最好的压缩工具了 使用方法: Thumbnails.of(new File("path/to/directory").listFiles()) .size(640, 480) .outputFormat(...
在这个压缩包中,包含的是 `thumbnailator-0.4.8.jar` 文件,它是`thumbnailator` 库的可执行版本,可以直接导入到Java项目中使用。 ### thumbnailator 简介 `thumbnailator` 是一个开源的Java库,由Cenote GmbH...
"Thumbnailator-0.2.6"是一个专门用于生成缩略图的Java包,它为开发者提供了一个简单且高效的API,只需几行代码即可快速实现缩略图的创建。这个开源项目深受Java开发者欢迎,因为其强大的功能和易用性。 **一、...
java开源 图片处理 thumbnailator-0.4.1.jar,最新jar包
在Java项目中使用thumbnailator,你需要将压缩包中的jar文件添加到项目的类路径(classpath)中。对于Maven项目,可以将以下依赖添加到pom.xml文件: ```xml <groupId>net.coobird</groupId> <artifactId>...
下面将详细解释如何使用Java和`gif4j`库进行GIF图片的缩放操作。 首先,你需要将`gif4j`库添加到项目依赖中。如果你使用Maven,可以在`pom.xml`文件中添加如下依赖: ```xml <groupId>com.xfio</groupId> ...
学习如何使用图像 I/O API、Java 2D API、图像处理、图像缩放技术......但不要害怕!Thumbnailator将为您处理所有这些事情!Thumbnailator 是一个单一的 JAR 文件,不依赖任何外部库,使开发和部署变得简单而轻松。...
3. **裁剪图片**:你可以使用Thumbnailator的裁剪功能来提取图片的一部分或调整其尺寸。例如: ```java Thumbnails.of("input.jpg") .scale(1.0) .crop(Positions.CENTER) .toFile("cropped.jpg"); ``` 这将裁剪...
本文将详细介绍如何使用Java语言来实现图片的缩放功能。 #### 一、Java实现图片缩放的重要性 随着多媒体内容的日益丰富,图片作为重要的信息载体,在各种应用场景中的使用频率越来越高。例如,在电商网站上,为了...
通过以上知识点,开发者可以利用Thumbnailator高效地进行图片处理,无论是简单的缩放、裁剪,还是复杂的批处理和自定义效果,都能轻松应对。在实际项目中,结合Thumbnailator的灵活性和易用性,可以大大提高图片处理...
如果处理的图片非常大,为了提高性能,可以考虑使用`BufferedImage`进行缩放,而不是直接改变`ImageIcon`的尺寸。同时,可以使用双缓冲技术来减少闪烁。 通过以上步骤,我们可以在Java中实现一个功能齐全的图像...
**Thumbnailator:Java 图像处理库** `Thumbnailator` 是一个功能强大的 Java 类库,专为简化和优化图像缩略图生成而设计。这个库以其易用性和灵活性著称,使得开发者无需深入了解图像处理的复杂性,就能快速高效地...
Java图片浏览管理系统是一款基于Java开发的简易应用,旨在帮助用户方便地查看和管理他们的图片集合。这个系统可能包含了文件浏览器组件、图片预览功能、以及一些基本的图片操作选项,如旋转、缩放等。下面将详细介绍...
总的来说,thumbnailator是一个强大且易于使用的Java库,适用于各种图片处理需求,特别是图片压缩和生成缩略图。通过灵活的API,开发者可以快速集成到自己的项目中,实现高效且高质量的图片处理功能。
标签:coobird、thumbnailator、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请...
3. thumbnailator-0.4.7-javadoc.zip:这是该库的Java文档,包含了详细的API说明,对于开发者来说,是理解和使用Thumbnailator的重要参考资料。 使用Thumbnailator时,你可以通过简单的几行代码实现缩略图的生成。...