文档库 最新最全的文档下载
当前位置:文档库 › HTML5 canvas 初级入门教程

HTML5 canvas 初级入门教程

HTML5 canvas 初级入门教程
HTML5 canvas 初级入门教程

HTML5 canvas 初级入门教程
HTML5 canvas 即 HTML5 画布,是一个现代浏览器都支持的 HTML5 非插件绘图的功能,本 文将展示如何通过 HTML5 canvas API 操作 canvas 元素、绘制图形、改变绘图颜色以及删 除图形,让我们开始进入这很酷的新技术的短暂旅行吧。
canvas 元素简介
使用 canvas 元素相当简单,它只是一个单纯的 HTML 标签,外加宽高两个特性。

上面的代码在页面中插入了一个透明的画布,canvas 元素内部的内容可以在不支持 canvas 功能的浏览器下显示你想给你的用户提供的信息,联想下

探索 2d 渲染环境
我们上面提到的 canvas 元素只是 canvas 功能的一部分,另一部分是 2d 渲染环境,它可以 让你实现很酷的看得到的东西。 需要完全理清的是:当你使用 canvas,你不是在 canvas 元素上画图,事实上你是在 canvas 元素内部的 2d 渲染环境上。
坐标系统
如果你曾经使用过 2d 绘图编程语言(比如 ActionScript、Processing 等),你应该会了解基 于屏幕(screen-based)的坐标系统。canvas 内部的 2d 渲染环境并没有什么不同之处,它 采用标准的笛卡尔坐标系统,原点位于屏幕左上角,向右移动会增加 x 坐标的值,向下移动 会增加 y 坐标的值,很容易理解。
通常坐标系统的单位是屏幕的 1 像素。
操作 2d 渲染环境
需要利用 Javascript 提供的 API 来获取 2d 渲染环境对象,该方法为:getContext(),看下简 单的例子:



通过调用 canvas 对象的 getContext()方法,c 变量就包含了指向 2d 渲染环境的引用,这意 味着你现在已经完成了在画布上绘图的一切准备,接下来可以开始绘图了。
绘制矩形
获得了 2d 渲染环境对象,就可以通过调用 API 提供的大量方法来进行绘图了,一个最基本 的方法就是 fillRect(),通过它可以绘制一个填充颜色的矩形(颜色默认值为黑色)。 在 c 变量的下面增加以下代码:
c.fillRect(0, 0, 50, 50);
这将在画布左上角绘制绘制一个黑色背景的正方形:
在调用 fillRect()方法时传入了 4 个参数:
? ? ? ?
第一个是基于原点的 x 坐标位置 第二个是基于原点的 y 坐标位置 第三个是宽度 第四个是高度 fillRect 的伪代码看起来应该像这个样子:
c.fillRect(x, y, width, height);
很酷的是,不仅可以绘制填充的矩形,你还可以绘制线框矩形,使用 strokeRect()方法,绘 制四周产生描边效果的矩形,如:

c.strokeRect(50, 50, 100, 100);
strokeRect 的参数与 fillRect 是一致的,绘制的结果如下:
利用 canvas 绘图,简单、优美,所有的方法都很易懂,但是当放在一起使用可以让你画出 很漂亮的图形。
绘制路径
矩形是唯一一个可以通过单个 API 方法绘制的图形,先把它放在一边,我们来学习下路径 (Paths)绘制。使用路径,可以绘制线条、连续的曲线以及复合图形。 绘制一个简单的路径需要利用一些 AIP 方法:
beginPath 开始一个新路径 moveTo 移动路径的绘图起点 lineTo 从 moveTo 定义的点开始绘制连续的路径,或者从上一次的 lineTo 的终点开始绘制。 closePath 连接最后的点和最初的点并关闭路径绘制 fill 用颜色填充路径 stroke 描变路径
尝试执行下面的代码:
c.beginPath(); c.moveTo(50, 50); c.lineTo(50, 250); c.lineTo(250, 250); c.closePath; c.fill();

