SetStructElemActualTextA
taggad PDF & tillgänglighet
Beskrivning
Det avslutande A:et betecknar ANSI (char)-DLL-ingångspunkten; ActiveX/COM-ytan exponerar bara Unicode-formen. Beteendet är identiskt med SetStructElemActualText och strängargument tolkas med aktuell SetAnsiMode-kod sida
Sätter /ActualText-posten på det strukturelement som för tillfället byggs på taggstacken. ActualText anger exakt den Unicode-text som elementet representerar och åsidosätter all text som läsarprogram extraherar från PDF:ens innehållsström
Använd den här funktionen när glyferna som renderas i innehållsströmmen inte direkt mappar till sina avsedda läsordningstecken — till exempel en ligaturglyf (ff, fi, fl) som borde läsas som tvåteckensekvensen ff, fi eller fl. Utan ActualText kan textextraktionsverktyg och skärmläsare ge felaktig utdata för sådana glyfer
Syntax
Delphi
Function DLSetStructElemActualTextA(InstanceID: Integer; ActualText: PAnsiChar): Integer;
DLL
int DLSetStructElemActualTextA(int InstanceID, const char * ActualText);
Parametrar
| ActualText | Unicode-textsträngen som ska knytas till det aktuella strukturelementet. Ange en tom sträng för att rensa ett tidigare satt värde |
|---|
Returvärde
Returnerar 1 vid lyckat anrop, 0 om inget strukturelement för tillfället är öppet eller inget dokument är valt
Anmärkningar
Anropa den här funktionen omedelbart efter BeginTag eller BeginTagEx medan målelementet ligger överst på taggstacken
ActualText och AltText fyller olika syften. AltText (satt via AltText-parametern i BeginTag) är en alternativ representation av hela elementet, avsedd för hjälpmedelsteknik när det visuella innehållet inte kan renderas. ActualText kompletterar extraktion av text ur innehållsströmmen: den ersätter elementets extraherade teckensekvens men undertrycker inte rendering. Skärmläsare som stödjer båda använder typiskt ActualText för uppläst utdata när den finns
ISO 32000-1 §14.9.4 definierar ActualText som en PDF-textsträngspost i strukturelementets ordlista. PDF/UA-1 (ISO 14289-1 §7.1) kräver att textinnehåll kan extraheras och är korrekt; ActualText är standardmekanismen för att uppfylla kravet för glyfsekvenser vars direkta extraktion skulle vara tvetydig eller felaktig.
Exempel
// 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;Se även
BeginTag, BeginTagEx, SetStructElemID, AddTagAttribute, GetPDFUADiagnostics