SVG 路径 - <path> 参数d

181 阅读2分钟

<path>元素是 SVG 基本形状中最强大的一个。你可以用它创建线条,曲线,弧形等等

<g>
    <path d=" m 0,0  m 0,4 a 4 4 0 0,1 4,-4  h 8  c 2,0  3,1  4,2  l 4,4  c 1,1  2,2  4,2  h 12  c 2,0  3,-1  4,-2  l 4,-4  c 1,-1  2,-2  4,-2  h 88.447998046875 a 4 4 0 0,1 4,4  v 8  V 40  V 44  V 44 a 4 4 0 0,1 -4,4  h -88.447998046875  c -2,0  -3,1  -4,2  l -4,4  c -1,1  -2,2  -4,2  h -12  c -2,0  -3,-1  -4,-2  l -4,-4  c -1,-1  -2,-2  -4,-2  h -8 a 4 4 0 0,1 -4,-4 z"></path>
</g>

SVG 路径 - path

<path> 元素用于定义一个路径。

下面的命令可用于路径数据:

  • M = moveto 需要两个参数,分别是需要移动到的点的 x 轴和 y 轴的坐标,M 命令仅仅是移动画笔,但不画线。所以 M 命令经常出现在路径的开始处,用来指明从何处开始画
  • L = lineto L需要两个参数,分别是一个点的 x 轴和 y 轴坐标,L 命令将会在当前位置和新位置(L 前面画笔所在的点)之间画一条线段
  • H = horizontal lineto 绘制水平线
  • V = vertical lineto 绘制垂直线
  • C = curveto 弯曲 三次贝塞尔曲线 需要定义一个点和两个控制点,所以用 C 命令创建三次贝塞尔曲线,需要设置三组坐标参数 C x1 y1, x2 y2, x y
  • S = smooth curveto 简写的贝塞尔曲线命令 S S x2 y2, x y
  • Q = quadratic Bézier curve 二次贝塞尔曲线 Q,它比三次贝塞尔曲线简单,只需要一个控制点,用来确定起点和终点的曲线斜率, 需要两组参数,控制点和终点坐标 Q x1 y1, x y
  • T = smooth quadratic Bézier curveto 就像三次贝塞尔曲线有一个 S 命令,二次贝塞尔曲线有一个差不多的 T 命令,可以通过更简短的参数,延长二次贝塞尔曲线。 T x y
  • A = elliptical Arc 椭圆弧 弧形可以视为圆形或椭圆形的一部分 A rx ry x-axis-rotation large-arc-flag sweep-flag x y 弧形命令 A 的前两个参数分别是 x 轴半径和 y 轴半径
  • Z = closepath 闭合路径命令

注意: 以上所有命令均允许小写字母。大写表示绝对定位,小写表示相对定位路径。