Fork me on GitHub
摘要: ImageData对象 ImageData对象包含了一个区域内的canvas的像素信息。它包含以下可读属性: width canvas的宽度,单位是像素。 height canvas的高度,单位是像素。 data 一个Uint8ClampedArray的一维数组,包含了每个像素的RGBA值。 什么是 阅读全文
posted @ 2017-08-29 15:00 池月 阅读(2364) 评论(0) 推荐(0) 编辑
摘要: globalCompositeOperation 如果我们先画了一个图形,然后要在这个图形上面再画一个图形,那么这个图形会怎么样呢?是覆盖在原来的图形上面吗?这时候,就要用到globalCompositeOperation这个属性了。 当有两个图形重叠的时候,可以有很多种混合模式,比如上面的图形盖住 阅读全文
posted @ 2017-08-28 17:25 池月 阅读(636) 评论(0) 推荐(0) 编辑
摘要: save()和restore() save() 保存当前状态,将当前canvas的状态存入栈中。 restore() 恢复之前save的一个状态,将之前的状态从栈中弹出。 保存的当前状态包含以下信息: 变换(平移、旋转、缩放) 属性: strokeStyle, fillStyle, globalAl 阅读全文
posted @ 2017-08-28 10:21 池月 阅读(1500) 评论(0) 推荐(0) 编辑
摘要: 在canvas里画图有两个步骤: 1. 获得图片源。 2. drawImage()画图。 图片源 canvas支持以下几种图片资源: 1. HTMLImageElement 可以使用Image()方法构造的图片,也可以是HTML的元素。 2. HTMLVideoElement 可以使用HTML的标签 阅读全文
posted @ 2017-08-25 10:48 池月 阅读(582) 评论(0) 推荐(0) 编辑
摘要: 本节我们来学习如何绘制文字。 绘制文字有两个主要的方法: fillText(text, x, y [, maxWidth]) 在x, y位置填充文字text,有一个可选参数maxWidth设置最大绘制宽度。 strokeText(text, x, y [, maxWidth]) 在x, y位置给文字 阅读全文
posted @ 2017-08-14 15:21 池月 阅读(861) 评论(0) 推荐(1) 编辑
摘要: 上一节我们学习了如何用路径绘制各种形状,但我们只能用默认的颜色和线条。这节就来学习设置不同的颜色和线条样式。 颜色 设置颜色主要有两个属性: fillStyle = color 设置填充颜色 strokeStyle = color 设置描边颜色 颜色值可以用十六进制也可以用一些内置的颜色字符,还可以 阅读全文
posted @ 2017-08-02 20:18 池月 阅读(825) 评论(0) 推荐(0) 编辑
摘要: 上一篇我们已经讲述了canvas的基本用法,学会了构建canvas环境。现在我们就来学习绘制一些基本图形。 坐标 canvas的坐标原点在左上角,从左到右X轴坐标增加,从上到下Y轴坐标增加。坐标的一个单元是1像素。示意如下: 矩形 canvas可以绘制的多边形只有矩形,其他都要通过线段拼接而成。 绘 阅读全文
posted @ 2017-07-28 16:36 池月 阅读(1057) 评论(0) 推荐(0) 编辑
摘要: canvas浅认识。 阅读全文
posted @ 2017-07-25 18:25 池月 阅读(509) 评论(0) 推荐(0) 编辑
摘要: 今天意外地发现JavaScript是不能用==或 操作符直接比较两个数组是否相等的。 以上两句代码都会弹出false。 因为JavaScript里面Array是对象,==或 操作符只能比较两个对象是否是同一个实例,也就是是否是同一个对象引用。目前JavaScript没有内置的操作符判断对象的内容是否 阅读全文
posted @ 2017-05-02 11:44 池月 阅读(111112) 评论(6) 推荐(5) 编辑
摘要: 这几个属性的区别说难不难,可是很容易搞混,很长一段时间没用,发现又忘记区别了,记不清哪个是哪个!真的很抓狂! 区别: clientX、clientY: 相对于浏览器窗口可视区域的X,Y坐标(窗口坐标),可视区域不包括工具栏和滚动条。IE事件和标准事件都定义了这2个属性。 pageX、pageY: 类 阅读全文
posted @ 2016-10-09 21:12 池月 阅读(1323) 评论(0) 推荐(0) 编辑