creacion de pdf con java ó desde java

Technology

creacion de pdf con java ó desde java

como puedo crear un pdf con java, crear un pdf desde java, como convertir un documento de java a pdf, tutorial paso a paso de creacion de un documento pdf con java

bueno les guiare paso a paso para la creacion de un documento pdf con java y a lo ultimo un video tutorial , primeros vamos a netbeans y crearemos un proyecto nuevo este lo llamaremos pdfenjava.



le damos terminar luego crearemos una nueva clase llamada llamaalpdf asi:



dentro de esta clase ponemos el siguiente codigo:

package pdfenjava;
//by andres2288 javayotros.blogspot.com

import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter;





//archivos
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.util.logging.Level;
import java.util.logging.Logger;
//librerias ajenas a itext
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
import javax.swing.filechooser.FileNameExtensionFilter;
//import javax.swing.text.Document;
import sun.applet.Main;
/**
* @web http://jc-mouse.blogspot.com/
* @author Mouse
*/
public class llamaalpdf {

private File ruta_destino=null;

public llamaalpdf(){
}

/* metodo que hace uso de la clase itext para manipular archivos PDF*/
public void crear_PDF(String t, String a, String s, String k, String c){
//abre ventana de dialogo "guardar"
Colocar_Destino();
//si destino es diferente de null
if(this.ruta_destino!=null){
try {
// se crea instancia del documento
Document mipdf = new Document() {};
// se establece una instancia a un documento pdf
PdfWriter.getInstance(mipdf, new FileOutputStream(this.ruta_destino + ".pdf"));
mipdf.open();// se abre el documento
mipdf.addTitle(t); // se añade el titulo
mipdf.addAuthor(a); // se añade el autor del documento
mipdf.addSubject(s); //se añade el asunto del documento
mipdf.addKeywords(k); //Se agregan palabras claves
mipdf.add(new Paragraph(c)); // se añade el contendio del PDF
mipdf.close(); //se cierra el PDF&
JOptionPane.showMessageDialog(null,"Documento PDF creado");
} catch (DocumentException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
} catch (FileNotFoundException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
/* abre la ventana de dialogo GUARDAR*/
public void Colocar_Destino(){
FileNameExtensionFilter filter = new FileNameExtensionFilter("Archivo PDF","pdf","PDF");
JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileFilter(filter);
int result = fileChooser.showSaveDialog(null);
if ( result == JFileChooser.APPROVE_OPTION ){
this.ruta_destino = fileChooser.getSelectedFile().getAbsoluteFile();
}
}
}


saldran algunos errores tranquilos , ahora solucionaremos estos errores vamos a descargar lo siguiente


ITEXT

al descargarlo lo ponemos dentro de una carpeta en mis documentos el nombre a esa carpeta lo puse mi lib



lo extraen ay un archivo llamado itextpdf-5.2.0 acuerdesen de este archivo ahora nos vamos a netbeans y agregamos un .jar dandole click derecho a bibliotecas en el proyecto como la siguiente imagen:



nos vamos a la ruta donde guardamos el archivo descargado osea mis documentos--> milib y escojemos el .jar que les dije que recordaran como la siguiente imagen :




y le dan abrir, automaticamente se les arreglara los errores, si no se les arregla entonces guarden y cierre netbeans , y abralon otra ves (que memoria ram tan lenta de su pc jajaj no mentiras) .

ya con los errores resueltos , damos click derecho y nuevo Formulario JFrame



lo llamaremos visualpdf:



en esta interfaz crean 5 botones ó 4 etiquetas y un boton, 4 campos de texto y un area de texto donde va ir el contenido del pdf

como la siguiente imagen:




y los nombres de las variables asi como la siguiente imagen




luego damos click derecho al boton crear pdf --> eventos-->Action-->actionperfomed y dentro de esta accion ponemos el siguiente codigo:

      
// TODO add your handling code here:
llamaalpdf pdf=new llamaalpdf();
// pdf.crear_PDF(TITULO., null, null, null, null);
pdf.crear_PDF(TITULO.getText(), AUTOR.getText(), ASUNTO.getText(), CLAVE.getText(), TEXTO.getText());



donde el TITULO.gettext() es el primer nombre de la variable del campo de texto, asi es con todos los campos hasta elarea de texto.

ahora ejecutenlo rellenen los campos y le dan crear pdf y se les abrira jfilechooser para escojer la ruta donde guardaran el documento le ponen un nombre al documento y este se guarda y listo eso es todo

la salidad del programa seria como la siguiente imagen:

Post a Comment

6 Comments

  1. Hola! Disculpa tengo una duda me dice que hay un error en Main especificamente en los dos catch, podrías asesorarme un poco? muchas gracias por compartir tu conocimiento !

    ReplyDelete
  2. aqui un video tutorial
    http://youtu.be/3KEhUBHIpF0

    ReplyDelete
  3. Muchas gracias grosso!!!

    Me ahorraste investigar la librería. Ahora a hacer un informe copado con ella.

    Abrazo enorme!!

    ReplyDelete
  4. Buenas tardes Andrés,

    Yo tengo una pregunta y es saber porque no se imprime el resto de texto que se introduce en los textField si los mismo son datos de tipo String y siempre veo que carga solo el TextArea nada más.
    Que a la esperar de su respuesta y buen tutorial

    ReplyDelete
  5. buenas el ejemplo me ayudo bastante, mi pregunta es como seria si en ves de un area de texto quiero enviar datos que hay una jtable

    ReplyDelete
  6. hola disculpa tengo una duda con lo de Document mipdf = new Document() {}; al momento de ponerlo me pide todas sus abtractos.. pero al momento de poner mipdf.open no aparece el open =/

    ReplyDelete