EndTag

タグ付き PDF、アクセシビリティ

説明

タグスタックで最後に開いた構造要素を閉じ、現在のページのコンテンツストリームに EMC(End Marked Content)演算子を書き込み、スタックから要素を取り出します。BeginTag、BeginTagEx、BeginTagEx2 の呼び出しは、ドキュメントの保存または次ページ追加の前に、必ず 1 回の EndTag 呼び出しと正確に対応させる必要があります

構文

Delphi

Function TPDFlib.EndTag: Integer;

ActiveX

Function PDFlib::EndTag() As Long

DLL

int DLEndTag(int InstanceID);

戻り値

0失敗 — 開いているドキュメントがないか、タグスタックが空です(EndTag が対応する Begin* 関数より多く呼び出されました)
1構造要素が正常に閉じられた

備考

タグは正しくネストする必要があります。各 EndTag は最も内側の開いている構造要素を閉じます。終了順序は開始順序の厳密な逆で、HTML や XML の通常のブロック要素と同じようにネストします

1 つ以上の構造要素を開いたまま文書を保存すると、GetPDFUADiagnostics は STRUCT-UNCLOSED コードで件数を報告します。未クローズ要素は保存済み構造ツリーに含まれないため、各ページの対応するマーク付きコンテンツ区間には論理的な親がなく、支援技術はそれらをスキップします

使用しないでください。EndTag で BeginArtifact により開いたアーティファクト領域を閉じず、代わりに EndArtifact を呼び出します。アーティファクトと構造要素は独立したマーク付きコンテンツスタックに存在します

例

// 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