Hi, why doesn't this work?
import 'https://mozilla.github.io/pdf.js/build/pdf.mjs';
export async function pdfToImages(b64, url) {
var { pdfjsLib } = globalThis;
pdfjsLib.GlobalWorkerOptions.workerSrc = '//mozilla.github.io/pdf.js/build/pdf.worker.mjs';
var images = [];
let currPage = 1;
var loadingTask;
if (b64 != '') {
loadingTask = pdfjsLib.getDocument({ data: atob(b64) });
}
else {
loadingTask = pdfjsLib.getDocument(url);
}
const thePDF = await loadingTask.promise;
const numPages = thePDF.numPages;
while (currPage <= numPages) {
const page = await thePDF.getPage(currPage);
let viewport = page.getViewport({ scale: 1.5 });
let canvas = document.createElement("canvas");
let context = canvas.getContext('2d');
let outputScale = window.devicePixelRatio || 1;
canvas.width = Math.floor(viewport.width * outputScale);
canvas.height = Math.floor(viewport.height * outputScale);
let transform = outputScale !== 1
? [outputScale, 0, 0, outputScale, 0, 0]
: null;
page.render({
canvasContext: context,
transform: transform,
viewport: viewport
});
currPage++;
const img = canvas.toDataURL('image/png');
images.push(img);
}
return images;
}
public async Task<string[]?> PdfToImagesAsync(string pdfAsBase64)
{
var module = await JSRuntime.InvokeAsync<IJSObjectReference>("import", "./pdfHelper.js");
return await module.InvokeAsync<string[]>("pdfToImages", pdfAsBase64, "");
}