§

拖曳圖片或點擊選擇

JPEG、PNG、WebP、AVIF、GIF、BMP — 每個檔案最大 30 MB,支援批次處理。

拖曳多張圖片進行批次壓縮 — 所有處理都在您的裝置上完成。

輸出格式
壓縮模式
JPEG、WebP 和 AVIF — PNG 為無損格式

台灣的 Web 團隊每個衝刺週期都會遇到同樣的問題。一張產品照片從單眼相機匯出後達 4 MB,Lighthouse 稽核將其標記,而 CMS 上傳限制是 1 MB。把檔案拖到這裡,選擇品質 0.7 的 JPEG 或設定 400 KB 目標,點擊壓縮,一秒內就能拿到結果。原始檔案留在您的筆電上。同樣的方法可以將 Jira 工單的一批 PNG 截圖縮小,或修剪主視覺讓 Shopify 商店通過 Core Web Vitals 檢測。在個資法或金管會規範下運作的金融機構,傾向使用瀏覽器端工具,因為原始圖片在法律上不得接觸 TinyPNG 這類外部服務,而本頁面完全在 JavaScript 中執行。

瀏覽器端圖片壓縮的運作方式

每次壓縮都在您的瀏覽器中執行。對於 JPEG 和 PNG,瀏覽器自身的 Canvas API 直接處理編碼。對於 Safari 上的 WebP 以及所有瀏覽器上的 AVIF,頁面會根據需要載入輕量級的 WebAssembly 編解碼器 — 仍然完全在本地處理,您的圖片永遠不會離開裝置。

  1. 將每個上傳的檔案讀取為 Blob,並建立物件 URL,讓瀏覽器可以在本機解碼,無需將位元組複製到伺服器或寫入磁碟。
  2. 以原始像素尺寸將解碼後的圖片繪製到螢幕外的 Canvas 元素上,準備重新編碼。
  3. 呼叫 canvas.toBlob(callback, mimeType, quality) 來重新編碼 JPEG、PNG 和 Chrome/Firefox WebP 的像素。對於 Safari WebP 和 AVIF 編碼,WebAssembly 編解碼器工作程序會在第一時間使用時載入,並在背景執行緒中處理編碼。在畫質模式下,滑桿值直接對應到編碼器的量化設定;在目標大小模式下,頁面會對畫質值進行二分搜尋,直到輸出 Blob 符合您的位元組預算。
  4. 顯示包含原始大小、壓縮後大小和節省百分比的前後對比,然後提供每張圖片的單獨下載或整批次的單一 ZIP 下載。ZIP 使用 fflate(一個首次使用時載入的 8 KB 函式庫)在記憶體中建構。

為什麼要壓縮圖片?

  • 較小的圖片載入更快。將 4 MB 的主視覺圖壓縮到 600 KB 可直接改善最大內容繪製(LCP),這是 Google 用於排名的 Core Web Vitals 指標之一。頁面上有多張照片時,節省效果累加,帶來更快的首屏渲染。
  • 上傳和附件大小限制無所不在。許多 CMS 平台、工單工具和電子郵件系統會拒絕超過 1 或 2 MB 的檔案。快速壓縮一次就能將照片控制在限制以內,無需開啟完整的圖片編輯器。
  • 頻寬和儲存空間在規模化時需要花錢。以品質 0.8 的 WebP 取代全尺寸 PNG,可將圖片體積減少三分之一甚至更多,從而降低 CDN 流出費用並減少訪客的行動數據消耗。
  • 敏感圖片的隱私不容忽視。因為一切都在您的瀏覽器中執行,身分證掃描件、醫療影像和內部截圖都留在您的裝置上——無需擔心上傳到 TinyPNG 這樣的第三方伺服器。

常見應用場景

