Я пытаюсь визуализировать страницы PDF с помощью pdf.js в цикле for. сейчас рендерится только последняя страница, и я получаю сообщение об ошибке на консоли:
"Uncaught (in обещание) Ошибка: невозможно использовать один и тот же холст во время нескольких операций render (). Использовать другой холст илиубедитесь, что предыдущие операции были отменены или завершены. at InternalRenderTask.initializeGraphics (api.js: 2500) "
кто-то знает, почему он счастлив и как это решить?
Я пыталсяпосмотрите на другие темы, но не можете найти рабочее решение.
код:
<script src="/pdf-js/build/pdf.js"></script>
<script>
var pdfurl = document.getElementById("input_10_1").value;
pdfjsLib.getDocument(pdfurl).then(doc => {
for (var i = 0; i < doc._pdfInfo.numPages; i++)
{
var dataFileNumber = i+1;
$(".files-container").append('<div class="file-thumbnail available" draggable="false" data-file-number="'+dataFileNumber+'" id="container-number-'+(dataFileNumber)+'"><canvas id="canvas-number-'+(dataFileNumber)+'"></canvas></div>');
var container = document.getElementById('container-number-'+dataFileNumber);
var myCanvas = document.getElementById('canvas-number-'+dataFileNumber);
doc.getPage(parseInt(dataFileNumber)).then(page => {
var viewport = page.getViewport(1);
var scale = container.clientWidth / viewport.width * 0.8;
var context = myCanvas.getContext("2d");
viewport = page.getViewport(scale);
myCanvas.height = viewport.height;
myCanvas.width = viewport.width;
page.render({canvasContext: context , viewport: viewport});
});
}
</script>