html5 canvas 画图代码如下,仅供参考学习
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>用HTML5 Canvas做一个画图板</title>
<style type="text/css">
        body,p{margin:0;padding:0;}
        .content {
            display: block;
            font-size: 14px;
            margin: 0px 2px 0px 2px;
            padding: 0px 15px 0px 15px;
            line-height: 150%;
            color: #1A2536;
            font-family:"PT Serif", Georgia, Times,"Times New Roman","Heiti SC","Microsoft Yahei","微软雅黑","宋体", serif;
        }
</style>
 
</head>
<body>
    <div id="content">
      <canvas id="the_stage" width="520" height="350" style="border: 1px solid #999;">
      </canvas>
    </div> 
     
    <script type="text/javascript">
    function Draw(arg){
        if(arg.nodeType){   //判断结点类型
            this.canvas = arg;     
        }else if(typeof arg =='string'){
            this.canvas = document.getElementById(arg);
        }else{
            return;
        }
        this.init();
    }
     
    Draw.prototype = {
        init:function(){
                var that =this;
                if (!this.canvas.getContext) {  //判断是否支持Canvas
                    return;
                }
                this.context =this.canvas.getContext('2d');
                this.canvas.onselectstart =function(){ //去掉选择
                    return false;
                };
                this.canvas.onmousedown =function(){
                    that.drawBegin(event);
                };
        },
        drawBegin:function(e){
            var that =this,
                 stage_info =this.canvas.getBoundingClientRect();  //getBoundingClientRect()可以不用考虑兼容性
            window.getSelection()?window.getSelection().removeAllRanges():document.selection.empty();//清除文本的选中
             
            this.context.moveTo(
                e.clientX - stage_info.left,
                e.clientY - stage_info.top         
            );
            document.onmousemove =function(){
                that.drawing(event);
            };
            document.onmouseup =this.drawEnd;      
        },
        drawing:function(e){
            var stage_info =this.canvas.getBoundingClientRect();
             
            this.context.lineTo(
                e.clientX - stage_info.left,
                e.clientY - stage_info.top         
            );
            this.context.stroke();  //相当与fill(),填充
        },
         
        drawEnd:function(){
            document.onmousemove = document.onmouseup =null;      //释放内存
        }
         
    };
     
    var draw =new Draw('the_stage');
 
</script>
</body>
</html>