THPDFXRefRecoveryInfo レコード
上限付きクロスリファレンス復元の結果。ステータス、方式、走査量、候補数、選択された xref オフセットです
宣言
THPDFXRefRecoveryInfo= record
Status: THPDFXRefRecoveryStatus;
Method: THPDFXRefRecoveryMethod;
BytesScanned: Int64;
CandidateObjectCount: Integer;
RecoveredObjectCount: Integer;
DuplicateObjectCount: Integer;
RejectedCandidateCount: Integer;
XRefCandidateCount: Integer;
SelectedXRefOffset: Int64;
Diagnostic: AnsiString;
end;
ユニット
HPDFDoc
フィールド
| フィールド | 目的 |
|---|---|
Status | 復元の判定。不要、成功、無効、走査/オブジェクト/xref のいずれかの上限に達した、失敗 |
Method | テーブルをどう復元したか。セクションの再配置か、オブジェクトオフセットの完全再構築か |
BytesScanned | 上限付き走査が調べたファイルバイト数 |
CandidateObjectCount | 走査したバイト範囲で見つかったオブジェクト候補の数 |
RecoveredObjectCount | 再構築したクロスリファレンステーブルに受け入れられた候補の数 |
DuplicateObjectCount | すでに復元済みのオブジェクト番号への候補の数 |
RejectedCandidateCount | 使えないとして破棄された候補の数 |
XRefCandidateCount | 走査中に見つかった xref セクション全体の数 |
SelectedXRefOffset | 再構築に選ばれた xref セクションのオフセット。再配置の場合はそのセクションの位置 |
Diagnostic | 復元がどう終わったかを説明するテキスト |
使用上の注意
GetLoadedXRefRecoveryInfoで値を埋めます。StatusがまだxrrsNotNeededの間、つまり通常の spec ファーストのロード経路が成功した間は false を返します- 復元が走るのは、通常のロードが実際のページツリーを生成できなかった後だけです。失敗したときか、復元モードに強制されたときです
- 判断の経緯全体は
GetLoadedParserRecoveryEventsで追えます。これらの集計の背後にある候補の受理、拒否、上限超過がイベントとして記録されます