成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

java對圖片進(jìn)行壓縮和resize

dack / 3538人閱讀

這里展示一下如何對圖片進(jìn)行壓縮和resize。

壓縮
public static boolean compress(String src,String to, float quality) {
        boolean rs = true;

        // Build param
        JPEGEncodeParam param = null;

        // Build encoder
        File destination = new File(to);
        FileOutputStream os = null;
        try {
            BufferedImage image = ImageIO.read(new File(src));
            param = JPEGCodec.getDefaultJPEGEncodeParam(image);
            param.setQuality(quality, false);

            os = FileUtils.openOutputStream(destination);
            JPEGImageEncoder encoder;
            if (param != null) {
                encoder = JPEGCodec.createJPEGEncoder(os, param);
            } else {
                return false;
            }
            encoder.encode(image);
        } catch(Exception e){
            e.printStackTrace();
            rs = false;
        }finally {
            IOUtils.closeQuietly(os);
        }
        return rs;
    }
resize
public static boolean resize(String src,String to,int newWidth,int newHeight) {
        try {
            File srcFile = new File(src);
            File toFile = new File(to);
            BufferedImage img = ImageIO.read(srcFile);
            int w = img.getWidth();
            int h = img.getHeight();
            BufferedImage dimg  = new BufferedImage(newWidth, newHeight, img.getType());
            Graphics2D g = dimg.createGraphics();
            g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
            g.drawImage(img, 0, 0, newWidth, newHeight, 0, 0, w, h, null);
            g.dispose();
            ImageIO.write(dimg, "jpg", toFile);
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
        return true;
    }

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/67503.html

相關(guān)文章

  • Android&Java面試題大全—金九銀十面試必備

    摘要:需要校驗(yàn)字節(jié)信息是否符合規(guī)范,避免惡意信息和不規(guī)范數(shù)據(jù)危害運(yùn)行安全。具有相同哈希值的鍵值對會組成鏈表。通過在協(xié)議下添加了一層協(xié)議對數(shù)據(jù)進(jìn)行加密從而保證了安全。常見的非對稱加密包括等。 類加載過程 Java 中類加載分為 3 個步驟:加載、鏈接、初始化。 加載。 加載是將字節(jié)碼數(shù)據(jù)從不同的數(shù)據(jù)源讀取到JVM內(nèi)存,并映射為 JVM 認(rèn)可的數(shù)據(jù)結(jié)構(gòu),也就是 Class 對象的過程。數(shù)據(jù)源可...

    renweihub 評論0 收藏0
  • 圖像處理 - ImageMagick 簡單介紹與案例

    摘要:是一款創(chuàng)建編輯合成,轉(zhuǎn)換圖像的命令行工具。上面兩條三次貝塞爾曲線的坐標(biāo)分別表示起始點(diǎn),起始點(diǎn)的控制點(diǎn),結(jié)束點(diǎn)的控制點(diǎn),結(jié)束點(diǎn)。 在客戶端我們可以用 PhotoShop 等 GUI 工具處理靜態(tài)圖片或者動態(tài) GIF 圖片,不過在服務(wù)器端對于 WEB 應(yīng)用程序要處理圖片格式轉(zhuǎn)換,縮放裁剪,翻轉(zhuǎn)扭曲,PDF解析等操作, GUI 軟件就很難下手了,所以此處需要召喚命令行工具來幫我們完成這些事。...

    youkede 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<