如何在拍摄照片后立即在照片上绘图,然后保存到存储空间
How to draw on a photo IMMEDIATELY after taking it, THEN save to storage
我四处搜索并找到了解决此问题的几种不同方法,但 none 正是我要找的方法。
我正在开发一个应用程序,让用户可以通过 MediaStore.ACTION_IMAGE_CAPTURE Intent 打开相机来拍摄图像...
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
然后用
保存图像
File photo = new File(Environment.getExternalStorageDirectory(), titleOfPhoto + ".jpg");
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photo));
我什至取回缩略图并在 onActivityResult() 覆盖中为用户显示它。
正如标题所暗示的,我想做的是让用户在拍摄后立即在拍摄的图像上绘图。但是我无法控制在打开相机和返回我的应用程序之间发生的事情,并且已经保存了捕获的图像。 SnapChat 和 WhatsApp 等应用程序正是这样做的,而且还有更多,所以我知道这是可能的,但 Android 似乎没有内置此功能。
要明确:事件的顺序需要
1) 打开相机
2) 拍照
3) 在图片上画画
4) 按'Ok'/'Done' 或其他
5) 保存修改后的照片
6) Return 缩略图
有没有办法给相机添加一个事件监听器,或者以不同的方式打开相机来提供更多的控制?任何帮助表示赞赏!谢谢!
为此,您必须使用 Camera Framwork API。
其基础是在应用程序的 Surface View 上呈现相机输出。然后当用户拍照时,捕获surface view的状态。从那里你可以让你的用户在图片上画画。完成后,THEN 保存图片并显示其缩略图。
我四处搜索并找到了解决此问题的几种不同方法,但 none 正是我要找的方法。
我正在开发一个应用程序,让用户可以通过 MediaStore.ACTION_IMAGE_CAPTURE Intent 打开相机来拍摄图像...
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
然后用
保存图像File photo = new File(Environment.getExternalStorageDirectory(), titleOfPhoto + ".jpg");
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photo));
我什至取回缩略图并在 onActivityResult() 覆盖中为用户显示它。
正如标题所暗示的,我想做的是让用户在拍摄后立即在拍摄的图像上绘图。但是我无法控制在打开相机和返回我的应用程序之间发生的事情,并且已经保存了捕获的图像。 SnapChat 和 WhatsApp 等应用程序正是这样做的,而且还有更多,所以我知道这是可能的,但 Android 似乎没有内置此功能。
要明确:事件的顺序需要
1) 打开相机
2) 拍照
3) 在图片上画画
4) 按'Ok'/'Done' 或其他
5) 保存修改后的照片
6) Return 缩略图
有没有办法给相机添加一个事件监听器,或者以不同的方式打开相机来提供更多的控制?任何帮助表示赞赏!谢谢!
为此,您必须使用 Camera Framwork API。
其基础是在应用程序的 Surface View 上呈现相机输出。然后当用户拍照时,捕获surface view的状态。从那里你可以让你的用户在图片上画画。完成后,THEN 保存图片并显示其缩略图。