首页 前端知识 HTML5:Canvas 标签,作为一个前端程序员

HTML5:Canvas 标签,作为一个前端程序员

2024-05-05 12:05:56 前端知识 前端哥 193 640 我要收藏

一个画布在网页中是一个矩形框,通过 <canvas> 元素来绘制。默认情况下 <canvas> 元素没有边框和内容。

例:

  • 标签通常需要指定一个 id 属性 (脚本中经常引用)

  • width 和 height 属性定义的画布的大小

使用 style 属性来添加边框:

使用 JavaScript 来绘制图像

canvas 元素本身是没有绘图能力的。所有的绘制工作必须在 JavaScript 内部完成:

示例:

var c=document.getElementById(“myCanvas”);

var ctx=c.getContext(“2d”);

ctx.fillStyle=“#FF0000”;

ctx.fillRect(0,0,150,75);

Canvas 坐标

  • canvas 是一个二维网格

  • canvas 的左上角坐标为 (0,0)

  • 上面的 fillRect 方法拥有参数 (0,0,150,75)。

示例:

如下图所示,画布的 X 和 Y 坐标用于在画布上对绘画进行定位。鼠标移动的矩形框上,显示定位坐标。

Canvas 路径

| 方法 | 描述 |

| — | — |

| fill() | 填充当前绘图(路径) |

| stroke() | 绘制已定义的路径 |

| beginPath() | 起始一条路径,或重置当前路径 |

| moveTo() | 把路径移动到画布中的指定点,不创建线条 |

| closePath() | 创建从当前点回到起始点的路径 |

| lineTo() | 添加一个新点,然后在画布中创建从该点到最后指定点的线条 |

| clip() | 从原始画布剪切任意形状和尺寸的区域 |

| quadraticCurveTo() | 创建二次贝塞尔曲线 |

| bezierCurveTo() | 创建三次方贝塞尔曲线 |

| arc() | 创建弧/曲线(用于创建圆形或部分圆) |

| arcTo() | 创建两切线之间的弧/曲线 |

| isPointInPath() | 如果指定的点位于当前路径中,则返回 true,否则返回 false |

示例:

定义开始坐标(0,0), 和结束坐标 (200,100)。然后使用 stroke() 方法来绘制线条:

var c=document.getElementById(“myCanvas”);

var ctx=c.getContext(“2d”);

ctx.moveTo(0,0);

ctx.lineTo(200,100);

ctx.stroke();

在 canvas 中绘制圆形

arc(x,y,r,start,stop)

示例:

使用 arc() 方法 绘制一个圆:

var c=document.getElementById(“myCanvas”);

var ctx=c.getContext(“2d”);

ctx.beginPath();

ctx.arc(95,50,40,0,2*Math.PI);

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)
img

总结

为了帮助大家更好温习重点知识、更高效的准备面试,特别整理了《前端工程师面试手册》电子稿文件。

内容包括html,css,JavaScript,ES6,计算机网络,浏览器,工程化,模块化,Node.js,框架,数据结构,性能优化,项目等等。

包含了腾讯、字节跳动、小米、阿里、滴滴、美团、58、拼多多、360、新浪、搜狐等一线互联网公司面试被问到的题目,涵盖了初中级前端技术点。

前端面试题汇总

CodeChina开源项目:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

JavaScript

性能

linux

)**

JavaScript

性能

linux

转载请注明出处或者链接地址:https://www.qianduange.cn//article/6887.html
标签
评论
发布的文章

String转Json的几种方式

2024-05-09 11:05:04

iOS ------ JSONModel源码

2024-05-09 11:05:02

java去除 json 中的 \n, \t, \r

2024-05-09 11:05:57

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!