EndTag

Tagovaný PDF, prístupnosť

Opis

Zatvorí naposledy otvorený štruktúrny prvok na zásobníku tagov, do obsahového prúdu aktuálnej strany zapíše operátor EMC (End Marked Content) a vyberie prvok zo zásobníka. Každé volanie BeginTag, BeginTagEx alebo BeginTagEx2 musí pred uložením dokumentu alebo pridaním ďalšej strany presne jedno volanie EndTag sprevádzať.

Syntax

Delphi

Function TPDFlib.EndTag: Integer;

ActiveX

Function PDFlib::EndTag() As Long

DLL

int DLEndTag(int InstanceID);

Návratové hodnoty

0Zlyhalo — nie je otvorený žiadny dokument, alebo zásobník tagov je prázdny (EndTag bolo zavolané viackrát ako zodpovedajúce funkcie Begin*).
1Štruktúrny prvok sa úspešne zatvoril.

Poznámky

Tagy sa musia vnárať čisto. Každé EndTag zatvára najvnútornejší otvorený štruktúrny prvok; poradie zatvárania je prísne opačné k poradiu otvárania, rovnako ako sa bežné blokové prvky vnára v HTML či XML.

Ak sa dokument uloží s jedným alebo viacerými stále otvorenými štruktúrnymi prvkami, GetPDFUADiagnostics hlási počet pod kódom STRUCT-UNCLOSED. Neuzavreté prvky chýbajú v uloženom strome štruktúry, takže zodpovedajúce sekcie marked-content na každej strane zostávajú bez logického rodiča — asistívne technológie ich preskočia.

Nepoužívajte EndTag na zatvorenie oblasti artefaktu otvorenej cez BeginArtifact; na to zavolajte EndArtifact. Artefakty a štruktúrne prvky žijú na nezávislých zásobníkoch označeného obsahu.

Príklad

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

Pozri tiež

BeginTag, BeginTagEx, BeginTagEx2, EndArtifact, GetPDFUADiagnostics