wicked rails español ruby pdf pdftk

rails - Rellene el formulario PDF con Ruby



ruby on rails pdf español (3)

Estoy tratando de completar programáticamente un pdf usando Ruby. El pdf tiene campos que permiten ingresar texto:

He tenido éxito en el pasado al usar pdftk través de la gema pdf_form , sin embargo, no encuentra los campos en este pdf en particular:

$ pry [1] pry(main)> require ''pdf_forms'' => true [2] pry(main)> pdftk = PdfForms.new(''/usr/local/bin/pdftk'') => #<PdfForms::PdftkWrapper:0x007fece7af6d98 @options={}, @pdftk="/usr/local/bin/pdftk"> [3] pry(main)> pdftk.get_field_names(''designation.pdf'') => []

¿Cómo puedo completar el pdf usando ruby?



pdf-form gem solo funcionará para los pdf generados por Adobe Acrobat . Por favor, sigue este problema

Asegúrese de que en su PDF haya creado un campo de texto mediante adobe acrobat


PdfTk no es más que una poderosa versión anterior de iText compilada utilizando GCJ. Es posible completar formularios utilizando PdfTk siempre que el formulario contenga campos definidos mediante la tecnología AcroForm. Este no es el caso para el formulario al que se refiere. Abrí el formulario en iText RUPS y esto es lo que veo cuando miro dentro de la pestaña Formulario:

¿Ves la matriz /Fields ? Está vacío: [] . Esto significa que no hay nada que completar con PdfTk. Entonces, ¿dónde está la forma?

El formulario se describe utilizando la arquitectura XML Forms (XFA). No hay muchos productos de software que puedan completar un formulario de XFA. Diablos, no hay muchos visores de PDF que le permitan ver el formulario. Por ejemplo, esto es lo que veo cuando abro el formulario en mi navegador:

Conozco dos líneas de productos que pueden satisfacer sus necesidades:

  1. Software de Adobe: por ejemplo, Adobe LiveCycle ES.
  2. Software iText: puede completar el formulario con la versión AGPL de iText mediante la inyección de XML (consulte ¿Cómo puedo configurar los datos XFA en un formato XFA estático en iTextSharp y hacer que se guarde? ); puede aplanar el formulario con el Trabajador XFA de iText (consulte ¿Cómo puedo aplanar un Formulario PDF de XFA con iTextSharp? ).

Siendo el CEO de iText Group, recomendaría usar iText (ya estás usando una versión anterior si estás usando PdfTk). iText está disponible como una biblioteca de Java, por lo que utilizar JRuby es su mejor oportunidad de cumplir con sus requisitos.

Otra opción sería rediseñar por completo el formulario en un formulario basado en la tecnología AcroForm en lugar de la tecnología XFA.