cv-html/pdf.js
2025-10-05 15:34:39 +02:00

30 lines
738 B
JavaScript

import puppeteer from "puppeteer-core";
import path from 'path';
import { fileURLToPath } from 'url';
import { execSync } from 'child_process';
const filePath = `file:${path.join(path.dirname(fileURLToPath(import.meta.url)), 'dist/index.html')}`;
const chromiumPath = execSync('which chromium').toString().trim();
const browser = await puppeteer.launch({
executablePath: chromiumPath,
args: [
'--disable-web-security',
'--allow-file-access-from-files',
'--disable-site-isolation-trials'
]
});
const page = await browser.newPage();
await page.setBypassCSP(true);
await page.goto(filePath, {
waitUntil: 'networkidle2',
});
await page.pdf({
path: 'out.pdf',
scale: 0.8,
format: 'A4',
});
await browser.close();