`
lib
  • 浏览: 135970 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Canvas学习笔记(三)--绘图(路径【直线】)

阅读更多

1、绘制路径的方法

 

beginPath():开始一个新路径。

 

closePath():关闭路径。

 

stroke():绘制路径边框。

 

fill():使用颜色填充路径绘制的图形。

 

moveTo(x,y):设置坐标的位置。

 

lineTo(x,y):绘制一条直线。参数(x,y)是终点的坐标,起点坐标取决于前一路径(即:前一路径的终点就是当前路径的起点。可以通过moveTo()设置起始坐标。)

 

2、绘制路径的步骤

 

第一步:调用beginPath()创建路径。在内存里,路径是以一组子路径(直线、弧线等)进行存储,共同构成一个图形。每次调用beginPath(),子路径都会被重置,这样就可以绘制新的图形。

 

第二步:实际绘制路径。

 

第三步:调用closePath()关闭路径。尝试在当前端点通过直线连接起始端点来关闭图形。如果图形已经关闭   或者只有一个点,则不会执行任何操作。这一步是可选的。

 

第四步:调用stroke()或者fill(),此时,图形才实际的绘制到canvas上。

 

注:使用fill()时,图形会自动闭合,不需要调用closePath().

 

3、绘制路径实例

 

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
  	<style type="text/css">
		.wraper {
			position: relative;
			border: 1px solid orange;
		}
  	</style>
	<script type="text/javascript">
		function draw(){
			
			var can = document.getElementById('test');
			
            if(can.getContext){
				var cxt = can.getContext('2d');

				cxt.beginPath();
				cxt.moveTo(50,10);
				cxt.lineTo(100,160);
				cxt.lineTo(20,90);
				cxt.lineTo(50,10);
				cxt.stroke();

				cxt.beginPath();
				cxt.moveTo(190,20);
				cxt.lineTo(120,190);
				cxt.lineTo(140,50);
				cxt.fill();
			}

		}
	</script>
  </head>	
  
  <body onload="draw();">
	
	<canvas id="test" width="200px" height="200px" class="wraper"></canvas>

  </body>
</html>
 

代码显示的效果:

 


 

 

  • 大小: 3.7 KB
分享到:
评论

相关推荐

    HTML5 Canvas学习笔记(5)游戏得分动画

    这篇“HTML5 Canvas学习笔记(5)游戏得分动画”着重讲解了如何利用Canvas技术来实现游戏中的得分动画效果。通过学习这篇笔记,我们可以深入了解Canvas的基本用法以及如何将它应用于游戏开发。 首先,Canvas是HTML5的...

    canvas学习笔记之绘制简单路径

    线段是Canvas最基本的元素之一,可以通过以下三个步骤完成: 1. `moveTo(x, y)`:这个方法用来移动当前画笔的位置到指定的坐标点(x, y)。这个操作不会在画布上留下痕迹,仅仅是设定起点。 2. `lineTo(x, y)`:接着...

    H5 Canvas随机生成花纹图案.zip

    综上所述,"H5 Canvas随机生成花纹图案.zip"可能是一个学习Canvas高级技巧和JavaScript动画的好资源,尤其是对于想要提升网页动态效果的开发者来说。通过这个压缩包,你可以了解到如何在网页上实现独特的、随机变化...

    H5 Canvas三角形图案动画特效.zip

    `moveTo()`移动到画布上的指定位置,`lineTo()`画出一条从当前点到新点的直线,而`closePath()`则闭合路径,形成一个完整的形状。 接下来,我们将讨论CSS特效在项目中的作用。CSS(Cascading Style Sheets)用于...

    canvas学习之API整理笔记(一)

    在本篇“canvas学习之API整理笔记(一)”中,我们主要关注的是Canvas的基本API,包括如何获取Canvas元素、创建画布以及如何在Canvas上绘制基本图形。 首先,要在HTML中使用Canvas,需要在页面中添加一个`&lt;canvas&gt;`...

    HTML5 Canvas柱状图表统计代码.zip

    5. `moveTo(x, y)` 和 `lineTo(x, y)`:移动当前绘图路径到指定位置,以及从当前位置绘制直线到指定位置。 6. `fill()` 和 `stroke()`:填充当前路径或只描绘路径的边框。 在jQuery特效、CSS特效和网页特效的标签中...

    html5 canvas线条丝状波浪隧道动画效果.zip

    `beginPath()`和`moveTo()`用于开始一个新的路径和设置路径起点,而`lineTo()`则用于添加直线到当前路径。通过不断改变起点和终点的位置,可以创建出波浪状的线条效果。为了形成隧道的感觉,可能还会涉及到对角度、...

    html5 canvas可翻转时间沙漏动画特效.zip

    HTML5 Canvas是Web开发中...通过深入研究和理解这个代码,开发者不仅可以学习到Canvas的基本绘图技巧,还能了解到如何使用jQuery来增强和控制动画效果。对于想要提升Web前端技能的开发者来说,这是一个极好的学习资源。

    Canvas方块线条闪烁特效.zip

    Canvas的绘图API提供了丰富的函数,用于绘制线条、矩形、圆形等各种形状,并且可以控制颜色、线宽、填充和描边样式。在"jiaoben7539"这个文件中,很可能是编写了JavaScript函数来创建和控制线条的绘制。这些函数可能...

    html5 canvas科幻磁场动力吸引背景动画特效.zip

    首先,`index.html`是整个项目的入口文件,它包含了HTML结构,其中关键的部分是`&lt;canvas&gt;`元素,这个元素是Canvas画布的基础,所有的绘图操作都会在这个画布上进行。在`&lt;canvas&gt;`标签中,通常会有一个ID属性,以便在...

    Canvas画布线条组合动画特效.zip

    `beginPath()`开始一个新的路径,`moveTo(x, y)`将当前绘图位置移动到指定坐标,而`lineTo(x, y)`则从当前点画一条直线到指定点。通过连续调用`lineTo()`,可以创建复杂的线条结构。为了实现动画效果,开发者可能...

    HTML5 Canvas小虫子游动特效.zip

    2. **绘制路径**:虫子的身体可能由多个路径段组成,`beginPath()`开始一个新的路径,`moveTo(x, y)`移动到指定位置,`lineTo(x, y)`画出从当前位置到指定位置的直线,最后`stroke()`描边完成路径的绘制。...

    HTML5 Canvas飞机线条弧度飞行动画特效.zip

    例如,`arc()`函数可以用来绘制圆弧,`moveTo()`和`lineTo()`则用于定义路径,绘制直线。飞机的移动轨迹可能是通过计算每个点的坐标,然后用`arc()`或平滑的曲线函数(如`bezierCurveTo()`)来实现。 此外,`img`...

    HTML5 Canvas彩虹心形特效.zip

    2. **JavaScript绘图**:在JavaScript中,通过获取`canvas`元素的`context`,使用`fillStyle`设置填充颜色,`beginPath`开始路径,`arcTo`、`lineTo`等方法画出心形的两个半圆和直线部分,最后用`fill`填充。...

    JS创建点路径生成器工具代码.zip

    JavaScript可以访问Canvas的绘图方法,如`context.beginPath()`开始路径,`context.moveTo(x, y)`移动到指定坐标,`context.lineTo(x, y)`绘制直线到新坐标,以及`context.stroke()`描边路径。 5. **二次修改**:此...

    html5 canvas钢笔绘制线条创建导火线燃烧动画效果.zip

    1. **绘制导火线**:使用`beginPath()`开始一条路径,`moveTo()`指定起点,然后通过一系列`lineTo()`添加直线段,模拟导火线的形状。使用`strokeStyle`设置线条颜色,`stroke()`绘制路径。 2. **模拟燃烧**:创建一...

    flash 教程笔记

    ### Flash教程知识点总结 #### 一、Flash基础知识与工作界面 **知识点1:Flash软件介绍** - **Flash**是一款由Adobe...这些知识点不仅适用于初学者学习Flash的基础知识,也适用于有一定基础的学习者进一步提升技能。

    Android高级应用源码-仿qq实现图文混排以及涂鸦等功能.zip

    涂鸦功能在Android应用中常用于绘图应用、笔记应用或者消息交流中,让用户可以手写或绘制图形。实现涂鸦功能的关键技术包括: 1. **Canvas与Paint**:在Android中,`Canvas`是画布,用于绘制图形;`Paint`包含了...

    android移动组件,基本内容

    这些组件包括视图(Views)、自定义视图(Custom Views)、画布(Canvas)、路径(Path)、绘图颜色和渐变、动画以及纹理贴图等。 首先,**视图(Views)**是Android UI系统的基本构建块,它们负责在屏幕上显示内容...

    jQuery+HTML5仿信用卡电子签名特效.zip

    Canvas的绘图功能主要通过其提供的`Context`对象实现,如`beginPath()`开始一条路径,`moveTo()`移动到画布上的某个点,`lineTo()`绘制直线,`stroke()`描边等。这些API使得我们可以精确地控制签名的绘制过程。此外...

Global site tag (gtag.js) - Google Analytics