У меня есть большой элемент canvas, который я хочу клонировать и отобразить внутри нового меньшего элемента canvas, чтобы он служил миниатюрным дисплеем после загрузки веб-страницы.
Я создал новый меньший пустой элемент canvasзаранее и добавили его в DOM с определенной высотой / шириной.
Идея состояла в том, чтобы клонировать большой элемент canvas в меньший после загрузки страницы, используя:
//grab the context from your destination canvas
const destCtx = destinationCanvas.getContext('2d');
//call its drawImage() function passing it the source canvas directly
destCtx.drawImage(sourceCanvas, 0, 0);
Однако все, что отображается, это сплошной черный фон.Я ожидаю, что меньший холст должен теперь отображать дублированный дизайн большего холста, только в области меньшего размера.
Я немного осмотрелся, но не нашел рабочего решения этой проблемы, так какпока.
Небольшой набросок того, что я пытаюсь сделать: ![enter image description here](https://i.stack.imgur.com/ZYR9A.png)
Также попробовал следующее:
const smallCanvas = document.getElementById('smallCanvas');
const bigCanvas = document.getElementById('bigCanvas');
smallCanvas.getContext('2d').drawImage(bigCanvas, 0, 0, bigCanvas.width, bigCanvas.height, 0, 0, smallCanvas.width, smallCanvas.height);
Результат всегда выглядит так:
![enter image description here](https://i.stack.imgur.com/JrVY6.png)