【SVG.js实战篇】01-Vue中优雅的使用SVG.js
SVG
专栏收录该内容
订阅专栏
一、关于SVG.js
SVG.js是一个基于SVG的开源JS库,支持操作 SVG 和执行 SVG 动画。真的很好用!(在实际项目场景中,使用SVG.js很便利友好)
github仓库
官方文档
本文Demo源码
二、安装
// npm
npm install @svgdotjs/svg.js
// yarn
yarn add @svgdotjs/svg.js
1
三、项目中引入
import { SVG } from "@svgdotjs/svg.js"
1
四、绘制基础图形
绘制图形之前,首先需要创建一个SVG.js可以用来识别的容器:
<template>
<div>
<div id="simpleSquare"></div>
</div>
</template>
1
2
接下来,可以愉快的开始绘制图形了:
第一步: 使用SVG()API初始化一个SVG节点实例:
let shapeModel = SVG().addTo("#simpleSquare").size("100%", "100%");`
1
2
第二步,利用SVG提供的图形绘制方法绘制基础图形:
绘制正方形
shapeModel.rect(100, 100).attr({ fill: "#00B1B6" });
绘制圆
shapeModel.circle(100).radius(50).attr({ fill: "#0284A3" });
绘制多边形
shapeModel.polygon("0,0,100,50,50,100").fill("#175369") .stroke({ width: 1 });
绘制线条
shapeModel.line(0, 0, 100, 150).stroke({ width: 5, color: "#6488B7" });
绘制自定义图形
shapeModel.image('图片存储路径');
绘制矢量Path路径(SVG的path路径绘制而成的图)
shapeModel.path("M0 0 H50 A20 20 0 1 0 100 50 v25 C50 125 0 85 0 85 z").fill("#495975");
本文Demo源码传送门
原文地址:https://www.cnblogs.com/onesea/p/15292991.html
- 懒惰的力量
- 让AI自动修复程序中的bug:微软亚洲研究院新研究 | 附论文
- OpenDaylight与Mininet应用实战之OpenFlow1.0协议分析二
- Javascript: 世纪机器语言?
- OpenDaylight与Mininet应用实战之基本环境搭建一
- 永恒不变的魅力
- MobileNet教程(2):用TensorFlow搭建安卓手机上的图像分类App
- OpenDaylight与Mininet应用实战之流表操作三
- 天啊,这个围笑代表什么?麻省理工的AI比你更懂 | 论文+Demo
- elixir:灵丹妙药?or 徒有其名?
- OpenDaylight与Mininet应用实战之三层转发机制四
- 程序员效率指南
- 【每日播报】OpenDaylight与Mininet应用实战之复杂网络验证(五)
- Docker hackathon, teamspark 及团队协作软件设计上的思考
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Python自学成才之路 彻底搞懂python变量作用域
- Python自学成才之路 什么是元类
- 调试 Go 的代码生成
- Kubernetes中的Volume介绍
- Python自学成才之路 终于弄清楚类方法,静态方法的区别了
- Git 版本及版本范围表示法
- python自学成才之路 numpy 基础
- python自学成才之路 文件读写操作
- go 中string[0]到底是rune还是byte?
- python自学成才之路 类详细用法
- Linux 监控之 IO
- python自学成才之路 函数详细用法
- 你所不知道的TIME_WAIT和CLOSE_WAIT
- linux之网络
- linux vim编辑器之常用指令