我是靠谱客的博主 重要热狗,这篇文章主要介绍java 修改图片的像素大小,清晰度,现在分享给大家,希望可以做个参考。

修改图片的像素,清晰度

代码

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
/** * 改变图片 像素 * * @param file * @param qality 参数qality是取值0~1范围内 清晰程度 数值越小分辨率越低 * @param imageType 图片写出类型 比如 jpg * @return * @throws IOException */ public static File compressPictureByQality(File file, float qality,String imageType) throws IOException { BufferedImage src = null; FileOutputStream out = null; ImageWriter imgWrier; ImageWriteParam imgWriteParams; logger.info("开始设定压缩图片参数"); // 指定写图片的方式为 jpg imgWrier = ImageIO.getImageWritersByFormatName(imageType).next(); imgWriteParams = new javax.imageio.plugins.jpeg.JPEGImageWriteParam( null); // 要使用压缩,必须指定压缩方式为MODE_EXPLICIT imgWriteParams.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); // 这里指定压缩的程度,参数qality是取值0~1范围内, imgWriteParams.setCompressionQuality(qality); imgWriteParams.setProgressiveMode(ImageWriteParam.MODE_DISABLED); ColorModel colorModel = ImageIO.read(file).getColorModel();// ColorModel.getRGBdefault(); imgWriteParams.setDestinationType(new javax.imageio.ImageTypeSpecifier( colorModel, colorModel.createCompatibleSampleModel(32, 32))); logger.info("结束设定压缩图片参数"); if (!file.exists()) { logger.info("Not Found Img File,文件不存在"); throw new FileNotFoundException("Not Found Img File,文件不存在"); } else { logger.info("图片转换前大小" + file.length() + "字节"); src = ImageIO.read(file); out = new FileOutputStream(file); imgWrier.reset(); // 必须先指定 out值,才能调用write方法, ImageOutputStream可以通过任何 // OutputStream构造 imgWrier.setOutput(ImageIO.createImageOutputStream(out)); // 调用write方法,就可以向输入流写图片 imgWrier.write(null, new IIOImage(src, null, null), imgWriteParams); out.flush(); out.close(); logger.info("图片转换后大小" + file.length() + "字节"); return file; } }

原图

image

修改之后的图

image

转载于:https://www.cnblogs.com/java-hardly-road/p/11446332.html

最后

以上就是重要热狗最近收集整理的关于java 修改图片的像素大小,清晰度的全部内容,更多相关java内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(60)

评论列表共有 0 条评论

立即
投稿
返回
顶部