Native Annotation-Entfernung

Entfernt vorhandene Seitenannotationen über ihren nullbasierten Seitenindex und den exakten Unicode-NM-Wert, während die ursprüngliche PDF-Revision erhalten bleibt und eine separate inkrementelle Ausgabe vorbereitet wird

Der native Einstiegspunkt ist THPDFHeadlessDocument.SaveAnnotationRemovalsToFile; gewöhnliche Windows-Dokumente verwenden THPDFWindowsFormDataTransaction.RemoveAnnotations

Identität und Abhängigkeiten

Jede Identität enthält einen gültigen Seitenindex und einen nichtleeren Namen; die Übereinstimmung ist nach Dekodieren des PDF-Textstrings case-sensitiv, ohne Unicode-Normalisierung oder Abgleich mit Anzeigetext

Derselbe Name auf verschiedenen Seiten bezeichnet verschiedene Annotationen; ein fehlender Name auf der gewählten Seite ist ein No-Op

Das Entfernen einer Annotation entfernt auch ihr Popup und die davon abhängigen Antworten, einschließlich verschachtelter Antworten und Popup-Abhängigkeiten; ein Visited-Set hält Abhängigkeitszyklen endlich, und jede entfernte Annotation zählt einmal zur zurückgegebenen Anzahl

Wird nur ein Popup entfernt, bleibt sein Besitzer erhalten und dessen Popup-Eintrag wird geleert; unabhängige Annotationen behalten ihre ursprüngliche Reihenfolge und Daten

Doppelte angeforderte Identitäten, ein mehrdeutiger angeforderter Name auf einer Seite oder ein von mehreren Seitenarray-Einträgen geteiltes Annotation-Dictionary verursachen Fehler vor der Veröffentlichung

Veröffentlichung und Sicherheit

Die native Methode lässt das geladene Dokument bei Erfolg und Fehlschlag unverändert; laden Sie das resultierende PDF, um die Entfernung zu übernehmen

Die Veröffentlichung nutzt eine vorbereitete Datei und atomaren Ersatz des Ziels; eine fehlgeschlagene oder abgebrochene Vorbereitung bewahrt das vorhandene Ziel, und das Ziel darf nicht mit der geladenen Quelle aliasiert sein

Null Entfernungen veröffentlichen eine exakte Kopie der aktuellen Quellrevision; dieselbe Entfernung gegen das resultierende Dokument wiederholt gibt null zurück und bewahrt seine Bytes

Eine inkrementelle Revision entfernt Annotationen aus dem aktuellen Seitengraphen, während ältere Bytes und Revisionen erhalten bleiben; diese Operation ist keine sichere Löschung oder Redaction, und gelöschte Inhalte können aus der Dateihistorie wiederherstellbar bleiben

Berechtigungen und Ressourcengrenzen

Tatsächliche Entfernungen erfordern authentifizierte Annotation-Berechtigung für verschlüsselte Eingabe und Signatur-Policy-Zulassung für signierte Eingabe; das erfolgreiche Öffnen eines verschlüsselten PDFs gewährt nicht allein die Berechtigung, Annotationen zu ändern

Authentifizierte Zertifizierung P1 und P2 weist Annotation-Änderungen zurück; eine erlaubte P3-Aktualisierung bewahrt die originalen signierten Bytes, wobei Signaturintegrität und Zertifikatsbindungsprüfungen am tatsächlichen Dokument angewendet werden

Konfigurieren Sie erforderliche Zertifikatsvertrauen, Zeitstempel und Revocation-Policy explizit, wenn diese Prüfungen Teil der Sicherheitsanforderungen der Anwendung sind

Entfernungsoptionen begrenzen Annotation-Anzahl, Operationsarbeit, Namensspeicher und Arbeitsspeicher, mit kooperativem Abbruch, der mit dem Dokument oder der Transaktion geteilt wird

Aktuelle Grenze

Ein gewähltes Widget oder ein über Entfernungsabhängigkeiten erreichendes Widget wird zurückgewiesen, weil das Entfernen von Formfeldern eine AcroForm-Feldbaum-Transaktion erfordert; diese API löscht keine Felder und löst ihre Widgets nicht still

Die Operation führt keine Annotation-Actions oder Skripte aus und interpretiert die Entfernung nicht als Anwenden einer Redact-Annotation

Siehe JSON- und Callback-Operationen für annotations.remove, explizite Eingabe-IO und die separaten PDF-, Ergebnis- und Kontext-Commit-Stufen