Web打印控件RTPrinter的用法

本文介绍了如何在Web开发中使用RTPrinterweb打印控件,包括下载安装、模板结构、配置参数和各种方法,如打印、获取打印机列表等,以满足静默无预览打印的需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在日常开发中,经常会遇到web打印的需求,很多时候,需要静默打印,然而浏览器一般不支持无预览打印,这时就需要借助一些打印控件来实现这个需求了。本文将介绍RTPrinter web打印控件的用法。

一、下载安装

使用RTPrinter前,需要在页面中引入一个js文件,可从下面的链接引入,

http://cdn.dadang.cn/rtp.js ,也可以将js下载到本地引入。

引入js后,通过调用getRTP()方法可以获取到一个打印实例,调用实例的check()方法可以检测是否下载安装了控件,如果没有安装,会自动下载安装包gzprinter.zip,解压后,运行setup.exe安装即可。

getRTP().check();

二、打印模板结构

RTPrinter支持直接打印html模板,模板结构如下:

<div class="rtp-template">
    <div class="rtp-header">这里是头部要打印的内容</div>
    <div class="rtp-item">
        <table>
            <thead>
            </thead>
            <tbody>
            </tbody>
        </table>
    </div>
    <div class="rtp-footer">
        这里是尾部要打印的内容
    </div>
</div>

头部和尾部一般用于放置表头和表尾内容,可以是任意结构的html。

rtp-item中放置要打印的表格,当表格内容超长时,会自动分页打印,分页时可选是否每页中都包含列名行。

模板中的三部分都是可选的,可以根据需要取舍。如果要打印的内容可能超过一页时,建议将这部分放置到rtp-item中,并以表格的形式呈现,因为这样能自动分页打印。

三、配置参数

var defaults = {
        rtp_header: ".rtp-header",  //模板头选择器
        rtp_footer: ".rtp-footer",  //模板尾选择器
        rtp_item: '.rtp-item',      //模板表格选择器
        font: {
            name:'Verdana, Geneva, sans-serif',  //打印使用的字体
            size: '12pt'  //打印字体大小
        },
        printer: {
            name: '',    //可指定打印机名称,不指定则使用默认值
            paperName:'',  //可指定纸张名称,不指定则使用默认值
            pageWidth: 210,   //纸张宽度,单位mm
            pageHeight: 297,  //纸张高度,单位mm
            dpi:96,  //打印机分辨率
            landscape: false,  //是否横向,true:横向 false:纵向
            copies:1  //打印份数
        },
        margins: {
            top: 40,  //打印上边距,单位px
            bottom: 40,  //打印下边距,单位px
            left: 40,  //打印左边距,单位px
            right:40  //打印右边距,单位px
        },
        usePager:true,  //是否在页尾显示页码
        pagerNumStyle: "第#p页/共#P页",  //页码显示样式
        preview: false,   //是否预览打印,true:预览 false:不预览直接打印
        appendTheadPerPage: true,  //自动分页时是否每页都带上列名
        downloadUrl:'http://shop.wanyouyinli.com/download/rtprinter.zip', //控件下载地址
        token:''  //授权码,无授权码可免费试用30天
    };

这些参数可以在getRTP(options)时指定,也可以通过getRTP().settings.xx修改。

四、支持的方法

4.1 获取打印实例

getRTP(options)

options:参考配置参数进行传递

4.2 打印

print(template,callback)

template:要打印的模板css选择器,例如:#template。该模板中的内容会被发送到打印机打印。

callback:打印回调函数。

4.3 获取打印机列表

getPrinterList(callback)

callback:获取到打印机列表后的回调函数,参数包含了打印机列表。

4.4获取纸张

getPapers(printerName, callback)

printerName:打印机名称

callback:回调函数,参数包含了指定打印机支持的纸张列表

4.5获取打印机分辨率

getPrinterDpi(printerName, callback)

printerName:打印机名称

callback:回调函数,参数包含了指定打印机的分辨率

4.6检测打印控件是否安装

check()

五、总结

根据配置参数和方法,可以很容易打印页面中指定的html模板,支持指定打印机、指定纸张、指定打印方向、指定打印份数、自动分页。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值