《智能前端技术与实践》——第 2 章 前端开发基础 ——2.2 HTML基础——2.2.2 常用标签 (下)

简介: 《智能前端技术与实践》——第 2 章 前端开发基础 ——2.2 HTML基础——2.2.2 常用标签 (下)

《智能前端技术与实践》——第 2 章 前端开发基础 ——2.2 HTML基础——2.2.2 常用标签 (上) https://developer.aliyun.com/article/1228307?groupCode=tech_library  


5标签

Canvas API提供了一种通过JavaScriptHTML>元素来绘制图形的方式,它可

以用于动画、游戏画面、数据可视化、图片编辑及实时视频处理等方面的内容。使用>

概可以分为两个步骤。

首先,在HTML文档中定义标签,如代码清单2-12所示。


代码清单 2-12


<canvaswidth="500"height="500"style="border: 1px solid red"id="canvas"></canvas>

标签只有两个属性——width height。当没有设置宽度和高度的时候,

会初始化尺寸为300×150的矩形。

然后,获取nvas>对象的上下文并判断getContext()方法是否存在,如代码清单2-13所示。

代码清单2-13


varcanvas=document.getElementById("canvas")
if (canvas.getContext){
varctx=canvas.getContext("2d");
}

最后,在页面中分别绘制圆形、直线和矩形框,如代码清单 2-14 所示。


代码清单 2-14


<!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><title>canvas Demo</title></head><body><canvaswidth="500"height="500"style="border: 1px solid red"id="canvas"></canvas><script>varcanvas=document.getElementById("canvas")
if (canvas.getContext){
varctx=canvas.getContext("2d");
//画圆ctx.beginPath()
ctx.moveTo(250,100)
ctx.arc(250,100,10,0,2*Math.PI)
ctx.fillStyle="blue"ctx.fill()
ctx.closePath()
//画直线ctx.beginPath()
ctx.moveTo(100,250)
ctx.lineTo(400,250)
ctx.strokeStyle="green"ctx.stroke()
ctx.closePath()
//画矩形ctx.beginPath()
ctx.rect(100,300,300,100)
ctx.strokeStyle="aqua"ctx.stroke()
ctx.closePath()
}
</script></body></html>

运行结果如图2-21所示


image.png


接下来,我们介绍上述代码中用到的相关API方法。

beginPath():通过清空子路径列表开始一条新的路径,其调用方法为CanvasRenderingContext2D.beginPath()

closePath():将笔点返回当前子路径的起始点,并从当前点到起始点绘制一条直线,如果图形已经是封闭图形或仅有一个点,此方法不做任何操作。

moveTo(x,y):将一条新的子路径的起点移动到(x,y)

lineTo(x,y):使用直线连接子路径的终点与(x,y)

arc(x,y,radius,startAngle,endAngle,anticlockwise):绘制圆心坐标为(x,y)、半径为radius的弧,根据anticlockwise(默认为顺时针)指定的方向从startAngle开始绘制,到endAngle结束。

stroke():通过线条来绘制图形轮廓。

fill()方法:根据填充路径的内容区域生成实心的图形。

