个人静态网站首页怎么做,培训心得体会800字,比较开放的社交软件免费的,阜宁网站制作哪家好前面说了Java如何生成复杂的Word文档#xff0c;今年记录下Java如何调用打印机打印word文档。起初用的是自带的PrintJob#xff0c;但是系统提供的打印机制并不成熟完整。网上的代码也是千篇一律#xff0c;在我的打印设备Canon iR2525/2530 UFRII LT上#xff0c;我能获取…前面说了Java如何生成复杂的Word文档今年记录下Java如何调用打印机打印word文档。起初用的是自带的PrintJob但是系统提供的打印机制并不成熟完整。网上的代码也是千篇一律在我的打印设备Canon iR2525/2530 UFRII LT上我能获取到打印机的各属性当前任务数。但是打印机没反应。可参考这两篇文章折腾了好久最终决定由用一个第三方的找到了jacob,还不错特此记录下。1.将jacob的dll文件拷贝到C:\Windows\System32中。2.在任务管理器中将服务DCom Server Process Launcher(DcomLaunch)打开。3.将jacob.jar拷贝到项目的/libs目录下。值得注意的是我在Windows Server 2008上找不到dll文件报错Exception in thread main java.lang.UnsatisfiedLinkError: no jacob-1.17-x86 in java.library.path但是在win系统上就没事了。所以这时候你需要将dll文件也拷贝至你的jdk/bin目录下jdk/jre/bin目录下以及jre/bin目录下。这样就没有什么问题了。代码如下public classTestDoc {public static voidmain(String[] args) {String pathD:\\yanqiong.doc;System.out.println(开始打印);ComThread.InitSTA();ActiveXComponent wordnew ActiveXComponent(Word.Application);Dispatch docnull;Dispatch.put(word,Visible, new Variant(false));Dispatch docsword.getProperty(Documents).toDispatch();docDispatch.call(docs, Open, path).toDispatch();try{Dispatch.call(doc,PrintOut);//打印} catch(Exception e) {e.printStackTrace();System.out.println(打印失败);}finally{try{if(doc!null){Dispatch.call(doc,Close,new Variant(0));}}catch(Exception e2) {e2.printStackTrace();}//释放资源ComThread.Release();}}}示例代码如果此文对您有帮助微信打赏我一下吧~