PDFBox - Propiedades del documento

Como otros archivos, un documento PDF también tiene propiedades de documento. Estas propiedades son pares clave-valor. Cada propiedad proporciona información particular sobre el documento.

A continuación se muestran las propiedades de un documento PDF:

S.No. Descripción de propiedad
1

File

Esta propiedad contiene el nombre del archivo.

2

Title

Con esta propiedad, puede establecer el título del documento.

3

Author

Con esta propiedad, puede establecer el nombre del autor del documento.

4

Subject

Con esta propiedad, puede especificar el asunto del documento PDF.

5

Keywords

Con esta propiedad, puede enumerar las palabras clave con las que podemos buscar el documento.

6

Created

Con esta propiedad, puede establecer la fecha de creación del documento.

7

Modified

Con esta propiedad, puede establecer la fecha de modificación del documento.

8

Application

Con esta propiedad, puede configurar la Aplicación del documento.

A continuación se muestra una captura de pantalla de la tabla de propiedades del documento de un documento PDF.

Configuración de las propiedades del documento

PDFBox le proporciona una clase llamada PDDocumentInformation. Esta clase tiene un conjunto de métodos setter y getter.

Los métodos de establecimiento de esta clase se utilizan para establecer valores en varias propiedades de un documento y los métodos de obtención que se utilizan para recuperar estos valores.

A continuación se muestran los métodos de establecimiento del PDDocumentInformation clase.

S.No. Método y descripción
1

setAuthor(String author)

Este método se utiliza para establecer el valor de la propiedad del documento PDF denominado Author.

2

setTitle(String title)

Este método se utiliza para establecer el valor de la propiedad del documento PDF denominado Title.

3

setCreator(String creator)

Este método se utiliza para establecer el valor de la propiedad del documento PDF denominado Creator.

4

setSubject(String subject)

Este método se utiliza para establecer el valor de la propiedad del documento PDF denominado Subject.

5

setCreationDate(Calendar date)

Este método se utiliza para establecer el valor de la propiedad del documento PDF denominado CreationDate.

6

setModificationDate(Calendar date)

Este método se utiliza para establecer el valor de la propiedad del documento PDF denominado ModificationDate.

7

setKeywords(String keywords list)

Este método se utiliza para establecer el valor de la propiedad del documento PDF denominado Keywords.

Ejemplo

PDFBox proporciona una clase llamada PDDocumentInformationy esta clase proporciona varios métodos. Estos métodos pueden establecer varias propiedades del documento y recuperarlas.

Este ejemplo demuestra cómo agregar propiedades como Author, Title, Date, and Subjecta un documento PDF. Aquí, crearemos un documento PDF llamadodoc_attributes.pdf, agregue varios atributos y guárdelo en la ruta C:/PdfBox_Examples/. Guarde este código en un archivo con nombreAddingAttributes.java.

import java.io.IOException; 
import java.util.Calendar; 
import java.util.GregorianCalendar;
  
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDDocumentInformation;
import org.apache.pdfbox.pdmodel.PDPage;

public class AddingDocumentAttributes {
   public static void main(String args[]) throws IOException {

      //Creating PDF document object
      PDDocument document = new PDDocument();

      //Creating a blank page
      PDPage blankPage = new PDPage();
       
      //Adding the blank page to the document
      document.addPage( blankPage );

      //Creating the PDDocumentInformation object 
      PDDocumentInformation pdd = document.getDocumentInformation();

      //Setting the author of the document
      pdd.setAuthor("Tutorialspoint");
       
      // Setting the title of the document
      pdd.setTitle("Sample document"); 
       
      //Setting the creator of the document 
      pdd.setCreator("PDF Examples"); 
       
      //Setting the subject of the document 
      pdd.setSubject("Example document"); 
       
      //Setting the created date of the document 
      Calendar date = new GregorianCalendar();
      date.set(2015, 11, 5); 
      pdd.setCreationDate(date);
      //Setting the modified date of the document 
      date.set(2016, 6, 5); 
      pdd.setModificationDate(date); 
       
      //Setting keywords for the document 
      pdd.setKeywords("sample, first example, my pdf"); 
 
      //Saving the document 
      document.save("C:/PdfBox_Examples/doc_attributes.pdf");

      System.out.println("Properties added successfully ");
       
      //Closing the document
      document.close();

   }
}

