canvas画图采坑

1)首先canvas的原点在画布的左上角上,有时候为了方便需要将原点平移,使用ctx.translate(x, y)函数;后面的坐标定位都是以这个点为基准

2)矩形,图像的距离原点的坐标以它们的左上角为起点

3)描边和填充是两个不同的概念,描边使用strokeStyle属性,调用stroke来实现;

填充使用fillStyle,调用fillRect()填充矩形,fillText()填充文字,fill()填充路径;填充和描边方法相当于渲染生成图像在屏幕上。

4)描绘路径的时候必须先使用ctx.beginPath();ctx.moveTo表示将绘图点移动到此点,lineTo才是负责将上一点连接到下一点的路径,closePath()不必要显示关闭,调用fill(), stroke()都会自动闭合路径。

5)由于fillStyle等属性是全局的,所以需要借助栈结构来调用save()来存储上一次的画笔属性;调用restore()返回上一层画笔属性。

6)清除画布方法:clearRect(x,y,width,height)用来清除canvas画图上的以x,y为起点,width,height为宽高的矩阵区域。

7)操作图像数据:drawImage画上去之后使用getImageData来获取指定的位置的图像数据:

var imageData = ctx.getImageData().data // 里面每四个元素保存一个像素点的 r g b a的值

注意:图像必须是同域,否则会报跨域错误

8)合成:globalAlpha指定全局的透明度,globalCompositionOperation指定两个图形之间如何层叠。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值