1. 报表打印机制
各种打印的运行机制,都是选择打印时,先根据报表内容,在服务器的内存中将页面中的内容全部生成完毕,即生成对应格式的对象;然后再由serverlet直接推送给客户端,最后根据选择的打印方式打印出来。
2. 报表打印方式
FineReport打印方式分为客户端打印和服务器端打印:
为了更方便理解各打印方式,下面列出现有报表的各打印方式的对比说明。

打印方式 | 静默打印 | 页面设置传递给打印机 | 自适应纸张大小 | 横向打印 | 注意事项 |
Flash打印 | 不支持 | 不支持,必须手动设置纸张大小 | 支持 | 支持 | 无 |
PDF打印 | 支持 | 支持,可在报表中设置 | Adobe Reader9.4及以前的版本不支持,X版本支持 | 支持 | 无 |
Applet打印 | 支持 | 支持,可在报表中设置 | 支持 | 支持 | 表应用目录下必须有fr-applet-8.0.jar包 |
5. 各打印方式的使用
5.1 直接使用报表工具栏中的打印按钮
用户系统通常只需要一种打印方式,不需要所有打印方式按钮都显示出来,此时可以自定义报表工具栏。
选择
,选择
,勾选
,双击工具栏上的打印按钮或者选中打印按钮,点击设置(如果工具栏上没有打印按钮,则双击按钮框中的打印按钮,使之添加到工具栏中),选择需要显示的打印方式,如下图:
在各种预览方式旁有编辑工具栏设置按钮,或者在
中给所有模板统一设置:

注:如果不是在分页预览展示端打印,而是填报预览展示端打印,则选择模板>模板web属性>填报页面设置,其余设置相同。分析预览同理。
5.2 自定义按钮调用打印方法
不用报表内置的工具栏,用户自定义按钮,通过js调用打印方法。详见
js调用FR打印方法文档