Cómo ver nombres de campos de formulario en un documento pdf

25

Tengo un documento pdf con muchos campos de formulario. Necesito ver los nombres de los campos del formulario. ¿Puedo hacer esto con Adobe Reader? Tal vez una herramienta de terceros ..?

Billy Coover
fuente

Respuestas:

3

Es probable que encuentre una aplicación fácil de usar para hacer esto por usted, pero así es como lo logro con un pequeño VBScript ...

  1. Descargue e instale ABCpdf desde webSupergoo, disponible aquí ...

  2. Copie el siguiente script en un archivo de texto y guárdelo con una extensión de archivo '.vbs'.

  3. Coloque una copia de su archivo PDF en la misma carpeta que el script, nombrándolo 'myForm.pdf'.

  4. Haga doble clic en el archivo de secuencia de comandos para ejecutar.


Set theDoc = CreateObject("ABCpdf8.Doc")
theDoc.Read "myForm.pdf"
theDoc.AddFont "Helvetica-Bold"
theDoc.FontSize=16
theDoc.Rect.Pin=1

Dim theIDs, theList
theIDs = theDoc.GetInfo(theDoc.Root, "Field IDs")
theList = Split(theIDs, ",")

For Each id In theList
    theDoc.Page = theDoc.GetInfo(id, "Page")
    theDoc.Rect.String = theDoc.GetInfo(id, "Rect")
    theDoc.Color.String = "240 240 255"
    theDoc.FillRect()
    theDoc.Rect.Height = 16
    theDoc.Color.String = "220 0 0"
    theDoc.AddText(theDoc.GetInfo(id, "Name"))
    theDoc.Delete(id)
Next

theDoc.Save "output.pdf"
theDoc.Clear
MsgBox "Finished"

Una vez que finaliza el script, debe encontrar otro documento PDF llamado 'output.pdf' que aparece en la misma carpeta, con todos los nombres de campo superpuestos en la parte superior de los campos.

AffineMesh
fuente
37

Aprecio que esta pregunta sea un poco vieja, pero en caso de que alguien más la encuentre, el PDF Toolkit le permitirá hacer esto de manera muy simple con un comando que se ve así (donde el PDF desde el que desea los campos del formulario se llama docsOfInterest.pdf:

pdftk docOfInterest.pdf dump_data_fields
shearichard
fuente
Si los campos son demasiados, es mejor extraerlo en otro lugar utilizando el argumento de salida. por ejemplo, usando myDataFields como archivo de salida: pdftk docOfInterest.pdf dump_data_fields output myDataFields
Jaider
2

Que yo sepa, no puedes hacerlo con Acrobat Reader. Puede usar su programa de escritura de PDF (actualmente Acrobat XI) para hacerlo, pero es bastante costoso.

Tuve que hacer lo mismo por unos pocos documentos. Acabo de descargar la versión de prueba de deskPDF Studio X . Desde el menú, ir a Formularios> Modificar diseño de formulario le permite ver el nombre de los campos.

Tenga en cuenta que trabajar con su versión de prueba gratuita sellará los documentos con una marca de agua si guarda el documento.

Jemmeh
fuente
1

Hay un artículo técnico en Aspose.com que explica cómo identificar nombres de campos de formulario para archivos PDF. De acuerdo con este artículo, puede lograr esto utilizando el código Java en la página.

//First a input pdf file should be assigne
Form form = new Form("FilledForm.pdf");
//get all field names
String[] allfields = form.getFieldsNames();
// Create an array which will hold the location coordinates of Form fields
Rectangle[] box = new Rectangle[allfields.Length];
for (int i = 0; i < allfields.Length; i++)
{
  // Get the appearance attributes of each field, consequtively
  FormFieldFacade facade = form.getFieldFacade(allfields[i]);
  //Box in FormFieldFacade class holds field's location.
  box[i] = facade.getBox();
}
form.save();

// Now we need to add a textfield just upon the original one
FormEditor editor = new FormEditor("FilledForm.pdf", ”form_updated.pdf");
for (int i = 0; i < allfields.Length; i++)
{
  // add text field beneath every existing form field
  editor.addField(FormEditor.FLDTYP_TXT, "TextField" + i, allfields[i], 1, box[i].getX, box[i].getY(), box[i].getX() + 50, box[i].getY() + 10);
}
//Close the document
editor.save();
Mehper C. Palavuzlar
fuente
1

Aparentemente hay una demostración en vivo en línea de un paquete llamado AspPDF , que le permite hacer exactamente eso. Puede encontrar un enlace directo aquí .

t0mgs
fuente