使用Puppeteer生成PDF时Google Fonts无法加载的问题求助
Puppeteer生成PDF时Google Fonts字体未正常显示问题
我查阅了多篇相关帖子但问题仍未解决,特此求助。我的需求是发送确认邮件,并将同一邮件模板转换为PDF文件作为附件发送。目前所有功能运行正常,唯独生成的PDF文件中字体未按预期显示。
以下是main.handlebars文件中引入Google Fonts的CSS代码:
<link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap" rel="stylesheet">
以下是我用于将HTML转换为PDF的Puppeteer代码:
exports.convertHtmlToPdfBuffer = async (htmlContent) => { const browser = await puppeteer.launch({ args: ["--no-sandbox"] }); const page = await browser.newPage(); // await page.screenshot({ path: "beforeTimeout.png" }); // await page.waitForTimeout(15000); // await page.screenshot({ path: "afterTimeOut.png" }); // await page.evaluateHandle("document.fonts.ready"); await page.setContent(htmlContent, { waitUntil: "networkidle2" }); const pdfBuffer = await page.pdf({ format: "a4", margin: { top: "50px", right: "0px", bottom: "50px", left: "0px", }, }); await page.close(); await browser.close(); return pdfBuffer; };
内容的提问来源于stack exchange,提问作者Sharath
相关产品推荐
相关产品推荐

