CN112352218A - 信息处理装置、控制方法及程序 - Google Patents

信息处理装置、控制方法及程序 Download PDF

Info

Publication number
CN112352218A
CN112352218A CN201980043983.8A CN201980043983A CN112352218A CN 112352218 A CN112352218 A CN 112352218A CN 201980043983 A CN201980043983 A CN 201980043983A CN 112352218 A CN112352218 A CN 112352218A
Authority
CN
China
Prior art keywords
print
printer
attribute information
print job
printing
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
Application number
CN201980043983.8A
Other languages
English (en)
Inventor
铃木慎也
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Publication of CN112352218A publication Critical patent/CN112352218A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J29/00Details of, or accessories for, typewriters or selective printing mechanisms not otherwise provided for
    • B41J29/38Drives, motors, controls or automatic cut-off devices for the entire printing mechanism
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1209Improving or facilitating administration, e.g. print management resulting in adapted or bridged legacy communication protocols, e.g. emulation, protocol extension
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1228Printing driverless or using generic drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1232Transmitting printer device capabilities, e.g. upon request or periodically
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1245Job translation or job parsing, e.g. page banding by conversion to intermediate or common format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1255Settings incompatibility, e.g. constraints, user requirements vs. device capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1297Printer code translation, conversion, emulation, compression; Configuration of printer parameters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1287Remote printer device, e.g. being remote from client or server via internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00482Output means outputting a plurality of job set-up options, e.g. number of copies, paper size or resolution
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

一种信息处理装置、控制方法及程序,包括:打印机驱动使用预定打印协议与打印机通信,以从打印机获得与打印有关的第一属性信息。打印驱动基于从应用程序接收到的数据来生成符合预定打印协议的打印作业,并将所生成的打印作业发送至扩展应用程序(S606)。扩展应用获得与第一属性信息不同形式的属性信息(S611)。扩展应用程序至少基于第二属性信息显示用于打印设置的用户界面(UI)(S613)。扩展应用程序基于经由UI进行的设置和从打印机驱动接收到的打印作业,生成要发送到打印机的打印作业。

Description

