使用 Cordova (Phonegap) 相机 API 拍摄方形图像?

Mel*_*Dog 5 ios cordova

我已经成功地编写了相机 API 来拍摄和保存照片(在 iOS 上)。但是,我希望照片是方形的(如 Instagram)。

我已将targetWidthtargetHeight设置为相同的像素,但图像仍会出现纵向或横向,具体取决于手机的握持方式。

我的完整 API 代码是:

 navigator.camera.getPicture(onPhotoDataSuccess, onFail, { 
    quality: 50, 
    targetWidth: 600, 
    targetHeight: 600, 
    correctOrientation: 1, 
    saveToPhotoAlbum: 1
    });
Run Code Online (Sandbox Code Playgroud)

有谁知道如何在 iOS 设备上使用此 API 保存方形照片?

lui*_*s81 2

在我的测试中,我意识到了同样的事情,但我的意图是相反的。我想保留图片的完整尺寸,但当相机打开时,会显示“方形覆盖”,这意味着只会保存方形内的内容。

然后,我将“allowEdit”参数更改为“false”而不是“true”。现在我可以保存完整图片了。就您而言,我可以看到您没有使用此参数,所以也许您应该在代码中添加它。例子:

navigator.camera.getPicture(onPhotoSuccess, onPhotoFail, {
    quality : 40,
    allowEdit : false,
    destinationType : navigator.camera.DestinationType.DATA_URL, 
    encodingType : navigator.camera.EncodingType.PNG, 
    sourceType : navigator.camera.PictureSourceType.CAMERA,
    targetWidth : width,
    targetHeight : height
});
Run Code Online (Sandbox Code Playgroud)

宽度和高度似乎与长宽比的关系比与图片尺寸的关系更大。