执行结果为:
你可以用同样的方法绘制你希望的图形,canvas 还包含更高级的路径绘制,比如圆弧(可 以绘制圆形)和贝塞尔曲线(用于绘制很酷的曲线效果),总之,绘制路径要比绘制矩形复 杂的多。
改变颜色
到目前为止,我们的示例所绘制的都是填充或描边的黑色,canvas 也提供了一些属性用于 改变绘制图形的颜色,它们是 fillStyle 和 strokeStyle,它们的语法都是可以自解释的,所以 我们直接来改变一个矩形的填充颜色:
c.fillStyle = "rgb(255, 0, 0)"; c.fillRect(50, 50, 100, 100);
结果:
或者,你可以改变描边的颜色:
c.strokeStyle = "rgb(255, 0, 0)"; c.strokeRect(50, 50, 100, 100);
结果:

fillStyle 和 strokeStyle 属性很漂亮的一点就是, 它们都支持普通 CSS 颜色值, 这意味着你可 以使用 RGB、RGBA、HSA、颜色名称以及十六进制颜色值。 还有一点需要指出的是,改变画布中的颜色值不会影响已经绘制的任何图形,例如,如果你 绘制了一个黑色的矩形,然后设置填充为红色,接着绘制了另一个矩形,这时第一个矩形仍 然为黑色。
改变线宽
除了可以改变颜色,还可以利用 lineWidth 属性改变描边线条的宽度,按照上面的例子,改 变线条宽度:
c.lineWidth = 20; c.strokeStyle = "#f00"; c.strokeRect(50, 50, 100, 100);
结果:
同样的可以改变路径的线宽:
c.lineWidth = 20; c.beginPath(); c.moveTo(50, 50); c.lineTo(50, 250); c.lineTo(250, 250);

c.closePath(); c.stroke();
结果:
还有一些其它的改变线条的方式,比如 lineCap 设置线条的末端,lineJoin 设置线条的角。
删除图形
最后我们来了解下如何删除已经绘制的图形,删除图形只需 Javascript API 提供的一个名为 clearRect 的方法,其原理是使参数指定的矩形区域背景变为透明。 本文示例画布长宽分别为 500 像素,要想删除整个画布图形,可以这样做:
c.fillRect(50, 50, 100, 100); c.clearRect(0, 0, 500, 500);
上面的代码执行后,你会什么都看不到,事实上填充的矩形已经绘制,只是瞬间被删除了, 所以你看不到它。 如果你不清楚画布的具体宽高,清除整个画布可以这样:
c.clearRect(0, 0, canvas.width, canvas.height);
删除画布中的区域
如果你不想删除整个画布的图形,而仅仅删除画布中的一个区域,假如,你绘制了一个黑色 的正方形,旁边绘制了一个红色的正方形:

c.fillRect(50, 50, 100, 100); c.fillStyle = "#f00"; c.fillRect(200, 50, 100, 100);
看起来是这个样子:
接下来你可以通过 clearRect 删除黑色背景的正方形而只保留红色正方形:
c.clearRect(50, 50, 100, 100);
注意传入 clearRect 的参数能确保能覆盖要被删除的图形的区域。
结语
canvas 易于使用、上手快速,并且强大的要死(唉,自己翻译的文章自己不敢读,太拗口 了)
英文原文:Canvas From Scratch: Introducing Canvas

HTML5基础入门教程(小编搜集辛苦啊,必看)

HTML5教程 什么是HTML5? HTML5 将成为HTML、XHTML 以及HTML DOM 的新标准。 HTML 的上一个版本诞生于1999 年。自从那以后,Web 世界已经经历了巨变。HTML5 仍处于完善之中。然而,大部分现代浏览器已经具备了某些HTML5 支持。 你是不是多少有了解一点,但是你却对这个不精啊!可以进群交流,⑤①④①⑥⑦⑥⑦⑧。HTML5 是如何起步的? HTML5 是W3C 与WHATWG 合作的结果。 编者注:W3C 指World Wide Web Consortium,万维网联盟。 编者注:WHATWG 指Web Hypertext Application Technology Working Group。WHATWG 致力于web 表单和应用程序,而W3C 专注于XHTML 2.0。在2006 年,双方决定进行合作,来创建一个新版本的HTML。 为HTML5 建立的一些规则: ?新特性应该基于HTML、CSS、DOM 以及JavaScript。 ?减少对外部插件的需求(比如Flash) ?更优秀的错误处理 ?更多取代脚本的标记 ?HTML5 应该独立于设备 ?开发进程应对公众透明 新特性 HTML5 中的一些有趣的新特性: ?用于绘画的canvas 元素