信息处理装置、控制方法及程序
技术领域
本发明涉及与打印机通信的信息处理装置、控制方法及程序。
背景技术
使用打印机驱动将打印数据发送到打印机的配置是众所周知的。信息处理装置装有作为基本软件的操作系统(OS)。打印机驱动根据OS定义的打印体系结构进行配置,并由OS调用以进行操作。提供打印机的供应商提供符合OS规范的打印机驱动。OS和打印机驱动配合来实现使用输出目标打印机进行打印的功能。
在使用
Figure BDA0002867499910000011
Figure BDA0002867499910000012
8之前的版本作为OS时,打印机驱动由被称为“V3打印机驱动”的体系结构形成。
在Windows 8.1或更高版本中,出现了一种被称为“V4打印机驱动”的体系结构。由于V4打印机驱动非常重视安全性,因此打印机驱动本身的可扩展性低于V3打印机驱动的可扩展性。为了弥补可扩展性的这种下降,提供打印机的供应商可以提供专用的应用程序来辅助打印机驱动的功能。这些应用程序称为通用Windows平台设备应用(UWP设备应用)。UWP设备应用可以增强通过商店应用程序(UWPs)进行打印的用户体验。V4打印机驱动可以链接到打印机扩展,该扩展是用于执行供应商唯一的打印设置的打印设置应用程序。
已知有被称为“通用打印机驱动”的打印机驱动,作为用于控制具有不同功能的多种类型的打印机的打印机驱动(专利文献1)。打印机驱动可以按类型或型号显示适合于各打印机的操作画面。
另一种可以想到的方法是在不使用打印机驱动的情况下将打印数据发送到打印机。例如,
Figure BDA0002867499910000013
17.04作为OS的默认功能,具有将打印数据发送到符合IPP
Figure BDA0002867499910000014
的打印机的模式。IPP Everyware是允许使用各种打印机进行打印的一系列标准,行业组织等正在对其进行规划和普及。
引用文献
专利文献
专利文献1:日本专利申请特开2013-187571
专利文献1中公开的通用打印机驱动通常由具体的供应商提供。这允许由单个通用打印机驱动支持同一供应商出售的具有不同功能的多种类型的打印机。但是,很难使用单个通用打印机驱动来支持不同供应商的打印机。这是因为使用不同的通信方法进行打印数据通信、页面描述语言(PDL)和作业描述语言(JDL)、具体的供应商,都使得很难统一打印驱动。另一个原因是各个供应商的打印设置项都不同,甚至相似的设置项也有不同的解释,这使得使用单个通用打印机驱动来支持它们变得困难。
如上所述,可以想到的方法是使用符合以IPP Wveryware为代表的网络打印协议(IPP)的模式来提供共通打印机驱动或打印客户端。但是,这有一个问题,即由供应商唯一提供的功能不能与符合IPP的共通打印机驱动一起使用。
发明内容
鉴于以上问题中的至少一个提出了本发明。本发明的目的是提供一种模式,该模式用于适当地使用由多个供应商的打印机提供的被扩展的能力,还用于使用打印机驱动或生成符合预定打印协议的打印作业的打印客户端进行打印。另一个目的是通过将打印机驱动实现为符合预定打印协议的类驱动和通过由使用在沙盒虚拟环境上运行的扩展应用程序的供应商来实现扩展从而实现安全性和便利性。还有一个目的是能够进行打印,以反映使用扩展应用程序的各个供应商的扩展能力。
用于实现上述目的中至少一个的本发明的信息处理装置是一种包括使用预定打印协议与打印机进行通信的打印机驱动以及与该打印机驱动有关的扩展应用程序的信息处理装置。打印机驱动包括:第一获取单元,其被配置为使用预定打印协议从打印机获得与打印有关的第一属性信息;生成单元,其被配置为基于从应用程序接收到的数据来生成符合预定打印协议的打印作业;以及发送单元,其被配置为将生成的打印作业发送到扩展应用程序。扩展应用程序包括:第二获取单元,其被配置为获得所述生成的打印作业;第三获取单元,其被配置为从打印机获得与打印有关的第二属性信息,所述属性信息与第一属性信息的形式不同;显示控制单元,其被配置为基于至少第二属性信息显示用于打印设置的用户界面,以及生成单元,其被配置为基于经由用户界面进行的设置和由打印机驱动生成的打印作业,生成要发送到打印机的打印作业。
附图说明
图1是示出打印系统的示例的图。
图2是示出客户端计算机100的硬件配置的示例的图。
图3是示出客户端计算机100的软件配置的示例的图。
图4A是示出关于打印设置信息的示例的示意图。
图4B是示出关于打印设置信息的示例的图。
图5是示出打印系统的处理过程的示例的示意图。
图6是示出客户端计算机100的控制的示例的流程图。
图7是示出打印机200的控制的示例的流程图。
图8是示出在客户端计算机100的显示器上显示的画面的示例的图。
图9是示出在客户端计算机100的显示器上显示的画面的示例的图。
图10是示出打印系统的处理过程的示例的示意图。
图11是示出客户端计算机100的控制的示例的流程图。
图12是示出客户端计算机100的控制的示例的流程图。
图13是示出变形例的示意图。
图14是示出了变形例中的扩展设置的示例的图。
具体实施方式
下面将参照附图描述本发明的实施例。以下实施例不能限制本发明。并非本实施例中描述的特征的所有组合对于本发明的解决方案都是必不可少的。
(第一实施例)
首先参照图1,将描述根据本发明的打印系统的配置。根据本实施例的打印系统包括客户端计算机100和打印机200a至200c。客户端计算机100和打印机200a至200c连接在网络300上,以便彼此通信。设备之间的通信可以是经由无线网络的通信或经由有线网络的通信。经由无线网络的通信可以是经由符合IEEE802.11的接入点的无线通信或者诸如Wi-Fi
Figure BDA0002867499910000041
的直连无线通信。在本实施例中,将上述配置描述为打印系统的示例。但是,这并无意图限制本发明。一个或多个通信装置和打印仅需要经由网络可通信地连接。
在本实施例中,将单功能打印机200a至200c描述为接收打印作业并在片材上打印图像的打印机的示例。但是,这并无意图限制本发明。打印机可以是同时具有打印功能和扫描功能的多功能外围设备(MFP)。
在本实施例中,出于说明性目的,打印机200a至200c由不同的供应商制造。打印机200a至200c可以从客户端计算机100等接收符合网络打印协议(IPP)的打印作业,并且可以基于该打印作业在片材上打印图像。
打印机200a至200c还具有接收与IPP格式不同的格式的打印作业并对其进行解释的功能。例如,打印机200a可以解释包括符合激光打印机(LBP)图像处理系统
Figure BDA0002867499910000042
格式的页面描述语言(PDL)数据的打印作业。此外,打印机200a可以解释包含符合打印机命令语言
Figure BDA0002867499910000043
格式的PDL数据的打印作业。LIPS格式也称为超快速渲染
Figure BDA0002867499910000044
格式。打印机200b可以解释包含符合打印机命令语言
Figure BDA0002867499910000045
格式的PDL数据的打印作业。但是,打印机200b不支持LIPS(UFR)格式的打印作业。打印机200c是喷墨打印机,并且可以解释符合打印机的爱普生标准代码(ESC/P)的打印作业。但是,打印机200c不支持PCL格式和LIPS格式的打印作业。因此,当作为打印机制造者的供应商不同时,支持PDL的种类也不同。根据所使用的PDL类型,即使是相同的打印机在支持功能上也有少许差异。仅出于说明目的,给出了各打印机可以解释的PDL类型。打印机可以解释的PDL格式可以是PCL,LIPS,ESC/P,精细打印命令流(RPCS),后脚本(PS)和高级渲染工具(ART)。格式可以包括夏普打印机描述语言2(SPDL2)格式。格式还可以包括基于上述PDL衍生的格式。各个打印机支持基于上述PDL格式衍生的PDL格式中的至少一种。
接下来,将描述作为信息处理装置的一个示例的客户端计算机100。在本实施例中,客户端计算机100是个人计算机(PC)。但是,这仅出于说明目的。客户端计算机100可以是终端,例如平板终端或其中安装有头戴式显示器和计算机的可穿戴式计算机。
客户端计算机100可以与网络300上的打印机200a至200c通信。客户端计算机100可以基于打印目标数据来生成打印作业,并将该打印作业发送到各个打印机。
将参照图2描述客户端计算机100的硬件配置。图2是示出客户端计算机100的硬件配置的示例的框图。
中央处理单元(CPU)101是控制控制单元120的整体操作的处理器。控制单元120包括作为存储器的只读存储器(ROM)1021和随机存取存储器(RAM)1022以及存储器105,三者经由系统总线107连接。控制单元120还包括用于连接输入/输出设备的接口(I/F)103和104以及用于通过网络与外部设备进行通信的通信I/F 106。
RAM 1022是易失性存储器,用作临时存储区域,其中各种控制程序存储在工作区域中;ROM 1021和存储器105是要被扩展的。
ROM 1021是非易失性存储器,其中存储有计算机引导程序等。存储设备105的示例包括非易失性闪存和具有比RAM 1022更大容量的硬盘驱动器(HDD)。存储器105存储用于控制整个计算机100的操作系统(OS)1053和在OS 1053上运行的各种应用程序1051的程序。存储器105还存储生成符合预定打印协议(例如IPP)的打印作业的共通打印机驱动1054,以及与该共通打印驱动1054(将在下文中详细描述)一起工作的设备应用程序1052a至1052b的程序。
各种应用程序诸如应用程序1051和设备应用1052a至1052b,可以经由光盘(CD)-ROM、通用串行总线(USB)存储器或者网络300安装到计算机100中。
CPU 101执行OS程序和在RAM 1022上扩展的应用程序以控制计算机100。因此,硬件诸如CPU 101、ROM 1021、RAM 1022和存储器105构成所谓的计算机。
尽管客户端计算机100是使得单个CPU 101执行稍后描述的流程图中所示的处理,但是客户端计算机100可以具有其它配置。例如,多个处理器可以协作地执行稍后描述的流程图中所示的处理。
输入I/F 103将键盘108和定点设备109与控制单元120连接。键盘108和定点设备109用作接收单元,用于接收来自用户的指令。接收单元可以检测对显示在画面上的显示项(例如,键)的选择。输出I/F 104将显示信息的监视器110与控制单元120连接。监视器110用作显示信息的显示器。如果客户端计算机100是平板终端等,则经由既用作接收单元又用作显示器的触摸面板显示器来进行向用户显示信息和接收操作。在这种情况下,用户可以通过使用物体诸如手指执行触摸操作来将期望的操作者指令输入到客户端计算机100。
通信I/F 106是用于与外部设备诸如网络300上的打印机或云上的服务器通信的接口。
[计算机100的软件配置]
图3是示出本实施例中的客户端计算机100的软件配置的示例的图。OS 1053是用于控制整个计算机100的系统软件。在此,以安装的
Figure BDA0002867499910000061
10 OS或更高版本的OS作为示例。
OS 1053提供用于使用打印机驱动进行打印的打印体系结构10531。打印体系结构10531是所谓的V4打印体系结构,它利用打印机驱动将XML纸张规格(XPS)格式的假脱机数据转换为打印数据(PDL)。
可以安装在计算机中的打印机驱动的一个示例是被称为通用打印机驱动的驱动。OS诸如
Figure BDA0002867499910000071
17.04具有用于将打印数据传输到支持IPP
Figure BDA0002867499910000072
的打印机的模式,作为该OS的默认功能。IPP Everyware是允许使用各种打印机进行打印的一系列标准,行业组织等正在对其进行规划和普及。
上述通用打印机驱动通常由具体的供应商提供。这允许由单个通用打印机驱动支持同一供应商出售的具有不同功能的多种类型的打印机。但是,很难使用单个通用打印机驱动来支持不同供应商的打印机。这是因为使用不同的通信方法进行打印作业通信、PDL和作业描述语言(JDLs)、具体的供应商,都使得很难统一打印驱动。另一个原因是对于各个供应商的打印设置项都不同,甚至相似的设置项也有不同的解释,这使得使用单个通用打印机驱动来支持它们变得困难。
如果在Windows等环境中也提供了一种无需单独安装供应商提供的V3格式或V4格式打印机驱动来执行打印的模式,则将提高用户便利性。
有鉴于此,本实施例提供了一种共通打印机驱动,其使用可以在Windows环境中提供的预定打印协议的模式。以下使用预定打印协议常用的IPP的示例进行描述。
假设仅安装了符合IPP的共通打印机驱动的情况。在这种情况下,生成包括符合IPP且基于IPP的PDL的打印属性的打印作业,并将打印作业发送到打印机。这具有以下问题:IPP中未定义的并且由供应商独立提供的功能(例如,用于装订打印件而无需使用装订针的无针装订功能以及用于在打印机的存储器中存储打印数据的盒存储功能)不能使用。
因此,本实施例使扩展应用程序能够用于使用从符合IPP的共通打印机驱动器中调用的各个供应商专用的功能,从而可以提供各个供应商的扩展功能。下面将描述具体的模式。
回到图3,在客户端计算机100中安装支持多个供应商的打印机的共通打印机驱动1054作为打印机驱动。共通打印机驱动1054可以是作为OS 1053的标准功能安装的类驱动,也可以是由用户单独安装在计算机100中的通用打印机驱动。
打印体系结构10531包括GDI到XPS转换模块307,共通打印机驱动1054,OS标准打印UI 305,打印管理器318和设备通信单元319。还可以安装与通用打印机驱动不同的打印机驱动(例如,仅适用于供应商提供的型号的打印机驱动)。
[使用共通打印机驱动1054的打印处理]
首先,将描述使用共通打印机驱动1054的打印处理。桌面应用301的示例包括“Win32/64应用程序”和“.NET应用程序”。UWP应用302是在OS 1053上运行的通用Windows平台(UWP)应用程序。UWP应用程序是经由Windows商店分发的应用程序,并且在与桌面应用301和打印体系结构10531的执行环境不同的执行环境中运行。UWP应用在独立的沙箱(虚拟环境)中运行,并且对系统区域和可用的应用程序编程接口(API)的访问受到限制。换句话说,与桌面应用和设备驱动相比,UWP应用对装置中资源的访问权限较低。由于这样的原因,UWP应用对系统的影响比桌面应用和驱动程序小。
这些桌面应用301和UWP应用302可以与打印体系结构10531协作来打印内容(例如,文档和图像)。
桌面应用301使用图形设备接口(GDI)进行打印,该图形设备接口是生成打印机的打印图像的图形组件。当使用GDI进行打印时,桌面应用301将GDI绘图数据发送到作为OS1053的模块的GDI到XPS转换模块307。模块307将GDI绘图数据转换为XPS假脱机文件。转换后的XPS假脱机文件临时存储在区域306中。相反,经由UWP应用302进行打印有两种方法,一种是使用UWP应用本身创建XPS文件的方法,另一种是根据UWP应用中的绘图命令使用OS1053创建的XPS文件。通过任何一种方法创建的XPS文件都被传送到区域306中临时存储。
使用输入单元诸如键盘108或以触摸面板/鼠标为代表的定点设备109,用户经由显示在输出单元的监视器110上的桌面应用301或UWP应用302执行打印处理。在此,以经由UWP应用302打印作为示例进行描述。图8示出了经由UWP应用302进行打印时显示的画面的示例,其是由OS 1053提供的设置画面(用户界面)的示例,也称为现代打印对话框。经由UWP应用302给出打印指令时,CPU 101在监视器110上显示打印对话框。用户可以选择区域801以选择要用于打印的打印机,并且可以通过选择区域804中的项目来选择打印设置。用户可以使用打印键803给出打印指令。这里,将描述由用户选择与共通打印机驱动1054兼容的打印机的示例。附加设置键802是用于详细打印设置的键。当检测到选择了所述键时,OS激活OS标准打印UI 305以显示符合IPP的打印设置画面(用户界面)(未示出)。
在检测到用于改变打印设置的用户操作时,OS 1053调用共通打印机驱动1054的标准打印设置单元308。标准打印设置单元308参照从标准打印功能定义文件组309选择的打印机定义文件。标准打印设置单元308基于所参照的打印机定义文件,创建指示当前打印设置的标准设置数据(303或304)和指示选择的打印机的打印能力(PrintCapabities)。
例如,标准打印功能定义文件是指示打印机的能力的定义文件,该文件基于在搜索IPP打印机时从打印机获得的属性信息而生成。因此,标准打印功能定义文件组309按打印机存储不同的文件。
接下来,将描述定义文件的生成。如果选择的打印机定义文件未存储在存储器中,则共通打印机驱动1054向打印机发送有关能力信息的询问。共通打印机驱动1054经由打印管理器318和设备通信单元319向打印机询问能力。打印管理器318除了控制打印作业以外,还可以搜索支持IPP的打印机并获得打印机能力(稍后描述)。具体地,打印机功能是通过RFC2911中定义的打印机属性请求操作(获取打印机属性操作)获得的。首先,打印管理器318向打印机200发送获取打印机属性请求。响应于该请求,获得关于打印机200的属性信息。通过打印机属性请求操作获得打印机能力信息的示例包括标准打印设置能力信息,例如,“双面”和“彩色打印”是否可用。通过打印机属性请求操作获得的能力(属性)是有关IPP中规定的属性的支持信息。因此,无法通过IPP的打印机属性请求操作来获得供应商特定功能信息(例如,无装订针功能和盒打印功能)。所获得的属性信息被发送到标准打印设置单元308。标准打印设置单元308基于使用IPP获得的属性信息来生成定义文件,并将该定义文件存储在存储器105中。
返回到打印设置的描述,桌面应用301使用二进制DEVMODE 303作为标准设置数据指示当前打印设置。UWP应用302使用在XML中描述的打印票单(PrintTicket)304,XML是一种标记语言。DEVMODE 303或打印票单304是保持要被反映到符合IPP的打印作业的打印设置的标准设置数据。
图4A和图4B是用于示出打印能力和打印票单的图。两者都是符合打印体系结构中规定的规则的XML格式文件。图4A中所示的文件400是打印能力的示例。文件400列出可用的打印设置项和可以用于打印设置项设置的设置值的组合。由OS提供的用于打印设置的应用程序和用户界面可以基于文件400构成打印设置画面。尽管由于空间限制而示出了部分设置,但这并不意味着对本发明的限制。文件400还可以包括基于符合IPP的属性信息的打印设置项和用于后处理的设置项。
相反,图4B中所示的文件401是打印票单304的示例,其中列出了当前的打印设置。通过应用程序1051和OS 1053提供的用于打印设置的用户界面可以通过重写打印票单304来改变打印设置。
OS标准打印UI 305基于在针对所选打印机在打印能力中描述的信息,提供用于打印设置的画面(用户界面)。
在检测到用户发出打印指令时,OS或应用程序生成XPS假脱机文件。所生成的XPS假脱机文件被发送到标准打印处理单元312。标准打印处理单元312渲染接收到的XPS假脱机文件,以将其转换为符合IPP的PDL数据。符合IPP的PDL数据的示例包括可移植文档格式(PDF)和PWG-光栅格式数据。
此外,标准打印处理单元312基于XPS假脱机文件中包括的打印票单304所指定的设置来生成符合IPP的打印属性信息。
通过管理打印处理的时间表的打印管理器318来管理PDL数据和IPP兼容的打印属性信息。打印管理器318基于PDL数据和IPP兼容的打印属性信息来创建符合IPP的打印作业,并将所创建的打印作业注册到队列(等待线)中。当打印机200准备好进行打印时,经由设备通信单元319以在队列中注册的顺序发送IPP兼容的打印作业。以这种方式将来自应用程序的打印数据转换为符合IPP的PDL数据是共通打印机驱动1054的主要作用。
上述处理只能应对作为IPP规范规定的能力,而不能应对由打印机200a至200c提供的各种功能。因此,在本实施例中,作为扩展应用程序的设备应用1052使用另一通信方法来获得详细能力信息,以处理除标准打印设置以外的扩展打印设置。
设备应用1052a至1052b是与共通打印机驱动1054不同的应用程序,并且在UWP平台上运行。这些应用程序是用于基于使用基于IPP的通用打印机驱动进行打印,根据需要使打印机200的功能灵活可用的应用程序。这些应用程序在沙盒式UWP执行环境中运行。这减少了对整个系统的影响即使应用程序被挂起或出错。
这里,示出了将设备应用1052a安装为用于打印机200a的设备应用程序的示例,并且示出了将设备应用1052b安装为用于打印机200b的设备应用程序的示例。但是,未安装用于打印机200c的设备应用程序。
因此,如果用户选择打印机200c作为共通打印机驱动的输出目标,则跳过扩展打印设置的处理,并且执行符合IPP的处理。给定数量的用户不需要使用扩展应用程序进行扩展的打印设置。共通打印机驱动1054将关于是否激活扩展打印设置的设置存储在各个打印机的设置存储单元320中。可以通过用户操作来更改设置。
标准打印处理单元312基于扩展应用程序的安装情况和存储在设置存储单元320中的设置来确定是否激活设备应用。
设备应用1052包括打印启动应用单元10521、扩展打印设置单元10522、打印作业生成单元10525和设备应用通信单元10524。打印启动应用单元10521是被调用用于打印的模块并且管理扩展打印设置单元10522、设备应用通信单元10524和打印作业生成单元10525。设备应用1052与打印机链接。设备应用1052可以提供在打印之后立即显示预览的功能,显示提示改变打印设置的用户界面的功能等。尽管本实施例假定在由标准打印处理单元312进行PDL转换之后调用由设备应用提供的画面,但是这并不旨在限制本发明。扩展打印设置单元10522具有显示扩展用户界面的功能,该扩展用户界面允许比符合IPP的打印设置更详细的打印设置。设备应用通信单元10524具有用于设备应用1052的各模块以与打印机200通信的功能。设备应用通信单元10524使用特定的通信方法或特定的控制方法来获得关于打印机200的信息。特定通信方法的示例包括设备网络服务(WSD)协议和简单网络管理协议(SNMP)。特定通信方法可以是使用供应商特定协议的通信方法。也可以使用作业控制语言或打印机控制语言中定义的控制命令来获得打印机信息。例如,可以使用打印机作业语言(PJL),PostScript或通用外围控制体系结构(CPCA)中定义的命令从打印机请求信息。也可以使用另一协议,网络打印联盟协议(NPAP),从打印机获得信息。
打印作业生成单元10525具有在打印作业中反映PDL转换处理和扩展打印设置的功能。
例如,设备应用1052a的打印作业生成单元10525具有将包括在IPP兼容的打印作业中的PDL数据转换成LIPS格式(UFR格式)的功能。设备应用1052b的打印作业生成单元10525具有将包含在IPP兼容的打印作业中的PDL数据转换成PCL格式的功能。由设备应用1052转换的PDL格式仅出于说明性目的而给出,并不旨在限制本发明。PDL格式将转换为PCL,RPCS,PS,ART或SPDL2格式。PDL数据转换处理不是必不可少的。例如,当打印机200a至200c支持PDF直接打印时,可以跳过转换处理。
接下来,将参照图5概述执行打印中的数据处理。图5是示出用户进行打印的处理过程的示意图。
首先,应用程序1051使用标准打印设置单元308获得以打印票单格式或DEVMODE格式设置的标准设置数据。标准打印设置单元308从定义文件组309获得用于所选打印机的定义文件,并基于定义文件生成指示当前打印设置的标准设置数据。经由用于改变由应用程序1051或OS显示的打印设置的画面(用户界面)来适当地改变标准设置数据。在接收到打印开始指令时,应用程序将标准设置和由标准打印设置单元308获得的XPS假脱机文件发送到标准打印处理单元312。
标准打印处理单元312将接收到的XPS假脱机文件转换为符合IPP的PDL。标准打印处理单元312基于指示当前打印设置的标准设置数据来生成符合IPP的打印属性。然后,普通打印机150基于转换后的PDL和基于IPP的属性信息生成打印作业,并将该打印作业传递到设备应用1052。如果确定不使用设备应用,然后将IPP兼容的打印作业直接发送到打印机。
接下来,设备应用1052生成包含设置项的扩展设置画面(用户界面)并将该画面显示在监视器110上,该设置项没有根据从打印机200获得的指示扩展设置的能力信息在IPP中被定义。
将通过示例描述打印机200a的设备应用1052a。
图8示出了设备应用1052a在监视器110上显示的打印设置画面的示例。附图标记901表示标准打印设置的示例。附图标记902表示基于设备能力信息的扩展打印设置的示例。在902中显示的设置“盒打印”,“安全打印”和“无装订针打印”是在供应商特定规范中操作的打印设置的示例。这允许用户经由扩展设置画面基于IPP中未定义的规格进行打印设置。OK键903是反映打印设置的用于开始打印的键。
当检测到选择了OK键903时,设备应用1052a基于经由扩展设置画面进行的设置来生成扩展设置,该扩展设置是要将作业属性赋予打印作业。接下来,设备应用1052a将包含PDL和作业属性的打印作业发送到打印机200a。在这种情况下,可以使用通用外围控制体系结构(CPCA)命令来表达包含在打印作业中的作业属性,并且可以以LIPS格式(UFR)格式来表达PDL数据。
最后,打印机200接收IPP兼容的打印作业或供应商特定打印作业,并基于该打印作业在片材上打印图像。
接下来,将参照图6至图7的流程图描述具体控制。
[客户端计算机100的控制]
首先,将描述客户端计算机100的操作。图6是示出客户端计算机100的控制的流程图。通过CPU 101读取用于实现存储在ROM 1021或存储器105中的控制模块的程序到RAM1022中并执行该程序,来实现图6流程图中示出的操作(步骤)。流程图中所示的处理由应用程序1051模块,OS 1053和设备应用1052以及软件组件协作实现。某些过程诸如数据发送以及信息的输入和输出利用各I/F协作实现。利用作为主体词的软件组件和应用程序来描述过程与以清楚地说明该程序,这些程序充当实现过程的主体。
图6示出当将支持共通打印机驱动1054的打印机指定为要使用的打印机并且从用户接收到用于打印的指令时执行的处理。
在步骤S601中,应用程序1051检测到用户按下了通用打印对话框中的打印键803。在步骤S602中,应用程序1051生成绘图数据并将绘图数据传递到OS 1053。
在步骤S603中,OS 1053生成XPS假脱机文件。在经由桌面应用301打印的情况下,OS使用GDI到XPS转换模块307生成XPS假脱机文件。
在步骤S604中,打印体系结构10531和共通打印机驱动1054协作以生成打印作业。标准打印处理单元312将XPS假脱机文件转换为符合IPP的PDL。标准打印处理单元312基于指示要对作业设置的打印设置的标准设置来生成符合IPP的打印属性。打印管理器318基于PDL和符合IPP的打印属性来生成打印作业。
接下来,在步骤S605中,OS 1053确定是否使用设备应用。具体地,OS 1053确定是否存在支持被选择为输出目标的打印机(以下称为所选打印机)的设备应用。如果不存在用于所选打印机的设备应用,则处理进入S616。相反,存在用于所选打印机的设备应用,OS1053进一步参照扩展应用设置存储单元320确定是否启动用于所选打印机的设备应用。具体地,OS 1053基于所选打印机的ID等参照存储在扩展应用设置存储单元320中的各个打印机的设置。如果基于ID参照的设置指示设置不启动设备应用,则处理进入S616。相反,如果基于ID参照的设置指示设置启动设备应用,则处理进入S606。
在S616中,OS 1053将IPP兼容的打印作业发送到所选打印机。发送完成后,一系列过程结束。
相反,在步骤S606中,OS 1053激活用于所选打印机的设备应用1052,并将IPP兼容的打印作业传递到设备应用1052。那时,也传递用于唯一地标识所选打印机的信息和用于与所选打印机通信的信息(例如,IP地址)。
在步骤S607中,设备应用1052的打印启动应用单元10521接收从OS 1053传递的打印作业和关于所选打印机的信息。在步骤S608中,设备应用1052的打印启动应用单元10521分析打印作业。
在步骤S609中,设备应用1052的打印启动应用单元10521确定是否存储了关于所选打印机的能力信息(是否已经获得扩展能力)。如果存储了关于所选打印机的能力信息,则处理进入S613,并且如果没有存储关于所选打印机的能力信息,则处理进入S610。
在步骤S610中,设备应用通信单元10524从所选打印机200询问能力信息。设备应用1052的设备应用通信单元10524使用上述描述的特定的通信方法和特定的控制从所选打印机200请求能力信息。在步骤S611中,设备应用通信单元10524响应于在S610中发送的请求来接收设备能力信息。所接收的能力信息和与所选打印机的标识符相关联的信息被存储在从设备应用1052可访问的公共存储区域中。该处理允许在接下来及后续处理中省略用于获取设备能力信息的处理。此处存储的设备功能信息包含设置项,该设置项比可以通过IPP的打印机属性请求操作(获取打印机属性操作)获得的属性信息(功能信息)更为详细。
接下来,在步骤S613中,设备应用1052的扩展打印设置单元10522基于打印作业分析结果和设备能力信息,显示如图9所示的扩展打印设置UI。
在步骤S614中,设备应用1052的扩展打印设置单元10522接收基于用户操作来改变打印设置的指令。如图9所示,可以在扩展打印设置画面(UI)上设置IPP中未规定的打印设置902。
在步骤S615中,设备应用1052的打印作业生成单元10525基于扩展的打印设置生成被转换为可以由所选打印机接收的命令的打印作业。例如,如果所选打印机是打印机200a,并且设备应用是1052a,则打印作业生成单元10525生成打印作业,该打印作业的作业属性由CAPA定义,并且在该打印作业中生成PDL被转换成LIPS(UFR)。如果所选打印机是打印机200b,设备应用是1052b,则打印作业的作业属性由JPL定义,并且在打印作业中生成被转换为PCL的PDL。在S617中,设备应用通信单元10524将在S615中生成的打印作业发送到所选打印机。设备应用通信单元10524直接连接到打印机200,并使用WSD协议或供应商特定协议执行作业控制以执行打印。
尽管本实施例示出了设备应用1052的设备应用通信单元10524将打印作业直接发送到打印机200的示例,但这并不旨在限制本发明。例如,可以经由通过OS提供的打印管理器318和设备通信单元319来发送打印作业。在这种情况下,不进行PDL的转换,仅将打印属性重写为包括供应商扩展的设置。换句话说,打印作业生成单元10525不转换从OS接收的PDL但是生成包括指示扩展的打印设置的字符串信息和二进制数据的打印作业。转换后的打印作业再次输入到打印管理器318并发送到打印机200。
[打印机200的控制]
接下来,将描述打印机200的控制。图7是示出了打印机200的控制的流程图。通过打印机的处理器执行用于实现存储器中的控制模块的程序,来实现流程图中示出的操作(步骤)。响应于打印机200的激活来执行图7的流程图。
在步骤S701中,打印机200的处理器确定是否已经从外部设备接收到获得能力信息的请求。如果从外部设备接收到获得能力信息的请求,则处理进入S702,否则,处理进入S703。在步骤S702中,打印机200的处理器响应于该请求发送指示设备的能力的信息。在此,如果获取请求是对IPP的获取打印机属性的请求,则通过返回发送指示可以在IPP中使用的能力的属性信息。相反,如果获取请求是来自图6的S610中描述的设备应用的获取请求,则通过答复发送指示能力的设备能力信息,该能力比指示在IPP中可用的能力的属性信息更为详细。
接下来,在步骤S704中,打印机200的处理器确定是否已经从外部设备接收到打印作业。如果已经从外部设备接收到打印作业,则处理进入S705,否则,处理进入S703。
在步骤S703中,打印机200的处理器确定是否已经接收到关机指令。如果已经接收到关闭指令,则处理序列结束。相反,如果未给出关机指令,则处理返回到S701,并且处理器等待从外部设备发送的请求或打印作业。
如上所述,在本实施例中,即使在打印中使用生成符合预定打印协议的打印作业的打印机驱动或打印客户端,也可以适当地使用由多个供应商的打印机提供的扩展能力。可以将打印机驱动实现为符合预定打印协议的类驱动,并且可以通过在沙盒式环境中运行的扩展应用程序来实现各个供应商的扩展。这使得可以实现安全性和便利性。此外,扩展应用程序允许利用供应商特定资源(例如,供应商特定PDL或JDL)的打印。如果未提供扩展应用程序或者如果用户不希望使用扩展应用程序进行打印设置,则无需激活扩展应用程序。这允许同时支持喜欢简单打印的用户和需要详细打印设置的用户。
[第二实施方式]
第一实施例示出了由共通打印机驱动1054生成PDL,然后使用设备应用1052扩展打印设置的示例。第二实施例提供在给出打印指令之前也使用供应商特定打印设置画面进行打印设置的模式。
由于第二实施例的硬件配置和软件配置与第一实施例的相同,因此将省略其描述。
首先,将参照图10概述第二实施例中执行打印时的数据处理。图10是示出当用户进行打印时的数据流的示意图。
与第一实施例中一样,应用程序1051使用OS标准打印设置单元208获得标准设置数据。
当在从应用程序1051等调用的打印对话框中按下用于高级打印的“附加设置”键802时,OS的打印体系结构10531激活设备应用。
由OS激活的设备应用1052基于从所选的打印机获得的能力信息生成扩展设置。设备应用1052使用从OS标准打印设置单元208传递的标准设置数据(打印票单)和从打印机200获得的能力信息获得的扩展设置来显示如图9所示的打印设置画面(用户界面)。打印设置画面可以显示指示基于打印条件的输出形式的说明。每次用户更改打印设置时都会适当创建说明,并且可以通知用户输出看起来如何。此外,可以经由打印设置画面注册收藏的打印设置等。收藏的打印设置存储在设备应用1052的公共数据区域中。用户可以从列表(未示出)中选择用于调用收藏的打印设置的显示项,以将设置反映在打印设置中。
在检测到用户改变了打印设置并且选择了OK键时,设备应用1052将关于扩展设置的信息存储在设备应用1052的公共数据区域中,并将标准设置传递到OS标准打印设置单元208。OS标准打印设置单元208不知道打印机200可以提供关于扩展设置的信息。因此,即使给出了关于扩展设置的信息,OS标准打印设置单元208确定该设置是未知设置,从而导致错误的控制。由于这样的原因,设备应用1052将扩展设置临时存储在公共数据区域中。这允许扩展打印设置功能被提供,而不会导致OS1053通过设备应用1052读取存储在公共数据区域中的扩展设置来控制扩展设置,所述设备应用1052在打印中的不同处理中被激活。
将参照图11至图12描述具体控制。图11至图12是示出客户端计算机100的控制的流程图。通过CPU 101读取用于实现存储在ROM 1021或存储器105中的控制模块的程序到RAM 1022中并执行该程序,来实现图6流程图中示出的操作(步骤)。响应于指示经由应用程序1051提供的用户界面的打印意图的用户操作来执行图11的流程图。
在步骤S1101中,应用程序1051接收指示打印意图的键选择。在步骤S1102中,应用程序1051显示如图8所示的通用打印对话框。在步骤S1103中,应用程序S1103接收用于高级打印的键选择。用于高级打印的键的示例是“附加打印”键802。在接收到对该键的按下时,应用程序1051将指定打印机驱动和打印机的信息以及对高级打印画面的请求发送到OS1053。
在步骤S1104中,OS 1053基于接收到的指定打印机驱动和所选打印机的信息,确定是否将设备应用用于先前的打印设置。如果不存在支持所选打印机的设备应用,则处理进入S1105。相反,如果存在用于所选打印机的设备应用,则OS 1053基于扩展应用设置存储单元320确定是否激活该设备应用。由于该确定与S605中的确定相同,其描述将被省略。如果确定激活设备应用,则处理进入S1108,否则,处理进入S1105。
在步骤S1105中,OS 1053基于打印能力和打印票单显示OS的标准打印设置画面。设置画面基于利用IPP获得的属性启用打印设置。如果桌面应用给出了高级打印设置的指令,则通过使用将DEVMODE和打印票单相互转换的API将打印设置转换为打印票单来解释当前的打印设置。
在步骤S1106中,OS 1053接收基于用户操作来改变打印设置的指令。在步骤S1107中,OS 1053在S1105中更新标准设置数据(DEVMODE或打印票单)。更新完成后,处理进入S1117。
相反,在步骤S1108中,OS 1053激活用于所选打印机的设备应用并将要为打印作业设置的打印设置数据(标准设置数据)传递到设备应用。如果在DEVMODE中描述了标准设置数据,则OS 1053发送转换为打印票单的数据。
在步骤S1109中,被激活的设备应用接收在打印票单中描述的打印设置信息。在S1110至S1112中,进行与第一实施例中的S609至S611类似的扩展设置获取处理。
在步骤S1113中,设备应用基于接收到的打印设置信息和设备能力来显示扩展打印设置UI。在步骤S1114中,设备应用接收基于用户操作来改变打印设置的指令。在步骤S1115中,设备应用更新作为打印设置信息的打印票单。接下来在S1116中,将包含在S1115中更新的扩展设置的打印票单临时存储在可以从设备应用访问的公共区域中。完成S1106的处理后,处理进入S1117。设备应用发送不带扩展设置的标准设置数据作为要发送回OS的打印属性信息。
在步骤S1117中,应用程序1051基于OS标准功能或由设备应用1052更新的标准设置数据再次显示通用打印对话框。在步骤S1118中,应用程序1051接收通用打印对话框中的打印按钮选择操作。当接收到选择操时,打印设置的处理序列结束。接下来,进行图12中的打印处理。
图12是代替第一实施例中图6的流程图而执行的流程图。与图6所示的处理的不同之处在于,代替S613的处理而执行S1301的处理。
由于S601至S611与第一实施例的相同,因此其描述将省略。在S606中激活的设备应用的处理和在S1108中激活的设备应用的处理是不同的处理。因此,经由可以通过设备应用访问的公共存储区域发送包含扩展设置的打印票单。
在S1301中,设备应用1052基于接收到的IPP兼容的打印作业的属性和包含存储在设备应用1052可以访问的存储区域中的扩展设置的打印票单的属性来显示扩展打印设置UI。在此显示的扩展打印设置UI可以显示用于调出存储在设备应用1052的公共数据区域中的收藏设置的显示项。这使得用户也能够在给出了打印指令之后显示的打印设置画面上使用预先注册的收藏设置。显示完成后,处理进入S614。随后的处理与第一实施例的处理相同。
本实施例提供了能够在开始打印之前进行预先设置的效果。
[变形例]
尽管第二实施例示出了将扩展设置存储在公共数据区域中的示例,但是用于将扩展设置发送传输到设备应用的方法不限于上述方法。例如,当定义供应商可以扩展符合IPP的标准设置的区域(以下称为“供应商扩展区域”)时,可以使用该区域执行与第二实施例类似的处理。将参照图13的示意图描述该处理。
首先,应用程序1051使用标准打印设置单元308获得标准设置数据,该标准设置数据是符合IPP的信息。在经由打印对话框接收到用于高级打印的指令时,OS 1053激活设备应用1052。设备应用1052使用从OS标准打印设置单元208传送的标准设置数据(打印票单)和从打印机200获得的能力信息而获得的扩展设置来显示如图9所示的扩展设置UI。当用户按下图9所示的OK按钮时,设备应用1052将供应商扩展信息写入打印票单。例如,设备应用1052如图14中的1401那样写入指示打印机200可用的扩展设置的字符串,并且将字符串传送到OS 1053。对于供应商扩展区域,以便基于IPP中规定的规格写入供应商扩展信息。因此,该数据也由符合IPP的标准打印机驱动1054适当地处理。标准打印处理单元312将写在打印票单中的供应商扩展信息直接写入指示IPP兼容的打印作业的供应商扩展区域的属性中。这允许将写在供应商扩展区域中的扩展设置信息发送到打印中运行的设备应用1052,从而允许使用该信息来提供扩展设置以改变功能。
在另一个修改示例中,不使用供应商扩展区域等。例如,标准打印处理单元312和打印管理器318从打印票单生成仅包含符合IPP的属性的IPP兼容的打印作业。同时,在激活设备应用时,除了IPP兼容的打印作业外,还包含如图14所示的扩展设置的打印票单被传递到设备应用。在这种情况下,设备应用取消符合IPP的打印设置并基于接收到的打印票单和独立获得的设备功能信息显示扩展UI。
在第二实施例的变形例中,当在开始使用设备应用1052打印之前接收到扩展打印设置处理时,在给出打印指令之后经由扩展打印设置UI的设置处理(S1311和S1312)可以跳过。
在本发明的一方面,即使在使用支持多个供应商的打印机的打印机驱动或打印客户端进行打印时,也可以适当地使用各个供应商的扩展功能。在本发明的另一方面,该驱动被实现为符合预定打印协议的类驱动,并且通过在沙盒式环境中运行的扩展应用来实现各个供应商的扩展。这提供了安全性和便利性。在本发明的另一方面,提供了一种用于生成符合预定打印协议的打印作业的打印机驱动的扩展应用程序,从而可以经由该应用程序执行反映各个供应商的打印设置的打印。
本发明还可以以如下方式实现:将实现上述实施例的一个或多个功能的程序经由网络或存储介质提供给系统或装置,并且装置或者系统的计算机的一个或多个处理器设备读取并执行程序。也可以通过实现一个或多个功能的电路(例如,ASIC)来实现本发明。
本发明不限于上述实施例,并且在不脱离本发明的精神和范围的情况下可以进行各种改变和修改。所附权利要求书公开了本发明的范围。
本申请要求2018年6月29日提交的日本专利申请2018-125177的优先权,其全部内容通过引用并入于此。

