HTML5读书笔记——canvas元素

html5相对于html,增加了一些新的元素,比如canvas,audio,image等。

canvas元素为脚本提供了像素级的画布,可以试试渲染图形、游戏画面或其他虚拟图像。canvas元素可绘制直线、圆、矩阵等基本形状,以及图像和基本文字。目前,各大浏览器都已开始支持GPU加速的2D canvas渲染,因此使用canvas辉指出的游戏动画运行速度会很快。

首先,在<body>中加入<canvas>标签,如下:

其中,body中的onload事件调用函数,可以确保函数运行前,页面就已经被完全加载。这在操作canvas或image元素时非常重要,浏览器未完全加载页面之前就试图访问这些元素会导致JavaScript错误。

接下来获取canvas绘图环境:

canvas绘图环境为我们提供了大量的方法,用来在屏幕上绘制游戏中的内容。这些方法主要包括:

  • 绘制矩形。
  • 绘制复杂路径(直线、曲线等)。
  • 绘制文本。
  • 自定义画笔样式(颜色、透明度、纹理等)。
  • 绘制图像。
  • 平移和旋转。

绘制矩形

canvas使用原点(0,0)在左上角的坐标系,x轴向右递增,y轴向下递增。在绘制矩形时,主要用到以下函数:

  • fillRect(x,y,width,height):绘制一个实心矩形;
  • strokeRect(x,y,width,height):绘制一个空心矩形;
  • clearRect(x,y,width,height):清除指定区域的矩形,使其完全透明。

实现效果如下:

绘制复杂路径

对于复杂图形如多边形,圆等的绘制,在canvas中提供了如下方法:

  • beginPath():开始绘制一个新路径;
  • closePath():通过绘制一条当前点到路径起点的线段来闭合形状;
  • fill(),stroke():填充形状或绘制空心形状;
  • moveTo(x,y):将当前点移动到点(x,y);
  • lineTo(x,y):从当前点绘制一条直线线段到点(x,y);
  • arc(x,y,radius,startAngle,endAngle,anticlockwise):以点(x,y)为圆心,绘制指定半径的圆弧。

绘制步骤如下:

  1. 使用beginPath()开始绘制;
  2. 使用moveTo(),lineTo(),arc()创建线段;
  3. 使用closePath()结束绘制并闭合形状(可选);
  4. 使用fill(),stroke()填充形状或绘制外边框;使用fill()会自动闭合所有未闭合路径。

实现效果如下:

绘制文本

在canvas中绘制文本,主要通过以下两个函数实现:

  • strokeText(text,x,y):在(x,y)处绘制空心文本;
  • fillText(text,x,y):在(x,y)处绘制实心文本;

实现效果如下:

未完待续。。。

时间: 2024-08-06 18:20:28

HTML5读书笔记——canvas元素的相关文章

[html5] 学习笔记-Canvas标签的使用

Canvas通过JavaScript来绘制2D图形.Canvas是逐像素渲染的.在Canvas中,一旦图形被绘制完成,它就不会继续得到浏览器的关注.如果其位置发生变化,那么整个场景也需要重新绘制,包括任何已被图形覆盖的对象. 1.Canvas标签 html5中<canvas>元素用于图形的绘制,通过脚本(通常是JavaScript)来完成 <canvas>标签只是图形容器 可以通过多种方法使用Canvas绘制路径.盒.圆.字符以及添加图像 1.1 直接在html5中创建,这种方式采

Html5学习笔记1 元素 标签 属性

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>HTML5学习笔记</title> </head> <body bgcolor="#90ee90"> 1.Html5的元素<br/><br/> 元素指的是从開始标签到结束标签的全部代码<

HTML5读书笔记之四:Canvas高级功能

<!DOCTYPE html> <html> <head> <title>CanvasTest2</title> <meta charset="utf-8"> <link href="./css/canvas.css" rel="stylesheet" type="text/css"> <script type="text/ja

HTML5读书笔记之三:Canvas基础知识

<!doctype html> <head> <title>Canvas Test</title> <meta charset="UTF-8"> <link href="./css/canvas.css" rel="stylesheet" type="text/css"> <script type="text/javascript"

[html5] 学习笔记-Canvas 绘制渐变图形与绘制变形图形

在 HTML5 中,使用 Canvas API 绘制图形的知识,可以对绘制图形进行处理,包含使用 Canvas API 绘制渐变图形,使用 Canvas API 的坐标轴变换处理功能绘制变形图形.其中,左上方的点,为坐标轴原点(0,0). 1.绘制渐变图形 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title></title> 5 <script> 6 function draw(id){ 7 va

HTML5中的&lt;canvas&gt;画布:使用canvas元素在网页上绘制线条和圆(1)

什么是 Canvas? HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像. 画布是一个矩形区域,您可以控制其每一像素. canvas 拥有多种绘制路径.矩形.圆形.字符以及添加图像的方法. 创建 Canvas 元素 向 HTML5 页面添加 canvas 元素. 规定元素的 id.宽度和高度: 1 <canvas id="myCanvas" width="200" height="100"></ca

HTML5标签之canvas实战

1:什么是 Canvas? HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像. 画布是一个矩形区域,您可以控制其每一像素. canvas 拥有多种绘制路径.矩形.圆形.字符以及添加图像的方法. 2:创建 Canvas 元素 向 HTML5 页面添加 canvas 元素. 规定元素的 id.宽度和高度: <canvas id="myCanvas" width="200" height="100"></

canvas 元素用于在网页上绘制图形。

什么是 Canvas? HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像. 画布是一个矩形区域,您可以控制其每一像素. canvas 拥有多种绘制路径.矩形.圆形.字符以及添加图像的方法. 创建 Canvas 元素 向 HTML5 页面添加 canvas 元素. 规定元素的 id.宽度和高度: <canvas id="myCanvas" width="200" height="100"></canv

《HTML5 CANVAS基础教程》读书笔记

一.HTML5简介 1.HTML5新特性 1)结构元素:section,header,hgroup,footer,nav,article,aside, 2)内容元素:figure,figcaption,mark,time 3) 表单:浏览器端验证.输入类型.输入属性 4)媒体元素:audio元素.video元素.canvas元素