跳到主要内容
Vecaria

SVG 优化压缩

本地处理

在线优化压缩 SVG:深度档 SVGO 全插件面或快速安全子集,附字符与 gzip 前后对比,直接复制或下载;浏览器本地处理,不上传,免费免登录。

也可把 .svg 文件拖到下方输入框

385 原始字符 · 175 优化后 · 55% 节省

使用方法

  1. 打开本地 SVG 文件、拖拽 .svg 到输入框,或直接粘贴源码
  2. 选择优化档位:默认「快速档」实时出结果;切到「深度档」由 SVGO 做全插件面优化(可选开关「安全净化」移除 <script>,默认开启)
  3. 查看字符与 gzip 前后对比与渲染对比,复制或下载优化后的 SVG

功能说明

  • 深度档(SVGO v4,MIT):preset-default 安全插件面——路径数据重写(convertPathData)、形状转路径、ID 清理、变换折叠、空容器清理等;「安全净化」默认开启,移除 <script> 脚本元素(依赖脚本交互的 SVG 将失效,可关闭保留)
  • 快速档(正则安全子集):去注释、去 XML 声明/DOCTYPE/<metadata>/编辑器命名空间、删空 <g>/<defs>/<symbol>、压缩空白、精简 hex 颜色与数字尾零(数值等值);<title> 无障碍标题保留
  • 输入方式:打开本地文件 / 拖拽 .svg 到输入框 / 粘贴源码(非 SVG 文件明确报错,不静默灌入)
  • 输入守卫:无效/非 SVG 输入明确报错(不静默直通);空 <svg> 根元素保留(不会被整删);0% 节省时明确提示「已充分精简」
  • 显示字符与 gzip 前后体积对比 + 渲染前后对比
  • 全部在你的浏览器本地完成:SVGO 引擎按需懒加载,不上传任何内容

常见问题

收费吗? 优化走每日免费额度、免登录;SVG 在浏览器内处理,不上传。

快速档和深度档怎么选? 快速档是正则外观级子集:即时出结果、从不改动路径几何与 viewBox,任何文件都能放心跑。深度档跑 SVGO v4 全插件面(路径重写、ID 清理、变换折叠、形状转路径),压得更狠但会重写源码——发布前对照渲染前后看一眼。

会减少路径的节点数吗? 不会。优化剥掉的是冗余 markup——注释、编辑器元数据、空容器、空白、过长的小数——路径里的节点数一个不少。要真正精简几何(减少节点)请用 Inkscape「简化路径」或 Illustrator 的简化命令,处理完再来这里压缩。

能压多少?gzip 列是什么意思? 取决于文件里有多少编辑器残留:刚从 Illustrator/Inkscape/Figma 导出的 SVG 通常压缩空间最大;已充分优化的文件会显示 0% 节省提示。gzip 列反映网页实际传输体积——记得看它,gzip 会吃掉大部分空白压缩的收益。

一次能优化多个 SVG 吗? 不能——一次处理一个文件(打开、拖入或粘贴),没有批量功能也不需要上传;要批量处理位图请用「图片批量压缩与格式转换」。

<script> 会被移除吗? 深度档的「安全净化」默认开启,移除 <script> 元素(依赖脚本交互的 SVG 会失效,可手动关闭);快速档不动脚本。foreignObject、内联事件属性与 javascript: URI 不在净化范围内,不信任的 SVG 请另行审查。

隐私

源码在你的浏览器内实时处理,不上传服务器,无任何存储。

TL;DR: SVGO 深度档 + 正则快速档精简 SVG,附字符与 gzip 前后对比,复制或下载优化结果;本地处理,不上传,免费免登录。

示例

  • 打开/拖入或粘贴 SVG → 选优化档位 → 复制/下载

支持的格式

SVG

限制说明

  • 深度档由 SVGO v4 驱动(preset-default 安全插件面 + 可选脚本移除),路径数据会被重写、形状会转为路径:数值等值但源码形态变化,发布前请目检
  • 安全净化默认开启:<script> 会被移除,依赖脚本交互的 SVG 将失效;不净化 foreignObject/内联事件属性/javascript: URI,也没有字体嵌入
  • 快速档为外观级正则安全子集:不重写路径几何、不移除 viewBox、保留 <title>(无障碍标题);标签间空白折叠、数字与颜色值缩短(数值等值),含有效空格的文本可能变化
  • 无效/非 SVG 输入会被明确拒绝(提示未找到 <svg> 标签);已充分优化的文件会显示 0% 节省提示
  • 超大 SVG 深度档可能略慢(首次需加载 SVGO 引擎)
  • 浏览器本地处理,不上传