另外,我们可以通过指定strokeStyle的值设置图形轮廓的颜色;通过指定fillStyle的值设置图形的填充颜色,默认值均为黑色(#000000)。

最后,结合代码清单 2-15,介绍指针设备(如鼠标指针)在对象中移动时触发的事件mousemove


代码清单 2-15


<!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><title>你画我猜(MNIST 手写数字版)canvas 示例</title></head><body><canvaswidth="500"height="500"style="border: 1px solid red"id="canvas"></canvas><buttonid="clear">清除画布</button><script>varcanvas=document.getElementById("canvas")
varoclear=document.getElementById("clear")
if (canvas.getContext){
varctx=canvas.getContext("2d");
canvas.onmousemove= (e) => {
if(e.buttons==1){
ctx.fillStyle="black"ctx.fillRect(e.offsetX,e.offsetY,5,5)
}
}
oclear.onclick= () => {
ctx.clearRect(0,0,500,500)
}
}
</script></body></html>

运行结果如图 2-22 所示。


image.png

相关文章
|
4月前
|
前端开发 搜索推荐 开发工具
通义灵码与颜色板生成器,为前端开发提供智能配色解决方案
在前端开发中,色彩搭配对用户体验和界面美观至关重要。通义灵码提供的颜色板生成器通过自动推荐配色方案、随机生成颜色组合及支持自定义调整,帮助开发者高效完成配色任务。该工具支持一键导出为 CSS 样式表,并提供简洁的中文指令交互方式,大大提升开发效率,助力开发者打造美观和谐的用户界面。
|
2月前
|
人工智能 前端开发 JavaScript
前端工程化演进之路:从手工作坊到AI驱动的智能化开发
前端工程化演进之路:从手工作坊到AI驱动的智能化开发
529 18
前端工程化演进之路:从手工作坊到AI驱动的智能化开发
|
7月前
|
前端开发 Java 物联网
智慧班牌源码,采用Java + Spring Boot后端框架,搭配Vue2前端技术,支持SaaS云部署
智慧班牌系统是一款基于信息化与物联网技术的校园管理工具,集成电子屏显示、人脸识别及数据交互功能,实现班级信息展示、智能考勤与家校互通。系统采用Java + Spring Boot后端框架,搭配Vue2前端技术,支持SaaS云部署与私有化定制。核心功能涵盖信息发布、考勤管理、教务处理及数据分析,助力校园文化建设与教学优化。其综合性和可扩展性有效打破数据孤岛,提升交互体验并降低管理成本,适用于日常教学、考试管理和应急场景,为智慧校园建设提供全面解决方案。
481 70
|
11月前
|
人工智能 移动开发 前端开发
WeaveFox:蚂蚁集团推出 AI 前端智能研发平台,能够根据设计图直接生成源代码,支持多种客户端和技术栈
蚂蚁团队推出的AI前端研发平台WeaveFox,能够根据设计图直接生成前端源代码,支持多种应用类型和技术栈,提升开发效率和质量。本文将详细介绍WeaveFox的功能、技术原理及应用场景。
6044 68
WeaveFox:蚂蚁集团推出 AI 前端智能研发平台,能够根据设计图直接生成源代码,支持多种客户端和技术栈
|
7月前
|
移动开发 前端开发 安全
|
9月前
|
前端开发
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
274 1
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
|
7月前
|
前端开发
|
7月前
|
前端开发 JavaScript
|
10月前
|
移动开发 前端开发 搜索推荐
《前端技术基础》第01章 HTML基础【合集】
超文本标记语言(HyperText Markup Language,简称 HTML)是构建网页结构的基础标记语言。它与 CSS、JavaScript 协同,负责搭建网页“骨架”,用标签组织内容,像标题、段落、图片等元素,通过起始与结束标签(部分可单用,如`<img>`)界定层级与布局,将信息有序整合。标签含特定语义,向浏览器传达展示方式,为网页准确呈现及后续美化、交互筑牢根基。
289 25
|
11月前
|
人工智能 前端开发 JavaScript
前端基础之HTML
Web1.0、Web2.0 和 Web3.0 标志着互联网发展的三个阶段。Web1.0(静态互联网,1990年代初至2000年代初)以静态内容和单向信息流为主,用户仅能浏览。Web2.0(互动互联网,2000年代初至2010年代初)引入了用户生成内容和社交网络,内容动态且互动性强。Web3.0(语义互联网,2010年代至今)强调语义化、个性化、智能化及去中心化,结合AI、区块链等技术,提供沉浸式体验。HTTP和HTML作为互联网基础协议和技术,在各阶段不断演进,共同推动了现代互联网的发展。
前端基础之HTML

热门文章

最新文章

  • 1
    前端如何存储数据:Cookie、LocalStorage 与 SessionStorage 全面解析
  • 2
    前端工程化演进之路:从手工作坊到AI驱动的智能化开发
  • 3
    Vue 3 + TypeScript 现代前端开发最佳实践(2025版指南)
  • 4
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
  • 6
    实现“永久登录”:针对蜻蜓Q系统的用户体验优化方案(前端uni-app+后端Laravel详解)-优雅草卓伊凡
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距