更新记录
6.9.4.2(2023-02-16) 下载此版本
增加进度条
6.9.4.1(2023-02-12) 下载此版本
首次提交
平台兼容性
Vue2 | Vue3 |
---|---|
√ | √ |
App | 快应用 | 微信小程序 | 支付宝小程序 | 百度小程序 | 字节小程序 | QQ小程序 |
---|---|---|---|---|---|---|
HBuilderX 3.4.1 app-vue app-nvue | √ | √ | √ | √ | √ | √ |
钉钉小程序 | 快手小程序 | 飞书小程序 | 京东小程序 |
---|---|---|---|
√ | √ | √ | √ |
H5-Safari | Android Browser | 微信浏览器(Android) | QQ浏览器(Android) | Chrome | IE | Edge | Firefox | PC-Safari |
---|---|---|---|---|---|---|---|---|
√ | √ | √ | √ | √ | √ | √ | √ | √ |
智睦云打印小插件
组件名:webprinter 代码块:
` 关联组件:
uni-popup,
uni-transition`
在应用中展示打印交互界面,提供完整的打印参数设置,及打印功能
安装方式
将本组件解压至工程同级目录,解压后目录为components/webprinter
获取Access-Token
首先进入智睦云开发者中心(https://any.webprinter.cn/devcenter),点击"成为开发者"注册为开发者。 按提示完成注册,进入开发者中心,即可创建应用。 应用创建后,在Access Token右侧点击"生成",即可获取测试token。
注: 1.实际生产运行时需通过getToken接口更新token,文档 2.接口生成和开发者控制台手动生成的Access-Token是同一个,请谨慎操作
基本用法
示例
<view>
<print-task tagName="userId" :tagValue="currentUserId" :token="token" @startprint="onStartPrint" @endprint="onEndPrint" @userexit="onUserExit" :size="123456" name="test.pdf" mediaFormat="PDF" content="https://download.webprinter.cn/doc/testpdf.pdf" mediaSource="URL"></print-task>
</view>
export default {
data() {
return {
currentUserId:'user001',//本示例以用户为标签,打印机列表返回归属于用户的打印机;同时,通过共享码添加的打印机也归属于用户
token:"809b661150464862a16762b0d60d03b4",//应用的access-token,可到智睦云开发者中心创建应用并获取
}
},
methods:{
onStartPrint(e){
//用户点击打印时触发
console.log("start print",e)
},
onEndPrint(e){
//打印完成时触发
console.log("end print",e)
},
onUserExit(e){
//用户点击关闭或返回时触发
console.log("user exit",e)
}
}
}
API
Webprinter Props
属性名 | 类型 | 说明 |
---|---|---|
token | String | 必填项,应用访问令牌,需要通过AppId和AppKey调用后台接口换取,详见OpenAPI:getToken |
name | String | 必填项,任务名称,建议不超过32个字符(一个汉字占两个字符) |
mediaSource | String | 必填项,文档来源。可以是'URL'或'STRING',若待打印的文档是网络地址则传'URL',若待打印的文档是HTML片段则传'STRING' |
mediaFormat | String | 必填项,文档格式。可以是'PDF','HTML','JPG','PNG','WPS','WORD','EXCEL','PPT','TEXT',文档格式必须要和打印内容的格式相匹配,否则将打印失败 |
content | String | 必填项,打印的内容。当mediaSource=='URL'时,传入文档的URL;当mediaSource=='STRING'时,传入待打印的HTML片段(此时mediaFormat='HTML') |
size | Number | 选填,打印内容的文件大小,单位为字节 |
initialDeviceName | String | 初始设备名称,详见"设备标识" |
initialControlSn | String | 初始客户端SN,详见"设备标识" |
initialPageRanges | String | 初始页面范围,详见"打印参数字典" |
initialPaperWidth | Number | 初始页面宽度(毫米),详见"打印参数字典" |
initialPaperHeight | Number | 初始页面高度(毫米),详见"打印参数字典" |
initialCopies | Number | 初始份数,详见"打印参数字典" |
initialOrientation | String | 初始方向,详见"打印参数字典" |
initialColor | String | 初始色彩,详见"打印参数字典" |
initialSide | String | 初始单双面,详见"打印参数字典" |
initialQuality | String | 初始打印质量,详见"打印参数字典" |
initialCollate | String | 初始分页设置,详见"打印参数字典" |
initialPagesPerSheet | Number | 初始索引,详见"打印参数字典" |
scanForDeviceEnabled | Boolean | 是否支持扫码选择打印机(可从客户端/小程序打印二维码) |
tagName | String | 标签名,参见"设备标签" |
tagValue | String | 标签值,参见"设备标签" |
Webprinter Methods
方法称名 | 说明 | 参数 |
---|---|---|
执行打印 | - | |
getWebprinterInstance | 获得com.strato.Webprinter实例 | - |
Webprinter Events
事件称名 | 说明 | 返回值 |
---|---|---|
beforestartprint | 用户点击立即打印时触发 | e={task:任务详情,proceed:是否继续处理,程序可以修改该值以拦截任务} |
startprint | 用户点击立即打印时触发 | e={task} |
endprint | 打印完成时触发 | e={taskId,taskStatus:'FINISHED'(成功),'ERROR':'失败','CANCELED':'用户或打印机取消'} |
userexit | 用户点击完成或返回时触发 | e={printed:是否成功打印} |
errmsg | 发生错误时触发 | e={code,message} |
打印机上云指南
智睦云的产品架构可分为三部曲:上云、分配和打印,用户只要完成简单的上云操作,即可享受云打印带来的高效与便利。 Webprinter插件要能够正常使用,首先需要将打印机上云,即将打印机在智睦云打印平台共享出来。 共享的方式有两种:智睦云打印客户端软件和智能打印云盒
智睦云打印客户端
可至官网下载(d.webprinter.cn)智睦云打印客户端,并在打印机连接的电脑上安装。 安装后,双击任务栏图标,在弹出的管理界面中完成打印机共享后,即可获得共享码。
智睦云打印智能云盒
可至淘宝店(https://item.taobao.com/item.htm?id=692971254370)在线下单购买或联系商务QQ:2494358439购买。
收到货后,先将网线连接至路由器WAN口,待绿灯停止闪烁,则可扫码完成配对并配置WIFI。
WIFI设置完毕即可拔下网线,并插上打印机USB线后,跟随小程序提示完成驱动设置即可使用。
关于收费及批量采购
智睦云打印API接口属于推广阶段,暂不收取流量费用,但用户需要支付软件收取(按打印机数量)或购买云盒。未来可能根据任务数或页数收取基础流量费用,请关注“智睦云”微信公众号并留意公告。
对于自用的应用系统,可按需购买软件授权或云盒;对于平台型应用,可联系商务QQ:2494358439咨询代理价格。
设备标识
由于智睦云支持多终端、多类型的设备管理,因为设备标识由3个字段来描述,分别是:
- 设备名称deviceName:设备名称,一般是操作系统的打印机名称。
- 共享端编号controlSn:controlSn代表一个客户端的实例,即一台电脑,在客户端安装时自动生成。
- 设备类型deviceType:这里固定为'printer',由于组件只做打印动作,所以也可以忽略。
在调用接口时,当需要指定一台设备时,必须组合使用deviceName、controlSn和deviceType,例如:
let device={
deviceName:'Canon MF3010',
controlSn:'Ir1x0adJ',
deviceType:'printer'
}
打印参数字典
智睦云打印支持文档打印的常用参数,具体包括:
- 纸张大小(paper):纸张的大小通过宽度(width)和高度(height)来描述,单位是毫米。例如,A4纸的宽度是210,高度是297。
- 份数(copies):即打印多少份
- 色彩(color):'COLOR'-彩色打印,'MONOCHROME'-黑白打印
- 方向(orientation):'PORTRAIT'-纵向,'LANDSCAPE'-横向,'REVERSE_PORTRAIT'-纵向反转
- 单双面(side):'ONESIDE'-单面,'DUPLEX'-双面(短边翻转),'TUMBLE'-双面(长边翻转)
- 质量(quality):'DRAFT'-草稿,'LOW'-低,'NORMAL'-正常,'HIGH'-高
- 自动分页(collate):'COLLATE'-逐份打印(1,2,3,1,2,3),'UNCOLLATE'-非逐份打印(1,1,2,2,3,3)。collate只有当copies>1时才有意义。
设备标签
若设置了tagName和tagValue,则插件在查找打印机列表时会以tagName和tagValue时作为筛选条件,且用户添加打印机时会打上tagName=tagValue的标签。每次使用控件可设置一个标签,一个应用最多支持5个标签名。 标签的存在主要是为了应对多用户/多租户平台下打印机的归属问题。 例如,对于某个自建的应用,如果需要将打印机按用户归类,可以用
<print-task tagName="userId" :tagValue="user.userId" ...></print-task>
对于某个SAAS平台,打印机是以企业租户为维度共享的,则可以用
<print-task tagName="tenantId" :tagValue="user.tenantId" ...></print-task>
开放接口体系
借助于灵活的云设备共享基础设施,智睦云提供多样化的编程接口方式,以应对千差万别的应用场景。
- 云端OpenAPI:文档 https://doc.webprinter.cn/web/#/12/54
- 云端JSAPI:文档撰写中待发布
- 客户端OpenAPI:文档 https://ss.webprinter.cn/apidoc/clientapi.pdf
- 客户端JSAPI(原WebPrinter打印控件JSAPI):文档(旧版) https://doc.webprinter.cn/web/#/12/53
说明 云端接口(OpenAPI和JSAPI)调用无需所有用户安装客户端,只需打印机共享端安装客户端或接入智睦云智能云盒;用户必须接入互联网 客户端JSAPI接口要求每个打印用户均安装客户端,支持全内网工作模式,无需接入互联网 客户端OpenAPI接口只需共享打印机的电脑安装客户端,支持全内网模式,无需接入互联网;请自行打通应用服务器与提供接口的客户端之间的网络互联