Méthode THPDFHeadlessDocument.SaveAnnotationRemovalsToFile
function SaveAnnotationRemovalsToFile(const FileName: string;
const Identities: array of THPDFHeadlessAnnotationIdentity;
const Options: THPDFHeadlessAnnotationRemovalOptions): Integer;
Prépare les suppressions d'annotations de page à partir de la source chargée actuelle et publie atomiquement un PDF distinct vers FileName
Identities sélectionne les annotations par indices de pages à base zéro valides et valeurs NM Unicode décodées exactes ; Options fournit des limites de ressources positives et une annulation partagée optionnelle
La valeur de retour compte chaque annotation supprimée une fois, dépendances popups et réponses incluses ; elle peut dépasser le nombre d'identités demandées
Une requête vide ou des identités valides sans correspondance renvoient zéro et publient les octets sources actuels exacts ; les identités dupliquées, les noms choisis ambigus et les propriétaires d'annotations partagés échouent
Supprimer un propriétaire supprime transitivement les popups et réponses dépendantes, avec gestion finie des cycles ; supprimer seulement son popup vide le lien Popup du propriétaire conservé
Un Widget choisi ou dépendant lève hdFieldTypeUnsupported car la suppression d'arbre de champs est une transaction distincte
État et publication
Le document chargé reste inchangé après un succès comme un échec ; rechargez le PDF publié pour adopter une révision modifiée
Une sortie modifiée est une révision incrémentielle conservant le préfixe de fichier d'origine ; zéro modification produit une copie exacte, et cette opération n'efface pas sécuritairement les révisions antérieures
Le chemin de sortie ne doit pas être un alias de la source chargée ; un échec d'allocation, une entrée invalide, un rejet de politique, l'épuisement du budget et l'annulation préservent la destination existante
Politique et diagnostics
Les modifications réelles exigent la permission d'annotations du document chiffré et l'admission authentifiée de la politique des documents signés ; la certification P1/P2 rejette les modifications, tandis que les modifications P3 admises conservent les plages d'octets signées d'origine
Les identités invalides et la propriété mal formée rapportent hdInvalidDocument ; l'épuisement de ressources rapporte hdLimitExceeded ; la sélection de widgets rapporte hdFieldTypeUnsupported
Les échecs de sécurité, de signature et d'annulation conservent leurs contrats de diagnostic natifs existants ; configurez les exigences de confiance et d'horodatage via les options de politique de signature du document
Voir THPDFHeadlessAnnotationIdentity, THPDFHeadlessAnnotationRemovalOptions et la suppression d'annotations native