我想创建一个相机应用程序,在相机预览上绘制图像。当相机运行时,我想在相机预览中添加图像文件(示例:image.png)。 这是我必须运行相机的代码,但我不知道添加/绘制 image.png 的代码
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
mImageCaptureUri = Uri.fromFile(new File(Environment.getExternalStorageDirectory(),
"IMG_" + String.valueOf(System.currentTimeMillis()) + ".jpg"));
intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, mImageCaptureUri);
try {
intent.putExtra("return-data", true);
startActivityForResult(intent, PICK_FROM_CAMERA);
} catch (ActivityNotFoundException e) {
e.printStackTrace();
}
最佳答案
您无法在相机上叠加项目,除非相机预览位于您的应用本身中。使用 Intent 将不允许您执行此操作。
我的书中的一个示例应用程序 Pro Android Augmented Reality 向您展示了如何执行此操作。您可以找到该应用程序的开源代码 here .
本质上,您必须使用 SurfaceView显示相机数据,然后使用 RelativeLayout或FrameLayout在其上绘制东西。
关于Android:在相机预览上绘制图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12689095/