如何在一帧后面显示预览相机并拍照包括帧
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在一帧后面显示预览相机并拍照包括帧相关的知识,希望对你有一定的参考价值。
我正在尝试使用相机API在android中构建相机应用程序。
我按照说明:https://examples.javacodegeeks.com/android/core/hardware/camera-hardware/android-camera-example/和我建立了一个相机应用程序
现在我需要在一个框架内显示预览相机并拍摄包含框架的图片
请看下面两张图:
资源文件夹中的框架:https://i.stack.imgur.com/AaNIQ.png
我想要实现的照片:https://i.stack.imgur.com/UWXcq.jpg
任何人都可以给我建议或者如果可能的话给我一个简单的例子?
我搜索了这个,但没有得到正确的例子。
非常感谢。
答案
答案的一半可以在这里找到:https://stackoverflow.com/a/47240902/192373。
至于为全分辨率图像捕获保持相同的布局,首先要确保保持预览和图像大小同步。这并不意味着它们必须相同,但宽高比应该是。当纵横比变为捕获照片时,某些设备会产生奇怪的效果。
接下来,您像往常一样捕获jpeg,将其解压缩到位图,使用框架位图覆盖(您可能需要在此处使用高分辨率版本的框架)并将两者结合(基于https://stackoverflow.com/a/4863551/192373):
public Bitmap combineImages(Bitmap picture, Bitmap frame) {
Bitmap bmp = Bitmap.createBitmap(picture.getWidth(), picture.getHeight(), Bitmap.Config.ARGB_8888);
Canvas comboImage = new Canvas(bmp);
comboImage.drawBitmap(picture, 0f, 0f, null);
comboImage.drawBitmap(frame, 0f, 0f, null);
return bmp;
}
以上是关于如何在一帧后面显示预览相机并拍照包括帧的主要内容,如果未能解决你的问题,请参考以下文章