La Red de Conocimientos Pedagógicos - Currículum vitae - ¿Cómo genera Java archivos pdf?

¿Cómo genera Java archivos pdf?

Exportar pdf desde java requiere la biblioteca IText. iText es un proyecto del famoso sitio web de código abierto sourceforge. Es una biblioteca de clases de Java para generar documentos PDF. IText no sólo puede generar PDF o rtf.

Los archivos XML y Html se pueden convertir en archivos PDF.

La instalación de iText es muy cómoda. Después de descargar el archivo iText.jar, solo necesita agregar la ruta de iText.jar a la ruta de clase del sistema y podrá usarla en el programa.

Biblioteca de clases IText.

El código es el siguiente:

Clase pública createPdf {

//Hice un ejemplo simple con una imagen en el medio.

//Crea primero el objeto de documento: la versión correspondiente del jar introduce com.lowagie.text.Document

Documento documento = nuevo documento (tamaño de página. A4, 36.0F, 36.0F, 36.0F, 36.0 f);

public void getPDFdemo() lanza DocumentException, IOException{

//Esta exportación usa iTextAsian.jar y iText-2.1.3.jar , ambos son a la antigua usanza. Para obtener más información, consulte la dirección:

//Primero que nada

//Definición de fuente: aquí se utiliza la fuente del frasco.

fuente base BF chino = fuente base. create font(" ST song-Light ", " UniGB-UCS2-H ", false

//Por supuesto que también puedes); use una computadora Viene con biblioteca de fuentes.

//fuente base BF chino = fuente base crear fuente("C:/WINDOWS/Fonts/SIMSUN.TTC, 1", fuente base. IDENTITY_H, BaseFont. incrustado); p>//Defina la fuente y tenga en cuenta que el color está empaquetado en el paquete más reciente.

Fuente Fuente Chino 8 = nueva Fuente(BF Chino, 10.0F, 0, nuevo Color(59, 54, 54));

//El primer paso para generar pdf:

//Guardar la ruta local especificada

save local();

document open()

ByteArrayOutputStream ba = new. ByteArrayOutputStream ();

//escritor de pdf = escritor de pdf. getinstance(document, ba);

documento open();

//Obtener. this La ruta del archivo de la segunda compilación.

Ruta de cadena = this.getClass(). getClassLoader(). obtenerRecurso(" "). getPath();

//Obtener la ruta raíz

ruta del archivo de cadena = ruta. substring(1, path. length()-15);

// Obtenga la ruta de la imagen y busque la imagen que debe generarse en el pdf.

//Escribe aquí según tu propio camino, siempre que encuentres la ubicación de la imagen.

string picPath = ruta del archivo "\\web content""\\images\\";

//Agregar párrafo en PDF

Párrafo p encabezado = new Paragraph();

PHeader.add(new Paragraph("Quieres generar texto y escribirlo aquí", nueva fuente (bfChinese, 8.0F, 1));

//pheader . add(new Paragraph(" text ", la fuente puede ser escrita por usted mismo o definida antes de fontChinese8);

document . add(pHeader); //Agrega el contenido que escribiste al documento.

//Obtener la imagen

image img 2 = image . getinstance(picPath " CCF-stamp-new . png));

//Definir. la imagen Posición absoluta en el documento

img 2 . escala absoluta(137.0 f, 140.0 f

img 2 .

//Agregar una imagen al documento

document add(img 2);

//Cerrar el documento

document.close() <. /p>

/*//Establezca el nombre de archivo del documento guardado

response.setHeader("Contenido-

Disposición", "Adjunto; nombre de archivo = \ " nuevo carácter. string(("Carta de confirmación de membresía CCF.pdf").getbytes("gbk"),"ISO-8859-1")"\");

//tipo de configuración

respuesta . setcontenttype(" aplicación/pdf ");

respuesta . setcontentlength(ba . size());

ServletOutputStream out = respuesta . );

ba .write to(out);

out .flush();*/

}

Vacío estático público main(String[]args) lanza DocumentException, IOException{

create pdf pdf = new create pdf();

pdf getpdfdemo();

}

//Especifica el archivo a guardar. Aquí, guarde el archivo en el disco D de text.pdf

public void saveLocal() lanza IOException, DocumentException{

//Genere PDF directamente, genere mediante fórmulas en el disco D test.pdf .

Archivo Archivo = nuevo Archivo(" D:\\text2.pdf");

archivo crear nuevo archivo();

PdfWriter.getInstance (. documento, nuevo flujo de salida de archivo (archivo));

}

}