3

カメラ画像キャプチャのように見えますが、サムネイルまたはフル画像のいずれかのみをキャプチャできますが、両方を 1 つのパスでキャプチャすることはできません。

 public void startCamera() {
 ...
    camera.putExtra("output", imageUri); (step 1)
 ...

事前に宣言する必要があります

 ...
 startActivityForResult(camera, IMAGE_CAPTURE); (step 2)
 ...
    Bundle extras = camera.getExtras();
    mImageBitmap = (Bitmap) extras.get("data");
    imageView.setImageBitmap(mImageBitmap);
 ...

ただし、「onActivityResult」が返されると、イメージ全体が既に imageUri に保存され、バッファーがクリアされます。ただし、撮影した画像のサムネイルをキャプチャするには、「startActivityForResult」の後にコードを実行する必要があります。問題は、ステップ 2 で画像が保存されると、画像バッファがクリアされることです。画像のサムネイルをキャプチャするには、ステップ 2 でサムネイル画像をキャプチャするために、ステップ 1 で完全な画像を保存するのをスキップする必要があります。

別の方法を使用して、画像全体を保存し、画像全体をビットマップに再読み込みし、画像をサムネイル サイズにスケーリングして画像を再保存できますが、冗長なようです。両方を 1 つのパスで実行できるかどうか、何か考えはありますか?

4

1 に答える 1

1

MediaStore.Images.Thumbnails を確認してください。具体的には getThumbnail (下部) を確認してください: http://developer.android.com/reference/android/provider/MediaStore.Images.Thumbnails.html

それでもうまくいかない場合は、サムネイルを手動で再スケーリングして保存する必要があります。

于 2013-03-31T21:39:52.390 に答える