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 box-shadow阴影(外阴影与外发光)图示讲解
Aug 11 HTML / CSS
CSS3实现任意图片lowpoly动画效果实例
May 11 HTML / CSS
CSS3中的5个有趣的新技术
Apr 02 HTML / CSS
CSS3属性使网站设计增强同时不消弱可用性
Aug 29 HTML / CSS
CSS3绘制六边形的简单实现
Aug 25 HTML / CSS
CSS3实现同时执行倾斜和旋转的动画效果
Oct 27 HTML / CSS
详解CSS透明opacity和IE各版本透明度滤镜filter的最准确用法
Dec 20 HTML / CSS
Html5 audio标签样式的修改
Jan 28 HTML / CSS
使用HTML5和CSS3制作一个模态框的示例
Mar 07 HTML / CSS
Html5页面内使用JSON动画的实现
Jan 29 HTML / CSS
基于HTML5+tracking.js实现刷脸支付功能
Apr 16 HTML / CSS
使用CSS实现六边形的图片效果
Aug 05 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
Cappuccino 卡布其诺咖啡之制作
2021/03/03 冲泡冲煮
PHP中如何调用webservice的实例参考
2013/04/25 PHP
linux系统下php安装mbstring扩展的二种方法
2014/01/20 PHP
php $_SESSION会员登录实例分享
2021/01/19 PHP
PHP处理CSV表格文件的常用操作方法总结
2016/07/01 PHP
遍历echsop的region表形成缓存的程序实例代码
2016/11/01 PHP
PHP数据库处理封装类实例
2016/12/24 PHP
IE下js调试工具Companion.JS
2010/10/15 Javascript
基于jquery的从一个页面跳转到另一个页面的指定位置的实现代码(带平滑移动的效果)
2011/05/24 Javascript
同一页面多个商品倒计时JS 基于面向对象的javascript
2012/02/16 Javascript
JS实现控制表格内指定单元格内容对齐的方法
2015/03/30 Javascript
超级给力的JavaScript的React框架入门教程
2015/07/02 Javascript
jQuery实现多级下拉菜单jDropMenu的方法
2015/08/28 Javascript
angularjs学习笔记之简单介绍
2015/09/26 Javascript
基于javascript实现泡泡大冒险网页版小游戏
2016/03/23 Javascript
jquery实现一个简单的表单验证实例
2016/03/30 Javascript
JS设计模式之单例模式(一)
2017/09/29 Javascript
jQuery实现简单聊天室
2020/02/08 jQuery
vue过滤器实现日期格式化的案例分析
2020/07/02 Javascript
浅谈JavaScript节流和防抖函数
2020/08/25 Javascript
python实现socket端口重定向示例
2014/02/10 Python
python使用Qt界面以及逻辑实现方法
2019/07/10 Python
浅谈Python2之汉字编码为unicode的问题(即类似\xc3\xa4)
2019/08/12 Python
Python 在局部变量域中执行代码
2020/08/07 Python
纯HTML5+CSS3制作生日蛋糕(代码易懂)
2016/11/16 HTML / CSS
大学生村官典型材料
2014/01/12 职场文书
房屋买卖协议书
2014/04/10 职场文书
献爱心活动总结
2014/05/07 职场文书
法院授权委托书格式
2014/09/28 职场文书
2014年个人工作总结范文
2014/11/07 职场文书
辞职信范文大全
2015/03/02 职场文书
我的中国梦主题教育活动总结
2015/05/07 职场文书
小区物业管理2015年度工作总结
2015/10/22 职场文书
《坐井观天》教学反思
2016/02/18 职场文书
导游词之丽江普济寺
2019/10/22 职场文书
剑指Offer之Java算法习题精讲二叉树的构造和遍历
2022/03/21 Java/Android