SetStructElemHeaders
PDF etiquetado, acessibilidade
Descrição
Define o atributo /Headers (proprietário do atributo Table) no elemento de estrutura atualmente aberto na pilha de etiquetas. O atributo associa a célula atual de dados ou de cabeçalho da tabela a uma ou mais células de cabeçalho identificadas pelos respetivos IDs de elemento. É utilizado para descrever estruturas de tabela complexas que não podem ser inferidas apenas pela posição. Chame esta função depois de BeginTag ou BeginTagEx e antes de EndTag
Sintaxe
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);
Parâmetros
| Headers | Uma lista separada por vírgulas dos IDs de elementos das células TH que são cabeçalhos de coluna ou linha da célula TD ou TH atual. Cada ID tem de corresponder a um ElemID atribuído anteriormente a um elemento TH através de SetStructElemID no mesmo documento. Os espaços em branco à volta das vírgulas são ignorados. Exemplo: TH-ProductName,TH-Price |
|---|
Valor devolvido
Devolve 1 em caso de êxito. Devolve 0 se não houver nenhum documento aberto ou nenhuma etiqueta atualmente aberta na pilha de etiquetas
Observações
Esta função equivale a chamar AddTagAttribute com Owner=Table, Name=Headers e a mesma lista de IDs separados por vírgulas como Value. O atributo é escrito como uma matriz /Headers de cadeias de texto PDF no dicionário de atributos /A do elemento de estrutura
O atributo /Headers é definido na norma ISO 32000-1 §14.8.5.7.2 (proprietário do atributo Table). Para tabelas simples em que os cabeçalhos das colunas se encontram diretamente acima das respetivas células de dados, o atributo /Scope definido através de SetStructElemScope é geralmente suficiente. Utilize /Headers para tabelas irregulares com células expandidas ou cabeçalhos de vários níveis
O PDF/UA-1 (ISO 14289-1 §7.10) exige que cada célula TD seja explicitamente associada às respetivas células de cabeçalho nas tabelas em que a associação não possa ser determinada apenas pela ordem de leitura
Exemplo
// 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;Consulte também
SetStructElemID, SetStructElemScope, AddTagAttribute, BeginTag, SetPDFUAMode