html的canvas怎么用,canvas高级教程

  html的canvas怎么用,canvas高级教程

  HTML5

  HTML5到底是什么?在W3C HTML5的FAQ中,说明了HTML5是在开放平台下开发的免费许可条款。

  具体来说,对这句话有以下两种理解:

  "

  指共同构成未来开放网络平台的一组技术。这些技术包括HTML5规范、CSS3、SVG、MATHML、地理位置、XmlHttpRequest、上下文2D、Web字体等技术。这组技术的边界是非正式的,并且随着时间而变化。

  它参考了HTML5规范,当然也是开放网络平台的一部分。

  Canvas的浏览器支持下面,我列出了最流行的Web浏览器以及它们开始支持Canvas元素的最低版本号。Safari Firefox IE Chrome Opear iOS Safari Android Brower 3.2 3.5 9 9 10.6 3.2 2.1

  这里推荐使用Chrome。

  简单的HTML5页面

  XML/HTML代码将内容复制到剪贴板!Doctype HTML HTML lang= zh head元字符集= UTF-8 基于标题的HTML 5 page/Title/head body hello airing!/body/html演示的运行结果如下:

  HTML由形状像尖括号的标记元素组成。这些标签通常成对出现,标签只能嵌套不能交叉。

  扩展:

  成对的叫闭标,单个的叫单标。反正是封闭的(单个标签可以不封闭,但在XHTML中是严格要求的)。结束标签分为开始标签和结束标签,比如body是开始标签,/body是结束标签。因为输入/br/等标签。

  更多的标签,建议你自己了解一下。W3school平台推荐自学。

  这里我们关注出现在上面代码中的标签。

  XML/HTML代码将内容复制到剪贴板!doctypehtml标记指示Web浏览器将以标准模式呈现页面。根据W3C定义的HTML5规范,这对于HTML5文档是必要的。这个标签简化了长期以来在不同浏览器中呈现HTML页面的奇怪差异。它通常是文档的第一行。

  XML/html代码将内容复制到剪贴板htmllang=en 这是一个带有语言描述的html标记,例如, en 是英文, zh 是中文。

  XML/HTML代码将内容复制到剪贴板。两个标记,头./head,分别表示头信息的开始和结束。页眉中包含的标记是页面的标题、前言、描述等内容。不是作为内容本身显示,而是影响网页的显示效果。标题中最常用的标签是title标签和meta标签。

  下表列出了HTML head元素下的所有标记和函数:标记描述head定义文档标题的信息定义文档的标题base定义页面的默认链接地址link标记link定义文档和外部资源之间的关系meta定义HTML文档脚本中的元数据定义客户端脚本文件样式定义HTML文档的样式文件。

  XML/HTML代码将内容复制到剪贴板元字符集=UTF-8 这个标签描述了网页浏览器使用的字符编码模式,这里通常设置为UTF-8。如果没有什么需要特别设置的,就没必要改了。这也是HTML5页面需要的元素。

  XML/HTML代码将内容复制到剪贴板标题./title此标记描述浏览器窗口中显示的HTML的标题。这是一个非常重要的标记,是搜索引擎用来收录HTML页面内容的主要信息之一。

  XML/HTML代码将内容复制到剪贴板正文./网页中显示的实际内容包含在这两个主体之间。

  综上所述,HTML5网页由第一行!Doctype html由html和html组成,而html主要分为两部分:head标签指定的head部分和body标签指定的body部分。

  这样,我们就整理出了最简单的HTML页面的基本结构。

  添加一个Canvas在HTML中添加canvas非常简单,只需在HTML的body部分添加Canvas标签即可!可以参考下面的代码。

  XML/HTML代码将内容复制到剪贴板!typehtmlhtml lang= zh headmethacharaset= UTF-8 基于标题的html 5 page/Title/headby Canvas ID= canvas 您的浏览器不支持canvas?赶紧换!/canvas/body /html由于结果页面是一个完全空白的页面,这里就不映射了。你可能会好奇,为什么是空白的?(废话,我还没来得及画呢!Canvas的意思是画布,就是画布的意思(废话.).Canvas在HTML5中是透明不可见的。

  画布标签中的文字是什么意思?也就是一旦浏览器在执行HTML页面时不支持Canvas,就会显示这段文字。换句话说,只要您的浏览器支持Canvas,该文本就不会显示在页面上。

  画布中的id是什么意思?Id是标签的属性之一。它在JavaScript代码中用于指定特定画布的名称。就像一个人的身份证号一样,是唯一的。

  为了更清晰的展示画布,方便后续演示,我稍微修改了一下代码,后续的图纸都会画在这块画布上。

  XML/HTML代码将内容复制到剪贴板!doctype HTML HTML lang= zh head meta charaset= UTF-8 title canvas/title/headbydivid= canvas-warp canvas id= canvas style= border:1 px solid # aaaaaa;显示:块; margin:50px auto;Width=800height=600 你的浏览器不支持画布?赶紧换!/canvas/div/body/html运行结果:

  以上代码有几种解释:

  1.添加div标签并在其中包裹画布。是个人习惯,暂时没有彩蛋。

  2.指定画布标签的宽度和高度属性,并指定其宽度和高度。

  3.为canvas label添加了一个内联样式,使其成为一个块级元素并显示在中央。

  这里不解释CSS的内容。毕竟不是这门课的主角。如果扩展的话,会占用很大的空间。

  引用Canvas元素

  文档对象模型(DOM)文档对象模型(DOM)是W3C推荐的用于处理可扩展标记语言的标准编程接口。文档模型的历史可以追溯到上世纪90年代末微软和网景的“浏览器大战”。为了JavaScript和JScript的生死之战,双方都大规模赋予了浏览器强大的功能。微软在web技术中加入了许多专有的东西,包括VBScript、ActiveX和微软自己的DHTML格式等。导致很多网页无法在非微软平台和浏览器上正常显示。DOM是当时酝酿的代表作。

  文档模型表示HTML页面上的所有对象。它是语言中立和平台中立的。它允许页面的内容和样式在被Web浏览器呈现后再次更新。用户可以通过JavaScript访问DOM。

  在开始使用canvas之前,您需要了解两个特定的DOM对象:窗口和文档。

  Window对象是DOM的最高级别,因此在开始使用Canvas应用程序之前,需要检查该对象,以确保所有资源和代码都已加载。

  文档对象包含HTML页面上的所有HTML标记。需要检索这个对象来找到用JavaScript操作canvas的实例。

  JavaScript放置位置用JavaScript编程画布创建一个问题:在创建的页面中,从哪里开始JavaScript程序?

  将JavaScript放在HTML页面的head标签中是个好主意。这样做的好处是很容易找到,这一点在我们上一章对head的介绍中也有提及。但是,把JavaScript程序放在这里,就意味着整个HTML页面必须先加载JavaScript it,然后才能用HTML运行,而这段JavaScript代码会在整个页面加载之前执行。因此,在运行JavaScript程序之前,您必须检查HTML页面是否已经加载。

  最近的一个趋势是将JavaScript放在HTML文档末尾的/body标签之前,以确保JavaScript运行时整个页面已经加载完毕。但是,由于在运行canvas程序之前需要使用JavaScript来测试页面是否加载,所以最好将JavaScript放在头部。

  不过我不走寻常路(笑)所以下面的案例还是按照我自己的编码风格把JavaScript代码放在了正文的最后。当然,如果JavaScript代码太多,建议使用加载外部的方法。js文件。代码大致如下:

  代码复制内容到剪贴板脚本type= text/JavaScript src= bootstarp . js /script在实际项目开发中,HTML、CSS和JS是完全分离的。但是案例演示的代码比较少,所以大部分都没有采用加载外部的方式。js文件。

  获取canvas对象获取画布对象其实就是一句话的事情。

  代码将内容复制到剪贴板var canvas=document . getelementbyid( canvas );用于变量定义。因为JS是弱类型语言,所以所有变量都用var定义。var之后的Canvas是一个变量。使用document对象的getElementById()方法按Id获取对象。我们之前给canvas标签分配了一个id,所以这句话最后一个canvas指的是canvas id——canvas的ID。(是不是有点混乱?需要自己多读几遍才能说清楚。)

  获得画笔(2D环境)

  需要先画什么?啊,刷。获取画布画笔也是一句话的事情,就是使用刚刚获取的画布对象,调用其getContext(2d )方法即可。

  代码将内容复制到剪贴板var context=canvas . get context( 2d );这里的语境是画笔。

  在其他教程中,使用术语“2D环境”。我觉得画笔更生动。受Java中Graphics类的G brush启发,原理是一样的。

  总结只有三个准备步骤:

  1.布局画布:通过添加画布标签来添加画布元素。

  2.获取画布:通过画布标签的id获取画布对象。

  3.获取画笔:通过canvas对象的getContext(2d )方法获取2D环境。

  对应的代码是三句话:

  代码将内容复制到剪贴板canvas id=" canvas "/canvas var canvas=document . getelementbyid(" canvas ");var context=canvas . get context( 2d );完整的代码如下。

  将JavaScript代码内容编码到剪贴板!doctype HTML HTML lang= zh head meta charaset= UTF-8 title canvas/title/headbydivid= canvas-warp canvas id= canvas style= border:1 px solid # aaaaaa;显示:块; margin:50px auto;Width=800height=600 你的浏览器不支持画布?赶紧换!/canvas /div脚本window . onload=function(){ var canvas=document . getelementbyid( canvas );var context=canvas . get context( 2d );}/脚本/正文/html

  注意几点:

  1.JavaScript代码需要包装在脚本标签中。

  2.window.onload=function(){}页面加载后立即执行,表示页面后面的函数体内容被加载执行。

  至此,画布和画笔都准备好了。接下来我们用笔刷(上下文对象)画一个高逼格的图像!醒醒!艺术家的灵魂!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: