SetStructElemActualText

PDF balisé & accessibilité

Description

Définit l’entrée /ActualText de l’élément de structure en cours de création sur la pile de balises. ActualText fournit le texte Unicode exact représenté par l’élément et remplace tout texte extrait du flux de contenu PDF par le logiciel de lecture

Utilisez cette fonction lorsque les glyphes du flux ne correspondent pas directement aux caractères de lecture voulus, par exemple une ligature (ff, fi, fl) devant être lue comme ff, fi ou fl. Sans ActualText, les outils d’extraction et lecteurs d’écran peuvent produire un résultat incorrect

Syntaxe

Delphi

Function TPDFlib.SetStructElemActualText(Const ActualText: WideString): Integer;

ActiveX

Function PDFlib::SetStructElemActualText(ActualText As String) As Long

DLL

int DLSetStructElemActualText(int InstanceID, const wchar_t * ActualText);

Paramètres

ActualTextChaîne de texte Unicode à associer à l'élément de structure actuel. Transmettez une chaîne vide pour effacer une valeur précédemment définie

Valeur de retour

Renvoie 1 en cas de réussite, 0 si aucun élément de structure n'est actuellement ouvert ou si aucun document n'est sélectionné

Remarques

Appelez cette fonction immédiatement après BeginTag ou BeginTagEx, l'élément cible se trouvant au sommet de la pile de balises

ActualText et AltText ont des rôles différents. AltText, défini par le paramètre AltText de BeginTag, est une représentation alternative de l’élément destinée aux technologies d’assistance lorsque le visuel ne peut être rendu. ActualText complète l’extraction du flux en remplaçant la séquence extraite sans supprimer le rendu. Les lecteurs compatibles utilisent généralement ActualText pour la lecture à voix haute

ISO 32000-1 §14.9.4 définit ActualText comme entrée de chaîne PDF du dictionnaire d’élément de structure. PDF/UA-1 (ISO 14289-1 §7.1) exige un texte extractible et correct ; ActualText est le mécanisme standard pour les séquences de glyphes dont l’extraction directe serait ambiguë ou incorrecte

Exemple

// Tag a ligature glyph so that text extraction yields "fi"
PDFlib.BeginTag('Span', '', '');
PDFlib.SetStructElemActualText('fi');
PDFlib.TextOut(x, y, #$FB01);   // U+FB01 LATIN SMALL LIGATURE FI
PDFlib.EndTag;

Voir aussi

BeginTag, BeginTagEx, SetStructElemID, AddTagAttribute, GetPDFUADiagnostics