canvas教程

html Canvas 画图 能够选择并能移动

字号+ 作者:H5之家 来源:H5之家 2018-03-29 15:04 我要评论( )

本文将为关注织梦者的朋友提供的是的html Canvas 画图 能够选择并能移动相关教程,具体实例代码请看下文:canvas 画图,能够选中所画的图片并且能够随意移动图片h

本文将为关注织梦者的朋友提供的是的html Canvas 画图 能够选择并能移动相关教程,具体实例代码请看下文:

canvas 画图,能够选中所画的图片并且能够随意移动图片<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> <script type="text/" src="JS/jquery.min.js"></script> </head> <body> <canvas></canvas> <input type="button" value="画矩形" /> <input type="button" value="画线"/> <p></p> </body> </html> <script> var c = document.getElementById("myCanvas"); var ctx = c.getContext("2d"); var list = []; var currentImag; var ax, ay, x, y; var startmove = false; var c = document.getElementById("myCanvas"); c.onmousedown = function (e) { for (var i = 0; i < list.length; i++) { var w = list[i].x + list[i].width; var h = list[i].y + list[i].height; if (e.clientX < w && e.clientX > list[i].x && e.clientY < h && e.clientY > list[i].y) { currentImag = list[i]; startmove = true; console.log("select: true"); } } }; c.onmousemove = function (e) { console.log("x:" + e.pageX + " y:" + e.pageY); if (currentImag == null) return; console.log("moveselect:true"); x = e.clientX; y = e.clientY; //限制移动不能超出画布 (x < 40) ? ax = 20 : ax = 480; (y < 40) ? ay = 20 : ay = 380; (x < 480 && x > 20) ? x = e.clientX : x = ax; (y < 380 && y > 20) ? y = e.clientY : y = ay; //清除之前图片然后重新绘制 ctx.clearRect(0, 0, c.width, c.height); currentImag.x = x; currentImag.y = y; Piant(); ctx.drawImage(currentImag, x - 20, y - 20, currentImag.width, currentImag.height); }; c.onmouseup = function () { //c.onmousemove = null; //c.onmouseup = null; currentImag = null; startmove = false; }; function Piant() { if (startmove) { for (var i = 0; i < list.length; i++) { ctx.drawImage(list[i], list[i].x - 20, list[i].y - 20, list[i].width, list[i].height); } } } function DrawingRec() { //ctx.beginPath(); //ctx.fillStyle = "#000000"; //ctx.fillRect(200, 100, 150, 75); //ctx.closePath(); var img = new Image(); img.src = "default/images/panel_tools.png"; img.x = 50; img.y = 50; img.width = 40; img.height = 40; ctx.drawImage(img, 50, 50, img.width, img.height); list.push(img); } </script>

  

谢谢您的访问.

这些内容可能对你也有帮助

更多可查看Javascript教程列表页。

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • delphi 画图示例源码(LiveBinding)

    delphi 画图示例源码(LiveBinding)

    2018-03-29 16:00

  •  canvas对象入门

    canvas对象入门

    2018-03-29 14:12

  • HTML5学习笔记(一)canvas画图

    HTML5学习笔记(一)canvas画图

    2018-03-12 17:01

  • 包邮 HTML5游戏开发案例教程 HTML5跨平台游戏开发教程书籍 Canva

    包邮 HTML5游戏开发案例教程 HTML5跨平台游戏开发教程书籍 Canva

    2018-03-12 15:00

网友点评
c