历史版本20 :打印 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 版本编辑

  报表服务器版本  jar包版本
 10.0 
  9.0  2018-4-9及之后

2. 描述编辑

之前,无论是8.0版本或是9.0版本 (2018-4-9之前),FR都有pdf打印,flash打印和applet打印这三种自带的打印方式。同时还有一个本地软件打印的插件,用来覆盖各种场景以及满足客户的特殊需求。

但是我们发现,这几种各有优缺点的打印方式的存在对客户的选择造成了一定的困扰。有用户反馈说,打印方式太多,不知道有什么区别,分别适合什么样的场景。

并且,随着web协议框架和技术的完善,有些打印方式渐渐被淘汰,部分浏览器对原本几种打印方式的支持也越来越差。

所以,为了提升用户的体验,简化打印的场景,我们在对打印功能进行了升级,将各种打印方式整合到一起,形成一个统一的打印入口,让客户的选择变得更加简单清晰。


222

新打印只有两种选择:

零客户端打印:适合更偏向打印便捷性的客户,任何机器上随时都能打印。

本地软件打印:适合固定机器进行大量打印的客户,有更高的效率和更丰富的设置,不受浏览器约束。


同时新打印有以下特性:

易用:易于设置,可预先进行页面设置传递至打印机,并可以保存用户打印习惯,无需复杂设置,一键打印,同时对于市面上几乎所有类型打印机都能很好的支持。针式、热敏打印机打印是容易出现打印不清晰、打印效果不好的问题都能通过本地软件打印得到解决。

功能丰富:提供套打、批量打印、打印内容控制、打印偏移、静默打印等丰富的功能

性能强大:相同环境下,零客户端打印耗时不到同类竞品的一半,本地软件打印耗时不到同类竞品的1/3


3. 具体功能编辑

  功能(chrome为例)零客户端打印   本地软件打印 
  首选打印机  ×  √ 
  打印偏移  √   √ 
  静默打印 IE下 √ ,其他×  √ 
 打印内容控制   √   √ 
  套打  √    √ 
  批量打印  √     √   
  服务器端打印  √   √ 

首选打印机:支持报表绑定打印机,打印报表时优先选择绑定的打印机进行打印,免去了用户每次都要选择打印机的麻烦

打印偏移:增加页面边距设置,可以调整打印内容的边距来进行打印偏移,以适应不同打印机的打印效果不同的问题

本地静默打印:打印继承模板中的纸张、布局和边距设置,可在设计器中提前设置好要打印的样式,用户直接使用统一设置,不再弹出设置窗口,实现静默打印

打印内容控制:可在设计器中通过对内容进行设置,实现内容是否打印

套打:支持发票、货运单等内容的套打

批量打印:通过js可实现批量打印,想要的内容一次打出

服务器端打印:直接调用服务器连接的打印机,可解决本地PC没有连接打印机无法打印的问题


4. 具体设计编辑

4.1 工具栏打印按钮

1)点击模板>模板web属性和服务器配置中分页预览设置、填报页面设置、数据分析设置中,“打印”按钮,如下图:

222

注1:老的打印,显示为“打印(兼容)”。

注2:版本升级后,老的打印按钮无法添加到工具栏上进行使用,若想使用老的打印方法,可以通过在工具栏中添加自定义按钮调用接口的方法实现。接口详情可参考-js调用FR打印方法


2)若在模板web属性和服务器配置中分页预览设置、填报页面设置、数据分析设置,工具栏中新的“打印”按钮没有出现,需要手动添加,选择服务器>服务器配置,编辑工具栏,将新的“打印”按钮,拖动到工具栏上进行添加,如下所示:

222

或者直接点击“使用默认工具栏”,工具栏就会出现新的“打印”按钮。


4.2 打印设置(设计器)

1)服务器配置

选择服务器>服务器配置>打印设置,分为两种打印方式:零客户端打印、本地软件打印。默认为“零客户端打印”,如下图所示:222

2)模板配置

选择模板>打印设置,进行打印设置,可以直接“采用服务器设置”,也可以“为该模板单独设置”,如下图所示:

222

3)零客户端打印

222

a. 打印时可设置打印边距

勾选时,弹框对打印边距进行设置;不勾选时,直接使用下面c默认设置中的打印边距。

b.IE浏览器中不显示打印设置

勾选时,IE浏览器使用静默打印功能;不勾选时,IE浏览器中显示打印设置

c. 默认配置:

即默认的边距设置:

222


勾选时,继承页面边距设置;不勾选时,自定义设置上下左右的边距。

4)本地打印

222

注:本地打印需要终端下载客户端。

a. 打印时需要打印设置窗口:

勾选时,弹框对打印属性进行设置;不勾选时,继承模板中的纸张、布局和边距设置,可在设计器中提前设置好要打印的样式,用户直接使用统一设置,不再弹出设置窗口,实现静默打印

b. 默认配置:

打印机:支持报表绑定打印机,自动获取本地可用的打印机,无可用打印机时,显示为空

份数:打印的份数,默认为1份

