微信搜尋 【大遷世界】, 我會第一時間和你分享前端行業趨勢,學習途徑等等。
本文 GitHub https://github.com/qq449245884/xiaozhi 已收錄,有一線大廠面試完整考點、資料以及我的系列文章。
影像往往是任何特定網頁上最大的資源。雖然許多開發者花時間最佳化網頁效能的其他方面,但減少影像的大小對效能的影響比所有其他方面加起來還要大。這篇文章將純粹關注於可用於減少圖片大小的不同工具。
WebUtils Bulk Image Compress
地址:https://www.webutils.app/imag...
WebUtils Bulk Image Compress 支援壓縮圖片並將其轉換為 WebP、JPG、PNG、AVIF和 JXL。
Compressor.Io
Compressor.io 支援有損或無失真壓縮來最佳化JPEG、PNG、SVG、GIF和WebP,每個檔案最大可壓縮10MB。
Imagecompresser.Com
地址:https://imagecompresser.com/
Imagecompresser.com 支援同時上傳多達10個檔案,支援PNG、JPEG、WebP、JPG和GIF格式。
AnyWebP
AnyWebP 是專門用於轉換WebP格式的圖片,可以輸出為JPEG、PNG或ICO,也可以按檔案大小或質量進行定製,還可以選擇將幾乎任何檔案格式(TIFF、PSD、BMP等)轉換為WebP。
Compressimage.Io
Compressimage.io 支援離線的影像最佳化,對檔案大小或檔案數量沒有限制。唯一的限制是只能壓縮JPEG和PNG。
JPEG.Rocks
JPEG.rocks,顧名思義,是一個隱私友好的JPEG影像最佳化器,完全是客戶端和開源的。對檔案大小或檔案數量似乎沒有限制,而且可以自定義輸出檔案的質量。
Compressor.Js
地址:https://fengyuanchen.github.i...
Compressor.js 與本列表中的其他工具完全不同。它包括大約十幾種不同的設定,可以自定義影像的質量、大小、MIME型別等等。
Squoosh
Squoosh是由Chrome實驗室團隊設計的。這個網路應用僅限於一張圖片,但它包括幾個選項,用於縮小尺寸、調色盤、選擇壓縮方法、壓縮質量等級,以及一系列其他高階設定。為這個工具提供動力的引擎也可以作為API或CLI用於批次處理。
SVGOMG
地址:https://jakearchibald.github....
SVGOMG是專門用於減少SVG圖形的大小。它是SVGO的一個GUI,是一個基於Node.js的工具。SVG最佳化器很有用,因為許多生成SVG的程式在生成影像的SVG程式碼中包含了多餘的和無用的資訊
Optimizilla
地址:https://imagecompressor.com/
Optimizilla 使用有失真壓縮來減少JPEG、GIF和PNG影像的大小。最多能上傳20張圖片,可以選擇在下載前為每張圖片定製壓縮級別和質量。
Shrink Me
Shrink Me 支援批次最佳化JPEG、PNG、WebP或SVG影像,而且沒有明顯的質量損失。對檔案數量或檔案大小沒有限制。
JPEG Stripper
地址:https://www.toolsley.com/jpeg...
JPEG Stripper 透過剝離不必要的資料來最佳化JPEG檔案。一次只允許上傳一張圖片,所以這隻對JPEG格式的幾張圖片有用。
Shrink Media
Shrink Media 支援最佳化PNG、JPEG和WebP影像,解析度最高可達5000x5000
,它也可以作為iOS或Android的移動應用程式。使用互動式滑塊來改變質量水平和照片尺寸。也可以貼上圖片的URL。
OptimizeImages
地址:https://www.optimizeimages.com/
OptimizeImages 可以減少SVG、PNG、JPEG、WebP、GIF和AVIF的大小,支援轉換為WebP或AVIF。最多可以最佳化30張圖片,並選擇一個壓縮質量選項(推薦、中等或超級)。
ImagesTool.Com
ImagesTool.com 包括許多不同的影像處理工具。可以調整大小,轉換,壓縮影像,以及更多。支援JPEG、WebP、SVG、GIF和APNG。
AVPress
AVPress有點不同,因為它是專門用於最佳化影片檔案和GIF動畫的。一次只能處理一個影片或GIF,幷包括幾個自定義和輸出設定。
AVIF Converter
AVIF Converter 可以將任何影像格式轉換為 AVIF,這是一種下一代檔案格式,據稱比WebP、JPEG、PNG和GIF有更好的壓縮效果。這個應用程式似乎對檔案數量或檔案大小沒有任何限制,但請注意,AVIF格式尚未被所有現代瀏覽器支援。
TinyPNG
TinyPNG是一個較早的工具,可以最佳化WebP、PNG或JPEG檔案。你一次最多可以上傳20個,每個大小不超過5MB。
用於影像最佳化的構建工具和CLI工具
到目前為止,所列舉的工具是手動批次處理或一次最佳化幾張圖片的好選擇。但在一個大型專案的背景下,你會想考慮使用不同的工具,這些工具被設計成持續工作流程或構建過程的一部分。這裡有一些你可以考慮的選項:
- SVGO是流行的SVG最佳化工具,是前面提到的SVGOMG背後的核心。
- libSquoosh 是 Squoosh API,支援構建動態最佳化影像的JavaScript程式
- Squoosh CLI 是一個命令列工具,用於使用執行 Squoosh 的引擎。
- pngquant是一個專門用於最佳化PNG影像的命令列工具。
- esbuild-squoosh
根據所使用的構建工具或任務執行程式的不同,前面提到的imagemin可能是你的所選工具的外掛。下面是一些用於不同構建工具的imagemin外掛:
- rollup-plugin-imagemin是Rollup的一個外掛,它使用imagemin來自動最佳化Rollup構建中的圖片。
- parcel-plugin-imagemin是另一個使用imagemin的外掛,這次是為你的Parcel構建的。
[grot-contrib-imagemin](https://github.com/gruntjs/grunt-contrib-imagemin)
是另一個imagemin外掛,為那些仍然使用Grunt的人提供,Grunt是一個較老的任務執行器工具- ImageMinimizerWebpackPlugin是另一個imagemin外掛,這次是與流行的JavaScript捆綁包webpack一起使用
- snowpack-plugin-imagemin是一個imagemin外掛,可與現代前端構建工具Snowpack一起使用。
其它工具
QOI
Quite OK 影像格式是一種影像格式,它將影像無失真壓縮到與PNG相似的大小,同時提供20倍至50倍的編碼速度和3倍至4倍的解碼速度。
JXL
不是一個工具,而是一個以JPEG XL影像格式為中心的社群網站。
UPNG.js
地址:https://github.com/photopea/U...
這是流行的Photopea應用程式背後的PNG引擎,一個先進的PNG/APNG解碼器和編碼器,提供有損和無損最佳化。
Optimus
地址:https://github.com/Splode/opt...
一個本地的桌面應用程式,支援壓縮、最佳化和轉換影像,支援JPEG、PNG和WebP格式。
ImageOptim
一個Mac應用程式和Sketch外掛,用於減少影像檔案大小。
pngcrush
地址:https://pmt.sourceforge.io/pn...
一個傳統的影像壓縮工具,可以透過命令列使用。
Trimage
一個原生的跨平臺應用程式和命令列介面來最佳化JPEG和PNG影像。
PNGGauntlet
一個較早的可配置的本地應用程式,適用於Windows、Mac和Linux,可最佳化PNG並將各種格式轉換為PNG。
Pngyu
地址:https://nukesaq88.github.io/P...
另一個使用pngquant進行PNG最佳化的本地應用程式。
總結
希望這個工具清單足以提供你所需要的任何東西來滿足你的影像最佳化要求。
程式碼部署後可能存在的BUG沒法實時知道,事後為了解決這些BUG,花了大量的時間進行log 除錯,這邊順便給大家推薦一個好用的BUG監控工具 Fundebug。
來源:https://www.smashingmagazine....
交流
有夢想,有乾貨,微信搜尋 【大遷世界】 關注這個在凌晨還在刷碗的刷碗智。
本文 GitHub https://github.com/qq449245884/xiaozhi 已收錄,有一線大廠面試完整考點、資料以及我的系列文章。