import puppeteer from 'puppeteer'; import { marked } from 'marked'; export async function generatePdf(markdownContent, title = "SchoolMind Lösung") { const htmlContent = marked.parse(markdownContent); const fullHtml = ` ${title} ${htmlContent} `; let browser; try { browser = await puppeteer.launch({ headless: "new", args: ['--no-sandbox', '--disable-setuid-sandbox'] }); const page = await browser.newPage(); await page.setContent(fullHtml, { waitUntil: 'networkidle0' }); const pdfBuffer = await page.pdf({ format: 'A4', margin: { top: '40px', right: '40px', bottom: '40px', left: '40px' }, printBackground: true, displayHeaderFooter: false }); return pdfBuffer; } catch (e) { console.error("Fehler beim PDF Generieren:", e); throw e; } finally { if (browser) { await browser.close(); } } }