html5的画布canvas——画出弧线、旋转的图形实例代码+效果图


Posted in HTML / CSS onJune 09, 2013

在做旋转操作之前一定要理解一句话:旋转的是画布的坐标系而不是图形本身,好了,理解了这一句话后,接下来的就很简单了。
首先认识一下画圆的坐标:
html5的画布canvas——画出弧线、旋转的图形实例代码+效果图 

复制代码
代码如下:

<script language="javascript">
var cxt=document.getElementById('demo').getContext("2d");
cxt.beginPath();
cxt.arc(100,100,50,Math.PI*0.75,Math.PI*1.75,false);/*绘制一段半圆弧线,圆心坐标是100,100;开始弧度是0.75,结束弧度是1.75,最后一个参数False = 顺时针,true = 逆时针,当然,这个参数可选的*/
cxt.fillStyle="#F00";/*选择使用的颜色*/
cxt.fill();/*真正将图形画在画布上的一步,画第一个半圆*/
/*同理绘制第二个半圆*/
cxt.beginPath();
cxt.arc(170,100,50,Math.PI*1.25,Math.PI*0.25,false);
cxt.fillStyle="#F00";
cxt.fill();/*将绘制的图形画在画布上*/
cxt.beginPath();
/*将画布顺时针旋转45度,rotate函数的参数是弧度,所以要进行转换*/
cxt.rotate(45*Math.PI/180);
cxt.fillRect(141.1,-50,100,100);/*开始坐标为141.1,-50,宽和高都是100*/
cxt.fillStyle="#F00";
cxt.fill();
cxt.beginPath();
/*将画布旋转到正常的角度*/
cxt.rotate(-45*Math.PI/180);
cxt.font="60px 微软雅黑";
cxt.strokeStyle="#f00";
cxt.strokeText("我爱html5",0,300);/*两个参数,第一个是开始绘制文本的x轴坐标,第二个是开始绘制文本的Y坐标*/
cxt.stroke();
/*创建渐变*/
var grd=cxt.createLinearGradient(0,45,175,50);/*四个参数分别是渐变开始点x、y渐变结束点x、y*/
grd.addColorStop(0,"#FF0000");
grd.addColorStop(0.25,"#FFFF00");
grd.addColorStop(0.5,"#00FF00");
grd.addColorStop(0.75,"#00FFFF");
grd.addColorStop(1,"#FFFF00");
cxt.strokeStyle=grd;
cxt.strokeText("我爱canvas",0,400);/*两个参数,第一个是开始绘制文本的x轴坐标,第二个是开始绘制文本的Y坐标*/
cxt.stroke();
</script>

效果图:
html5的画布canvas——画出弧线、旋转的图形实例代码+效果图
HTML / CSS 相关文章推荐
CSS心形加载的动画源码的实现
Mar 09 HTML / CSS
一款基于css3和jquery实现的动画显示弹出层按钮教程
Jan 04 HTML / CSS
使用CSS3设计地图上的雷达定位提示效果
Apr 05 HTML / CSS
CSS3制作酷炫的条纹背景
Nov 09 HTML / CSS
CSS3实现王者荣耀匹配人员加载页面的方法
Apr 16 HTML / CSS
html5 sessionStorage会话存储_动力节点Java学院整理
Jul 06 HTML / CSS
html5 自定义播放器核心代码
Dec 20 HTML / CSS
检测浏览器对HTML5和CSS3支持度的方法
Jun 25 HTML / CSS
简单介绍HTML5中audio标签的使用
Sep 24 HTML / CSS
H5混合开发app如何升级的方法
Jan 10 HTML / CSS
Canvas波浪花环的示例代码
Aug 21 HTML / CSS
CSS3 天气图标动画效果
Apr 06 HTML / CSS
HTML5视频支持检测(检查浏览器是否支持视频播放)
Jun 08 #HTML / CSS
HTML5中如何显示视频呢 HTML5视频播放demo
Jun 08 #HTML / CSS
HTML5使用DOM进行自定义控制示例代码
Jun 08 #HTML / CSS
HTML5拖拽文件到浏览器并实现文件上传下载功能代码
Jun 06 #HTML / CSS
将HTML5 Canvas的内容保存为图片借助toDataURL实现
May 20 #HTML / CSS
仿酷狗html5手机音乐播放器主要部分代码
May 15 #HTML / CSS
基于HTML5 Canvas:字符串,路径,背景,图片的详解
May 09 #HTML / CSS
You might like
PHP IN_ARRAY 函数使用注意事项
2010/07/24 PHP
PHP中用正则表达式清除字符串的空白
2011/01/17 PHP
PHP abstract 抽象类定义与用法示例
2018/05/29 PHP
jQuery使用ajaxSubmit()提交表单示例
2014/04/04 Javascript
Jquery 实现grid绑定模板
2015/01/28 Javascript
使用jquery如何获取时间
2016/10/13 Javascript
vue2.0开发实践总结之入门篇
2016/12/06 Javascript
Bootstrap3 多选和单选框(checkbox)
2016/12/29 Javascript
详解Angular 4.x Injector
2017/05/04 Javascript
如何使用angularJs
2017/05/08 Javascript
vue绑定class与行间样式style详解
2017/08/16 Javascript
移动端滑动切换组件封装 vue-swiper-router实例详解
2018/11/25 Javascript
JS/HTML5游戏常用算法之路径搜索算法 随机迷宫算法详解【普里姆算法】
2018/12/13 Javascript
vue百度地图 + 定位的详解
2019/05/13 Javascript
VueJS 取得 URL 参数值的方法
2019/07/19 Javascript
vue页面跳转实现页面缓存操作
2020/07/22 Javascript
scrapy自定义pipeline类实现将采集数据保存到mongodb的方法
2015/04/16 Python
Python中字符串的处理技巧分享
2016/09/17 Python
将TensorFlow的模型网络导出为单个文件的方法
2018/04/23 Python
pytorch + visdom CNN处理自建图片数据集的方法
2018/06/04 Python
python实现汉诺塔算法
2021/03/01 Python
python简单验证码识别的实现方法
2019/05/10 Python
python 图片去噪的方法示例
2019/07/09 Python
Python面向对象之私有属性和私有方法应用案例分析
2019/12/31 Python
解决python脚本中error: unrecognized arguments: True错误
2020/04/20 Python
Python 整行读取文本方法并去掉readlines换行\n操作
2020/09/03 Python
俄罗斯卫浴采暖及维修用品超级市场:Dkrussia
2020/05/12 全球购物
编程实现当输入某产品代码则打印出该产品记录的功能
2014/05/03 面试题
护理专业毕业生推荐信
2013/10/31 职场文书
xxx同志考察材料
2014/02/07 职场文书
珍惜水资源建议书
2014/03/12 职场文书
入党自我鉴定
2014/03/25 职场文书
合作协议书
2014/04/23 职场文书
支部书记四风问题对照检查材料
2014/10/04 职场文书
单位收入证明范本
2015/06/18 职场文书
java实现web实时消息推送的七种方案
2022/07/23 Java/Android