java按像素压缩,生成压缩图片。
package com.yj.until;import java.awt.geom.AffineTransform;
import java.awt.image.AffineTransformOp;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;/*** @author 作者yangjing: 图片压缩* @date 创建时间:2017-2-17 下午6:42:05*/
public class ImageTransformer {/*** 图片压缩* @param srcImage 源图片文件路径 (如:srcImage="G:/32/2015101713.jpg")* @param tarImage 目的图片文件路径 (如:tarImage="G:/32/2015101713_720_720.jpg")* @param maxPixel 转换的像素 (如:maxPixel=720)* @param*/public static void transformer(String srcImage,String tarImage,int maxPixel) {//源图片文件File srcImageFile = new File(srcImage);//目的图片文件File tarImageFile = new File(tarImage);// 生成图片转化对象AffineTransform transform = new AffineTransform();// 通过缓存读入缓存对象BufferedImage image = null;try {image = ImageIO.read(srcImageFile);} catch (IOException e) {e.printStackTrace();}int imageWidth = image.getWidth();//原图片的高度int imageHeight = image.getHeight();//原图片的宽度int changeWidth = 0;//压缩后图片的高度int changeHeight = 0;//压缩后图片的宽度double scale = 0;// 定义小图片和原图片比例if (maxPixel != 0) {if (imageWidth > imageHeight) {changeWidth = maxPixel;scale = (double) changeWidth / (double) imageWidth;changeHeight = (int) (imageHeight * scale);} else {changeHeight = maxPixel;scale = (double) changeHeight / (double) imageHeight;changeWidth = (int) (imageWidth * scale);}} // 生成转换比例transform.setToScale(scale, scale);// 生成转换操作对象AffineTransformOp transOp = new AffineTransformOp(transform, null);//生成压缩图片缓冲对象BufferedImage basll = new BufferedImage(changeWidth, changeHeight,BufferedImage.TYPE_3BYTE_BGR);//生成缩小图片transOp.filter(image, basll);try {//输出缩小图片ImageIO.write(basll, "jpeg",tarImageFile);} catch (IOException e) {e.printStackTrace();}}
}
java按像素压缩,生成压缩图片。相关推荐
- Java代码实现自动生成产品标签图片(升级版)
上次写过一次Java代码实现自动生成产品标签图片的案例,今天工作中又用到了,再来补充一下. 要求,生成的标签戴上logo标志,也就是加上图片:直接上代码: public static void cre ...
- java使用工具类生成验证码图片时,出现Exception in thread “main“ java.io.FileNotFoundException: C:\a.jpg (拒绝访问。)
使用这段代码来测试生成验证码图片时 public static void main(String[] args) throws IOException {//生成验证码的图片位置OutputStrea ...
- 利用三星S3C6410源码实现同时压缩视频和图片
前段时间实现了利用三星S3C6410一边压缩视频生成H264文件一边抓取并压缩生成jpg图片.核心步骤如下: 视频压缩和图片压缩利用同一个handle. /* Codec set *//* Get c ...
- java 程序实现对图片的压缩生成缩略图并可设定长宽、尺寸压缩率、图片质量
转载自 java 程序实现对图片的压缩生成缩略图并可设定长宽.尺寸压缩率.图片质量 之前是在另一位高手的上传内容中学习到的,并将其代码根据我的需求进行了修改,参考位置:http://jiangpin ...
- java jpeg压缩解码_图片压缩(iOS)
场景很简单,上传图片前压缩图片,节省流量和发图时间.最近看了看 iOS 的静态图片压缩,这里记个笔记.本人之前没学过 iOS 和 Swift,本文是一篇入门文章,描述不到位之处请大家多多批评斧正. ̄ω ...
- Java图片压缩大小,图片缩放
添加依赖 <!-- 图片缩略图 --><dependency><groupId>net.coobird</groupId><artifactId& ...
- 使用Thumbnails压缩或放大图片大小(java)
首先看下缩放图片的核心代码,其实只有一行而已 //ins表示ByteArrayInputStream形式的图片 //scale中的数据就是缩小或者放大的比例,比如小于1则表示压缩,大于1表示放大 // ...
- java根据pdf模板生成pdf_Java 复制、压缩PDF文档
在日常办公中,掌握操作PDF文档的能力尤为重要.在前文中我使用Java程序来演示过如何合并和拆分PDF文档.本文将介绍如何复制和压缩文档.通常复制文档有两种形式,一种是跨文档复制,即将一个文档复制到另 ...
- zipentry压缩乱码linux,java生成压缩文件 ZipEntry出现乱码的有关问题
java生成压缩文件 ZipEntry出现乱码的问题 在项目中,一次导出的文件有好几个,而且文件内容比较大,最后考虑到把文件进行压缩在下载,开始试用JDK自带的ZIP压缩包时,ZipEntry ze ...
最新文章
- JavaScript 的面向对象编程
- GitHub 上值得关注的 iOS 开源项目
- 模拟业务最小测试用例01
- Performance Prism
- boost::serialization模块测试extended_type_info的实现,使用多个共享库时有效
- 干货整理:处理不平衡数据的技巧总结!收好不谢
- awt jtable 多线程加载图片_Java项目实战之天天酷跑(三):缓冲加载游戏界面
- php源码自动识别文本中的链接,自动加载识别文件Auto.php
- 洛谷P2617 Dynamic Rankings
- mysql有关时间教程_MySQL教程21-日期和时间类型
- java项目异常处理视频_异常的抛出和处理_JavaSE系列视频课程之异常处理(四)_Java视频-51CTO学院...
- 2021年中国上牌和驾驶员数量分析:新注册登记机动车3674万辆 新领证驾驶人2750万人[图]
- “Flash闪存”基础 及 “SD NAND Flash”产品的测试
- 沙箱环境和正式环境【PayPal接入(java)】【IPN通知问题】项目实战干货总结记录!
- 无法导入某些项目,因为它们已经存在于Eclipse中的工作区错误中
- 学大数据开发要掌握的基础知识有哪些?
- 压力传感器故障检测方法
- 常用CASE工具介绍 (csnd.net)
- 【GANs学习笔记】(十八)LAPGAN、ProGAN、SRGAN
- Linux | Ubuntu | 查看路由 | 修改路由
热门文章
- 行业洞察 | 你的耳机能进行骨传导声纹识别吗?
- TO_char函数的使用(将最完整的日期格式转化成只有年月日)
- サンドイッチ大好き!なんでもはさんで挑戦!
- 网站开发进阶(三十七)JSP页面跳转问题解决
- java商圈排序,Jeecg实战-商圈功能实现
- 逻辑地址、线性地址和物理地址的转换
- signature=45daf61b5b0148091099c19a080e3802,CSR文件和P10文件
- 计算机文化基础excel函数,《计算机文化基础(Windows XP版)》第4章Excel电子表格.ppt...
- [技术] 百度网盘分享文件已经被取消的解决办法
- 徐小明20111103