property Producer: WString; // read only
Producer возвращает запись /Producer из информационного словаря (раздел 14.3.3 спецификации PDF 1.7). Строка называет программный компонент, который записал байты PDF — обычно движок рендеринга / конвертации вроде “Adobe PDF Library 17.0”, “Microsoft: Print To PDF”, “Skia/PDF m126”, “GPL Ghostscript 10.02” или “iText 8.0.2”. Сравните с Creator, которая описывает исходное приложение авторинга (Word, InDesign, …)
Значение декодируется из UTF-16 и может быть пустым, когда информационного словаря нет или Active равно False. И /Producer, и /Creator по спецификации необязательны, но практически каждый современный PDF объявляет /Producer, потому что PDF-генераторы пишут её автоматически
Producer — сильный сигнал для решений о маршрутизации: сканы с последующим OCR обычно рекламируют драйвер TWAIN-сканера, PDF со скриншотов показывают “Microsoft: Print To PDF”, а экспорты инструментов авторинга называют известную библиотеку конвертации. Более новые PDF могут дублировать это значение в XMP-метаданных как pdf:Producer; оба должны совпадать, но исторически расползаются после инкрементальных обновлений
FPDF_SetMetaTextPdfVersion для форензики кривых или подозрительных PDF с рассинхронизированными producer / версиями спецификации
Pdf1.LoadFromFile('invoice.pdf');
if Pos('Ghostscript', Pdf1.Producer) > 0 then
Log.Add('Re-converted by Ghostscript - validate signatures');