智能打印SDK---官方博客

news/2024/11/29 7:50:17/

(开源准备:也算是笔者从业以来第二个作品了,谢谢博客园编辑审核团队,欢迎置顶。欢迎转载。开源为百度云打包开源)

 演示站点+源码 均在github 

迁徙至github: https://github.com/micro-chen/WebPrinter

 智能打印SDK-官方群 547747202

 

开源地址:http://www.dnnode.com/

 

电子商务越来越成熟,提供的服务越来越完善。在关键的发货打印快递单这个节点,总是出现各种瓶颈。主要问题是各种软件应用与打印机的交互,要么兼容差,要么效率低。针对这种情况,淘宝旗下的菜鸟物流,独自研发出了自己的打印组件--菜鸟打印组件。
但是这个组件只能在浏览器的极速模式下运行。兼容模式无法运行。导致现在国内主流的PC浏览器,无法在兼容模式下享受菜鸟打印组件的高效快捷。
按照菜鸟官方文档:http://cloudprint-docs-resource.oss-cn-shanghai.aliyuncs.com/faq.html
1、菜鸟打印组件支持哪些浏览器?* IE 11及以上* chrome 16及以上(建议使用chrome的最新版本)* Firefox 45及以上(建议使用firefox的最新版本)* 搜狗浏览器(极速模式)* 360浏览器(极速模式)* QQ浏览器(极速模式)2、我用的是搜狗浏览器(或360浏览器、QQ浏览器),为什么无法打印?* 请尝试将这些浏览器切换到极速模式(或闪电模式),如果还是打印不了,建议使用chrome3、需要安装哪些软件?* 上述浏览器的一种或几种* 菜鸟打印组件* 预览模式下需要安装pdf软件(可选)4、支持的操作系统有哪些?* Windows XP SP3* Windows Vista/7/8/10* 上述操作系统的32位和64位均支持
为什么不能支持兼容模式?因为浏览器的兼容模式,是基于微软的IE渲染内核Trident。老版本的IE不支持WebSocket协议。如何能做到兼容所有浏览器呢?
软件名称
智能打印SDK
开发商
第恩工作室
软件平台
WinXP/Win7/Win8/Win10
软件版本
1.1
更新时间
2017-02-25
软件语言
C/C++/C#/Javascript
软件大小
24M
软件授权
免费

目录

  1. 产生背景
  2. 发展历程
  3. 开发简单
  4. 主要功能
  5. 版本更新

产生背景

互联网发展到了一个新的阶段。伴随互联网衍生出来很多周边产品。社交网站、搜索引擎、电子商务等。其中最切实影响人们生活的是电子商务。彻底颠覆了人们的消费习惯。从网上购物,在线支付,物流发货,一条完整的链条,方便了消费,促进了经济发展。
在电子商务这个简单的产业链条中。基本模式链,下单->支付->发货。在最关键的发货环节上,出现了各种参差不齐的服务产品和物流快递公司。百花齐放的快递市场,既有顺丰这样的巨头,也有各种正在转型或者新起之秀。
快递服务商与广大卖家的合作,基本上分为两种:1 传统的信函方式的机打单 2 新型的电子面单。
传统的纸质面单,经济实惠。但是每家快递服务商,都有自己的内容模板。格式的不统一,导致无法进行机器分拣。耗费大量纸张,人工分拣,费力费事,差错大,对快件也可能造成不可逆的损坏。
新型电子面单的出现,就是为了解决上述问题而出现的。
电子面单是一个大的趋势。目前而言,菜鸟物流较为成熟。从淘宝后台商家的发货服务对接,到菜鸟各个分站点之间,形成基于互联网通信为基础,电子面单为凭证介质的通信模式。
菜鸟官方独立研发出菜鸟打印组件,直接将商家发货服务软件和打印机硬件做联合。性能高效稳定,体积小,开发扩展成熟灵活。但是菜鸟打印组件的通信协议是基于TCP的Web套接字----WebSocket。
WebSocket是HTML5的通信一种,优点不谈了,有目共睹。但是HTML5只能说代表未来,或者说可能代表未来。真正的HTML5现在仍然在一个混战的舞台。大量的老版本的操作系统和浏览器仍旧存有相当大的市场。
所以,既能向后支持,也能向前支持老版本的技术平台,尽量能够兼容主流的操作系统和浏览器,是一项很大的挑战。当前菜鸟打印组件做到了向后的支持。那么兼容模式,老版本的IE8/9/10怎么支持兼容呢?
基于传统的浏览器插件的方式,对浏览器开发附件插件。但是开发难度大,而且版本管理迭代慢,维护成本高。
如果能通过统一的通信协议,直接将请求指令发送到本机程序应用,那么就可以解决浏览器与本地应用的通信瓶颈。毫无疑问-HTTP协议这种最基本的通信协议是最有效的。

发展历程

从确定技术框架,选型开发,到编码,测试。【智能打印SDK】经过了层层筛 选。最终采用了 C/C++/C#混合模式的开发。
基于C/C++做客户端进程激活。基于C#做 Web通信承载。
需要注意的是:虽然客户端选择了C#开发承载程序,本程序不强制安装微软提供的.Net Framework完整安装包。考虑到.NET的运行时体积大,安装慢这种致命的瓶颈,才经过大量的资料调研测试,我们将微软的.Net Framework精简体积,直接打包到【智能打印SDK】的安装包中。软件总共体积不到24M大小。安装速度快,占用体积下,功能全面。
软件从beta内侧到现在的1.1版本。兼容目前Windows 系列所有的操作系统和主流的PC浏览器。不区分极速模式和兼容模式。稳定,效率高。

