Fonction HPDFXFDFImportAnnotations
function HPDFXFDFImportAnnotations(const Access: THPDFXFDFAccess;
const Destinations: THPDFXFDFDestinationAccess;
Root: THPDFXFDFNode): Integer; overload;
Mappe le XML d'annotations via les callbacks d'accès fournis et retourne le nombre d'annotations créées
Les callbacks de destination séparés lient les tableaux de pages locaux à de véritables pages indirectes du document et préservent les cibles Unicode nommées et les coordonnées décimales bornées exactes
La surcharge d'origine conserve sa signature et utilise un record de destination vide ; les cibles de pages explicites exigent des callbacks de nombre de pages et d'objets page
Ce mappeur de callbacks bas niveau ne fournit pas lui-même de rollback de document entier ; utilisez SaveAnnotationsXFDFToFile pour une admission bornée, une politique authentifiée et une publication atomique du fichier
Attributs et limites de destination
Le transport d'apparence de tampon standard préserve les flux Form réels et des ressources bornées acycliques de polices, d'images et de graphismes via un XML typé base64
function HPDFXFDFImportAnnotations(const Access: THPDFXFDFAccess;
const Destinations: THPDFXFDFDestinationAccess; Root: THPDFXFDFNode;
MaxAppearanceBytes, MaxAppearanceNodes, MaxAppearanceDepth: Integer;
MaxAppearanceWorkingBytes: Int64;
CancellationToken: THPDFCancellationToken): Integer; overload;
Les limites sont positives et cumulatives, avec un plafond de profondeur d'apparence de 62 ; la surcharge précédente fournit 16 Mio, 100000 nœuds, une profondeur de 62 et 512 Mio de réservation de travail
Les flux indirects créés restent possédés par l'adaptateur de graphe fourni ; le codec bas niveau ne prend pas possession du document de l'appelant et ne fournit pas de rollback de l'opération entière
L'adaptateur réserve la longueur base64 d'origine, blancs compris, avant conversion ANSI et stockage décodé ; les données RAW HEX et ASCII sont réservées avant l'allocation des tableaux d'octets de flux
Les réservations de travail sont conservatrices et cumulatives pour l'import complet, indépendantes des octets de sortie ; un arbre XFDF analysé possédé par l'appelant est admis par l'appelant avant que cet adaptateur ne le consomme
Un préflight lexical réserve les records de nœuds et d'attributs XML décodés et les tableaux de portées d'espaces de noms hérités avant de construire l'arbre ; nombre de nœuds, profondeur et stockage de travail sont des limites cumulatives indépendantes
Le préflight spécifique à AP valide le vocabulaire existant de balises d'objets avant d'invoquer le lecteur XML partagé, préservant le rejet des types invalides sans conserver des fragments XHTML RawXML sans rapport