调整没有宽高比的图像

时间:2016-02-08 17:23:14

标签: android image image-resizing

我想将我的位图图像调整为512px,512px。我使用下面的代码,但当我的图像调整大小时,其非常糟糕和纵横比受到影响。如何在没有宽高比的情况下调整图像大小?第二张图像用pc调整到512px。 enter image description here enter image description here

public Bitmap getResizedBitmap(Bitmap bm, int newHeight, int newWidth) {
        int width = bm.getWidth();
        int height = bm.getHeight();
        float scaleWidth = ((float) newWidth) / width;
        float scaleHeight = ((float) newHeight) / height;
        Matrix matrix = new Matrix();
        matrix.postScale(scaleWidth, scaleHeight);
        Bitmap resizedBitmap = Bitmap.createBitmap(bm, 0, 0, width, height, matrix, false);
        return resizedBitmap;
    }

1 个答案:

答案 0 :(得分:2)

您可以使用此功能调整位图大小。

Bitmap yourBitmap;
Bitmap resized = Bitmap.createScaledBitmap(yourBitmap, newWidth, newHeight, true);

或:

resized = Bitmap.createScaledBitmap(yourBitmap,(int)(yourBitmap.getWidth()*0.8), (int)(yourBitmap.getHeight()*0.8), true);