RepairQDFFile

デバッグ、ドキュメント修復

説明

人による編集でストリーム長またはオブジェクトのバイト位置が変化した QDF PDF を修復します

修復パスは古い相互参照オフセットを信頼せずにオブジェクト境界を走査し、ストリーム長を再計算し、間接長オブジェクトを更新して、フリーリスト、相互参照テーブル、トレーラー、startxref、/Size を再構築します

オブジェクトに曖昧さのない QDF ストリームマーカーがある場合、endstream や endobj の行を含むストリームデータは保持されます。無効な QDF 入力や同一オブジェクトのマーカー重複は出力先を開く前に拒否されるため、インプレース修復の実行中でも既存の出力ファイルはそのまま残ります

構文

Delphi

Function TPDFlib.RepairQDFFile(Const InputFileName, OutputFileName: WideString): Integer;

DLL

int DLRepairQDFFile(int InstanceID, const wchar_t* InputFileName, const wchar_t* OutputFileName);

ActiveX

Function PDFlib::RepairQDFFile(InputFileName As String, OutputFileName As String) As Long

パラメータ

InputFileName編集済み QDF PDF
OutputFileName修復済み PDF のパスです。入力パスと同じでもかまいません

戻り値

1編集済み QDF が修復されました
0入力が修復可能な QDF でないか、出力先へ書き込めませんでした

エラー

LastErrorCode 106 は無効な QDF 構造、107 は修復失敗、305 は出力書き込み失敗を報告する

備考

宛先が置き換えられる前にソース全体を読み取るため、インプレース修復は安全です