页码:默认打印所有页,勾选“指定页”时,在后面文本框中输入符合格式要求的数值;勾选“双面打印”,可以设置打印奇数页或者打印偶数页

纸张:勾选时,继承页面纸张设置;不勾选时,在下拉框中设置需要打印的纸张大小

布局:勾选时,继承页面布局设置;不勾选时,自定义设置页面是纵向还是横向打印,默认为纵向

边距:勾选时,继承页面边距设置;不勾选时,自定义设置页面的上下左右边距

缩放:勾选时,根据纸张大小缩放打印;不勾选时,自定义缩放的比例

4.3 服务器端打印

直接调用服务器连接的打印机,可解决本地PC没有连接打印机无法打印的问题。

选择服务器>报表平台管理,打开数据决策系统,在管理系统>系统管理里面可以进行打印设置,如下图:

222

4. 示例编辑

下面以本地打印为例,演示下各个功能

4.1 首选打印机

支持报表绑定打印机。点击模板-打印设置-为该模板单独设置-本地打印,打印机选项中设置自己需要绑定的打印机,如下图:

222


4.2 打印偏移

通过页面边距设置,可实现打印偏移效果。点击模板-打印设置-为该模板单独设置-本地打印,取消勾选继承页面边距设置,上边距和左边距均设置为40毫米,如下图:

222

打印效果如下图:
222

4.3 静默打印

通过继承模板中的纸张、布局和边距设置,可在设计器中提前设置好要打印的样式,用户直接使用统一设置,不再弹出设置窗口,实现静默打印。

点击模板-打印设置-为该模板单独设置-本地打印,勾选“打印时需要设置打印设置窗口”,如下图:


222

预览模板,点击按钮打印时,勾选“保存客户端习惯,执行静默打印”,如下图:
222

保存后,点击打印,打印完成后。下一次再打印的时候,即可按本次保存的打印设置进行打印。

注:在不勾选“打印时需要打印设置窗口”的情况下,预定义的默认配置设置优先于本地软件打印的静默打印设置

若想清除客户端习惯,右击“清除本地习惯”即可。

4.4 打印内容控制

在设计器中通过对内容进行设置设置实现实现内容是否打印,例如内容只在web端预览显示,但是打印不显示,详细点击预览、打印和导出单元格

4.5 套打

支持发票、货运单等内容的套打,详细点击套打

4.6 批量打印

支持批量打印,详细点击批量打印

5. API接口编辑

JS打印接口:FR.doURLPrint(config),使用post传参。

注:config为参数配置,参数可以以post方式传递给服务器,config数据格式为 {printUrl : url,isPopUp : false,data:{reportlets:reportlets},printType : printType,printName:'',pageType:2,pageIndex:'1-3',copy:3,}.

  参数含义  
printurl为需要打印模板的应用地址和服务,如"http://localhost:8075/webroot/decision/view/report"

允许为空。如果为空的话,就使用当前的 servlet 地址。如果需要跨域,则此参数不能为空

 isPopUp 是否弹出设置窗口,true为弹出,false为不弹出
  data为需要打印的模板及其参数,如"[{reportlet: '1.cpt', p1: 'a'}, {reportlet: '1.cpt', p1: 'b'}]"
  printType打印类型,0为零客户端打印,1为本地打印
  下面的参数为本地打印的参数,仅当 printType 为 1 时生效
printerName 打印机名
 pageType 打印页码类型:0:所有页,1:当前页,2:指定页
 pageIndex 页码范围。当 pageType 为 2 时有效
 copy 打印份数

示例:

新建一个模板,在单元格A1添加“按钮控件”,并添加“点击”事件,如下图所示:

222

JS代码:

var printurl="http://localhost:8075/webroot/decision/view/report"; var reportlets ="[{reportlet: 'GettingStarted.cpt', 地区: '华北'}, {reportlet: 'GettingStarted.cpt', 地区: '华东'}]"; var config = { printUrl : printurl, isPopUp : true, // 是否弹出设置窗口,true为弹出,false为不弹出 data :{ reportlets: reportlets // 需要打印的模版列表 }, printType : 1, // 打印类型,0为零客户端打印,1为本地打印 // 以下为本地打印的参数,仅当 printType 为 1 时生效 printerName : 'Microsoft Print to PDF', // 打印机名 pageType: 2, // 打印页码类型:0:所有页,1:当前页,2:指定页 pageIndex: '1-3', // 页码范围。当 pageType 为 2 时有效 copy: 3, // 打印份数 }; FR.doURLPrint(config);
保存模板,选择填报预览,当点击按钮时,将使用零客户端打印方式打印模板,如下图:

222

6. 注意事项编辑

1)若选择本地打印时,本地打印软件启动失败,如下图所示:

222

则点击“下载安装”,下载并启动本地打印软件。

注:本地打印不要安装在设计器的安装目录下。

注:若安装好本地打印软件,启动失败的话,请检查9092端口是否被占用。

2)目前浏览器打印预览不兼容IE10及以下版本,不兼容时打印预览右侧iframe进行提示,如下图:

222