MEASURED CASE STUDY

已有 60,114 条 path,
曲线为什么仍很粗糙

SVG 扩展名和大量 path 并不能保证曲线干净。我们统计了一份真实自动描摹文件的结构,记录从像素开始的阶梯形状如何固化为矢量坐标,以及自动整理改善了什么、又牺牲了什么。

分析发布:2026-07-19实验文件生成:2026-06-28含前后渲染对比
本页范围

下方整理结果来自仓库中的单独分析与重构实验。这并不代表当前 DrowPack 网页工具会对所有上传文件自动执行相同的 60,114→28 path 整理,也不保证得到相同视觉效果。我们将它公开为展示自动描摹结构与限制的案例。

问题:明明是 SVG,放大后轮廓仍会抖动

分析对象 artwork_vector.svg 中没有用于嵌入 PNG、JPEG 或 WebP 的 <image> 元素,也没有滤镜、蒙版或裁剪 path。也就是说,它不是把栅格图塞进 SVG 的文件,而是完全由真实 path 坐标构成。可放大后,外圈、头发和小装饰周围仍能看到像沿着像素阶梯形成的凹凸和碎片。

原因不是“伪 SVG”,而是源自栅格图的几何结构。描摹器把抗锯齿边缘的多种中间色识别为不同区域,再将像素边界记录为密集的直线和曲线坐标。即使转换成矢量,只要坐标本身粗糙,放大后粗糙形状反而会更加清晰。

直接从原文件统计的数值

10.63MB原始 SVG 文件大小
60,114path 元素数量
53,039极小描摹 path 数量
523,692半像素坐标数量

60,114 条 path 中有 53,039 条是小型描摹碎片,其中 20,118 条是可视为深色轮廓或噪点碎片的小型 dark path。色带只有 28 个,但每个色带内都散布了大量小碎片。523,692 个半像素坐标也与密集沿着原始像素网格描摹的痕迹一致。

文件大小path 元素嵌入栅格图含义
artwork_vector.svg10.63MB60,1140自动描摹原版
clean_redraw.svg1.26MB280保留较多细节的自动整理版
clean_web.svg666.5KB280面向网页显示的强简化版
clean_flat.svg437.9KB140进一步减少颜色和小细节的版本

渲染前后对比

左侧是自动描摹原版的基准渲染,右侧是单独整理流程生成的 clean_redraw.svg 渲染。整理版合并了大色块和轮廓并减少小碎片,但它并不是试图无损保留所有细节的结果。

自动描摹原始 SVG 渲染的蓝色角色插画
自动描摹原版渲染
视觉信息丰富,但大量细小边缘碎片和阶梯状坐标仍保留在 SVG 结构中。
简化色块和轮廓后的自动整理 SVG 渲染
自动整理版渲染
大色块更简单,但头发、服装和边框中的部分小纹理与曲线发生了变化。
如何查看对比图

只看整体缩略图时,两张图可能很相似。请放大圆形边框、头发的蓝色高光、裙装褶皱和书本细线,同时确认“噪点减少”和“有意细节损失”。

自动整理实验做了什么

  1. 以两倍分辨率渲染原始 SVG。没有直接简化现有 path,而是重新建立视觉基准。
  2. 应用下采样和轻微模糊。为减少像素级阶梯和极小色彩碎片做准备。
  3. 量化到有限的原图色系调色板。抑制近似中间色被无限切分。
  4. 应用多数滤波并移除小连通区域。合并或移除孤立点、光晕和小轮廓碎片。
  5. 将与边框相连的白色背景替换为干净矩形。尝试区分内部白色高光和外部背景。
  6. 重新查找色彩区域的 contour。简化坐标,并转换为平滑的 cubic Bézier path。

整理版同样是不包含 PNG 的 path 型 SVG。但它并非“保留原始 path 的每个点”,而是根据渲染后的视觉信息重构色彩区域,因此小细节可能被合并或改变。

改善了什么,又失去了什么

观察项目改善空间伴随风险
DOM/path 复杂度从 60,114 个元素缩减为 28 条复合 path一条 path 中的多个 loop 仍可能很难编辑
文件大小从 10.63MB 降至 1.26MB 或 666.5KB细节和调色板减少越多,与原图差异越大
轮廓噪点减少小点和阶梯状碎片细睫毛和高光也可能一起减弱
背景整理与边框相连的白色区域如果内部白色被误判为背景,可能形成孔洞
曲线简化 contour 并进行 Bézier fitting无法推断作者意图中的精确曲线

从本案例得到的实用结论

  • SVG 内没有栅格图,并不代表它自动成为干净的矢量
  • path 很多可能表示信息或噪点很多,而不是质量分数高
  • 只合并结构的无损优化能缩小文件,却不能修复粗糙坐标本身
  • 自动平滑可以缓和轮廓,也可能改变小形状和作者意图
  • 网页显示、后续编辑和专业交付应使用不同的验收标准
  • 需要精确专业矢量时,高分辨率分层原稿或手工重绘 Bézier 曲线最可靠

如果目的只是网页显示,像 clean_web.svg 这样强力整理的结果可能很实用。若要重新编辑色块,保留较多细节的整理版更合适,但自动重构图形的限制依然存在。商标、大幅印刷和精密切割仍需要手工检查。

我的图片应该如何选择

在把复杂插画转换为 path 前,先了解 SVG 容器与纯矢量的区别。