SetStructElemScope

Tagged PDF, Accessibility

Description

在标记栈上当前打开 the 结构元素上设置 /Scope 属性(表格属性所有者);范围标识 TH(表头)单元格是适用于列、行还是同时适用于两者 — PDF/UA-1 要求具有表头单元格的表格必须设置此属性;等效于以 Owner=TableName=Scope 并将范围名称作为值调用 AddTagAttribute

Syntax

Delphi

Function TPDFlib.SetStructElemScope(Const Scope: WideString): Integer;

ActiveX

Function PDFlib::SetStructElemScope(Scope As String) As Long

DLL

int DLSetStructElemScope(int InstanceID, const wchar_t * Scope);

Parameters

Scope表头单元格的范围,必须是以下值之一(区分大小写):

Column — 表头适用于列中的所有单元格
Row — 表头适用于行中的所有单元格
Both — 表头同时适用于列和行

Return value

成功时返回 1;如果未打开任何文档或标记栈上当前未打开任何标记,则返回 0

Remarks

BeginTag(标记类型为 TH)之后且在 EndTag 之前调用此函数;/Scope 属性在 ISO 32000-1 §14.8.5.7.2(表属性所有者)中定义

PDF/UA-1 (ISO 14289-1 §7.10) 要求表格表头单元格与它们的数据单元格明确关联;当表格布局允许时,提供 /Scope 属性是推荐的机制

Example

// Tag a column header cell
PDFlib.BeginTag('TH', 'Product Name', '', '');
PDFlib.SetStructElemScope('Column');
PDFlib.DrawText('Product Name', 100, 700);
PDFlib.EndTag;

// Tag a row header cell
PDFlib.BeginTag('TH', 'Row 1', '', '');
PDFlib.SetStructElemScope('Row');
PDFlib.DrawText('Row 1', 72, 680);
PDFlib.EndTag;

See also

AddTagAttribute, SetStructElemBBox, BeginTag, EndTag, SetPDFUAMode