Claims (15)

1.一种信息处理装置,包括:
打印机驱动,其使用预定打印协议与打印机通信;以及
扩展应用程序,其与打印机驱动相关,
其中,打印机驱动被配置为:
使用所述预定打印协议从打印机获得与打印有关的第一属性信息;
基于从所述应用程序接收的数据,生成符合所述预定打印协议的打印作业;
将所生成的打印作业发送到所述扩展应用程序,以及
其中,所述扩展应用程序被配置为:
获得所生成的打印作业;
从打印机获得与打印有关的第二属性信息,该属性信息与第一属性信息不同;
基于至少第二属性信息,显示用于打印设置的用户界面;以及
基于经由用户界面进行的设置和通过所述打印机驱动所生成的打印作业,生成要发送到打印机的打印作业。
2.根据权利要求1所述的信息处理装置,其中所述打印机驱动还被配置为:
确定是否使用扩展运用程序,
其中,如果打印机驱动确定不使用扩展应用程序,则不经由扩展应用程序来改变打印作业的输出目标,所述输出目标使用预定协议而生成并被发送到打印机。
3.一种与打印机驱动通信的程序,该程序使信息处理装置的计算机执行控制方法,所述方法包括:
接收步骤,接收通过打印机驱动生成的打印作业,所述打印作业符合预定打印协议;
获取步骤,从打印机获得关于打印的第二属性信息,第二属性信息以与使用所述预定打印协议从打印机获得的第一属性信息不同的格式表示;
显示控制步骤,基于至少所获得的第二属性信息,显示用于打印设置的第一用户界面;以及
生成步骤,基于至少经由第一用户界面进行的设置和所接收到的打印数据,生成要发送到打印机的打印作业。
4.根据权利要求3所述的程序,
其中所述预定打印协议是互联网打印协议(IPP),
其中第一属性信息是所述互联网打印协议(IPP)中定义的属性信息,作为响应于IPP中规定的获取打印机属性请求获得该属性信息,以及
其中,第二属性信息是指示打印机能力的属性信息,使用与IPP中规定的请求不同的请求从打印机获得该属性信息。
5.根据权利要求3所述的程序,其中,所述不同的请求是符合以下通信方法或控制方法中至少之一的请求:设备网络服务(WSD),简单网络管理协议(SNMP),打印机作业语言(PJL),PostScript,通用外围设备控制体系结构(CPCA)和网络打印联盟协议(NPAP)。
6.根据权利要求3至5中任一项所述的程序,其中,所述程序在计算机的操作系统(OS)的虚拟环境上执行,并且其中对信息处理装置的资源的访问权限比打印机驱动低。
7.根据权利要求6所述的程序,其中,与第二用户界面显示的设置项相比,在所述显示控制步骤中显示的第一用户界面具有可以由用户设置的多个设置项,所述第二用户界面针对使用打印机驱动进行打印的打印设置、而由所述OS提供打印设置。
8.根据权利要求7所述的程序,还使所述计算机执行:
第二显示控制步骤,当基于选择第二用户界面上的预定显示项而由所述OS调用所述程序时,所述第二显示控制步骤显示具有比第二用户界面可设置的设置项多的第三用户界面,
其中,第一用户界面的显示控制和第三用户界面的显示控制通过不同的处理执行。
9.根据权利要求8所述的程序,其中,所述预定显示项是提示用户进行更详细的打印设置的显示项。
10.根据权利要求8所述的程序,所述程序还使所述计算机执行:
更新步骤,基于经由第三用户界面进行的设置,更新指示将要应用于使用打印机驱动进行打印的打印设置的打印票单;以及
存储步骤,将所更新的打印票单存储在所述程序可以访问的存储区域中,
其中,在与第三用户界面的显示控制不同的处理中执行的显示控制步骤中,显示反映包含在接收到的打印作业中的打印设置和基于存储在存储区域中的打印票单将要执行的打印设置的第一用户界面。
11.根据权利要求3至10中的任一项所述的程序,所述程序还使所述计算机执行:
转换步骤,将打印机驱动生成的打印作业中包含的页面描述语言(PDL)数据转换为不同格式的PDL数据,
其中,在所述生成步骤中,打印作业至少包括被转换为不同格式的PDL数据和指示在打印PDL数据中供使用的打印设置的信息。
12.根据权利要求11所述的程序,所述程序还使所述计算机执行:
发送步骤,将在所述生成步骤中生成的打印作业发送到打印机,打印作业至少包括被转换为不同格式的PDL数据和指示在打印PDL数据中供使用的打印设置的信息。
13.根据权利要求12所述的程序,
其中,由打印机驱动生成的打印作业中包括的PDL数据是可移植文档格式(PDF)或打印工作组(PWG)-光栅格式数据,以及
其中,转换的PDL数据是符合或衍生于以下任何一种格式的PDL数据:打印机命令语言(PCL),精细打印命令流(RPCS),超快速渲染(UFR),后脚本(PS),高级渲染工具(ART)和夏普打印机描述语言2(SPDL2)。
14.一种控制方法,包括:
接收步骤,接收通过打印机驱动生成的打印作业,所述打印作业符合预定打印协议;
获取步骤,从打印机获得关于打印的第二属性信息,第二属性信息以与使用所述预定打印协议从打印机获得的第一属性信息不同的格式表示;
显示控制步骤,基于至少所获得的第二属性信息,显示用于打印设置的第一用户界面;以及
生成步骤,基于至少经由第一用户界面进行的设置和所接收到的打印数据,生成要发送到打印机的打印作业。
15.一种信息处理装置,包括:
打印机驱动,其使用预定打印协议与打印机通信;以及
扩展应用程序,其与打印机驱动相关,
其中,打印机驱动包括:
第一获取单元,其被配置为使用所述预定协议从打印机获得第一属性信息;以及
接收单元,其被配置为从不同于所述扩展应用程序的其他应用程序接收打印数据,以及
其中,所述扩展应用程序包括:
第二获取单元,其被配置为使用不同于所述预定协议的其他协议从打印机获得第二属性信息,第二属性信息与第一属性信息格式的形式不同;以及
显示控制单元,其被配置为基于第一属性信息和第二属性信息,显示用于打印设置的用户界面,所述用户界面使用户设置打印设置,
其中,基于接收到的第一属性信息、接收到的第二属性信息和接收到的打印数据来生成打印作业,该打印作业被发送到打印机。
CN201980043983.8A 2018-06-29 2019-06-19 信息处理装置、控制方法及程序 Pending CN112352218A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018125177A JP7229680B2 (ja) 2018-06-29 2018-06-29 情報処理装置、制御方法及びプログラム
JP2018-125177 2018-06-29
PCT/JP2019/024186 WO2020004159A1 (ja) 2018-06-29 2019-06-19 情報処理装置、制御方法及びプログラム

