SetMarkInfo
Thuộc tính tài liệu, Khả năng truy cập
Mô tả
Đặt dictionary /MarkInfo của tài liệu trong Catalog. Khi Marked = 1, Catalog nhận một mục /MarkInfo << /Marked true /Suspects false >>, khai báo tài liệu là tagged PDF. Khi Marked = 0, mục /MarkInfo bị gỡ
Hàm này được gọi tự động bởi SetPDFUAMode và bởi SetPDFAMode ở các cấp tuân thủ a (PDF/A-1a, PDF/A-2a, PDF/A-3a). Chỉ gọi trực tiếp khi bạn cần trạng thái tagged-PDF mà không cần trọn bộ thiết lập PDF/UA-1 hay PDF/A-A
Cú pháp
Delphi
Function TPDFlib.SetMarkInfo(Marked: Integer): Integer;
ActiveX
Function PDFlib::SetMarkInfo(Marked As Long) As Long
DLL
int DLSetMarkInfo(int InstanceID, int Marked);
Tham số
| Marked | 1 để khai báo tài liệu có tag (ghi /Marked true và /Suspects false); 0 để gỡ mục /MarkInfo |
|---|
Giá trị trả về
| 1 | Đã cập nhật mục /MarkInfo thành công |
|---|
Ghi chú
ISO 14289-1 (PDF/UA-1) §7.18.6 yêu cầu /Suspects phải có mặt và đặt bằng false khi /Marked là true. Thư viện luôn ghi /Suspects false cùng với /Marked true, nên một lần gọi SetMarkInfo(1) đáp ứng cả hai yêu cầu.
Việc đặt /Marked true chỉ là tuyên bố – nó không tự điền cây cấu trúc của tài liệu. Sau khi gọi SetMarkInfo(1), hãy dựng cây cấu trúc bằng các cặp BeginTag/EndTag và đánh dấu nội dung trang trí bằng BeginArtifact/EndArtifact. Dùng GetPDFUADiagnostics để lộ các thiếu sót phổ biến trước khi lưu.
Trạng thái trước đó của /MarkInfo trên một tài liệu đã nạp truy vấn được bằng IsTaggedPDF
Ví dụ
// 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');Xem thêm
IsTaggedPDF, SetPDFUAMode, SetPDFAMode, BeginTag, GetPDFUADiagnostics