【问题标题】:Android: Draw image on Camera PreviewAndroid:在相机预览上绘制图像
【发布时间】:2012-10-02 11:03:26
【问题描述】:

我想创建一个在相机预览上绘制图像的相机应用程序。当相机运行时,我想在相机预览中添加一个图像文件(例如: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();
}

【问题讨论】:

    标签: android camera android-camera-intent


    【解决方案1】:

    您不能在相机上叠加项目,除非相机预览在您的应用程序本身中。使用意图将不允许您这样做。

    我的书中的一个示例应用程序 Pro Android Augmented Reality 向您展示了如何做到这一点。您可以找到该应用程序的开源代码here

    本质上,您必须使用SurfaceView 来显示相机数据,然后使用RelativeLayoutFrameLayout 在其上绘制东西。

    【讨论】:

    • 如果使用SurfaceView来显示相机,显示是像ACTION_IMAGE_CAPTURE一样还是取决于布局?
    • 你处理所有的显示等。它与 Intents 完全无关。
    • 但有可能,对吗?你有一个使用 SurfaceView 的示例应用程序,显示为 ACTION_IMAGE_CAPTURE 吗?
    • 显示为 ACTION_IMAGE_CAPTURE。
    • 如果您在布局中添加按钮来拍照并执行其他操作,那么可以
    猜你喜欢
    • 1970-01-01
    • 2012-08-28
    • 1970-01-01
    • 1970-01-01
    • 2017-12-21
    • 2012-10-06
    • 1970-01-01
    相关资源
    最近更新 更多