想定义一个方形的相机预览区域,包括可能要录制视频。
那么问题来了,如何保证预览的画面没有形变?
我想到了一种方案就是做一层不透明的覆盖,拍了图后,再切出来。这种方案仅对拍照片有效,如果是拍摄视频就无效了。
我想做的就是微信里的微视频的录制节目。
求大神支招。
Android 相机预览尺寸且不变形
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
你知我知皆知 2024-08-04 08:21关注以下回答参考 皆我百晓生、券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。
在Android中,我们可以使用
Bitmap.createScaledBitmap()方法来创建一个新的、缩放后的图像,并将这个新图像设置为ImageView的背景。这样可以确保我们在显示图片时不会产生任何变形。以下是一个简单的示例:
// 创建一个新的Bitmap对象 Bitmap bitmap = Bitmap.createBitmap(640, 480, Bitmap.Config.ARGB_8888); // 设置新的Bitmap对象为ImageView的背景 imageView.setImageBitmap(bitmap);在这个例子中,我们首先创建了一个640x480像素的Bitmap对象。然后我们将这个新创建的Bitmap对象设置为ImageView的背景。
注意:这种方法只适用于显示图片,如果我们要处理的是视频,那么我们需要使用不同的方法。例如,我们可以使用VideoView或者MediaCodec来处理视频。
此外,由于Android系统是基于OpenGL ES的,所以如果你的设备不支持OpenGL ES,你可能会遇到一些性能问题。在这种情况下,你可以考虑使用其他的技术,比如矢量图形(SVG)或WebGL。
解决 无用评论 打赏 举报