欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Java创建缩略图的方法,java创建缩略图,Java创建文件缩略图完

来源: javaer 分享于  点击 9463 次 点评:142

Java创建缩略图的方法,java创建缩略图,Java创建文件缩略图完


Java创建文件缩略图完整代码更多 0缩略图图片处理Javaprivate 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();    }
相关栏目:

用户点评