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


相关文章
|
8月前
|
移动开发 前端开发 Shell
《HTML5 Canvas核心技术 图形、动画与游戏开发》 读书笔记
《HTML5 Canvas核心技术 图形、动画与游戏开发》 读书笔记
|
13天前
|
前端开发
SVG实例入门与动画实战二
SVG实例入门与动画实战二
|
5月前
|
XML Java Android开发
Android App开发动画特效之实现百叶窗动画和马赛克动画效果实战演示(附源码和演示视频 可直接使用)
Android App开发动画特效之实现百叶窗动画和马赛克动画效果实战演示(附源码和演示视频 可直接使用)
85 0
|
9月前
|
Web App开发 前端开发 API
SVG 入门基础(一)
SVG 入门基础(一)
87 0
|
9月前
SVG Path(一)基础概念
SVG Path(一)基础概念
33 0
|
10月前
Threejs入门进阶实战案例(2):正常静态渲染和渲染动画的解决方案
Threejs入门进阶实战案例(2):正常静态渲染和渲染动画的解决方案
67 0
|
编解码 前端开发 JavaScript
SVG 入门基础(1)属性
SVG 入门基础(1)属性
234 0
SVG 入门基础(1)属性
|
JavaScript 前端开发
Threejs中使用Tweenjs实现动画效果和Tweenjs使用说明文档
Threejs中使用Tweenjs实现动画效果和Tweenjs使用说明文档
890 0
|
弹性计算 调度 云计算
案例分享——追光动画|学习笔记
快速学习 案例分享——追光动画
290 0
一种动画框架 Lottie 的解析
一种动画框架Lottie的解析(一)—— 基本介绍(一)一种动画框架Lottie的解析(二)—— 基本介绍(二)一种动画框架Lottie的解析(三)—— 框架结构
1170 0