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