<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    kalman03

    每天早上看一遍《福布斯》富翁排行榜,如果上面沒有我的名字,我就去學(xué)習(xí)......
    隨筆 - 22, 文章 - 0, 評論 - 86, 引用 - 0
    數(shù)據(jù)加載中……

    (轉(zhuǎn))圖片等比壓縮,確保不失真


    import java.awt.Image;
    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.FileOutputStream;

    import javax.imageio.ImageIO;

    import com.sun.image.codec.jpeg.JPEGCodec;
    import com.sun.image.codec.jpeg.JPEGImageEncoder;

    public class Snippet {
        
    /**
         * 創(chuàng)建圖片縮略圖(等比縮放)
         * 
         * 
    @param src
         *            源圖片文件完整路徑
         * 
    @param dist
         *            目標(biāo)圖片文件完整路徑
         * 
    @param width
         *            縮放的寬度
         * 
    @param height
         *            縮放的高度
         
    */
        
    public static void createThumbnail(String src, String dist, float width,
                
    float height) {
            
    try {
                File srcfile 
    = new File(src);
                
    if (!srcfile.exists()) {
                    System.out.println(
    "文件不存在");
                    
    return;
                }
                BufferedImage image 
    = ImageIO.read(srcfile);

                
    // 獲得縮放的比例
                double ratio = 1.0;
                
    // 判斷如果高、寬都不大于設(shè)定值,則不處理
                if (image.getHeight() > height || image.getWidth() > width) {
                    
    if (image.getHeight() > image.getWidth()) {
                        ratio 
    = height / image.getHeight();
                    } 
    else {
                        ratio 
    = width / image.getWidth();
                    }
                }
                
    // 計(jì)算新的圖面寬度和高度
                int newWidth = (int) (image.getWidth() * ratio);
                
    int newHeight = (int) (image.getHeight() * ratio);

                BufferedImage bfImage 
    = new BufferedImage(newWidth, newHeight,
                        BufferedImage.TYPE_INT_RGB);
                bfImage.getGraphics().drawImage(
                        image.getScaledInstance(newWidth, newHeight,
                                Image.SCALE_SMOOTH), 
    00null);

                FileOutputStream os 
    = new FileOutputStream(dist);
                JPEGImageEncoder encoder 
    = JPEGCodec.createJPEGEncoder(os);
                encoder.encode(bfImage);
                os.close();
                System.out.println(
    "創(chuàng)建縮略圖成功");
            } 
    catch (Exception e) {
                System.out.println(
    "創(chuàng)建縮略圖發(fā)生異常" + e.getMessage());
            }
        }
        
        
    public static void main(String[] args) {
            createThumbnail(
    "E:\\test_1920x1200.jpg""D:\\a.png"100100);
            createThumbnail(
    "E:\\test_1920x1200.jpg""D:\\b.png"20002000);
            createThumbnail(
    "E:\\test_1920x1200.jpg""D:\\c.jpg"800600);
        }

    }

    posted on 2012-01-11 15:43 kalman03 閱讀(7138) 評論(1)  編輯  收藏

    評論

    # re: (轉(zhuǎn))圖片等比壓縮,確保不失真  回復(fù)  更多評論   

    很失真
    2015-10-22 11:07 | 小大人

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 三年片在线观看免费大全| 久久国产乱子伦精品免费午夜 | 性短视频在线观看免费不卡流畅| 久久久久成人片免费观看蜜芽| 在线观看特色大片免费网站| 波多野结衣免费一区视频| 免费视频成人手机在线观看网址| 久久久国产精品福利免费| 国产va在线观看免费| 人妻无码久久一区二区三区免费 | 好紧我太爽了视频免费国产| 拍拍拍无挡免费视频网站| 暖暖在线视频免费视频| 99久久99久久精品免费观看| 又黄又爽又成人免费视频| 成熟女人特级毛片www免费| 在线观着免费观看国产黄| 亚洲男人天堂2020| 久久亚洲精品中文字幕三区| 久久亚洲精精品中文字幕| 亚洲xxxx视频| 污污免费在线观看| 99久久精品毛片免费播放| 日本zzzzwww大片免费| 午夜毛片不卡免费观看视频| 亚洲成a人片在线观看国产| 亚洲乱码一区二区三区在线观看| 亚洲精品视频在线播放| 亚洲啪AV永久无码精品放毛片| 黄页网址大全免费观看12网站| 免费无码H肉动漫在线观看麻豆| 亚色九九九全国免费视频| 免费a级毛片网站| 亚洲国语精品自产拍在线观看| 亚洲狠狠成人综合网| 一级做受视频免费是看美女| 日本视频在线观看永久免费| 成年在线网站免费观看无广告| 亚洲熟伦熟女新五十路熟妇| 久久久亚洲AV波多野结衣| 日韩成人精品日本亚洲|