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/ .网站上有对应每一 ...
随机推荐
- 一台电脑安装多个版本的jdk
我们平时在做Java开发的时候,有时需要使用多个版本的jdk, 那么一台电脑上需要安装多个JDK了. 那一台电脑上可不可以同时安装多个版本的jdk呢? 答案是可以的! 但使用的时候,只能使用一个,不能 ...
- WPF中获取鼠标相对于桌面位置
var transform = PresentationSource.FromVisual(this).CompositionTarget.TransformFromDevice; var mouse ...
- [资料分享]尚硅谷JavaWeb
下载链接: 链接:https://pan.baidu.com/s/1pKMclsv 密码:8fbh
- CodeSimth-.NetFrameworkDataProvider可能没有安装。解决方法
原文地址:http://www.haogongju.net/art/2561889 1.下载System.Data.SQLite驱动:注意:根据自己的CPU选择是32位还是64位的驱动.建议选择4.0 ...
- linux安装oracle11g
准备oracle安装文件 Oracle11gR2包含两个文件linux_11gR2_database_1of2.zip和linux_11gR2_database_2of2.zip,将这两个文件通过SS ...
- linux 字符设备驱动写法
字符设备,块设备书 一.register_chrdev_region, register_chrdev, misc_register misc device(杂项设备) 在 Linux 内核的incl ...
- ubuntu下安装了express2.5.8,如何更新它?
在ubuntu上通过apt-get install node-express,结果发现它的版本是2.5.8. 想安装express4.0+的版本,一直不能正确安装,所以一时兴起,打算先删掉它,再重新安 ...
- java web(六)多个请求对应一个Servlet
概要: 提交请求的常用方式有两种,get/post , 运行程序后被请求,在加载执行web.xml文件时通过该文件中的映射关系找到即将要执行的Servlet; 而在要执行的Servlet文件中可通过反 ...
- 初学者-PHP笔记
PHP介绍 PHP 是 "PHP Hypertext Preprocessor" 的首字母缩略词 PHP 是一种被广泛使用的开源脚本语言 PHP 脚本在服务器上执行 PHP 没有成 ...
- Spring4 实例
结构目录如下: 其中: dao层和entity层都属于hibernate的的管辖.entity层里面装的是每张表对应的持久化类.dao层里面装的是"底层操作数据库的行为",仅仅只是 ...