當圖片比目標位置所能容納的更大時,就需要壓縮。以下是我們反覆見到的三種模式。

  • 為網路商店準備產品照片。JPEG 原圖被壓縮至品質 0.8(或 200 KB 目標),使商店保持快速並在行動裝置上通過 Core Web Vitals 檢測。
  • 將截圖附加到 Bug 追蹤器或 Wiki 之前先縮小。一批 PNG 截圖轉換為品質 0.85 的 JPEG,體積往往從數十 MB 降到幾 MB。
  • 讓照片低於上傳限制——拒絕 1 MB 以上檔案的求職申請入口、附件限制嚴格的電子郵件系統,或必須符合位元組預算的論壇頭像。

實戰示範:4 MB JPEG 壓縮到 400 KB

手機相機直出的 4 MB JPEG 是常見的大檔案,會觸發上傳限制並拖慢頁面速度。這是衡量壓縮效果的合理基準。

將 JPEG 拖入上傳區,格式保持 JPEG,然後將品質滑桿拖低到 0.7,或切換到目標大小模式並輸入 400 KB。在品質模式下,Canvas 流水線重新編碼一次並顯示結果,通常在 500 到 700 KB 之間,具體取決於照片內容。在目標大小模式下,頁面嘗試幾個品質值,選定仍能低於 400 KB 的最高值,並回報節省百分比。點擊卡片上的下載可取得單一檔案,或點擊下載 .zip一次下載所有壓縮圖片。整個過程對於這個大小的圖片來說不到一秒,且在頁面本身載入完成後不消耗任何頻寬。

品質模式和目標大小模式有什麼差別?

品質模式提供一個從 0.1 到 1.0 的滑桿,對應 JPEG 或 WebP 編碼器的量化設定——數值越低,檔案越小,但瑕疵越明顯。目標大小模式則反過來:您指定一個以千位元組為單位的大小,頁面對品質值進行二分搜尋,編碼幾次直到找到仍能符合預算的最高品質。當硬性限制很重要時(例如 1 MB 的上傳限制),目標大小模式很方便;當您只想要可預期的視覺效果時,品質模式更快、更合適。PNG 是無損格式,因此兩種模式均不適用。

處理是在我的裝置上進行的嗎?

是的,完全是。頁面使用瀏覽器的原生 Canvas API 和 Web File API 在記憶體中對每張圖片進行解碼和重新編碼。沒有圖片資料傳送到伺服器,沒有暫存上傳,也沒有雲端往返。您可以自行驗證:開啟開發者工具,切換到網路面板,然後執行一次壓縮。您看到的唯一對外請求是初始頁面載入和廣告呼叫。沒有任何圖片相關的資料離開分頁。

為什麼壓縮 PNG 有時幾乎縮不了多少?

PNG 是無損格式,因此 Canvas API 無法透過捨棄細節來縮小檔案——它只能重新封裝相同的像素。對於照片而言,PNG 本身就很大,無損重新編碼節省甚微。真正的收益來自將輸出格式切換為 JPEG 或 WebP,這兩種格式使用適合照片的有損壓縮,通常能縮小 4 到 10 倍。只有在需要無損品質或透明度時才保留 PNG;否則請選擇 JPEG(照片)或 WebP(最佳大小與品質平衡)。

我應該選擇哪種格式?

對於照片,品質 0.8 的 WebP 提供最佳的大小與品質平衡,且自 2021 年以來發布的每款瀏覽器都支援;當目標環境較舊或限制較嚴時,JPEG 是安全的通用備選。只有在需要無損品質或 Alpha 通道時才選擇 PNG——線條藝術、UI 截圖、帶透明度的標誌。如果您在為頁面速度最佳化且受眾使用現代瀏覽器,WebP 幾乎總是正確選擇;如果您的 CMS 較舊或列印流水線拒絕 WebP,則使用 JPEG。

拖入圖片,選擇品質等級或目標大小,壓縮。一切都在您的分頁中執行。無需上傳,無需帳號,無需等待伺服器佇列。