canvas详解---矩形绘制
首先,就上述绘制弧线的章节进行一个小小的补充;
如果我们使用了context.beginPath();紧接着后面的context.moveTo(x,y),可以改为context.lineTo(x,y)效果是一样的;
好了,现在来开始我们这一章的内容了
编写一个绘制矩形的接口函数
<script type=text/javascript>
var canvas=document.getElementById("canvas");
var context=canvas.getContext("2d");
DrawRect(context,100,100,200,200,5,"red","blue");
function DrawRect(cxt,x,y,w,h,borderWidth,bordercolor,fillcolor)
{
cxt.lineWidth=borderWidth;
cxt.strokeStyle=bordercolor;
cxt.fillStyle=fillcolor;
cxt.beginPath();
cxt.moveTo(x,y);
cxt.lineTo(x+w,y);
cxt.lineTo(x+w,y+h);
cxt.lineTo(x,y+h);
cxt.lineTo(x,y);
cxt.closePath();
cxt.fill();
cxt.stroke();
}
其中这就是一个简单的绘制矩形的方法,我们注意一件事情,如果我们想给一个图像不仅要填充,还要绘制边框,那我们要先填充,后绘制边框,这样我们的边框才会正常显示。
其实canvas本身就自带绘制矩形的方法;
例如context.rect(x,y,w,h);
var canvas=document.getElementById("canvas");
var context=canvas.getContext("2d");
context.strokeStyle="red";
context.fillStyle="blue";
context.lineWidth=5;
context.beginPath();
context.rect(100,100,200,200);
context.closePath();
context.fill();
context.stroke();
这样也可以绘制出一个起点为(100,100),长和宽都是200的正方形。
这个地方我们可以看出context.rect(x,y,w,h)其实只是绘制了路径。具体操作还没有封装
但是除了上述方法以外。canvas还提供了正真的绘制矩形的方法,fillRect(x,y,w,h)和strokeRect(x,y,w,h);
context.strokeStyle="red";
context.fillStyle="blue";
context.lineWidth=5;
context.fillRect(100,100,200,200);
context.strokeRect(100,100,200,200);
这样就可以了
canvas详解---矩形绘制的更多相关文章
- canvas详解----绘制线条
<!DOCTYPE html> <html> <head> <title>canvas详解</title> </head> &l ...
- canvas详解---绘制弧线
Draw an arc context.arc(centerx,centery,radius,startingAngle,endingAngle,anticlockwise=false); 参数一是圆 ...
- Android之canvas详解
首先说一下canvas类: Class Overview The Canvas class holds the "draw" calls. To draw something, y ...
- HTML5中的Canvas详解
什么是Canvas HTML5 <canvas> 元素用于图形的绘制,通过脚本 (通常是JavaScript)来完成.<canvas> 标签只是图形容器,您必须使用脚本来绘制图 ...
- 转载爱哥自定义View系列--Canvas详解
上面所罗列出来的各种drawXXX方法就是Canvas中定义好的能画什么的方法(drawPaint除外),除了各种基本型比如矩形圆形椭圆直曲线外Canvas也能直接让我们绘制各种图片以及颜色等等,但是 ...
- canvas绘制线条详解
canvas详解----绘制线条 <!DOCTYPE html> <html> <head> <title>canvas详解</title> ...
- android 开发 View _6_Canvas详解
牛逼大神的博客地址:http://www.gcssloop.com/customview/Canvas_BasicGraphics 安卓自定义View进阶-Canvas之绘制图形 在上一篇自定义Vie ...
- 图形绘制 Canvas Paint Path 详解
图形绘制简介 Android中使用图形处理引擎,2D部分是android SDK内部自己提供,3D部分是用Open GL ES 1.0.大部分2D使用的api都在android.grap ...
- 详解使用CSS3绘制矩形、圆角矩形、圆形、椭圆形、三角形、弧
1.矩形 绘制矩形应该是最简单的了,直接设置div的宽和高,填充颜色,效果就出来了. 2.圆角矩形 绘制圆角矩形也很简单,在1的基础上,在使用css3的border-radius,即可. 3.圆 根据 ...
随机推荐
- Gamma阶段第九次scrum meeting
每日任务内容 队员 昨日完成任务 明日要完成的任务 张圆宁 #91 用户体验与优化https://github.com/rRetr0Git/rateMyCourse/issues/91(持续完成) # ...
- PB级数据实时查询,滴滴Elasticsearch多集群架构实践
PB级数据实时查询,滴滴Elasticsearch多集群架构实践 mp.weixin.qq.com 点击上方"IT牧场",选择"设为星标"技术干货每日送达 点 ...
- ASP.NET Core Windows服务开发技术实战演练
一.课程介绍 人生苦短,我用.NET Core!大家都知道如果想要程序一直运行在Windows服务器上,最好是把程序写成Windows服务程序:这样程序会随着系统的自动启动而启动,自动关闭而关闭,不需 ...
- maven 打包添加依赖
1.将依赖与自己的代码打入同一个jar包 只需在pom中添加如下plugin 在include 中添加需要的依赖,在exclude 中添加不需要的依赖 <groupId>org.apach ...
- 利用docker实现私有镜像仓库
利用docker实现私有镜像仓库 在linux服务器上安装了docker过后,可以拉取docker镜像仓库: docker pull registry 再执行命令让镜像run起来: docker ru ...
- Ladon内网渗透扫描器PowerShell版
程序简介 Ladon一款用于大型网络渗透的多线程插件化综合扫描神器,含端口扫描.服务识别.网络资产.密码爆破.高危漏洞检测以及一键GetShell,支持批量A段/B段/C段以及跨网段扫描,支持URL. ...
- 第十节:Asp.Net Core 配置详解和选项模式
一. 各种文件的读取 1.说明 在.Net Core中,各种配置文件的读取都需要依赖[Microsoft.Extensions.Configuration]程序集,当然在Asp.Net Core中已经 ...
- golang基础语法
golang语言的常量定义: const filename="abc.txt"; const filename String="abc.txt" golang ...
- C++ 数组输出
C++中输出数组数据分两种情况:字符型数组和非字符型数组 当定义变量为字符型数组时,采用cout<<数组名; 系统会将数组当作字符串来输出,如: ]={'}; cout << ...
- 示例:在Nuget发布自己的包的步骤
原文:示例:在Nuget发布自己的包的步骤 一.目的:很多时候都在用第三方的Nuget包,现成的轮子可以减少很多工作量,同时我们也可以造轮子供自己和其他人使用,本示例主要演示如何发布dll到Nuget ...