AWS Lambda 上的破损字体

This article was translated from English: Does it need improvement?
Translated
View the article in English

在 Linux 中渲染 PDF 文档可能会导致字符断开,如下图所示。 有时字符在 Windows 环境下可以正常显示,但在 Linux 环境下却不能。

断字

原因

原因是操作系统中缺少字体。

解决方案

如果您已经知道字体名称,那很好,您可以跳过步骤 1。

  1. 要查找字体名称,请尝试在 Windows 上渲染 HTML 并使用 Adobe 检查字符。

  2. 确定字体名称后,您可以在线下载字体文件,例如从以下网站下载谷歌字体.

  3. 要通过 Dockerfile 添加和安装字体,请将字体放入项目中,并将'复制到输出目录'设置为'始终复制'

将 Cambria Math 字体复制到容器中

COPY cambria.ttc /usr/share/fonts/

安装 fontconfig 以更新字体缓存

运行 dnf install -y fontconfig &&\

fc-cache -fv