java图片不失真压缩_(转)图片等比压缩,确保不失真
importjava.awt.Image;importjava.awt.image.BufferedImage;importjava.io.File;importjava.io.FileOutputStream;importjavax.imageio.ImageIO;importcom.sun.image.codec.jpeg.JPEGCodec;importcom.sun.image.codec.jpeg.JPEGImageEncoder;publicclassSnippet {/*** 创建图片缩略图(等比缩放)
*
*@paramsrc
* 源图片文件完整路径
*@paramdist
* 目标图片文件完整路径
*@paramwidth
* 缩放的宽度
*@paramheight
* 缩放的高度*/publicstaticvoidcreateThumbnail(String src, String dist,floatwidth,floatheight) {try{
File srcfile=newFile(src);if(!srcfile.exists()) {
System.out.println("文件不存在");return;
}
BufferedImage image=ImageIO.read(srcfile);//获得缩放的比例doubleratio=1.0;//判断如果高、宽都不大于设定值,则不处理if(image.getHeight()>height||image.getWidth()>width) {if(image.getHeight()>image.getWidth()) {
ratio=height/image.getHeight();
}else{
ratio=width/image.getWidth();
}
}//计算新的图面宽度和高度intnewWidth=(int) (image.getWidth()*ratio);intnewHeight=(int) (image.getHeight()*ratio);
BufferedImage bfImage=newBufferedImage(newWidth, newHeight,
BufferedImage.TYPE_INT_RGB);
bfImage.getGraphics().drawImage(
image.getScaledInstance(newWidth, newHeight,
Image.SCALE_SMOOTH),0,0,null);
FileOutputStream os=newFileOutputStream(dist);
JPEGImageEncoder encoder=JPEGCodec.createJPEGEncoder(os);
encoder.encode(bfImage);
os.close();
System.out.println("创建缩略图成功");
}catch(Exception e) {
System.out.println("创建缩略图发生异常"+e.getMessage());
}
}publicstaticvoidmain(String[] args) {
createThumbnail("E:\\test_1920x1200.jpg","D:\\a.png",100,100);
createThumbnail("E:\\test_1920x1200.jpg","D:\\b.png",2000,2000);
createThumbnail("E:\\test_1920x1200.jpg","D:\\c.jpg",800,600);
}
}
java图片不失真压缩_(转)图片等比压缩,确保不失真相关推荐
- python怎么把图片压缩_使用Python轻松批量压缩图片
在互联网,图片的大小对一个网站的响应速度有着明显的影响,因此在提供用户预览的时候,图片往往是使用压缩后的.如果一个网站图片较多,一张张压缩显然很浪费时间.那么接下来,我就跟大家分享一个批量压缩图片的方 ...
- java 前后端解压缩字符串_接口实现后台GZIP压缩,pako.js 前端解压
import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOExceptio ...
- java swing 图片上加热点_外卖图片品牌全靠P,4元成本料理包加热后,平台上20元卖出...
现代人都十分的忙绿,忙着学业.工作.婚姻.家庭等等一系列的事情,因而追求便利便成理所应当的事情.外卖的出现极大的减少了迫切需要时间的现代人的吃饭的时间,因此外卖的火爆就足以预见.但是,最近有一外卖黑作 ...
- java 微信图片盗链破解_隐藏图片地址,伪造来路Referer实现绕过微信图片的防盗链机制...
最近用软件采集微信公众号文章图片下载不了,全是显示盗链图片.没有办法只好上网查询有没有办法解决.在一个朋友那看到了2种解决方案记录下: 微信防盗链 用php写一个绕过的代码,你只需要把php上传到你的 ...
- java把图片存入文件夹_将图片保存在指定文件夹中
我可以通过我的代码将图片保存在我想要的文件夹中,但这还不够好,因为我的代码在我的文件夹中提供了一个图像副本,而在图库中提供了另一个图像(DCIM) . 代码: Btngetdata.setOnClic ...
- java tif切割成瓦片_将图片切割成瓦片图-(算法+实现)
[实例简介] 介绍:https://blog.csdn.net/STRIVEYe/article/details/88388072 [实例截图] [核心代码] 919ed105-5c0c-4f11-a ...
- java辅助百度贴吧_【图片】【共同上进】新手java代码辅助代写贴,新手福音! 申精!_java吧_百度贴吧...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 // 题目:一条直线上,有 A.B.C.D.E 五个地点,A距离B 500m, B距离C 300m, C距离D 1000m, D距离E 700m. //要 ...
- java三国策略手游_【图片】推荐一款三国策略手游!【三国游戏吧】_百度贴吧...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 战争是这个游戏的主要内容,所以前期的发展显的尤为重要,那么如何快速而有效的在前期获得优势呢?下面我就为大家带来一些不错的经验,帮助小伙伴度过萌新时期. 游 ...
- div图片背景虚化不影响图片上的文字_背景图片模糊,其中文字清晰实现方法总结...
先上效果图: 之前: 之后: 实现方式: 第一种:两张图片叠加,上面放一个纯白色的,下面放这张清晰的医生的图 第二种:背景图片上面,使用一层遮罩,设计背景色为纯白色,并且是有一定透明度的 背景模糊文字 ...
最新文章
- 项目2---机柜和物理服务器
- 中科院院士张钹:发展第三代AI技术,中美处在同一起跑线上
- 鸿蒙安卓哪个app好,可以放下对华为鸿蒙的担忧了,操作和EMUI相似,能兼容安卓APP - 区块网...
- mailto 附带附件_我和我的朋友如何将附带项目发展为每月$ 17,000的业务
- 16、java包装类
- ​小米 11 发布,售价 3999 元起;罗永浩回应败诉半导体公司;deepin 20.1(1010) 发布|极客头条...
- 《Linux/UNIX系统编程手册(上、下册)》
- iOS蓝牙开发(三)实现外设功能
- pcr532,nfc读卡器复制家用门禁卡
- 基本遗传算法(GA)的算法原理、步骤、及Matlab实现
- cmd中的%~dp0
- 如何压缩word文档的大小?
- DROOPYCTF WALKTHROUGH
- 曾经的小弟, 成了现在的大牛
- Docker容器引擎
- SpringBoot+jdk1.8邮件发送
- C语言笔记 第三十九课 程序中的三国天下
- 爆笑!新一轮的淘宝差评
- Webix学习之template
- 用matlab编程实现h鲁棒控制算法,利用matlab实现H-infinity鲁棒控制