如何使用C#编辑PDF中的文本和区域

如何使用 IronPDF 和 C# 重制 PDF 中的文本和区域

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

IronPDF 使 C# 开发人员能够通过简单的编辑方法永久删除 PDF 文档中的敏感文本和区域,通过用黑框或替换文本覆盖内容来确保数据的隐私性和合规性。

编辑文本是指永久删除或模糊文档中的敏感信息。 通常的做法是用黑框覆盖文本或使用工具完全删除文本。 编辑确保信息无法访问或查看,为敏感内容提供隐私和安全保护。 在 PDF 文档中,编辑对于保持符合数据保护法规(如 GDPR、HIPAA 和其他隐私标准)至关重要。 IronPDF 提供强大的编辑功能,超越了简单的文本叠加,确保从 PDF 结构中永久删除敏感数据。

同样,编辑区域也会模糊文件中的指定区域。 这需要提供区域的坐标、宽度和高度。 在处理表单、签名、图像或任何包含敏感信息的可视化内容时,区域编辑尤其有用。 与简单的文本编辑不同,基于区域的编辑允许开发人员针对文档的特定区域进行编辑,而无需考虑内容类型。

快速入门:在PDF中编辑敏感文本

using IronPDF 的编辑方法删除 PDF 文档中的敏感信息。 只需几行代码即可对所有 PDF 页面上的文本进行重制,确保保密性和合规性。 本指南演示了使用 IronPDF 的 API 加载 PDF、应用编辑并保存更新后的文档。

  1. 使用 NuGet 包管理器安装 https://www.nuget.org/packages/IronPdf

    PM > Install-Package IronPdf
  2. 复制并运行这段代码。

    IronPdf.PdfDocument doc = IronPdf.PdfDocument.FromFile("document.pdf");
    doc.RedactTextOnAllPages("sensitive info");
    doc.SaveAs("redacted_document.pdf");
  3. 部署到您的生产环境中进行测试

    通过免费试用立即在您的项目中开始使用IronPDF

    arrow pointer


如何用 C# 重制 PDF 中的文本?

using IronPDF 可以直接进行文本编辑。 使用RedactTextOnAllPages方法从整个文档中删除指定短语。 让我们使用PDF示例文档

:path=/static-assets/pdf/content-code-examples/how-to/redact-text-redact-text.cs
using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("novel.pdf");

// Redact 'Alaric' phrase from all pages
pdf.RedactTextOnAllPages("Alaric");

pdf.SaveAs("redacted.pdf");
Imports IronPdf

Private pdf As PdfDocument = PdfDocument.FromFile("novel.pdf")

' Redact 'Alaric' phrase from all pages
pdf.RedactTextOnAllPages("Alaric")

pdf.SaveAs("redacted.pdf")
$vbLabelText   $csharpLabel

对于更高级的 PDF 操作功能,您可以探索 如何编辑 PDF 或了解 设置 PDF 权限和密码,以便在编辑的同时增强文档安全性。

重编的 PDF 看起来像什么?

从所有页面中编辑Alaric短语后的结果PDF。

使用RedactTextOnPages方法分别从单页或多页中删除文本。

哪些参数控制文本重action?

以下是编辑文本方法的参数及其目的:

  • ReplaceText: 这是您想要编辑的文本字符串。
  • CaseSensitive: 一个指示搜索是否区分大小写的布尔值。如果为true,它将严格匹配大写和小写。 默认是false。
  • OnlyMatchWholeWords: 一个布尔值,指定是否仅匹配整个单词。 默认是true。
  • DrawRectangles: 一个布尔值,决定是否在编辑区域周围绘制黑色矩形。 默认是true。
  • ReplacementText: 这是将写在被编辑项目替换位置的文本。 默认替换文本是"*"。

下面是一个更全面的示例,展示了如何使用这些参数:

:path=/static-assets/pdf/content-code-examples/how-to/redact-text-3.cs
using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("confidential_report.pdf");

// Redact with custom parameters
pdf.RedactTextOnAllPages("SSN: 123-45-6789", 
    caseSensitive: true, 
    onlyMatchWholeWords: false, 
    drawRectangles: true, 
    replacementText: "[REDACTED]");

// Redact multiple sensitive items
string[] sensitiveTerms = { "salary", "password", "credit card" };
foreach (string term in sensitiveTerms)
{
    pdf.RedactTextOnAllPages(term, caseSensitive: false);
}

