• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > HTML5 Canvas绘制五星红旗_html5教程技巧

HTML5 Canvas绘制五星红旗_html5教程技巧

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含HTML5,Canvas,五星红旗等相关知识,匿名希望在学习及工作中可以帮助到您
Canvas 绘图 API 都没有定义在 元素本身上,而是定义在通过画布的 getContext() 方法获得的一个“绘图环境”对象上。

Canvas API 也使用了路径的表示法。但是,路径由一系列的方法调用来定义,而不是描述为字母和数字的字符串,比如调用 beginPath() 和 arc() 方法。

一旦定义了路径,其他的方法,如 fill(),都是对此路径操作。绘图环境的各种属性,比如 fillStyle,说明了这些操作如何使用。

使用Canvas画中国国旗,代码:

  1. >
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>中国标准国旗title>
  6. head>
  7. <body>
  8. <canvas id="canvas" width="600" height="400">canvas>
  9. <script type="text/javascript">
  10. // 使用HTML5绘制标准五星红旗
  11. var canvas = document.getElementById("canvas");
  12. var context = canvas.getContext('2d');
  13. var width = canvas.width;
  14. var height = width * 2 / 3;
  15. var w = width / 30;//小网格的宽
  16. context.fillStyle = "red";
  17. context.fillRect(0, 0, width, height);
  18. var maxR = 0.15, minR = 0.05;//
  19. var maxX = 0.25, maxY = 0.25;//大五星的位置
  20. var minX = [0.50, 0.60, 0.60, 0.50];
  21. var minY = [0.10, 0.20, 0.35, 0.45];
  22. // 画大 ☆
  23. var ox = height * maxX, oy = height * maxY;
  24. create5star(context, ox, oy, height * maxR, "#ff0", 0);//绘制五角星
  25. // 画小 ★
  26. for (var idx = 0; idx < 4; idx++) {
  27. var sx = minX[idx] * height, sy = minY[idx] * height;
  28. var theta = Math.atan((oy - sy) / (ox - sx));
  29. create5star(context, sx, sy, height * minR, "#ff0", -Math.PI / 2 + theta);
  30. }
  31. //辅助线
  32. context.moveTo(0, height / 2)
  33. context.lineTo(width, height / 2);
  34. context.stroke();
  35. context.moveTo(width / 2, 0);
  36. context.lineTo(width / 2, height);
  37. context.stroke();
  38. //画网格,竖线
  39. for (var j = 0; j < 15; j++) {
  40. context.moveTo(j * w, 0);
  41. context.lineTo(j * w, height / 2);
  42. context.stroke();
  43. }
  44. //画网格,横线
  45. for (var j = 0; j < 10; j++) {
  46. context.moveTo(0, j * w);
  47. context.lineTo(width / 2, j * w);
  48. context.stroke();
  49. }
  50. //画大圆
  51. context.beginPath();
  52. context.arc(ox, oy, maxR * height, 0, Math.PI * 2, false);
  53. context.closePath();
  54. context.stroke();

您可能想查找下面的文章:

  • HTML5知识点总结
  • HTML5的本地存储
  • HTML5本地存储之IndexedDB
  • Html5实现文件异步上传功能
  • Html5新标签datalist实现输入框与后台数据库数据的动态匹配
  • 详解HTML5 window.postMessage与跨域
  • HTML5拖放API实现拖放排序的实例代码
  • 解决html5中video标签无法播放mp4问题的办法
  • HTML5新特性 多线程(Worker SharedWorker)
  • Html5新增标签有哪些

相关文章

  • 2018-12-03HTML5第五天笔记
  • 2018-12-03range对象的clone方法
  • 2018-12-03HTML5能干什么?详解html5的功能
  • 2018-12-03htnl5利用svg页面高斯模糊的方法
  • 2018-12-03小强的HTML5移动开发之路(52)——jquerymobile中的触控交互
  • 2018-12-03如何在canvas里面基于随机点绘制一个多边形
  • 2018-12-03HTML5实践-灰色图片画廊实现的方法
  • 2018-12-032小时完成HTML5拼图小游戏代码图文介绍
  • 2018-12-03SVG(可缩放矢量图形)基本图形绘制方法与path路径命令
  • 2018-12-03H5中文件上传的详细介绍

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • 突袭HTML5之Javascript API扩展2—地理信息服务及地理位置API学习
    • Websocket原理的深入理解
    • html5时钟实现代码_html5教程技巧
    • HTML5加载时的等待动画效果制作
    • 使用HTML5中的localStorage实现记住密码功能
    • 如何通过html和css完成下拉菜单的制作?
    • HTML5 新事件 小结
    • 关于开源库件的详细介绍
    • 基于HTML5代码实现折叠菜单附源码下载
    • HTML5怎样正确的使用HTML的地理定位?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有