图片压缩的几个java开源库
时间:2022-06-26
本文章向大家介绍图片压缩的几个java开源库,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
本文转自:https://www.t-io.org/1152358001936572416
ImageIO
这个是JDK自带的,使用方法略
Hutool
hutool是个java工具库,它的使用没啥好介绍的,一行代码搞定
OpenCV
引入依赖
<dependency>
<groupId>org.bytedeco.javacpp-presets</groupId>
<artifactId>opencv</artifactId>
<version>4.0.1-1.4.4</version>
</dependency>
示例代码
/**
* @param srcImg
* @param desImg
* @param scale
* @author tanyaowu
*/
public static void scale(String srcImg, String desImg, double scale) {
Mat src = Imgcodecs.imread(srcImg);
Mat dst = src.clone();
Imgproc.resize(src, dst, new Size(src.width() * scale, src.height() * scale));
Imgcodecs.imwrite(desImg, dst);
}
Thumbnails
引入依赖
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.8</version>
</dependency>
示例代码
Thumbnails.of("原图文件的路径")
.scale(1f) //指定图片的大小,值在0到1之间,1f就是原图大小,0.5就是原图的一半大小,这里的大小是指图片的长宽
.outputQuality(0.5f) //图片的质量,值也是在0到1,越接近于1质量越好,越接近于0质量越差
.toFile("压缩后文件的路径");
- PHP实用功能——modern PHP读书笔记(一)
- ModernPHP读书笔记(二) ——PHP开发标准
- iBatis.Net(6):Data Map(深入)
- iBatis.Net(5):Data Map(了解)
- ModernPHP读书笔记(三)——PHP的良好实践
- PHP开发过程的那些坑(一) ——对象拷贝
- PHP开发过程的那些坑(二) ——PHP empty函数
- Thinking in SQL系列之数据挖掘Apriori关联分析再现啤酒尿布神话
- PHP开发过程的那些坑(三) ——PHParray_shift函数
- CSS3弹性盒布局
- iBatis.Net(4):DataMapper API
- PHP开发过程的那些坑(四) ——PDO bindParam函数
- iBatis.Net(3):创建SqlMapper实例
- PHP开发过程的那些坑(五) ——PHP的empty()
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- Linux basename命令的使用方法
- 在Ubuntu上搭建一个基于webrtc的多人视频聊天服务实例代码详解
- linux中权限管理命令详解(chmod/chown/chgrp/unmask)
- linux下用time(NULL)函数和localtime()获取当前时间的方法
- linux防火墙状态查看的方法实例
- 详解在linxu下Svn一键安装shell脚本
- Linux中screen命令及使用方法
- Linux中安装Composer的步骤分享
- Linux md5sum命令的使用方法
- linux文件管理命令实例分析【显示、查看、统计等】
- linux用户和组命令实例分析【切换、添加用户、权限控制等】
- Linux中Bash环境变量的配置方法
- Linux 中的防火墙 ufw 简介
- linux下如何实现快速拷贝大文件
- Linux硬链接与软链接原理及用法解析