SetStructElemActualText
Маркиран PDF & достъпност
Описание
Задава записа /ActualText върху структурния елемент, който в момента се изгражда в tag stack-а. ActualText предоставя точния Unicode текст, който елементът представя, като отменя всеки текст, извлечен от PDF content stream-а от софтуера за четене
Използвайте тази функция, когато глифовете, изобразени в content stream-а, не съответстват пряко на предназначените символи в реда на четене — например лигатурен глиф (ff, fi, fl), който трябва да се чете като двузнаковата последователност ff, fi или fl. Без ActualText инструментите за извличане на текст и screen reader-ите могат да произведат неправилен изход за такива глифове
Синтаксис
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);
Параметри
| ActualText | Unicode текстовият низ, който да се асоциира с текущия структурен елемент. Подайте празен низ, за да изчистите предварително зададена стойност |
|---|
Върната стойност
Връща 1 при успех, 0 ако няма отворен структурен елемент или не е избран документ
Забележки
Извикайте тази функция непосредствено след BeginTag или BeginTagEx, докато целевият елемент е в горната част на tag stack-а
ActualText и AltText служат за различни цели. AltText (зададен чрез параметъра AltText на BeginTag) е алтернативно представяне на целия елемент, предназначено за помощни технологии, когато визуалното съдържание не може да бъде изобразено. ActualText допълва извличането на текст от content stream-а: той заменя извлечената последователност от знаци на елемента, но не потиска визуализацията. Screen reader-ите, които поддържат и двете, обикновено използват ActualText за изговорен изход, когато е наличен
ISO 32000-1 §14.9.4 определя ActualText като запис на PDF текстов низ в речника на структурния елемент. PDF/UA-1 (ISO 14289-1 §7.1) изисква текстовото съдържание да може да се извлича и да е коректно; ActualText е стандартният механизъм за изпълнение на това изискване при последователности от глифове, чието директно извличане би било двусмислено или неправилно
Пример
// 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;Вижте също
BeginTag, BeginTagEx, SetStructElemID, AddTagAttribute, GetPDFUADiagnostics