java对图片进行压缩和resize缩放的方法

发布时间 - 2026-01-11 02:34:42    点击率:


这里展示一下如何对图片进行压缩和resize。分享给大家,具体如下:

压缩

public static boolean compress(String src,String to, float quality) {
    boolean rs = true;

    // Build param
    JPEGEncodeParam param = null;

    // Build encoder
    File destination = new File(to);
    FileOutputStream os = null;
    try {
      BufferedImage image = ImageIO.read(new File(src));
      param = JPEGCodec.getDefaultJPEGEncodeParam(image);
      param.setQuality(quality, false);

      os = FileUtils.openOutputStream(destination);
      JPEGImageEncoder encoder;
      if (param != null) {
        encoder = JPEGCodec.createJPEGEncoder(os, param);
      } else {
        return false;
      }
      encoder.encode(image);
    } catch(Exception e){
      e.printStackTrace();
      rs = false;
    }finally {
      IOUtils.closeQuietly(os);
    }
    return rs;
  }

resize

public static boolean resize(String src,String to,int newWidth,int newHeight) {
    try {
      File srcFile = new File(src);
      File toFile = new File(to);
      BufferedImage img = ImageIO.read(srcFile);
      int w = img.getWidth();
      int h = img.getHeight();
      BufferedImage dimg = new BufferedImage(newWidth, newHeight, img.getType());
      Graphics2D g = dimg.createGraphics();
      g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
      g.drawImage(img, 0, 0, newWidth, newHeight, 0, 0, w, h, null);
      g.dispose();
      ImageIO.write(dimg, "jpg", toFile);
    } catch (Exception e) {
      e.printStackTrace();
      return false;
    }
    return true;
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# java  # 图片压缩  # 图片  # resize  # Java实现压缩图片大小  # Java 压缩图片并打包成ZIP文件的示例  # Java 使用Thumbnails对大图片压缩  # java 压缩图片(只缩小体积  # 不更改图片尺寸)的示例  # Java 实现图片压缩的两种方法  # Java实现的上传并压缩图片功能【可等比例压缩或原尺寸压缩】  # java多线程实现下载图片并压缩  # Java 中图片压缩处理的解决方案  # 给大家  # 大家多多  # null  # encoder  # destination  # File  # Build  # true  # JPEGEncodeParam  # param  # read  # ImageIO  # getDefaultJPEGEncodeParam  # JPEGCodec  # os  # FileOutputStream  # image  # BufferedImage  # brush  # class 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】  如何在Windows环境下新建FTP站点并设置权限?  详解vue.js组件化开发实践  如何快速查询域名建站关键信息?  如何在阿里云虚拟服务器快速搭建网站?  Swift开发中switch语句值绑定模式  微信小程序 canvas开发实例及注意事项  高防服务器如何保障网站安全无虞?  ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集  青岛网站建设如何选择本地服务器?  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  Java遍历集合的三种方式  北京的网站制作公司有哪些,哪个视频网站最好?  想要更高端的建设网站,这些原则一定要坚持!  Laravel如何使用Gate和Policy进行权限控制_Laravel权限判定与策略规则配置  ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】  如何在云主机上快速搭建网站?  Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程  Laravel Session怎么存储_Laravel Session驱动配置详解  🚀拖拽式CMS建站能否实现高效与个性化并存?  Windows驱动无法加载错误解决方法_驱动签名验证失败处理步骤  Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】  专业商城网站制作公司有哪些,pi商城官网是哪个?  Win11怎么开启自动HDR画质_Windows11显示设置HDR选项  高防服务器租用首荐平台,企业级优惠套餐快速部署  Laravel怎么实现验证码(Captcha)功能  Laravel怎么创建控制器Controller_Laravel路由绑定与控制器逻辑编写【指南】  Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】  网站制作企业,网站的banner和导航栏是指什么?  javascript日期怎么处理_如何格式化输出  js代码实现下拉菜单【推荐】  Win11怎么更改系统语言为中文_Windows11安装语言包并设为显示语言  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  Laravel PHP版本要求一览_Laravel各版本环境要求对照  宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法  免费视频制作网站,更新又快又好的免费电影网站?  Laravel Facade的原理是什么_深入理解Laravel门面及其工作机制  郑州企业网站制作公司,郑州招聘网站有哪些?  Win11怎么关闭资讯和兴趣_Windows11任务栏设置隐藏小组件  使用PHP下载CSS文件中的所有图片【几行代码即可实现】  如何批量查询域名的建站时间记录?  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  bing浏览器学术搜索入口_bing学术文献检索地址  Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程  google浏览器怎么清理缓存_谷歌浏览器清除缓存加速详细步骤  个人摄影网站制作流程,摄影爱好者都去什么网站?  文字头像制作网站推荐软件,醒图能自动配文字吗?