0

我在同一个系统上使用 phantomjs 和 puppeteer。我正在使用字体文件来支持 PDF 导出中的表情符号。当我使用该字体时,phantomjs 崩溃了,但 puppeteer 中使用的 chromium 浏览器没有。有什么方法可以让我只为 chrome 加载字体文件,而无需让字体在系统范围内应用/usr/share/fonts. 我在 CentOS 7 机器上。

4

1 回答 1

1

您可以字体转换为网页字体,然后使用以下方法将字体嵌入网页page.addStyleTag()

await page.addStyleTag({
    'content' : `
        @font-face {
            font-family:'[font-name]';
            src:url('[font-file].woff2') format('woff2'),
                url('[font-file].woff') format('woff');
            font-weight:normal;
            font-style:normal;
        }
    `
});

然后,您可以运行page.pdf()以包含自定义字体的 PDF 格式下载网页。

这将允许您根据具体情况使用字体,而无需在您的机器上安装它。

于 2018-08-17T22:56:55.693 回答