HTML5 Canvas中绘制矩形实例

HTML5 Canvas中绘制矩形实例,第1张

让我们来看一下Canvas内置的简单几何图形

矩形的绘制。在Canvas中,绘制矩形有三种方法:填充(fillRect)、描边(StrokeRect)以及清除(clearRect)。当然,我们也可以使用“路径”来描绘包括矩形在内的所有图形。

以下是上述三种方法的API:

1.fillRect(x,y,width,height)。绘制一个从(x,y)开始,宽度为width,高度为height的实心矩形。

2.strokeRect(x,y,width,height)。绘制一个从(x,y)开始,宽度为width,高度为height的矩形框。该矩形框会根据当前设置的strokeStyle、lineWidth、lineJoin和miterLimit属性的不同而渲染成不同的样式。

3.clearRect(x,y,width,height)。清除从(x,y)开始,宽度为width,高度为height的矩形区域,使之完全透明。

在调用上述方法绘制Canvas之前,我们需要设定填充和描边的样式。设定这些样式最基本的方法是使用24位色(用16进制字符串表示)。以下是一个简单的例子:

代码如下:

context.fillStyle

=

"#000000"

context.strokeStyle

=

"#ff00ff"

在下面的例子中,填充色设定为黑色,而描边色则设定为紫色:

代码如下:

function

drawScreen()

{

context.fillStyle

=

"#000000"

context.strokeStyle

=

"#ff00ff"

context.lineWidth

=

2

context.fillRect(10,

10,

40,

40)

context.strokeRect(0,

0,

60,

60)

context.clearRect(20,

20,

20,

20)

}

代码执行结果如下图所示:

Cavas的英文解释是画布,使用这个Html5的Canvas标签可以创建画布,结合JavaScript可以画出很多图形,我们先以画一个蓝色矩形为例,说明一下这个标签的使用方法,

首先需要建立一个HTML5的网页,方法是:

进入DW后,选择:文件-->新建

在d出的对话框中选择文件类型为Html5

选择“创建”后,即会形成一个空白网页,选择“文件”--"保存“

起名为:juxing

这个名字可以依据自己的喜好起,但最好名字与网页内容相关,以后好找,另外一个需要注意的是,最好不用汉字。

我们将视图切换为”代码“视图

并将标题改为”画出矩形“

标题也可以依据自己的喜好进行设定,并不影响网页的运行。

Html是标记型语言,各种功能都需要在对应的标签里面才可以,所以我们首先需要添加标签。

我们只需输入<c,就会看到提示列表里出现我们所需要的标签canvas,按下回车键,即可完成输入。

之后,我们每一次按下空格、或输入相关字母,都会有提示列表,我们只需选择所需的项目,按下回车即可,并不需要完整输入字串,可以避免输入时的拼写错误。在本例中,只有引号内的”mycanvas“是需要完整输入的,其他部分的关键字都可以通过提示列表进行输入。

命令为:<canvas id="mycanvas" width="600" height="400"></canvas>

只有Canvas标记是不能直接画出图来的,需要配合JavaScript语言,首先需要写出对应的程序标记。

Html语言中的标记都是成对出现的,我们为了避免错误,可以先将标记的起始、标记的结束写好

写好前后标记后,我们就可以在标记中使用JavaScript语言,调用Canvas标记,画出我们所需要图形了,方法是:

var canvas=document.getElementById('mycavas')

将变量canvas,赋值为我们之前在html中定义的画布”mycanvas,以方便JavaScript调用

var ctxt=canvas.getContext('2d')

将变量 ctxt赋值为利用刚定义的“canvas”返回的二维绘图环境对象,使用这个对象就可以绘图了

使用fillStyle方法设置颜色,是十六进制表示的三原色分量范围是从“#000000”至“FFFFFF”

ctx.fillStyle='#0066cc'

我们将颜色设置为一种蓝色,这个颜色也可以随自己喜好 更改。

ctx.fillRect(50,50,400,200)

填充的起始位置设置为(50,50),矩形宽度为400,高度为200

选择在浏览器中浏览后,即可看到我们所需要的矩形

var canvas=document.getElementById('canvas')

var ctx =getContext('2d')

ctx.beginPath()

ctx.lineWidth=1

ctx.strokeStyle="#000"

ctx.rect(0,0,10,20)

ctx.stroke()

ctx.closePath()

//用closepath结束绘画,否则可能出现黏连;

ctx.beginPath()

ctx.lineWidth=1

ctx.strokeStyle="#f00"

ctx.rect(50,0,10,20)

ctx.stroke()

ctx.closePath()


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7273970.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存