Cordova / PhoneGap照片质量设置为1,仍然是高品质

时间:2015-05-30 18:34:56

标签: javascript ios cordova phonegap-plugins

我成功拍照(不是从媒体库中取出)并使用Cordova将其上传到云存储。

但是尽管将质量参数设置为1,图像仍然存储在4-6mb大小范围内,与设置为100时完全相同。

我确定这是一个怪癖,想知道是否有人有过这种经历并知道可能会发生什么。我使用iPhone 6作为我的设备。干杯!

navigator.camera.getPicture(photoSuccess, captureError, {
    quality: 1,
    destinationType: navigator.camera.DestinationType.FILE_URI,
    saveToPhotoAlbum:true
});

1 个答案:

答案 0 :(得分:2)

查看iOS插件的源代码,结果证明quality设置可以被尊重或忽略,具体取决于您提供的其他选项。归结为:

if ((options.allowsEditing == NO) && (options.targetSize.width <= 0) && (options.targetSize.height <= 0) && (options.correctOrientation == NO)){
    // Ignore the quality setting
} else {
    // Use the quality setting
}

if ()中的选项都是iOS提供的默认值。如果您使用非默认值指定其中任何一个,我怀疑您的图像大小将按照您的预期开始更改。这是否是iOS作者的一个很好的实现...我想这是另一天的问题,但对我来说似乎有点傻。 :)