IsTaggedPDF

文件屬性、無障礙

描述

檢查 Catalog 的 /MarkInfo /Marked 項目,測試所選文件是否自我宣告為標籤式 PDF。傳回值 1 表示該項目存在且設為 true;其他任何狀態 — 項目不存在、/Marked false 或沒有 /MarkInfo 字典 — 都傳回 0。

語法

Delphi

Function TPDFlib.IsTaggedPDF: Integer;

ActiveX

Function PDFlib::IsTaggedPDF() As Long

DLL

int DLIsTaggedPDF(int InstanceID);

傳回值

0文件未宣告為標籤式 PDF(或沒有開啟的文件)。
1文件已宣告為標籤式 PDF(/MarkInfo /Marked true)。

備註

這只是中繼資料檢查 — 檢查的是 Catalog 宣告,不是實際的結構樹。文件可以在沒有可用結構樹的情況下帶有 /Marked true(例如部分編輯之後),結構樹技術上也可以在沒有 /Marked true 的情況下存在。此函式適合當作快速的中繼資料訊號;要對記憶體中的文件做更深入的符合性判定,請呼叫 GetPDFUADiagnostics,它會檢查結構樹、頁面標籤與必要的屬性。

此旗標由 SetPDFUAMode、SetPDFAMode 選 a 層級模式(1、4、6)時,以及明確呼叫 SetMarkInfo(1) 時自動設定。

範例

// Branch on whether the loaded document already declares tagged PDF
PDF.LoadFromFile('input.pdf', '');
if PDF.IsTaggedPDF = 1 then
  WriteLn('input.pdf is a tagged PDF — content can be re-flowed')
else
begin
  WriteLn('input.pdf is not tagged — adding tag declarations');
  PDF.SetMarkInfo(1);  // mark, then construct a structure tree
end;

另見

SetMarkInfo, SetPDFUAMode, SetPDFAMode, GetPDFUADiagnostics, BeginTag