乔山办公网我们一直在努力
您的位置:乔山办公网 > word文档 > java web项目 实现word文件打印,打印本地文件-调用word打印,word调用其他word内容

java web项目 实现word文件打印,打印本地文件-调用word打印,word调用其他word内容

作者:乔山办公网日期:

返回目录:word文档


一般来说没有这种方式的,都是采用报表控件实现

但是你这种方式也可以实现就是比较考验功底
首先必须对word或者excel进行统一的规范性处理,也就是形成约束,比如版本,比如你的实现机制(例如书签或者变量)的命名等地方
其次就是sql查询数据与你实现机制的绑定,然后在相对应的变量或书签处设值
建议先看看开源报表的原理,实现有多种实现方式,你可以用poi,也可以用一些其他的组件对word进行解析,也可以编写Dephi控件,但是都必须满足以下几点
1、可维护
2、高效
3、对于多行分页的自动处理
4、对于单页排版的处理
5、如果有可能需加入图片或者图表

如果要先展示word文件,在打印!
你可以使用freemarker模版技术
很简单,请参考:
http://blog.csdn.net/jackfrued/article/details/39449021

打印请使用js代码:window.print();
你把代码贴出来,这图片格式的。。。
你调用一下g.timer();试试。

1、首先新建一个空白文档,并另存为“Normal.dotm(Word2007及以后版本)Normal.dot(Word2003-2007版本)”。
2、进行需要的模板设置,对字体、段落、页眉页脚,页面边距等进行设置。
3、对字体、段落的设置:在空白的新文档中,右击进行对字体的设置,在设置完成后,点击“默认”按钮。
4、对页眉页脚,页面边距:同样在菜单栏,选择插入"页眉页脚"进行设置,设置后点击“默认”按钮,并同时设置“页面边距”并点击“默认”按钮。
5、在全面进行模板设置后,需要保存,在操作中会出现对一些“默认的设置”如果所示,要选择“是”,“你准备将默认的字体更改为.....,是否将此更改应用于所有基于NORMAL模板的新文档?”
6、把刚才e799bee5baa6e58685e5aeb9364保存的模板,复制起来,在打开“C:\Users\Administrator\AppData\Roaming\Microsoft\Templates”替换原有的Normal.dotm或Normal.dot,关闭。
7、测试效果:打开一个Word文档,并按下“CTRL+N”新建一个空白文档,任意输入内容,可以看到是刚才设置的模板。

java实现调用默认打印机打印文档(以D盘zhidao.txt文档为例),代码如下:
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import javax.print.Doc;
import javax.print.DocFlavor;
import javax.print.DocPrintJob;
import javax.print.PrintException;
import javax.print.PrintService;
import javax.print.PrintServiceLookup;
import javax.print.ServiceUI;
import javax.print.SimpleDoc;
import javax.print.attribute.DocAttributeSet;
import javax.print.attribute.HashDocAttributeSet;
import javax.print.attribute.HashPrintRequestAttributeSet;
import javax.print.attribute.PrintRequestAttributeSet;
/**
* 调用打印机功能
* @author Administrator
**/
public class PrintDemoII {
public static void main(String[] args) {
DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();
PrintService []pservices = PrintServiceLookup.lookupPrintServices(flavor, aset);
PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();
PrintService service = ServiceUI.printDialog(null, 200, 200, pservices,
defaultService, flavor, aset);
if(service != null){
try {
DocPrintJob pj =service.createPrintJob();
FileInputStream fis = new FileInputStream("D:"+ File.separator +"zhidao.txt");//打印D盘zhidao.txt文档。
DocAttributeSet das = new HashDocAttributeSet();
Doc doc = new SimpleDoc(fis, flavor, das);
pj.print(doc, aset);
} catch (FileNotFoundException fe) {
fe.printStackTrace();
} catch (PrintException e) {
e.printStackTrace();
}
}else {
System.out.println("打印失败");
}
}
}

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网