[老]报表打印方式、对比及使用

目录:

1. 报表打印机制

各种打印的运行机制,都是选择打印时,先根据报表内容,在服务器的内存中将页面中的内容全部生成完毕,即生成对应格式的对象;然后再由serverlet直接推送给客户端,最后根据选择的打印方式打印出来。

2. 报表打印方式

FineReport打印方式分为客户端打印和服务器端打印:
服务器端打印:使用报表应用所在的服务器,连接的打印机进行打印;
客户端打印:使用本地连接的打印机进行打印;又分为Flash打印、PDF打印、Applet打印以及本地打印。
注:在jar包版本为2018-04-09及以上版本时,请使用新的打印方式,详情参照:[新]打印

3. 各打印方式的比较

为了更方便理解各打印方式,下面列出现有报表的各打印方式的对比说明。
打印方式工作原理支持浏览器是否需下载插件打印效果打印速度
Flash打印客户端点击打印会触发打印的插件,通过打印插件把要打印的数据画出来,再传到打印机把数据打印出来。   firefox2.0 及以上,ie6.0 及以上,chrome 2.0及以上,opera9.5 及以上,safari3.0 及以上,AOL9.0 及以上 需要下载插件,但几乎95%的浏览器都已预装了Flash Player,打印前不再需要安装 Flash Player,即使需要安装也只有几百 k 的大小,非常的方便  可精确打印applet打印速度快一些,其它的打印速度差不多    
Pdf打印 用户点击打印后,会从服务器端下载一个 pdf 文件流,浏览器会自动弹出 Adobe Reader,再利用 Adobe 的打印按钮进行打印。  支持IE内核  安装 Adobe Reader 后会自动给IE安装插件  可精确打印,打印的清晰度比其他打印方式的深一点,如:有背景图片时,pdf打印的颜色会深一点。 
Applet打印客户端点击打印按钮时,浏览器启动Applet,Applet 根据参数访问后台页面信息,后台返回页面,Applet加载页面后,调用 jre的打印服务进行打印。其打印是java后台实现的。  firefox2.0 及以上,ie6.0 及以上,opera9.5 及以上需要安装有 jre  可精确打印  
本地打印工具栏设置中增加本地程序打印,点击本地打印,web端可以通过按钮调用本地打印机程序进行打印。firefox2.0 及以上,ie6.0 及以上,chrome2.0 及以上,opera9.5 及以上  需要下载本地打印插件可精确打印  
服务器端打印  客户端点击服务器端打印图标时,使用部署应用所在的服务器所连接的打印机进行打印。   firefox2.0 及以上,ie6.0 及以上,chrome2.0 及以上,opera9.5 及以上  不需要下载安装插件 可精确打印 

4. 各打印方式的优缺点对比

打印方式静默打印页面设置传递给打印机自适应纸张大小横向打印注意事项
Flash打印  不支持  支持传递纸张方向
不支持传递纸张大小 
支持  支持  无  
PDF打印  支持  支持,可在报表中设置  Adobe Reader9.4及以前的版本不支持,X版本支持 支持  无  
Applet打印  支持  支持,可在报表中设置  支持  支持  表应用目录下必须有fr-applet-8.0.jar包 
本地打印支持支持,可在报表中设置支持支持

5. 各打印方式的使用

5.1 直接使用报表工具栏中的打印按钮
用户系统通常只需要一种打印方式,不需要所有打印方式按钮都显示出来,此时可以自定义报表工具栏。
本地打印需要安装本地打印插件后,才能调用。
选择模板>模板web属性>分页预览设置,选择为该模板单独设置,勾选工具栏,双击工具栏上的打印按钮或者选中打印按钮,点击设置(如果工具栏上没有打印按钮,则双击按钮框中的打印按钮,使之添加到工具栏中),选择需要显示的打印方式(设置按钮属性,可以勾选Flash打印、PDF打印、Applet打印、服务器端打印),如下图:
在各种预览方式旁有编辑工具栏设置按钮,或者在服务器>服务器配置中给所有模板统一设置。
注:如果不是在分页预览展示端打印,而是填报预览展示端打印,则选择模板>模板web属性>填报页面设置,其余设置相同。分析预览同理。
5.2 自定义按钮调用打印方法
不用报表内置的工具栏,用户自定义按钮,通过js调用打印方法。详见js调用FR打印方法文档。

索引:

[老]Flash打印

[老]Pdf打印

[老]Applet打印

[老]静默打印 

[老]偏移打印

缩放打印

本地打印插件

将页面设置传递给打印机(自动选择纸张与横向打印)

6. 移动端

移动端不支持各种打印和导出方式

附件列表


主题:
标签: 已验证 9.0验证

文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201