EndArtifact
Tagged PDF, Dostępność
Opis
Zamyka ostatnio otwarty obszar artefaktu, zapisując operator EMC (End Marked Content) w strumieniu zawartości bieżącej strony. Każde wywołanie BeginArtifact musi odpowiadać dokładnie jednemu wywołaniu EndArtifact
Składnia
Delphi
Function TPDFlib.EndArtifact: Integer;
ActiveX
Function PDFlib::EndArtifact() As Long
DLL
int DLEndArtifact(int InstanceID);
Wartości zwracane
| 0 | Niepowodzenie — żaden dokument nie jest otwarty albo żaden obszar artefaktu nie jest obecnie otwarty |
|---|---|
| 1 | Obszar artefaktu został pomyślnie zamknięty |
Uwagi
Obszary artefaktów i elementy struktury współdzielą ten sam stos zawartości oznaczonej dla bieżącej strony. EndArtifact zamyka najwyższy otwarty obszar tylko wtedy, gdy został otwarty przez BeginArtifact; nigdy nie używaj go do zamykania elementu struktury otwartego przez BeginTag lub jego warianty — do tego wywołaj EndTag
Obszary artefaktów mogą być zagnieżdżane w elementach struktury, gdy artefakt przedstawia dekoracyjną grafikę wizualnie związaną z zawartością strukturalną. Nie mogą jednak zawierać elementów struktury: czytniki PDF ostrzegą o strukturze wewnątrz artefaktu lub odmówią jej uwzględnienia
Typowe podtypy artefaktów uzasadniające oddzielny obszar to nagłówki i stopki stron, numery stron, ozdobne obramowania, znaki wodne i obrazy tła. Oznaczenie ich jako artefaktów wyklucza je z kolejności odczytu przedstawianej użytkownikowi przez technologie wspomagające
Przykład
// 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;