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 | Списък, разделен със запетаи, с идентификатори на елементи на клетките TH, които са заглавки на колони или редове за текущата клетка TD или TH Всеки идентификатор трябва да съответства на 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). За прости таблици, при които заглавията на колоните са директно над клетките с данни, обикновено е достатъчен атрибутът /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