视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
SVG基础|绘制SVG直线、折线和多边形
2020-11-27 15:16:51 责编:小采
文档
SVG基础|绘制SVG直线、折线和多边形

SVG直线

SVG <line>元素用于绘制一条。下面是一个绘制直线的例子。

<svg xmlns="http://www.w3.org/2000/svg">
 <line x1="0" y1="10" x2="0" y2="100" style="stroke:#006600;"/>
 <line x1="10" y1="10" x2="100" y2="100" style="stroke:#006600;"/>
 <line x1="20" y1="10" x2="100" y2="50" style="stroke:#006600;"/>
 <line x1="30" y1="10" x2="110" y2="10" style="stroke:#006600;"/>
</svg>

上面代码的返回结果如下:

x1和y1属性用于指定直线的起点,x2和y2属性用于指定直线的终点。可以使用style属性来为直线设置颜色和描边宽度。

SVG折线

<polyline>元素用于绘制SVG折线。所谓折线就是多条衔接的直线。看下面的例子:

<svg xmlns="http://www.w3.org/2000/svg">
 <polyline points="0,0 30,0 15,30"
 style="stroke:#006600;"/>
</svg>

上面代码的返回结果如下:

折线由多个点来定义。每一个点都有x和y属性。上面的例子中有三个点,它们组成了一个三角形。这3个点被直线连接,并被填充。默认的填充颜色是黑色。下面的例子中使用其它颜色来进行填充。

<svg xmlns="http://www.w3.org/2000/svg"> 
 <polyline points="10,2 60,2 35,52"
 style="stroke:#006600; stroke-width: 2;
 fill: #33cc33;"/>
</svg>

你会发现上面的三角形只有两条边被填充了描边色,原因是只有两点之间的线会被使用描边色绘制出来。上面的代码中没有一个点指向起点。如果需要三条边都被绘制出来,还需要一个点来指向起点位置。

<svg xmlns="http://www.w3.org/2000/svg">
 <polyline points="10,2 60,2 35,52 10,2"
 style="stroke:#006600; fill: #33cc33;"/>
</svg>

和SVG直线一样,可以使用style属性来为折线设置颜色和描边宽度。

SVG多边形

<polygon>元素用于绘制SVG多边形。多边形是指三条或三条边以上的几何图形。看下面的SVG三角形的例子:

<svg xmlns="http://www.w3.org/2000/svg">
 <polygon points="10,0 60,0 35,50"
 style="stroke:#660000; fill:#cc3333;"/> 
</svg>

使用<polygon>元素,虽然只有三个点,但是你会发现三条边都会被绘制出来。这是因为<polygon>元素会绘制各个点之间的所有直线,包括最后一个点指向第一个点的直线。这是<polygon>元素和code><polyline>元素的唯一不同之处。

我们可以绘制更多条边的几何图形,下面是一个八边形的例子:

<svg xmlns="http://www.w3.org/2000/svg">
 <polygon points="50,5 100,5 125,30 125,80 100,105
 50,105 25,80 25, 30"
 style="stroke:#660000; fill:#cc3333; stroke-width: 3;"/>
</svg>

下载本文
显示全文
专题