私はイメージビューを持っています
<ImageView
android:id="@+id/imgCaptured"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/captured_image" />
カメラから画像をキャプチャし、その画像をビットマップに変換します。
Bitmap thumbnail;
thumbnail = MediaStore.Images.Media.getBitmap(getActivity()
.getContentResolver(), imageUri);
上記のイメージビューに表示する前に、このビットマップの解像度を取得すると、
Log.i("ImageWidth = " + thumbnail.getWidth(), "ImageHeight = "
+ thumbnail.getHeight());
それは私を返しますImageWidth = 2592 ImageHeight = 1936
この後、上記のイメージビューにこのビットマップを表示した後imgCaptured.setImageBitmap(thumbnail);
、イメージビューのサイズを次のように変更します
Log.i("ImageView Width = " + imgCaptured.getWidth(),
"ImageView Height = " + imgCaptured.getHeight());
これは私を返しましたImageView Width = 480 ImageView Height = 720
今私の質問はそれです
イメージビューに表示した後、そのビットマップのサイズを取得するにはどうすればよいですか。私はこれを使用してこれを行うことができることを知っています
image.buildDrawingCache(); Bitmap bmap = image.getDrawingCache();
ただし、これにより、イメージビューと同じサイズの新しいビットマップが作成されます。
また、画像を画像ビューに表示した後、画像のサイズが自動的に変更されるかどうかも知りたいです。はいの場合、画像のサイズを変更せずに画像をimageviewに表示する方法はありますか。
編集
実際には 2592x1936 の画像をキャプチャしました。この画像を imageView に表示し、この画像に対して他の操作を行いました。この画像を同じ 2592x1936 の解像度で保存したいと思います。出来ますか?
前もって感謝します。