?用于媒介回放的video 和audio 元素 ?对本地离线存储的更好的支持 ?新的特殊内容元素,比如article、footer、header、nav、section ?新的表单控件,比如calendar、date、time、email、url、search 浏览器支持 最新版本的Safari、Chrome、Firefox 以及Opera 支持某些HTML5 特性。Internet Explorer 9 将支持某些HTML5 特性。 HTML 5 视频 许多时髦的网站都提供视频。HTML5 提供了展示视频的标准。 Web 上的视频 直到现在,仍然不存在一项旨在网页上显示视频的标准。 今天,大多数视频是通过插件(比如Flash)来显示的。然而,并非所有浏览器都拥有同样的插件。 HTML5 规定了一种通过video 元素来包含视频的标准方法。 视频格式 当前,video 元素支持两种视频格式: Internet Explorer Firefox 3.5 Opera 10.5 Chrome 3.0 Safari 3.0 Ogg X X X MPEG 4 X X Ogg = 带有Thedora 视频编码和Vorbis 音频编码的Ogg 文件 MPEG4 = 带有H.264 视频编码和AAC 音频编码的MPEG 4 文件

html5入门视频教程百度网盘

html5入门视频教程百度网盘 近几年html5前端开发相当火爆,可以说引领了IT培训行业的新的潮流,越来越多人加入到了html5前端开发的行列中来。想要学好web前端,你需要一份较新且完善的学习资料,现在就给大家千锋教html5入门视频教程百度网盘云分享,希望对所有想学习html5前端的同学有所帮助。 千锋教程第1部分:课程体系解读 https://www.wendangku.net/doc/431625445.html,/s/1o7B9OYA 千锋教程第2部分:微案例讲解 https://https://www.wendangku.net/doc/431625445.html,/s/1nwyNFg1 千锋教程第3部分:知识点讲解 https://www.wendangku.net/doc/431625445.html,/s/1jICHs9o 千锋Vue组件之手机通讯录实战课程

https://www.wendangku.net/doc/431625445.html,/s/1c1FrXLY 千锋微信小程序基础与实战 https://https://www.wendangku.net/doc/431625445.html,/s/1xE35SQcvW0sCF2NoR_ONiw 目前前端工程师人员的缺口很大,而2年工作经验的html5前端开发工资10K~15K左右。如果你会一些后台技术,并且前端技术很厉害,到20K也是可能的。工资的多少主要取决于你的技术情况,所以工资是不确定的。前景不错,选择现在学习前端技术,也更容易高薪就业。 前端开发主要是做什么?是利用HTML/CSS/JavaScript/DOM/Flash等各种Web技能结合产品的界面开发。制作标准化纯手工代码,并增加交互功能,开拓JavaScript和Flash模块,同时结合后端开拓技能仿照全部效果,结束丰富互联网的Web开拓,致力于经过进程技能改进用户体验。而其所需技能则是学习html,这个是简单的,也是基础的;学习css;js;jquery;那样就业面试时更有优势。 千锋教育html5前端全栈课程培训,致力于培养覆盖前端+后台+全栈开

《HTML5+CSS3网站设计基础教程》_教学大纲