Publications (1)

Publication Number Publication Date
CN112352218A true CN112352218A (zh) 2021-02-09

Family

ID=68986632

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980043983.8A Pending CN112352218A (zh) 2018-06-29 2019-06-19 信息处理装置、控制方法及程序

Country Status (5)

Country Link
US (2) US11520533B2 (zh)
JP (2) JP7229680B2 (zh)
KR (2) KR20230098920A (zh)
CN (1) CN112352218A (zh)
WO (1) WO2020004159A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113312013A (zh) * 2021-06-03 2021-08-27 苏州博瑞凯德信息技术有限公司 一种打印方法、打印系统及存储介质

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7446726B2 (ja) * 2019-07-02 2024-03-11 キヤノン株式会社 印刷装置、情報処理装置及びプログラム
JP7433940B2 (ja) * 2020-01-31 2024-02-20 キヤノン株式会社 情報処理装置、印刷装置および当該情報処理装置の制御方法、プログラム
JP7410622B2 (ja) 2020-01-31 2024-01-10 キヤノン株式会社 情報処理装置、情報処理装置の制御方法ならびにプログラム、および当該情報処理装置と通信することのできるサーバシステム
JP7391756B2 (ja) 2020-04-16 2023-12-05 キヤノン株式会社 サーバ、制御方法、プログラム、印刷システム
WO2022118733A1 (ja) * 2020-12-03 2022-06-09 キヤノン株式会社 情報処理装置、ならびに、印刷設定アプリケーション
US20220236932A1 (en) * 2021-01-27 2022-07-28 Toshiba Tec Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium
US11740846B2 (en) 2021-03-19 2023-08-29 Brother Kogyo Kabushiki Kaisha Printing system and non-transitory computer-readable recording medium therefor
JP2023034953A (ja) 2021-08-31 2023-03-13 キヤノン株式会社 情報処理装置、情報処理装置の制御方法およびプログラム
JP7346524B2 (ja) * 2021-11-22 2023-09-19 キヤノン株式会社 画像形成装置、画像形成装置の制御方法並びにプログラム
JP2023147710A (ja) * 2022-03-30 2023-10-13 ブラザー工業株式会社 サポートプログラム
JP2024018592A (ja) * 2022-07-29 2024-02-08 キヤノン株式会社 情報処理装置、方法およびプログラム

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101038534A (zh) * 2006-03-17 2007-09-19 佳能株式会社 信息处理设备及其控制方法
CN101334719A (zh) * 2007-06-25 2008-12-31 佳能株式会社 信息处理装置及其控制方法
US20120307295A1 (en) * 2011-06-01 2012-12-06 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium
CN102999304A (zh) * 2011-09-09 2013-03-27 佳能株式会社 打印系统、打印机、打印服务器及其方法
JP2015232896A (ja) * 2015-07-30 2015-12-24 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
US20160295057A1 (en) * 2015-03-30 2016-10-06 Brother Kogyo Kabushiki Kaisha Multi-Functional Device and Storage Medium
US20170180576A1 (en) * 2015-12-21 2017-06-22 Canon Kabushiki Kaisha Print control apparatus for receiving and processing print data, print control method, and storage medium
CN106933519A (zh) * 2015-11-26 2017-07-07 佳能株式会社 信息处理设备和打印数据生成方法
CN107340979A (zh) * 2016-04-28 2017-11-10 佳能株式会社 通信设备及其控制方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030184782A1 (en) 2002-03-27 2003-10-02 Perkins Gregory E. Printer driver configured to dynamically receive printer self-description
JP2010072679A (ja) * 2008-09-16 2010-04-02 Fuji Xerox Co Ltd 画像形成システム、画像形成装置、端末装置、印刷制御方法およびプログラム
JP5617386B2 (ja) * 2010-07-05 2014-11-05 ブラザー工業株式会社 制御装置、画像処理システム、及びプログラム
JP6122245B2 (ja) 2012-03-05 2017-04-26 キヤノン株式会社 情報処理システム、制御方法、及び画像処理装置
JP6108868B2 (ja) * 2013-02-22 2017-04-05 キヤノン株式会社 印刷装置、印刷装置の制御方法、及びプログラム
JP6190207B2 (ja) * 2013-08-12 2017-08-30 キヤノン株式会社 システム、情報処理方法、処理装置、処理方法、及びプログラム
JP6315965B2 (ja) 2013-12-10 2018-04-25 キヤノン株式会社 情報処理装置、プログラム及び制御方法
JP2016058041A (ja) 2014-09-12 2016-04-21 キヤノン株式会社 情報処理装置、プログラム及び制御方法
JP6371697B2 (ja) * 2014-12-22 2018-08-08 キヤノン株式会社 情報処理装置、印刷制御方法、およびプログラム
JP6598622B2 (ja) * 2015-10-01 2019-10-30 キヤノン株式会社 画像形成装置、情報処理方法及びプログラム
JP6700894B2 (ja) * 2016-03-25 2020-05-27 キヤノン株式会社 画像処理装置、制御方法、プログラム

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101038534A (zh) * 2006-03-17 2007-09-19 佳能株式会社 信息处理设备及其控制方法
CN101334719A (zh) * 2007-06-25 2008-12-31 佳能株式会社 信息处理装置及其控制方法
US20120307295A1 (en) * 2011-06-01 2012-12-06 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium
CN102999304A (zh) * 2011-09-09 2013-03-27 佳能株式会社 打印系统、打印机、打印服务器及其方法
US20160295057A1 (en) * 2015-03-30 2016-10-06 Brother Kogyo Kabushiki Kaisha Multi-Functional Device and Storage Medium
JP2015232896A (ja) * 2015-07-30 2015-12-24 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
CN106933519A (zh) * 2015-11-26 2017-07-07 佳能株式会社 信息处理设备和打印数据生成方法
US20170180576A1 (en) * 2015-12-21 2017-06-22 Canon Kabushiki Kaisha Print control apparatus for receiving and processing print data, print control method, and storage medium
CN107340979A (zh) * 2016-04-28 2017-11-10 佳能株式会社 通信设备及其控制方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113312013A (zh) * 2021-06-03 2021-08-27 苏州博瑞凯德信息技术有限公司 一种打印方法、打印系统及存储介质

Also Published As

Publication number Publication date
KR20230098920A (ko) 2023-07-04
JP7480375B2 (ja) 2024-05-09
WO2020004159A1 (ja) 2020-01-02
US20210117135A1 (en) 2021-04-22
KR102549370B1 (ko) 2023-06-30
US11520533B2 (en) 2022-12-06
US20230071250A1 (en) 2023-03-09
JP2020004254A (ja) 2020-01-09
JP2023057114A (ja) 2023-04-20
JP7229680B2 (ja) 2023-02-28
KR20210021078A (ko) 2021-02-24

Similar Documents

Publication Publication Date Title
JP7480375B2 (ja) 情報処理装置、制御方法及びプログラム
JP5677047B2 (ja) 印刷システム、情報処理装置、印刷方法、及び、プログラム
US9442678B2 (en) Information processing apparatus, information processing system and non-transitory computer-readable information recording medium
US8537438B2 (en) Information processing apparatus in which a plurality of types of print drivers and plurality of graphics units run, control method therefor, and program
JP7086754B2 (ja) 情報処理装置、情報処理装置の制御方法及びコンピュータプログラム
EP2284696A1 (en) File printing by means of drag-and-drop
US9830544B2 (en) Image processing apparatus, control method, and storage medium for executing print processing using a password including selecting a personal identification code type that indicates a purpose for using the password
EP2388685B1 (en) Information processing apparatus and control method thereof, and storage medium
JP2016200934A (ja) 画像出力システム、画像処理装置、画像出力装置、これらにおける方法及びプログラム
EP1811368A2 (en) Information processing apparatus, information processing method, and information processing program
JP2020095535A (ja) 情報処理装置、その制御方法、及びプログラム
US20230086590A1 (en) Information processing apparatus, method for controlling information processing apparatus, and storage medium
JP2013196304A (ja) プログラムおよび情報処理装置
JP7328405B2 (ja) 情報処理装置、情報処理装置の制御方法及び印刷設定アプリケーション
JP7350525B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2006178747A (ja) 印刷設定制御装置、その制御方法及びプログラム
JP2016038691A (ja) 印刷データ送信装置、プログラム、印刷データ生成方法

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