先看效果图吧
O(∩_∩)O哈哈~

代码在这里

<!dOCTYPE html>
<html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" /><title>绘制象棋</title><style>body {background-color: #C5C5C5;}canvas {position: fixed;background-color: #FFFFFF;top: 50%;left: 50%;transform: translate(-50%, -50%);}</style></head><body><canvas id="canvas" width="580" height="630"></canvas><script>let canvas = document.getElementById('canvas')let cxt = canvas.getContext('2d')drawBorder()drawBorder2()drawBorder3()drawBorder4()drawBorder5()drawFont()function drawFont() {cxt.font = '40px Verdana'cxt.fillText('楚河', 70, 330)cxt.translate(510, 300) //重新映射画布上的(x,y)位置cxt.rotate(180 * Math.PI / 180) // 旋转当前绘图:旋转 180 度,可规定下面的公式:180*Math.PI/180cxt.fillText('漢界', 0, 0)}// 外边框大function drawBorder() {cxt.beginPath()// 方法1// 上边线// cxt.moveTo(10,10)// cxt.lineTo(570,10)                // // 下边线// cxt.moveTo(10,620)// cxt.lineTo(570,620) // // 左边线// cxt.moveTo(10,8)// cxt.lineTo(10,622) // // 右边线// cxt.moveTo(570,8)// cxt.lineTo(570,622)//  方法2cxt.moveTo(10, 10)cxt.lineTo(570, 10)cxt.lineTo(570, 620)cxt.lineTo(10, 622)cxt.lineTo(10, 8)cxt.lineWidth = 4;cxt.stroke()cxt.closePath()}// 边框2function drawBorder2() {cxt.beginPath()for (let i = 0; i <= 10; i++) {// 棋盘横向边线cxt.moveTo(15, 66.5 * i + 15)cxt.lineTo(564, 66.5 * i + 15)}// 左边线cxt.moveTo(16, 16)cxt.lineTo(16, 614)// 右边线cxt.moveTo(564, 14)cxt.lineTo(564, 614)cxt.lineWidth = 2cxt.stroke()cxt.closePath()}// 绘制上下的Xfunction drawBorder3() {cxt.beginPath()for (let s = 1; s <= 7; s++) {// 棋盘上半边纵向线cxt.moveTo(70 * s + 16, 16)cxt.lineTo(70 * s + 16, 280)// 棋盘下半边纵向线cxt.moveTo(70 * s + 16, 348)cxt.lineTo(70 * s + 16, 614)}// 上半部分棋盘斜线cxt.moveTo(225, 150)cxt.lineTo(365, 16)cxt.moveTo(368, 150)cxt.lineTo(226, 16)// 下半部分棋盘斜线cxt.moveTo(366, 612)cxt.lineTo(226, 481)cxt.moveTo(228, 612)cxt.lineTo(366, 481)cxt.lineWidth = 2cxt.stroke()cxt.closePath()}// 上半部分function drawBorder4() {cxt.beginPath()// line 1-1cxt.moveTo(72, 144)cxt.lineTo(82, 144)cxt.lineTo(82, 134)// line 1-2cxt.moveTo(100, 144)cxt.lineTo(90, 144)cxt.lineTo(90, 134)// line 1-3cxt.moveTo(492, 144)cxt.lineTo(502, 144)cxt.lineTo(502, 134)// line 1-4cxt.moveTo(519, 144)cxt.lineTo(510, 144)cxt.lineTo(510, 134)// line 2-1cxt.moveTo(72, 152)cxt.lineTo(82, 152)cxt.lineTo(82, 160)// line 2-2cxt.moveTo(99, 152)cxt.lineTo(90, 152)cxt.lineTo(90, 160)// line 2-3cxt.moveTo(492, 152)cxt.lineTo(502, 152)cxt.lineTo(502, 160)// line 2-4cxt.moveTo(519, 152)cxt.lineTo(510, 152)cxt.lineTo(510, 160)// line 3-1cxt.moveTo(30, 210)cxt.lineTo(20, 210)cxt.lineTo(20, 200)// line 3-2cxt.moveTo(142, 210)cxt.lineTo(152, 210)cxt.lineTo(152, 200)// line 3-3cxt.moveTo(170, 210)cxt.lineTo(160, 210)cxt.lineTo(160, 200)// line 3-4cxt.moveTo(282, 210)cxt.lineTo(292, 210)cxt.lineTo(292, 200)// line 3-5cxt.moveTo(310, 210)cxt.lineTo(300, 210)cxt.lineTo(300, 200)// line 3-6cxt.moveTo(422, 210)cxt.lineTo(432, 210)cxt.lineTo(432, 200)// line 3-7cxt.moveTo(450, 210)cxt.lineTo(440, 210)cxt.lineTo(440, 200)// line 3-8cxt.moveTo(550, 210)cxt.lineTo(560, 210)cxt.lineTo(560, 200)// line 4-1 cxt.moveTo(30, 220)cxt.lineTo(20, 220)cxt.lineTo(20, 230)// line 4-2cxt.moveTo(142, 220)cxt.lineTo(152, 220)cxt.lineTo(152, 230)// line 4-3cxt.moveTo(170, 220)cxt.lineTo(160, 220)cxt.lineTo(160, 230)// line 4-4cxt.moveTo(282, 220)cxt.lineTo(292, 220)cxt.lineTo(292, 230)// line 4-5cxt.moveTo(310, 220)cxt.lineTo(300, 220)cxt.lineTo(300, 230)// line 4-6cxt.moveTo(422, 220)cxt.lineTo(432, 220)cxt.lineTo(432, 230)// line 4-7cxt.moveTo(450, 220)cxt.lineTo(440, 220)cxt.lineTo(440, 230)// line 4-8cxt.moveTo(550, 220)cxt.lineTo(560, 220)cxt.lineTo(560, 230)cxt.lineWidth = 2cxt.stroke()cxt.closePath()}function drawBorder5() {cxt.beginPath()// line 5-1cxt.moveTo(30, 410)cxt.lineTo(20, 410)cxt.lineTo(20, 400)// line 5-2cxt.moveTo(142, 410)cxt.lineTo(152, 410)cxt.lineTo(152, 400)// line 5-3cxt.moveTo(170, 410)cxt.lineTo(160, 410)cxt.lineTo(160, 400)// line 5-4 cxt.moveTo(282, 410)cxt.lineTo(292, 410)cxt.lineTo(292, 400)// line 5-5cxt.moveTo(310, 410)cxt.lineTo(300, 410)cxt.lineTo(300, 400)// line 5-6cxt.moveTo(422, 410)cxt.lineTo(432, 410)cxt.lineTo(432, 400)// line 5-7cxt.moveTo(450, 410)cxt.lineTo(440, 410)cxt.lineTo(440, 400)// line 5-8cxt.moveTo(550, 410)cxt.lineTo(560, 410)cxt.lineTo(560, 400)// line 6-1cxt.moveTo(30, 418)cxt.lineTo(20, 418)cxt.lineTo(20, 428)// line 6-2cxt.moveTo(142, 418)cxt.lineTo(152, 418)cxt.lineTo(152, 428)// line 6-3cxt.moveTo(170, 418)cxt.lineTo(160, 418)cxt.lineTo(160, 428)// line 6-4cxt.moveTo(282, 418)cxt.lineTo(292, 418)cxt.lineTo(292, 428)// line 6-5cxt.moveTo(310, 418)cxt.lineTo(300, 418)cxt.lineTo(300, 428)// line 6-6cxt.moveTo(422, 418)cxt.lineTo(432, 418)cxt.lineTo(432, 428)// line 6-7cxt.moveTo(450, 418)cxt.lineTo(440, 418)cxt.lineTo(440, 428)// line 6-8cxt.moveTo(550, 418)cxt.lineTo(560, 418)cxt.lineTo(560, 428)// line 7-1cxt.moveTo(72, 476)cxt.lineTo(82, 476)cxt.lineTo(82, 466)//line 7-2cxt.moveTo(100, 476)cxt.lineTo(90, 476)cxt.lineTo(90, 466)//line 7-4cxt.moveTo(520, 476)cxt.lineTo(510, 476)cxt.lineTo(510, 466)// line 7-4 cxt.moveTo(492, 476)cxt.lineTo(502, 476)cxt.lineTo(502, 466)//line 8-1cxt.moveTo(100, 484)cxt.lineTo(90, 484)cxt.lineTo(90, 494)// line 8-2cxt.moveTo(72, 484)cxt.lineTo(82, 484)cxt.lineTo(82, 494)// line 8-3cxt.moveTo(492, 484)cxt.lineTo(502, 484)cxt.lineTo(502, 494)// line8-4cxt.moveTo(520, 484)cxt.lineTo(510, 484)cxt.lineTo(510, 494)cxt.lineWidth = 2cxt.stroke()cxt.closePath()}</script></body>
</html>

