public class NarrowImage {/*** @param im*            原始图像* @param resizeTimes*            倍数,比如0.5就是缩小一半,0.98等等double类型* @return 返回处理后的图像*/public BufferedImage zoomImage(String src) {BufferedImage result = null;try {File srcfile = new File(src);if (!srcfile.exists()) {System.out.println("文件不存在");}BufferedImage im = ImageIO.read(srcfile);/* 原始图像的宽度和高度 */int width = im.getWidth();int height = im.getHeight();//压缩计算float resizeTimes = 0.3f;  /*这个参数是要转化成的倍数,如果是1就是转化成1倍*//* 调整后的图片的宽度和高度 */int toWidth = (int) (width * resizeTimes);int toHeight = (int) (height * resizeTimes);/* 新生成结果图片 */result = new BufferedImage(toWidth, toHeight,BufferedImage.TYPE_INT_RGB);result.getGraphics().drawImage(im.getScaledInstance(toWidth, toHeight,java.awt.Image.SCALE_SMOOTH), 0, 0, null);} catch (Exception e) {System.out.println("创建缩略图发生异常" + e.getMessage());}return result;}public boolean writeHighQuality(BufferedImage im, String fileFullPath) {try {/*输出到文件流*/FileOutputStream newimage = new FileOutputStream(fileFullPath);JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(newimage);JPEGEncodeParam jep = JPEGCodec.getDefaultJPEGEncodeParam(im);/* 压缩质量 */jep.setQuality(0.9f, true);encoder.encode(im, jep);/*近JPEG编码*/newimage.close();return true;} catch (Exception e) {return false;}}public static void main(String[] args) {String inputFoler = "E:\\新建文件夹\\7.jpg" ; /*这儿填写你存放要缩小图片的文件夹全地址*/String outputFolder = "E:\\新建文件夹\\07.jpg";  /*这儿填写你转化后的图片存放的文件夹*/NarrowImage narrowImage = new NarrowImage();narrowImage.writeHighQuality(narrowImage.zoomImage(inputFoler), outputFolder);}}

java图片高保真缩放相关推荐

  1. Java图片处理 - 缩放图片

    Java图片处理 - 缩放图片 Java原生代码实现缩放图片 上一章原生代码中执行测试代码: public static void main(String[] args) {/*这儿填写你存放要缩小图 ...

  2. JAVA图片处理--缩放,切割,类型转换

    import java.io.*; import java.awt.*; import java.awt.image.*; import java.awt.Graphics; import java. ...

  3. Java图片处理 - 创建工具类

    Java图片处理 - 创建工具类 Java原生代码实现工具类 Java原生代码实现使用jdk内部的GIFImageReader.GIFImageWriter等类,maven在编译的时候会提示这是sun ...

  4. Java图片处理 - 复制

    Java图片处理 - 复制 Java处理图片的时候,可以用原生接口,可以直接以第三方接口方式复制图片 以文件复制 public static void copyByStream(File source ...

  5. java裁剪图片_java实现图片的缩放和裁剪

    最近要做一个web项目,里面涉及到对图片的缩放和裁剪.原理是这样的,首先先对图片进行缩放,然后,将缩放之后的图片进行裁剪,里面涉及到许多java图片api的应用,代码如下. //参数分别对应了员图片的 ...

  6. java 图片不失真缩放,ico格式图片转换,透明图层,jar->exe

    Java 图片缩放,转ico格式 Java 在转换图片格式为 ico 时 需要引入 image4j 的依赖,这里分享一个自己写好的并通过exe4j 打包好的exe小程序.因为功能太少所以再引入 thu ...

  7. Java图片缩略图裁剪水印缩放旋转压缩转格式-Thumbnailator图像处理

    前言 java开发中经常遇到对图片的处理,JDK中也提供了对应的工具类,不过处理起来很麻烦,Thumbnailator是一个优秀的图片处理的开源Java类库,处理效果远比Java API的好,从API ...

  8. [转载]java图片缩放处理

    原文地址:java图片缩放处理作者:jack package com.bluecms.common.util; import java.awt.Image; import java.awt.image ...

  9. Java图片压缩大小,图片缩放

    添加依赖 <!-- 图片缩略图 --><dependency><groupId>net.coobird</groupId><artifactId& ...

最新文章

  1. 进阶学习(3.8) Component Pattern 组合模式
  2. 注意职场“十不要”,让你少奋斗30年
  3. 如何检测当前的ABAP report是运行在inactive版本下
  4. 【Hbase】命令行load数据文件到Hbase
  5. Devpress.XtraGrid.GridControl.GridView属性
  6. 微软低代码工具 Power Apps 配置不当,暴露3800万条数据记录
  7. python画素描画_画画了,画画了,几行Python就成一幅素描画
  8. 你朋友圈里原来这些文章最火
  9. jmeter安装包双击没反应_Jmeter下载安装及使用
  10. 从键盘输入字符串,按回车键结束,在第二行显示输入内容。
  11. Hubble数据库x某股份制商业银行:一款混布数据库的“交易+分析”提速之路
  12. 微信公众号上传素材并回复关键词推送该素材:thinphp开发微信公众号如何上传临时素材库
  13. 论文查重会查新闻内容吗?
  14. 嵌入式pcb打造超薄降压模块让14500锂电池直接替代5号电池
  15. InfoPath2007中通过MOSS的webservice读取数据库时需注意的事项
  16. c语言程序设计答案苏小红,C语言程序设计苏小红版答案[推荐阅读]
  17. Turbo C 2.0的下载地址
  18. thinkphp update操作,某字段更新不成功
  19. java跑p_javap使用
  20. 一个屌丝程序猿的人生(四十五)

热门文章

  1. 求解多元一次方程解的个数(参考内容)
  2. 浙江大学计算机博士申请考核,考博经验|2020年浙江大学博士申请考核经验分享...
  3. 营销老炮儿征战史:渠道开发
  4. 2016年8月12日 星期五 --出埃及记 Exodus 16:13
  5. 计算机开机界面,电脑开机一直出现bios界面
  6. Cisco路由器的安全配置简易方案1
  7. push与push_back
  8. Java 语音识别(百度语音API)
  9. 阿里p7程序员:生活压力大,有房贷不敢离职,离职股票就没了
  10. 苹果发布了没有太多更新的 iOS 13 beta 8;一次编码、到处运行;SwiftUI 的两个特性;如何让网站加载更快...