2015-05-30 63 views
1

我成功地使用Cordova將照片(不從媒體庫中拉出來)上傳到雲存儲。Cordova/PhoneGap照片質量設置爲1,質量仍然很高

但是,儘管質量參數設置爲1,圖像仍然被保存在4-6mb尺寸範圍內,完全一樣的,當它被設置爲100

,因爲我敢肯定,這是一個怪癖,想知道是否有人有過這種經歷,並知道可能會發生什麼。我正在使用iPhone 6作爲我的設備。乾杯!

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

您是否嘗試過使用數字10而不是1?據我記得,質量如10-20-30-40等...您的價值是如此之低,PhoneGap可能只是忽略它,並不會壓縮圖像。 –

+0

@erol_smsr沒有運氣,當我將它設置爲10時,圖像仍然在5-6mb之間。儘管如此,謝謝您的回覆。 – Colton45

+0

我會嘗試一些在android上的模擬並讓你知道 – AshBringer

回答

1

望着用於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作者的良好實現......我想這是另一天的問題,但對我來說似乎有點愚蠢。 :)

+0

感謝您的幫助Mike。向所有閱讀此內容的人發問。您可以在選項中設置寬度或高度(但只是一個),這將觸發質量設置的使用,但如果僅使用其中一項,寬度或高度仍未指定,因爲它們不是聯合使用。他們都需要觸發圖像調整大小。 – Colton45