デフォルトでは、ターゲットが設定されている場合、react-native-camera
は電話の標準アスペクト比で写真を撮り、Base64 pngで出力します。Camera.constants.CaptureTarget.memory
正方形の写真を作成する方法を探しています-カメラを直接使用するか、キャプチャしたimagedata
. そのようなことが React Native で可能かどうかはわかりません。または、代わりに完全にネイティブ コードを使用する必要があります。
aspect
プロップは、ビューファインダーでのカメラ画像の表示方法のみを変更します。
これが私のコードです:
<Camera
ref={(cam) => {
this.cam = cam;
}}
captureAudio={false}
captureTarget={Camera.constants.CaptureTarget.memory}
aspect={Camera.constants.Aspect.fill}>
</Camera>;
async takePicture() {
var imagedata;
try {
var imagedata = await this.cam.capture();// Base64 png, not square
} catch (err) {
throw err;
}
return imagedata;
}