原文出处:https://www6.software.ibm.com/developerworks/cn/education/xml/x-svg/tutorial/index.html
基本 SVG 形状 |
<nobr>第 3 页(共5 页)</nobr> |
SVG 定义了六种基本形状,这些基本形状和路径(在路径是什么?中讨论)一道,可以组合起来形成任何可能的图像。每个基本形状都带有指定其位置和大小的属性。它们的颜色和轮廓分别由 fill
和 stroke
属性确定。这些形状是:
圆(circle)
:显示一个圆心在指定点、半径为指定长度的标准的圆。
椭圆(ellipse)
:显示中心在指定点、长轴和短轴半径为指定长度的椭圆。
矩形(rect)
:显示左上角在指定点并且高度和宽度为指定值的矩形(包括正方形)。也可以通过指定边角圆的 x 和 y 半径画成圆角矩形。
线(line)
:显示两个坐标之间的连线。
折线(polyline)
:显示顶点在指定点的一组线。
多边形(polygon)
:类似于 polyline
,但增加了从最末点到第一点的连线,从而创建了一个闭合形状。
下面的示例演示了这些形状:
xml 代码
- <!---->xml version="1.0"?>
- <!---->
- "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
- <svg width="400" height="200" xmlns="http://www.w3.org/2000/svg">
-
- <desc>Basic shapesdesc>
-
- <g>
- <circle cx="50" cy="50" r="25" />
- <ellipse cx="75" cy="125" rx="50" ry="25" />
-
- <rect x="155" y="5" width="75" height="100"/>
- <rect x="250" y="5" width="75" height="100" rx="30" ry="20" />
-
- <line x1="0" y1="150" x2="400" y2="150"
- stroke-width="2" stroke="blue"/>
-
- <polyline points="50,175 150,175 150,125 250,200" />
- <polygon points="350,75 379,175 355,175 355,200 345,200
- 345,175 321,175" />
-
- <rect x="0" y="0" width="400" height="200"
- fill="none" stroke="red" stroke-width="3" />
- g>
- svg>
-
添加文本 | <nobr>第 4 页(共5 页)</nobr> |
除了形状以外,SVG 图像还可以包含文本。SVG 给予设计人员和开发人员对文本的大量控制,可以获得很好的图形效果而不必借助失去真实纹理信息的图像(*.gif
或 *.jpg
图像甚至 Flash 电影常常这么做)。
SVG 的文本和字体能力在以添加文本开始的文本部分讨论,而现在重要的是要理解所有在传统 HTML 页面中通过级联样式表(Cascading Style Sheet)可以获得的效果,也都可以在 SVG 图像内的文本元素中得到。例如:
xml 代码
- <!---->xml version="1.0"?>
- <!---->
- "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
- <svg width="400" height="125" xmlns="http://www.w3.org/2000/svg">
-
- <desc>Basic textdesc>
-
- <g>
- <rect x="0" y="0" width="400" height="125" fill="none"
- stroke="blue" stroke-width="3"/>
-
- <text x="10" y="50" font-size="30">Welcome to the world oftext>
- <text x="10" y="100" font-size="40"
- font-family="Monotype Corsiva"
- fill="yellow" stroke="red">Scalable Vector Graphics!text>
- g>
- svg>
渲染顺序 | <nobr>第 5 页(共5 页)</nobr> |
当组合多种不同元素时,正象 SVG 图像一样,重要的是牢记各项在页面上的放置顺序,因为这关系到谁“在上面”出现。在一个 HTML 页面上,使用 z-index
属性来控制这一分层效果,而对于 SVG 图像,则严格按顺序放置各项。每个后继层放置在那些已放置层的上面。
如果指定一个元素没有填充色(使用 fill="none"
),那么在它下面的各项会显现出来,就象您在这里看到的:
xml 代码
- <!---->xml version="1.0"?>
- <!---->
- "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
- <svg width="400" height="200" xmlns="http://www.w3.org/2000/svg">
-
- <desc>Overlapping shapesdesc>
-
- <g>
- <ellipse cx="125" cy="50" rx="50" ry="25"
- fill="none" stroke="black" />
- <circle cx="125" cy="50" r="25" fill="dodgerblue" />
- <circle cx="125" cy="50" r="10" fill="black" />
-
- <ellipse cx="250" cy="50" rx="50" ry="25"
- fill="none" stroke="black" />
- <circle cx="250" cy="50" r="25" fill="dodgerblue" />
- <circle cx="250" cy="50" r="10" fill="black" />
-
- <polygon points="65,50 185,50 185,75, 150,100
- 100,100 65,75"
- fill="none" stroke="purple" stroke-width="4"/>
- <polygon points="190,50 310,50 310,75, 275,100
- 225,100 190,75"
- fill="none" stroke="purple" stroke-width="4"/>
-
- <line x1="65" y1="50" x2="310" y2="50"
- stroke="plum" stroke-width="2"/>
-
- g>
- svg>
请注意每个元素会覆盖在它之前出现的元素。
分享到:
相关推荐
这个“SVG经典教程1 (SVG从入门到精通)”上册,作为初级教程,旨在帮助读者快速掌握SVG的基本概念和实践技巧。 教程可能涵盖以下关键知识点: 1. SVG基础知识:解释SVG的定义,以及与位图(如JPEG或PNG)的区别。...
SVG图像由一系列几何形状组成,如线条、矩形、圆形、曲线等,这些形状在放大或缩小时仍能保持清晰。与位图图像不同,SVG不存储像素信息,而是存储图形的数学描述,因此它能够提供无限的分辨率和出色的可缩放性。 ##...
1. **SVG基础知识**:理解SVG的基本元素,如`<rect>`(矩形)、`<circle>`(圆形)、`<ellipse>`(椭圆)、`<path>`(路径)等,以及它们的属性如`d`(描述路径数据)、`fill`(填充色)、`stroke`(边框色)等。...
例如,在绘制基本形状的章节中,读者可以学习如何使用、、、、和等元素来创建简单的图形,并了解它们的重要属性。同时,SVG的、和等元素用于定义和重复使用图形,从而提高图形元素的复用性,并减少文件的冗余。此外...
下面是一些基本的 SVG 形状元素: - **矩形**:`<rect>` 元素用于创建矩形。 - **圆形**:`<circle>` 元素用于创建圆形。 - **椭圆**:`<ellipse>` 元素用于创建椭圆形。 - **线**:`<line>` 元素用于绘制直线。 - ...
这篇“SVG入门教程(三) 绘制”显然是系列教程的一部分,旨在帮助初学者掌握如何使用SVG进行图形绘制。在本教程中,我们将深入探讨SVG的基本绘图元素和方法。 SVG的优势在于其矢量特性,这意味着无论放大多少倍,...
学习SVG基础入门,不仅能够理解基本的图形绘制,还能掌握如何创建交互式和动态图形,这对于Web开发者和设计师来说是一项重要的技能。通过实践和探索,可以深入理解和应用SVG的各种特性和技巧,提升作品的质量和专业...
6. **IBM SVG教程**:IBM提供的SVG教程通常会深入讲解SVG的各个方面,包括基础概念、元素用法、动画技术、以及如何在实际项目中应用SVG。对于初学者来说,这是一个很好的学习资源,可以帮助快速掌握SVG的基本技能。 ...
3. **基本图形绘制**:如何使用SVG绘制直线、曲线、圆、椭圆、多边形等基础形状,以及如何调整它们的属性,如颜色、填充、描边等。 4. **路径数据**:理解M(move)、L(line)、H(水平线)、V(垂直线)、C(三次...
在本篇SVG入门教程(二)中,我们将深入探讨SVG(Scalable Vector Graphics)的基本概念,以及如何在SVG中定义和组织元素。SVG是一种基于XML的矢量图像格式,它允许我们创建可缩放、高质量的图形,适用于网页和其他...
SVG教程旨在帮助学习者掌握这一强大的图形格式,以下将详细介绍SVG的基本概念和关键知识点。 1. **SVG基本概念** - **矢量图形与位图图形的区别**:SVG是矢量图形,由数学路径定义,而位图图像由像素组成。矢量图...
SVG的广泛应用使得熟悉这一技术变得越来越重要,无论是前端开发者还是设计师,都应该掌握SVG的基本原理和实践技巧。通过深入阅读这本《SVG经典入门书籍》,你可以全面理解SVG,从而在你的项目中发挥它的潜力。
作为一个初级教程,它旨在帮助初学者理解和掌握SVG的基本概念和使用方法,通过实例教学,使得学习过程更加直观和易懂。 教程的内容通常会涵盖以下几个方面: 1. **是否应学习SVG**:对于任何从事前端开发或者图形...
首先,SVG地图的基础是SVG元素,这些元素可以表示线条、形状、文本等基本图形。SVG使用XML语法,这意味着你可以直接编辑SVG代码来创建和修改图形。例如,`<rect>`元素用于绘制矩形,`<circle>`元素用于绘制圆形,`...
一、SVG基础概念 1. 矢量图与位图:了解SVG作为矢量图与传统的位图(如JPEG、PNG)之间的区别,理解矢量图不受分辨率限制的优势。 2. SVG结构:学习SVG的基本结构,包括SVG根元素、视口、坐标系统以及如何创建形状。...