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. Незакрытых элементов нет в сохранённом дереве структуры, поэтому соответствующие секции marked-content на каждой странице остаются без логического родителя — ассистивные технологии их пропустят.

Не используйте 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