Phonegap相机API允许编辑,设置图像始终为正方形。

9

你好,我正在使用iOS上的PhoneGap相机API。我想以640x640的正方形格式拍照。当我使用相机的sourceType时,这个功能可以正常工作。但是,如果我在相机的sourceType中使用targetWidth和targetHeight来调用手机图库,则只有当图像完全适合定义的正方形时才能正常工作。如果从库中获取的图像是横向拍摄的,并且高度小于定义的targetHeigt(640),则图像将不是正方形,而是保持其原始高度。我期望的是一个黑色的边框,填充空白区域,使其变为640。只有在使用相机并拍摄横向图片并设置correctOrientation:1时才会发生这种情况。

以下是我的相机和照片库代码:

相机:

var options =   {
        quality: 49,
        allowEdit : true,
        targetWidth: 640, 
        targetHeight: 640, 
        correctOrientation: 1, 
        saveToPhotoAlbum: 1,
        //destinationType: Camera.DestinationType.FILE_URI,
        destinationType: navigator.camera.DestinationType.FILE_URI,
        sourceType: 1,      // 0:Photo Library, 1=Camera, 2=Saved Photo Album
        encodingType: 0     // 0=JPG 1=PNG
    }
    navigator.camera.getPicture(onSuccess,onFail,options, {limit:2});

文库:

var options =   {
        quality: 49,
        allowEdit : true,
        targetWidth: 640, 
        targetHeight: 640, 
        correctOrientation: 1,
        //destinationType: Camera.DestinationType.FILE_URI,
        destinationType: navigator.camera.DestinationType.FILE_URI,
        sourceType: 0,      // 0:Photo Library, 1=Camera, 2=Saved Photo Album
        encodingType: 0     // 0=JPG 1=PNG
    }
    navigator.camera.getPicture(onSuccess,onFail,options);

你解决过这个问题吗?我也遇到了这个问题,看起来像是一个 bug。 - Dev01
1个回答

1
  • 我建议您使用image-cropper-touch
  • 我也遇到了这个bug。 我认为仅仅使用cordova-plugin-camera会让你失望。 获取图像后,您可以添加一个名为CropperImage的函数。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接