react-native-image-picker 获取反向高度和宽度

react-native-image-picker getting reverse height and width

我正在使用 react-native-image-picker 库来捕获图像代码如下:

launchImageLibrary({
   includeExtra: false,
   mediaType: "photo",
   selectionLimit: 0,
   quality: 1,
   maxWidth: 1000,
   maxHeight: 1500
}, (res)=>{
   console.log(res);
});

当我使用 android 真实设备(人像)进行拍摄时,获取图像如下:

{
   uri: "string",
   height: 1000,
   width: 750
}

预期和正确的响应:

{
   uri: "string",
   height: 750,
   width: 1000
}

有人能帮帮我吗?

我建议你使用 react-native-image-crop-picker 库。

下面的代码适合我。不需要裁剪即可使用

import ImagePicker from 'react-native-image-crop-picker';

ImagePicker.openCamera({
  width: 768,
  height: 1024,
  cropping: false,
}).then(image => {
  console.log(image)
})

看起来我们的纵横比相同 3/4。所以我想它可能对你有帮助。

在android,我在裁剪照片时遇到了同样的问题。裁剪后的新照片的宽度与高度相反。

我通过删除原始宽度和高度来解决问题。 (但对于Ios,原来的宽高很重要)

import ImagePicker from 'react-native-image-crop-picker'   try {
    ImagePicker.openCropper({
      path: uri,
      // width:2048,
      // height: 4096,
      includeExif: true,
      hideBottomControls: true,
      waitAnimationEnd: false,
      cropperChooseText: 'ok',
      cropperCancelText: 'Cancel',
    }).then(async image => {
      callback(image.path)
    })