开发简单

【智能打印SDK】为免费软件。客户端开发Javascript库完全开源。软件官方提供下载。包含示范代码,在线展示。引入js文件后,直接将通信协议切换到http协议即可。不需要对路径,命令做更改。js库对WebSocket接口做了封装,所以,不用考虑回调的问题。效果完全如同WebSocket的,做到无差别切换。
1
2
3
4
5
6
7
8
//发送完数据后的回调
var  client = PrinterHttpClient.createNew();
client.onmessage =  function (){
  //回调函数
};
client.send(Msg);
        

主要功能

菜鸟打印组件支持兼容模式的桥梁。兼容目前Windows 系列所有的操作系 统和主流的PC浏览器。不区分极速模式和兼容模式。
软件支持哪些系统?
  Windows平台下的主流操作系统,目前测试包含:Windows XP、Windows Vista、Windows 7、Windows 8、Windows 8.1、Windows 10。
  软件支持哪些浏览器?
  目前测试所有主流的PC浏览器均可以稳定运行。包括:IE6/7/8/9/10/11 edge。Chrome、火狐、360浏览器、搜狗浏览器、百度浏览器、
  猎豹浏览器、QQ浏览器等。支持极速模式和兼容模式。
  如何使用?
  1. 使用者 直接下载SDK组件安装即可。
  2. 开发者
  开发者需要在Web页面,将智能打印SDK的支持脚本引入到页面。(在脚本压缩包是一个完整的通信示范。)然后安装SDK组件。即可使用。
  由于打印核心是基于菜鸟打印组件,所以,所有的使用文档可以参考菜鸟官方的。只是交互通信的协议从TCP变为HTTP。也就是本组件不
  仅仅支持 WebSocket 的方式 。也支持HTTP的方式。推荐基于HTTP的方式。这样才能兼容全部的PC浏览器!!!!

版本更新

软件下载地址:http://www.dnnode.com/
在线展示:http://www.dnnode.com/help.html

转载于:https://www.cnblogs.com/micro-chen/p/6452518.html


http://www.ppmy.cn/news/753568.html

相关文章

使用UAC白名单让指定的程序不受UAC限制

使用UAC白名单让指定的程序不受UAC限制 1. 关闭UAC的隐患 我的上一篇博文关于Windows_8.1/Windows7下普通用户运行软件提示需要输入管理员密码解决方法

Netflix创始人:我不要求996,一样市值1万亿!

往期热门文章:1、《往期精选优秀博文都在这里了!》 2、17 张程序员专属壁纸,太太太太太太骚了… 3、刚刚,腾讯每人发100股:市值7万,不算年终奖!员工:愿为小马哥拼命 4、在 IDEA 中用…

树莓派 3B+ 使用微雪2-CH CAN FD HAT

准备 目标 疫情在家,想着用树莓派3B,通过CAN卡接收CAN数据,外接触摸屏,实时显示CAN数据。计划使用python作为开发语言,用pyqt库界面开发,can卡尽量选择低成本解决方案。 kvaser和pcan是比较常用的can接口…

关于Windows_8.1/Windows 7下普通用户运行软件提示需要输入管理员密码解决方法

转载:https://blog.51cto.com/linuxprince/1968552 问题起因 最近遇到一个比较棘手问题,顺丰速运修改了快递单填写方式,必须要安装他们公司开发的一个软件(软件名叫“速打线下用户专用版”),这个软件非常奇…

web页面解析流程及其相关知识(http、https、cdn、waf)

理解 web 页面解析的过程,总结其中涉及的基础知识和可能存在的安全问题。 Web 页面解析的总体流程 客户端(浏览器)发起页面请求,主机对 地址中的DNS 域名进行解析,找到对应的 IP 地址,请求发送到 服务端&…

Node.js全栈开发笔记与心得

highlight: a11y-dark 一、Node.js 全栈开发资料 1、前端入门基础 慕课网HTML CSS入门慕课网JS入门 javascript进阶篇 菜鸟教程html部分 菜鸟教程CSS部分阮一峰js入门 阮一峰es6教程 2、node 后端入门基础 node入门 Linux基础知识mysql数据库知识 数据库事务sequelize中…

py17_Python 编程基础文件操作

################################################## 目录 活动简介 Python 编程基础文件操作 文本文件和二进制文件 操作文件的固定步骤 Python 操作文件的固定函数 示例交互模式下如何打开操作一个文件 cmd 下利用命令行创建一个文本文件 Python 命令行中打开一个文…

深度linux跟windows,不服跑个分:深度操作系统Deepin与Win10性能对比测试

本内容来源于@什么值得买SMZDM.COM|作者:九度十二分 之前的一篇文章,我初步介绍了深度操作系统的软件使用。看过我文章的朋友,一定可以发现,仅仅是日常的上网购物,办公用网页,深度操作系统已经完全具备取代Win10的能力了。那么,究竟深度操作系统Deepin的性能怎么样呢?…