文本

  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. as关键词还有另外一个用途,那就是修改 方法 的访问控制

    PHP是单继承的语言,在PHP 5.4 Traits出现之前,PHP的类无法同时从两个基类继承属性或方法.php的Traits和Go语言的组合功能类似,通过在类中使用use关键字声明要组合的Trait ...

  2. URAL 2080 莫队

    题意 有m种卡 给出卡的使用序列 要求每次从卡堆的顶部抽一张出来 刚好符合序列 输出初始 卡堆的排序 再输出每次抽出卡用后 卡插回卡堆的时候 这张卡上面有几张卡 初始排序很容易就可以搞出来 但是需要注 ...

  3. fopen w c

    http://php.net/manual/en/function.fopen.php

  4. only for equality comparisons Hash Index Characteristics

    http://dev.mysql.com/doc/refman/5.7/en/index-btree-hash.html Hash Index Characteristics Hash indexes ...

  5. markdown 设置字体颜色

    <font color=red>内容</font> markdown.

  6. LeetCode Shortest Distance from All Buildings

    原题链接在这里:https://leetcode.com/problems/shortest-distance-from-all-buildings/ 题目: You want to build a ...

  7. magento 备份

    magento 备份分为“文件备份”和“数据备份” 我们先来讲下“数据备份” 数据备份的方法有 通过数据库软件直接导出magento使用的数据库,使用mysql命名或者phpmyadmin,导出来就好 ...

  8. Javascript AMD学习

    我们知道在其它编程语言中, 都有包(命令空间)的概念, 帮助我们更好的管理代码结构. 如java中的package, python中的module. 但是在js语言中, 在一个页面执行环境内, 所有引 ...

  9. file_get_contents抓取远程URL内容

    /** * POST URL * @param $url * @param null $post * @return false / string */ public static function ...

  10. Spring+Mybatis+Maven+MySql搭建实例

    林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主要讲了如何使用Maven来搭建Spring+Mybatis+MySql的的搭建实例 ...