创建图片的缩略图
来源:互联网 发布:楼市泡沫 知乎 编辑:程序博客网 时间:2024/05/21 17:04
private void createThumbnail(String filename, int thumbWidth, int thumbHeight, int quality, String outFilename) throws InterruptedException, FileNotFoundException, IOException {// load image from filename Image image = Toolkit.getDefaultToolkit().getImage(filename); MediaTracker mediaTracker = new MediaTracker(new Container()); mediaTracker.addImage(image, 0); mediaTracker.waitForID(0);// use this to test for errors at this point: System.out.println(mediaTracker.isErrorAny());// determine thumbnail size from WIDTH and HEIGHT double thumbRatio = (double)thumbWidth / (double)thumbHeight; int imageWidth = image.getWidth(null); int imageHeight = image.getHeight(null); double imageRatio = (double)imageWidth / (double)imageHeight; if (thumbRatio < imageRatio) { thumbHeight = (int)(thumbWidth / imageRatio); } else { thumbWidth = (int)(thumbHeight * imageRatio); }// draw original image to thumbnail image object and// scale it to the new size on-the-fly BufferedImage thumbImage = new BufferedImage(thumbWidth, thumbHeight, BufferedImage.TYPE_INT_RGB); Graphics2D graphics2D = thumbImage.createGraphics(); graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); graphics2D.drawImage(image, 0, 0, thumbWidth, thumbHeight, null);// save thumbnail image to outFilename BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(outFilename)); JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out); JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(thumbImage); quality = Math.max(0, Math.min(quality, 100)); param.setQuality((float)quality / 100.0f, false); encoder.setJPEGEncodeParam(param); encoder.encode(thumbImage); out.close(); }
阅读全文
0 0
- 创建图片的缩略图
- 创建图片的缩略图
- Java创建图片的缩略图--封装类
- java中创建图片的缩略图
- php 创建图片缩略图
- 为图片创建缩略图
- PHP创建图片缩略图函数
- JAVA功能代码《8》----Java创建图片的缩略图
- PHP创建缩略图造成图片质量低下的完美解决方法
- PHP创建缩略图造成图片质量低下的完美解决方法
- PHP创建缩略图造成图片质量低下的完美解决方法
- PHP创建缩略图造成图片质量低下的完美解决方法
- 生成图片的缩略图
- 建立图片的缩略图
- 得到图片的缩略图
- 获取图片的缩略图
- php 使用GD库创建图片缩略图
- 图片的水印与缩略图
- TensorFlow学习笔记11——《面向机器智能的tensorflow实践》第5.5节Stanford Dogs例程实现
- IntelliJ Idea 2017 注册码 免费激活方法
- eclipse使用技巧之自动补全
- TensorFlow计算模型--计算图
- iPhoneX无导航栏页面适配
- 创建图片的缩略图
- Android属性android:priority的使用姿势
- 3D Touch实现以及相应界面的跳转(最新)
- qt创建自定义标题栏
- 实现表格隔行/隔列变色
- 一周小结(3)
- python在回调函数中获取返回值
- JavaScript的callback
- HTTP & HTTPS网络协议重点总结(基于SSL/TLS的握手、TCP/IP协议基础、加密学)