property Producer: WString;// solo lectura
Producer devuelve la entrada /Producer del diccionario Info (especificación PDF 1.7, sección 14.3.3). La cadena identifica el componente de software que escribió los bytes PDF — normalmente un motor de renderizado / conversión PDF como “Adobe PDF Library 17.0”, “Microsoft: Print To PDF”, “Skia/PDF m126”, “GPL Ghostscript 10.02” o “iText 8.0.2”. Compárelo con Creator, que describe la aplicación de creación de origen (Word, InDesign, …)
El valor está decodificado en UTF-16 y puede estar vacío cuando falta el diccionario Info o cuando Active es False. Tanto /Producer como /Creator son opcionales en la especificación, pero prácticamente todo PDF moderno declara /Producer porque los generadores de PDF lo escriben automáticamente
Producer es una señal fuerte para decisiones de enrutamiento: los PDF escaneados y luego OCR normalmente anuncian un controlador de escáner TWAIN, los PDF capturados de pantalla muestran “Microsoft: Print To PDF”, mientras que las exportaciones de herramientas de creación nombran una biblioteca de conversión conocida. Los PDF más nuevos también pueden reflejar este valor en los metadatos XMP como pdf:Producer; ambos deberían coincidir pero históricamente se separan tras actualizaciones incrementales
FPDF_SetMetaTextPdfVersion para la identificación forense de PDF malformados o sospechosos que reportan versiones de productor / especificación no coincidentes
Pdf1.LoadFromFile('invoice.pdf');
if Pos('Ghostscript', Pdf1.Producer) > 0 then
Log.Add('Re-converted by Ghostscript - validate signatures');