I have 3 layers of canvas - 1 is matrix, 2 & 3 is graphics, how to preserve them in one image?
<div style="position: relative;">
<canvas id="matix" width="100" height="100"
style="position: absolute; left: 0; top: 0; z-index: 0;"></canvas>
<canvas id="layer1" width="100" height="100"
style="position: absolute; left: 0; top: 0; z-index: 0;"></canvas>
<canvas id="layer2" width="100" height="100"
style="position: absolute; left: 0; top: 0; z-index: 1;"></canvas>
</div>
I have 3 layers of canvas - 1 is matrix, 2 & 3 is graphics, how to preserve them in one image?
<div style="position: relative;">
<canvas id="matix" width="100" height="100"
style="position: absolute; left: 0; top: 0; z-index: 0;"></canvas>
<canvas id="layer1" width="100" height="100"
style="position: absolute; left: 0; top: 0; z-index: 0;"></canvas>
<canvas id="layer2" width="100" height="100"
style="position: absolute; left: 0; top: 0; z-index: 1;"></canvas>
</div>
Share
Improve this question
edited Sep 23, 2010 at 4:36
ErgallM
asked Sep 20, 2010 at 10:36
ErgallMErgallM
2373 silver badges9 bronze badges
3
- Do you want them combined into 1 image on layered on top of each other or side by side? – Castrohenge Commented Sep 20, 2010 at 13:05
- 1 combined into 1 image on layered on top of each other – ErgallM Commented Sep 20, 2010 at 14:04
- How did you implemented layers? Are they separated canvas elements? First layer is matrix of what (do you mean pixel data?)? Is it something like this? stackoverflow.com/questions/3008635/… – pepkin88 Commented Sep 20, 2010 at 14:20
1 Answer
Reset to default 23You can draw one canvas into another with ctx.drawImage(other_canvas,0,0)
If you do that in the right order, you will have all the canvas contents correctly layered in one of them.
If you want to save the image, you can call canvas.toDataURL()
to get the contents as a base64 encoded PNG file.