SetStructElemActualText
PDF con tag & accessibilità
Descrizione
Imposta la voce /ActualText sull'elemento della struttura attualmente in creazione nello stack dei tag. ActualText fornisce il testo Unicode esatto rappresentato dall'elemento, sostituendo qualsiasi testo estratto dal flusso di contenuto PDF dal software di lettura
Usare questa funzione quando i glifi renderizzati nel flusso di contenuto non corrispondono direttamente ai caratteri previsti nell'ordine di lettura, ad esempio un glifo di legatura (ff, fi, fl) che deve essere letto come sequenza di due caratteri ff, fi o fl. Senza ActualText, gli strumenti di estrazione e gli screen reader possono produrre un output errato
Sintassi
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 | Stringa di testo Unicode da associare all'elemento di struttura corrente. Passare una stringa vuota per cancellare un valore impostato in precedenza. |
|---|
Valore restituito
Restituisce 1 in caso di successo, 0 se nessun elemento della struttura è aperto o nessun documento è selezionato
Note
Chiamare subito dopo BeginTag o BeginTagEx mentre l'elemento è in cima allo stack.
ActualText e AltText hanno scopi diversi. AltText, parametro AltText di BeginTag, sostituisce l'intero elemento per le tecnologie assistive quando il contenuto visivo non è renderizzabile. ActualText integra l'estrazione sostituendo la sequenza di caratteri, senza sopprimere il rendering. Gli screen reader usano generalmente ActualText per la lettura quando presente
ISO 32000-1 §14.9.4 definisce ActualText come voce stringa di testo PDF nel dizionario dell'elemento della struttura. PDF/UA-1 (ISO 14289-1 §7.1) richiede che il contenuto testuale sia estraibile e corretto; ActualText è il meccanismo standard per soddisfare questo requisito per sequenze di glifi la cui estrazione diretta sarebbe ambigua o errata
Esempio
// 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;Vedere anche
BeginTag, BeginTagEx, SetStructElemID, AddTagAttribute, GetPDFUADiagnostics