如何在 PDF 中使用 UTF-8 编码和国际语言
IronPDF 支持 PDF 中的 UTF-8 编码,因为它符合 Chrome 浏览器标准。IronPDF 支持任何可在 Chrome 浏览器中正常显示的字符。您可以放心,外语字符也能正常显示。在本教程中,我们将逐步介绍如何在 PDF 中呈现 UTF-8 编码。
如何用 C# 在 PDF 中嵌入 UTF-8 字符
- 下载用于在 PDF 中嵌入 UTF-8 字符的 C# 库
- 在 HTML 字符串或文件中加入 UTF-8 字符
- 设置 输入编码 属性为 UTF8 编码
- 使用
将Html渲染为Pdf
和RenderHtmlFileAsPdf
方法 - Specify the 编码 on HTML 指标 标签
开始在您的项目中使用IronPDF,并立即获取免费试用。
查看 IronPDF 上 Nuget 用于快速安装和部署。它有超过800万次下载,正在使用C#改变PDF。
Install-Package IronPdf
考虑安装 IronPDF DLL 直接。下载并手动安装到您的项目或GAC表单中: IronPdf.zip
手动安装到你的项目中
下载DLL简单代码示例
在使用 IronPDF 时,我们经常会使用UTF-8 编码等扩展字符集。
下面是一个例子,字符串被传入 "RenderHtmlAsPdf "方法,该方法需要输入 HTML 字符串:
周態告応立待太記行神正用真最。音日独素円政進任見引際初携食。更火識将回興継時億断保媛全職。
文造画念響竹都務済約記求生街東。天体無適立年保輪動元念足総地作靖権瀬内。
失文意芸野画美暮実刊切心。感変動技実視高療試意写表重車棟性作家薄井。
陸瓶右覧撃稿法真勤振局夘決。任堀記文市物第前兜純響限。囲石整成先尾未展退幹販山令手北結。
أم يذكر النفط قبضتهم على, الصين وفنلندا ما حدى. تم لكل أملاً المنتصر,
٣٠ حدى مارد القوى. شرسة للسيطرة قامفي. حتى أم يطول المحيط,
زهاء وحلفاؤها من فعل. لم قامت الجو الساحلية وتم, ويعزى واقتصار قبل كل.
ภคันทลาพาธสตาร์เซฟตี้ แชมป์ มาร์เก็ตติ้งล้มเหลวโยเกิร์ต แลนด์บาบูนอึมครึม รุสโซ แบรนด์ไคลแม็กซ์ พิซซ่าโมเดลเสือโคร่ง ม็อบโซนรายชื่อ
แอดมิชชั่น ด็อกเตอร์ พะเรอ มาร์คเจไดโมจิราสเบอร์รี เอนทรานซ์ออดิชั่นศิลปวัฒนธรรมเปราะบาง โมจิซีเรียสวอลนัตทริปลีเมอร์ ทิป วาไรตี้บิ๊กเมเปิล
从上面的文字中,我们将用 ` 来包装字符串。
标记,因为我们处理的是 HTML 字符串。将字符串传递给 IronPDF 的 Chrome PDF 渲染器:
:path=/static-assets/pdf/content-code-examples/how-to/utf-8.cs
using IronPdf;
const string html_with_utf_8 =
@"<p>周態告応立待太記行神正用真最。音日独素円政進任見引際初携食。更火識将回興継時億断保媛全職。
文造画念響竹都務済約記求生街東。天体無適立年保輪動元念足総地作靖権瀬内。
失文意芸野画美暮実刊切心。感変動技実視高療試意写表重車棟性作家薄井。
陸瓶右覧撃稿法真勤振局夘決。任堀記文市物第前兜純響限。囲石整成先尾未展退幹販山令手北結。</p>
<p>
أم يذكر النفط قبضتهم على, الصين وفنلندا ما حدى. تم لكل أملاً المنتصر,
٣٠ حدى مارد القوى. شرسة للسيطرة قامفي. حتى أم يطول المحيط,
زهاء وحلفاؤها من فعل. لم قامت الجو الساحلية وتم, ويعزى واقتصار قبل كل.
</p>
<p>
ภคันทลาพาธสตาร์เซฟตี้ แชมป์ มาร์เก็ตติ้งล้มเหลวโยเกิร์ต แลนด์บาบูนอึมครึม รุสโซ แบรนด์ไคลแม็กซ์ พิซซ่าโมเดลเสือโคร่ง ม็อบโซนรายชื่อ
แอดมิชชั่น ด็อกเตอร์ พะเรอ มาร์คเจไดโมจิราสเบอร์รี เอนทรานซ์ออดิชั่นศิลปวัฒนธรรมเปราะบาง โมจิซีเรียสวอลนัตทริปลีเมอร์ ทิป วาไรตี้บิ๊กเมเปิล
</p>";
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.InputEncoding = System.Text.Encoding.UTF8;
var pdf = renderer.RenderHtmlAsPdf(html_with_utf_8);
pdf.SaveAs("Unicode.pdf");
Imports IronPdf
Private Const html_with_utf_8 As String = "<p>周態告応立待太記行神正用真最。音日独素円政進任見引際初携食。更火識将回興継時億断保媛全職。
文造画念響竹都務済約記求生街東。天体無適立年保輪動元念足総地作靖権瀬内。
失文意芸野画美暮実刊切心。感変動技実視高療試意写表重車棟性作家薄井。
陸瓶右覧撃稿法真勤振局夘決。任堀記文市物第前兜純響限。囲石整成先尾未展退幹販山令手北結。</p>
<p>
أم يذكر النفط قبضتهم على, الصين وفنلندا ما حدى. تم لكل أملاً المنتصر,
٣٠ حدى مارد القوى. شرسة للسيطرة قامفي. حتى أم يطول المحيط,
زهاء وحلفاؤها من فعل. لم قامت الجو الساحلية وتم, ويعزى واقتصار قبل كل.
</p>
<p>
ภคันทลาพาธสตาร์เซฟตี้ แชมป์ มาร์เก็ตติ้งล้มเหลวโยเกิร์ต แลนด์บาบูนอึมครึม รุสโซ แบรนด์ไคลแม็กซ์ พิซซ่าโมเดลเสือโคร่ง ม็อบโซนรายชื่อ
แอดมิชชั่น ด็อกเตอร์ พะเรอ มาร์คเจไดโมจิราสเบอร์รี เอนทรานซ์ออดิชั่นศิลปวัฒนธรรมเปราะบาง โมจิซีเรียสวอลนัตทริปลีเมอร์ ทิป วาไรตี้บิ๊กเมเปิล
</p>"
Private renderer = New ChromePdfRenderer()
renderer.RenderingOptions.InputEncoding = System.Text.Encoding.UTF8
Dim pdf = renderer.RenderHtmlAsPdf(html_with_utf_8)
pdf.SaveAs("Unicode.pdf")
这是代码生成的文件:
为确保将 HTML 完美编码为 PDF,您可能需要在两个地方指定所需的字符集。
- 在 "ChromePdfRenderer.RenderingOptions "中使用 "System.Text.Encoding.UTF8
- 在 HTML 标题中
<html>
<head>
<meta charset = 'utf-8'>
</head>
<body>
こんにちは世界
</body>
</html>
<html>
<head>
<meta charset = 'utf-8'>
</head>
<body>
こんにちは世界
</body>
</html>
关于国际语言的更多信息
IronPDF 支持非拉丁字母语言的 HTML 转 PDF,包括中文、日文、阿拉伯文、希伯来文、俄文、泰文、日文以及 Unicode 支持的所有国际语言,包括混合语言文档。
在使用国际语言时,有两点需要考虑:
字体
服务器上必须安装支持字符集的字体。这些字体通常会自动安装在现代网络服务器上,但旧版本的服务器可能安装了某些字体的旧版本,如 Arial 字体,这些字体可能不完全支持 UTF-8。
另一种解决方案是在 CSS 中指定网络字体,如 Google Fonts 提供的字体。更多信息请参见 这里.
输入编码
您可能需要指定文档的输入编码,以便正确呈现。您可以通过以下方式进行指定:
添加 HTML "元字符集 "标签,例如
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>