Copying from One Canvas to Another
The canvas allows us to use another canvas as the source of a bitmap drawing operation. Let’s take a quick look at how we might utilize this functionality.
We will need to modify the base file for this chapter and create
an extra <canvas>
tag in our HTML. We will name this extra <canvas> element canvas2. (It can be given any ID as long as it
is not the same ID as the first <canvas>.) Here is what our HTML <body> will look like now:
<body><div><canvasid="canvas"width="256"height="256"style="position: absolute;top: 50px; left: 50px;">Your browser does not support HTML5 Canvas.</canvas><canvasid="canvas2"width="32"height="32"style="position: absolute;top: 256px; left: 50px;">Your browser does not support HTML5 Canvas.</canvas></div></body>
We will place the second <canvas> below the original and give it a
width and height of 32.
We will also need to create a new context and internal reference variable
for canvas2. Here is the code that will
be used to provide a reference to both <canvas> elements:
if(!canvasSupport()){return;}else{vartheCanvas=document.getElementById("canvas");varcontext=theCanvas.getContext("2d");vartheCanvas2=document.getElementById("canvas2");varcontext2=theCanvas2.getContext("2d");}
Example 4-17 will use the tile sheet image from earlier examples and draw it to the first canvas. It will then copy a 32×32 square from this canvas and place it on the second canvas.
Example 4-17. Copying from one canvas ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access