Zum Fußzeileninhalt springen
PRODUKTVERGLEICHE

PDFsharp vs QuestPDF (C# PDF-Bibliotheken in der tiefgehenden Analyse)

Stellen Sie sich eine Anmerkung wie eine transparente Folie über der Seite vor: der Haftnotizkommentar sitzt oben, während das Dokument darunter unberührt bleibt. IronPDF verwaltet diese Ebene über die Annotations Sammlung auf einem PdfDocument, indem Notizen hinzugefügt, bearbeitet und entfernt werden, die als kleine Symbole erscheinen und den vollständigen Kommentar anzeigen, wenn sie angeklickt werden. Da die Schicht von den Inhalten getrennt ist, bleibt beim Bearbeiten oder Entfernen einer Anmerkung alle anderen Dokumenteigenschaften unberührt, sodass Anmerkungen überall passen, wo das Original intakt bleiben muss.

Dokumentenüberprüfung und Markup

Die häufigste Anwendung von Anmerkungen. Ein Überprüfungstool fügt Feedback zu spezifischen Stellen hinzu und speichert eine kommentierte Kopie für den nächsten Benutzer, wobei der Quellinhalt unverändert bleibt:

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

Vertragszusammenarbeit ohne das Original zu berühren

Da die Anmerkungsschicht vom Vertragskörper getrennt bleibt, können Rechtsteams Notizen hinterlassen, die nie den verbindlichen Text ändern. Diese Trennung ist wichtig, wo immer das Dokument unberührt für Prüfung oder Signatur bleiben muss.

QA-Markierung technischer Dokumente

Ein automatisierter Test kann eine positionierte Anmerkung hinterlassen, wo immer er ein Problem erkennt (eine fehlende Figur, ein Wert außerhalb der Spezifikation), was dem Menschen eine anklickbare Karte der Probleme bietet, nicht einen separaten Bericht.

Bearbeitung durch einen Revisionszyklus

Bestehende Anmerkungen können abgerufen und aktualisiert werden, wenn sich das Feedback ändert oder Notizen neu positioniert werden müssen. Dies unterstützt Genehmigungsketten, bei denen ein Vorgesetzter die Notizen des Prüfers vor der Freigabe ändert:

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

Bereinigung vor der Verteilung

Entfernung ist ein eigener Anwendungsfall. Entfernen Sie interne oder veraltete Kommentare, bevor ein Dokument verschickt wird, so dass Feedback nie an ein externes Publikum durchsickert. Verwenden Sie RemoveAt für einen, RemoveAllAnnotationsForPage für eine Seite oder Clear für das gesamte Dokument. Dies passt natürlicherweise zur Desinfektion oder PDF/A-Export als Finalisierungsschritt.

Zwei Dinge, die Ihnen zum Verhängnis werden können

PDF-Koordinaten beginnen in der linken unteren Ecke, nicht in der linken oberen Ecke, die die meisten UI-Frameworks verwenden, und werden in Punkten (1/72 Zoll) gemessen; US Letter ist 612 x 792, A4 ist 595 x 842. Bis Sie dies berücksichtigen, landen Anmerkungen an der falschen Stelle.

Die Anmerkungssammlung wird nach jeder Entfernung erneut indiziert. Um mehrere zu löschen, arbeiten Sie rückwärts oder sammeln Sie sie zuerst und entfernen Sie sie rückwärts, oder Sie löschen die falschen.

Wofür sie sind und wofür nicht

Der dokumentierte Typ ist TextAnnotation, die Haftnotiz, mit Eigenschaften für Titel, Inhalt, Position, Seite, Betreff, Symbol und Öffnungszustand. Es ist keine Hervorhebung, Tinte oder Stempel-Markierung. Ordnen Sie es dem Kommentar und der Überprüfung zu, die Aufgabe, die es gut macht, nicht dem visuellen Markup, das es nicht zu leisten beansprucht.

Häufig gestellte Fragen

Wie füge ich eine Textanmerkung zu einem PDF in C# mit IronPDF hinzu?

Verwenden Sie die Methode Annotations.Add auf einem PdfDocument mit einem TextAnnotation-Objekt. Setzen Sie den Seitenindex, die X/Y-Position (in PDF-Punkten von unten links), Titel und Inhalts-Eigenschaften.

Verändert das Hinzufügen oder Entfernen einer Anmerkung den zugrunde liegenden PDF-Inhalt?

Nein. Die Anmerkungsschicht ist vom Dokumentinhalt getrennt. Das Bearbeiten oder Entfernen von Anmerkungen lässt alle anderen Dokumenteigenschaften, Texte und Bilder unberührt.

Wie entferne ich Anmerkungen aus einem PDF, bevor ich es verteile?

Verwenden Sie RemoveAt(index), um eine einzelne Anmerkung zu löschen, RemoveAllAnnotationsForPage(pageIndex), um eine Seite zu leeren, oder Annotations.Clear(), um alle Anmerkungen aus dem Dokument zu entfernen.

Warum erscheinen meine Anmerkungen an der falschen Position?

PDF-Koordinaten beginnen in der unteren linken Ecke, nicht in der oberen linken Ecke, die die meisten UI-Frameworks verwenden. Koordinaten werden in Punkten gemessen (1/72 Zoll). US Letter hat 612 x 792 Punkte; A4 hat 595 x 842 Punkte. Passen Sie Ihre X- und Y-Werte entsprechend an.

Kann ich den Text oder die Position einer bestehenden Anmerkung aktualisieren?

Ja. Holen Sie sich die Anmerkung aus der Annotations-Sammlung, wandeln Sie sie in TextAnnotation um und aktualisieren Sie ihre Contents, X, Y oder andere Eigenschaften, bevor Sie das Dokument speichern.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen

Iron-Support-Team

Wir sind 24 Stunden am Tag, 5 Tage die Woche online.
Chat
E-Mail
Rufen Sie mich an