開源的在線圖片壓縮工具-Squoosh
說到圖片壓縮,大部分人應該都知道tinypng這個在線圖片壓縮工具,不得不說,這貨的壓縮質量還挺不錯的。而且,我也經常用到它。前幾天,我要壓縮幾張自己的照片用于電子請柬,不想把這些私有圖片上傳到別人的網站上,就想著找個開源的。最終還真找到一個非常不錯的開源圖片在線壓縮工具-squoosh。
squoosh在壓縮圖片時,都是在本地執行,不會將圖片上傳到服務端,這樣就保障了用戶隱私安全。但是,Squoosh用到了谷歌分析工具,會收集一些基礎信息。
如果連基礎信息你也介意的話,反正代碼在你手上,想怎么干就看你自己了。
我們去Github把代碼下載下來,解壓源代碼,進入到源碼根目錄,安裝依賴包。
npm install
安裝過程可能會因為網絡原因安裝失敗,這里是用nrm來替換鏡像源。
然后執行編譯。
npm run build
最后,執行運行命令:
npm run dev
因為我用的是Windows,執行npm run dev會報錯,所以,就修改了package.json的內容,將:
"scripts": {
"build": "rollup -c && node lib/move-output.js",
"debug": "node --inspect-brk node_modules/.bin/rollup -c",
"dev": "DEV_PORT=\"${DEV_PORT:=5000}\" run-p watch serve",
"watch": "rollup -cw",
"serve": "serve --listen=$DEV_PORT --config ../../../serve.json .tmp/build/static",
"prepare": "husky install"
},
改為:
"scripts": {
"build": "rollup -c && node lib/move-output.js",
"debug": "node --inspect-brk node_modules/.bin/rollup -c",
"dev": " run-p watch serve",
"watch": "rollup -cw",
"serve": "serve --listen=5000 --config ../../../serve.json .tmp/build/static",
"prepare": "husky install"
},
如果是Linux,則不需要做如上的調整。
現在執行運行命令:
啟動成功后,瀏覽器訪問http://127.0.0.1:5000,就可以開始壓縮圖片了。
這里,我隨便找一圖片原圖大小為776KB的png圖片壓縮并轉換為jpg后的大小為101KB。
當然,這里的轉換格式和壓縮質量也可以通過設置來調整的。通過網頁的方式,我們可以一張張的進行壓縮,如果我們壓縮的圖片較多時,這樣的操作效率就有些低了,其實,Squoosh還提供了API和客戶端命令來批量壓縮。
有興趣的,可以按照Github中的說明安裝下來嘗試一下。