拍照并保存原始尺寸

时间:2013-04-30 07:34:02

标签: android

如何从意图中获取照片

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);

onActivityResult中不是URI格式,而是JPG,PNG原始大小并保存它。 需要JPG,PNG因为在拍摄后我在上面加了水印。

我不知道为什么bitmap.compress(Bitmap.CompressFormat.JPEG, 100, out);2048x1536返回的照片尺寸为256x192后。

1 个答案:

答案 0 :(得分:0)

  1. 为了在图库中保存图像,您已发送广播,如下面的代码示例所示。

  2. 如果您需要带有原始尺寸的图像,您可以简单地捕获uri并将其直接设置为ImageView。虽然最好将其缩小并使用较小版本的位图来避免OutOfMemory异常。

    public void onActivityResult(int requestCode, int resultCode, Intent intent) {
        super.onActivityResult(requestCode, resultCode, intent);
    
        if(requestCode==CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE){
           if(resultCode==RESULT_OK){
               saveToGallery(mImageUri);
               yourImageView.setImageURI(mImageUri);
          }  
       }
    }
    
    public void saveToGallery(Uri uri){
        sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,uri));
    }