基本上我创建了一个简单的Android相机应用程序,不添加视频录制,我按照这个链接 android camera app tutorial link
问题是当我从前置摄像头捕获图像时,点击捕获按钮后显示镜像的图像就像我们站在镜子前面一样。例如,我有右侧箭头图像,但是当我捕捉时,它会预览左侧箭头。对于英语。
答案 0 :(得分:2)
显示位图时,您可以在imageView
中使用缩放属性android:scaleX="-1" //To flip horizontally or
android:scaleY="-1" //To flip verticallyenter code here
更新1: 您可以以类似的方式在预览中翻转图像。您还可以创建一个辅助函数来翻转位图,然后将其设置为imageView。
可以找到帮助翻转图像的功能here。对于您的代码,您可能只需要以下内容:
public static Bitmap flip(Bitmap src, int type) {
// create new matrix for transformation
Matrix matrix = new Matrix();
matrix.preScale(-1.0f, 1.0f);
// return transformed image
return Bitmap.createBitmap(src, 0, 0, src.getWidth(), src.getHeight(), matrix, true);
}
然后在您的previewCaptureImage方法中,使用flip方法,然后将其设置为imageView,而不是此imgPreview.setImageBitmap(bitmap);
imgPreview.setImageBitmap(flip(bitmap));
答案 1 :(得分:0)
val outputOptions = ImageCapture
.OutputFileOptions
.Builder(photoFile)
.setMetadata(ImageCapture.Metadata().also {
it.isReversedHorizontal = CameraSelector.LENS_FACING_FRONT == lensFacing
}).build()