SVG实例入门与动画实战一

简介: SVG实例入门与动画实战一

前言

在日常开发过程中,我们或多或少都接触过SVG,有可能是用它来画一些简单的图形,有可能是使用它来构建工程的字体文件库,甚至是用它来绘制一些复杂的可视化模块。本文会详细介绍SVG的基本图形以及常见的动画形式,帮助你了解入门SVG

基本图形

下面会介绍SVG预设的数种形状以及对应的属性介绍,在实际开发或者设计过程中,绘画SVG图标大多数时候都是会使用一些工具的。

矩形

    <svg width="200px" height="200px" version="1.1" xmlns="http://www.w3.org/2000/svg">
        <rect width="100" height="100" x="20" y="20" rx="30" ry="30" style="fill:rgb(255,255,0);stroke-width:4;
stroke:rgb(0,0,0);fill-opacity: .6;stroke-opacity: .5;" />
    </svg>

svg标签中,width表示整个宽度,height表示高度,version表示版本,xmlns表示命名空间,后面两个属性是相对固定的东西,稍作理解即可。

rect中的标签属性与style属性解释如下:

  • width:宽度
  • height:高度
  • x:水平方向上的偏移量
  • y:竖直方向上的偏移量
  • rxry:定义圆角效果
  • style:样式(这些样式同样适用于下面的图形,所以下面的图形只会介绍属性,不会重复介绍样式)
  • fill:rgb颜色,表示矩形的填充颜色
  • fill-opacity:填充的不透明度
  • stroke:rgb颜色,表示矩形的边框颜色
  • stroke-width:矩形边框的大小
  • stroke-opacity:矩形边框的不透明度 533.png

圆形

<svg width="200px" height="200px" version="1.1" xmlns="http://www.w3.org/2000/svg">
    <circle cx="100" cy="50" r="40" style="stroke:black; stroke-width:2; fill:blue" />
</svg>

circle标签属性解释如下:

  • cxcy:圆心坐标
  • r:圆的半径

55.png

椭圆

<svg width="200px" height="200px" version="1.1" xmlns="http://www.w3.org/2000/svg">
    <ellipse cx="100" cy="50" rx="40" ry="50" style="fill:purple" />
</svg>

ellipse标签属性解释如下:

  • cx:圆心的x坐标
  • cy:圆心的y坐标
  • rx:水平半径
  • ry:竖直半径 56.png

线条

<svg width="200px" height="200px" version="1.1" xmlns="http://www.w3.org/2000/svg">
    <line x1="10" y1="10" x2="100" y2="100" style="stroke:red;stroke-width:2" />
</svg>

line标签属性解释如下:

  • x1:线段的起点x坐标
  • x2:线段的终点x坐标
  • y1:线段的起点y坐标
  • y2:线段的终点y坐标

56.png



多边形

polygon标签属性解释如下:

  • points:定义多边形的N个(x,y)坐标,不少于三个点 57.png


折线

<svg width="200px" height="200px" version="1.1" xmlns="http://www.w3.org/2000/svg">
    <polyline points="10,10 20,20 30,15 40,40 50,30 60,60" style="fill:transparent;stroke:green;stroke-width:2" />
</svg>

polyline标签属性解释如下:

  • points:定义曲线的N个(x,y)坐 59.png


PS:你看这个曲线图,像不像你最近的股票基金



SVG实例入门与动画实战二https://developer.aliyun.com/article/1495150


相关文章
|
移动开发 前端开发 Shell
《HTML5 Canvas核心技术 图形、动画与游戏开发》 读书笔记
《HTML5 Canvas核心技术 图形、动画与游戏开发》 读书笔记
|
5月前
|
前端开发
前端 CSS 经典:SVG 描边动画
前端 CSS 经典:SVG 描边动画
150 0
|
5月前
|
Web App开发 前端开发 iOS开发
CSS3 转换,深入理解Flutter动画原理,前端基础图形
CSS3 转换,深入理解Flutter动画原理,前端基础图形
|
5月前
|
前端开发
SVG实例入门与动画实战二
SVG实例入门与动画实战二
Threejs入门进阶实战案例(2):正常静态渲染和渲染动画的解决方案
Threejs入门进阶实战案例(2):正常静态渲染和渲染动画的解决方案
92 0
|
Web App开发 前端开发 API
SVG 入门基础(一)
SVG 入门基础(一)
125 0
|
编解码 前端开发 JavaScript
SVG 入门基础(1)属性
SVG 入门基础(1)属性
259 0
SVG 入门基础(1)属性
|
JavaScript 前端开发
Threejs中使用Tweenjs实现动画效果和Tweenjs使用说明文档
Threejs中使用Tweenjs实现动画效果和Tweenjs使用说明文档
994 0
一种动画框架 Lottie 的解析
一种动画框架Lottie的解析(一)—— 基本介绍(一)一种动画框架Lottie的解析(二)—— 基本介绍(二)一种动画框架Lottie的解析(三)—— 框架结构
1407 0
|
XML JavaScript 前端开发