HTML5_03之Canvas绘图
1、Canvas绘图——JS绘图:
<canvas id='c1' width='' height=''></canvas>
* Canvas尺寸不能用CSS设置;
c1.height=;
c1.width=;
var ctx=c1.getContext('2d');
常用属性:
ctx.fillStyle='#f00'/gradient;
ctx.strokeStyle='#00f'/gradient;
ctx.lineWidth=;
ctx.font='px sans-sarfi';
ctx.textBaseline='alphabetic';
ctx.shadowBlur='';
常用方法:
绘制矩形:
ctx.fillRect();
ctx.strokeRect();
ctx.clearRect();
绘制文本:
ctx.fillText();
ctx.strokeText();
ctx.measureText(txt).width;
2、Canvas绘图——绘制路径:
作用:①创建选区(clip),对画布内容进行裁剪;
②进行描边(stroke),绘制任意形状的折线;
③进行填充(fill),填充出任意形状的图形;
相关函数:
ctx.beginPath();——开始一条新路径
ctx.arc();——绘制一条椭圆/圆弧/圆路径
ctx.moveTo(x,y);——移动到指定点
ctx.lineTo(x,y);——从上一点到指定点绘制直线
ctx.busierCurve();——绘制贝塞尔曲线
ctx.closePath();——闭合路径
ctx.clip();——基于当前路径进行裁切
ctx.stroke();——基于当前路径进行描边
ctx.fill();——基于当前路径进行填充
3、Canvas绘图——绘制图像:
①图像定位点位于自己左上角;
②绘制:
ctx.drawImage(img,x,y);//原始大小绘制
ctx.drawImage(img,x,y,w,h);//使用指定宽高绘制图像——图像大小缩放
③绘制图像时,必须等待图片异步加载完成:
var img=new Image();
img.src="xx.png";//向服务器异步请求图片
img.onload=function(){
ctx.drawImage(img,x,y,[w],[h]);
}
④图象旋转:
ctx.totate(deg);
⑤旋转轴点——默认坐标轴原点,若以某个固定点旋转,则须平移画布的坐标原点:
ctx.translate(x,y);
4、基于Canvas的图表绘制框架/工具库:
①Chart.js——免费开源,九类图表
②Echart.js——免费,百度提供,中文手册
③FusionChart.js——收费,功能强大
HTML5_03之Canvas绘图的更多相关文章
- Canvas绘图之平移translate、旋转rotate、缩放scale
画布操作介绍 画布绘图的环境通过translate(),scale(),rotate(), setTransform()和transform()来改变,它们会对画布的变换矩阵产生影响. 函数 方法 描 ...
- HTML5 学习总结(四)——canvas绘图、WebGL、SVG
一.Canvas canvas是HTML5中新增一个HTML5标签与操作canvas的javascript API,它可以实现在网页中完成动态的2D与3D图像技术.<canvas> 标记和 ...
- HTML5学习总结——canvas绘制象棋(canvas绘图)
一.HTML5学习总结——canvas绘制象棋 1.第一次:canvas绘制象棋(笨方法)示例代码: <!DOCTYPE html> <html> <head> & ...
- 伙伴们休息啦canvas绘图夜空小屋
HTML5 canvas绘图夜空小屋 伙伴们园友们,夜深了,休息啦,好人好梦... 查看效果:http://hovertree.com/texiao/html5/28/ 效果图如下: 代码如下: &l ...
- javascript的canvas绘图的基本用法
<canvas>是HTML里面非常强大的元素,利用它结合js可以实现很多动画效果,大大增强交互性.下面,我想用图文并茂的方式阐述一下canvas的绘图机制的基础内容,话不多说,先上代码: ...
- canvas绘图、WebGL、SVG
目录 一.Canvas 1.1.创建canvas元素 1.2.画线 1.3.绘制矩形 1.4.绘制圆弧 1.5.绘制图像 1.6.绘制文字 1.7.随机颜色与简单动画 二.WebGL 2.1.HTML ...
- HTML5 学习笔记(四)——canvas绘图、WebGL、SVG
一.Canvas canvas是HTML5中新增一个HTML5标签与操作canvas的javascript API,它可以实现在网页中完成动态的2D与3D图像技术.<canvas> 标记和 ...
- Canvas绘图基础(一)
简单图形绘制 矩形:描边与填充 Canvas的API提供了三个方法,分别用于矩形的清除.描边及填充 clearRect(double x, double y, double w, double h) ...
- Canvas绘图中的路径描边与填充
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博客地址为http://www.cnblogs.com/jasonnode/ .网站上有对应每一 ...
随机推荐
- SQL Server 递归
SQL Server 没有类似于Oracle START WITH NAME='xx' CONNECT BY PRIOR ID=PARENT_ID这样的语句,但是可以通过自定义标准函数+With语句实 ...
- C++模板分离
在正常情况下,c++模板是不允许在头文件声明,在cpp文件中实现.那是因为在cpp文件在编译时内存必须要给它分配储存空间.但是模板本身是一种泛型,在没有明确定义声明类型前,编译器也无法知道它的大小.所 ...
- JDBC驱动自身问题引发的FullGC
公众号HelloJava刊出一篇<MySQL Statement cancellation timer 故障排查分享>,作者的某服务的线上机器报 502(502是 nginx 做后端健康检 ...
- zookeeper在linux下自启动
Linux下设置zookeeper开机自启动 一.以root用户登录系统: 二.进入init.d文件夹 cd /etc/init.d/ 三.创建并打开zookeeper文件 vi zookeeper ...
- AngularJS:自定义过滤器
表达式: {{ expression | filter1 | filter2 | ... }} {{ expression | filterName : paramet ...
- express-session 保存遇到的问题
今天在用express4 试着做网站的时候,发现request.session 中一直不能保存新的值,还一直报一个错 express-session deprecated undefined resa ...
- Metaio在Unity3D中报错 Start: failed to load tracking configuration: TrackingConfigGenerated.xml 解决方法
报错:Start: failed to load tracking configuration: TrackingConfigGenerated.xml Start: failed to load t ...
- 学习 React(jsx语法) + es2015 + babel + webpack
视频学习地址: http://www.jtthink.com/course/play/575 官方地址 https://facebook.github.io/react/ 神坑: 1.每次this.s ...
- OPENDATASOURCE读取远程数据库数据中文乱码问题-sqlserver R2
insert into kraft_sync_Store(StoreName,StoreCode,Province,PrefectureCity,CountyCity,Region,Area,Unit ...
- [转]Tesseract 3.02中文字库训练
下载chi_sim.traindata字库下载tesseract-ocr-setup-3.02.02.exe 下载地址:http://code.google.com/p/tesseract-ocr/d ...