跳至页脚内容
产品比较

PDFsharp与QuestPDF(C# PDF库深入比较)

将注释想象为页面上的一张透明薄片:便签式注释位于顶部,而下面的文档保持不变。 IronPDF通过PdfDocument上管理该层,添加、编辑和删除显示为小图标的注释,点击时会显示完整的评论。 因为这一层与内容是分开的,编辑或删除注释不会影响其他文档属性,因此注释可以放在原件必须保持未动的地方。

文档审阅和标记

最常见的是用于注释。 审阅工具将反馈附加到特定位置,并保存一份带评论的副本供下一个人使用,源内容未更改:

using IronPdf;
using IronPdf.Annotations;

var pdf = PdfDocument.FromFile("draft.pdf");
pdf.Annotations.Add(new TextAnnotation(0)
{
    Title = "Reviewer",
    Contents = "Clarify this clause.",
    X = 50,
    Y = 700
});
pdf.SaveAs("draft-reviewed.pdf");
using IronPdf;
using IronPdf.Annotations;

var pdf = PdfDocument.FromFile("draft.pdf");
pdf.Annotations.Add(new TextAnnotation(0)
{
    Title = "Reviewer",
    Contents = "Clarify this clause.",
    X = 50,
    Y = 700
});
pdf.SaveAs("draft-reviewed.pdf");
Imports IronPdf
Imports IronPdf.Annotations

Dim pdf = PdfDocument.FromFile("draft.pdf")
pdf.Annotations.Add(New TextAnnotation(0) With {
    .Title = "Reviewer",
    .Contents = "Clarify this clause.",
    .X = 50,
    .Y = 700
})
pdf.SaveAs("draft-reviewed.pdf")
$vbLabelText   $csharpLabel

在不触及原件的情况下进行合同协作

由于注释层与合同正本文本分离,法律团队可以留下不会更改绑定文本的笔记。 这一分离在文档必须为审核或签名保持清晰的情况下尤为重要。

在技术文档上的质量保证标记

自动检查可以在检测到问题的任何地方放置定位注释(如缺少的图表、规格外的数值),为人类提供问题的可点击地图,而不是一份单独的报告。

通过修订周期进行编辑

现有的注释可以在反馈更改或笔记需要重新定位时进行检索和更新。 这支持批准链,其中主管在签署前修订审阅者的笔记:

using System.Linq;

var pdf = PdfDocument.FromFile("draft-reviewed.pdf");
var note = (TextAnnotation)pdf.Annotations.First();
note.Contents = "Resolved in v2.";
note.X = 150;
pdf.SaveAs("draft-updated.pdf");
using System.Linq;

var pdf = PdfDocument.FromFile("draft-reviewed.pdf");
var note = (TextAnnotation)pdf.Annotations.First();
note.Contents = "Resolved in v2.";
note.X = 150;
pdf.SaveAs("draft-updated.pdf");
Imports System.Linq

Dim pdf = PdfDocument.FromFile("draft-reviewed.pdf")
Dim note = CType(pdf.Annotations.First(), TextAnnotation)
note.Contents = "Resolved in v2."
note.X = 150
pdf.SaveAs("draft-updated.pdf")
$vbLabelText   $csharpLabel

在分发前清理

删除是一种独立的用例。 在文件发出之前剥离内部或过时的评论,这样反馈就不会泄漏给外部受众。 对于一个,请使用Clear。 这自然与清理或PDF/A导出作为最终步骤相配合。

会引起麻烦的两件事

PDF坐标从左下角开始,而不是大多数UI框架使用的左上角,并以点(1/72英寸)为单位测量; US Letter是612 x 792,A4是595 x 842。在此之前,注释会放置在错误的位置。

注释集合在每次移除后重新索引。 要删除多个,请倒退操作或先收集它们再以相反顺序移除,否则会删除错误的。

它们的用途和非用途

文档化的类型是TextAnnotation,即便签注,具有标题、内容、位置、页面、主题、图标和打开状态的属性。 它不是高亮、墨水或印章标记。匹配注释和审阅,这是它擅长的工作,而不是声称能够做的视觉标记。

常见问题解答

如何使用IronPDF在C#中向PDF添加文本注释?

PdfDocument上的Annotations.Add方法中使用TextAnnotation对象。设置页面索引、X/Y位置(从左下角的PDF点数)、标题和内容属性。

添加或删除注释会改变基础PDF内容吗?

不会。注释层与文档内容是分开的。编辑或删除注释不会影响文档的其他属性、文本和图像。

如何在分发PDF前删除注释?

使用RemoveAt(index)删除单个注释,RemoveAllAnnotationsForPage(pageIndex)清空页面,或Annotations.Clear()删除文档中所有注释。

为什么我的注释出现在错误的位置?

PDF坐标从左下角开始,而不是大多数UI框架使用的左上角。坐标以点为单位测量(1/72英寸)。美国信纸尺寸为612 x 792点;A4尺寸为595 x 842点。相应调整您的X和Y值。

我可以更新现有注释的文本或位置吗?

可以。从Annotations集合中检索注释,将其转换为TextAnnotation,并在保存文档之前更新其ContentsXY或其他属性。

Curtis Chau
技术作家

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

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

钢铁支援团队

我们每周 5 天,每天 24 小时在线。
聊天
电子邮件
打电话给我