public class PictureUtils { //根据给定的宽高获得bitmap public static Bitmap getScaledBitmap(String path, int destWidth, int destHeight){ //Read in the dimensions of the image on disk; BitmapFactory.Options options = new BitmapFactory.Options(); float srcWidth = options.outWidth; float srcHeight = options.outHeight; //figure out how much to scale down by int inSampleSize = 1; if (srcHeight > destHeight || srcWidth > destWidth){ if (srcWidth > srcHeight){ inSampleSize = Math.round(srcHeight/destHeight); }else{ inSampleSize = Math.round(srcWidth/destWidth); } } options = new BitmapFactory.Options(); options.inSampleSize = inSampleSize; //read in and crate final bitmap return BitmapFactory.decodeFile(path,options); } public static Bitmap getScaleBitmap(String path,Activity activity){ 根据屏幕获取 bitmap Point size = new Point(); activity.getWindowManager().getDefaultDisplay().getSize(size); return getScaledBitmap(path,size.x,size.y); } }