linux,国产操作系统 web 打印工具的选择

软件系统国产化脚步越来越快,在linux系统上如何实现web网页,pdf文件的打印,项目经理又面临新的选择,作为web打印工具的开发人员,我把我们产品开发思路、各种方案的优、缺点,在这里和大家作一个分享,以备读者诸君打印工具选型时参考。

现在基于浏览器的web打印工具,实现方式有:

一、纯javascript 打印工具,代表产品有hiprint http://www.httpprinter.com/

此类工具,采用纯 javascript ,将打印相关的 css,如page-break, 纸面大小,封装成好用的js api调用。

优点:

  1. 客户端不需要安装本地软件包,部署,升级都非常方便;
  2. 没有本地支行的包,稳定性非常好;
  3. 浏览器、设备的兼容性非常好,window和linux统吃。

 缺点:

此类工具,最后实际上就调用了浏览器方法 window.print, 打印工具运行在浏览器sandbox中,功能很受限,比如:

  1. 无法获取打印机列表,无法在页面中,让用户选择打印机;
  2. 无法设置默认打印机,每次打印必须弹窗让用户选择,不胜其扰;
  3. 无法用javascript来创建自定义纸张,必须事先设置好。

推荐建议:★★★★☆

推荐打印频度不高,对打印控制要求不高的项目,比如,不需要创建自定义纸张,用户每次打印选择打印机,可以接受。

二、javascript+java代理,代表产品 Strato WebPrinter https://www.webprinter.cn/

       此类工具,前端采用javascript ,将一些打印、获取打印机列表等调用,通过http协议,发送到java代理,最终由java环境中,调用本地打印命令。

优点:

  1. 实现简单,无须多平台编译;
  2. 跨操作系统,容易做到windows、国产系统的api兼容。

缺点:

  1. 安装包巨大,因为要安装 jre, Strato WebPrinter 有100M以上;
  2. 功能受java环境局限,无法扩展,java环境本身打印功能很有限,架构其上的打印系统,必更局促;
  3. 无法打印预览。

推荐建议:★★★★☆

       适合不需要打印预览的项目。

三、javascript+ c++代理,代表产品 杰表云打印 http://print.jatools.com

此类工具,前端采用javascript,将打印相关调用,发送给本地的c++代理程序,最终由c++代理程序调用系统的打印子系统,比如 cups.。

缺点:

  1. 实现复杂,需要多平台编译,比如 ARM,X86,MIPS64.;
  2. 安装包需要分cpu管理,不能混用;

优点:

  1. 安装包小,30M;
  2. 扩展性好,可以挖掘操作系统打印子系统的所有功能;
  3. 通过友好封装js,做到windows和国产系统100%兼容,使原来windows上的jcp客户,无缝扩展到国产系统上来,原项目不需要重新开发。;
  4. 支持打印预览;
  5. 通过麒麟、统信UOS两大操作系统官方认证;
  6. 已经适配操作系统:中标麒麟桌面版、银河麒麟、中标麒麟桌面版 、深度(deepin) 、UOS 20.0、方德;
  7. 支持芯片包括龙芯、飞腾、鲲鹏、兆芯。

推荐建议:★★★★★

       推荐打印频度高,对打印控制要求高,稳定性、售后支持要求高的大型项目。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值