property Producer: WString; // read only
Producer は Info 辞書の /Producer entry を返します(PDF 1.7 仕様 14.3.3 節)。この文字列は PDF バイトを書き出したソフトウェアコンポーネントを特定します。典型的には「Adobe PDF Library 17.0」「Microsoft: Print To PDF」「Skia/PDF m126」「GPL Ghostscript 10.02」「iText 8.0.2」のような PDF 描画 / 変換エンジンです。元となった作成アプリケーション(Word、InDesign など)を表す Creator と比較してください
値はデコード済みの UTF-16 で、Info 辞書がないときや Active が False のときは空になり得ます。/Producer と /Creator は仕様上省略可能ですが、PDF 生成器が自動で書き込むため、実質どの現代 PDF も /Producer を宣言しています
Producer はルーティング判断の強い手がかりです。スキャン後に OCR した PDF は TWAIN スキャナードライバーを名乗り、画面キャプチャ由来の PDF は「Microsoft: Print To PDF」を示し、作成ツールのエクスポートは既知の変換ライブラリ名を挙げます。新しい PDF は XMP メタデータの pdf:Producer にも同じ値を複製することがあります。両者は一致するはずですが、増分更新の重ねで歴史的にずれることがあります
FPDF_SetMetaText が必要ですPdfVersion と組み合わせます
Pdf1.LoadFromFile('invoice.pdf');
if Pos('Ghostscript', Pdf1.Producer) > 0 then
Log.Add('Re-converted by Ghostscript - validate signatures');