图片缩放

xiaoxiao2021-02-28  109

# 缩放加载大图片  # 思路: [1]获取图片的分辨率 2400 * 3200  [2]获取手机的分辨率 320 * 480  [3]计算缩放比  宽 : 7    高 : 6  高正好   按照大的去缩放   实现步骤   [1]获取手机的分辨率     WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);     int    width = wm.getDefaultDisplay().getWidth();     int   height = wm.getDefaultDisplay().getHeight();    [2]获取图片的分辨率         //[2]创建位图工厂的配置参数          BitmapFactory.Options opts = new Options();         //不去真正的解析位图  返回null  但是还能够获取图片的宽和高的信息          opts.inJustDecodeBounds = true;         BitmapFactory.decodeFile("/mnt/sdcard/dog.jpg",opts);         //[3]获取图片的宽和高          int imgWidth = opts.outWidth;         int imgHeight = opts.outHeight;         System.out.println("图片的宽:"+imgWidth+"----"+imgHeight);    [3]计算缩放比       int scale = 1; //定义变量 就是我们的缩放比          int scaleX = imgWidth/width;         int scaleY = imgHeight/height;          if (scaleX>=scaleY && scaleX>scale) {             scale = scaleX;         }         if (scaleY > scaleX && scaleY >scale) {             scale = scaleY;         }   [4]按照缩放比去加载图片     //[5]按照我们计算出来的缩放比进行显示          opts.inSampleSize = scale;                  //[6]开始真正的解析位图           opts.inJustDecodeBounds = false;         Bitmap bitmap = BitmapFactory.decodeFile("/mnt/sdcard/dog.jpg",opts);                  //[7]显示到iv上          iv.setImageBitmap(bitmap);  
转载请注明原文地址: https://www.6miu.com/read-45643.html

最新回复(0)