Java 如何使用PrinteJob打印.doc文件?
我想打印test3.doc文件。我已经用java.awt.print.PrinterJob尝试过了;以下是我尝试过的代码:Java 如何使用PrinteJob打印.doc文件?,java,Java,我想打印test3.doc文件。我已经用java.awt.print.PrinterJob尝试过了;以下是我尝试过的代码: PrinterJob printerjob= PrinterJob.getPrinterJob(); PageFormat pageformat=new PageFormat(); Paper paper=new Paper(); paper.setSize(8.27, 11.69); pageformat.setPa
PrinterJob printerjob= PrinterJob.getPrinterJob();
PageFormat pageformat=new PageFormat();
Paper paper=new Paper();
paper.setSize(8.27, 11.69);
pageformat.setPaper(paper);
printerjob.defaultPage(pageformat);
text.setText(printerjob.getUserName());
printerjob.pageDialog(pageformat);
printerjob.printDialog();
String file="C:/test3.doc";
printerjob.setJobName(file);
try{
printerjob.print();
text.setText("success");
}
catch (PrinterException e){text.setText("error");}
但是它不打印任何文件。有人知道它为什么不工作吗?或者如何更改代码以打印test3.doc文件。据我对Java API文档的理解,
setJobName(String)
设置要打印的文档的名称,但这并不引用文档,而是作业的名称,可以是类似“MyPrintJobName”的任何名称
打印文档时,需要呈现此文档,然后将生成的“图形”发送到打印机,如下所述:
因此,要从纯Java代码打印.doc文件,您需要一个能够相应地呈现文档的引擎。看看类似的问题,Oracle似乎没有提供Java引擎,因此您需要使用第三方组件来处理.doc文件