我想在一个包含div的矩形中打开相机预览,并拍摄相机预览中可见的图片。
我使用了CameraPreview.startCamera
方法(请参见下面的方法)来给startCamera
确切的矩形以打开相机。它可以正常工作,并完全按照我的要求在div中打开相机。
但是当我拍照时(见下图:cameraPreview.takePicture
),我发现相机已沿Y轴捕获了指定矩形以外的内容。
有趣的是,沿X轴显示的图片中,仅包含在拍摄图片时位于重新标识内部的内容。
我要附上我的相关图片和下面的代码。
任何帮助将不胜感激!
下面的图像1:包含div的相机预览。
我使用以下代码在预览中打开相机并拍照:
export class CameraService {
constructor(private camera: Camera,
private platform: Platform,
private cameraPreview: CameraPreview) {
}
takePicture(div) {
return this.cameraPreview.takePicture();
}
startCamera(div?) {
let rectangle = div.getBoundingClientRect();
let x = rectangle.x;
let y = rectangle.y;
let width = rectangle.width;
let height = rectangle.height;
let tapEnabled: any = false;
let dragEnabled: any = false;
// let toBack: any = true;
let alpha = 1;
let rect: any = {
x: x || 250,
y: y || 250,
width: width || this.platform.width(),
height: height || this.platform.height()
};
console.log(rect);
this.cameraPreview.startCamera(
{
...rect,
toBack: true,
tapEnabled,
dragEnabled,
previewDrag: true,
alpha
}
);
}
}