Вы можете легко изменить размер и скопировать изображение или холст на другой холст.
context.drawImage(image, dx, dy, dw, dh)
позволяет изменить размеры любого изображения (или холста), которое вы хотите нарисовать, по мере его отрисовки.
Вы можете нарисовать изображение 100x100 как 50x50 или 200x200.
Существует дополнительно context.drawImage(image, sx, sy, sw, sh, dx, dy, dw, dh)
, если вы хотите нарисовать только часть исходного изображения.
Вы хотите, чтобы нарисованные изображения были изменяемого размера и подвижными? Это целая «банка червей», такая функциональность, по крайней мере, не встроена в canvas, то есть вам придется ее создавать. Я написал небольшое руководство по получению изменяемых размеров, подвижных объектов на холсте , с которого можно начать.