5

我们如何在java中打印缓冲图像?我们可以将 FileInputStream 发送到打印服务,但我需要将缓冲的图像发送给它。

FileInputStream fin = new FileInputStream("YOurImageFileName.PNG");
Doc doc = new SimpleDoc(fin, DocFlavor.INPUT_STREAM.GIF, null);
job.print(doc, pras);

是否可以?

在此处查看完整代码。

4

2 回答 2

7
PrinterJob printJob = PrinterJob.getPrinterJob();
printJob.setPrintable(new Printable() {
        public int print(Graphics graphics, PageFormat pageFormat, int pageIndex) throws PrinterException {
                if (pageIndex != 0) {
                    return NO_SUCH_PAGE;
                }
                graphics.drawImage(image, 0, 0, image.getWidth(), image.getHeight(), null);
                return PAGE_EXISTS;
        }
});     
try {
    printJob.print();
} catch (PrinterException e1) {             
    e1.printStackTrace();
}
于 2013-05-25T09:34:11.443 回答
1

您可以使用 iText 库。有一个简单的示例将图像打印到 pdf 。

将 IText 图像添加到 PDF 文档

于 2012-05-07T09:58:39.293 回答