THPDFUA2RepairOptions Record
PDF/UA-2 結構樹修復的逐項開關、後備內容與工作量限制
宣告
THPDFUA2RepairOptions= record
NormalizeDuplicateNamespaces: boolean;
RegisterReferencedNamespaces: boolean;
RepairStandardStructureNamespaces: boolean;
RepairAttributeNamespaces: boolean;
RepairAttributeRevisions: boolean;
RepairListSemantics: boolean;
RepairTableSemantics: boolean;
RepairRubyWarichuSequences: boolean;
RepairPronunciationHints: boolean;
RepairMissingAlternateText: boolean;
RepairLanguageInheritance: boolean;
RepairHeadingOrder: boolean;
RepairArtifactTagging: boolean;
AllowDocumentFragmentHeadingStarts: boolean;
RollbackOnValidationFailure: boolean;
CustomAttributeNamespaceURI: AnsiString;
DefaultLanguage: AnsiString;
FallbackAlternateText: AnsiString;
MaxGeneratedAlternateTextCharacters: Integer;
MaxObjects: Integer;
MaxRepairs: Integer;
class function Default: THPDFUA2RepairOptions; static;
end;
單元
HPDFDoc
欄位
| 欄位 | 用途 |
|---|---|
NormalizeDuplicateNamespaces | 合併結構樹 namespace 中重複的項目 |
RegisterReferencedNamespaces | 為結構元素參照的每個 NS 值補一筆 Namespace 字典項 |
RepairStandardStructureNamespaces | 修復指向 PDF 2.0 標準結構 namespace 的錯誤參照 |
RepairAttributeNamespaces | 修復結構屬性物件的 namespace 接線 |
RepairAttributeRevisions | 正規化屬性物件與帶修訂元素的 Revision 值 |
RepairListSemantics | 為損壞的清單重建 List、ListNumber 與 ListLabel 結構 |
RepairTableSemantics | 以正確的 scope 與 span 重建 Table、TR、TH 與 TD 階層 |
RepairRubyWarichuSequences | 把 Ruby 與 Warichu 子序列恢復成要求的順序 |
RepairPronunciationHints | 修復結構元素上的音素發音提示 |
RepairMissingAlternateText | 為圖片與其他需要的元素生成 /Alt |
RepairLanguageInheritance | 沿結構階層往下補滿缺失的 /Lang 項 |
RepairHeadingOrder | 重新指派標題層級,讓 H1-H6 不跳級地遞降 |
RepairArtifactTagging | 為構件內容補上標記,使其排除在結構樹之外 |
AllowDocumentFragmentHeadingStarts | 允許結構樹從 H1 以下開始的文件,文件片段就是如此 |
RollbackOnValidationFailure | 修復後驗證仍失敗時,復原所有已套用的修復 |
CustomAttributeNamespaceURI | 改寫自訂屬性 namespace 時使用的選填 URI;預設為空 |
DefaultLanguage | 語言繼承修復套用的語言標籤;留空則略過改寫 |
FallbackAlternateText | 推導不出更好的 /Alt 時使用的文字;留空則該元素維持未解決 |
MaxGeneratedAlternateTextCharacters | 單一 /Alt 值生成字元數的上限;預設 4096 |
MaxObjects | 檢查物件數的上限;預設 1000000 |
MaxRepairs | 單次執行套用修復數的上限;預設 100000 |
使用說明
- 從
THPDFUA2RepairOptions.Default出發,它啟用所有修復開關加上回復,再關掉不想被動到的類別 - 修復上限避免在受損文件上無止盡執行;報告的
LimitExceeded旗標會告訴你何時撞到上限 - 啟用
RollbackOnValidationFailure時,修復後驗證失敗會讓文件回到與先前逐位元組一致的狀態