中国人民大学:《程序设计实践》课程教学资源(讲稿)第7讲 Canvas游戏

第7讲 Canvas?游戏 信息学院孙辉
第7讲 信息学院 孙辉 Canvas游戏

内容 ■Canvas基础 Canvas基本动画
内容 ▪Canvas基础 ▪Canvas基本动画

Canvas基础 ·canvas元素是HTML5中新增的一个重要元素, 专门用来绘制图形。 ·在页面上放置一个canvas元素就相当于在页 面上放置了一块“画布”,它是一个矩形区 域,您可以控制其每一像素。可以在其中进 行图形的描绘。 canvas拥有多种绘制路径、矩形、圆形、字 符以及添加图像的方法。 canvas元素本身是没有绘图能力的。所有的 绘制工作必须在JavaScript内部完成
Canvas基础 • canvas元素是HTML5中新增的一个重要元素, 专门用来绘制图形。 • 在页面上放置一个canvas元素就相当于在页 面上放置了一块“画布”,它是一个矩形区 域,您可以控制其每一像素。可以在其中进 行图形的描绘。 • canvas 拥有多种绘制路径、矩形、圆形、字 符以及添加图像的方法。 • canvas 元素本身是没有绘图能力的。所有的 绘制工作必须在 JavaScript 内部完成

Canvas元素的基础知识 ·:看起来很像,唯一不同就是它不 含src和alt属性。 它只有两个属性,width和height,两个都是可 选的,并且都可以DOM或者CSS来设置。 ·如果不指定width和height,默认的是宽3oo像 素,高150像素。 ·虽然可以通过CSS来调整canvas的大小,但渲 染图像会缩放来适应布局的。 结束标签是必须的
Canvas元素的基础知识 • 看起来很像,唯一不同就是它不 含 src 和 alt 属性。 • 它只有两个属性,width 和 height,两个都是可 选的,并且都可以 DOM 或者 CSS 来设置。 • 如果不指定width 和 height,默认的是宽300像 素,高150像素。 • 虽然可以通过 CSS 来调整canvas的大小,但渲 染图像会缩放来适应布局的 。 • 结束标签 是必须的

