HTML5的canvas标签知之多少

简介: HTML5的canvas标签知之多少

HTML5的canvas标签知之多少

运行效果的展示:

这张图的案例小Demo如何实现?

 

<canvas> 标签定义图形,比如图表和其他图像,您必须使用脚本来绘制图形 这个标签完成下面的案例

绘制出矩形

绘制直线的方法

画圆

文本的效果

渐变的使用

图像的绘制

svg


绘制出矩形

<!-- 创建一个画布的内容 -->
    <!-- <canvas id="myCanvasr" width="200" height="200"
      style="border: 12px solid red;background-color: lightblue;">你的浏览器不支持HTML5</canvas> -->
<!-- @1 canvas 是二维表格 左上角的坐标(0,0) 在画布中绘制出150*75的矩形 从左上角开始 -->
<canvas id="myCanvas" width="300" height="100" style="border: 2px solid lawngreen;">你的浏览器不支持HTML5</canvas>
<script type="text/javascript">
  // 找到<canvas>元素
  var c=document.getElementById("myCanvas");
  // 创建Context对象
  var ctx=c.getContext("2d")
  // 绘制出矩形
  ctx.fillStyle="#FF0000"
  ctx.fillRect(0,0,200,75)
</script>

 

绘制直线的方法

<canvas id="myCanvas1" width="300" height="100" style="border: 2px solid lawngreen;">你的浏览器不支持HTML5</canvas>
<script type="text/javascript">
  var c=document.getElementById("myCanvas1");
  var ctx=c.getContext("2d");
  // 开始的坐标
  ctx.moveTo(0,0);
  //结束的坐标
  ctx.lineTo(300,100);
  //绘制直线的方法
  ctx.stroke();
</script>

 

画圆

<canvas id="myCanvas2" width="300" height="100" style="border: 2px solid lawngreen;">你的浏览器不支持HTML5</canvas>
<script type="text/javascript">
  var c=document.getElementById("myCanvas2");
  var ctx=c.getContext("2d");
  ctx.beginPath();
  ctx.arc(95,50,40,0,2*Math.PI);
  ctx.stroke();
</script>

 

文本的效果

<canvas id="myCanvas3" width="200" height="100" style="border: 2px solid red">你的浏览器不支持HTML5</canvas>
<script type="text/javascript">
  var c=document.getElementById("myCanvas3");
  var ctxs=c.getContext("2d");
  ctx.font="30px Arial";
  ctxs.strokeText("Hellow Canvas",10,50)
  // ctx.fillText("Hellow Canvas",10,50)
</script>

 

渐变的使用

<canvas id="myCanvas4" width="200" height="100" style="border: 2px solid red">你的浏览器不支持HTML5</canvas>
<script type="text/javascript">
  var c=document.getElementById("myCanvas4");
  var ctx1=c.getContext("2d");
  //创建渐变
  var grd=ctx1.createLinearGradient(75,50,5,90,60,100);
  grd.addColorStop(0,"red");
  grd.addColorStop(0.5,"green");
  grd.addColorStop(1,"white");
  // 填充渐变
  ctx1.fillStyle=grd;
  ctx1.fillRect(10,20,150,80)
</script> 

图像的绘制

<p>IMG SEE YOU</p>
<img src="img/1.png" alt="The Scream" width="100" height="100" id="scream">
<p>Cancas</p>
<canvas id="myCanvas5" width="250" height="300" style="border: 2px solid lightcoral"></canvas>
<script type="text/javascript">
  var c=document.getElementById("myCanvas5");
  var ctx1=c.getContext("2d");
  var img=document.getElementById("scream");
  img.onload=function(){
    ctx1.drawImage(img,10,10)
  }
</script> 

svg

<svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="190">
<polygon points="100,10 40,180 190,60 10,60 160,180"
style="fill:lime;stroke:purple;stroke-width:5;fill-rule:evenodd;">
</svg>

相关文章
|
3天前
|
前端开发
HTML中的pre标签表示空格或换行
HTML中的pre标签表示空格或换行
|
3天前
HTML_表单标签
HTML_表单标签
16 0
|
3天前
|
前端开发 JavaScript 数据安全/隐私保护
【HTML】基本标签介绍(下)
【HTML】基本标签介绍(下)
12 3
|
3天前
|
机器学习/深度学习 前端开发 JavaScript
【HTML】基本标签介绍(上)
【HTML】基本标签介绍
11 1
|
3天前
|
移动开发 前端开发 API
HTML5 Canvas 提供丰富的绘图API,支持绘制图形、文本、渐变和图像,助力游戏开发
【5月更文挑战第13天】HTML5 Canvas 提供丰富的绘图API,支持绘制图形、文本、渐变和图像,助力游戏开发。关键功能包括绘制基本形状、文本渲染、图像处理及渐变图案。在游戏开发中,Canvas用于绘制游戏元素、实现动画效果、精确的物理碰撞检测,并具有跨平台兼容性,为创造多样化视觉体验和互动游戏提供强大工具。随着技术进步,Canvas在游戏领域的应用将持续增长。
14 4
|
3天前
|
移动开发 前端开发 HTML5
HTML5 Canvas发光Loading源码
一款基于HTML5 Canvas的发光Loading加载HTML源码。Loading旋转图标是在canvas画布上绘制的,整个loading动画是发光3D的视觉效果
14 1
HTML5 Canvas发光Loading源码
|
3天前
|
移动开发 前端开发 HTML5
Canvas实现超酷Loading动画HTML代码
之前我们分享过很多基于CSS3的Loading动画效果,相信大家都很喜欢。今天我们要来分享一款基于HTML5 Canvas的发光Loading加载动画特效。Loading旋转图标是在canvas画布上绘制的,整个loading动画是发光3D的视觉效果,HTML5非常强大。
12 1
Canvas实现超酷Loading动画HTML代码
|
3天前
|
存储 前端开发 JavaScript
【Web 前端】如何找到所有 HTML select 标签的选中项?
【5月更文挑战第2天】【Web 前端】如何找到所有 HTML select 标签的选中项?
|
3天前
|
编解码 移动开发 前端开发
【专栏:HTML与CSS移动端开发篇】使用Viewport Meta标签优化移动端显示
【4月更文挑战第30天】本文介绍了HTML的Viewport Meta标签在移动端网页优化中的作用。Viewport Meta标签定义了视口属性,如宽度、高度、初始缩放等,解决移动设备因屏幕尺寸差异导致的显示问题。主要属性包括width(常用device-width)、initial-scale、maximum-scale、minimum-scale和user-scalable。
|
3天前
|
移动开发 前端开发 开发者
【专栏:HTML进阶篇】网页结构与语义化标签进阶
【4月更文挑战第30天】提升网页结构清晰度和无障碍访问性,有利于SEO。这些标签为屏幕阅读器提供额外上下文,简化CSS样式设计,避免无意义的&lt;div&gt;和&lt;span&gt;。正确使用语义化标签是现代网页开发的关键,能创造更优质、易访问和优化的Web体验。