Canvas: Difference between revisions

From XPUB & Lens-Based wiki
Line 43: Line 43:
</html>
</html>
   
   
</source>
When the loop reaches the end of page it breaks the line.
It redefines the "x" value to the begin of the line and adds 40px to "y".
<source lang="javascript">
<script>
function draw(){
c = document.getElementById("c");
console.log("c is ", c);
p = c.getContext("2d");
hands = 1;
x = 20;
y = 200;
while (hands < 100) {
console.log(hands);
p.strokeRect(x,y,20,20);
x = x + 50;
hands++;
if (x > 600) {
x = 20;
y = y + 40;
}
}
}
</script>
</source>
</source>



Revision as of 17:41, 24 September 2012

The canvas tag was introduced by Apple and has been standardized to become part of HTML5.

A simple example page...

A example for color cycling with the canvas element [[1]]


Get the canvas tag:

c=document.getElementById("c")

Get the "context" (like a paper):

p=c.getContext("2d");

Draw something!

p.fillRect(0, 0, 100, 100);

Examples

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<script>
function draw(){
c = document.getElementById("c")
//console.log("c is",c)
p = c.getContext("2d")
x = 10
while (x<3000) {
    p.strokeRect(x,100,20,40)
    x+=60
}
}
</script>
</head>
<body onload="draw()">
<h1>Hello canvas</h1>
<canvas id="c" width="640" height="640" style="border: 3px dotted red"></canvas>
</body>
</html>

When the loop reaches the end of page it breaks the line. It redefines the "x" value to the begin of the line and adds 40px to "y".

 
<script>
	function draw(){
		c = document.getElementById("c");
		console.log("c is ", c);
		p = c.getContext("2d");
		hands = 1;
		x = 20;
		y = 200;
		
		while (hands < 100) {
			console.log(hands);
			p.strokeRect(x,y,20,20);
			x = x + 50;
			hands++;
			if (x > 600) {
				x = 20;
				y = y + 40;
			}
		}
	}
</script>

Tutorials & Reference