0

ギャラリーから画像をビットマップとして読み込み、カスタム ビュー (画像ビューではなく) に表示したい。ビットマップを読み込むためのコードは次のとおりです。

private Bitmap loadBitmap(String filePath, int orientation, int width, int height) {
        Bitmap bitmap = null;
        try {
            BitmapFactory.Options options = new BitmapFactory.Options();
            options.inJustDecodeBounds = true;
            BitmapFactory.decodeFile(filePath, options);
            int scale = 1;
            if ((options.outWidth > width) || (options.outHeight > height)) {
                if (options.outWidth < options.outHeight) {
                    scale = Math.round((float) options.outWidth / width);
                } else {
                    scale = Math.round((float) options.outHeight/ height);
                }
            }
            options.inSampleSize = scale;
            options.inJustDecodeBounds = false;
            bitmap = BitmapFactory.decodeFile(filePath, options);
            if (orientation > 0) {
                // rotate the image w.r.to orientation
                Matrix matrix = new Matrix();
                matrix.postRotate(orientation);
                bitmap = Bitmap.createBitmap(bitmap, 0, 0,width,height, matrix, true);
            }
        } catch (Exception e) {
            bitmap = null;
        }
        return bitmap;
    }

今私の問題は、キャンバスにビットマップが完全に表示されないことです.一部だけです.画面サイズで画像を(鮮明さを失うことなく、引き伸ばさずに)調整するにはどうすればよいですか?

前もって感謝します

4

1 に答える 1