pdf.SaveAs("fully_redacted_report.pdf");
Imports IronPdf

Dim pdf As PdfDocument = PdfDocument.FromFile("confidential_report.pdf")

' Redact with custom parameters
pdf.RedactTextOnAllPages("SSN: 123-45-6789", 
                         caseSensitive:=True, 
                         onlyMatchWholeWords:=False, 
                         drawRectangles:=True, 
                         replacementText:="[REDACTED]")

' Redact multiple sensitive items
Dim sensitiveTerms As String() = {"salary", "password", "credit card"}
For Each term As String In sensitiveTerms
    pdf.RedactTextOnAllPages(term, caseSensitive:=False)
Next

pdf.SaveAs("fully_redacted_report.pdf")
$vbLabelText   $csharpLabel

在处理具有复杂格式的文档时,可考虑查看 如何管理字体,以确保在编辑过程中正确识别文本。


Icon Quote related to 哪些参数控制文本重action?

我最喜欢的这种库是 IronPDF。它允许快速高效地操作 PDF 文件。它还具有许多有价值的功能,比如导出为 PDF/A 格式和数字签名 PDF 文档。

Milan Jovanovic related to 哪些参数控制文本重action?

Milan Jovanovic

微软MVP

查看案例研究
Icon Quote related to 哪些参数控制文本重action?

IronOCR 意味着我们每年可以节省 $40,000 的人工处理成本,同时提高生产力,并释放资源用于高影响任务。我强烈推荐它。

Brent Matzelle related to 哪些参数控制文本重action?

Brent Matzelle

首席技术官,OPYN

查看案例研究
Icon Quote related to 哪些参数控制文本重action?

Iron Suite 在我们的运营中起着至关重要的作用。这些工具提高了业务各方面的效率,包括创建平面图和改善库存管理。

David Jones related to 哪些参数控制文本重action?

David Jones

首席软件工程师,Agorus Build

查看案例研究

如何编辑 PDF 中的特定区域?

编辑文档中特定区域非常有效。使用RectangleF对象来编辑目标文档的区域。 让我们使用上面示例中的PDF示例文档

:path=/static-assets/pdf/content-code-examples/how-to/redact-text-redact-region.cs
using IronPdf;
using IronSoftware.Drawing;

PdfDocument pdf = PdfDocument.FromFile("novel.pdf");

RectangleF rectangle = new RectangleF(5, 700, 50, 50);

// Redact region on coordinates(5,700) with width and height 50 pixels
pdf.RedactRegionsOnAllPages(rectangle);

pdf.SaveAs("redactedRegion.pdf");
Imports IronPdf
Imports IronSoftware.Drawing

Private pdf As PdfDocument = PdfDocument.FromFile("novel.pdf")

Private rectangle As New RectangleF(5, 700, 50, 50)

' Redact region on coordinates(5,700) with width and height 50 pixels
pdf.RedactRegionsOnAllPages(rectangle)

pdf.SaveAs("redactedRegion.pdf")
$vbLabelText   $csharpLabel

高级区域重反应示例

在处理复杂文档时,您可能需要编辑多个区域或动态计算坐标:

:path=/static-assets/pdf/content-code-examples/how-to/redact-text-5.cs
using IronPdf;
using IronSoftware.Drawing;
using System.Collections.Generic;

PdfDocument pdf = PdfDocument.FromFile("form_with_signatures.pdf");

// Redact multiple regions
List<RectangleF> regionsToRedact = new List<RectangleF>
{
    new RectangleF(100, 200, 200, 50),  // Signature area
    new RectangleF(100, 300, 200, 100), // Address block
    new RectangleF(350, 150, 150, 150)  // Photo ID area
};

foreach (var region in regionsToRedact)
{
    pdf.RedactRegionsOnAllPages(region);
}

// Redact regions on specific pages only
pdf.RedactRegionOnPage(0, new RectangleF(50, 50, 100, 30)); // Page 1 header
pdf.RedactRegionOnPages(new[] { 2, 3, 4 }, new RectangleF(400, 700, 150, 50)); // Footer on pages 3-5

pdf.SaveAs("form_redacted.pdf");
Imports IronPdf
Imports IronSoftware.Drawing
Imports System.Collections.Generic

Dim pdf As PdfDocument = PdfDocument.FromFile("form_with_signatures.pdf")

' Redact multiple regions
Dim regionsToRedact As New List(Of RectangleF) From {
    New RectangleF(100, 200, 200, 50),  ' Signature area
    New RectangleF(100, 300, 200, 100), ' Address block
    New RectangleF(350, 150, 150, 150)  ' Photo ID area
}

