class procedure SetDeterministicTime(FixedEpoch: Int64);
| FixedEpoch | Int64. Time PDFium should report, as seconds since the Unix epoch. |
PDFium は作成日時や変更日時、その他の時間由来の値を書くときにシステムクロックを読みます。同じコードの 2 回の実行はしたがって 2 つの異なるファイルを生み、テストや再現可能ビルドでのバイト比較を壊します
時計を固定すると出力は入力のみに依存します。これはクラスメソッドなので、プロセス内のすべての TPdf インスタンスに適用され、RestoreActualTime が呼ばれるまで有効です
読み込まれた PDFium モジュールが時間フックをエクスポートする場合のみ有効です。それがないモジュールでは呼び出しは受理されますが、時計は上書きされません
TPdf.SetDeterministicTime(1700000000);
try
Pdf.SaveAs('reproducible.pdf');
finally
TPdf.RestoreActualTime;
end;