Android Bitmap 缩放

/**
 * 宽高比取最大值缩放图片.
 *
 * @param bitmap     加载的图片
 * @param widthSize  缩放之后的图片宽度,一般就是屏幕的宽度.
 * @param heightSize 缩放之后的图片高度,一般就是屏幕的高度.
 */
public static Bitmap ScaleImgMax(Bitmap bitmap, int widthSize, int heightSize) {
    int bmpW = bitmap.getWidth();
    int bmpH = bitmap.getHeight();
    float scaleW = ((float) widthSize) / bmpW;
    float scaleH = ((float) heightSize) / bmpH;
    //取宽高最大比例来缩放图片
    float max = Math.max(scaleW, scaleH);
    Matrix matrix = new Matrix();
    matrix.postScale(max, max);
    return Bitmap.createBitmap(bitmap, 0, 0, bmpW, bmpH, matrix, true);
}
/**
 * 宽高分别拉伸
 *
 * @param bitmap     加载的图片
 * @param widthSize  缩放之后的图片宽度,一般就是屏幕的宽度.
 * @param heightSize 缩放之后的图片高度,一般就是屏幕的高度.
 */
public static Bitmap ScaleImgMax(Bitmap bitmap, int widthSize, int heightSize) {
    int bmpW = bitmap.getWidth();
    int bmpH = bitmap.getHeight();
    float scaleW = ((float) widthSize) / bmpW;
    float scaleH = ((float) heightSize) / bmpH;

    Matrix matrix = new Matrix();
    matrix.postScale(scaleW, scaleH);
    return Bitmap.createBitmap(bitmap, 0, 0, bmpW, bmpH, matrix, true);
}

你可能感兴趣的:(Android,android)