For Each region In regionsToRedact
    pdf.RedactRegionsOnAllPages(region)
Next

' Redact regions on specific pages only
pdf.RedactRegionOnPage(0, New RectangleF(50, 50, 100, 30)) ' Page 1 header
pdf.RedactRegionOnPages(New Integer() {2, 3, 4}, New RectangleF(400, 700, 150, 50)) ' Footer on pages 3-5

pdf.SaveAs("form_redacted.pdf")
$vbLabelText   $csharpLabel

区域重action 是什么样的?

结果PDF是从坐标(5,700)处编辑区域,宽度和高度为50px。

何时应使用区域重action 与文本重action?

使用RedactRegionOnPages方法分别从单页或多页中删除区域。

在以下情况下,区域节录是理想的选择:

  • 您需要删除图像、徽标或图形元素
  • 敏感内容包括手写笔记或签名
  • 您需要处理布局固定的表单
  • 无论文本内容如何,您都希望删节整个章节

文本节录在以下情况下效果更佳:

  • 您正在搜索特定的关键字或短语
  • 需要编辑的内容出现在多个位置
  • 需要区分大小写或全词匹配
  • 不同文件的文档结构可能有所不同

要实现全面的 PDF 安全性,请将编辑与其他安全功能结合起来。 了解有关签署 PDF 的更多信息,并探索PDF 压缩以优化您的安全文档。

PDF 重action 的最佳实践

在应用程序中实施编辑时:

  1. 始终保存到新文件:永远不要覆盖原始文档,以保持审计追踪
  2. 验证删除的完整性:查看输出以确保所有敏感数据已被删除
  3. 考虑元数据:记得同时编辑和删除元数据,其中可能包含敏感信息
  4. 测试坐标计算:使用区域删除时,跨不同页面大小和方向测试您的坐标计算

如需了解其他文档处理需求,请探索如何在应用编辑之前从 PDF 中提取文本和图像,或了解创建具有内置隐私控制功能的 PDF 表单

准备好看看您还能做些什么吗? 请查看我们的教程页面:编辑 PDF

常见问题解答

什么是 PDF 文本节录,为什么它很重要?

PDF 文本编辑是通过用黑框覆盖文本或完全删除文本的方式永久删除或遮盖文档中敏感信息的过程。IronPDF 提供强大的编辑功能,可确保从 PDF 结构中永久删除敏感数据,帮助保持符合 GDPR 和 HIPAA 等数据保护法规。

如何编辑 PDF 中所有页面的特定文本?

using IronPDF,您可以使用 RedactTextOnAllPages 方法编辑所有页面中的特定文本。只需载入 PDF 文档,调用 doc.RedactTextOnAllPages("敏感信息"),然后保存编辑后的文档。这样就能永久删除整个 PDF 中的指定文本。

我能否编辑 PDF 文档中的特定区域或领域?

是的,IronPDF 允许您通过使用 RedactRegionsOnAllPages 方法提供坐标、宽度和高度来编辑特定区域。这对于遮盖表单、签名、图像或任何包含敏感信息的可视内容(无论内容类型如何)特别有用。

文本编辑和区域编辑有什么区别?

IronPDF 中的文本编辑针对并删除整个文档中的特定文本字符串,而区域编辑则根据坐标模糊指定区域。区域编辑非常适合图像、签名或表格字段等非文本内容,而文本编辑则非常适合删除特定的单词或短语。

实施 PDF 编辑需要几个步骤?

IronPDF 使 PDF 编辑变得简单,只需 5 个步骤:下载 C# 库,准备 PDF 文档,使用 RedactTextOnAllPages 进行文本编辑或 RedactRegionsOnAllPages 进行区域编辑,最后将编辑后的文档保存为新文件。

编辑过程是否永久、安全?

是的,IronPDF 的编辑方法可以永久性地从 PDF 结构中删除敏感信息,而不仅仅是在视觉上覆盖敏感信息。这确保了编辑过的内容无法恢复或访问,为敏感文档提供了真正的安全性和合规性。

Curtis Chau
技术作家

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

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。

准备开始了吗?
Nuget 下载 20,088,359 | 版本: 2026.7 刚刚发布
Still Scrolling Icon

还在滚动吗?

想快速获得证据? PM > Install-Package IronPdf
运行示例看着你的HTML代码变成PDF文件。