SVG 路径编辑器
SVG Path Editor
在绝对和相对命令之间转换路径数据,做平移、缩放、旋转和方向反转,并显示包围盒和实时预览。
读取一个 `d` 属性,给回一个变换过的:绝对或相对、移动、缩放、绕包围盒中心旋转、反向,以及取整到你选择的小数位数。它通过 Path2D 绘制结果,所以浏览器按 SVG 渲染器同样的方式做圆弧数学,并报告包围盒和一个可以粘贴的 viewBox。
path 的 d 属性
预览
虚线矩形是包围盒,红点是起点。填充用的是 nonzero 规则。
结果
命令
18
子路径
3
数字
32
字节
113 → 97
包围盒
x 2.00 y 2.00 w 20.00 h 20.00
viewBox
2.00 2.00 20.00 20.00
它做什么
- · 用的是和 SVG 优化压缩一样的解析器,所以像
1.5.5这种压掉分隔符的写法、还有弧线的标志位,都能读对。它能在绝对和相对之间互转、按位数取整、平移、缩放、绕包围盒中心旋转、反转方向,并算出包围盒。 - · 一旦旋转,
H和V就变成L,弧线的半径、x 轴旋转角和 sweep 标志位会按 SVG 1.1 附录 F.6 的公式重算。包围盒取的是每段曲线真正的极值,不是它的控制点。 - · 它不会简化曲线。那会改变形状,容差该定在哪里是人的判断。
怎么用
粘贴 d 属性
只要值,不带外面的 `<path>`。压缩记法可以——`1.5.5` 作为两个数、没有分隔符的圆弧标志——因为解析器是 SVG 优化器的那一个,处理得了这些情况。
应用你需要的变换
移动、缩放和旋转应用在几何本身上,所以出来的东西不需要 `transform` 属性。旋转绕包围盒中心,这是对图标来说你要的,而不是原始 `rotate()` 做的。
选绝对或相对,以及精度
相对命令通常更短,对内联图标要紧。精度是真正的大小杠杆:三位小数对 24 单位的图标网格绰绰有余,从六位降到两位常常把字符串减半。移动它时看着字节计数器。
填色看着不对就反转方向
红点标记起点,所以反转的效果看得见。方向决定内部子路径在 nonzero 规则下是不是洞,也是描边虚线动画跟随的东西。
取路径,或者 viewBox
输出框有 `d` 值和一个现成的 `<path>` 元素。统计面板有作为 viewBox 字符串的包围盒,这是让图标精确填满画框最快的办法。
常见问题
为什么它不简化曲线?
因为简化会改变形状,而多大的改变可以接受,是关于这一幅特定图形的判断,工具做不了。每种点数缩减算法都要一个容差,做这个决定的诚实位置是在一个你能看到代价的矢量编辑器里。取整小数是安全的大小杠杆,它在这里。
旋转或缩放时圆弧会怎样?
它们仍然是圆弧。半径、x 轴旋转和扫过标志按 SVG 1.1 附录 F.6 的公式重新计算,这是在非均匀缩放下保持椭圆各轴正确的东西。旋转时 `H` 和 `V` 变成 `L`,因为水平线不再保持水平。
包围盒是从控制点算的吗?
不是,是从每条曲线的实际极值算的。三次曲线的控制点通常在曲线之外,所以控制点盒太大——常常明显太大,而那正是要紧的时候,因为这个盒子是你要粘贴为 viewBox 的东西。
它只处理一条路径。整个文件呢?
这个工具按设计只作用于单个 `d` 值——变换和反向在这个层面上才有意义。对整个文档,SVG 优化器改写其中每一条路径,SVG 编辑器读取它们周围的结构。
可以从这些接进来
SVG 优化压缩
SVG Optimiser
清掉编辑器留下的冗余、合并变换、缩减路径精度,并把渲染结果并排对比。
图片转 SVG 矢量
Image to SVG
把位图描摹成 SVG 路径,适合 logo 和线稿,不适合照片。
缓动曲线编辑器
Easing Curve Editor
对着动画预览调 cubic-bezier 或弹簧曲线,并导出 CSS 的时间函数。
SVG 编辑器与解读
SVG Editor and Explainer
一边在实时渲染旁边改 SVG,一边解释这个文件:viewBox 与缩放、变换、每一条路径命令、继承来的填色、白白占地方的字节,以及它在 <img>、data URI 和内联三种用法下各会坏在哪里。
接下来
这些工具吃得下当前工具的产出,结果可以直接送过去。
缓动曲线编辑器
Easing Curve Editor
对着动画预览调 cubic-bezier 或弹簧曲线,并导出 CSS 的时间函数。
图片转 SVG 矢量
Image to SVG
把位图描摹成 SVG 路径,适合 logo 和线稿,不适合照片。
SVG 优化压缩
SVG Optimiser
清掉编辑器留下的冗余、合并变换、缩减路径精度,并把渲染结果并排对比。
SVG 转 PNG
SVG to PNG
按任意倍率把 SVG 渲染成 PNG、JPEG 或 WebP,背景可透明也可填色。
颜色格式转换
Colour Format Converter
在 HEX、RGB、HSL、HWB、LAB、LCH 和 OKLCH 之间换算同一个颜色,并给出最接近的已知色名。
颜色拾取器
Colour Picker
在 OKLCH 色板上选色,也可以用屏幕吸管或从上传的图片里取色,并按任意表示法复制出来。