首页 > 解决方案 > 如何在 ubuntu 服务器上运行的 Puppeteer 中使用自定义字体?

问题描述

我正在尝试在数字海洋 Ubuntu 液滴上将我的一个项目推向生产。我安装Source Sans Pro为已安装的默认字体“dejavu”旁边的字体。

安装的字体.

我已经用以下方法重建了缓存:fc-cache -f -v

当我运行命令fc-list时,我可以清楚地看到 Source Sans Pro 已安装(我假设):

在此处输入图像描述

清除缓存后,我还重新启动了应用程序pm2 restart app.jssudo service nginx restart确保更改生效。

我使用Handlebar.jsandPuppeteer来生成发票。在该模板中,我使用以下代码来使用此自定义字体:

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <style>
    body {
      font-family: 'SourceSansPro';
      font-stretch: normal;
    }
  </style>
</head>

无论如何,当我生成发票时,由于某种原因,预安装的字体是被渲染的字体:

在此处输入图像描述

我需要做什么来SourceSansPro代替已经安装的dejavu字体?

标签: javascriptnode.jsfontspuppeteerdigital-ocean

解决方案


推荐阅读