codecamp

SVG 多边形

SVG <polygon>

<polygon> 元素由连接一组点集的直线构成。

SVG 多边形 - <polygon>

实例 1

<polygon> 标签用来创建含有不少于三个边的图形。

多边形是由直线组成,其形状是"封闭"的(所有的线条 连接起来)。

Remarkpolygon来自希腊。 "Poly" 意味 "many" , "gon" 意味 "angle".


下面是SVG代码:

实例

<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
  <polygon points="200,10 250,190 160,210"
  style="fill:lime;stroke:purple;stroke-width:1"/>
</svg>

尝试一下 »

对于Opera用户: 查看SVG文件(右键单击SVG图形预览源)。

代码解析:

  • points 属性定义多边形每个角的 x 和 y 坐标

实例 2

下面的示例创建一个四边的多边形:

下面是SVG代码:

实例

<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
  <polygon points="220,10 300,210 170,250 123,234"
  style="fill:lime;stroke:purple;stroke-width:1"/>
</svg>

尝试一下 »

对于Opera用户: 查看SVG文件(右键单击SVG图形预览源)。


实例 3

使用 <polygon> 元素创建一个星型:

下面是SVG代码:

实例

<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
  <polygon points="100,10 40,180 190,60 10,60 160,180"
  style="fill:lime;stroke:purple;stroke-width:5;fill-rule:nonzero;" />
</svg>

尝试一下 »

对于Opera用户: 查看SVG文件(右键单击SVG图形预览源)。


实例 4

改变 fill-rule 属性为 "evenodd":

下面是SVG代码:

实例

<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
  <polygon points="100,10 40,180 190,60 10,60 160,180"
  style="fill:lime;stroke:purple;stroke-width:5;fill-rule:evenodd;" />
</svg>

尝试一下 »

对于Opera用户: 查看SVG文件(右键单击SVG图形预览源)。

注意:因为矩形也是一种多边形,如果需要更多灵活性的话,你也可以用多边形在 SVG 中创建一个矩形。

SVG 直线
SVG 曲线
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }