UNIVERSIDAD ESTATAL A DISTANCIA
DIRECCIÓN DE EXTENSIÓN
ÁREA DE TECNOLOGÍA Y COMUNICACIÓN
JAVA BÁSICO
13. CREACIÓN DE ARCHIVOS PARA PDF
2011
}
2
Contenido
Creación de fuentes................................................................................................................................. 3
Document ............................................................................................................................................... 3
Metadatos ............................................................................................................................................... 4
Agregar contenido ................................................................................................................................... 5
3
Librerías necesarias Para crear archivos tipo Acrobat Reader (pdf ) necesitamos una librería llamada “itext” la cual se
encarga de realizar el formateo correspondiente de un archivo pdf.
El jar correspondiente, se encuentra en el material de éste curso específicamente en la semana
5.
Creación de fuentes La librería “iText” presenta una mayor gama de fuentes que la librería “POI” que usamos en el
capítulo anterior. La creación de las fuentes que podemos utilizar viene dada por los siguientes
parámetros:
Familia de la fuente, tamaño de la fuente, estilo de la fuente, {color de la fuente}
El color de la fuente es un parámetro opcional. Es importante mencionar, que es recomendable
utilizar constantes de la clase “com.itextpdf.text.Font” para establecer los valores de familia y estilo de la
fuente así como constantes de la clase “com.itextpdf.text.BaseColor” para el color. Dado esto, declaremos
cuatro ejemplos de fuente de la siguiente manera:
Document La clase “com.itextpdf.text.Document” es el núcleo principal de la librería “iText” y representa al
archivo pdf que deseamos crear. A pesar de que el archivo pdf haya sido declarado, debemos de
especificar la ruta donde se guardará mediante la clase PdfWriter y luego abrirlo para insertar los datos
en el mismo. Esto lo podemos hacer en el constructor de la clase, por lo que se vería así:
4
En este momento, ya el documento pdf que vamos a crear existe y está abierto para empezar a
meterle información dentro del mismo. Trabajaremos por métodos para facilitar las cosas.
Metadatos ¿Alguna vez han visto quién ha creado un archivo pdf y otros detalles que a la larga nos pueden
interesar en un pdf? La verdad muy pocos. Esta información de un pdf puede ser vista haciendo clic en el
menú archivo y luego en la opción propiedades.
Las propiedades que se muestran en ésta ventana son conocidas como Metadatos de un archivo
pdf y la librería “iText” nos permite agregarlas aunque no sea obligatorio. En la siguiente imagen
veremos la ventana propiedades típica de un documento pdf.
5
Para establecer éstas propiedades podemos usar un método privado que las agregue, para ello
enviamos como parámetro el documento que hemos creado y establecemos estas propiedades. El
método quedaría de la siguiente manera:
Recordemos que vamos a usar métodos, entonces luego de crear cada método debemos
llamarlo desde el constructor para que sea invocado y ejecute su acción. Así el constructor quedaría por
el momento de la siguiente manera.
Agregar contenido Una unidad importante en “iText” es la clase “Paragraph” la cual como su nombre en español lo
dice, es un párrafo al que se le puede colocar tipo de letra, alineación etc. La sintaxis básica para un
párrafo sería:
Paragraph p1 = new Paragraph(“Algún texto”, fuente);
Si deseamos reflejar un párrafo en blanco, simplemente ponemos como texto del párrafo un
espacio en blanco.
Hagamos un método entonces, que genere los párrafos en blanco que deseamos.
6
Ahora veamos cómo podemos agregar contenido real al pdf. Éste método siguiente debe ser
llamado en el constructor después del llamado al método “agregarMetadatos(Document doc)”.
Crearemos un par de párrafos para crear la portada, los agregaremos al documento y finalmente
agregaremos al documento una nueva página para iniciar en ésta dentro del documento.
Creemos otro método solamente con texto para que veamos cómo se escribe en la siguiente
página. Debemos llamar a éste método en el constructor.
7
Finalmente, así como abrimos el documento (en la página 3) debemos cerrar el documento en
el constructor, de tal manera que el constructor nos quedaría de la siguiente manera:
Ahora, solo les queda hacer el main que llame a ésta clase para que ejecuten el programa.