使用canvas 绘制象棋棋盘相关推荐

  1. html画布创建黑白象棋棋盘,Canvas绘制象棋棋盘

    学习Canvas可以通过一些例子来增加成就感 一下是一个输出一个象棋棋盘的例子 象棋棋盘 //以要画的点为原点定义四个象限 var pointDefine=[[-1,-1],[1,-1],[-1,1] ...

  2. C语言绘制象棋棋盘/残局

    设计程序,画一个中国象棋棋盘,配上你喜欢的底色,中间写上"楚河汉界"四字. 选做:找一个象棋残局画出来 先附上效果图: 运行环境:vc 6.0,含EasyX库 源代码如下: #in ...

  3. Canvas绘制五子棋棋盘

    一.前台HTML中添加canvas(将width与height写入html中,放入css文件中显示的样式不一致) <canvas id="mycanvas" class=&q ...

  4. python绘制象棋棋盘图片_Python开发象棋小游戏(绘制棋盘)

    上一篇中,我们缕清了思路,知道了如何写,怎么做,从哪入手,这一篇,我们就正式开始敲代码了,编程使我快乐,对吧,emm~~~ 还记得这张图吧: 编程完成 好了,向着目标,进发了... 程序中牵扯到的函数 ...

  5. PHP绘制99的棋盘,JS canvas绘制五子棋的棋盘

    本文为大家分享了JS canvas绘制五子棋棋盘的具体代码,供大家参考,具体内容如下 box-shadow:给元素块周边添加阴影效果. 语法:box-shadow: h-shadow v-shadow ...

  6. 用python画象棋棋盘_Python turtle绘画象棋棋盘

    通过使用turtle绘画象棋棋盘,供大家参考,具体内容如下 # 绘制象棋棋盘 import turtle t = turtle.Pen() t.width(2) # 设置画笔粗细 t.speed(1) ...

  7. 使用Python绘画象棋棋盘(turtle)

    通过使用turtle绘画象棋棋盘 # 绘制象棋棋盘 import turtle t = turtle.Pen() t.width(2) # 设置画笔粗细 t.speed(1) # 设置画笔移动速度# ...

  8. JAVA中用程序绘制国际象棋与中国象棋棋盘

    JAVA API 中的绘制图形类的paint()方法,我们可以轻松绘制中国象棋与国际象棋的棋盘.详见代码: 一.中国象棋棋盘代码 import java.awt.Font; import java.a ...

  9. 中国象棋棋盘java_java绘制国际象棋与中国象棋棋盘

    JAVA API 中的绘制图形类的paint()方法,我们可以轻松绘制中国象棋与国际象棋的棋盘.详见代码: 一.中国象棋棋盘代码 import java.awt.Font; import java.a ...

