前端基础_绘制带边框矩形
创始人
2024-04-26 13:52:27
0

 绘制带边框矩形

今天给小伙伴分享,如何在canvas画布中绘制一个矩形。在本例中调用了脚本文件中的draw函数进行图形描绘。该函数放置在body属性中,使用“οnlοad="draw('canvas');"”语句,调用脚本文件中的draw函数进行图像描画。在本例中draw函数的功能是把canvas画布的背景用浅蓝色涂满,然后画出一个绿色正方形,边框为红色。
用canvas元素绘制矩形的具体步骤如下。
(1)用document.getElementById方法取得canvas元素,代码如下。
var canvas = document.getElementById(id);
(2)使用canvas对象的getContext方法来获得图形上下文,同时传入使用的canvas类型,这里传递的仍然是“2d”,代码如下。
var context = canvas.getContext('2d');
(3)填充与绘制边框,用canvas元素绘制图形时,有两种方式——填充与绘制边框。填充是指填满图形内部;绘制边框是指不填满图形内部,只绘制图形的外框。canvas元素结合使用这两种方式来绘制图形。
(4)设定绘图样式(Style),在进行图形绘制时,首先要设定好绘图的样式,然后调用有关方法进行图形的绘制。所谓绘图的样式,主要是针对图形的颜色而言的,但是并不限于图形的颜色,在后面我们将会介绍如何设定颜色以外的样式,本例中主要是应用了如下两种样式。
 设定填充图形的样式
fillStyle属性——填充的样式,在该属性中填入填充的颜色值。
 设定图形边框的样式
strokeStyle——图形边框的样式。在该属性中填入边框的颜色值。
本例中的样式代码如下。
context.fillStyle = "green";
    context.strokeStyle = "red";
(5)指定线宽,使用图形上下文对象的lineWidth属性设置图形边框的宽度。在绘制图形时,任何直线都可以通过lineWidth属性来指定直线的宽度。本例中设置线宽的代码如下。
context.lineWidth=1;
(6)指定颜色值,绘图时填充的颜色或边框的颜色分别通过fillStyle属性与strokeStyle属性来指定。颜色值使用的是普通样式表中使用的颜色值。例如“red”与“blue”这种颜色名,或“#EEEEFF”这种十六进制的颜色值。
另外,也可以通过rgb(红色值、绿色值、蓝色值)或rgba(红色值、绿色值、蓝色值、透明度)函数来指定颜色的值。
本例中指定颜色的值,代码如下。
context.fillStyle = "green";
    context.strokeStyle = "red";
(7)矩形的绘制,分别使用fillRect方法与strokeRect方法来填充矩形和绘制矩形边框。这两个方法的定义如下。
context.fillRect(x,y,width,height);
    context.strokeRect(x,y,width,height);
这里的context指的是图形上下文对象,这两个方法使用同样的参数,x是指矩形起点的横坐标,y是指矩形起点的纵坐标,坐标原点为canvas画布的最左上角,width是指矩形的长度,height是指矩形的高度。通过这4个参数,矩形的大小同时也就被决定了。
本例中绘制矩形的代码如下。
context.fillRect(50,50,100,100);
    context.strokeRect(50,50,100,100);
https://www.bilibili.com/video/BV1Gv4y1Q7px/?spm_id_from=333.999.0.0&vd_source=a7816e3b2a3a67ac39dc87f6bf92421cicon-default.png?t=M85Bhttps://www.bilibili.com/video/BV1Gv4y1Q7px/?spm_id_from=333.999.0.0&vd_source=a7816e3b2a3a67ac39dc87f6bf92421c

相关内容

热门资讯

银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AsusVivobook无法开... 首先,我们可以尝试重置BIOS(Basic Input/Output System)来解决这个问题。...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...