
使用 C# 创建 PDF 文件
使用此 .NET PDF 库 设计您的 PDF 文件的蓝图、构建逻辑并创建您的 PDF 文件。 PDF 文件格式是当前使用最广泛的文件格式。为您的业务应用程序配备企业级 PDF 生成器将为您的企业带来竞争优势。这个库 使之成为可能,因为它提供了广泛的方法,让您可以控制 PDF 文件的操作和转换。因此,在这篇博文中,我们将学习如何使用 C# 以编程方式创建 PDF 文件。
我们将在本文中介绍以下部分:
PDF 生成器 API 安装
您可以按照您想要的方式处理您的 PDF 文件,因为此库可让您自动化您的业务报告和其他关键文档。但是,这个 .NET API 的安装过程非常简单。
下载 DLL 文件或在 NuGet 包管理器中运行以下命令以将此 API 集成到您的项目中。
Install-Package Aspose.PDF
使用 C# 创建 PDF 文件
现在,我们都准备好使用 C# 以编程方式创建我们的第一个 PDF 文件。
按照下面提到的步骤和代码片段:
- 通过调用其空构造函数来实例化 Document 类的对象。
- 通过调用 Pages.Add() 方法在 PDF 文档中创建一个页面。
- 创建 TextFragment 类的对象并在段内添加一个字符串。
- 通过调用 Paragraphs.Add 方法将片段添加到段落集合中。
- 通过调用 Save 方法保存文档。
// 通过调用其空构造函数来实例化 Document 对象。
Document doc = new Document();
// 通过调用 Pages.Add() 方法在 Pdf 文档中创建一个页面。
Page page = doc.Pages.Add();
// 创建一个 TextFragment 类的对象并在段内添加一个字符串。
TextFragment fragment = new TextFragment("This is content");
// 通过调用 Paragraphs.Add 方法将片段添加到段落集合
page.Paragraphs.Add(fragment);
// 通过调用 Save 方法保存文档 https://reference.aspose.com/pdf/net/aspose.pdf/document/save/#save_4
doc.Save("sample.pdf");
以编程方式在 PDF 中添加字体
现在,我们可以更深入地探索其他功能,例如以编程方式向 PDF 文件添加字体。
您可以按照以下步骤操作:
- 创建 Document 类的对象。
- 通过调用 Pages.Add() 方法在 PDF 文档中创建页面。
- 使用空字符串初始化 TextFragment 类的实例。
- 创建一个 TextSegment 对象以在 PDF 文档中添加文本段。
- 通过调用 Text.TextState() 方法获取 TextSegment 对象表示的文本的文本状态。
- 通过调用 FontRepository.FindFont 方法搜索并找到具有指定字体名称的字体。
- 通过将 IsEmbedded 属性设置为 true 来嵌入字体。
- 获取文本的文本状态并将其分配给 TextState 属性。
- 通过调用 Add 方法在片段元素中设置文本段。
- 调用 Paragraphs.Add 方法将片段添加到段落集合。
- 调用Save方法保存文档。
// 创建 Document 类的对象。
Document doc = new Document();
// 通过调用 Pages.Add() 方法在 PDF 文档中创建页面。
Page page = doc.Pages.Add();
// 使用空字符串初始化 TextFragment 类的实例。
TextFragment fragment = new TextFragment("");
// 创建一个 TextSegment 对象以在 PDF 文档中添加文本段
TextSegment segment = new TextSegment(" This is a sample text using Custom font.");
// 通过调用 Text.TextState() 方法获取 TextSegment 对象表示的文本的文本状态。
TextState ts = new Text.TextState();
// 通过调用 FontRepository.FindFont 方法搜索并找到具有指定字体名称的字体。
ts.Font = FontRepository.FindFont("Didot");
// 通过将 IsEmbedded 属性设置为 true 来嵌入字体。
ts.Font.IsEmbedded = true;
// 获取文本的文本状态并将其分配给 TextState 属性。
segment.TextState = ts;
// 通过调用 Add 方法在片段元素中设置文本段
fragment.Segments.Add(segment);
// 调用 Paragraphs.Add 方法将片段添加到段落集合。
page.Paragraphs.Add(fragment);
// 保存文档
doc.Save("sample.pdf");
使用 .NET 库搜索和替换 PDF 文件中的文本
在本节中,我们将学习如何在 C# 中以编程方式编辑 PDF 文件。我们将在现有 PDF 文件中实现搜索和替换功能。
我们将完成下面提到的步骤和代码片段:
- 通过使用源 PDF 文件初始化 Document 类的构造函数来打开文档。
- 创建 TextFragmentAbsorber 对象以查找输入搜索短语的所有实例。
- Pages.Accept 方法将接受所有页面的吸收器。
- 通过访问 TextFragments 属性获取提取的文本片段。
- 遍历片段,通过将 Text 属性设置为新值来替换文本,并通过设置 TextState 属性的 FontSize 来更改新文本的字体大小。
- 调用 Save 方法来保存生成的 PDF 文档。
// 通过使用源 PDF 文件初始化 Document 类的构造函数来打开文档。
Document doc = new Document("sample.pdf");
// 创建 TextFragmentAbsorber 对象以查找输入搜索短语的所有实例
TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("custom");
// Pages.Accept 方法将接受所有页面的吸收器。
doc.Pages.Accept(textFragmentAbsorber);
// 通过访问 TextFragments 属性获取提取的文本片段
TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
// 遍历片段
foreach (TextFragment textFragment in textFragmentCollection)
{
// 通过将 Text 属性设置为新值来替换文本。
textFragment.Text = "changed";
// 通过设置 TextState 属性的 FontSize 来更改新文本的字体大小
textFragment.TextState.FontSize = 18;
}
// S调用 Save 方法来保存生成的 PDF 文档。
doc.Save("ReplaceTextAll_out.pdf");
此代码段的输出如下图所示:

获得免费许可证
您可以使用 免费临时许可证 来尝试超出评估限制的 API。
加起来
这将我们带到这篇博文的结尾。我们已经了解了一些有关 PDF 文件生成器 API 的重要主题。您已经学习了如何使用 C# 创建 PDF 文件,以及如何编辑现有 PDF 文件,例如添加字体、搜索和替换文本。此外,您可以访问该库的文档 以了解其他方法。此外,您可以在此 Github 存储库中找到功能的代码示例。我们将在不久的将来发布其他有用的文章。因此,请与 conholdate.com 保持联系以获取最新更新。
问一个问题
您可以在我们的 论坛 上告诉我们您的问题或疑问。