上片文章说明了一下Thumbnails 的使用方法,包括图片缩放,裁切以及水印。现在单独的说一下压缩的事情。

对于压缩图片,我们常常是希望能够保证图片大小基本不变而且清晰度还能保持住。那么我们可以使用下面的方式

package com.basic.testdemo;import net.coobird.thumbnailator.Thumbnails;import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.math.BigDecimal;/*** @author summer* @date 2021-11-04  12:21*/
public class Demo3 {public static void main(String[] args) throws IOException {commpressPicCycle("D:\\testdemo\\1.jpg",2024,0.8);}public static void commpressPicCycle(String desPath , long desFileSize,double accuracy) throws IOException {File imgFile = new File(desPath);long fileSize = imgFile.length();//判断大小,如果小于500k,不压缩,如果大于等于500k,压缩if(fileSize <= desFileSize * 500){return;}//计算宽高BufferedImage bim = ImageIO.read(imgFile);int imgWidth = bim.getWidth();int imgHeight = bim.getHeight();int desWidth = new BigDecimal(imgWidth).multiply(new BigDecimal(accuracy)).intValue();int desHeight = new BigDecimal(imgHeight).multiply(new BigDecimal(accuracy)).intValue();Thumbnails.of(desPath).size(desWidth, desHeight).outputQuality(accuracy).toFile(desPath);//如果不满足要求,递归直至满足小于500k的要求commpressPicCycle(desPath, desFileSize, accuracy);}
}

下面是压缩前后图片的大小

使用Thumbnails实现图片指定大小压缩相关推荐

  1. 通过google插件Thumbnails实现图片指定大小压缩

    前言: 1.由于商户进件时,上游对图片大小有要求(500kb以下),而我们平台图片过大(10M以上),所以必须通过程序将图片压缩后再上传: 2.java api可以通过ImageIO实现图片压缩,但效 ...

  2. 怎么把照片缩小到200k?图片指定大小压缩怎么弄?

    平时在给账号设置头像时,都会遇到图片过大无法上传的情况,这时候我们可以通过图片压缩指定大小工具来将图片压缩到200kb以下,这样就可以顺利设置头像了,下面一起来看一下图片指定大小压缩(https:// ...

  3. vue 图片指定大小压缩

    1.安装命令npm i image-conversion --save 2.引入插件 import * as imageConversion from "image-conversion&q ...

  4. JAVA根据指定大小压缩图片

    /*** 根据指定大小压缩图片** @param sourceFilePath 源图片路径 + 文件名(例 "D:\\image\\aa.jpg")* @param outFile ...

  5. object-fit 解决图片指定大小被压缩问题

    object-fit 解决图片指定大小被压缩问题 第一次遇到这个属性,是在给video 写 poster的时候,选取的作为poster的img的尺寸有点小,导致video播放器两边有留白.在控制台查看 ...

  6. C# 图片压缩(指定大小压缩和指定尺寸压缩)

    一按大小压缩测试代码: 一测试效果: 一主要代码: /// <summary>/// 压缩图片至200 Kb以下/// </summary>/// <param name ...

  7. 将图片压缩至指定大小Kb(Thumbnailator)

    放代码前,先唠叨唠叨,舒缓一下我的郁闷之情. 今天下午改一个后台管理系统的需求,要求上传的图片要压缩到300kb,感觉不难,就开搞. 先撩拨一下度娘,搞点货出来瞅瞅,不复杂就干脆搬砖算了. 嗯,度娘不 ...

  8. java 压缩图片至指定大小

    需求: 压缩图片至300k以下 一开始没有思路在网上搜,发现google有个插件叫Thumbnails,然后看到了这篇文章: https://blog.csdn.net/u010355502/arti ...

  9. java jsoup抓取百度图片保存到本地,并压缩到指定大小(可指定宽高或者流大小)

    代码如下: package cn.xyz.commons.utils; import java.awt.image.BufferedImage; import java.io.ByteArrayInp ...

  10. Springboot 上传图片压缩至指定大小以下

    /*** @Description:压缩上传* @Author: duyaqiong* @Date: 2020/9/19 14:53* @param imageFile* @param request ...

最新文章

  1. Map容器大小影响key的索引
  2. 父母已身作则,静待花开
  3. nodejs-url网址解析的好帮手
  4. Java--类的成员
  5. Linux系统的iptables防火墙、SNAT、DNAT原理与设置规则
  6. Web程序员的Mysql进阶序一之sql使用分类及基础
  7. python程序—名片管理系统
  8. Python官方文档学习心得(第一章)
  9. js特效之上下翻页相册效果
  10. 安全提示:IIS不要开启“WebDAV”扩展
  11. python的自带数据集_怎么使用pandas读入python自带的iris数据集
  12. HTTP数据传输机制的演变:从0.9到3.0
  13. 怎么在PDF文档中为文字添加下划线
  14. 电路中的输入输出阻抗以及阻抗匹配
  15. 基于Java EE的网上书店系统
  16. 利用telemetry进行权限维持
  17. 7-41 哥尼斯堡的“七桥问题” (25 分)
  18. WebGIS理论知识(七)—走进互联网地图
  19. 中国计算机学会推荐国际期刊和会议2011
  20. OAUTH之 钉钉第三方授权登录

热门文章

  1. Learn1:在Power Apps平台创建第一个 Canvas App
  2. 图标旋转html,如何使用CSS实现鼠标上移图标旋转的效果
  3. MindSpore: CV.Rescale(rescale,shift)中参数rescale和shift的含义?
  4. python在视频上方加字_如何用python 在视频上添加自己的logo
  5. hudi系列-文件压缩(compaction)
  6. android解锁方法,手机如何解锁密码 几种安卓手机解锁方法介绍
  7. UG NX 12 将草图对象转化为参考线
  8. 性能测试实战(二):性能测试基础
  9. 搜索引擎原理第一阶段之爬行和抓取
  10. 整型最大值java,整数的最大值