SetDeterministicDocumentID
Propriétés de document, optimisation
Description
Active ou désactive des identifiants de fichier de trailer reproductibles dérivés d'une graine explicite ou d'un contenu sérialisé normalisé
Syntaxe
Delphi
Function TPDFlib.SetDeterministicDocumentID(Enable: Integer): Integer;Paramètres
| Enable | Passez 1 pour dériver l'identifiant de fichier du trailer d'une graine explicite ou du contenu normalisé du document, ou 0 pour restaurer l'identifiant dérivé du temps par défaut |
|---|
Valeurs de retour
| 0 | Valeur de paramètre invalide |
|---|---|
| 1 | Réglage appliqué avec succès |
Remarques
Lorsque l'option est active, le prochain enregistrement complet non chiffré dérive le /ID du trailer de la graine fournie avec SetDocumentIDSeed. Sans graine explicite, l'écrivain fait passer l'en-tête et le corps du document sérialisés dans SHA-256, normalise les identifiants de ressources générés et les UUID d'instance XMP, et utilise les 16 premiers octets du condensat pour les deux entrées du tableau /ID initial. Les données de références croisées, les décalages de trailer et tout /ID de trailer précédent sont exclus, de sorte que les modifications de pages, de ressources, de pièces jointes et de métadonnées affectent l'identifiant alors que les décalages de mise en page n'affectent pasL'identifiant est actualisé uniquement lors des enregistrements complets. Les mises à jour incrémentales ne réécrivent jamais l'identifiant permanent, et les documents chiffrés conservent leur identifiant existant car la première entrée
/ID participe à la dérivation de la clé de chiffrement. Les dates automatiques et les autres métadonnées utilisateur volatiles restent du contenu ; définissez-les explicitement lorsque deux documents générés indépendamment doivent recevoir le même identifiant dérivé du contenu
Exemple
PDF.SetDeterministicDocumentID(1);
PDF.SetDocumentIDSeed('invoice-2026-07-0001');
PDF.DrawText(100, 100, 'Reproducible output');
PDF.SaveToFile('invoice.pdf'); // same seed, same trailer IDVoir aussi
GetDeterministicDocumentID, SetDocumentIDSeed, GetDocumentFileID