2012-03-12 1 views
0

私はカメラのアクティビティを呼び出すメソッドを持っている,,しかし、カメラからの結果は、大きなサイズである、と私は小さなsize..thisにして画像のサイズを変更したいのは、私の方法カメラからどのように小さな画像を取得するのですか?

public void startCamera() 
{ 

    fileName =helper.getKdStore(c)+"_"+System.currentTimeMillis()+ ".jpg"; 
    _path=Environment.getExternalStorageDirectory().toString() + "/Alfa Location/"; 

    file = new File(_path, fileName); 
    try { 
    file.createNewFile(); 
    } catch (IOException e) { 
    e.printStackTrace(); 
    }    

    Uri outputFileUri = Uri.fromFile(file); 
    Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
    intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri); 
    startActivityForResult(intent, IMAGE_CAPTURE); 

} 

であり、これは活動の結果方法

です
protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{ 
    if (requestCode == IMAGE_CAPTURE) 
    { 
     if (resultCode == RESULT_OK) 
     { 
      Log.d("ANDRO_CAMERA","Picture taken!!!"); 
      //imageView.setImageURI(imageUri); 
      Toast.makeText(Detail.this, "Gambar Berhasil di simpan", Toast.LENGTH_LONG).show(); 

     } 
    } 
} 

は、私は、画像のサイズを変更することができますどのように?あなたは

答えて

2

あなたが使用してカメラから与えた後の画像のサイズを変更することができ感謝

int desiredImageWidth = 100; // pixels 
int desiredImageHeight = 100; // pixels 

BitmapFactory.Options o = new BitmapFactory.Options(); 
Bitmap newImage = Bitmap.createScaleBitmap(BitmapFactory.decodeFile(imagePath, o), 
              desiredImageWidth, 
              desiredImageHeight, 
              false); 
+0

ここで私はこのコードを書いていますか?ありがとう – akubabas

+0

@akubabasあなたが 'Toast'をどこに置くのですか。' imagePath'は 'Intent'に入れた' URI'です( 'outputFileUri'あなたのコード。これをクラス変数にしたいと思うかもしれません)。画像のサイズ変更のSOには他にも良い例があります(例:http://stackoverflow.com/questions/477572/android-strange-out-of-memory-issue/823966#823966)。イメージを表示するか、サイズを変更したイメージを保存する場合は、こちらをご覧ください:http://stackoverflow.com/questions/6027720/android-how-to-save-captured-image-into-phones-gallery –

関連する問題