我正在使用以下代码拍照:
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, CAMERA_REQUEST);
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
if (requestCode == CAMERA_REQUEST && resultCode == RESULT_OK)
{
Bitmap photo = (Bitmap) data.getExtras().get("data");
ImageView img = (ImageView) findViewById(R.id.imageView1);
img.setImageBitmap(photo);
}
}
我想在交付到我的应用程序之前编辑预览。 拍照后会出现一个对话框,要求用户必须确认照片。我想在此预览中编辑图像。
更新:
事实上我想为照片添加水印。当用户单击捕获按钮时,他必须看到带有水印的图像,而不是原始图像!
是否可以或者我必须使用Camera API而不是Intent?
最佳答案
I want to edit Preview before delivering to my app.
不要求 ACTION_IMAGE_CAPTURE
Activity 有任何方法允许您在 onActivityResult()
返回图像之前强制用户编辑图像。
After taking photo a dialog shown that user must confirm photo.
不要求 ACTION_IMAGE_CAPTURE
Activity 有任何方式允许您强制用户在 onActivityResult()
返回图像之前确认图像。
ACTION_IMAGE_CAPTURE
Activity 的实现取决于这些 Activity 的开发人员,而不是您。
or I must use Camera API instead of Intent ?!
使用 native 相机 API 对您没有帮助,因为 native 相机 API 不提供图像编辑器。如果您希望用户编辑图像,则需要在图像上尝试 ACTION_EDIT
(任何给定设备可能支持也可能不支持),或者向您的应用添加图像编辑器。
关于android - 使用 Intent 进行拍照和编辑预览,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28025123/