SVG和canvas
1、SVG实现的圆环旋转效果
参考:http://www.softwhy.com/article-6472-1.html
2、SVG中的图形可以通过 transform="matrix(0,-1,1,0,0,440)"进行旋转。
3、svg代码可以单独放在一个后缀名为 .svg 的文件中保存起来。这个文件就是矢量图片文件。
这点用来制作一些矢量图会非常方便,不需要把这个svg代码放在html了(比较乱),可以单独在一个svg文件中。代码逻辑会清晰、干净许多。(占位代替图会经常使用svg制作)
SVG标签学习(SVG标签在W3C中是排在xml中学习的): http://www.w3school.com.cn/svg/svg_circle.asp
SVG在线制作编辑预览工具:https://www.bejson.com/ui/svg_editor/
SVG WEB在线编辑器 : http://www.86y.org/demo/svg/(这个不能把图片保存为svg文件) 或 http://www.zuohaotu.com/svg/(推荐,这个比较完美)
canvas
1、canvas标签在使用的时候,内部就会创建一个画图的对象(getContext("2d") 或getContext("3d"))【这个对象包含了画图所需要的所有工具集,如画笔】。挂载在这个canvasDOM对象上。
js 可以直接获取这个canvas标签 对象对应的画图对象ctx。
2、通过这个ctx对象,描述画什么样的图画(ctx对象可以理解成是一个画笔)。
3、使用stroke() 或者 fill() 方法把ctx描述的图画呈现出来。
注:上面的2、3步骤可以合并在一起,步骤2的描述可以作为步骤3(步骤3API的变形)的参数。如,fillText(text,x,y) 或 strokeText(text,x,y)。
总结:canvas在js使用分3个步骤:获取canvas标签的DOM对象,从DOM对象中取出画图对象ctx;使用画图对象ctx描述所画的图像;将描述的图像呈现从来。
画图对象ctx常用的API:https://www.cnblogs.com/liugang-vip/p/5360283.html
SVG和canvas的更多相关文章
- 三天学会HTML5——SVG和Canvas的使用
在第一天学习了HTML5的一些非常重要的基本知识,今天将进行更深层学习 首先来回顾第一天学习的内容,第一天学习了新标签,新控件,验证功能,应用缓存等内容. 第2天将学习如何使用Canvas 和使用SV ...
- Seen.js – 使用 SVG 或者 Canvas 渲染 3D 场景
Seen.js 渲染3D场景为 SVG 或者 HTML5 画布.Seen.js 包含对于 SVG 和 HTML5 Canvas 元素的图形功能的最简单的抽象.所有这个库的其它组件都是不用关心将要渲染的 ...
- SVG 2D入门13 - svg对决canvas
到目前为止,SVG与Canvas的主要特性均已经总结完毕了.它们都是HTML5中支持的2D图形展示技术,而且均支持向量图形.现在,我们就来比对一下这两种技术,分析一下它们的长处和适用场景.首先分析一下 ...
- html5 中的SVG 和canvas
想到昨天看资料的时候,发现html5 中的SVG 和canvas 都可以表示图形,那它们到底有哪些区别呢?该如何正确的使用它们呢? 1.SVG:可缩放矢量图形,(Scalable Vector Gra ...
- 环形进度条的实现方法总结和动态时钟绘制(CSS3、SVG、Canvas)
缘由: 在某一个游戏公司的笔试中,最后一道大题是,“用CSS3实现根据动态显示时间和环形进度[效果如下图所示],且每个圆环的颜色不一样,不需要考虑IE6~8的兼容性”.当时第一想法是用SVG,因为SV ...
- 贝塞尔曲线与CSS3动画、SVG和canvas的应用
简介 贝塞尔曲线是可以做出很多复杂的效果来的,比如弹跳球的复杂动画效果,首先加速下降,停止,然后弹起时逐渐减速的效果. 使用贝塞尔曲线常用的两个网址如下: 缓动函数:http://www.xuanfe ...
- 基于html5的动画库,非svg和canvas
基于html5的动画库,非svg和canvas https://greensock.com/docs/#/HTML5/GSAP/TweenLite/
- SVG 与 Canvas:如何选择
SVG 与 Canvas:如何选择 61(共 69)对本文的评价是有帮助 - 评价此主题 本主题一开始将对 SVG 与 Canvas 进行简要比较,接下来会讨论大量的比较代码示例,如光线跟踪和绿屏 ...
- SVG和canvas渲染的性能比较
1.什么是SVG? 描述: 一种使用XML描述的2D图形的语言 SVG基于XML意味着,SVG DOM中的每个元素都是可用的,可以为某个元素附加Javascript事件处理器. 在 SVG 中,每个被 ...
- HTML5(三)SVG vs. Canvas
HTML5 内联 SVG 什么是SVG? SVG 指可伸缩矢量图形 (Scalable Vector Graphics) SVG 用于定义用于网络的基于矢量的图形 SVG 使用 XML 格式定义图形 ...
随机推荐
- 【LeetCode 32】最长有效括号
题目链接 [题解] 设dp[i]表示以第i个字符结尾的最长有效括号的长度. 显然只要考虑s[i]==')'的情况 则如果s[i-1]=='(',则dp[i] = dp[i-2]+2; 如果s[i-1] ...
- 【开源项目】一篇文章搞掂:Pig微服务框架
1.项目开发环境和运行步骤 1.1.项目开发环境 Idea:2018.1.6 Maven:3.5.3 JDK:1.8.0_172 MySQL:5.7.19(之前安装8.0.11会运行失败) Redis ...
- NIO模型学习笔记
NIO模型学习笔记 简介 Non-blocking I/O 或New I/O 自JDK1.4开始使用 应用场景:高并发网络服务器支持 概念理解 模型:对事物共性的抽象 编程模型:对编程共性的抽象 BI ...
- 6、基于highcharts实现的线性拟合,计算部分在java中实现,画的是正态概率图
1.坐标点类 package cn.test.domain; public class Point { double x; double y; public Point(){ } public Poi ...
- python正常时间和unix时间戳相互转换的方法
python正常时间和unix时间戳相互转换的方法 本文实例讲述了python正常时间和unix时间戳相互转换的方法.分享给大家供大家参考.具体分析如下: 这段代码可以用来转换常规时间格式为unix时 ...
- Python Tuple元组的操作说明
Tuple的特性在于,它的元素是不可变的(immutable),一旦设定,就不能使用索引去修改. >>> t1=1,2,3,4,5 #给Tuple赋值 >>> t1 ...
- UVA11134_Fabled Rooks
大概题意: 在n*n的棋盘上面放n个车,能否使他们互相不攻击(即不能在同一行一列),并且第i个车必须落在第i的矩形范围(xl,yl, xr,yr)之内 xy互相并不干扰,所以就可以把这个二维问题压缩成 ...
- 第二十五天 慵懒的投射在JDBC上的暖阳 —Hibernate的使用(四)
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/zwszws/article/details/28493209 6月4日.晴天. ...
- 【目录】mysql 基础篇系列
随笔分类 - mysql 基础篇系列 mysql 开发基础系列22 SQL Model(带迁移事项) 摘要: 一.概述 与其它数据库不同,mysql 可以运行不同的sql model 下, sql m ...
- java爬取猫咪上的图片
首先是对知识点归纳 1.用到获取网页源代码,分析图片地址,发现图片的地址都是按编号排列的,所以想到用循环获取 2.保存图片要用到流操作和文件操作,对两部分知识进行了复习巩固 3.保存后的图片有一部分是 ...