H5小内容(四)
SVG
基本内容
SVG并不属于HTML5专有内容
HTML5提供有关SVG原生的内容
在HTML5出现之前,就有SVG内容
SVG,简单来说就是矢量图
SVG文件的扩展名为".svg"
SVG使用的是XML语法
概念
SVG是一种使用XML技术描述二维图形的语言
SVG的特点
SVG绘制图形可以被搜索引擎抓取
SVG在图片质量不下降的情况下,被放大
SVG与Canvas的区别
SVG
不依赖分辨率
支持事件绑定
大型渲染区域的程序(例如百度地图)
不能用来实现网页游戏
Canvas
依赖分辨率
不支持事件绑定
最合适网页游戏
保存为".jpg"格式的图片
用途
网页中一些小的图标
网页中动态特效(动画效果)
HTML5中使用SVG
使用<svg></svg>元素
作用 - 类似于<canvas>元素
默认大小为300px 150px
使用CSS样式
使用SVG绘制图形,必须定义<svg>元素中
绘制图形
矩形元素
<rect x="" y="" width="" height="" />
圆形元素
<circle cx="" cy="" r="" />
椭圆元素
<ellipse cx="" cy="" rx="" ry="">
直线元素
<line x1="" y1="" x2="" y2="" />
折线元素
<polyline points="">
多边形元素
<polygon points="" />
特效元素
渐变 - 渐变元素定义在<defs>元素内
线型渐变 - <linearGradient>
该元素是起始元素
<linearGradient x1="%" y1="%" x2="%" y2="%">
<stop offset="%" stop-color="color" />
</linearGradient>
扇形(射线)渐变 - <radialGradient>
滤镜 - 高斯模糊
滤镜使用<filter>元素
<feGaussianBlur>元素 - 高斯模糊
in="SourceGraphic"
stdDeviation - 设置模糊程度
注意 - 定义在<defs>元素中
TWO.js
基本内容
JS库介绍
three.js - 专门用于绘制三维图形
two.js - 专门用于绘制二维图形
two.js支持的格式
SVG - 默认
Canvas
WebGL - 专门用于绘制图像
如何使用two.js
在HTML页面中引入two.js文件
在HTML页面中定义容器(<div>)
在javascript代码中
获取HTML页面中的容器
创建Two对象,将该对象添加到容器中
new Two(params).appendTo(Element);
使用two.js提供的API方法进行绘制
利用two.js提供的方法,设置图形
利用update()方法进行绘制
创建Two对象
构造器 - new Two(params)
params参数 - 设置当前对象的信息
type - 设置当前使用的格式(Two.Types.svg)
svg - 默认值
canvas
webgl
width和height - 设置宽度和高度
fullscreen - 设置是否全屏
Boolean值,true表示全屏
图形方法
makeLine() - 绘制线条
makeRectangle() - 绘制矩形
makeCircle() - 绘制圆形
makeEllipse() - 绘制椭圆
动画方法
update() - 更新动画
play() - 添加动画(循环)
pause() - 删除动画
设置绘制图形的样式
调用Two对象的绘制方法绘制图形时,返回该图形对象
通过该图形对象,设置相关属性值
分组操作
Two.Group
动画效果
bind(event,callback)方法 - 事件绑定
event - 绑定事件名称
update - 对应update()方法的作用
所有的DOM事件都可以绑定
callback - 事件处理函数
H5小内容(四)的更多相关文章
- H5小内容(一)
HTML5目前最新的规范(标准)是2014年10月推出 2005年左右出现HTML5版本(非标准) W3C组织(两个组织定义H5规范) 学习(研究)HTML5是学习未来(将来主流) ...
- H5小内容(六)
Web Worker 基本内容 单线程与多线程 Worker可以模拟多线程的效果 定义 - 运行在后台的javascript 注意 - 不能使用DOM ...
- H5小内容(五)
Geolocation(地理定位) 基本内容 地理定位 - 地球的经度和纬度的相交点 实现地理定位的方式 GPS - 美国的,依靠卫星定位 北斗定位 - 纯 ...
- H5小内容(三)
Canvas(画布) 基本内容 简单来说,HTML5提供的新元素<canvas> Canvas在HTML页面提供画布的功能 在画布中绘制各种图形 C ...
- H5小内容(二)
音视频处理 视频处理 基本内容 使用Flash技术处理HTML页面中的视频内容 包含音频.动画.网页游戏等 特点 浏览器原生不支持(IE浏览器要求安装A ...
- 从零开始开发一款H5小游戏(三) 攻守阵营,赋予粒子新的生命
本系列文章对应游戏代码已开源 Sinuous game. 每个游戏都会包含场景和角色.要实现一个游戏角色,就要清楚角色在场景中的位置,以及它的运动规律,并能通过数学表达式表现出来. 场景坐标 canv ...
- Egret白鹭H5小游戏开发入门(三)
前言: 在上一篇文章中着重介绍了H5小游戏开发的起步阶段,如Wing面板的使用,素材的处理,类的说明等等,那么今天主要是涉及到场景的创建,loading的修改等等的代码编写. 对于这一节,我在讲解的过 ...
- Egret白鹭H5小游戏开发入门(一)
前言: 好久没更新博客了,以前很多都不会,所以常常写博客总结,倒是现在有点点经验了就懒了.在过去的几个月里,在canvas游戏框架方面,撸过了CreateJS,玩得了Egret,又学过PIXI.js. ...
- 开发H5小游戏
Egret白鹭H5小游戏开发入门(一) 前言: 好久没更新博客了,以前很多都不会,所以常常写博客总结,倒是现在有点点经验了就懒了.在过去的几个月里,在canvas游戏框架方面,撸过了CreateJ ...
随机推荐
- JS 事件与事件对象小结
JavaScript与HTML之间的交互是通过事件来实现的.IE9,chrome,Firefox,Opera,Safari均实现了DOM2级规范中定义的标准DOM事件,而IE8和IE8以下版本仍然保留 ...
- 【16】成对使用new和delete时要采取相同形式
简而言之,new时不带[],delete时也不带[]:new时带[],delete时也要带[].如果不匹配,要么造成多销毁对象,导致未定义行为:要么导致少销毁对象,导致内存泄漏.
- PetShop 4.0学习笔记:消息队列MSMQ
直到今天才知道,在我们每天都在用的Window系统里还有这么好用的一个编程组件:消息队列.它能够解决在大数据量交换的情况下的性能问题,特别是BS系统的数据库性能.而且它的异步处理方式能给程序员最大的便 ...
- 回击MLAA:NVIDIA FXAA抗锯齿性能实測、画质对照
PC游戏玩家肯定会对各式各样的AA抗锯齿技术很熟悉,而今天本文的主角就是NVIDIA今年才推出的新型抗锯齿技术"FXAA". FXAA在某种程度上有些类似于AMD之前宣传的MLAA ...
- Hash表
Hash表 Hash表也称散列表,也有直接译作哈希表,Hash表是一种特殊的数据结构,它同数组.链表以及二叉排序树等相比较有很明显的区别,它能够快速定位到想要查找的记录,而不是与表中存在的记录的关键字 ...
- core dump + LINUX 内核系列博客
参考:http://www.cnblogs.com/ahuo/category/72819.html http://blog.csdn.net/tenfyguo/article/details/815 ...
- 神奇的 BlocksKit(1):源码分析(上)
高能预警:本篇文章非常长,因为 BlocksKit 的实现还是比较复杂和有意的.这篇文章不是为了剖析 iOS 开发中的 block 的实现以及它是如何组成甚至使用的,如果你想通过这篇文章来了解 blo ...
- Java基础知识强化之IO流笔记44:IO流练习之 复制图片的 4 种方式案例
1. 复制图片的 4 种方式案例: 分析: 复制数据,如果我们知道用记事本打开并能够读懂,就用字符流,否则用字节流. 通过该原理,我们知道我们应该采用字节流. 而字节流有4种方式,所以做这个题目我们有 ...
- js内置函数的使用
arguments对象是一个参数对象,可以访问有操作和无操作的参数,能够获得每个参数的内容,参数的个数,例如:arguments[0];获第一个参数,arguments.length;获得参数的个数, ...
- Jquery Ajax 调用 WebService
原文:http://www.cnblogs.com/andiki/archive/2010/05/17/1737254.html jquery ajax调用webservice(C#)要注意的几个事项 ...