SetStructElemHeaders

Структурований PDF, Доступність

Опис

Задає атрибут /Headers (власник Table) на структурному елементі, відкритому на стеці тегів. Атрибут пов'язує поточну комірку даних чи заголовка таблиці з однією чи кількома комірками заголовків, ідентифікованими їхніми ID елементів. Це використовується для опису складних структур таблиць, які неможливо вивести лише з позиції. Викликайте після BeginTag чи BeginTagEx і до EndTag

Синтаксис

Delphi

Function TPDFlib.SetStructElemHeaders(Const Headers: WideString): Integer;

ActiveX

Function PDFlib::SetStructElemHeaders(Headers As String) As Long

DLL

int DLSetStructElemHeaders(int InstanceID, const wchar_t * Headers);

Параметри

HeadersСписок ID елементів TH-комірок через кому — заголовків стовпців чи рядків для поточної комірки TD чи TH. Кожен ID має збігатися з ElemID, присвоєним TH-елементу через SetStructElemID раніше в тому самому документі. Пробіли навколо ком ігноруються. Приклад: TH-ProductName,TH-Price

Повернуте значення

Повертає 1 в разі успіху. Повертає 0, якщо жоден документ не відкрито або на стеці тегів зараз немає відкритого тега

Примітки

Ця функція еквівалентна виклику AddTagAttribute з Owner=Table, Name=Headers і тим самим списком ID через кому як Value. Атрибут записується як масив /Headers з PDF-текстових рядків у словнику атрибутів /A структурного елемента

Атрибут /Headers визначено в ISO 32000-1 §14.8.5.7.2 (Table attribute owner). Для простих таблиць, де заголовки колонок прямо над клітинками даних, атрибута /Scope, встановленого через SetStructElemScope, зазвичай достатньо. Використовуйте /Headers для нерегулярних таблиць із клітинками, що тягнуться, чи багаторівневими заголовками

PDF/UA-1 (ISO 14289-1 §7.10) вимагає, щоб кожна клітинка TD була явно пов'язана зі своїми заголовковими клітинками в таблицях, де цей зв'язок не можна визначити лише з порядку читання

Приклад

// A data cell that spans two logical columns, referencing both headers
PDFlib.BeginTag('TD', '', '', '');
PDFlib.SetStructElemHeaders('TH-ProductName,TH-Price');
PDFlib.DrawText('Widget A  $9.99', 100, 660);
PDFlib.EndTag;

Див. також

SetStructElemID, SetStructElemScope, AddTagAttribute, BeginTag, SetPDFUAMode