SetMarkInfo
Document properties, Accessibility
Description
Define o dicionário /MarkInfo do documento no Catalog. Quando Marked é 1, o Catalog ganha uma entrada /MarkInfo << /Marked true /Suspects false >>, declarando o documento como um PDF marcado. Quando Marked é 0, a entrada /MarkInfo é removida
Esta função é chamada automaticamente por SetPDFUAMode e por SetPDFAMode nos níveis de conformidade a (PDF/A-1a, PDF/A-2a, PDF/A-3a); chame-a diretamente apenas quando precisar do status de tagged-PDF sem a configuração completa do PDF/UA-1 ou PDF/A-A
Syntax
Delphi
Function TPDFlib.SetMarkInfo(Marked: Integer): Integer;
ActiveX
Function PDFlib::SetMarkInfo(Marked As Long) As Long
DLL
int DLSetMarkInfo(int InstanceID, int Marked);
Parameters
| Marked | 1 para declarar o documento como marcado (grava /Marked true e /Suspects false); 0 para remover a entrada /MarkInfo |
|---|
Return values
| 1 | A entrada /MarkInfo foi atualizada com sucesso |
|---|
Remarks
A norma ISO 14289-1 (PDF/UA-1) §7.18.6 exige que /Suspects esteja presente e definido como false quando /Marked for true; a biblioteca sempre grava /Suspects false junto com /Marked true, portanto, uma única chamada para SetMarkInfo(1) satisfaz ambos os requisitos
Definir /Marked true é apenas uma declaração declarativa — não preenche, por si só, a árvore de estrutura do documento. Após chamar SetMarkInfo(1), construa a árvore de estrutura com pares BeginTag/EndTag e marque o conteúdo decorativo com BeginArtifact/EndArtifact. Use GetPDFUADiagnostics para identificar lacunas comuns antes de salvar
O estado anterior do /MarkInfo em um documento carregado pode ser consultado com IsTaggedPDF
Example
// 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');See also
IsTaggedPDF, SetPDFUAMode, SetPDFAMode, BeginTag, GetPDFUADiagnostics