返回文章列表

在web页面中提供打印功能

最近一个项目需要在页面里面提供打印功能,这个功能似乎看起来很不起眼,因为在目前各大网站的文章页面都有打印功能,之前的项目也使用过,而且很简单就一句话: [code] window.print(); [/code] 调用本地的打印接口,很方便,也很轻量,主流浏览器支持非常好,用户只要点...

1 分钟阅读

最近一个项目需要在页面里面提供打印功能,这个功能似乎看起来很不起眼,因为在目前各大网站的文章页面都有打印功能,之前的项目也使用过,而且很简单就一句话:

[code]
window.print();
[/code]

调用本地的打印接口,很方便,也很轻量,主流浏览器支持非常好,用户只要点个按钮或者链接就基本上搞定。 但是也有问题,比如不能精确分页,不能设置纸型等。

除此之外,还有两种常见的基于网页的打印方式:

一种是依赖activeX控件来打印,这也决定了其只能在IE浏览器下可以使用了,部分通过安装插件可以在Firefox实现打印,比如 Lodop。

另外一种是基于Java Applet的打印,比如JasperReport的Applet实现方式,通过调用Java的通用打印接口,也可以比较好的实现网页打印,但是前提是用户的客户端必须安装一个几十兆的Java虚拟机,每次打印都得重新去服务器获取数据,其次是比较慢的响应速度。例如:http://www.jwebhosting.net/servlets/jr123/printer.html

具体使用那种就需要结合项目来选取了,比如我们的客户使用IE的多,而且用户群体比较广,那么我们就考虑使用activeX在IE下打印,而在其他浏览器下则考虑使用浏览器自带的print方法来代替。

评论交流

暂无评论,欢迎留下你的想法