跳到正文
馬克工具箱

SVG 壓縮最佳化

用 SVGO 在瀏覽器裡壓縮 SVG,去掉 Illustrator、Inkscape、Figma 等軟體匯出時附帶的後設資料、註釋和冗餘屬性,精簡路徑資料和小數位,圖形不變而檔案更小。可以一次處理多個檔案,也可以直接貼上 SVG 程式碼。

在瀏覽器本地執行,輸入的內容和檔案都不會上傳

3

座標保留的小數位。大多數圖示保留 2~3 位肉眼看不出差別,位數越少檔案越小,但細節可能變形。

或把檔案拖到這裡(可多選)

或者貼上 SVG 程式碼
最佳化後的 SVG

使用步驟

  1. 選擇或拖入 SVG 檔案(可多選),或者在下方貼上 SVG 程式碼;也可以點「載入示例」看效果。
  2. 按需要調整小數位數和其他選項,結果會即時更新並顯示壓縮比例。
  3. 逐個下載最佳化後的檔案,或點「全部下載(ZIP)」;貼上的程式碼可以直接複製。

引數說明

小數位數
座標和數值保留的小數位,預設 3。圖示一般 1~2 位也看不出差別;精細的插畫和地圖建議保留 3 位以上。
多輪最佳化
反覆執行最佳化直到檔案不再變小,通常能再省幾個百分點,處理時間稍長。
去掉 width/height
只保留 viewBox,SVG 會隨容器縮放,適合在網頁裡用 CSS 控制尺寸。
保留 ID
預設會刪除沒有被引用的 ID、縮短其餘 ID。如果外部 CSS、JavaScript 或其他檔案通過 ID 引用 SVG 中的元素,請勾選。

示例

最佳化前(Inkscape 匯出,789 位元組)中包含 XML 宣告、註釋、metadata、編輯器專用屬性和很長的小數;最佳化後(248 位元組):

<svg xmlns="http://www.w3.org/2000/svg" width="120" height="120" viewBox="0 0 120 120"><circle cx="60" cy="60" r="50" style="fill:#0f766e;fill-opacity:1;stroke:none"/><path d="m40 62 14 14 28-30-6-6-22 24-8-8Z" style="fill:#fff;stroke:none"/></svg>

常見問題

壓縮後畫質會下降嗎?

SVG 是向量圖,最佳化只刪除不影響顯示的內容,並把數值四捨五入到設定的小數位。預設設定下肉眼看不出差別;如果圖形出現變形,把小數位調大即可。

能減小多少?

取決於匯出軟體。設計軟體匯出的 SVG 通常能減小 30%~70%,示例檔案從 789 位元組減到 248 位元組;已經最佳化過的 SVG 變化不大。

為什麼動畫或指令碼失效了?

如果 SVG 的樣式或指令碼通過 ID 選擇元素,請勾選「保留 ID」。

檔案會上傳嗎?

不會。SVGO 在瀏覽器中執行,檔案只在本地讀取和處理。

隱私說明

本工具完全在瀏覽器中執行,檔案和文字都在你的裝置上處理,不會上傳到我們的伺服器。

相關工具