Files
dashfront/src/utils/pdfThumbnail.js
2026-09-29 10:25:50 +02:00

22 lines
582 B
JavaScript

export async function generatePdfThumbnail(pdfSource, targetWidth = 200) {
const { pdfToPng } = await import('pdfconvert-wasm');
const images = await pdfToPng(pdfSource, {
firstPage: 1,
singleFile: true,
scaleToX: targetWidth,
});
if (!images || images.length === 0) {
return null;
}
const blob = new Blob([images[0].data], { type: 'image/png' });
return new Promise((resolve, reject) => {
const reader = new FileReader();
reader.onloadend = () => resolve(reader.result);
reader.onerror = reject;
reader.readAsDataURL(blob);
});
}