EndArtifact

Структурований PDF, Доступність

Опис

Замикає останній відкритий регіон артефакта, записуючи оператор EMC (End Marked Content) у потік вмісту поточної сторінки. Кожен виклик BeginArtifact має бути спарений рівно з одним викликом EndArtifact

Синтаксис

Delphi

Function TPDFlib.EndArtifact: Integer;

ActiveX

Function PDFlib::EndArtifact() As Long

DLL

int DLEndArtifact(int InstanceID);

Повернуті значення

0Невдача — не відкрито жодного документа чи зараз не відкрито жодного регіону артефакта
1Ділянку артефакту успішно закрито

Примітки

Регіони артефактів і елементи структури спільно використовують той самий стек marked-content для поточної сторінки. EndArtifact закриває лише найверхніший відкритий регіон, якщо його відкрито BeginArtifact; ніколи не використовуйте його для закриття елемента структури, відкритого BeginTag чи його варіантами — для них викликайте EndTag

Ділянки артефактів можна вкладати всередину структурних елементів, коли артефакт репрезентує декоративну графіку, яка візуально належить структурному вмісту. Але вони не можуть містити структурні елементи: PDF-читачі попереджатимуть чи відмовляться розпізнавати структуру всередині артефакту

Типові subtype артефактів, які виправдовують окрему ділянку: колонтитули, номери сторінок, декоративні рамки, водяні знаки та фонові зображення. Позначення їх як артефактів тримає їх поза порядком читання, який асистивні технології подають користувачеві

Приклад

// Running footer drawn once per page, as an artifact
PDF.BeginArtifact('Footer');
PDF.SetFontSize(8);
PDF.PrintText(50, 30, 'Annual Report 2026 — page ' + IntToStr(pageNo));
PDF.EndArtifact;

// Page header with the company logo, also an artifact
PDF.BeginArtifact('Header');
PDF.DrawImage(50, 800, 60, 30, logoHandle);
PDF.EndArtifact;

Див. також

BeginArtifact, BeginTag, EndTag, SetPDFUAMode