首頁  >  文章  >  web前端  >  JS和Canvas實現圖片的預覽壓縮和上傳功能

JS和Canvas實現圖片的預覽壓縮和上傳功能

亚连
亚连原創
2018-05-28 10:30:271559瀏覽

這篇文章主要介紹了JS和Canvas實現圖片的預覽壓縮和上傳功能,實現此功能大概有兩步,第一步用戶選擇需要上傳的圖片,第二步獲取圖片資源壓縮預覽上傳,具體實作程式碼大家參考下本文

先來一張效果圖,壓壓驚

第一步:使用者選擇需要上傳的圖片

r​​rreee

在選定了圖片後upload 函數將被觸發,我們需要在這個函數中,獲取到圖片的資源,將它壓縮並利用canvas繪製出來,若需要上傳到伺服器,也可以利用ajax或其他方式上傳。

第二步:取得圖片資源壓縮預覽上傳

<input type="file" accept="image/*" type="file"" name="imageFile" onchange="upload()">

現在我們來比較圖片是否成功壓縮:

原始圖片大小: 

  

壓縮比設定為0.92:

壓縮比設定為0.52

乍一看,你是不是覺得很奇怪,為什麼設定了縮放比為0.92,圖片居然比原圖大?其實圖片通過base64編碼後都會變的比原圖大,具體原因可以參考base64的編碼原理。如此看來,我們已經成功壓縮了圖片!

注意點:canvas在IE9以下不支援;大圖盡量不要使用base64,影響反應速度。

上面是我整理給大家的,希望今後對大家有幫助。

相關文章:

JavaScript逐步實作一個出生日期的正規表示式

使用Vue開發動態刷新Echarts元件的教學課程詳解

bootstrap中selectpicker下拉方塊使用方法實例

以上是JS和Canvas實現圖片的預覽壓縮和上傳功能的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn