CN114721606A - 云桌面打印处理方法和*** - Google Patents
云桌面打印处理方法和*** Download PDFInfo
- Publication number
- CN114721606A CN114721606A CN202210192868.0A CN202210192868A CN114721606A CN 114721606 A CN114721606 A CN 114721606A CN 202210192868 A CN202210192868 A CN 202210192868A CN 114721606 A CN114721606 A CN 114721606A
- Authority
- CN
- China
- Prior art keywords
- printed
- data
- printer
- cloud
- original image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007639 printing Methods 0.000 title claims abstract description 40
- 238000003672 processing method Methods 0.000 title claims abstract description 12
- 238000006243 chemical reaction Methods 0.000 claims abstract description 28
- 238000000034 method Methods 0.000 claims abstract description 24
- 238000012545 processing Methods 0.000 claims description 25
- 230000006835 compression Effects 0.000 claims description 7
- 238000007906 compression Methods 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 abstract description 22
- 238000009877 rendering Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000002085 persistent effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000006837 decompression Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 239000002355 dual-layer Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000010410 layer Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1206—Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1211—Improving printing performance
- G06F3/1212—Improving printing performance achieving reduced delay between job submission and print start
- G06F3/1213—Improving printing performance achieving reduced delay between job submission and print start at an intermediate node or at the final node
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1224—Client or server resources management
- G06F3/1225—Software update, e.g. print driver, modules, plug-ins, fonts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1244—Job translation or job parsing, e.g. page banding
- G06F3/1247—Job translation or job parsing, e.g. page banding by conversion to printer ready format
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1284—Local printer device
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
公开了一种云桌面打印处理方法和***。所述方法包括:从预设通道获取经压缩的待打印数据;对获取的经压缩的待打印数据进行解压,获取原始图像格式的待打印数据;以及转换所述原始图像格式的待打印数据以适配打印机接口。本发明通过在云侧安装打印机驱动并将驱动渲染得到的原始图像格式数据经由预设通道传送至端侧来解决兼容性和传输效率问题。端侧则可根据打印机的类型来选择合适的数据转换方案,将从预设通道获取的原始图像格式数据进行数据转换以实现兼容各类打印机的本地打印。
Description
技术领域
本公开涉及云技术,尤其涉及一种云桌面打印处理方法和***。
背景技术
云桌面是一种易用、安全、高效的云上桌面服务,通过在云端虚拟主机所包含的CPU、内存、硬盘等的组件,使得用户无需再购买电脑主机,便可以实现便捷、高效的电脑使用体验。
在实际使用时,可以采用专门的瘦客户机连接显示器和键鼠,用户安装客户端后通过特有的通信协议访问云端的虚拟机主机来实现交互式操作,达到与电脑一致的体验效果。
瘦客户机通常利用更为紧凑的处理芯片(例如,ARM芯片)和处理***(例如,Linux***)实现。当用户需要进行打印时,针对瘦客户机的各种现有打印机重定向方案存在工作效率低或是兼容性差等的问题。
为此,需要一种更为高效且兼容性良好的云桌面打印处理方案。
发明内容
本公开要解决的一个技术问题是提供一种云桌面打印处理方案,该方案通过在云侧安装打印机驱动并将驱动渲染得到的raw数据经由预设通道传送至端侧来解决兼容性和传输效率问题。端侧则可根据打印机的类型来选择合适的数据转换方案,将从预设通道获取的raw数据进行数据转换以实现兼容各类打印机的本地打印。
根据本公开的第一个方面,提供了一种云桌面打印处理方法,包括:从预设通道获取经压缩的待打印数据;对获取的经压缩的待打印数据进行解压,获取原始图像格式的待打印数据;以及转换所述原始图像格式的待打印数据以适配打印机接口。
可选地,从预设通道获取经压缩的待打印数据包括如下至少一项:经由云桌面网络通道中的新增端口获取经压缩的待打印数据;以及基于特定的协议字段包头获取经压缩的待打印数据。
可选地,从预设通道获取的所述经压缩的待打印数据包括:经压缩和加密的原始图像格式的待打印数据,所述原始图像格式为raw格式。
可选地,所述方法还包括:发送待打印文件的打印参数,并且从预设通道获取的经压缩的待打印数据包含基于所述打印参数配置的待打印数据。
可选地,从预设通道获取的经压缩的待打印数据的压缩程度基于发送待打印文件的打印参数确定。
可选地,转换所述原始图像格式的待打印数据以适配打印机接口包括:获取物理打印机的接口信息;以及基于与所述接口信息相适配的转换配置,对上述原始图像格式的待打印数据进行数据转换。
根据本公开的第二个方面,提供了一种云桌面打印处理***,包括云端和终端,其中,所述云端包括:云应用,用于将待打印文件发送给打印机驱动;所述打印机驱动,用于将接收到的所述待打印文件转换成原始图像格式的待打印数据;打印机服务端,用于将原始图像格式的待打印数据进行压缩并经由预设通道进行发送,所述终端包括:打印机客户端,用于从所述预设通道获取经压缩的待打印数据,并对获取的经压缩的待打印数据进行解压,获取原始图像格式的待打印数据;以及数据转换模块,用于根据打印机的类型,转换所述原始图像格式的待打印数据以适配对应的打印机接口。
可选地,所述终端将获取的打印机型号信息发送给所述云端,并且所述云端用于:选择与所述打印机型号信息相匹配的打印机驱动,用于将所述待打印文件转换成与所述打印机型号相适配的原始图像格式的待打印数据。
可选地,所述打印机服务端和所述打印机客户端约定在所述预设通道上传输的经压缩的待打印数据的数据包长度,所述数据包长度大于USB协议包长度的上限。
根据本公开的第三个方面,提供了一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当可执行代码被处理器执行时,使处理器执行如上述第一方面所述的方法。
根据本公开的第四个方面,提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当可执行代码被电子设备的处理器执行时,使处理器执行如上述第一方面所述的方法。
由此,本发明通过将打印机驱动安装在云桌面,使得能够基于端侧使用的具体打印机型号,在云桌面直接安装对应型号的原装驱动,从而解决了驱动兼容问题,并且利用云端的算力提升了打印机数据的渲染效率。进一步地,本发明还通过压缩raw数据的预设通道传输结合端侧的数据转换模块,在保证了传输效率的同时,使得端侧能够直接通过软件的数据转换兼容各种打印机端口,从而方便端侧对打印机的使用并且避免了对额外转换硬件的需求。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1A和1B示出了USB重定向打印机的两个例子。
图2示出了云桌面***的组成示意图。
图3示出了根据本发明一个实施例的云桌面打印处理方法的示意性流程图。
图4示出了根据本发明的一种云桌面打印处理***的***框图。
图5示出了根据本发明一个实施例可用于实现上述云桌面打印处理方法的计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
云桌面是一种易用、安全、高效的云上桌面服务。它支持快速便捷的桌面环境创建、部署、统一管控与运维。云桌面又称桌面虚拟化、云电脑,是替代传统电脑的一种新模式;采用云桌面后,用户无需再购买电脑主机,主机所包含的CPU、内存、硬盘等组件全部在后端的服务器中虚拟出来,单台高性能服务器可以虚拟多台虚拟主机。用户侧的终端设备则可以采用专门的瘦客户机(ThinClient,其后也被称为“TC”,是一种与电视机顶盒类似的小型化紧凑设备)连接显示器和输入设备(例如,键盘和鼠标),用户安装客户端后可以通过特有的通信协议访问后端服务器上的虚拟机主机来实现交互式操作,达到与电脑一致的体验效果。云桌面不仅支持用于替换传统电脑,还支持手机、平板等其他智能设备在互联网上访问。
云桌面无需前期购入传统硬件,能够快速构建安全、高性能的计算机使用体验,尤其适用于实现低成本的企业桌面办公体系。具体地,云桌面具有可以按需弹性创建的特性,可以灵活应对各种短期使用场景。由于数据保存在服务端,禁止客户端有任何留存;桌面内容显示通过协议做像素及传输,且经过加密处理,避免IP泄露,因此适用于数据安全管控场景。对于远程办公,多分支机构场景,则可通过互联网远程接入办公桌面,轻松纳管多地分支机构的桌面。支持多地AD(Active Directory,目录服务)域的连通,实现大型企业IT管理需求,提高协同办公效率。另外,还可以通过云上的高算力,提供高性能的GPU型桌面,满足专业制图,视频编辑,工业设计与建模等专业场景。
尽管云桌面存在如上诸多优点,但由于端侧的瘦客户机通常利用更为紧凑的处理芯片(例如,ARM芯片)和处理***(例如,Linux***)实现,因此当用户需要进行打印时,现有的打印方案存在诸多问题。
现有的云桌面打印方案之一是USB重定向方案。在常规的本地打印中,USB打印机经由USB总线驱动、USB打印机驱动来与应用程序进行交互。具体地,应用程序会把打印请求提交给USB设备驱动处理,再由USB设备驱动提交USB总线驱动处理,USB总线驱动在使得USB打印机进行打印。由此可知,在云桌面场景中,存在虚拟化USB打印机驱动和虚拟化USB总线驱动的两种方案。图1A和1B示出了USB重定向打印机的两个例子。
具体地,图1A示出了USB端口重定向的例子。如图1A所示,云端虚拟化的是USB总线驱动。在此,云端的应用程序将待打印文件交由虚拟机上的USB打印机驱动(即,VMUSB打印机驱动),VMUSB打印机驱动将打印机驱动渲染过的待打印数据提交给虚拟USB总线驱动,再由虚拟USB总线驱动提供给USB服务端。USB服务端将渲染过的待打印数据经由网络提供给端侧的USB客户端,上述数据的传输需要满足USB协议的需求。
端侧为TC(瘦客户机),USB客户端接收到的符合USB协议要求的USB数据包,并将其提供给虚拟USB驱动。虚拟USB驱动负责在TC总线和USB客户端之间双向传输数据。TC的USB总线驱动接收这些USB数据包并将其提供给USB总线,最后经由本地连接的USB打印机进行打印。该方法虽然能够在云端安装打印机驱动,但需要经由USB协议通道来进行端云数据传输。由于USB数据包较小,因此传输效率低,并且也无法支持端侧的网络打印机。
图1B示出了USB设备重定向的例子。USB设备重定向是在应用层的实现,通过在云端虚拟机上创建一个虚拟的USB外设驱动,来使得云端应用程序将该外设驱动看作是一个打印机,并向其发送数据。此时,TC上需要安装USB打印机驱动。对于整个***来说,虚拟USB外设驱动和TC上的USB打印机驱动本质上是两个不同的USB设备,而USB服务端和USB客户端负责维护两个驱动之间的数据通道。相比于图1所示的端口重定向,设备重定向的代理环节较少,因而数据传输速率更高,延时更低,然而图1B所示方案的问题在于TC端。首先,TC端的Linux***在安装USB设备驱动时会遇到兼容性问题。其次,哪怕USB设备驱动顺利安装,USB设备驱动和外设通道协议的USB客户端之间也可能会因为打印机厂家提供的不是遵循外设协议标准的驱动,而同样导致兼容性问题。
另外,现有技术中也有利用云桌面安装虚拟打印机,再把虚拟打印机的数据转发给终端打印机的方案。但该方法同样如图1B所示需要在TC端的Linux***内安装打印机驱动,同样会遇到兼容性问题。
为此,本发明提出了一种云桌面打印处理方案,该方案通过在云侧安装打印机驱动并将驱动渲染得到的raw数据经由预设通道传送至端侧来解决兼容性和传输效率问题。端侧则可根据打印机的类型来选择合适的数据转换方案,将从预设通道获取的raw数据进行数据转换以实现兼容各类打印机的本地打印。
在本发明云桌面打印处理方案的整体实现中,需要包括云端和客户端两方的参与。图2示出了云桌面***的组成示意图。如图所示,云端(服务器)100经由网络与客户端设备200连接。客户端设备200可以具有各类形态,例如200_1所示的智能电话或是平板、200_2所示的笔记本计算机、200_3所示的台式计算机、以及200_4所示的处理单元仅包括瘦客户机(TC)的实现。在图2的例子中,TC由于提及小巧,可以嵌入到显示器的内部。
图3示出了根据本发明一个实施例的云桌面打印处理方法的示意性流程图。该方法在端侧执行,例如可由图2所示的客户端设备200在云端100的协同下执行。执行该方法的客户端可以是图2所示的各类客户端,例如通用的智能电话、平板电脑、笔记本电脑、PC等,尤其适用于200_4所示的处理单元仅包括瘦客户机(TC)的实现。无论在那类客户端设备上实现,客户端设备上都需要安装想要的云桌面客户端,云桌面客户端上则可包括相应的模块来实现本发明的云桌面打印处理方法。
在步骤S310,从预设通道获取经压缩的待打印数据,并且在步骤S320,对获取的经压缩的待打印数据进行解压,获取原始图像格式的待打印数据。在一个实施例中,上述步骤S310和S320可由端侧的打印机客户端实现。在其他实施例中,上述步骤S310和S320也可由端侧的两个对应模块实现。在利用打印机客户端实现时,打印机客户端从预设通道上获取的是经压缩的原始图像格式的待打印数据,并且通过解压,可以获取相应的原始图像格式的待打印数据。
也就是说,在云端应用程序中接收到用户的打印指令之后,云端可以对待打印的文件进行处理,将其渲染成原始图像格式的待打印数据,进行压缩后再经由预设通道传输,由此使得端侧能够从预设通道获取经压缩的待打印数据,并通过解压获取原始图像格式的待打印数据。
与传统PC类似,在此,待打印的文件可以是云桌面中各类应用可以打开的任何格式的、能够被打印的文件。例如,用户可以在云桌面中安装的Word应用程序中编辑文本文件,并在编辑完成后对word文件进行打印。类似地,用户可以打印各类格式的图像文件(例如,jpg文件、png文件)、pdf文件、excel文件或是ppt文件等。用户可以在打开这些文件的应用程序中点击打印按钮或是进行例如ctrl+p的快捷键操作,来对这些文件进行打印。这些待打印的文件随后可被发送给云端的打印机驱动,并由打印机驱动渲染成原始图像格式的待打印数据。
在此,“原始图像格式”数据可以是经过最少处理的数据,或是能够被各个型号的打印机直接处理的数据。在一个实施例中,原始图像格式尤其可以是raw格式数据。
通常,原始图像文件包含从数字相机、扫描器或电影胶片扫描仪的图像传感器所处理数据。之所以命名为“原始”,是因为尚未被处理,未被打印或用于编辑。原始图像文件,有时也被称为数字底片,因为它们充当与电影底片相同的角色,并不是作为图像直接使用,而是创建一个包含所有信息的图像。换句话说,原始图像文件具有普适性并且包含完整的信息,能够方便用于各种厂家生产的各种型号的打印机的准确打印。
但由于同样一副图像的原始图像格式要远大于常见的编码格式(例如,一张照片的raw格式要远大于jpeg格式),因此在交由预设通道传输之前,需要在云端被压缩,由此提升信息的传输效率。
在此,“预设通道”是代在云侧和端侧之间预先设置的通道,即,在云侧和端侧都知晓规则的情况下的专有通道。“专有通道”可以指代在云侧和端侧之间,专门用于传输待打印数据的通道。如上所述的“专门”,可以是以预先商定的规则告知云侧和端侧,该通道仅用于传输用于打印的数据。具体地,在云桌面应用中,云端会为每个客户端在服务器上建立一个对应容器,并且经由专用的云桌面网络通道来实现终端上的客户端与服务器上的对应容器之间的数据传输。而本发明中的“打印机预设通道”则可以是云桌面网络通道中新增端口,或是通过协议字段包头来进行区分。由此,从预设通道获取经压缩的待打印数据包括如下至少一项:经由云桌面网络通道中的新增端口获取经压缩的待打印数据;以及基于特定的协议字段包头获取经压缩的待打印数据。
为了保证云侧和端侧之间的数据传输安全,可以对经由预设通道传输的待打印数据进行加密。上述加密可以是云侧和端侧之间安全数据传输的一部分(即,符合云桌面网络通道的加密规则),也可以是针对待打印数据的专门加密。由此,云端经由预设通道发送的待打印数据可以是经压缩和加密的原始图像格式的待打印数据。由此,从预设通道获取的所述经压缩的待打印数据可以包括:经压缩和加密的原始图像格式的待打印数据。并且所述原始图像格式可以是raw格式。
在获取到raw格式的待打印数据之后,在步骤S330,可以转换所述原始图像格式的待打印数据以适配打印机接口。具体地,客户端的数据处理模块在接收到raw格式数据之后,可以根据端侧用于打印的打印机实现,对数据进行转换以适应不同接口的打印机。为此,转换所述原始图像格式的待打印数据以适配打印机接口可以包括:获取物理打印机的接口信息;以及基于与所述接口信息相适配的转换配置,对上述原始图像格式的待打印数据进行数据转换。
由此,本发明通过在云侧直接将打印数据转换为raw格式并压缩,经预设通道送至端侧,在端侧进行解压,再进行基于打印机端口的数据转换,能够解决困扰云桌面领域已久的外设兼容问题。由于从待打印文件到raw格式的转换在云端进行,因此能够避免端侧Linux***与打印机驱动不兼容的问题。另外,通过预设通道的压缩传输,能够解决USB重定向方案中USB协议数据包过小的问题,提升数据传输效率。另外,数据处理模块能够解决各种接口打印机的使用问题,通过软件转换避免对额外购买转换硬件的需要,节约***成本。
在本发明的另一个实施例中,本发明还可以实现为一种云桌面打印处理***。该云桌面打印处理***可以由图2所示的云桌面***实现。具体地,可以通过向服务器中的云桌面容器和客户端设备中的云桌面客户端添加相应的处理模块来实现。
图4示出了根据本发明的一种云桌面打印处理***的***框图。***包括云侧和端侧,并且其中灰框示出了针对本发明的云桌面打印处理所额外添加的模块,包括云侧的打印机服务端模块以及端侧的打印机客户端模块和数据转换模块。
如图所示,在云侧(具体地,在云侧为特定用户实现的云桌面容器中),可以包括用户安装或是自带的各类应用程序(例如,APP)。应用程序可以响应于用户在端侧的操作,打开相应的文件或是网页,并在用户的打印指令下尝试打印文件。具体地,当云应用接收到端侧发送的打印指令后,会将待打印文件发送给打印机驱动。打印机驱动安装在云桌面。具体地,云侧可以获取端侧所连接的物理打印机的相关消息,例如,获取端侧连接的物理打印机的具体型号,由此,可以获取对应的打印机的品牌、型号、端口类型等信息,并且可以在云侧安装与该端侧物理打印机对应型号的打印机驱动。例如,云端可以连接各个打印机厂家各个打印机型号的驱动,并且根据从端侧获取的打印机信号,安装相应的打印机驱动。由此,通过将打印机驱动安装在云桌面,利用厂家驱动保证打印质量,利用云桌面的处理能力,提高打印效率,同时避免打印机驱动安装在端侧时由于缺少linux***驱动而导致的兼容性问题。
云侧安装的打印机驱动随后可以用于将接收到的待打印文件转换成原始图像格式的待打印数据,例如将待打印文件渲染成raw数据。
打印机服务端模块用于将原始图像格式的待打印数据进行压缩并经由预设通道进行发送。具体地,打印机服务端模块接收打印机驱动渲染后的raw数据,进行加密并压缩发送到打印机预设通道。
端侧的打印机客户端模块从预设通道获取经压缩的待打印数据,并对获取的经压缩的待打印数据进行解压,获取原始图像格式的待打印数据。具体地,打印机客户端模块接收到预设通道的经加密和压缩的raw数据,并进行解压和解密,得到打印机raw数据。随后,数据转换模块可以根据端侧具体连接的打印机端口类型,例如网络打印机、USB打印机、串口打印机或是并口打印机,对打印机raw数据进行数据转换,并用于待打印数据的实际打印。具体地,数据转换模块本身可以兼容各种打印机端口,并且可以根据端侧实际连接的打印机,选择相应的数据转换方案,由此实现数据的顺畅打印。
具体地,打印机服务端和打印机客户端可以约定在预设通道上传输的经压缩的待打印数据的数据包长度,所述数据包长度大于USB协议包长度的上限。例如,打印机服务端模块在拿到打印机驱动渲染后的数据,可以进行压缩并且将传输包设置的可以尽可能大,由此解决USB重定向方案的USB协议数据包过小的问题,从而大幅提高传输效率。
进一步地,在用户想要打印文档时,云桌面中的应用程序也会出现相应的打印界面,用户可以在打印界面中选择具体的打印参数,或是直接接受默认打印参数设置。上述打印参数可以被发送给云侧。云侧的打印机驱动可以基于上述打印参数配置待打印数据。由此,端侧从预设通道获取的经压缩的待打印数据可以包含基于所述打印参数配置的待打印数据。
进一步地,上述打印参数还可以用于确定打印机服务端模块对待打印数据的压缩程度。例如,当用户选择极高分辨率打印时,打印机服务端模块可以对待打印的raw格式数据进行无损压缩,从而使得云端能够从预设通道接收到无损压缩的待打印数据并进行无损raw格式数据的恢复,从而保证打印数据的质量。当用户选择普通分辨率打印时,打印机服务端模块可以对待打印的raw格式数据进行有损压缩,从而使得经由预设通道传输的经压缩的待打印数据的数据量更小,从而提升打印数据的传输效率。而当用户选择低分辨率打印时,打印机服务端模块可以对待打印的raw格式数据进行进一步地有损压缩,从而使得经由预设通道传输的经压缩的待打印数据的数据量更小,从而进一步提升打印数据的传输效率。
由上可知,本发明通过将打印机驱动安装在云桌面,使得能够基于端侧使用的具体打印机型号,在云桌面直接安装对应型号的原装驱动,从而解决了驱动兼容问题,并且利用云端的算力提升了打印机数据的渲染效率。进一步地,本发明还通过压缩raw数据的预设通道传输结合端侧的数据转换模块,在保证了传输效率的同时,使得端侧能够直接通过软件的数据转换兼容各种打印机端口,从而方便端侧对打印机的使用并且避免了对额外转换硬件的需求。
图5示出了根据本发明一个实施例可用于实现上述云桌面打印处理方法的计算设备的结构示意图。
参见图5,计算设备500包括存储器510和处理器520。
处理器520可以是一个多核的处理器,也可以包含多个处理器。在一些实施例中,处理器520可以包含一个通用的主处理器以及一个或多个特殊的协处理器,例如图形处理器(GPU)、数字信号处理器(DSP)等等。在一些实施例中,处理器520可以使用定制的电路实现,例如特定用途集成电路(ASIC,Application Specific Integrated Circuit)或者现场可编程逻辑门阵列(FPGA,Field Programmable Gate Arrays)。
存储器510可以包括各种类型的存储单元,例如***内存、只读存储器(ROM),和永久存储装置。其中,ROM可以存储处理器520或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。***内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。***内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器510可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器510可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD-ROM,双层DVD-ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro-SD卡等等)、磁性软盘等等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
存储器510上存储有可执行代码,当可执行代码被处理器520处理时,可以使处理器520执行上文述及的云桌面打印处理方法。
上文中已经参考附图详细描述了根据本发明的云桌面打印处理方案。
此外,根据本发明的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本发明的上述方法中限定的上述各步骤的计算机程序代码指令。
或者,本发明还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被电子设备(或计算设备、服务器等)的处理器执行时,使所述处理器执行根据本发明的上述方法的各个步骤。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图显示了根据本发明的多个实施例的***和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (11)
1.一种云桌面打印处理方法,包括:
从预设通道获取经压缩的待打印数据;
对获取的经压缩的待打印数据进行解压,获取原始图像格式的待打印数据;以及
转换所述原始图像格式的待打印数据以适配打印机接口。
2.如权利要求1所述的方法,其中,从预设通道获取经压缩的待打印数据包括如下至少一项:
经由云桌面网络通道中的新增端口获取经压缩的待打印数据;以及
基于特定的协议字段包头获取经压缩的待打印数据。
3.如权利要求1所述的方法,其中,从预设通道获取的所述经压缩的待打印数据包括:
经压缩和加密的原始图像格式的待打印数据,所述原始图像格式为raw格式。
4.如权利要求1所述的方法,还包括:
发送待打印文件的打印参数,并且
从预设通道获取的经压缩的待打印数据包含基于所述打印参数配置的待打印数据。
5.如权利要求4所述的方法,其中,从预设通道获取的经压缩的待打印数据的压缩程度基于发送待打印文件的打印参数确定。
6.如权利要求1所述的方法,其中,转换所述原始图像格式的待打印数据以适配打印机接口包括:
获取物理打印机的接口信息;以及
基于与所述接口信息相适配的转换配置,对上述原始图像格式的待打印数据进行数据转换。
7.一种云桌面打印处理***,包括云端和终端,其中,
所述云端包括:
云应用,用于将待打印文件发送给打印机驱动;
所述打印机驱动,用于将接收到的所述待打印文件转换成原始图像格式的待打印数据;
打印机服务端,用于将原始图像格式的待打印数据进行压缩并经由预设通道进行发送,
所述终端包括:
打印机客户端,用于从所述预设通道获取经压缩的待打印数据,并对获取的经压缩的待打印数据进行解压,获取原始图像格式的待打印数据;以及
数据转换模块,用于根据打印机的类型,转换所述原始图像格式的待打印数据以适配对应的打印机接口。
8.如权利要求7所述的***,其中,所述终端将获取的打印机型号信息发送给所述云端,并且所述云端用于:
选择与所述打印机型号信息相匹配的打印机驱动,用于将所述待打印文件转换成与所述打印机型号相适配的原始图像格式的待打印数据。
9.如权利要求7所述的***,其中,所述打印机服务端和所述打印机客户端约定在所述预设通道上传输的经压缩的待打印数据的数据包长度,所述数据包长度大于USB协议包长度的上限。
10.一种计算设备,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1-6中任一项所述的方法。
11.一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1-6中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210192868.0A CN114721606A (zh) | 2022-02-28 | 2022-02-28 | 云桌面打印处理方法和*** |
PCT/CN2023/075200 WO2023160404A1 (zh) | 2022-02-28 | 2023-02-09 | 云桌面打印处理方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210192868.0A CN114721606A (zh) | 2022-02-28 | 2022-02-28 | 云桌面打印处理方法和*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114721606A true CN114721606A (zh) | 2022-07-08 |
Family
ID=82235219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210192868.0A Pending CN114721606A (zh) | 2022-02-28 | 2022-02-28 | 云桌面打印处理方法和*** |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114721606A (zh) |
WO (1) | WO2023160404A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023160404A1 (zh) * | 2022-02-28 | 2023-08-31 | 阿里巴巴(中国)有限公司 | 云桌面打印处理方法和*** |
CN117991999A (zh) * | 2024-01-02 | 2024-05-07 | 深圳市链科网络科技有限公司 | 一种基于arm架构的云打印方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105530402A (zh) * | 2014-10-16 | 2016-04-27 | 佳能株式会社 | 与图像压缩有关的信息处理设备和方法及图像形成*** |
CN112035074A (zh) * | 2019-06-04 | 2020-12-04 | 中兴通讯股份有限公司 | 一种打印实现方法、装置及***、存储介质 |
CN112181328A (zh) * | 2020-11-30 | 2021-01-05 | 统信软件技术有限公司 | 一种打印控制***、方法及计算设备 |
CN113934379A (zh) * | 2020-06-29 | 2022-01-14 | 中国电信股份有限公司 | 基于桌面虚拟化技术的网络打印方法、介质和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104636092B (zh) * | 2014-12-30 | 2018-06-12 | 珠海赛纳打印科技股份有限公司 | 一种图像形成控制***及图像形成控制方法 |
CN114721606A (zh) * | 2022-02-28 | 2022-07-08 | 阿里巴巴(中国)有限公司 | 云桌面打印处理方法和*** |
-
2022
- 2022-02-28 CN CN202210192868.0A patent/CN114721606A/zh active Pending
-
2023
- 2023-02-09 WO PCT/CN2023/075200 patent/WO2023160404A1/zh unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105530402A (zh) * | 2014-10-16 | 2016-04-27 | 佳能株式会社 | 与图像压缩有关的信息处理设备和方法及图像形成*** |
CN112035074A (zh) * | 2019-06-04 | 2020-12-04 | 中兴通讯股份有限公司 | 一种打印实现方法、装置及***、存储介质 |
CN113934379A (zh) * | 2020-06-29 | 2022-01-14 | 中国电信股份有限公司 | 基于桌面虚拟化技术的网络打印方法、介质和装置 |
CN112181328A (zh) * | 2020-11-30 | 2021-01-05 | 统信软件技术有限公司 | 一种打印控制***、方法及计算设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023160404A1 (zh) * | 2022-02-28 | 2023-08-31 | 阿里巴巴(中国)有限公司 | 云桌面打印处理方法和*** |
CN117991999A (zh) * | 2024-01-02 | 2024-05-07 | 深圳市链科网络科技有限公司 | 一种基于arm架构的云打印方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2023160404A1 (zh) | 2023-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114721606A (zh) | 云桌面打印处理方法和*** | |
US9203883B2 (en) | Systems and methods for a client-side remote presentation of a multimedia stream | |
US20170195417A1 (en) | Data files synchronization with cloud storage service | |
KR100890236B1 (ko) | 카메라핸드폰을 컴퓨터의 카메라로 사용하여비디오데이터를 취득하는 방법 | |
US20110087726A1 (en) | Cloud server, client terminal, device, and method of operating cloud server and client terminal | |
TWI521939B (zh) | 用於低頻寬顯示資訊傳輸之系統及方法 | |
US9674379B2 (en) | Relay apparatus, communication apparatus, and control methods of relay apparatus | |
JP2010529567A (ja) | ネットワークを通じてコンピュータディスプレイを共有する方法 | |
JP2013512512A (ja) | 軽量クライアントを使用してネットワーク上で仮想化コンピューティングサービスとインターフェースするための方法 | |
JP2006101482A (ja) | 画像通信システムおよびサーバ装置、および画像通信方法 | |
US9882979B2 (en) | Image file transmission | |
US11809771B2 (en) | Orchestrated control for displaying media | |
US11521025B2 (en) | Selective image compression of an image stored on a device based on user preferences | |
CN111966647A (zh) | 一种小文件的云存储方法、装置、服务器及存储介质 | |
CN111881104A (zh) | 一种nfs服务器及其数据写入方法、装置和存储介质 | |
AU2018202646B2 (en) | Storing psd compatible photoshop documents in a container for efficient identification and transmission of modified document subsets | |
US8341216B2 (en) | Efficient method for image processing in a computer network | |
JP4189592B2 (ja) | 画像データ管理装置、画像形成装置、及び画像データ管理方法 | |
US20110029522A1 (en) | Photo-image Discovery Device Database Management | |
CN115484258A (zh) | 基于云桌面的外设设备处理方法、电子设备和存储介质 | |
WO2023174040A1 (zh) | 一种图片的处理方法及相关设备 | |
WO2023231710A1 (zh) | 一种图片的处理方法及相关设备 | |
JP2022167830A (ja) | アクセスのための装置、方法及びコンピュータ可読媒体 | |
JP2015058651A (ja) | 処理装置及び処理方法、プログラム | |
CN117786271A (zh) | 一种基于移动端的H5访问iOS***相册的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220708 |