《HTML5+CSS3网站设计基础教程》课程教学大纲 (课程英文名称) 课程编号:201601210011 学分:5学分 学时:76学时(其中:讲课学时:47 一、课程的性质与目标 《HTML5+CSS3网站设计基础教程》是面向计算机相关专业的一门专业基础课,涉及网页基础、HTML标记、CSS样式、网页布局、变形与动画等内容,通过本课程的学习,学生能够了解网页web发展历史及其未来方向,熟悉网页设计流程、掌握网络中常见的网页布局效果及变形和动画效果,学会制作各种企业、门户、电商类网站。

二、课程设计理念与思路 课程设计理念:高职教育的集中实践教学环节需明确必要的理论知识的生化与知识层面的拓展,不能局限 于单纯的技能训练。单纯的技能训练不是提高高等职业教育的理想课程。以能力的培养为重点,以就业为导向,培养学生具备职业岗位所需的职业能力,职业生涯发展所需的能力和终身学习的能力,实现一站式教学理念。 课程设计思路:基于工作过程开发课程内容,以行动为导向进行教学内容设计,以学生为主体,以案例 (项目)实训为手段,设计除理论学习与技能掌握相融合的课程内容体系。教学整体设计“以职业技能培养为 目标,以案例(项目)任务实现为载体、理论学习与时间操作相结合”。 开发工具:DreamweaverCS6 第一章初识HTML5

第二章HTML5页面元素及属性

第四章CSS3选择器

e g o o d f o 背景与图片不透明度的设置 √ 设置背景图像平铺√ 设置背景图像的位置√ 设置背景图像固定√设置背景图像的大小√设置背景的显示区域√设置背景图像的裁剪区域√设置多重背景图像√背景复合属性√线性渐变√径向渐变√重复渐变 √ 第七章表单的应用

html5教程视频教程网盘下载

html5教程入门视频网盘下载 学习HTML、CSS基础知识,实现PC端静态页面制作(例如京东商城),响应式网页布局的制作(微软中国官网)、及WebApp页面布局(淘宝、美团等)。 html5前端人才已成为IT职场的紧缺型人才,如何自学html5?如何短时间内迅速提升html5开发能力?千锋教育html5教程入门视频网盘下载(https://www.wendangku.net/doc/431625445.html,/video/html5_download.html),助力大家成为企业不可多得的贤才。 实现这些需要的知识有 1、学习HTML基本语法:双标签、单标签语法结构。 2、常用标签:标题标签、段落标签、布局标签、表格、列表、标签标签。 3、学习CSS基本语法:选择器声明。 4、学习CSS的三种样式表:内联、内部、外部 5、学习CSS的各种常用选择器 6、学习CSS的选择器、样式表的优先级和权重问题。 7、学习CSS的核心属性及属性值 8、学习CSS的元素类型的转换

9、学习CSS的定位锚地的应用 10、学习CSS中的图片整合技术的应用 11、学习CSS中常见的浏览器的兼容及解决方法 12、学习HTML5新增元素及属性 13、学习CSS3新增选择器的应用 14、学习CSS3的2D、3D、关键帧动画的相关应用 15、学习CSS3中弹性盒的应用 16、学习CSS3中媒体查询响应式的设计应用 学习JavaScript和jQuery及掌握一门后台程序语言的简单基础和一个数据库,实现PC端项目交互开发(做一个电商类型的网站开发) 需要的知识有 1、学习JavaScript的基本语法 2、学习JavaScript的循环语句 3、学习JavaScript的函数与数组 4、学习JavaScript的String和Data 5、学习JavaScript的BOM与DOM 6、学习JavaScript的相关事件 7、学习JavaScript的拖拽效果 8、学习JavaScript的cookie存储 9、学习JavaScript的正则表达式 10、学习JavaScript的Ajax的应用 11、学习JavaScript的面相对象基础

Html5程序设计基础教程

第1章HTML 5概述 一、选择题 1.A 2.D 3.C 4.C 二、填空题 1.HyperText Markup Language 2. 3.HTML 4.UTF-8 5.

6.contextmenu 7.async 8.
9.Geolocation API 10.Web Workers 三、简答题 1.答:
标签用于定义文档中的区段。
标签用于定义文档的页眉(介绍信息)。