在客户端打印Excel!!!!!!!!

时间:2021-08-24 08:32:52
现有如下要求:
在JSP页面上有一个打印按钮,按下此按钮时执行如下操作:
把服务器上既有的Excel模板调出来,并往上填写数据,之后发送到客户端的打印机打印出来。

现在能够完成的仅仅是往模板上写完数据,并保存到服务器上而已。
请问如何让那个文档往客户端的打印机印刷出来啊????

(注意:不是把服务器端作好的文件往客户端下载,而是不打开文件,直接在打印机上印刷)

13 个解决方案

#1


你这种操作方式,理论上说不可能。如果打印文件,必须在客户机上打开,并把文件传送给打印机。连下载都没有,何来打印?说白了,连打印的内容都得不到,打印个什么呢?

#2


不好意思,没有说明白。
就是说,只要让服务器上生成的文件在客户端打印出来就行。
至于实现方式等等,暂时没有限制。

曾经想过让文件自动保存到客户端(表面上没有保存动作),然后调用js实现,似乎不行...

#3


 就是设计一个报表?

#4


引用 3 楼 stoneggg 的回复:
就是设计一个报表?


不是设计一个报表,而是这个报表已经设计好。并且在服务器端已经完全成型。差的就是将这个成品传送到客户端的打印机上打印出来。
给用户的感觉就是点击后,直接上打印机拿东西就行了。

#5


本来已经做好,就是在服务器端将excel报表生成出来,各种数据填充进去,然后给用户下载或者直接打开。
结果,人家说想打印的话步骤太多,希望能够直接打印。。。ft~~~~~

#6


那肯定是要打开才能打印的吧  不打开文件就打印 还望高手指点啊

#7


客户的要求一向都比较BT啊 呵呵

#8


说实话。头疼。我想到的是用那些付费控件,直接打开服务器端的excel,也就是哪些能够编辑服务器端Excel的offece控件(如ntko),用js调用控件功能进行打印。至于免费的我还不知道。

#9


感谢各位的回复。

其实不打开服务器端的文件是怕用户多的话,带来资源紧张的问题。
实在没有办法的话,走这条路也未尝不可(和客户商量)

本人有两个提案:
1,打开服务器的文件,然后传到客户端打印机。
2,把服务器的文件传到客户端保存,然后打印。至于这个传输过程不能体现出来。

但是,对于上面两个方式,似乎现在都没有头绪该怎么执行下去。头疼>>>>>>>>>
请有了解的各位,不吝赐教。。。。。。。。。。。

#10


引用 7 楼 hejinhui1314 的回复:
客户的要求一向都比较BT啊 呵呵


顶这句话。
不过话说回来,如果是我付钱的话,我也要求尽量简单。。。赫赫

#11


比较难

#12


我所想到好点的方法就是用cmd命令的方式去调用打印机

    但用命令的话,LZ最好去查找下相关方面的命令了

    至于在Java中如何调用cmd命令的话就这样调用

    Runtime r=Runtime.getRuntime().exec("cmd /c "+你的cmd命令);

#13


找不到满意答案,还是结贴了

#1


你这种操作方式,理论上说不可能。如果打印文件,必须在客户机上打开,并把文件传送给打印机。连下载都没有,何来打印?说白了,连打印的内容都得不到,打印个什么呢?

#2


不好意思,没有说明白。
就是说,只要让服务器上生成的文件在客户端打印出来就行。
至于实现方式等等,暂时没有限制。

曾经想过让文件自动保存到客户端(表面上没有保存动作),然后调用js实现,似乎不行...

#3


 就是设计一个报表?

#4


引用 3 楼 stoneggg 的回复:
就是设计一个报表?


不是设计一个报表,而是这个报表已经设计好。并且在服务器端已经完全成型。差的就是将这个成品传送到客户端的打印机上打印出来。
给用户的感觉就是点击后,直接上打印机拿东西就行了。

#5


本来已经做好,就是在服务器端将excel报表生成出来,各种数据填充进去,然后给用户下载或者直接打开。
结果,人家说想打印的话步骤太多,希望能够直接打印。。。ft~~~~~

#6


那肯定是要打开才能打印的吧  不打开文件就打印 还望高手指点啊

#7


客户的要求一向都比较BT啊 呵呵

#8


说实话。头疼。我想到的是用那些付费控件,直接打开服务器端的excel,也就是哪些能够编辑服务器端Excel的offece控件(如ntko),用js调用控件功能进行打印。至于免费的我还不知道。

#9


感谢各位的回复。

其实不打开服务器端的文件是怕用户多的话,带来资源紧张的问题。
实在没有办法的话,走这条路也未尝不可(和客户商量)

本人有两个提案:
1,打开服务器的文件,然后传到客户端打印机。
2,把服务器的文件传到客户端保存,然后打印。至于这个传输过程不能体现出来。

但是,对于上面两个方式,似乎现在都没有头绪该怎么执行下去。头疼>>>>>>>>>
请有了解的各位,不吝赐教。。。。。。。。。。。

#10


引用 7 楼 hejinhui1314 的回复:
客户的要求一向都比较BT啊 呵呵


顶这句话。
不过话说回来,如果是我付钱的话,我也要求尽量简单。。。赫赫

#11


比较难

#12


我所想到好点的方法就是用cmd命令的方式去调用打印机

    但用命令的话,LZ最好去查找下相关方面的命令了

    至于在Java中如何调用cmd命令的话就这样调用

    Runtime r=Runtime.getRuntime().exec("cmd /c "+你的cmd命令);

#13


找不到满意答案,还是结贴了