SetStructElemHeaders
Tagged PDF, Accessibility
Description
Define o atributo /Headers (proprietário do atributo Table) no elemento de estrutura atualmente aberto na pilha de tags. O atributo associa os dados da tabela atual ou célula de cabeçalho com uma ou mais células de cabeçalho da tabela identificadas por seus IDs de elemento. Isso é usado para descrever estruturas de tabela complexas que não podem ser inferidas apenas pela posição. Chame isso após BeginTag ou BeginTagEx e antes de EndTag
Syntax
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);
Parameters
| Headers | Uma lista separada por vírgulas de IDs de elementos das células TH que são cabeçalhos de coluna ou linha para a célula TD ou TH atual; cada ID deve corresponder a um ElemID atribuído a um elemento TH via SetStructElemID anteriormente no mesmo documento; espaços em branco ao redor das vírgulas são ignorados (exemplo: TH-ProductName,TH-Price) |
|---|
Return value
Retorna 1 em caso de sucesso; retorna 0 se nenhum documento estiver aberto ou nenhuma tag estiver aberta no momento na pilha de tags
Remarks
Esta função é equivalente a chamar AddTagAttribute com Owner=Table, Name=Headers e a mesma lista de IDs separados por vírgula como Value; o atributo é gravado como uma matriz /Headers de strings de texto PDF no dicionário de atributos /A do elemento de estrutura
O atributo /Headers está definido na ISO 32000-1 §14.8.5.7.2 (proprietário do atributo Table). Para tabelas simples onde os cabeçalhos das colunas estão diretamente acima de suas células de dados, o atributo /Scope definido via SetStructElemScope geralmente é suficiente. Use /Headers para tabelas irregulares com células abrangentes ou cabeçalhos multinível
A norma PDF/UA-1 (ISO 14289-1 §7.10) exige que cada célula TD seja explicitamente associada às suas células de cabeçalho em tabelas onde a associação não possa ser determinada apenas pela ordem de leitura
Example
// 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;See also
SetStructElemID, SetStructElemScope, AddTagAttribute, BeginTag, SetPDFUAMode