Comment imprimer un fichier PDF créé avec iText?
Salut j'ai créé un fichier PDF en une image, je veux imprimer mon fichier pdf après la création. Mieux si j'ai le PDF en mémoire au lieu d'avoir un fichier, puis de l'envoyer à l'imprimante... une Idée ?
Je suis à l'aide de la bibliothèque iText. Vérifier mon code:
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Image;
import com.lowagie.text.PageSize;
import com.lowagie.text.Rectangle;
import com.lowagie.text.pdf.PdfContentByte;
import com.lowagie.text.pdf.PdfPrinterGraphics2D;
import com.lowagie.text.pdf.PdfTemplate;
import com.lowagie.text.pdf.PdfWriter;
import javax.imageio.ImageIO;
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
private boolean exportToPdfThroughPNG(String fileName, float width, float height) throws DocumentException, IOException {
logger.debug("[boolean exportToPdfQuick() throws IOException, DocumentException]");
BufferedImage pngFile = createPngFile();
Document document = new Document();
document.setPageSize(new Rectangle(width, height));
PdfWriter.getInstance(document, new FileOutputStream(fileName));
document.open();
Image image = Image.getInstance(Toolkit.getDefaultToolkit().createImage(pngFile.getSource()), Color.WHITE);
document.add(image);
//If some day anyone wants to put text in the pdf. @Eduardo
//document.add(new Paragraph("title of the process"));
document.close();
return true;
}
Merci d'avance!
Est-ce en cours d'exécution sur Windows, ou une autre plate-forme?
OriginalL'auteur MadMad666 | 2011-01-05
Vous devez vous connecter pour publier un commentaire.
Vous pouvez toujours utiliser un ByteArrayOutputStream au lieu d'un FileOutputStream.
Après vous avez le PDF octets, sa normale "comment imprimer en Java" de la question. De nombreuses imprimantes (ou au moins leurs pilotes) prendra PDF directement ces jours-ci, donc, à ce stade, on pourrait dire que vous avez terminé.
PS: une Fois j'ai marqué votre question "Java" c'couleur de votre bloc de code à l'aide de "l'importation" d'un mot-clé et ainsi de suite. Quelque chose à garder à l'esprit dans l'avenir.
OriginalL'auteur Mark Storer