js-权威指南学习笔记21
第二十一章 多媒体和图形编程
1、为了强制让图片缓存起来,首先利用Image()构造函数来创建一个屏幕外的图片对象,之后将该对象的src属性设置成期望的URL。
2、由于各家浏览器制造商未能在对标准音频和视频编解码器支持上达成一致,因此通常都需要使用<source>元素来指定不同格式的媒体源。
3、<audio><video>元素都支持一个controls属性,如果设置了该属性,将会显示一系列播放控件,包括播放暂停按钮/音量控制等。
4、HTML5的媒体API允许使用Audio()构造函数,并将媒体源URL作为参数,来创建一个屏幕外音频元素。
5、想要测试一个媒体元素能否播放制定该类型的媒体文件,可以调用canPlayType()方法并将媒体的MIME类型传递进去。
6、如果通过在媒体元素中添加<source>元素而不是设置src属性的方式指定媒体源,媒体元素无法知道是否已经将一系列<source>元素都已经添加完毕,因此它不会开始选择并加载<source>指定的媒体源文件,除非显式地调用load()方法。
7、当时用<img>或者<object>元素展示SVG图形的时候,SVG就变成了另外一种图片格式了,这种方式对于JS程序员来说是不友好的。更好的方式是直接将SVG图片嵌入到HTML文档中,这样这些图片就可以通过脚本的方式来控制。
8、HTML5将XML和HTML的区别进一步缩小,允许SVG标记直接在HTML文件中使用,不需要命名空间的生命或者标签前缀。
9、<canvas>元素和SVG之间的一个重要的区别是,使用canvas来绘制图形是通过调用它提供的方法而是用SVG绘制图形是通过构建一颗XML元素树来实现的。
10、大部分画布绘制API都不是在<canvas>元素自身上定义的,而是定义在一个“绘制上下文”对象上,获取该对象可以通过调用画布的getContext()方法,传递一个2d参数,会获得一个CanvasRenderingContext2D对象,使用该对象可以在画布上绘制二维图形。
11、调用beginPath()方法开始定义一条新的路径,而调用moveTo()方法则开始定义一条新的子路径。
12、对于未闭合的子路径,调用fill()方法填充的时候,会假设子路径的终点和起点是连接起来的,调用closePath()方法将终点和起点真正连接。
13、要检测一个点P是否在路径的内部,使用非零绕数原则。
14、调用save()方法会将当前图形状态压入用于保存状态的栈上。调用restore()方法会从栈中弹出并恢复最近一次保存的状态。
15、HSL颜色空间采用三个数字来指定颜色,分别代表色调、饱和度、亮度。
16、要使用背景图片而不是颜色来填充或者勾勒,可以将fillStyle或者strokeStyle属性设置成CanvasPattern对象,该对象可以通过调用上下文对象的createPattern()方法返回。
17、要使用渐变色来进行填充或者勾勒,可以将fillStyle或者strokeStyle属性设置成一个CanvasGradient对象,该对象可以通过调用上下文对象上的createLinearGradient()或者createRadialGradient()方法来返回。
18、阴影:shadowOffsetX属性和shadowOffsetY属性总是在默认的坐标空间中度量,不受rotate()方法和scale()方法的影响。
19、调用getImageData()方法会返回一个ImageData对象,该对象表示画布矩形区域中的原始像素信息。
js-权威指南学习笔记21的更多相关文章
- js权威指南---学习笔记02
1.JS只有函数作用域,没有块级作用域这个概念: 它有一个特性——声明提前:在同一个函数中不同位置声明的变量,都被提前在函数开始的时候,执行声明操作:在原先位置执行赋值操作: 2.声明的全局变量,相当 ...
- js权威指南学习笔记(四)对象
1.创建对象 (1).通过对象直接量的方式创建 说明:对象直接量是由若干名/值对组成的映射表,名/值对中间用冒号分隔,名/值对之间用逗号分隔,整个映射表用花括号括起来. 如: 5 5 ...
- js权威指南学习笔记(一)类型、值和变量
1.数据类型:原始类型(primitive type) 和对象类型(object type) 原始类型包括数字.字符串和布尔值: 除数字.字符串.布尔值.null(空).undefined(未定义), ...
- js权威指南---学习笔记01
1.当函数赋值给对象的属性时,就变为了方法:2.被零整除不报错,只会返回无穷大(Infinity)或者负无穷大.例外:零除以零等于非数字(NaN).3.NaN与任何值都不相等! 4.Javascrip ...
- js权威指南学习笔记(三)语句
1.声明语句 如果用var声明的变量没有初始化,那么这个变量的值会被初始化为undefined. 函数声明语句的语法如下: 4 4 1 console.log(func ...
- js权威指南学习笔记(二)表达式与运算符
1.数组初始化表达式 数组直接量中的列表逗号之间的元素可以省略,这时省略的空位会填充undefined.如: 2 2 1 var arr = [1,,,,,6]; 2 ...
- JavaScript 权威指南-学习笔记(一)
本文所有教程及源码.软件仅为技术研究.不涉及计算机信息系统功能的删除.修改.增加.干扰,更不会影响计算机信息系统的正常运行.不得将代码用于非法用途,如侵立删! ## JavaScript 权威指南-学 ...
- 《JS权威指南学习总结》
JS权威指南学习总结:http://www.cnblogs.com/ahthw/category/652668.html
- 《JS权威指南学习总结--开始简介》
本书共分成了四大部分: 1.JS语言核心 2.客户端JS 3.JS核心参考 4.客户端JS核心参考 其中 <JS权威指南学习总结--1.1语法核心> 是:第一部分JS语言核心 各章节重点 ...
- HTTP权威指南-学习笔记
目录 HTTP权威指南-学习笔记 HTTP: Web的基础 URL与资源 HTTP报文 连接管理 HTTP结构 Web服务器 代理 缓存 集成点: 网关,隧道及中继 Web机器人 识别,认证与安全 客 ...
随机推荐
- java项目配置域名(tomcat直接配置 or 使用nginx反向代理)
一: tomcat直接配置域名:https://blog.csdn.net/qq_36330228/article/details/78516160 二: 使用nginx进行反向代理 tomcat服 ...
- 基于GTK+3 开发远程控制管理软件(C语言实现)系列二 Centos7下开发环境搭建
一.安装gcc gcc-c++ make等编译工具 yum install gcc gcc-c++ kernel-devel 这一步,其实可以不用做,你在安装Centos7的时候,如果选择开发模式安装 ...
- (转)实现一个cache装饰器,实现过期可清除功能
原文:http://www.cnblogs.com/JerryZao/p/9574927.html http://blog.51cto.com/11281400/2107790-----装饰器应用练习 ...
- jquery.cropper 裁剪图片上传
https://github.com/fengyuanchen/cropper 1.必要的文件引用: <script src="/path/to/jquery.js"> ...
- AsyncTask实现网络图片的异步加载
想要实现网络中图片的加载,主线程是不行的,方法有两个,一个是使用线程Tread(),另一个就是使用AsyncTask,AsyncTask其实也是线程.我看过慕课网里边一个叫做<Android必学 ...
- 【转】谷歌三大核心技术(二)Google MapReduce中文版
Google MapReduce中文版 译者: alex 摘要 MapReduce 是一个编程模型,也是一个处理和生成超大数据集的算法模型的相关实现.用户首先创建一个Map函数处理一个 ...
- Vue笔记:VS Code 常用快捷键
VS Code 常用快捷键 1.注释: 单行注释:ctrl+/, 注释后再按取消 取消单行注释:alt+shift+A 注释后再按取消 2.移动行 向上移动一行:alt+up 向下移动一行:alt+d ...
- Java中带包(创建及引用)的类的编译
Java中带包(创建及引用)的类的编译与调试 java源程序的编译大家都知道,也就是cmd中到源文件所在目录下javac **.java即可,当程序中有包声明还能简简单单的直接javac **.jav ...
- 如何去破解所有的window和offices(超级全面)
破解所有的Windows和Offices by方阳 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7107666.html 摘 ...
- 了解Spring-boot-starter常用依赖模块
Spring-boot的优点: 1.Spring框架的“约定优先于配置(COC)”理念以及最佳实践. 2.针对日常企业应用研发各种场景的Spring-boot-starter自动配置依赖模块,且“开箱 ...