¿Cómo genera Java archivos pdf?
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 p>
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));
}
}