绘制图片

一.绘制图片 context.drawImage()(即把图片放到canvas里)

var image = new Image();  // 先创建图片对象
image.src = '图片的位置';

1. context.drawImage(image,20,20);   //三个参数 1.图片 2.x轴位置 3.y轴位置  图片的原本大小

2. context.drawImage(image,0,0,300,400)  //5个参数 1.图片 2.x轴位置 3.y轴位置 4.绘制图片的宽度 5. 绘制图片的高度

3.context.drawImage(image,10,10,100,100,200,200,100,100); //9个参数 1.图片对象 2.3.4.5.个参数 我们截取部分的图片中的位置和大小
                                                                                                   6,7个参数是新图的位置 8,9, 截取后图片的大小

image.onload = function(){
context.drawImage(image,0,0,300,400);  // 5个参数 1.图片 2.x轴位置 3.y轴位置 4.绘制图片的宽度 5. 绘制图片的高度

二.改变图片像素的颜色  context.putImageData()

概念:对imagedata数组中的各个像素的r、g、b、a值进行修改,再调用putImageData方法进行绘制;

绘制文字

填充文字: context.fillText(text,x,y)      // 实心文字                  x:文字起点的x坐标轴     y:文字起点的y坐标轴 

绘制文字轮廓 : context.strokeText(text,x,y)  // 空心文字          

绘制文字样式:context.font:'40px Arial';  // 40px大小的Arial

水平对齐方式:  context.textAlign: ( start、end、right、center);  

垂直对齐方式:  context.textBaseline( top、hanging、middle、alphabetic、ideographic、bottom);

 下面是代码和 输入的样式:

context.font = '40px Arial';
var text = 'fill 的例子演示';
context.fillText(text,100,100);
context.strokeText(text,100,150);

储存

context.save():调用该方法,会保存当前context的状态、属性(把他理解成游戏存档)

恢复

context.restore():调用该方法就能恢复到save时候context的状态、属性(游戏回档)

绘制贝赛尔曲线

context.bezierCurveTo(x1,y1,x2,y2,x3,y3);    // (x1,y1)第一个控制点 (x2,y2)第二个控制点 (x3,y3)锚点

绘制二次样条曲线

context.quadraticCurveTo(x1,y1,x2,y2);   //  (x1,y1)控制点 (x2,y2)锚点

图片的平铺

context.createPattern(image, no-repeat || repeat-x || repeat-y || repeat) ;

no-repeat  不平铺  repeat-x 沿x轴平铺  repeat-y 沿y轴平铺  reoeat 全图平铺

图片的剪裁

context.clip()  //只绘制封闭路径区域内的图像,不绘制路径外部图像,用的时候 1.先创建裁剪区域 2.再绘制图像

HTML5 中的 canvas 画布(二)的更多相关文章

  1. HTML5 中的 canvas 画布(一)

    ---恢复内容开始--- 在HTML5中新添加的元素,canvas 现在支持 IE9+的版本 注意:HTML5 <canvas> 元素用于图形的绘制,通过脚本 (通常是JavaScript ...

  2. HTML5中的canvas基本概念及绘图

    * Canvas(画布) * 基本内容 * 简单来说,HTML5提供的新元素<canvas> * Canvas在HTML页面提供画布的功能 * 在画布中绘制各种图形 * Canvas绘制的 ...

  3. 【javascript】html5中使用canvas编写头像上传截取功能

    [javascript]html5中使用canvas编写头像上传截取功能 本人对canvas很是喜欢,于是想仿照新浪微博头像上传功能(前端使用canvas) 本程序目前在谷歌浏览器和火狐浏览器测试可用 ...

  4. HTML5中的Canvas详解

    什么是Canvas HTML5 <canvas> 元素用于图形的绘制,通过脚本 (通常是JavaScript)来完成.<canvas> 标签只是图形容器,您必须使用脚本来绘制图 ...

  5. HTML5入门十一---Canvas画布实现画图(二)

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  6. HTML5中的 Canvas

    什么是Canvas? Canvas元素是HTML5的一部分,允许脚本语言动态渲染位图像.Canvas由一个可绘制地区HTML代码中的属性定义决定高度和宽度.JavaScript代码可以访问该地区,通过 ...

  7. HTML5中的Canvas

    1.Canvas标签的宽高一定要设置在标签上或者采用js添加属性,如果用css去设置的话,会把画布被拉伸,相当于将默认的画布拉伸到指定位置.默认为300px*100px; <canvas wid ...

  8. HTML5中的Canvas和SVG

    Canvas 和 SVG 都允许我们在浏览器中创建图形,但是它们在根本上是不同的. 1 SVG SVG 是一种使用 XML 描述 2D 图形的语言. SVG 基于 XML,这意味着 SVG DOM 中 ...

  9. 第七讲:HTML5中的canvas两个小球全然弹性碰撞

    <html> <head> <title>小球之间的碰撞(全然弹性碰撞)</title> <script src="../js/jsce ...

随机推荐

  1. html drag api 在firefox 下 拖动出现新窗口的解决办法

    有个功能,需要用drag drop api 来做. 发现在firefox下拖放,会出现新的tab 页签,即使在ondragover.ondrop中使用了event.preventDefault也无济于 ...

  2. 新建structs2 web应用及structs.xml常用基础配置

    建立一个structs2 web应用程序 1. 创建一个基本的web应用程序 2. 添加structs2的jar文件到Class Path 将structs2的最小jar包拷到WEB-INF/lib目 ...

  3. Workload Automation分析及其使用

    Workload Automation介绍 Workload Automation是提供一个在设备上运行各种workload的工具,使用Python编写.WA具有良好的框架结构,方便快捷的扩展.包含几 ...

  4. form 表单基础知识

    <form method=" name="one" action="http://www.battlenet.com.cn/zh/"> & ...

  5. vector定义初始化

    头文件 #include<vector> using std::vector; vector<T> v1; vector<T> v2(v1); vector< ...

  6. Mysql 中文乱码(Navicat for MySQL)

    在使用Navicat for MySQL查看插入数据库的数据时,发现中文显示为乱码.搞了好久,理清思路如下: 确定mysql本身编码设置为utf8(也可以为gbk gb2312等) 用Navicat ...

  7. javadoc

    Oracle官方javadoc说明 Generates HTML pages of API documentation from Java source files. http://docs.orac ...

  8. time step和采样频率的关系

    当前的采样频率为11025HZ,overlap=0.5,取的是1024个采样点为1帧.则time step为256时的时间长度为11秒.即以11秒为单位分割原始的音频,生成一张语普图. >> ...

  9. Bzoj4008 [HNOI2015]亚瑟王

    Time Limit: 20 Sec  Memory Limit: 512 MBSec  Special Judge Submit: 1009  Solved: 605[Submit][Status] ...

  10. 【CoreAnimation】1 到 5

    学习资源来自:图层树 . Quartz 2D Core Animation 复合引擎,职责为尽可能快地组合屏幕上不同的可视内容.这些内容被分解成多个独立的图层,存储在 图层树 的体系中.于是这个树形成 ...