Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

JavaScript/2011년스터디/CanvasPaint: Difference between revisions

From ZeroWiki
imported>jereneal20
No edit summary
imported>jereneal20
No edit summary
Line 9: Line 9:
             var element;
             var element;
             var ctx;
             var ctx;
             var color=3;
             var color=3,drawmethod=1;
            var firstdotx,firstdoty;
             var dotx,doty;
             var seconddotx,seconddoty;
            var dottab=1;
             var temp;
             var temp;
           
        function draw()
        {
            if(ctx && flag){
                ctx.beginPath();
                drawColor();
                if(drawmethod==1) drawLines();
                else if(drawmethod==2) drawDotPoint();
            }
        }
           
             function hold()
             function hold()
             {
             {
Line 25: Line 34:
             function release()
             function release()
             {
             {
                ctx.closePath();
                 flag=false;
                 flag=false;
             }
             }
             function draw()
             {
                 if(ctx && flag){
//            var draw=new array();
                    ctx.beginPath();
//            draw.color=a;
                    switch(color){
//            draw.color();
                        case 0:
//           
                            ctx.arc(event.x-7, event.y-7, 8, 0, Math.PI*2, false);
             function selectColor(temp)
                            ctx.fillStyle="rgb(255, 255, 255)";
             {
                        break;
                 color=temp;
                        case 1:
            }
                            ctx.arc(event.x-7, event.y-7, 5, 0, Math.PI*2, false);
            function drawMethod(temp)
                            ctx.fillStyle="rgb(5, 5, 230)";
            {
                        break;
                drawmethod=temp;
                        case 2:
            }
                            ctx.arc(event.x-7, event.y-7, 5, 0, Math.PI*2, false);
           
                            ctx.fillStyle="rgb(230, 5, 5)";
           
                        break;
            function drawColor()
                        case 3:
            {
                            ctx.arc(event.x-7, event.y-7, 3, 0, Math.PI*2, false);
                switch(color){
                            ctx.fillStyle="rgb(0, 0, 0)";
                    case 0:
                    }
                    ctx.fillStyle="rgb(255, 255, 255)";
                    ctx.fill();
                    ctx.strokeStyle="rgb(255, 255, 255)";
                    break;
                    case 1:
                    ctx.fillStyle="rgb(5, 5, 230)";
                    ctx.strokeStyle="rgb(5, 5, 230)";
                    break;
                    case 2:
                    ctx.fillStyle="rgb(230, 5, 5)";
                    ctx.strokeStyle="rgb(255, 0, 0)";
                    break;
                    case 3:
                    ctx.fillStyle="rgb(0, 0, 0)";
                    ctx.strokeStyle="rgb(0, 0, 0)";
                 }
                 }
             }
             }
             function Color(temp)
             function drawDotPoint()
             {
             {
                 color=temp;
                 ctx.arc(event.x-7, event.y-7, 3, 0, Math.PI*2, false);
                ctx.fill();
             }
             }
             function line()
             function drawLines()
             {
             {
                 if(ctx && flag){
                 if(ctx && flag){
                     if(dottab==1){
                     ctx.beginPath();
                    ctx.lineWidth=3;
                    ctx.moveTo(dotx-7, doty-7);
                    ctx.lineTo(event.x-7, event.y-7);
                    dotx=event.x;
                    doty=event.y;
   
   
                        ctx.beginPath();
                    //ctx.arc(event.x-7, event.y-7, 8, 0, Math.PI*0.1, false);
                        firstdotx=event.x;
                    //ctx.fillStyle="rgb(255, 0, 0)";
                        firstdoty=event.y;
                    //ctx.fill();
                        ctx.lineWidth=3;
                    ctx.stroke();
                        ctx.moveTo(seconddotx-7, seconddoty-7);
                     return 0;
                        ctx.lineTo(firstdotx-7, firstdoty-7);
                        //ctx.arc(event.x-7, event.y-7, 8, 0, Math.PI*0.1, false);
                        //ctx.fillStyle="rgb(0, 0, 0)";
                        //ctx.fill();
                        ctx.stroke();
                        //dottab=2;
                        return 0;
                    }
                     else if(dottab==2){
                        ctx.beginPath();
                        seconddotx=event.x;
                        seconddoty=event.y;
                        ctx.lineWidth=3;
                        ctx.moveTo(firstdotx-7, firstdoty-7);
                        ctx.lineTo(seconddotx-7, seconddoty-7);
                        //ctx.arc(event.x-7, event.y-7, 8, 0, Math.PI*0.1, false);
                        //ctx.fillStyle="rgb(0, 0, 0)";
                        //ctx.fill();
                        ctx.stroke();
                        dottab=1;
                        return 0;
                    }
                 }
                 }
                  
                  
            }
            function switc()
            {
                alert(window.document.onmousemove);
             }
             }
             </script>
             </script>
     </head>
     </head>
     <body>
     <body>
         <canvas id="drawLine" width="300" height="300" onmousedown="hold();"  
         <canvas id="drawLine" width="300" height="300" onmousedown="hold();"  
             onmouseup="release();" onmouseout="release();" onmousemove="draw();"></canvas>
             onmouseup="release();" onmouseout="release();" onmousemove="draw();"></canvas>
         <button type="button" onclick="Color(2)"> Red </button>
         <button type="button" onclick="selectColor(3)"> Black </button>       
         <button type="button" onclick="Color(1)"> Blue </button>
        <button type="button" onclick="selectColor(2)"> Red </button>
         <button type="button" onclick="Color(0)"> White(Eraser) </button>
         <button type="button" onclick="selectColor(1)"> Blue </button>
         <button type="button" onclick="switc()"> LINE </button>
         <button type="button" onclick="selectColor(0)"> White(Eraser) </button>
         <button type="button" onclick="drawMethod(1)"> LINE </button>
        <button type="button" onclick="drawMethod(2)"> DOT </button>       
         <script>
         <script>
             element=document.getElementById("drawLine");
             element=document.getElementById("drawLine");

Revision as of 16:05, 17 August 2011

  • 소스를 올려주세요

김태진

<!doctype html>
<html>
    <head>
        <meta charset="utf-8"/>
        <script>
            var flag=false;
            var element;
            var ctx;
            var color=3,drawmethod=1;
            var dotx,doty;
            var temp;
            
        function draw()
        {	
            if(ctx && flag){
                ctx.beginPath();
                drawColor();
                if(drawmethod==1) drawLines();
                else if(drawmethod==2) drawDotPoint();
            }
        }
            
            function hold()
            {
                flag=true;
                
                element=document.getElementById('drawLine');
                ctx=element.getContext('2d');
                
                draw();
            }
            function release()
            {
                ctx.closePath();
                flag=false;
            }


//            var draw=new array();
//            draw.color=a;
//            draw.color();
//            
            function selectColor(temp)
            {
                color=temp;
            }
            function drawMethod(temp)
            {
                drawmethod=temp;
            }
            
            
            function drawColor()
            {
                switch(color){
                    case 0:
                    ctx.fillStyle="rgb(255, 255, 255)";
                    ctx.strokeStyle="rgb(255, 255, 255)";
                    break;
                    case 1:
                    ctx.fillStyle="rgb(5, 5, 230)";
                    ctx.strokeStyle="rgb(5, 5, 230)";
                    break;
                    case 2:
                    ctx.fillStyle="rgb(230, 5, 5)";
                    ctx.strokeStyle="rgb(255, 0, 0)";
                    break;
                    case 3:
                    ctx.fillStyle="rgb(0, 0, 0)";
                    ctx.strokeStyle="rgb(0, 0, 0)";
                }

            }
            function drawDotPoint()
            {
                ctx.arc(event.x-7, event.y-7, 3, 0, Math.PI*2, false);
                ctx.fill();
            }
            function drawLines()
            {
                if(ctx && flag){
                    ctx.beginPath();
                    ctx.lineWidth=3;
                    ctx.moveTo(dotx-7, doty-7);
                    ctx.lineTo(event.x-7, event.y-7);
                    dotx=event.x;
                    doty=event.y;

                    //ctx.arc(event.x-7, event.y-7, 8, 0, Math.PI*0.1, false);
                    //ctx.fillStyle="rgb(255, 0, 0)";
                    //ctx.fill();
                    ctx.stroke();
                    return 0;
                }
                
            }
            </script>
    </head>
    <body>

        <canvas id="drawLine" width="300" height="300" onmousedown="hold();" 
            onmouseup="release();" onmouseout="release();" onmousemove="draw();"></canvas>
        <button type="button" onclick="selectColor(3)"> Black </button>        
        <button type="button" onclick="selectColor(2)"> Red </button>
        <button type="button" onclick="selectColor(1)"> Blue </button>
        <button type="button" onclick="selectColor(0)"> White(Eraser) </button>
        <button type="button" onclick="drawMethod(1)"> LINE </button>
        <button type="button" onclick="drawMethod(2)"> DOT </button>        
        <script>
            element=document.getElementById("drawLine");
            element.setAttribute("width", window.innerWidth-15);
            element.setAttribute("height", window.innerHeight-50);
            context=element.getContext('2d');
            context.strokeRect(0, 0, window.innerWidth-15, window.innerHeight-50);
            </script>
    </body>
</html>

JavaScript/2011년스터디