BeginMarkedContent
Tagged PDF, Barrierefreiheit
Beschreibung
Öffnet einen markierten Inhaltsbereich im aktuellen Inhaltsstrom, indem ein BDC-Operator (Begin Marked Content with Property List) geschrieben wird. Dies wird typischerweise verwendet, um strukturierte (Tagged) PDFs zu erzeugen und Barrierefreiheitsanforderungen (etwa PDF/UA) zu erfüllenMarkierte Inhaltsbereiche müssen korrekt ausbalanciert sein: Jeder
BeginMarkedContent-Aufruf muss durch einen entsprechenden EndMarkedContent-Aufruf geschlossen werden. Markierte Inhaltsbereiche können verschachtelt sein
Syntax
Delphi
Function TPDFlib.BeginMarkedContent(Const TagType, AltText, ActualText, Lang, Expansion: WideString): Integer;Parameter
| TagType | Der Name des Struktur-Tags, z. B. /Span, /P, /Figure usw. |
|---|---|
| AltText | Alternativer Beschreibungstext für die Barrierefreiheit (wird auf den /Alt-Schlüssel in der Eigenschaftsliste abgebildet). Wenn nicht benötigt, übergeben Sie einen leeren String |
| ActualText | Tatsächlicher Text, der die Glyphendarstellung für Screenreader ersetzt (wird auf den /ActualText-Schlüssel abgebildet). Wenn nicht benötigt, übergeben Sie einen leeren String |
| Lang | Der Sprachcode der natürlichen Sprache für den markierten Inhalt (z. B. en-US, wird auf den /Lang-Schlüssel abgebildet). Wenn nicht benötigt, übergeben Sie einen leeren String |
| Expansion | Der Erweiterungstext für Abkürzungen oder Akronyme (wird auf den /E-Schlüssel abgebildet). Wenn nicht benötigt, übergeben Sie einen leeren String |
Rückgabewerte
| 0 | Kein Dokument geöffnet oder das Schreiben des markierten Inhalts schlug fehl |
|---|---|
| 1 | Markierter Inhaltsbereich erfolgreich geöffnet |
Anmerkungen
Um konforme Tagged-PDF/UA-Dateien zu erzeugen, stellen Sie sicher, dass logische Struktur-Tags sämtlichen sichtbaren Text und Grafiken umschließen. Diese Funktion bietet im Vergleich zu BeginTag eine feingranulare Eigenschaftszuordnung
Beispiel
// Heading, then a paragraph with marked content span
PDF.NewDocument;
PDF.AddPage;
PDF.BeginMarkedContent('/Span', 'Logo description', '', 'en-US', '');
// Draw graphics or print text here
PDF.EndMarkedContent;