您现在的位置是:网站首页> 编程资料编程资料
一波HTML5 Canvas基础绘图实例代码集合HTML5 canvas基本绘图之图形组合HTML5 canvas基本绘图之绘制阴影效果HTML5 canvas基本绘图之文字渲染HTML5 canvas基本绘图之绘制曲线HTML5 canvas基本绘图之图形变换HTML5 canvas基本绘图之填充样式实现HTML5 canvas基本绘图之绘制线条HTML5 canvas基本绘图之绘制五角星HTML5 canvas基本绘图之绘制矩形HTML5 canvas基本绘图之绘制线段
2021-08-31
882人已围观
简介 这篇文章主要介绍了一波HTML5 Canvas基础绘图实例代码集合,包括圆形矩形圆角等基本图形的绘制,需要的朋友可以参考下
基本绘制
XML/HTML Code复制内容到剪贴板
- var canvas = document.getElementById('canvas');
- if (canvas.getContext) {
- var context = canvas.getContext('2d');
- // 线宽
- context.lineWidth = 4;
- // 画笔颜色
- context.strokeStyle = 'red';
- // 填充色
- context.fillStyle = "red";
- // 线帽类型
- context.lineCap = 'butt'; // round, square
- // 开始路径
- context.beginPath();
- // 起点
- context.moveTo(10,10);
- // 终点
- context.lineTo(150,50);
- // 绘制
- context.stroke();
- }
矩形
XML/HTML Code复制内容到剪贴板
- var canvas = document.getElementById('canvas');
- if (canvas.getContext) {
- context.beginPath();
- context.strokeRect(10,10,70,40);
- // 矩形的另一种方式
- context.rect(10,10.70,40);
- context.stroke();
- // 实心矩形
- context.beginPath();
- context.fillRect(10,10,70,40);
- // 另一种方式实心矩形
- context.beginPath();
- context.rect(10,10,70,40);
- context.fill();
- }
圆形
XML/HTML Code复制内容到剪贴板
- var canvas = document.getElementById('canvas');
- if (canvas.getContext) {
- context.beginPath();
- // 圆中心坐标x, 圆中心坐标Y, 圆弧半径, 起始角度,终止角度,是否逆时针
- // 第4个参数和第五个参数是要传入的弧度,如果画30角度,需要将其转化为弧度 30 * Math.PI / 180
- context.arc(100,100,70,0,130 * Math.PI / 180, true);
- context.stroke();
- context.fill();
- }
圆角
XML/HTML Code复制内容到剪贴板
- var canvas = document.getElementById('canvas');
- if (canvas.getContext) {
- context.beginPath();
- context.moveTo(20,20);
- context.lineTo(70,20);
- // 为一条路径画弧度p1.x p1.y p2.x, p2.y 弧半径,
- context.arcTo(120,30,120,70, 50);
- context.lineTo(120,120);
- context.stroke();
- // 擦除canvas 画板
- context.beginPath();
- context.fillRect(10,10,200,100);
- // 擦除区域
- context.clearRect(30,30,50,50);
- }
二次贝塞尔曲线
XML/HTML Code复制内容到剪贴板
- var canvas = document.getElementById('canvas');
- if (canvas.getContext) {
- context.beginPath();
- context.moveTo(100,100);
- context.quadraticCurveTo(20,50,200,20);
- context.stroke();
- }
三次贝塞尔曲线
XML/HTML Code复制内容到剪贴板
- var canvas = document.getElementById('canvas');
- if (canvas.getContext) {
- context.moveTo(68,130);
- var cX1 = 20;
- var cY1 = 10;
- var cX2 = 268;
- var cY2 = 10;
- var endX = 268;
- var endY = 170;
- context.bezierCurveTo(cX1, cY1, cX2, cY2, endX, endY);
- context.stroke();
- // 利用clip指定绘图区域,指定绘图区域之后,只能在绘图区域中进行绘图擦欧总
- // 绘制圆形
- context.arc(100,100,40,0, 360 * Math.PI/ 180 , true);
- // 限制区域
- context.clip();
- // 开始尝试绘制其他
- context.beginPath();
- context.fillStyle = 'lightblue';
- // 结果矩形并没有显示出来
- context.fillRect(0,0,300,150);
- }
画板进阶使用
XML/HTML Code复制内容到剪贴板
- var canvas = document.getElementById('canvas');
- if (canvas.getContext) {
- var context = canvas.getContext('2d');
- /*
- * drawImage(image,dx,dy)
- * drawImage(image,dx,dy,dw,dh)
- * drawImage(image,sx,sy,sw,sh,dx,dy,dw,dh);
- * image 绘图对象
- * dx dy canvas 的坐标
- * dw,dh 表示 image 在canvas中即将绘图的位置
- * sw,sh 表示image 所要绘图的区域
- * sx,sy 所要绘图的开始位置
- */
- var image = document.getElementById('img');
- context.drawImage(image, 0, 0);
- var img = new Image();
- img.src = 'images/1.jpg';
- img.onload = function(){
- // drawImage
- // 从 0,0 坐标开始绘制
- // context.drawImage(img,0,0);
- // 从0,0 开始,绘制整张图到100,100 长宽
- // context.drawImage(img, 0, 0, 100, 100);
- // 截图,50,50 到 100,100 从 260,130 开始绘制,放到 100,100 长宽区域中
- // context.drawImage(img, 50, 50, 100,100, 260, 130, 100, 100);
- // 利用getImageData 和 putImageData 绘制图片
-
相关内容
- 很酷的HTML5电子书翻页动画特效css transform 翻页动画记录的实现HTML5 3D书本翻页动画的实现示例使用纯CSS实现书籍3D翻页效果的示例一个不错的html 打印代码支持翻页css实现点击滚动翻页的效果(无js)css3实现书本翻页效果的示例代码
- 推荐10个HTML5响应式框架分享那些Web设计大神们常用的响应式框架(小结)
- 整理HTML5中支持的URL编码与字符编码Html5无刷新修改browser Url的方法HTML5 input元素类型:email及url介绍将HTML5 Canvas的内容保存为图片借助toDataURL实现HTML5无刷新改变当前url的代码
- 浅析HTML5的WebSocket与服务器推送事件HTML5+WebSocket实现多文件同时上传的实例HTML5-WebSocket实现聊天室示例HTML5实现WebSocket协议原理浅析html5的websockets全双工通信详解学习示例利用html5的websocket实现websocket聊天室html5-websocket基于远程方法调用的数据交互实现基于HTML5的WebSocket的实例代码
- 在HTML5中使用MathML数学公式的简单讲解基于HTML5的数学函数图形绘制插件XCalc源码用HTML5中的Canvas结合公式绘制粒子运动的教程
- 全面解析HTML5中的标准属性与自定义属性详解HTML5 data-* 自定义属性HTML5自定义属性前缀data-及dataset的使用方法(html5 新特性)html5的自定义data-*属性与jquery的data()方法的使用HTML5的自定义属性data-*详细介绍和JS操作实例HTML5自定义data-* data(obj)属性和jquery的data()方法的使用HTML5自定义属性的问题分析
- 简单整理HTML5的基本特性和语法HTML学习笔记--HTML的语法详解(必看)详解HTML&CSS&JavaScript语法辞典-(专业版) (半场方人) PDF扫描版 93.1Html5 语法与规则简要概述HTML5的语法变化介绍HTML5 新旧语法标记对我们有什么好处HTML语法大全_html语言语法大全(必看)
- HTML5实现预览本地图片 HTML5本地存储之IndexedDBhtml5中localStorage本地存储的简单使用HTML5 LocalStorage 本地存储刷新值还在详解HTML5 LocalStorage 本地存储 html5本地存储 localStorage操作使用详解Html5 web本地存储实例详解深入剖析webstorage[html5的本地数据处理]HTML5本地存储之Web Storage详解HTML5 本地存储 LocalStorage详解HTML5本地数据库基础操作详解
- HTML5新特性之用SVG绘制微信logo HTML5新特性之type=file文件上传功能HTML5新特性之语义化标签整理HTML5的一些新特性与Canvas的常用属性基于HTML5新特性Mutation Observer实现编辑器的撤销和回退操作HTML5 history新特性pushState、replaceState及两者的区别 HTML5有哪些新特征Html5新特性用canvas标签画多条直线附效果截图html5声频audio和视频video等新特性详细说明html5新特性与用法大全
- HTML5 Canvas入门学习教程HTML5中的nav标签学习笔记HTML5学习笔记之html5与传统html区别 HTML 5零距离接触:学习快速入门 中文pdf扫描版[1MB]HTML5学习心得总结(推荐)
点击排行
本栏推荐
