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

資訊專欄INFORMATION COLUMN

java中的圖片按比例縮放功能

pkwenda / 982人閱讀

摘要:中的圖片按比例縮放功能按固定長寬進行縮放圖片縮放,為縮放的目標寬度和高度為源文件目錄,為縮放后保存目錄讀取圖片設(shè)置縮放目標圖片模板獲取縮放比例寫入縮減后的圖片按固定文件大小進行縮放圖片按比率縮放為文件大小文件大于時,才進行縮放獲取長寬縮放比

java中的圖片按比例縮放功能 1. 按固定長寬進行縮放
    /*
     * 圖片縮放,w,h為縮放的目標寬度和高度
     * src為源文件目錄,dest為縮放后保存目錄
     */
    public static void zoomImage(String src,String dest,int w,int h) throws Exception {
        
        double wr=0,hr=0;
        File srcFile = new File(src);
        File destFile = new File(dest);

        BufferedImage bufImg = ImageIO.read(srcFile); //讀取圖片
        Image Itemp = bufImg.getScaledInstance(w, h, bufImg.SCALE_SMOOTH);//設(shè)置縮放目標圖片模板
        
        wr=w*1.0/bufImg.getWidth();     //獲取縮放比例
        hr=h*1.0 / bufImg.getHeight();

        AffineTransformOp ato = new AffineTransformOp(AffineTransform.getScaleInstance(wr, hr), null);
        Itemp = ato.filter(bufImg, null);
        try {
            ImageIO.write((BufferedImage) Itemp,dest.substring(dest.lastIndexOf(".")+1), destFile); //寫入縮減后的圖片
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
2. 按固定文件大小進行縮放
  
  /*
   * 圖片按比率縮放
   * size為文件大小
   */
  public static void zoomImage(String src,String dest,Integer size) throws Exception {
      File srcFile = new File(src);
      File destFile = new File(dest);
      
      long fileSize = srcFile.length();
      if(fileSize < size * 1024)   //文件大于size k時,才進行縮放
          return;
      
      Double rate = (size * 1024 * 0.5) / fileSize; // 獲取長寬縮放比例
      
      BufferedImage bufImg = ImageIO.read(srcFile);
      Image Itemp = bufImg.getScaledInstance(bufImg.getWidth(), bufImg.getHeight(), bufImg.SCALE_SMOOTH);
          
      AffineTransformOp ato = new AffineTransformOp(AffineTransform.getScaleInstance(rate, rate), null);
      Itemp = ato.filter(bufImg, null);
      try {
          ImageIO.write((BufferedImage) Itemp,dest.substring(dest.lastIndexOf(".")+1), destFile);
      } catch (Exception ex) {
          ex.printStackTrace();
      }

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

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

相關(guān)文章

  • 鴻蒙開源第三方組件——SwipeCaptcha_ohos3.0旋轉(zhuǎn)驗證組件

    摘要:步驟設(shè)置控件監(jiān)聽事件,重新生成驗證區(qū)域在文件中添加控件在文件中添加控件,用于顯示旋轉(zhuǎn)驗證的動態(tài)效果。先實例化一個隨機數(shù)對象,用于后續(xù)計算隨機生成的旋轉(zhuǎn)驗證塊角度值。 前言基于安卓平臺的滑動拼## 二級標題圖驗證組件SwipeCaptcha(https://github.com/mcxtzhang/SwipeCa...

    Amos 評論0 收藏0
  • ImageView 使用詳解

    極力推薦文章:歡迎收藏Android 干貨分享 showImg(https://segmentfault.com/img/remote/1460000019975020); 閱讀五分鐘,每日十點,和您一起終身學(xué)習(xí),這里是程序員Android 本篇文章主要介紹 Android 開發(fā)中的部分知識點,通過閱讀本篇文章,您將收獲以下內(nèi)容: 一、ImageView 的繼承關(guān)系二、ImageView 常用方...

    shery 評論0 收藏0

發(fā)表評論

0條評論

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