天天看點

如何在HTML5中使用SVG

 SVG 即 Scalable Vector Graphics,是一種用來繪制矢量圖的 HTML5 标簽。你隻需定義好XML屬性,就能獲得一緻的圖像元素。  使用SVG之前先将标簽加入到HTML body中。就像其他的HTML标簽一樣,你可以...    

  SVG 即 Scalable Vector Graphics,是一種用來繪制矢量圖的 HTML5 标簽。你隻需定義好XML屬性,就能獲得一緻的圖像元素。

  使用SVG之前先将标簽加入到HTML body中。就像其他的HTML标簽一樣,你可以為SVG标簽為之添加ID屬性。也可以為之添加css樣式,例如“border-style:solid;border-width:2px;”。SVG标簽跟其它的HTML标簽有通用的屬性。你可以用height="100px" width="200px" 為其添加高度和寬度。

  現在就将SVG元素加入到我們HTML代碼中,SVG提供很多繪圖形狀,例如線條、圓、多邊形等。

  SVG線條:

  SVG線條用标簽定義,在此标簽内你還可以定義其他的屬性。

  該标簽包括像起點坐标(x1,y1)和終點坐标(x2,y2)這樣的屬性。指定x1,y1,x2,y2值來設定起點終點坐标。在指定好坐标後,可以為之添加一些樣式,在style屬性中使用“stroke:Green;”為線條指定顔色。同樣你也可以用stroke-width:2為線條設定寬度。

  代碼1:使用SVG畫線

<!DOCTYPE html>

<head>

<title>Mrbool.com - HTML5 Tutorials</title>

</head>

<body>

<h2>HTML5 SVG Line Example</h2>

<svg id="svgLineTutorial" style="border-style:solid;border-width:2px;" height="200px" width="200px" xmlns="http://www.w3.org/2000/svg">

  <!--<line x1="0" y1="0" x2="50" y2="200" style="stroke:rgb(100,100,0);stroke-width:5"/>-->

   <line x1="10" y1="20" x2="100" y2="200" style="stroke:Green;stroke-width:2"/>

</svg>

</body>

</html>

如何在HTML5中使用SVG

  SVG畫圓:

  SVG提供了一種不同的标簽來畫圓。正如你看到的下面代碼,circle有個id為myCircle。為了定義圓的中心以及半徑,使用cx="55" cy="55"以及r="50"屬性分别定義。使用fill="#219E3E"為圓填充顔色。同樣你可以用stroke="#17301D" stroke-width="2"定義圓周線條顔色和寬度。

  代碼2:使用SVG畫圓

<!DOCTYPE html>

<head>

<title>Mrbool.com - HTML5 Tutorials</title>

</head>

<body>

<h2>HTML5 SVG Circle Example</h2>

<svg id="svgCircleTutorial" height="250" xmlns="http://www.w3.org/2000/svg">

    <circle id="myCircle" cx="55" cy="55" r="50" fill="#219E3E" stroke="#17301D" stroke-width="2" />

</svg>

</body>

</html>

如何在HTML5中使用SVG

  SVG矩形:

  同樣的使用标簽來畫矩形,我們同樣設定了 id 屬性 “myRectangle” ,用 width="300" height="100" 定義高寬,使用 fills 屬性定義填充顔色。用 strock 定義邊框。還有一點需要注意,我用 fill-opacity="0.5" stroke-opacity="0.5" 為 stroke 和 filling 都添加了透明度。

  代碼3:SVG畫矩形

<!DOCTYPE html>

<head>

<title>Mrbool.com - HTML5 Tutorials</title>

<meta charset="utf-8" />

</head>

<body>

<h2>HTML5 SVG Rectangle Example</h2>

<svg id="svgRectangleTutorial" height="200" xmlns="http://www.w3.org/2000/svg">

    <rect id="myRectangle" width="300" height="100" stroke="#17301D" stroke-width="2"  fill="#0E4E75" fill-opacity="0.5" stroke-opacity="0.5"/>         

</svg>

</body>

</html>

如何在HTML5中使用SVG

  SVG橢圓:

  我們同樣是用标簽來繪制橢圓。設定其 id="myEllipse" ,給定起中心坐标 cx="120"cy="60",長軸短軸半徑 rx="100" ry="50",并用設定填充顔色、邊框寬度以及邊框顔色style="fill:#3F5208;stroke:black;stroke-width:3"。

  代碼4:SVG畫橢圓

<!DOCTYPE html>

<head>

<title>Mrbool.com - HTML5 Tutorials</title>

<meta charset="utf-8" />

</head>

<body>

<h2>HTML5 SVG Ellipse Example</h2>

<svg id="svgEllipseTutorial" height="150" xmlns="http://www.w3.org/2000/svg">

    <ellipse id="myEllipse" cx="120" cy="60" rx="100" ry="50" style="fill:#3F5208;stroke:black;stroke-width:3"/>   

</svg>

</body>

</html>

如何在HTML5中使用SVG

  SVG多邊形:

  我們使用特定标簽繪制多邊形,points屬性用來定義多邊形的幾個頂點,用左邊對來定義,形如 points="10,10 75,150 150,60" ,這裡定義了三個頂點(10,10),(75,150),(150,60)。同上面一樣,用 style="fill:#63BCF7;stroke:black;stroke-width:3" 定義多邊形填充顔色、邊框以及邊框寬度。

  代碼5:SVG畫多邊形

<!DOCTYPE html>

<head>

<title>Mrbool.com - HTML5 Tutorials</title>

<meta charset="utf-8" />

</head>

<body>

<h2>HTML5 SVG Polygon Example</h2>

<svg id="svgPolygonTutorial" height="200" xmlns="http://www.w3.org/2000/svg">

    <polygon id="myPolygon" points="10,10 75,150 150,60" style="fill:#63BCF7;stroke:black;stroke-width:3"/>

</svg>

</body>

</html>