7

ファイル全体を読み取らずに、Android でビットマップの寸法を取得したいと考えています。

おすすめとsを記録しinJustDecodeBoundsたカスタムを使ってみました。残念ながら、これに基づくと、Androidは大量のバイトを読み取っているように見えます。InputStreamread()BitmapFactory

類似: Java/ImageIO はファイル全体を読み取らずに画像のサイズを取得しますか? Android の場合、ImageIO を使用しません。

4

2 に答える 2

14

あなたはinJustDecodeBoundsを使用する権利があります。trueに設定し、デコードにオプションが含まれていることを確認してください。これは画像サイズを読み取るだけです。

ストリームを読み取る必要はありません。デコードでパスを指定するだけです。

BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeFile(<pathName>, options);
int imageHeight = options.outHeight;
int imageWidth = options.outWidth;
于 2012-08-18T12:56:27.170 に答える