我有使用系统相机的android照片拍摄应用程序和捕获后我收集图像位图并使用位图压缩流编写器将其保存到我的位置,手机摄像头相当不错但我使用意图接收的图像质量很差。
当图像质量属性为100时为什么会发生这种情况?我希望还有其他方法。谢谢你的帮助。
这是我调用相机并保存图像的代码。
..
Intent pic = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(takePicture, 0);
....after photo shoot
public void onActivityResult(int requestCode, int resultCode, Intent intent)
{
if (requestCode == CAMERA_PIC_REQUEST) {
Bitmap b = (Bitmap) intent.getExtras().get("data");
fileOutputStream files = new
fileOutputStream(new File(Environment.getExternalStorageDirectory()+"/myFolder/","image.jpg"));
b.compress(Bitmap.CompressFormat.JPEG, 100, files);
}
}
答案 0 :(得分:0)
如果在通过Intent使用摄像头捕获时需要全尺寸图像,则需要指定输出URI,如下所示:
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, outputImageUri);
否则,Intent extras数据字段中返回的图像是缩略图。