android - 获取相机预览(正是它显示的内容)

标签 android android-camera

是否有可能以某种方式捕获 CameraPreview 正在显示的图片? 由于未知原因,我的相机预览与垂直模式下拍摄的照片不同。 为了完成我的应用程序,我需要预览中拍摄的照片的精确图像。 我知道这个问题是由于将照片旋转 90 度引起的,但问题仍然存在 - 如何写入相机预览文件(不是拍摄的照片)。

最佳答案

如果您使用的是 SurfaceView,则无法获取该图像数据。

但是,如果您将 SurfaceTexture 与 Camera.setPreviewTexture 一起使用,您可以读回 SurfaceTexture 正在写入数据的 OpenGL 纹理,然后将其保存到磁盘。查看 OpenGL 教程或其他有关使用 glReadPixels 的问题。

如果您的问题只是照片拍摄方向错误,请查看Camera.Parameters.setRotation ,它可以让您更改拍摄照片的方向。

关于android - 获取相机预览(正是它显示的内容),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18339928/

相关文章:

android - 为什么相机 Intent 会自动将图像保存到磁盘?

android - 如何在运行时生成 ImageView

android - 如何使 TextView 中的文本在布局 XML 中不可点击?

java - 如何使用网络摄像头扫描条形码?

java - 无法在 Android 中使用自定义相机将捕获的图像保存在文件夹中

java - Android 相机应用拍照后延迟

javascript - react 原生 |由于 "react-native-google-signin"导致应用程序崩溃

java - 在android中以毫秒为单位获取系统时间

android - android 中的 setBackgroundDrawable

java - Camera.takePicture(null, null, mPicture) 不起作用