SetMarkInfo
Właściwości dokumentu, Dostępność
Opis
Ustawia słownik /MarkInfo dokumentu w katalogu. Gdy Marked ma wartość 1, katalog otrzymuje wpis /MarkInfo << /Marked true /Suspects false >>, deklarujący dokument jako tagowany PDF. Gdy Marked ma wartość 0, wpis /MarkInfo jest usuwany
Ta funkcja jest wywoływana automatycznie przez SetPDFUAMode oraz SetPDFAMode na poziomach zgodności a (PDF/A-1a, PDF/A-2a, PDF/A-3a). Wywołuj ją bezpośrednio tylko wtedy, gdy potrzebujesz stanu tagowanego PDF bez pełnej konfiguracji PDF/UA-1 lub PDF/A-A
Składnia
Delphi
Function TPDFlib.SetMarkInfo(Marked: Integer): Integer;
ActiveX
Function PDFlib::SetMarkInfo(Marked As Long) As Long
DLL
int DLSetMarkInfo(int InstanceID, int Marked);
Parametry
| Marked | 1 deklaruje dokument jako tagowany (zapisuje /Marked true i /Suspects false); 0 usuwa wpis /MarkInfo |
|---|
Wartości zwracane
| 1 | Wpis /MarkInfo został pomyślnie zaktualizowany |
|---|
Uwagi
ISO 14289-1 (PDF/UA-1) §7.18.6 wymaga obecności /Suspects z wartością false, gdy /Marked ma wartość true. Biblioteka zawsze zapisuje /Suspects false razem z /Marked true, dlatego pojedyncze wywołanie SetMarkInfo(1) spełnia oba wymagania
Ustawienie /Marked true jest tylko deklaracją — samo nie wypełnia drzewa struktury dokumentu's. Po wywołaniu SetMarkInfo(1) zbuduj drzewo struktury za pomocą par BeginTag/EndTag i oznacz treści dekoracyjne parami BeginArtifact/EndArtifact. Użyj GetPDFUADiagnostics, aby przed zapisem wykryć typowe braki
Poprzedni stan /MarkInfo w załadowanym dokumencie można sprawdzić za pomocą IsTaggedPDF
Przykład
// Convert a non-tagged loaded document into a tagged one, then add structure
PDF.LoadFromFile('source.pdf', '');
if PDF.IsTaggedPDF = 0 then
begin
PDF.SetMarkInfo(1);
// Re-open page 1 for editing
PDF.SelectPage(1);
PDF.BeginPageUpdate;
PDF.BeginTag('H1', '', '');
PDF.PrintText(50, 750, 'Document Title');
PDF.EndTag;
PDF.EndPageUpdate;
end;
PDF.SaveToFile('tagged.pdf');Zobacz również
IsTaggedPDF, SetPDFUAMode, SetPDFAMode, BeginTag, GetPDFUADiagnostics