打印

  • 文档创建者:小帆_智能客服
  • 编辑次数:55次
  • 最近更新:Carly 于 2020-05-14
  • 1. 概述

    1.1 应用场景

    FineReport 8.0 和 9.0 自带 PDF 打印、Flash 打印和 Applet 打印方式,且配套一个本地软件打印的插件,以覆盖各种场景和满足客户的特殊需求。过多的打印方式对客户的选择造成了一定的困扰。大部分用户反馈打印方式太多,不知道它们的区别和适用场景。

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

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

    注1:10.0 设计器和部署包使用的都是 openjdk,而使用 openjdk 无法启动 flash 打印,但使用 Oracle/sun jdk 可以。

    注2:flash 打印目前是已经被淘汰了的技术,很多浏览器都将不再支持 flash 打印,建议客户使用零客户端或本地打印。

    222

    1.2 功能简介

    新打印有以下特点:

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

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

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

    2. 打印功能

    新打印支持两种打印方式:

    • 零客户端打印:无需安装打印软件,任何机器上随时都能打印,适合更偏向打印便捷性的客户。

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

    功能
    简介零客户端打印本地软件打印相关文档
    首选打印机支持报表绑定打印机,打印报表时优先选择绑定的打印机进行打印,免去了用户每次都要选择打印机的麻烦不支持支持-
    打印偏移增加页面边距设置,可以调整打印内容的边距来进行打印偏移,以适应不同打印机的打印效果不同的问题支持
    打印偏移
    静默打印打印继承模板中的纸张、布局和边距设置,可在设计器中提前设置好要打印的样式,用户直接使用统一设置,不再弹出设置窗口

    IE 下支持 

    其他不支持

    支持静默打印
    打印内容控制可在设计器中通过对内容进行设置,实现内容是否打印支持打印单元格
    套打支持发票、货运单等内容的套打支持套打
    批量打印支持对单张模板多个参数值进行批量打印支持批量打印
    服务器端打印提供了易调用的 JS 接口,直接调用服务器连接的打印机,可解决本地PC没有连接打印机无法打印的问题支持服务器端打印
    Https 下的打印在 https 环境下使用 FineReport10.0,支持使用本地打印功能支持本地打印 https 配置说明
    跨域打印-

    不支持 https 访问 http

    支持 http 访问 http

    支持 http 访问 https

    支持 https 访问 https

    -

    3. 打印设置

    3.1 设置方法

    3.1.1 服务器配置

    点击服务器>服务器配置>打印设置,可设置打印方式,对所有模板生效,如下图所示:

    2020-05-13_11-12-30.png

    3.1.2 模板配置

    点击模板>打印设置,可设置当前模板的打印方案,如下图所示:

    • 如选择采用服务器设置,则调用本文 3.1.1 服务器配置的方案。

    • 如选择为该模板单独设置,则可对当前模板进行自定义设置。

    2020-05-13_11-22-58.png

    3.2 零客户端打印

    零客户端打印设置内容如下图所示:

    image.png

    各项设置的定义如下表所示:

    设置
    定义
    打印时可设置打印边距勾选弹框对打印边距进行设置
    不勾选直接使用默认设置中的打印边距
    IE 浏览器中不显示打印设置勾选IE 浏览器使用静默打印功能
    不勾选IE 浏览器中显示打印设置
    针式打印优化勾选打印时,将文字字体替换为黑体以优化打印效果
    不勾选打印实际的文字字体
    继承页面边距设置勾选继承页面边距设置
    不勾选自定义设置上下左右的边距

    3.3 本地软件打印

    3.3.1 软件安装

    选择本地软件打印,需在服务器端安装 FinePrint 软件。用户可在服务器配置中设置软件下载地址,如下图所示:

    12.png

    设置的定义如下表所示:

    设置
    定义
    软件下载地址勾选打印软件的下载地址为为默认地址(FineReport 提供的下载地址)
    不勾选可以自定义下载地址,当客户使用的是内网时,可以设置内网地址来下载
    打印软件端口号IE 浏览器使用静默打印功能

    3.3.2 基础设置

    本地软件打印设置内容如下图所示:

    image.png

    设置的定义如下表所示:

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

    默认不勾选。

    勾选后,打印时,点击打印按钮弹出如下弹窗,默认选中所有 sheet,如下图所示:

    222

    注:分页预览不支持。

    打印机支持报表绑定打印机,自动获取本地可用的打印机,无可用打印机时,显示为空
    份数打印的份数,默认为 1 份
    页码

    默认打印所有页

    勾选指定页时,在后面文本框中输入符合格式要求的数值

    勾选双面打印,可以设置打印奇数页或者打印偶数页

    纸张勾选继承页面纸张设置
    不勾选在下拉框中设置需要打印的纸张大小。
    布局勾选继承页面布局设置
    不勾选自定义设置页面是纵向还是横向打印,默认为纵向
    边距勾选继承页面边距设置
    不勾选自定义设置页面的上下左右边距
    缩放勾选根据纸张大小缩放打印
    不勾选自定义缩放的比例

    4. 打印按钮

    点击模板>模板 Web 属性,根据模板类型选择分页预览设置填报页面设置数据分析设置,设置为该模板单独设置,双击打印按钮,在工具栏中新增打印按钮,如下图所示:

    2020-05-14_11-36-46.png

    注1:老的打印按钮,显示为「打印(兼容)」。

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

    5. 打印权限

    JAR 包时间在 2020-04-26 及之后的 FineReport,新增打印鉴权机制,打印权限受 模板认证 权限控制。

    打印鉴权机制适用于本地打印零客户端打印和兼容的多个打印方式( PDF 打印Flash 打印),服务器端打印不受限制。

    注:跨域情况下打印,模板认证控制打印权限功能需要做单点登录,否则无法支持模板认证。

    5.1 打印鉴权机制

    情况
    打印权限提示
    模板认证关闭任何用户可打印任何模板-

    模板认证开启

    模板无需认证

    模板认证开启

    仅认证用户密码

    登录用户可以打印任何模板

    未登录用户打印时提示:请登录后进行打印

    模板认证开启

    角色权限认证

    登录用户可以打印有权限的模板

    登录用户打印无权限模板时提示:此用户无权限打印该模板

    未登录用户打印时右上角提示:请登录后进行打印

    模板认证开启

    数字签名认证

    通过数字签名认证的用户可以打印有权限的模板

    通过数字签名认证的用户打印无权限模板时提示:此用户无权限打印该模板

    未通过数字签名认证的用户打印时提示:此用户无权限打印该模板

    5.2 示例

    当打印无权限模板时,右上角出现提示信息:此用户无权限打印该模板,如下图所示:

    企业微信截图_15878757462449.png

    6. 注意事项

    6.1 注意事项一

    描述:升级至 2020-04-26 之后的 JAR 包,打印软件不生效。

    解决方案:升级打印软件 FinePrint 至 V5 版本即可。

    6.2 注意事项二

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

    222

    解决方案:点击 下载安装,下载并启动本地打印软件。

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

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

    注3:若机器性能较差,会导致首次启动消耗时间较长。出现以上报错时请耐心等待,或稍后再次尝试打印即可。

    6.3 注意事项三

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

    注:IE11 有些小版本可能不兼容,更换浏览器即可。

    222

    解决方案:在 IE 浏览器下进行打印时,需要启用管理加载项中的 PDF Reader 控件,否则提示“安装”警告或打印出来的文件名默认 ReportSerber,如下图所示:

    222

    6.4 注意事项四

    描述:Tomcat 上调用 FR 工程的本地打印,如果 Tomcat 上无 FR 工程,下面这个请求报错 404,且该问题在 Finereport 10.0 和 Finereport 9.0 中都会出现。具体情况如下图所示:

    http://localhost:8080/WebReport/ReportServer?op=resource&resource=/com/fr/web/core/js/socket.io.js

    222

    原因:执行 FineReport.js 的时候,会尝试从本服务器上加载资源,而调用者的服务器上,没有报表工程,加载不到资源,所以报错。 

    解决方案:在跨域调用新打印时,需要额外引入两个js,分别是 socket.io.js 和 jquery.watermark.js (引入位置在 FineReport.js 后面),示例代码如下所示:

    <script type="text/javascript" 
    src="http://localhost:8075/WebReport/ReportServer?op=resource&resource=/com/fr/web/core/js/socket.io.js"></script>
    <script type="text/javascript"
    src="http://localhost:8075/WebReport/ReportServer?op=resource&resource=/com/fr/web/core/js/jquery.watermark.js"></script>

    注:Tomcat 下不能有报表工程。

    附件列表


    主题: 报表应用
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!