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ố

Marked1 để 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