Обратите внимание на html2Canvas, он берет элемент dom и преобразует его в холст, а затем вы можете нарисовать этот холст на другом холсте примерно так:
http://html2canvas.hertzen.com/
var domElement = document.getElementById('myElementId');
html2canvas(domElement, {
onrendered: function (domElementCanvas) {
var canvas = document.createElement('canvas');
canvas.getContext('2d').drawImage(domElementCanvas, 0, 0, 100, 100);
// do something with canvas
}
}