我需要一个
Java程序将任何文件打印到默认/选定的打印机(实际上我使用RICOH通用PostScript打印机将任何文件打印到PostScript文件).此外,我将从打印机读取该流并将其写入PostScript文件.我已经尝试过谷歌下面的示例程序了,但是当我收到PostScript文件时,它是以某种未知的格式.
public class PrintToFileWithJava {
private static boolean jobRunning = true;
public static void main(String[] args) throws Exception {
InputStream is = new BufferedInputStream(new FileInputStream("Authentication in Hive.pdf"));
DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
PrintService service = PrintServiceLookup.lookupDefaultPrintService();
DocPrintJob printJob = service.createPrintJob();
printJob.addPrintJobListener(new JobCompleteMonitor());
Doc doc = new SimpleDoc(is, flavor, null);
PrintRequestAttributeSet attributes = new HashPrintRequestAttributeSet();
printJob.print(doc, attributes);
while (jobRunning) {
Thread.sleep(1000);
}
System.out.println("Exiting app");
is.close();
}
private static class JobCompleteMonitor extends PrintJobAdapter {
@Override
public void printJobCompleted(PrintJobEvent jobEvent) {
System.out.println("Job completed");
jobRunning = false;
}
}
}
任何建议表示赞赏.