文本

  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的更多相关文章

  1. 初学画布canvas的chapter1

    ——这篇读后感是我阅读<写给Web开发人员看的HTML5教程>一书中的第5章画布后的小小看法,由于编程实力有限,很多效果病没有一一去实现,所以只是停留在纸上谈兵的阶段. 画布(canvas ...

  2. HTML 5 画布(canvas)

    canvas 元素使用 JavaScript 在网页上绘制图像,本身是没有绘图能力. canvas 是一个矩形区域,可以控制其每一像素. canvas 拥有多种绘制路径.矩形.圆形.字符以及添加图像的 ...

  3. HTML5画布Canvas

    一.Canvas概念介绍 1.概念 Canvas : 画布 2.作用 : HTML5 Canvas 元素用于图形的绘制, 通过脚本(通常是JavaScript)来完成.它本身只是个图形容器,必须使用脚 ...

  4. HTML5画布(CANVAS)速查简表

    HTML5画布(CANVAS)速查简表 http://www.webhek.com/misc/html5-canvas-cheat-sheet/

  5. PHP《将画布(canvas)图像保存成本地图片的方法》

    用PHP将网页上的Canvas图像保存到服务器上的方法 2014年6月27日 歪脖骇客 发表回复 8 在几年前HTML5还没有流行的时候,我们的项目经理曾经向我提出这样一个需求:让项目评审专家们在评审 ...

  6. Tkinter画布-Canvas

    Python - Tkinter画布-Canvas: Canvas是一个长方形的面积,图画或其他复杂的布局.可以放置在画布上的图形,文字,部件,或是帧 Canvas是一个长方形的面积,图画或其他复杂的 ...

  7. 转载:将画布(canvas)图像保存成本地图片的方法

    之前我曾介绍过如何将HTML5画布(canvas)内容转变成图片形式,方法十分简单.但后来我发现只将canvas内容转变成图片输出还不够,如何能将转变后的图片保存到本地呢? 其实,这个方法也是非常简单 ...

  8. 面向画布(Canvas)的JavaScript库

    面向画布(Canvas)的JavaScript库 总结 每个库各有特色,根据需求选择   学习要点 面向画布(Canvas)的JavaScript库 EaselJS 是一个封装了 HTML5 画布(C ...

  9. 学习前端第二天心得体会(初步了解HTML5的部分API以及画布Canvas)

    一.HTML5部分API 1.选择器querySelector和querySelectorAll 1.1.querySelector:返回文档中匹配指定的CSS选择器的第一元素.  document. ...

随机推荐

  1. 除了白名单外的IP每秒最多处理 8 个请求 limit_conn_zone

    防止黑客知道你的源服务器真实IP进行并发攻击,通常只需要保护动态文件请求,�php. 添加文件 nginx/conf/limit/whiteip.conf 里面是你要忽略限制的 白名单 IP地址,通常 ...

  2. 真机调试---打包6plus出现问题

    问题: dyld: Library not loaded: @rpath/libswiftCore.dylib Referenced from: /private/var/mobile/Contain ...

  3. C# 计时器

    一.Stopwatch 主要用于测试代码段使用了多少时间 使用方法: Stopwatch sw=new Stopwatch(); sw.Start(); ... sw.Stop(); Console. ...

  4. 将公网IP自动发到Twitter上

    [Twitter] 1. 在https://apps.twitter.com/创建新的应用 2. 在https://dev.twitter.com/rest/reference/post/status ...

  5. easyui怎样实现textarea

    uqery easyui 本身没有实现textarea的封装,用的知识html元素,但是提供了textarea的验证器.<textarea id="" rows=5 name ...

  6. Swift声明参考

    一条声明可以在你的程序里引入新的名字和构造.举例来说,你可以使用声明来引入函数和方法,变量和常量,或者来定义 新的命名好的枚举,结构,类和协议类型.你也可以使用一条声明来延长一个已经存在的命名好的类型 ...

  7. 一个php的爬虫,将笔趣阁的书可以都下载下来。

    数据库:book 表id ---- 数据库: `book`-- -- -------------------------------------------------------- ---- 表的结 ...

  8. JMeter学习-010-JMeter 配置元件实例之 - CSV Data Set Config 参数化配置

    众所周知,在进行接口测试的过程中,需要创建不同的场景(不同条件的输入,来验证不同的入参的返回结果).因而,在日常的自动化接口监控或商品监控等线上监控过程中,需要配置大量的入参来监控接口的返回是否正确. ...

  9. elasticsearch使用操作部分

    本片文章记录了elasticsearch概念.特点.集群.插件.API使用方法. 1.elasticsearch的概念及特点.概念:elasticsearch是一个基于lucene的搜索服务器.luc ...

  10. spring MVC配置详解

    现在主流的Web MVC框架除了Struts这个主力 外,其次就是Spring MVC了,因此这也是作为一名程序员需要掌握的主流框架,框架选择多了,应对多变的需求和业务时,可实行的方案自然就多了.不过 ...