EndTag

標籤式 PDF、無障礙

描述

關閉標籤堆疊上最近開啟的結構元素,在目前頁面的內容串流寫入 EMC(End Marked Content)運算子,並把元素從堆疊彈出。BeginTag、BeginTagEx 或 BeginTagEx2 的每次呼叫,都必須在文件儲存或加入下一頁之前,恰好配對一次 EndTag。

語法

Delphi

Function TPDFlib.EndTag: Integer;

ActiveX

Function PDFlib::EndTag() As Long

DLL

int DLEndTag(int InstanceID);

傳回值

0失敗 — 未開啟文件,或標籤堆疊為空(呼叫 EndTag 的次數多於對應的 Begin* 函式)
1結構元素關閉成功。

備註

標籤必須乾淨地巢狀。每次 EndTag 關閉最內層開啟中的結構元素;關閉順序嚴格等於開啟順序的反向,就跟 HTML 或 XML 中一般區塊元素的巢狀一樣。

文件以一個以上仍開啟的結構元素儲存時,GetPDFUADiagnostics 會以 STRUCT-UNCLOSED 代碼回報數量。未關閉的元素不會出現在儲存的結構樹,每頁對應的標記內容區段因此沒有邏輯父元素 — 輔助技術會跳過它們。

不要用 EndTag 關閉以 BeginArtifact 開啟的 artifact 區域,請改呼叫 EndArtifact。artifact 與結構元素各自位於獨立的 marked-content 堆疊。

範例

// Nested structure: a section with a heading and two paragraphs
PDF.BeginTag('Sect', '', '');
  PDF.BeginTag('H1', '', '');
    PDF.PrintText(50, 750, 'Introduction');
  PDF.EndTag;   // H1
  PDF.BeginTag('P', '', '');
    PDF.PrintText(50, 720, 'First paragraph of the introduction.');
  PDF.EndTag;   // P
  PDF.BeginTag('P', '', '');
    PDF.PrintText(50, 690, 'Second paragraph follows in the same section.');
  PDF.EndTag;   // P
PDF.EndTag;     // Sect

另見

BeginTag, BeginTagEx, BeginTagEx2, EndArtifact, GetPDFUADiagnostics