[英]ng-file-upload won't convert jpg image to png
我正在嘗試使用ng-file-upload將文件上傳到我的服務器,同時調整大小並將其轉換為客戶端的png。 從文檔中可以ngf-resize
,使用type
屬性設置為image/png
的ngf-resize
屬性可以實現這一點。
文檔: https : //github.com/danialfarid/ng-file-upload/blob/master/README.md將type
描述為:“type是可選的,將其轉換為給定的圖像類型格式。”
當我嘗試這個時,它適用於png源文件,但如果我使用jpg文件它不會將其轉換為png,而是在Javascript控制台中出現此錯誤:
There were invalid base64 characters in the input text.
Valid base64 characters are A-Z, a-z, 0-9, NaNExpect errors in decoding.
這是我的代碼:
<div ngf-drop ngf-select ng-model="file" class="drop-box"
ngf-drag-over-class="'dragover'" ngf-multiple="false"
ngf-allow-dir="false" accept="image/jpeg,image/jpg,image/png"
ngf-pattern="'image/jpeg,image/jpg,image/png'"
ngf-resize="{width: 100, height: 100, quality: .8, centerCrop: true, type: 'image/png'}">
甚至可以使用ng-file-upload將jpg轉換為png嗎? 或者我有代碼問題? 我的目標是讓瀏覽器進行轉換,以便我的服務器只接收png圖像。
問題是該插件正在嘗試恢復png文件中的exif數據,因為它不是jpeg會失敗。 為了避免這種情況你可以:
<div ngf-drop ngf-select ng-model="file" class="drop-box"
ngf-drag-over-class="'dragover'" ngf-multiple="false"
ngf-allow-dir="false" accept="image/jpeg,image/jpg,image/png"
ngf-pattern="'image/jpeg,image/jpg,image/png'"
ngf-resize="{width: 100, height: 100, quality: .8,
centerCrop: true, type: 'image/png', restoreExif: false}">
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.