最新文章

  1. 用什么tricks能让模型训练得更快?先了解下这个问题的第一性原理
  2. ipvsadm的命令参考
  3. JAVA学习(七)__Spring的@Autowired注入规则
  4. 【蓝桥杯】基础练习 十进制转十六进制
  5. 打开terminal后conda出现ERROR REPORT
  6. sed查找文件包含字段_sed(查找替换) 与awk(提取字段)
  7. 教你如何找网络上的图片素材
  8. JPEG 及MJPEG开发笔记
  9. extend 和 append 的区别
  10. CEF3中js调用delphi内部方法
  11. JavaScript延时函数
  12. 昂达v891w可以用u盘linux,拆机小能手——ONDA 昂达 V891w CH 双系统电脑国产平板 拆解清灰!...
  13. idea安装教程(傻瓜式操作、永久使用)
  14. 《开源软件架构》--nginx架构概述
  15. css让文本不会被选中,鼠标变小手
  16. 高并发分布式场景下的应用---分布式锁
  17. (一)基于Django的人脸识别在线考试系统
  18. 在一起盗窃案中,法官对涉及到的四名犯罪嫌疑人A,B,C,D进行了审问.
  19. CH57X/CH58X系列BLE Mesh无线组网方案
  20. 物联网智能硬件与嵌入式系统

热门文章

  1. 虚拟机装域服务器的实训小结,虚拟机实训报告.doc
  2. 算POTCAR要上心!
  3. 计算机的未来展望英语作文,展望未来英语作文5篇
  4. U盘在电脑上读不出来是什么原因 U盘在电脑上读不出来怎么修复
  5. 点割集和边割集的理解
  6. 【20保研】热忱欢迎全国2020届优秀本科毕业生免试攻读重庆大学研究生
  7. 构建器builder模式 + lombok @Builder的介绍及使用
  8. 2023初级会计详细学习计划打卡表!自律逆袭,一次上岸!
  9. word提示 由于宏安全设置,无法找到宏或宏被禁用 隐藏的模块中的编译错误Declaration32 解决方法
  10. 关键词挖掘的方法和技巧