HTML5 Canvas中绘制矩形实例


Posted in HTML / CSS onJanuary 01, 2015

本文翻译自Steve Fulton & Jeff Fulton HTML5 Canvas, Chapter 2, “The Basic Rectangle Shape”.

让我们来看一下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);
}

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

HTML5 Canvas中绘制矩形实例

HTML / CSS 相关文章推荐
CSS3 制作旋转的大风车(充满童年回忆)
Jan 30 HTML / CSS
详解CSS3中使用gradient实现渐变效果的方法
Aug 18 HTML / CSS
CSS3制作圆形滚动进度条动画的示例
Nov 05 HTML / CSS
html+css3实现的登录界面
Dec 09 HTML / CSS
CSS3只让背景图片旋转180度的实现示例
Mar 09 HTML / CSS
Html5实现如何在两个div元素之间拖放图像
Mar 29 HTML / CSS
Html5页面中的返回实现的方法
Feb 26 HTML / CSS
html5借用repeating-linear-gradient实现一把刻度尺(ruler)
Sep 09 HTML / CSS
CSS中em的正确打开方式详解
Apr 08 HTML / CSS
纯html+css实现奥运五环的示例代码
Aug 02 HTML / CSS
HTML怎么设置下划线?html文字加下划线方法
Dec 06 HTML / CSS
CSS中calc(100%-100px)不加空格不生效
May 07 HTML / CSS
HTML5 Canvas中使用用路径描画圆弧
Jan 01 #HTML / CSS
HTML5 Canvas中使用路径描画二阶、三阶贝塞尔曲线
Jan 01 #HTML / CSS
HTML5制作酷炫音频播放器插件图文教程
Dec 30 #HTML / CSS
html5实现完美兼容各大浏览器的播放器
Dec 26 #HTML / CSS
html5中 media(播放器)的api使用指南
Dec 26 #HTML / CSS
浅谈html5 响应式布局
Dec 24 #HTML / CSS
HTML5进度条特效
Dec 18 #HTML / CSS
You might like
thinkphp浏览历史功能实现方法
2014/10/29 PHP
php实现发送微信模板消息的方法
2015/03/07 PHP
初识通用数据库操作类――前端easyui-datagrid,form(php)
2015/07/31 PHP
yii2分页之实现跳转到具体某页的实例代码
2016/06/02 PHP
javascript不同页面传值的改进版
2008/09/30 Javascript
JQuery 选择器、过滤器介绍
2011/02/14 Javascript
JS根据生日算年龄的方法
2015/05/05 Javascript
删除javascript所创建子节点的方法
2015/05/21 Javascript
谈一谈bootstrap响应式布局
2016/05/23 Javascript
使用JS代码实现点击按钮下载文件
2016/11/12 Javascript
layui 表格的属性的显示转换方法
2018/08/14 Javascript
Vue项目引进ElementUI组件的方法
2018/11/11 Javascript
jQuery选择器之层次选择器用法实例分析
2019/02/19 jQuery
从零撸一个pc端vue的ui组件库( 计数器组件 )
2019/08/08 Javascript
浅析微信小程序modal弹窗关闭默认会执行cancel问题
2019/10/14 Javascript
微信小程序中限制激励式视频广告位显示次数(实现思路)
2019/12/06 Javascript
详解Python的迭代器、生成器以及相关的itertools包
2015/04/02 Python
学习Python selenium自动化网页抓取器
2018/01/20 Python
儿童编程python入门
2018/05/08 Python
Python根据成绩分析系统浅析
2019/02/11 Python
python try 异常处理(史上最全)
2019/03/07 Python
如何通过Django使用本地css/js文件
2020/01/20 Python
使用OpenCV获取图像某点的颜色值,并设置某点的颜色
2020/06/02 Python
Python 中如何使用 virtualenv 管理虚拟环境
2021/01/21 Python
HTML5视频播放插件 video.js介绍
2018/09/29 HTML / CSS
amazeui 验证按钮扩展的实现
2020/08/21 HTML / CSS
求职简历中自我评价
2014/01/28 职场文书
商业计算机应用专业自荐书
2014/06/09 职场文书
学习党的群众路线实践活动思想汇报
2014/09/12 职场文书
中学生打架检讨书
2014/10/13 职场文书
医院见习报告范文
2014/11/03 职场文书
2014年学生会工作总结范文
2014/11/07 职场文书
求职信格式范文
2015/03/19 职场文书
房地产置业顾问岗位职责
2015/04/11 职场文书
超市员工辞职信范文
2015/05/12 职场文书
写作技巧:怎样写好一份优秀工作总结?
2019/08/14 职场文书