放置Canvas .canvas{width:15opx;height:15opx; 写在这里面的内容将展示给不兼容canvas的浏览器 演示
放置Canvas .canvas { width:150px; height:150px;} 写在这里面的内容将展示给不兼容canvas的浏览器 演示

创建canvans元素 ■Canvan标签 "规定元素的id、宽度和高度 "默认宽300像素,高150像素 ■当web浏览器不支持Canvans时的反馈信息 写在这里面的内容将展示给不兼容canvas的浏览器
创建canvans元素 ▪Canvan标签 ▪规定元素的 id、宽度和高度 ▪默认宽300像素,高150像素 ▪当web浏览器不支持Canvans时的反馈信息 写在这里面的内容将展示给不兼容canvas的浏览器

实例:在canvas中绘制矩形 your browser does not support the canvas tag 得到画布 var canvas=document.getElementByld('myCanvas); var ctx=canvas.getContext('2d) ctx.fillStyle='#FF0000'; 创建context对象; ctx.fillRect(0,0_80,100): getContext("2d")对象是内建 的HTML5对象,拥有多种绘 fillStyle方法将context对象染 制路径、矩形、圆形、字符以 <body≥ 成红色, 及添加图像的方法 fillRect方法规定了形状、位 置和尺寸。 fillRect方法拥有参数(0,0,80,100). 意思是:在画布上绘制80x100的矩形,从左上角开始(0,0) 理解坐标
实例: 在canvas中绘制矩形 your browser does not support the canvas tag var canvas=document.getElementById('myCanvas'); var ctx=canvas.getContext('2d'); ctx.fillStyle='#FF0000'; ctx.fillRect(0,0,80,100); 得到画布 创建 context 对象; getContext("2d") 对象是内建 的 HTML5 对象,拥有多种绘 制路径、矩形、圆形、字符以 及添加图像的方法 fillStyle 方法将context对象染 成红色, fillRect 方法规定了形状、位 置和尺寸。 fillRect 方法拥有参数 (0,0,80,100)。 意思是:在画布上绘制 80x100 的矩形,从左上角开始 (0,0)。 理解坐标

HTML DOM getContext()方法 定义和用法 getContext()方法返回一个用于在画布上绘图的环境。 语法 Canvas.getContext(contextID) 参数 指定了您想要在画布上绘制的类型。当前唯一的合法值 是”2d”,它指定了二维绘图,并且导致这个方法返回一个环 境对象,该对象导出一个二维绘图API。 提示:未来如果标签扩展到支持3D绘图 getContext(O方法可能允许传递一个"3d'字符串参数。 返回值 一个CanvasRenderingContext2D对象,用它可以绘制到 Canvas元素中,实现了一个画布所使用的大多数方法
HTML DOM getContext() 方法 定义和用法 getContext() 方法返回一个用于在画布上绘图的环境。 语法 Canvas.getContext(contextID) 参数 指定了您想要在画布上绘制的类型。当前唯一的合法值 是”2d”,它指定了二维绘图,并且导致这个方法返回一个环 境对象,该对象导出一个二维绘图 API。 提示: 未来如果 标签扩展到支持3D绘图, getContext()方法可能允许传递一个”3d”字符串参数。 返回值 一个 CanvasRenderingContext2D 对象,用它可以绘制到 Canvas 元素中,实现了一个画布所使用的大多数方法

设置绘图样式 ·填充样式 fillStyle()颜色值支持半透明 ·描边样式 ·strokeStyle颜色值支持半透明 ·设定线条样式 ·设定线宽lineWidth() ·设定图线帽样式lineCap butt','round,'square' 。 线的链接样式lineJoin 'round,bevel','miter' ·绘制渐变 ·绘制线性渐变 ·绘制径向渐变
设置绘图样式 • 填充样式 • fillStyle() 颜色值支持半透明 • 描边样式 • strokeStyle() 颜色值支持半透明 • 设定线条样式 • 设定线宽 lineWidth() • 设定图线帽样式 lineCap 'butt','round','square' • 线的链接样式 lineJoin 'round','bevel','miter' • 绘制渐变 • 绘制线性渐变 • 绘制径向渐变

颜色、样式和阴影 颜色、样式和阴影 属胜 描述 fillStyle 设置或返回用于填充绘画的颜色、渐变或模式 strokeStyle 设置或返回用于笔的颜色、渐变或模式 shadowColor 设置或返回用于阴累的颜色 shadowBlur 设置或返回用于阴景的模糊级别 shadowOffset)☒ 设置或返回阴影距形状的水平距离 shadowoffsetY 设置或返回阴影距形状的垂直距离
颜色、样式和阴影
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 中国人民大学:《程序设计实践》课程教学资源(讲稿)第6讲 Javascript HTML DOM.pdf
- 中国人民大学:《程序设计实践》课程教学资源(讲稿)第5讲 Javascript入门.pdf
- 中国人民大学:《程序设计实践》课程教学资源(讲稿)第3讲 CSS层叠样式表.pdf
- 中国人民大学:《程序设计实践》课程教学资源(讲稿)第2讲 HTML速成(主讲:孙辉).pdf
- 中国人民大学:《程序设计实践》课程教学资源(讲稿)第1讲 Web编程介绍(基于Web的软件开发及HTML5基础).pdf
- 私立华联学院:《云计算技术与应用基础》课程教学资源(PPT课件)Chap08 云应用.ppt
- 私立华联学院:《云计算技术与应用基础》课程教学资源(PPT课件)Chap07 云技术.ppt
- 私立华联学院:《云计算技术与应用基础》课程教学资源(PPT课件)Chap06 云安全.ppt
- 私立华联学院:《云计算技术与应用基础》课程教学资源(PPT课件)Chap05 云桌面.ppt
- 私立华联学院:《云计算技术与应用基础》课程教学资源(PPT课件)Chap04 云服务.pptx
- 私立华联学院:《云计算技术与应用基础》课程教学资源(PPT课件)Chap03 云存储.pptx
- 私立华联学院:《云计算技术与应用基础》课程教学资源(PPT课件)Chap02 云标准.ppt
- 私立华联学院:《云计算技术与应用基础》课程教学资源(PPT课件)Chap01 云概述(主讲:崔英敏).ppt
- 私立华联学院:《云计算技术与应用基础》课程教学资源(PPT课件)云计算基础课程简介(主讲:崔英敏).ppt
- 私立华联学院:《云计算技术与应用基础》课程教学资源(试卷习题)第8章 云应用.doc
- 私立华联学院:《云计算技术与应用基础》课程教学资源(试卷习题)第7章 云技术.doc
- 私立华联学院:《云计算技术与应用基础》课程教学资源(试卷习题)第6章 云安全.doc
- 私立华联学院:《云计算技术与应用基础》课程教学资源(试卷习题)第5章 云桌面.doc
- 私立华联学院:《云计算技术与应用基础》课程教学资源(试卷习题)第4章 云服务.doc
- 私立华联学院:《云计算技术与应用基础》课程教学资源(试卷习题)第3章 云存储.doc
- 中国人民大学:《程序设计实践》课程教学资源(讲稿)第9讲 jQuery简介.pdf
- 中国人民大学:《程序设计实践》课程教学资源(讲稿)Fundamentals of Git.pdf
- 中国人民大学:《程序设计实践》课程教学资源(讲稿)第11讲 Untangle Puzzle Game.pdf
- 北京化工大学:《大学计算机基础》课程教案资源(教案讲义)教学大纲 The Foundation of University Computer(负责人:朱群雄).doc
- 北京化工大学:《大学计算机基础》课程电子教案(PPT教学课件)第1章 计算机与信息技术概述.ppt
- 北京化工大学:《大学计算机基础》课程电子教案(PPT教学课件)第2章 计算机系统结构与硬件基础.ppt
- 北京化工大学:《大学计算机基础》课程电子教案(PPT教学课件)第3章 操作系统.ppt
- 北京化工大学:《大学计算机基础》课程电子教案(PPT教学课件)第4章 计算机网络技术基础.ppt
- 北京化工大学:《大学计算机基础》课程电子教案(PPT教学课件)第5章 程序设计与软件工程基础.ppt
- 北京化工大学:《大学计算机基础》课程电子教案(PPT教学课件)第6章 数据库基础.ppt
- 北京化工大学:《大学计算机基础》课程电子教案(PPT教学课件)第7章 多媒体技术基础.ppt
- 北京化工大学:《数据结构》课程PPT教学课件(C语言描述)第一章 绪论(负责人:侯虹).ppt
- 北京化工大学:《数据结构》课程PPT教学课件(C语言描述)第二章 线性表.ppt
- 北京化工大学:《数据结构》课程PPT教学课件(C语言描述)第三章 栈和队列.ppt
- 北京化工大学:《数据结构》课程PPT教学课件(C语言描述)第五章 图.ppt
- 北京化工大学:《数据结构》课程PPT教学课件(C语言描述)第六章 查找.ppt
- 同济大学:《逻辑网络》课程教学资源(教学大纲)逻辑网络(中文,负责人:周俊鹤).doc
- 同济大学:《逻辑网络》课程教学资源(教学大纲)逻辑网络(英文)Logic networks.doc
- 同济大学:《逻辑网络》课程教学资源(试卷习题)考试样卷.doc
- 同济大学:《逻辑网络》课程电子教案(PPT课件)同步时序电路设计中的问题 Advanced design issue.ppt