Compile y ejecute el archivo Java guardado desde el símbolo del sistema utilizando los siguientes comandos.

javac AddingAttributes.java 
java AddingAttributes

Tras la ejecución, el programa anterior agrega todos los atributos especificados al documento que muestra el siguiente mensaje.

Properties added successfully

Ahora, si visita la ruta dada, puede encontrar el PDF creado en ella. Haga clic derecho en el documento y seleccione la opción de propiedades del documento como se muestra a continuación.

Esto le dará la ventana de propiedades del documento y aquí puede observar que todas las propiedades del documento se establecieron en valores especificados.

Recuperar las propiedades del documento

Puede recuperar las propiedades de un documento utilizando el getter métodos proporcionados por el PDDocumentInformation clase.

A continuación se muestran los métodos getter del PDDocumentInformation clase.

S.No. Método y descripción
1

getAuthor()

Este método se utiliza para recuperar el valor de la propiedad del documento PDF denominado Author.

2

getTitle()

Este método se utiliza para recuperar el valor de la propiedad del documento PDF denominado Title.

3

getCreator()

Este método se utiliza para recuperar el valor de la propiedad del documento PDF denominado Creator.

4

getSubject()

Este método se utiliza para recuperar el valor de la propiedad del documento PDF denominado Subject.

5

getCreationDate()

Este método se utiliza para recuperar el valor de la propiedad del documento PDF denominado CreationDate.

6

getModificationDate()

Este método se utiliza para recuperar el valor de la propiedad del documento PDF denominado ModificationDate.

7

getKeywords()

Este método se utiliza para recuperar el valor de la propiedad del documento PDF denominado Keywords.

Ejemplo

Este ejemplo demuestra cómo recuperar las propiedades de un documento PDF existente. Aquí, crearemos un programa Java y cargaremos el documento PDF llamadodoc_attributes.pdf, que se guarda en el camino C:/PdfBox_Examples/y recuperar sus propiedades. Guarde este código en un archivo con nombreRetrivingDocumentAttributes.java.

import java.io.File; 
import java.io.IOException;

import org.apache.pdfbox.pdmodel.PDDocument; 
import org.apache.pdfbox.pdmodel.PDDocumentInformation;

public class RetrivingDocumentAttributes {
   public static void main(String args[]) throws IOException {
      
      //Loading an existing document 
      File file = new File("C:/PdfBox_Examples/doc_attributes.pdf")
      PDDocument document = PDDocument.load(file);
      //Getting the PDDocumentInformation object
      PDDocumentInformation pdd = document.getDocumentInformation();

      //Retrieving the info of a PDF document
      System.out.println("Author of the document is :"+ pdd.getAuthor());
      System.out.println("Title of the document is :"+ pdd.getTitle());
      System.out.println("Subject of the document is :"+ pdd.getSubject());

      System.out.println("Creator of the document is :"+ pdd.getCreator());
      System.out.println("Creation date of the document is :"+ pdd.getCreationDate());
      System.out.println("Modification date of the document is :"+ 
         pdd.getModificationDate()); 
      System.out.println("Keywords of the document are :"+ pdd.getKeywords()); 
       
      //Closing the document 
      document.close();        
   }  
}

Compile y ejecute el archivo Java guardado desde el símbolo del sistema utilizando los siguientes comandos.

javac RetrivingDocumentAttributes.java 
java RetrivingDocumentAttributes

Tras la ejecución, el programa anterior recupera todos los atributos del documento y los muestra como se muestra a continuación.

Author of the document is :Tutorialspoint 
Title of the document is :Sample document 
Subject of the document is :Example document 
Creator of the document is :PDF Examples 
Creation date of the document is :11/5/2015
Modification date of the document is :6/5/2016
Keywords of the document are :sample, first example, my pdf