2010-03-19 8 views

Respuesta

5

Probar PDF Renderer. Es de código abierto y hay un par de ejemplos en el sitio sobre cómo renderizar en un dispositivo de impresora.

4

He utilizado PDFBox antes para una tarea similar a la tuya. Es una excelente biblioteca del Apache Software Foundation. La clase que probablemente va a utilizar se llama: PDFTextStripper. El javadoc para la clase se puede encontrar here.

+0

_ Como nota al margen: _ para imprimir un PDF existente sería suficiente cargarlo e imprimirlo, como: 'PDDocument pdfDocument = PDDocument.load (new File (" mydoc.pdf ")); pdfDocument.print(); '. O use ['pdfDocument.silentPrint()'] (http://pdfbox.apache.org/docs/1.8.10/javadocs/org/apache/pdfbox/pdmodel/PDDocument.html#silentPrint()) para imprimir sin rápido. Es decir. sin usar nunca la instancia de PDFTextStripper. – informatik01

9

Aquí algo de código fuente que le permitirá imprimir cualquier archivo de texto:

public void print() { 
    //The desktop api can help calling other applications in our machine 
    //and also many other features... 
    Desktop desktop = Desktop.getDesktop(); 
    try { 
    //desktop.print(new File("DocXfile.docx")); 
     desktop.print(new File("Docfile.pdf")); 
    } catch (IOException e) {   
     e.printStackTrace(); 
    } 
} 

Tal vez se adapte a sus necesidades ya que no dio más detalles.

+1

¿Hay alguna forma de especificar el nombre de la impresora también? gracias – user234194

+1

@ user234194 no lo creo, pero para obtener más información sobre Desktop API, consulte: 'http: // java.sun.com/developer/technicalArticles/J2SE/Desktop/javase6/desktop_api /' – sfrj

Cuestiones relacionadas