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
| 0 | Zlyhalo — 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; // SectPozri tiež
BeginTag, BeginTagEx, BeginTagEx2, EndArtifact, GetPDFUADiagnostics