SVG 研究之路 (4) - Path 基礎篇

接下來要談談 SVG 裡頭最為重要的元素:Path,因為SVG 是向量圖,所有的物件和元素都是由 Path ( 路徑 ) 所組成,所以 Path 就具有相當多的指令讓使用者設定, 換句話說,搞懂了 Path 就等於搞定了SVG ( 或是搞定 80% 的 SVG,不管啦 )。

本篇文章先將 Path 的指令表列出來,方便之後查找有個列表整裡,其中一個非常需要注意的地方,參數大寫代表絕對座標,小寫代表與前一個座標的相對座標,要特別注意!然後介紹裏頭基本的指令,後續會用其他篇介紹進階的指令。

SVG Path 指令列表

指令 參數 指令說明
M x y 起始點的 x , y 座標 ( move to )
L x y 從目前點的座標畫直線到指定點的 x , y 座標 ( line to )
H x 從目前點的座標畫水平直線到指定的 x 軸座標 ( horizontal line to )
V y 從目前點的座標畫垂直線到指定的 y 軸座標 ( vertical line to )
C x1 y1 x2 y2 x y 從目前點的座標畫條貝茲曲線到指定點的 x, y 座標:其中 x1, y1 及 x2, y2 為控制點 ( curve )
S x2 y2 x y 從目前點的座標畫條反射的貝茲曲線到指定點的 x, y 座標:其中 x2, y2 為反射的控制點 ( smooth curve )
Q x1 y1 x y 從目前點的座標畫條二次貝茲曲線到指定點的 x, y 座標:其中 x1, y1 為控制點 ( quadratic Bézier curve )
T x y 從目前點的座標畫條反射二次貝茲曲線到指定點的 x, y 座標:以前一個座標為反射控制點( smooth quadratic Bézier curve )
A rx ry x-axis-rotation large-arc-flag sweep-flag x y 從目前點的座標畫個橢圓形到指定點的 x, y 座標:其中 rx, ry 為橢圓形的 x 軸及 y 軸的半徑,x-axis-rotation 是弧線與 x 軸的旋轉角度,large-arc-flag 則設定 1 最大角度的弧線或是 0 最小角度的弧線,sweep-flag 設定方向為 1 順時針方向或 0 逆時針方向 ( Arc )
Z 關閉路徑,將目前點的座標與第一個點的座標連接起來 ( closepath )

SVG Path 基本指令

小結

以上就是基本的命令控制,之後將會介紹 A 這個命令,因為 A 這個命令較為複雜,也是 Path 裏頭滿精華的部分,所以就用一篇文章專門介紹吧!

有興趣瞧瞧其他新文章嗎?