我正在成功拍摄照片(不是从媒体库中提取照片)并使用 Cordova 将它们上传到云存储。
但尽管将质量参数设置为 1,但图像仍存储在 4-6mb 大小范围内,与设置为 100 时完全相同。
我确定这是一个怪癖,想知道是否有人有过这种经历并且知道可能发生了什么。我使用 iPhone 6 作为我的设备。干杯!
navigator.camera.getPicture(photoSuccess, captureError, {
quality: 1,
destinationType: navigator.camera.DestinationType.FILE_URI,
saveToPhotoAlbum:true
});
Best Answer-推荐答案 strong>
查看 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 作者来说是否是一个好的实现......我想这是另一天的问题,但对我来说似乎有点傻。
关于javascript - Cordova/PhoneGap 照片质量设置为 1,仍然是高质量,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/30549887/
|