许多应用程序需要在 .NET 中向 PDF 添加文本,以动态地对文档进行注释。Conholdate.Total for .NET 是一个全面的 SDK,简化了服务器或桌面上的 PDF 操作。在本指南中,您将看到如何安装库、加载现有 PDF、插入样式化文本,并使用完整的可直接运行的代码示例保存更新后的文件。

在 Java 中向 PDF 添加文本的需求

构建基于 Java 的前端的开发人员通常需要一个 .NET 服务来在后端修改 PDF。典型的需求包括:

  • 加载现有 PDF 而不丢失已有内容。
  • 在精确坐标处添加自定义文本,指定字体和颜色。
  • 保存修改后的 PDF,同时保留原始布局和元数据。

手动编辑或通用命令行工具无法在自动化工作流中满足这些需求,尤其是当必须对大量文件以编程方式执行操作时。

为工作选择 Conholdate.Total for .NET

Conholdate.Total for .NET 提供了一套丰富的 PDF API,直接满足上述需求。它可以:

  • 打开并编辑 PDF 而无需转换。
  • 创建具有完整样式控制的 TextFragment 对象。
  • 将片段插入任意页面的精确位置。
  • 使用单个方法调用保存结果。

SDK 以 NuGet 包的形式提供,可在所有 .NET 运行时上运行,并包含详细的文档和广泛的API 参考。您可以从发布页面下载最新构建。

步骤‑逐‑步指南:在 .NET 中向 PDF 添加文本

下面是一个实用的演练,展示了完整示例后面所示的代码。

安装 Conholdate.Total for .NET

首先,通过 NuGet 将 SDK 添加到您的项目中。

dotnet add package Conholdate.Total --version 25.10.0

您也可以从下载链接获取二进制文件。

加载现有 PDF 文档

创建一个指向源 PDF 的 Document 实例。

using GroupDocs.Pdf;

string inputPath = "input.pdf";

// Load the existing PDF document
using (Document pdfDocument = new Document(inputPath))
{
    // further processing...
}

Document 类是 PDF API 的一部分,详见 API 参考。

创建和配置文本片段

实例化一个 TextFragment,设置其位置、字体和颜色。

using GroupDocs.Pdf.Contents;
using GroupDocs.Pdf.Contents.Text;
using GroupDocs.Pdf.Contents.Fonts;

// Create a text fragment to insert
TextFragment textFragment = new TextFragment("Added text using Conholdate.Total for .NET");

// Set visual properties
textFragment.Position = new Position(100, 150); // X and Y coordinates in points
textFragment.Font = new Font("Arial", 12);
textFragment.Color = new Color(255, 0, 0); // Red color

本步骤演示 使用 .NET 库向 PDF 插入文本,并提供完整的样式选项。

添加文本片段到页面

选择目标页面(在本例中为第一页),并添加片段。

// Ensure there is at least one page
Page page = pdfDocument.Pages.Count > 0 ? pdfDocument.Pages[0] : pdfDocument.Pages.Add();

// Add the text fragment to the page
page.Paragraphs.Add(textFragment);

您可以重复此块,以在多个页面或位置上 在 .NET 中向 PDF 文件追加文本。

保存修改后的 PDF 文档

最后,将更改写入新文件。

string outputPath = "output.pdf";

// Save the modified PDF
pdfDocument.Save(outputPath);

SDK 处理所有低层 PDF 结构,因此保存的文件保留原始内容并添加新的注释。

完整示例代码:在 .NET 中向 PDF 添加文本

以下示例演示了从头到尾的完整过程。

using System;
using GroupDocs.Pdf;
using GroupDocs.Pdf.Contents;
using GroupDocs.Pdf.Contents.Text;
using GroupDocs.Pdf.Contents.Fonts;

class Program
{
    static void Main()
    {
        string inputPath = "input.pdf";
        string outputPath = "output.pdf";

// Load the existing PDF document
        using (Document pdfDocument = new Document(inputPath))
        {
            // Ensure there is at least one page
            Page page = pdfDocument.Pages.Count > 0 ? pdfDocument.Pages[0] : pdfDocument.Pages.Add();

// Create a text fragment to insert
            TextFragment textFragment = new TextFragment("Added text using Conholdate.Total for .NET");

// Set visual properties
            textFragment.Position = new Position(100, 150); // X and Y coordinates in points
            textFragment.Font = new Font("Arial", 12);
            textFragment.Color = new Color(255, 0, 0); // Red color

// Add the text fragment to the page
            page.Paragraphs.Add(textFragment);

// Save the modified PDF
            pdfDocument.Save(outputPath);
        }

Console.WriteLine($"Text successfully added. Output saved to '{outputPath}'.");
    }
}

注意: 此代码示例演示了核心功能。在将其用于项目之前,请确保更新所有文件路径和配置值以匹配实际环境,验证已正确安装所有必需的依赖项,并在开发环境中彻底测试。如果遇到任何问题,请参考官方文档或联系支持团队获取帮助。

结论

在 .NET 中向 PDF 添加文本非常简单,得益于 Conholdate.Total for .NET 的强大功能。按照上述步骤,您可以加载文档,创建样式化的 TextFragment,精确放置,并仅用几行代码保存结果。请记得在生产部署时使用有效许可证;您可以从 许可证页面 获取临时许可证,并在 定价页面 查看定价选项。基于此基础,您可以将方法扩展到多行注释、动态数据插入或 PDF 批量处理。

常见问题

如何使用 .NET 库向 PDF 插入文本?

使用 PDF API 中的 TextFragment 类,设置其 Position、Font 和 Color,然后将其添加到页面的 Paragraphs 集合中。完整的工作流程在上面的代码示例中有所展示。

我可以在 .NET 中向现有 PDF 写入文本而不覆盖其他内容吗?

是的。SDK 在原位修改 PDF,保留现有的页面、图像和注释,同时添加新的文本片段。

在 .NET 中向 PDF 文件的多个页面追加文本的最佳方法是什么?

遍历 Pages 集合,为每个页面创建一个 TextFragment,配置其位置,然后将其添加到页面的 Paragraphs 中。此方法可扩展到任意数量的页面。

阅读更多