SetStructElemHeadersA
標籤式 PDF、無障礙
描述
結尾的 A 表示 ANSI(char)DLL 進入點,ActiveX/COM 介面僅公開 Unicode 形式。其行為與 SetStructElemHeaders 相同,字串引數會依據目前的 SetAnsiMode 字碼頁進行解譯
在標籤堆疊目前開啟的結構元素上設定 /Headers 屬性(Table 屬性擁有者)。此屬性把目前的表格資料或表頭儲存格,與一或多個以其元素 ID 識別的表格表頭儲存格關聯起來,用來描述無法單靠位置推斷的複雜表格結構。請在 BeginTag 或 BeginTagEx 之後、EndTag 之前呼叫。
語法
Delphi
Function DLSetStructElemHeadersA(InstanceID: Integer; Headers: PAnsiChar): Integer;
DLL
int DLSetStructElemHeadersA(int InstanceID, const char * Headers);
參數
| Headers | 以逗號分隔的 TH 儲存格元素 ID 清單,這些 TH 是目前 TD 或 TH 儲存格的欄或列表頭。每個 ID 必須對應同一份文件中先前透過 SetStructElemID 指派給 TH 元素的 ElemID。逗號前後的空白會被忽略。例如 TH-ProductName,TH-Price。 |
|---|
傳回值
成功傳回 1。沒有開啟的文件,或標籤堆疊上沒有開啟中的標籤時傳回 0
備註
此函式等同呼叫 AddTagAttribute,參數 Owner=Table、Name=Headers,Value 為同一份逗號分隔的 ID 清單。屬性會以 PDF 文字字串組成的 /Headers 陣列,寫進結構元素的 /A 屬性字典。
/Headers 屬性定義於 ISO 32000-1 §14.8.5.7.2(Table attribute owner)。欄表頭直接位於資料儲存格上方的簡單表格,透過 SetStructElemScope 設定 /Scope 屬性通常就夠了。含合併儲存格或多層表頭的不規則表格,請使用 /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