IRONSOFTWAREHOME

AWS Lambda 上的字体显示异常

Curtis Chau
Curtis Chau
Updated: 2026年4月22日

在 Linux 系统中渲染 PDF 文档可能会导致字符显示异常,如下图所示。 有时字符在 Windows 环境下显示正常,但在 Linux 环境下却无法正确显示。

乱码

原因

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

解决方案

如果您已知晓字体名称,那就太好了——您可以跳过步骤 1。

  1. 要查找字体名称,请尝试在 Windows 上渲染 HTML 代码,并使用 Adobe 检查字符。
  2. 一旦确定了字体名称,您就可以从网上下载字体文件,例如从 Google Fonts 下载。
  3. 若要通过 Dockerfile 添加并安装字体,请将字体放置在项目中,**并将"复制到输出目录"设置为"始终复制"。**接下来,使用以下代码在 Dockerfile 中添加并安装该字体:
# Copy the Cambria Math font into the container
# Ensure the font file (cambria.ttc) exists in your project directory
COPY cambria.ttc /usr/share/fonts/

# Install fontconfig to update the font cache
# This will install fontconfig and refresh the font cache to recognize the newly added fonts
RUN dnf install -y fontconfig && \
    fc-cache -fv
Text

说明

  • COPY cambria.ttc /usr/share/fonts/: 此行将 Cambria Math 字体从项目目录复制到容器的字体目录中。 请确保项目目录中包含字体文件 (cambria.ttc)。

  • **运行 dnf install -y fontconfig && **: 此命令用于安装 fontconfig 软件包,该软件包是 Linux 系统中管理和配置字体访问所必需的。 -y 标记会自动确认软件包的安装。

  • fc-cache -fv:此命令用于更新字体缓存,确保容器内的应用程序能够使用新复制的字体。 标志 -f(强制)和 -v(详细)分别用于强制重新生成缓存以及提供详细输出。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

...
阅读更多

准备开始了吗?

Nuget Downloads 21,105,021版本:2026.9刚刚发布

立即获取您的免费30 天试用密钥。
无需信用卡或创建账户
C# 用于 PDF 的 NuGet 库
通过 NuGet 安装

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解决方案资源管理器中,右键点击引用,管理 NuGet 包
  2. 选择浏览并搜索 “IronPDF”
  3. 选择包并安装
C# PDF DLL
下载 DLL

版本: 2026.9

或在此处下载 Windows 安装程序。

  1. 下载并解压 IronPDF 到您的解决方案目录中的 ~/Libs 之类的位置
  2. 在 Visual Studio 解决方案资源管理器中,右键点击引用。选择浏览,“IronPDF.dll”

$999 起

Key in blue circle

立即获取免费的 30 天试用版密钥。

Your trial license will be sent to your email address

无任何限制。100% 解锁。无需信用卡。

OR
bullet_checked无需信用卡或创建账户无任何限制。100% 解锁。无需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
预约您的免费现场演示
Booking Badge

深受全球数百万工程师信赖

Iron Software 的客户徽标
获取您的无义务咨询
填写下面的表格或通过sales@ironsoftware.com
您的资料将始终保密。
深受全球数百万工程师信赖
Iron Software 的客户徽标
立即获取您的免费30 天试用密钥。
无需信用卡或创建账户
C# 用于 PDF 的 NuGet 库
通过 NuGet 安装

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解决方案资源管理器中,右键点击引用,管理 NuGet 包
  2. 选择浏览并搜索 “IronPDF”
  3. 选择包并安装
C# PDF DLL
下载 DLL

版本: 2026.9

或在此处下载 Windows 安装程序。

  1. 下载并解压 IronPDF 到您的解决方案目录中的 ~/Libs 之类的位置
  2. 在 Visual Studio 解决方案资源管理器中,右键点击引用。选择浏览,“IronPDF.dll”

$999 起