SetStructElemActualText

PDF etichetat & Accesibilitate

Descriere

Setează intrarea /ActualText pe elementul de structură aflat în construcție pe stiva de tag-uri. ActualText furnizează textul Unicode exact reprezentat de element, suprascriind orice text extras din content stream-ul PDF de către software-ul de citire

Folosiți această funcție când glifele randate în fluxul de conținut nu se mapează direct pe caracterele lor din ordinea de citire — de exemplu, o glifă de ligatură (ff, fi, fl) care ar trebui citită ca secvența de două caractere ff, fi sau fl. Fără ActualText, uneltele de extragere de text și cititoarele de ecran pot produce rezultate incorecte pentru astfel de glife

Sintaxă

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);

Parametri

ActualTextȘirul de text Unicode de asociat elementului de structură curent. Treceți un șir gol pentru a șterge o valoare setată anterior

Valoare returnată

Returnează 1 în caz de succes, 0 dacă niciun element de structură nu este deschis momentan sau niciun document nu este selectat

Observații

Apelați această funcție imediat după BeginTag sau BeginTagEx, cât timp elementul țintă este în vârful stivei de tag-uri

ActualText și AltText servesc scopuri diferite. AltText (setat prin parametrul AltText al BeginTag) este o reprezentare alternativă a întregului element, destinată tehnologiei asistive când conținutul vizual nu poate fi randat. ActualText completează extragerea textului din content stream: înlocuiește secvența de caractere extrasă a elementului, dar nu suprimă randarea. Screen reader-ele care suportă ambele folosesc de obicei ActualText pentru ieșirea citită cu voce tare când este prezent

ISO 32000-1 §14.9.4 definește ActualText ca o intrare de șir de text PDF în dicționarul elementului de structură. PDF/UA-1 (ISO 14289-1 §7.1) cere ca conținutul de text să fie extractibil și corect; ActualText este mecanismul standard pentru a îndeplini această cerință pentru secvențele de glife a căror extragere directă ar fi ambiguă sau incorectă

Exemplu

// 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;

Consultați și

BeginTag, BeginTagEx, SetStructElemID, AddTagAttribute, GetPDFUADiagnostics