初学画布canvas的chapter2
文本
1.字体属性
context.font = [css font property]
——使用CSS规范,语法跟CSS字体速记符号一致
——line-height无效,并永远忽略
Context.font = [font-style font-variant font-weight font-size font-family]
2.水平锚点
context.textAlign = [left | right |center | *start | end]
——左对齐/右对齐/居中对齐/开始/结束
dir=”ltr/rt”
——设置文本方向从左到右/从右到左
3.垂直锚点
context.textBaseline = [ top | middle | alphabetic | bottom | hanging| ideographic ]
——文本基线位于em方框的顶端/位于em方框的正中/默认,普通的字母基线/位于em方框的底端/悬挂基线/表意基线
4.绘制文本
context.fillText(text,x,y,maxwidth) ——绘制填充文本
context.strokeText(text,x,y,maxwidth) ——绘制无填充文本
context.measureText() ——定义文本尺寸
四、内嵌图像
context.drawImage(image,dx,dy)
context.drawImage(image,dx,dy,dw,dh)
context.drawImage(image,sx,sy,sw,sh,dx,dy,dw,dh)
——s代表源,d代表尺寸
五、像素处理
imageData
getImageData(sx,sy,sw,sh)
——获取canvas矩形选区
putImageData(ImageData,dx,dy[dirtyX,dirtyY,dirtyWidth.dirtyHeight])
——写入画布
createImageData(sw,sh/imagedata)
——初始化空白ImageData
六、混合、图案、变换等
混合:
context.globalCompositeOperation = ‘’;
属性:
source/destination-over——将A绘于B上/相反
source/destination –in ——绘出A位于B的部分/相反
source/destination –out——绘出A在B之外的部分/相反
source/destination –atop ——绘出B以及A与B重叠部分
lighter ——为重叠区域添加颜色并变浅
copy ——将B排除只绘出A
xor ——将A与B重叠部分去掉
? ——自定义合成方法
图案:
context.createPattern(image,repetition)
repetition属性:
repeat ——水平和垂直重复
repeat-x ——水平重复
repeat-y ——垂直重复
no-repeat ——不重复
变换:
scale(x,y)——根据x,y来完成x轴和y轴的尺寸改变
rotate(angle)——根据angle调整顺时针旋转的角度
translate(x,y)——以像素为单位的x轴、y轴偏移
——3种方法混合使用,变换会以相反顺序进行
transform(m11,m12,m21,m22,dx,dy)
——通过乘法改变当前矩阵
setTransform(m11,m12,m21,m22,dx,dy)
——将新矩阵覆盖在原有矩阵上
m11——X轴方向缩放
m12——水平剪切
m21——垂直剪切
m22——Y轴方向缩放
dx——X轴位移
dy——Y轴位移
其他:
save()和retore()
save()
——创建一个快照,保存当前设置属性
retore()
——访问该快照
初学画布canvas的chapter2的更多相关文章
- 初学画布canvas的chapter1
——这篇读后感是我阅读<写给Web开发人员看的HTML5教程>一书中的第5章画布后的小小看法,由于编程实力有限,很多效果病没有一一去实现,所以只是停留在纸上谈兵的阶段. 画布(canvas ...
- HTML 5 画布(canvas)
canvas 元素使用 JavaScript 在网页上绘制图像,本身是没有绘图能力. canvas 是一个矩形区域,可以控制其每一像素. canvas 拥有多种绘制路径.矩形.圆形.字符以及添加图像的 ...
- HTML5画布Canvas
一.Canvas概念介绍 1.概念 Canvas : 画布 2.作用 : HTML5 Canvas 元素用于图形的绘制, 通过脚本(通常是JavaScript)来完成.它本身只是个图形容器,必须使用脚 ...
- HTML5画布(CANVAS)速查简表
HTML5画布(CANVAS)速查简表 http://www.webhek.com/misc/html5-canvas-cheat-sheet/
- PHP《将画布(canvas)图像保存成本地图片的方法》
用PHP将网页上的Canvas图像保存到服务器上的方法 2014年6月27日 歪脖骇客 发表回复 8 在几年前HTML5还没有流行的时候,我们的项目经理曾经向我提出这样一个需求:让项目评审专家们在评审 ...
- Tkinter画布-Canvas
Python - Tkinter画布-Canvas: Canvas是一个长方形的面积,图画或其他复杂的布局.可以放置在画布上的图形,文字,部件,或是帧 Canvas是一个长方形的面积,图画或其他复杂的 ...
- 转载:将画布(canvas)图像保存成本地图片的方法
之前我曾介绍过如何将HTML5画布(canvas)内容转变成图片形式,方法十分简单.但后来我发现只将canvas内容转变成图片输出还不够,如何能将转变后的图片保存到本地呢? 其实,这个方法也是非常简单 ...
- 面向画布(Canvas)的JavaScript库
面向画布(Canvas)的JavaScript库 总结 每个库各有特色,根据需求选择 学习要点 面向画布(Canvas)的JavaScript库 EaselJS 是一个封装了 HTML5 画布(C ...
- 学习前端第二天心得体会(初步了解HTML5的部分API以及画布Canvas)
一.HTML5部分API 1.选择器querySelector和querySelectorAll 1.1.querySelector:返回文档中匹配指定的CSS选择器的第一元素. document. ...
随机推荐
- Docker Compose—简化复杂容器应用的利器
Compose是用于定义和运行复杂Docker应用的工具.你可以在一个文件中定义一个多容器的应用,然后使用一条命令来启动你的应用,然后所有相关的操作都会被自动完成. 1. 安装Docker和Compo ...
- rsync组合inotify-tools完成实时同步[转]
一. 什么是inotify inotify是一种强大的.细粒度的.异步的文件系统事件监控机制,Linux内核从2.6.13开始引入,允许监控程序打开一个独立文件描述符,并针对事件集监控一个或者多个文件 ...
- javaWeb中servlet开发(5)——WEB开发模式:Mode I与Mode II
1.servlet开发 2.model I模式 客户端通过访问JSP,调用里面的javabean,而通过javabean调用处理数据库的操作,javabean中有专门处理数据库的操作,数据库主要以DA ...
- SQL ORDER BY 子句
ORDER BY 语句用于对结果集进行排序. ORDER BY 语句 ORDER BY 语句用于根据指定的列对结果集进行排序. ORDER BY 语句默认按照升序对记录进行排序. 如果您希望按照降序对 ...
- Wysiwyg Editors 标签过滤
针对October CMS编辑器插件取消自动过滤DIV标签开关: 找到modules\backend\formwidgets\richeditor\assets\vendor\redactor\red ...
- 初步了解JSONP
一.JSON 与 JSONP JSON是一种基于文本的数据交换方式(数据描述格式),JSONP是一种非官方跨域数据交互协议. ajax的核心是通过XmlHttpRequest获取非本页内容,而json ...
- linq判断集合是否为空的方法
Enumerable.Any 扩展方法可以判断集合为空: 如果不为空 if (!source.Any()) { //... }
- Metasploitable 2系列教程:信息收集
Metasploitable 2 系统是一个基于ubuntu 的系统.其设计的最初目的为安全工具测试和常见漏洞攻击演示.而在这篇关于 Metasploit 的教程中,我们将列举有关 Metasploi ...
- iOS:融云即时通讯快速集成
一.介绍 即时通讯在众多社交软件.生活软件以及教育软件中已经是必备的功能了,在当前国内,即时通讯SDK做的比较不错的有那么几家,例如环信SDK.融云SDK...,这两家做的都很不错,各有千秋吧,要是真 ...
- Web Project犯错误!
创建一个Web Project关于数据库连接,输入doGet中调用req.setCharacterEncoding("utf-8)错误输成uft-8 经常忘记HttpServletReque ...