我们如何在java中打印缓冲图像? 我们可以将FileInputStream发送到Print Service,但我需要向它发送缓冲的图像。
FileInputStream fin = new FileInputStream("YOurImageFileName.PNG");
Doc doc = new SimpleDoc(fin, DocFlavor.INPUT_STREAM.GIF, null);
job.print(doc, pras);
有可能吗?
检查完整代码here。
答案 0 :(得分:5)
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();
}
答案 1 :(得分:1)
您可以使用iText库..有一个简单的例子可以将图像打印到pdf。