CN115552368A - 支持程序、信息处理装置、程序集和打印方法 - Google Patents

支持程序、信息处理装置、程序集和打印方法 Download PDF

Info

Publication number
CN115552368A
CN115552368A CN202180034990.9A CN202180034990A CN115552368A CN 115552368 A CN115552368 A CN 115552368A CN 202180034990 A CN202180034990 A CN 202180034990A CN 115552368 A CN115552368 A CN 115552368A
Authority
CN
China
Prior art keywords
program
printer
print
command
output
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
CN202180034990.9A
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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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
Priority claimed from JP2020086101A external-priority patent/JP2021179913A/ja
Priority claimed from JP2020086100A external-priority patent/JP2021179912A/ja
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Publication of CN115552368A publication Critical patent/CN115552368A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/00408Display of information to the user, e.g. menus
    • H04N1/0044Display of information to the user, e.g. menus for image preview or review, e.g. to help the user position a sheet
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1803Receiving particular commands
    • G06K15/1805Receiving printer configuration commands
    • 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
    • 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/1208Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
    • 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/1222Increasing security of the print job
    • 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/1238Secure printing, e.g. user identification, user rights for device usage, unallowed content, blanking portions or fields of a page, releasing held jobs
    • 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/1256User feedback, e.g. print preview, test print, proofing, pre-flight checks
    • 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/1268Job submission, e.g. submitting print job order or request not the print data itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • 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/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1803Receiving particular commands

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)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

本发明提供一种技术,在安装有OS标准打印程序的信息处理装置中,即使是通过该打印程序进行的打印,也能够发挥打印机独有的能力。能够由PC(1)的CPU(11)执行、对应于连接到PC(1)的打印机(2)的辅助程序(42),当PC(1)有通过预先内置在PC(1)的OS(21)中的通用打印程序(41)由打印机(2)进行打印的打印指令时,将打印机(2)指定为输出目的地,使命令发送应用程序(44)输出先行动作命令。打印机(2)执行对应于先行动作命令的先行动作。

Description

支持程序、信息处理装置、程序集和打印方法
技术领域
本说明书公开的技术领域涉及用于支持打印机的控制的支持程序、信息处理装置和打印方法。
背景技术
作为从个人计算机(PC)等信息处理装置控制打印机的技术,如下结构广为人知(例如,专利文献1):在信息处理装置中安装打印机驱动程序,通过打印机驱动程序生成打印数据,将该打印数据发送到打印机。打印机驱动程序由打印机制造商提供,应对打印机的各种功能,能够使打印机得到充分利用。
专利文献1:日本特开2017-134718号公报
发明内容
近年来,不使用上述打印机驱动程序,由标准内置在操作系统(OS)中的打印程序来控制打印机的技术已经实用化。通过这种技术,当操作系统检测到打印机时,将其与操作系统的标准打印程序相关联,然后,当接收到对该打印机的打印指令时,可以使用操作系统的标准打印程序来进行打印,而不使用打印机驱动程序。
但是,由OS标准打印程序进行的打印有时不能利用打印机所具有的全部功能。例如,可能不支持打印机独有的功能,无法充分发挥打印机原本具有的能力。
本说明书公开了一种技术,在安装有OS标准打印程序的信息处理装置中,即使是由该打印程序进行打印,也能发挥打印机独有的能力。
(1)为了解决上述问题,本发明提供一种支持程序,能够由信息处理装置的计算机执行,与连接到所述信息处理装置的打印机相对应,在有如下打印指令的情况下,所述计算机执行命令输出处理和输出指令处理中的至少一个,所述打印指令是通过预先内置在所述信息处理装置的操作系统中的打印程序由所述打印机进行打印的指令,所述命令输出处理在基于所述操作系统使用所述打印程序生成的打印数据的打印执行数据开始发送到所述打印机之前,通过所述信息处理装置的通信接口向所述打印机输出用于进行开始打印前的先行动作的先行动作命令,所述打印机具有进行与所述先行动作命令相对应的所述先行动作的功能,所述输出指令处理将所述打印机指定为输出目的地,使命令发送程序进行所述先行动作命令的输出,所述命令发送程序具有将所述先行动作命令输出到输出目的地所指定的打印机的功能。
本发明的支持程序,当有通过内置在操作系统中的打印程序由打印机进行打印的打印指令时,在开始打印执行数据的发送之前,对作为该打印指令的对象的打印机输出执行先行动作的先行动作命令。由此,即使信息处理装置接收到使用打印程序进行打印的打印指令,也能够在打印机基于该打印指令开始打印之前执行打印机独有的先行动作,能够发挥打印机独有的能力。或者,当有通过内置在操作系统中的打印程序由打印机进行打印的打印指令时,将作为该打印指令的对象的打印机指定为输出目的地,使具有输出先行动作命令功能的命令发送程序输出用于进行打印机独有的先行动作的先行动作命令。由此,即使信息处理装置接收到使用打印程序进行打印的打印指令,也能够执行打印机独有的先行动作,能够发挥打印机独有的能力。
(2)本发明的支持程序,在所述操作系统使用所述打印程序生成所述打印数据完成之后,所述计算机执行所述命令输出处理。
(3)本发明的支持程序,在所述操作系统生成所述打印数据之后,基于所生成的所述打印数据的所述打印执行数据发送到所述打印机之前,所述计算机执行预览处理,所述预览处理用于在所述信息处理装置的显示装置上显示由所述打印执行数据表示的图像,并且接收是否进行基于所述打印执行数据的打印的指令,所述计算机在所述预览处理之后执行所述命令输出处理。
(4)本发明的支持程序,在有所述打印指令的情况下,在所述操作系统使用所述打印程序生成所述打印数据完成之前,所述计算机执行用于判断是否满足第一条件的第一判断处理,所述第一条件是表示不在生成所述打印数据完成之前确定是否进行打印,在生成所述打印数据完成之后确定是否进行打印的条件,在满足所述第一条件的情况下,在所述操作系统生成所述打印数据完成之后,所述计算机执行所述命令输出处理,在不满足所述第一条件的情况下,在所述操作系统生成所述打印数据完成之前,所述计算机执行所述命令输出处理。
(5)本发明的支持程序,在所述操作系统生成所述打印数据之后,基于所生成的所述打印数据的所述打印执行数据发送到所述打印机之前,所述计算机执行预览处理,所述预览处理用于在所述信息处理装置的显示装置上显示由所述打印执行数据表示的图像,并且接收是否进行基于所述打印执行数据的打印的指令,在用于执行所述预览处理的设置有效的情况下,所述计算机判断为满足所述第一判断处理中的所述第一条件,在所述预览处理中接收到进行打印的指令的情况下,所述计算机执行所述命令输出处理。
(6)本发明的支持程序,在有所述打印指令的情况下,所述计算机执行用于判断是否满足第二条件的第二判断处理,所述第二条件具有表示在接收到所述打印执行数据的所述打印机中,在满足预定条件之后开始打印的条件,在满足所述第二条件的情况下,即使所述打印执行数据发送到所述打印机,所述计算机也不执行所述命令输出处理,在不满足所述第二条件的情况下,在所述打印执行数据开始发送到所述打印机之前,所述计算机执行所述命令输出处理。
(7)本发明的支持程序,所述计算机执行用于接收与所述打印执行数据相关联的密码的设置的接收处理,在设置有所述密码的情况下,所述密码与发送到所述打印机的所述打印执行数据相关联,所述打印机具有在接收到的所述打印执行数据关联有所述密码的情况下,以所述密码输入到了所述打印机作为所述预定条件来进行使用所述打印执行数据的打印的功能,在设置有所述密码的情况下,所述计算机判断为满足所述第二判断处理中的所述第二条件。
(8)本发明的支持程序,在有所述打印指令的情况下,在所述打印执行数据开始发送到所述打印机之前,所述计算机执行用于接收用户通过所述信息处理装置的输入设备进行的操作的操作接收处理,在所述操作接收处理中接收到用户的操作之后,所述计算机执行所述命令输出处理。
(9)本发明的支持程序,在所述输出指令处理中,在所述命令发送程序的启动选项中指定所述打印机,通过启动所述命令发送程序,来使所述命令发送程序进行所述先行动作命令的输出,所述命令发送程序将所述先行动作命令输出到在所述启动选项中指定的所述打印机。
(10)本发明的支持程序,在所述输出指令处理中,所述计算机执行启动处理和指令输入处理,所述启动处理用于启动所述命令发送程序,所述指令输入处理用于对所述命令发送程序输入指定作为输出目的地的所述打印机的输出指令,所述命令发送程序在启动之后,在输入了所述输出指令的情况下,将所述先行动作命令输出到所述输出指令所指定的所述打印机。
(11)本发明的支持程序,在所述操作系统使用所述打印程序生成所述打印数据开始之前,所述计算机执行所述启动处理,在所述操作系统使用所述打印程序生成所述打印数据完成之后,所述计算机执行所述指令输入处理。
(12)本发明的支持程序,在所述输出指令处理中,将所述打印机指定为输出目的地,使用与用于将基于所述操作系统使用所述打印程序生成的打印数据的打印执行数据发送到所述打印机的通信模式不同的通信模式,来使所述命令发送程序进行所述先行动作命令的输出。
(13)本发明的支持程序,在所述输出指令处理中,通过指定在所述先行动作命令的输出中使用的通信模式,来使所述命令发送程序进行所述先行动作命令的输出。
(14)为了解决上述问题,本发明还提供一种信息处理装置,包括:通信接口;以及计算机。所述信息处理装置安装有与连接到所述信息处理装置的打印机相对应的支持程序,所述打印机具有进行开始打印前的先行动作的功能,所述信息处理装置的操作系统具有作为预先内置的程序的打印程序,在有如下打印指令的情况下,所述计算机执行命令输出处理和输出指令处理中的至少一个,所述打印指令是通过所述打印程序由所述打印机进行打印的指令,所述命令输出处理在基于所述操作系统使用所述打印程序生成的打印数据的打印执行数据开始发送到所述打印机之前,由所述支持程序通过所述通信接口向所述打印机输出用于执行所述先行动作的先行动作命令,所述输出指令处理由所述支持程序将所述打印机指定为输出目的地,指示命令发送程序输出用于进行开始打印前的先行动作的先行动作命令,在从所述支持程序指示了所述先行动作命令的输出的情况下,所述计算机通过所述命令发送程序经由所述通信接口将所述先行动作命令输出到输出目的地所指定的所述打印机。
(15)本发明的信息处理装置,在所述操作系统使用所述打印程序生成所述打印数据完成之后,所述计算机执行所述命令输出处理。
(16)为了解决上述问题,本发明还提供一种打印方法,用于使打印机执行使用基于信息处理装置生成的打印数据的打印执行数据的打印。所述打印机连接到所述信息处理装置,所述信息处理装置安装有与所述打印机相对应的支持程序,所述打印机具有进行开始打印前的先行动作的功能,所述信息处理装置的操作系统具有作为预先内置的程序的打印程序,所述打印方法包括命令输出步骤和输出指令步骤中的至少一个,在有通过所述打印程序由所述打印机进行打印的打印指令的情况下,所述命令输出步骤在基于所述操作系统使用所述打印程序生成的打印数据的所述打印执行数据开始发送到所述打印机之前,由所述支持程序从所述信息处理装置向所述打印机输出用于执行所述先行动作的先行动作命令,在有通过所述打印程序由所述打印机进行打印的所述打印指令的情况下,所述输出指令步骤由所述支持程序将所述打印机指定为输出目的地,指示命令发送程序输出所述先行动作命令,所述打印方法还包括在从所述支持程序指示了所述先行动作命令的输出的情况下,所述命令发送程序将所述先行动作命令输出到输出目的地所指定的所述打印机的命令输出步骤。
(17)本发明的打印方法,在所述命令输出步骤中,在所述操作系统使用所述打印程序生成所述打印数据完成之后,所述支持程序输出所述先行动作命令。
(18)为了解决上述问题,本发明还提供一种程序集,包括作为能够由信息处理装置的计算机执行的程序的支持程序和命令发送程序,所述支持程序是与连接到所述信息处理装置的打印机相对应的程序,在有通过预先内置在所述信息处理装置的操作系统中的打印程序由所述打印机进行打印的打印指令的情况下,使所述计算机执行输出指令处理,所述输出指令处理将所述打印机指定为输出目的地,指示所述命令发送程序输出用于进行开始打印前的先行动作的先行动作命令,所述命令发送程序在从所述支持程序指示了所述先行动作命令的输出的情况下,使所述计算机执行将所述先行动作命令输出到输出目的地所指定的所述打印机的命令输出处理,所述打印机具有进行与所述先行动作命令相对应的所述先行动作的功能。
(19)本发明的程序集,在所述支持程序的所述输出指令处理中,在所述命令发送程序的启动选项中指定所述打印机,通过启动所述命令发送程序,来指示所述命令发送程序输出所述先行动作命令,在所述命令发送程序的所述命令输出处理中,将所述先行动作命令输出到在所述启动选项中指定的所述打印机。
(20)本发明的程序集,在所述支持程序的所述输出指令处理中,使所述计算机执行启动处理和指令输入处理,所述启动处理用于启动所述命令发送程序,所述指令输入处理用于对所述命令发送程序输入指定作为输出目的地的所述打印机的输出指令,在所述命令发送程序的所述命令输出处理中,使所述计算机在所述命令发送程序启动之后,在输入了所述输出指令的情况下,将所述先行动作命令输出到所述输出指令所指定的所述打印机。
(21)本发明的程序集,在所述命令发送程序和所述命令输出处理中,使用与用于将基于所述操作系统使用所述打印程序生成的打印数据的打印执行数据发送到所述打印机的通信协议不同的通信协议,来将所述先行动作命令输出到输出目的地所指定的所述打印机。
用于实现上述装置的功能的控制方法、计算机程序和存储有该计算机程序的计算机可读存储介质也包括在本发明中。
根据本说明书公开的技术,在安装有OS标准打印程序的信息处理装置中,即使是由该打印程序进行打印,也能发挥打印机独有的能力。
附图说明
图1是示出打印系统的电结构的框图。
图2是示出由各程序进行的处理的顺序的说明图。
图3是示出第一实施方式中的各程序的动作的例子的时序图。
图4是示出第一实施方式中的打印处理的过程的流程图。
图5是示出第一实施方式中的后处理的过程的流程图。
图6是示出第一实施方式的变形例中的各程序的动作的例子的时序图。
图7是示出第二实施方式中的打印系统的电结构的框图。
图8是示出第二实施方式中的各程序的动作的例子的时序图。
图9是示出第二实施方式中的打印处理的过程的流程图。
图10是示出第二实施方式中的后处理的过程的流程图。
图11是示出第二实施方式的变形例中的各程序的动作的例子的时序图。
具体实施方式
以下参照附图详细说明使用实施方式的程序的打印系统。本实施方式公开的是包括个人计算机(以下称为“PC”)和打印机的打印系统。
图1示出执行本实施方式的程序的打印系统的结构的例子。图1所示的系统包括PC1和打印机2。PC 1是信息处理装置的一个例子。打印机2是具有打印功能的装置,能够通过本地通信或网络通信与PC1进行通信。
如图1所示,PC 1例如包括控制器10、用户接口(以下称为“UI”)20和通信接口(以下称为“通信IF”)30。UI 20和通信IF 30电连接到控制器10。
UI 20包括进行各种显示和接收用户输入指令的硬件。UI 20可以是兼具显示功能和输入接收功能的触摸面板,也可以是具有显示功能的显示器和具有输入接收功能的键盘、鼠标等的组合。
通信IF 30包括用于与打印机2通信的硬件和用于访问因特网的硬件。通信IF 30可以包括通信方式不同的多个接口。作为通信方式,可以是例如网络通信、USB通信。还可以包括进行无线通信的硬件,例如Wi-Fi(注册商标)和蓝牙(注册商标)等。
控制器10包括CPU 11和存储器12。CPU 11是计算机的一个例子。存储器12包括ROM、RAM和非易失性存储器,用于存储各种应用程序(applicationprogram)(以下称为“应用程序(APP)”)等程序和各种数据等。在本说明书中,不区分存储器的细节。CPU 11根据从存储器12读取的程序基于用户指令执行各种处理。图1中的控制器10是控制PC 1所使用的硬件和软件的总称,不限于表示PC 1中实际存在的单个硬件。
存储器12的一个例子可以是计算机可读存储介质。计算机可读存储介质是非暂时性(non-transitory)介质。除了上述例子之外,非暂时性介质还包括CD-ROM、DVD-ROM等记录介质。非暂时性介质也是有形(tangible)介质。另一方面,虽然用于传输从因特网上的服务器等下载的程序的电信号是计算机可读信号介质,属于计算机可读介质的一种,但是,它不包括在非暂时性的计算机可读存储介质中。
例如,如图1所示,存储器12存储:包括通用打印程序41的操作系统(以下称为“OS”)21;辅助程序42;以及编辑应用程序43。辅助程序42是支持程序的一个例子。辅助程序42例如是已由微软公司公开了规范的硬件支持应用程序(缩写为HSA)。OS 21例如是Microsoft windows(注册商标)、macOS(注册商标)、Linux(注册商标)。除了图中所示的之外,存储器12还存储包括所连接设备的信息的各种数据,以及浏览器等各种程序。
以下处理和流程图的各处理步骤基本上表示CPU 11的根据辅助程序42等程序中的命令的处理。即,在以下说明中,“判断”、“提取”、“选择”、“计算”、“决定”、“确定”、“获取”、“接收”、“控制”等处理表示CPU 11的处理。CPU 11进行的处理还包括使用OS 21的API的硬件控制。在本说明书中,省略OS 21的详细说明来说明各程序的动作。即,在以下说明中,“程序B控制硬件C”之类的表述也可以指的是“程序B使用OS 21的API控制硬件C”。此外,有时以省略的文字来表述CPU 11的根据程序中的命令的处理。例如,有时表述为“CPU 11执行”,省略程序。此外,CPU 11的根据程序中的命令的处理有时表述为“程序A执行”,省略CPU。
“获取”以不必须请求的概念来使用。也就是说,在CPU 11未请求的情况下接收数据的处理也包括在“CPU 11获取数据”的概念中。此外,本说明书中的“数据”由计算机可读的位串表示。实质含义内容相同但格式不同的数据视为相同的数据。这同样适用于本说明书中的“信息”。此外,“请求”、“指示”的概念是表示向对方输出表示请求的信息或表示指示的信息。此外,表示请求的信息或表示指示的信息也表述为“请求”、“指令”。
此外,CPU 11判断信息A是否表示事项B的处理概念性地表述为“根据信息A判断是否是事项B”。CPU 11判断信息A表示事项B还是事项C的处理概念性地表述为“根据信息A判断是事项B还是事项C”。
通用打印程序41是用于从PC 1通过打印机2等各种打印机执行打印的应用程序,是预先内置在OS 21中的OS标准打印程序。本实施方式的通用打印程序41是用于基于打印对象的图像数据来生成打印机能够应对的打印数据的程序。通用打印程序41是打印程序的一个例子。
通用打印程序41是能够适用于各设备的供应商提供的多种型号打印机的通用应用程序,是使各打印机执行多种型号共通的动作的程序。或者,通用打印程序41也可以是各设备的供应商提供给OS 21的供应商以便预先内置在OS 21中的程序,例如是为了预先内置在OS 21中而提供的打印机驱动程序的一种。
另一方面,在向OS 21供应商提供用于内置在OS 21中的通用打印程序41之后各设备的供应商开发的程序能够以所谓安装(install)的方式追加到PC 1。在下文中,将能够通过安装来追加的打印机驱动程序,而非预先内置在OS 21中的程序,简称为“打印机驱动程序”或“供应商驱动程序”。换言之,打印机驱动程序不是预先内置在OS 21中的程序,而是为了使用而需要按照预定过程安装在OS 21中的程序。例如,经由UI 20指示的安装程序或者OS 21将打印机驱动程序安装在OS 21中。打印机驱动程序可以是打印机的供应商分别与打印机的各型号相对应地提供的程序,是能够接收对应型号特有功能的指令的程序。
打印机驱动程序即供应商驱动程序可能具有比预先内置在OS 21中的通用打印程序41更高的性能。所谓更高的性能可以指的是,例如,由打印机驱动程序生成的打印数据比由通用打印程序41生成的打印数据在打印机中更有效率地处理,打印速度更快。此外,所谓更高的性能也可以指的是打印机可以使用更少的存储器来处理打印数据。此外,也可以是由打印机驱动程序生成的打印数据能够使打印机打印具有更好的色彩的打印物。此外,也可以是由打印机驱动程序生成的打印数据能够使打印机打印更高分辨率的打印物。此外,也可以是打印机驱动程序能够向打印机指示通用打印程序41不能指示的、打印机驱动程序所特有的功能。所谓特有的功能是指,例如,镜像打印功能,正反翻转打印功能。
辅助程序42是与通用打印程序41的动作相对应地基于来自OS21的指令执行处理的程序,是用于支持目标硬件的控制的应用程序。辅助程序42例如从OS 21启动。辅助程序42是与打印机2等的各型号对应的应用程序。辅助程序42由打印机2等设备的供应商提供。设备供应商根据OS 21供应商指定的过程将辅助程序42注册到OS 21供应商提供的平台中。当新的打印机2连接到PC 1并且与该打印机2对应的辅助程序42注册在平台中时,OS 21从存储有该辅助程序42的服务器下载该辅助程序42并且安装在PC 1中。
然后,OS 21将所安装的辅助程序42的识别信息与新连接的打印机2的打印机信息相关联,将其存储在存储器12中。在连接有多个型号的打印机的PC 1中,安装有分别与各型号对应的辅助程序,并且将使各打印机与各辅助程序相关联的信息存储在存储器12中。即,在存储器12中,作为与PC1连接的各打印机的打印机信息,存储该打印机的型号信息和访问信息,以及对应的辅助程序42的信息。
编辑应用程序43例如是用于创建和编辑图像数据和文本数据的应用程序。编辑应用程序43例如是Microsoft Word(注册商标)或PowerPoint(注册商标)。编辑应用程序43接收包含使打印机2执行预定动作的指令的用户操作。具体地,编辑应用程序43例如经由UI20接收使打印机2执行打印的打印指令。
接下来,将参照图2来说明各程序进行的打印的处理的顺序。在下文中,说明PC 1经由UI 20利用编辑应用程序43接收经由通用打印程序41使打印机2执行打印的打印指令的情况。
接收到打印指令的编辑应用程序43基于接收到的打印指令将打印执行通知发送到OS 21。打印执行通知例如包含如下信息:表示打印指令所指定的打印机的信息;打印参数;以及表示打印对象的图像数据的信息。
接着,如果与打印指令所指定的打印机相对应的辅助程序42存储在存储器12中,则OS 21在开始由通用打印程序41生成打印数据之前,指示辅助程序42执行辅助程序42的处理。
辅助程序42包括:在通用打印程序41的处理开始之前执行的前处理;以及在通用打印程序41的处理结束之后并且在将打印图像数据发送到打印机2之前执行的后处理。以下,将辅助程序42的处理中的在通用打印程序41的处理开始之前执行的处理作为“前处理辅助程序”421的处理进行说明,在通用打印程序41的处理结束之后执行的处理作为“后处理辅助程序”422的处理进行说明。
在本实施方式的PC 1中,响应于接收到打印指令,在通用打印程序41开始生成打印数据之前,前处理辅助程序421执行前处理。前处理辅助程序421能够从OS 21获取包含在打印指令中的各种信息,例如打印参数,打印机信息,以及基于打印对象的图像数据的中间图像数据。前处理辅助程序421基于所获取的信息和自身的程序执行前处理,并且在前处理结束之后向OS 21返回结束通知。后面将详细说明前处理辅助程序421的前处理。
当从前处理辅助程序421接收到结束通知时,OS 21执行通用打印程序41的处理。通用打印程序41基于打印指令生成打印数据。
在完成了打印数据的生成之后,OS 21在将基于所生成的打印数据的打印图像数据发送到打印机2之前,执行后处理辅助程序422的后处理。后处理辅助程序422能够从OS21获取打印参数和打印机的信息,以及所生成的打印数据。后处理辅助程序422基于所获取的信息和自身的程序来执行后处理,并且在后处理结束之后向OS 21返回结束通知。后面将详细说明后处理辅助程序422的后处理。
当从后处理辅助程序422接收到结束通知时,OS 21将打印参数与打印图像数据相关联并且将它们经由通信IF 30发送到打印机2。打印图像数据可以是打印数据本身,也可以表示通过加工由打印数据表示的图像而获得的图像。例如,在后处理中合成水印的情况下,打印图像数据是表示合成后的图像的数据。此外,可以通过前处理辅助程序421或后处理辅助程序422根据编辑应用程序43中的设置来改变打印参数。打印机2基于接收到的打印参数和打印图像数据来执行打印。
接下来,对于第一实施方式,将参照图3的时序图来说明包括辅助程序42的动作的打印系统的打印过程。在以下说明中,假设选择打印机2作为执行打印的打印机。
首先,编辑应用程序43经由UI 20接收打印对象的图像数据的指定和打印参数的设置(箭头A)。打印参数除了份数设置等一般设置以外,还包括打印机2和与打印机2对应的辅助程序42所特有的设置。
为了接收打印机2和与打印机2对应的辅助程序42所特有的设置,编辑应用程序43接收转移到详细设置的指令。编辑应用程序43当接收到转移到详细设置的指令时,将表示设置打印参数的执行命令发送到OS 21,并且经由OS 21将执行命令输出到辅助程序42(箭头B)。
辅助程序42响应于表示设置打印参数的执行命令,执行前处理辅助程序421的设置处理(箭头C)。这里,在UI 20上显示用于接收打印参数设置的设置画面,并且接收打印参数的设置和设置完成指令。能够接收的设置包括辅助程序42和打印机2所特有的功能的设置。
在本实施方式中,作为辅助程序42所特有的打印参数,接收如下设置和/或指定:是否使预览功能有效的设置,预览功能是在发送打印图像数据之前在UI 20上显示打印对象的图像的功能;以及安全打印的指定,安全打印是指以输入密码作为执行打印的条件。在接收到安全打印的指定的情况下,还接收密码的设置。所输入的密码包含在打印参数中。除此之外,作为辅助程序42所特有的打印参数,还可以接收与打印机驱动程序同等的功能的设置。
当接收到设置完成指令时,辅助程序42将结束通知发送到OS 21,并且通过OS 21将结束通知发送到编辑应用程序43(箭头D)。如果编辑应用程序43未接收到转移到详细设置的指令,则省略从箭头B到箭头D的处理。
然后,编辑应用程序43经由UI 20接收执行打印的指令(箭头E)。然后,当编辑应用程序43接收到执行打印的指令时,将打印执行通知发送到OS 21(箭头F)。打印执行通知包含表示所设置的打印参数和打印对象的图像数据的信息。打印执行通知是打印指令的一个例子。
当OS 21检测到从编辑应用程序43输出的打印执行通知时,OS 21基于包含在打印执行通知中的信息,确定被指定为执行打印的装置的打印机。例如,如果使用通用打印程序41指定由打印机2进行打印,并且安装了对应于该打印机2的辅助程序42,则OS 21输出辅助程序42的处理的执行命令(箭头G)。
辅助程序42在被输出了与其自身对应的执行命令时,执行前处理辅助程序421或后处理辅助程序422的处理。这里,OS 21在开始生成打印数据之前向辅助程序42输出前处理执行命令,使前处理辅助程序421开始前处理。
前处理辅助程序421使用从OS 21发送的打印机2的信息、打印参数、图像数据来执行前处理(箭头H)。从OS 21获取的图像数据是OS 21将从编辑应用程序43发送的图像数据的格式转换为中间数据的格式的中间图像数据。前处理例如是基于图像的放大缩小和合并等打印参数的设置的图像加工处理。此外,前处理也可以是在UI 2O上显示打印参数的设置画面,从而接收打印参数的设置的改变。在前处理的执行结束之后,前处理辅助程序421将结束通知发送到OS 21(箭头I)。
OS 21响应于从前处理辅助程序421接收到结束通知,使用通用打印程序41来生成打印数据(箭头J)。通用打印程序41所生成的打印数据是通用的打印数据,是能够在各种打印机2的打印中使用的打印数据。
在通用打印程序41生成打印数据结束之后,OS 21再次输出执行辅助程序42的处理的命令(箭头K)。具体地,在打印数据的生成结束之后,OS 21向辅助程序42输出后处理执行命令,开始后处理辅助程序422的后处理。
后处理辅助程序422使用从OS 21发送的打印机2的信息、打印参数和打印数据来执行后处理辅助程序422的后处理。作为后处理,本实施方式的后处理辅助程序422基于从OS 21获取的打印数据生成打印图像数据,并且在预览功能有效的情况下执行预览处理,在UI 2O上显示由所生成的打印图像数据表示的图像(箭头L)。
在预览处理中,后处理辅助程序422使用UI 20显示由打印图像数据表示的图像,并且经由UI 20接收对执行打印或取消打印的选择。也就是说,后处理辅助程序422通过UI20接收用户的操作。在选择了执行打印的情况下,使用从OS 21获取的打印机2的型号信息和IP地址,经由通信IF 30将用于指示打印机2执行先行动作的先行动作命令输出到打印机2(箭头M)。先行动作是在发送打印图像数据之前使打印机2进行打印准备的动作。
打印机2通过从PC 1接收到先行动作命令而开始先行动作(箭头N)。通过打印机2进行先行动作,能够缩短从用户输入打印指令到完成第一页打印的等待时间。
先行动作包括例如针对打印机2的每个型号的多种类型的先行动作。在打印机2是喷墨方式的打印机的情况下,例如,先行动作可以是取下打印头的防止干燥用帽,将打印头移动到打印开始位置。此外,在打印机2是电子照相方式的打印机的情况下,例如,先行动作可以是开始定影装置的预热。即,由于每个打印机型号能够执行的先行动作不同,因此,先行动作命令也有多种类型。辅助程序42与型号名称相关联地存储先行动作命令。此外,先行动作还可以与打印机2的打印方式无关,例如,基于打印参数确定供纸盘、从所确定的供纸盘拉出纸张并将纸张输送到预定的待机位置。
如果打印机2能够应对多种类型的先行动作命令,则后处理辅助程序422可以输出多种类型的先行动作命令,也可以通过预设置画面等来接收对输出到打印机2的先行动作命令的指定。当使打印机2执行多个先行动作时,可以依次发送多个先行动作命令,也可以将多个先行动作命令组合成单个先行动作命令来发送。打印机2具有执行至少一个先行动作的功能,在接收到先行动作命令时,执行与该先行动作命令相对应的先行动作。
此外,当通过预览处理选择了执行打印时,后处理辅助程序422将结束通知发送到OS 21(箭头O)。响应于从后处理辅助程序422接收到结束通知,OS 21将打印图像数据发送到打印机2(箭头P),基于打印执行通知的处理结束。接收到打印图像数据的打印机2基于接收到的打印图像数据进行打印(箭头Q)。
另一方面,如果通过预览处理选择了取消,则后处理辅助程序422将取消通知发送到OS 21(箭头R)。响应于从后处理辅助程序422接收到取消通知,OS 21结束基于打印执行通知的处理,而不将打印图像数据发送到打印机2。在这种情况下,打印机2不执行打印。
后处理辅助程序422输出先行动作命令在图3中是在结束通知发送到OS 21之前进行的,但是,也可以在结束通知发送到OS 21之后进行。此外,当预览功能无效,未执行预览处理时,后处理辅助程序422不显示预览,将先行动作命令输出到打印机2,将结束通知发送到OS 21。
此外,在后处理辅助程序422进行的后处理中,如果打印机2具有着色剂节省模式等特有功能,则也可以向打印机2发送使该特有功能有效的命令。
接下来,参照图4的流程图来说明在实现上述第一实施方式的打印系统的打印过程中,OS 21进行的打印处理的过程。当OS 21从编辑应用程序43接收到打印执行通知时(图3中的箭头F),PC 1的CPU 11根据OS 21执行打印处理。
在打印处理中,OS 21首先判断存储器12中是否有辅助程序42(S101)。如上所述,对应于各打印机的辅助程序42由设备供应商提供。当OS 21检测到打印机时,对应于所检测到的打印机的辅助程序42由OS 21安装在PC 1中。
当判断为存储器12中没有辅助程序42时,例如当没有提供对应于打印机2的辅助程序42时等(S101:否),OS 21使用通用打印程序41来生成打印数据(S102)。然后,所生成的打印数据或基于打印数据的打印图像数据被发送到打印机2(S103),打印处理结束。在打印图像数据的发送失败的情况下,OS 21可以执行预定的错误处理。
当辅助程序42未安装在PC 1中时,打印数据由通用打印程序41生成,因此,用户能够以相同的方式使用各种打印机2,而无需知道打印机2的设置。但是,与由高性能打印机驱动程序进行的打印相比,使用通用打印程序41进行的打印可能需要更长的打印时间,打印物的品质可能更低。
另一方面,如果判断为有辅助程序42(S101:是),则OS 21向对应于打印机2的辅助程序42输出执行命令,开始前处理辅助程序421的前处理(S111、图3中的箭头G)。由此,CPU11根据前处理辅助程序421执行前处理。当从OS 21执行前处理辅助程序421的处理时,例如,OS 21可以将表示前处理辅助程序421的信息输入到辅助程序42。或者,OS 21可以将表示前处理辅助程序421的信息存储在存储器12中,向前处理辅助程序421输出执行命令,前处理辅助程序421读取该信息。或者,OS 21可以输出指定了前处理辅助程序421的前处理的执行命令。
在前处理辅助程序421开始执行前处理之后,当从前处理辅助程序421接收到结束通知时,OS 21使用包含在OS 21中的通用打印程序41生成打印数据(S112,图3中的箭头J)。S112是与S102相同的处理。当从前处理辅助程序421接收到取消通知时,OS 21不生成打印数据,结束打印处理。
在生成打印数据之后,OS 21在将基于所生成的打印数据的打印图像数据发送到打印机2之前,将执行命令输出到对应于打印机2的辅助程序42,开始后处理辅助程序422的后处理(S113,图3中的箭头K)。由此,CPU 11根据后处理辅助程序422执行后处理。
在后处理辅助程序422开始执行后处理之后,OS 21进行待机,直到接收到从后处理辅助程序422发送的通知,判断从后处理辅助程序422接收到的通知是结束通知还是取消通知(S114)。当判断为接收到结束通知时(S114:是),OS 21将打印数据或基于打印数据的打印图像数据发送到打印机2(S103,图3中的箭头P),结束打印处理。当判断为接收到取消通知时(S114:否),OS 21结束打印处理,而不发送打印图像数据。
接下来,参照图5的流程图来说明由实现上述打印系统的辅助程序42进行的后处理的过程。当辅助程序42从OS 21接收到执行命令时(图3中的箭头K),PC 1的CPU 11根据作为辅助程序42的一部分的后处理辅助程序422执行后处理。
在后处理中,后处理辅助程序422首先根据打印参数基于使用通用打印程序41生成的打印数据来生成打印图像数据(S201)。在S201中,例如,对由打印数据表示的图像进行加工,以合成水印、页眉或页脚。在不对打印数据所表示的图像进行加工的情况下,可以省略S201,将打印数据直接作为打印图像数据,也可以生成打印数据的副本。
接着,后处理辅助程序422判断预览功能是否有效(S202)。如果预览功能有效(S202:是),则后处理辅助程序422进行预览显示,在UI 20上显示在S201中生成的打印图像数据所表示的图像,并且接收对执行打印还是取消打印的选择(S211,图3中的箭头L)。S211是预览处理的一个例子。然后,辅助程序42判断用户的选择是否是执行打印(S212)。
如果判断为选择了打印执行(S212:是),或者如果预览功能无效(S202:否),则后处理辅助程序422获取被指定为执行打印的装置的打印机2的打印机信息,将先行动作命令输出到打印机2(S203,图3中的箭头M)。S203是命令输出处理的一个例子。具体而言,后处理辅助程序422通过询问OS 21或者参照OS 21存储信息的存储位置,来获取打印机2的型号信息、IP地址等访问信息。由此,决定适合打印机型号和打印参数的先行动作命令,使用访问信息输出先行动作命令。
在S203之后,后处理辅助程序422将结束通知发送到OS 21(S204,图3中的箭头O),结束后处理。另一方面,如果判断为选择了取消(S212:否),则后处理辅助程序422将取消通知发送到OS21(S213,图3中的箭头R),结束后处理。
如上述详细说明所述,根据第一实施方式的辅助程序42,当有使打印机2通过通用打印程序41进行打印的打印指令时,在开始将基于通用打印程序41生成的打印数据的打印图像数据发送到打印机2之前,对作为该打印指令的对象的打印机2输出执行打印机独有的先行动作的先行动作命令。由此,即使PC 1接收到使用通用打印程序41进行打印的打印指令,也能够在打印机2基于该打印指令开始打印之前执行打印机独有的先行动作,从而能够发挥打印机独有的能力。
此外,第一实施方式的辅助程序42,在OS 21生成打印数据之后的预览处理中的用户操作结束之后,输出先行命令。即,当预览功能有效时,打印的执行不是在生成打印数据之前确定的,而是在生成打印数据之后确定的。因此,通过在生成打印数据之后发送先行动作命令,能够避免打印机浪费先行动作。此外,如果在发送打印图像数据之前接收用户的操作,则即使提前发送了先行动作命令,接收用户操作的等待时间也较长,可能浪费先行动作。因此,通过在用户操作之后发送先行动作命令,能够避免打印机浪费先行动作。
接下来,参照图6的时序图来说明包括辅助程序42的动作的打印系统的打印过程的第一实施方式的变形例。第一实施方式的变形例与第一实施方式的不同之处在于,在前处理中输出先行动作命令。在图6所示的各处理中,与图3所示的第一实施方式相同的处理使用相同的附图标记。此外,在第一实施方式的变形例中,箭头A至G与图3所示的第一实施方式相同,因此省略其说明。
在从OS 21输出了前处理执行命令的情况下(图3中的箭头G),辅助程序42的前处理辅助程序421进行作为前处理之一的第一输出判断(箭头S),判断如下两个条件是否都不满足:后输出条件,即,在打印数据生成后输出先行动作命令的条件;以及限制条件,即,用于限制先行动作命令的输出的条件。当满足第一输出判断的条件时,即,当后输出条件和限制条件两者都不满足时,在前处理中将先行动作命令输出到打印机2(箭头T)。打印机2通过从PC 1接收到先行动作命令来开始先行动作(箭头U)。另一方面,在不满足第一输出判断的条件的情况下,即,在满足后输出条件和限制条件中的至少一个的情况下,不输出先行动作命令。
本实施方式的后输出条件对应于预览功能有效的情况。在执行预览处理的情况下,打印有可能被取消,即使在预览处理之前输出了先行动作命令,打印机2所进行的先行动作也被浪费。此外,即使选择了执行打印,如果用了很长时间进行选择,则等待了长时间的先行动作也被浪费。
换言之,后输出条件相当于与取消执行打印和等待接收用户操作中的至少一个有关的条件。后输出条件是第一条件的一个例子。在例如除了预览功能之外,还具有在发送打印图像数据之前显示是否发送的消息,并且接收用户的输入操作的功能的情况下,可以将使该功能有效作为后输出条件。当在前处理中通过用户的输入操作接收到打印参数的改变时,前处理辅助程序421在该接收结束之后进行后输出条件的判断。
此外,本实施方式的限制条件对应于安全打印的指定。在指定了安全打印的情况下,打印机2在接收到打印图像数据后接收密码的输入,当输入了与打印参数中包含的密码一致的密码时,进行基于该打印图像数据的打印。换言之,当指定了安全打印时,即使打印机2接收到打印图像数据,也不立即开始打印。因此,能够判断为不需要进行先行动作,限制先行动作命令的发送。
即,限制条件相当于即使打印机2接收到打印图像数据,除非满足其它条件,否则不开始打印。限制条件是第二条件的一个例子。除了安全打印以外,或者代替安全打印,限制条件例如还可以是与在指定时间进行打印的预约打印有关的指定。或者,限制条件还可以包括进行如下打印的情况:即使没有输入密码,也等待来自用户的执行指令的输入操作来开始打印。或者,限制条件还可以是打印机2已经在执行打印,这是因为在执行打印的过程中不需要先行动作。此外,限制条件还可以是由于缺纸或卡纸等错误导致不能打印,这是因为即使执行先行动作也不能立即开始打印。
在前处理的执行完成之后,前处理辅助程序421将结束通知发送到OS 21(箭头I)。响应于从前处理辅助程序421接收到结束通知,OS 21使用通用打印程序41生成打印数据(箭头J),输出辅助程序42的后处理的执行命令(箭头K)。
当输出了后处理的执行命令时,辅助程序42的后处理辅助程序422执行作为后处理之一的预览处理(箭头L)。如果预览功能无效,则省略预览处理。
此外,后处理辅助程序422进行作为后处理之一的第二输出判断(箭头V),判断如下两个条件是否都满足:满足输出执行条件,即,用于输出先行动作命令的条件;以及不满足限制条件,即,用于限制先行动作命令的输出的条件。如果满足第二输出判断的条件,则在后处理中将先行动作命令输出到打印机2(箭头W)。打印机2通过从PC1接收到先行动作命令来开始先行动作(箭头X)。
第一实施方式的变形例的输出执行条件相当于在预览处理中选择了执行打印。在执行预览处理的情况下,在生成打印数据后接收是执行打印还是取消打印,因此,能够判断是否能够通过选择执行打印来发送先行动作命令。
此外,第一实施方式的变形例的后处理中的限制条件,除了与前处理中的限制条件相同的条件之外,还相当于在前处理中发送先行动作命令。如果在前处理中发送了先行动作命令,则在后处理中发送先行动作命令是浪费的。当不满足与前处理中的限制条件相同的条件,并且在前处理中未发送先行动作命令时,判断为不满足限制条件。因此,能够在已经发送了先行动作命令的情况下判断为不需要发送先行动作命令。
当在预览处理中未选择取消而结束后处理的执行时,后处理辅助程序422将结束通知发送到OS 21(箭头o)。响应于从后处理辅助程序422接收到结束通知,OS 21将打印图像数据发送到打印机2(箭头P),结束基于打印执行通知的处理。接收到打印图像数据的打印机2基于接收到的打印图像数据开始打印(箭头Q)。尽管图中未示出,在通过选择取消而结束后处理的执行的情况下,后处理辅助程序422将取消通知发送到OS 21。响应于接收到取消通知,OS 21结束基于打印执行通知的处理,而不发送打印图像数据。
如上详细所述,即使是第一实施方式的变形例的辅助程序42,当有通过通用打印程序41使打印机2进行打印的打印指令时,在开始向打印机2发送打印图像数据之前,辅助程序42向打印机2输出先行动作命令。由此,即使PC 1接收到来自通用打印程序41的打印指令,打印机2也能够在打印机2基于该打印指令开始打印之前执行打印机2所独有的先行动作,能够发挥打印机独有的能力。
而且,本实施方式的辅助程序42在OS 21生成打印数据之前进行后输出条件的判断,在不满足后输出条件的情况下,即使在OS 21生成打印数据之前,也能够将先行动作命令发送到打印机2。换言之,根据打印条件,存在在生成打印数据之前就确定执行打印的情况。在这种情况下,通过在生成打印数据之前发送先行动作命令,能够尽早开始打印机中的先行动作,能够尽早开始打印。
而且,第一实施方式的变形例的辅助程序42进行限制条件的判断,在满足限制条件的情况下,即使不满足后输出条件或满足输出执行条件,也不将先行动作命令发送到打印机2。即,根据打印条件,存在在将打印执行数据发送到打印机2之后,打印机2不立即开始打印的情况。在这种情况下,通过不发送先行动作命令,能够避免打印机2中的先行动作的浪费。
此外,在第一实施方式及其变形例中,在接收打印指令(箭头E)之前,作为特有的打印参数,辅助程序42接收是否使在发送打印图像数据之前将打印对象的图像显示在UI20上的预览功能有效的设置,以及将输入密码作为执行打印的条件的安全打印指定(箭头C),但是,也可以作为接收到打印指令后的前处理(箭头H或箭头S)之一来接收。
此外,在第一实施方式及其变形例中,作为特有的打印参数,辅助程序42接收是否使在发送打印图像数据之前将打印对象的图像显示在UI 20上的预览功能有效的设置,以及将输入密码作为执行打印的条件的安全打印指定,但是,也可以由OS 21接收这些设置的一部分或全部。
以下参照图7至图11来说明根据本申请的第二实施方式的打印机2。在以下的说明中,对与第一实施方式不同之处进行说明,对与第一实施方式相同的结构赋予相同的附图标记,并且省略其说明。
如图7所示,第二实施方式的打印机2除了存储器12的结构之外与第一实施方式的打印机2相同。也就是说,存储器12除了存储OS 21、辅助程序42和编辑应用程序43之外,还存储命令发送应用程序44。
第二实施方式的辅助程序422不发送先行动作命令等命令。代替辅助程序422,命令发送应用程序44发送这些命令。
命令发送应用程序44是向指定设备发送各种命令的程序。命令发送应用程序44例如从辅助程序42启动。命令发送应用程序44由打印机2等设备的供应商准备,例如与辅助程序42组合安装。在连接有多个型号的打印机的PC 1中,可以安装与各型号相对应的各命令发送应用程序,也可以安装多个型号共通的命令发送应用程序。命令发送应用程序44是命令发送程序的一个例子。
接下来,对于第二实施方式,参照图8的时序图来说明包括辅助程序42的动作的打印系统的打印过程。在以下说明中,假设选择打印机2作为执行打印的打印机。
首先,编辑应用程序43经由UI 20接收执行打印的指令(箭头A1)。当编辑应用程序43接收到执行打印的指令时,编辑应用程序43将打印执行通知发送到OS 21(箭头B1)。打印执行通知是打印指令的一个例子。
编辑应用程序43在接收执行打印的指令之前接收打印对象的图像数据的指定和打印参数的设置,打印执行通知包含表示所设置的打印参数和打印对象的图像数据的信息。打印参数除了份数设置等一般设置以外,还包括打印机2所特有的设置和与打印机2对应的辅助程序42所特有的设置。作为辅助程序42所特有的打印参数,例如可以是如下设置和/或指定:是否使预览功能有效的设置,预览功能是在发送打印数据之前在UI 20上显示打印对象的图像;以及安全打印的指定,安全打印是指以输入密码作为执行打印的条件。在接收到安全打印的指定的情况下,密码也包含在打印参数中。此外,作为辅助程序42所特有的打印参数,还可以包括与打印机驱动程序同等的功能的设置。
当OS 21检测到从编辑应用程序43输出的打印执行通知时,OS 21基于包含在打印执行通知中的信息,确定被指定为执行打印的装置的打印机。例如,如果使用通用打印程序41指定由打印机2进行打印,并且安装了对应于该打印机2的辅助程序42,则OS 21输出辅助程序42的处理的执行命令(箭头C1)。
辅助程序42在被输出了与其自身对应的执行命令时,执行前处理辅助程序421或后处理辅助程序422的处理。这里,OS 21在开始生成打印数据之前向辅助程序42输出前处理执行命令,使前处理辅助程序421开始前处理。
前处理辅助程序421使用从OS 21发送的打印机2的信息、打印参数、图像数据来执行前处理(箭头D1)。从OS 21获取的图像数据是OS 21将从编辑应用程序43发送的图像数据的格式转换为中间数据的格式的中间图像数据。前处理例如是基于图像的放大缩小和合并等打印参数的设置的图像加工处理。此外,前处理也可以是在UI 20上显示打印参数的设置画面,从而接收打印参数的设置的改变。在前处理的执行结束之后,前处理辅助程序421将结束通知发送到OS 21(箭头E1)。
OS 21响应于从前处理辅助程序421接收到结束通知,使用通用打印程序41来生成打印数据(箭头F1)。通用打印程序41所生成的打印数据是通用的打印数据,是能够在各种打印机2的打印中使用的打印数据。
在通用打印程序41生成打印数据结束之后,OS 21再次输出执行辅助程序42的处理的命令(箭头G1)。具体地,在打印数据的生成结束之后,OS 21向辅助程序42输出后处理执行命令,开始后处理辅助程序422的后处理。
后处理辅助程序422使用从OS 21发送的打印机2的信息、打印参数和打印数据来执行后处理辅助程序422的后处理。作为后处理,后处理辅助程序422除了基于从OS 21获取的打印数据生成打印图像数据以外,还判断是否满足限制条件,限制条件是用于限制先行动作命令的输出的条件(箭头H1)。
与第一实施方式的变形例同样地,第二实施方式的限制条件对应于安全打印的指定。在指定了安全打印的情况下,打印机2在接收到打印图像数据后接收密码的输入,当输入了与打印参数中包含的密码一致的密码时,进行基于该打印图像数据的打印。换言之,当指定了安全打印时,即使打印机2接收到打印图像数据,也不立即开始打印。因此,能够判断为不需要进行先行动作,限制先行动作命令的发送。
即,限制条件相当于即使打印机2接收到打印图像数据,除非满足其它条件,否则不开始打印。除了安全打印以外,或者代替安全打印,限制条件例如还可以是与在指定时间进行打印的预约打印有关的指定。或者,限制条件还可以包括进行如下打印的情况:即使没有输入密码,也等待来自用户的执行指令的输入操作来开始打印。或者,限制条件还可以是打印机2已经在执行打印,这是因为在执行打印的过程中不需要先行动作。此外,限制条件还可以是由于缺纸或卡纸等错误导致不能打印,这是因为即使执行先行动作也不能立即开始打印。
然后,如果不满足限制条件,则后处理辅助程序422启动命令发送应用程序44(箭头I1)。命令发送应用程序44的启动命令包含启动选项,该启动选项包含与作为命令输出目的地的打印机2的地址信息、打印机2的型号信息等发送方法有关的发送信息。后处理辅助程序422在启动命令发送应用程序44之前从OS 21获取发送信息。
当命令发送应用程序44被启动时,使用包含在启动选项中的打印机2的型号信息来创建指示打印机2执行先行动作的先行动作命令,使用包含在启动选项中的地址信息经由通信IF 30向打印机2输出所创建的先行动作命令(箭头J1)。先行动作是在发送打印图像数据之前使打印机2进行打印准备的动作。在输出先行动作命令后,命令发送应用程序44自动结束。
打印机2通过从PC 1接收到先行动作命令而开始先行动作(箭头K1)。通过打印机2进行先行动作,能够缩短从用户输入打印指令到完成第一页打印的等待时间。
与第一实施方式的变形例同样地,先行动作包括例如针对打印机2的每个型号的多种类型的先行动作。在打印机2是喷墨方式的打印机的情况下,例如,先行动作可以是取下打印头的防止干燥用帽,将打印头移动到打印开始位置。此外,在打印机2是电子照相方式的打印机的情况下,例如,先行动作可以是开始定影装置的预热。即,由于每个打印机型号能够执行的先行动作不同,因此,先行动作命令也有多种类型。命令发送应用程序44与型号名称相关联地存储先行动作命令。此外,先行动作还可以与打印机2的打印方式无关,例如,基于打印参数确定供纸盘、从所确定的供纸盘拉出纸张并将纸张输送到预定的待机位置。
如果打印机2能够应对多种类型的先行动作命令,则命令发送应用程序44可以输出多种类型的先行动作命令,也可以通过预设置画面等来接收对输出到打印机2的先行动作命令的指定。当使打印机2执行多个先行动作时,可以依次发送多个先行动作命令,也可以将多个先行动作命令组合成单个先行动作命令来发送。打印机2具有执行至少一个先行动作的功能,在接收到先行动作命令时,执行与该先行动作命令相对应的先行动作。
在启动了命令发送应用程序44之后,或者当满足限制条件时,后处理辅助程序422将结束通知发送到OS 21(箭头L1)。响应于从后处理辅助程序422接收到结束通知,OS 21将打印图像数据发送到打印机2(箭头M1),基于打印执行通知的处理结束。接收到打印图像数据的打印机2基于接收到的打印图像数据进行打印(箭头N1)。
后处理辅助程序422的后处理也可以是显示基于打印图像数据的图像的预览显示。在进行预览显示的情况下,接收对执行打印或取消打印进行选择的用户操作,在选择了执行打印的情况下启动命令发送应用程序44,在选择了取消打印的情况下不启动命令发送应用程序44,代替结束通知将取消通知发送到OS 21。
此外,在上述过程中,命令发送应用程序44基于打印机2的型号信息创建先行动作命令,但是,也可以是后处理辅助程序422创建先行动作命令,并且将表示先行动作命令的种类的信息包含在启动选项中。在这种情况下,辅助程序42将先行动作命令与型号名称相关联地存储,命令发送应用程序44不生成先行动作命令,而是基于包含在启动选项中的表示先行动作命令的种类的信息来输出先行动作命令。
此外,在上述过程中,后处理辅助程序422启动命令发送应用程序44输出先行动作命令作为生成打印数据之后的后处理,但是,也可以是前处理辅助程序421启动命令发送应用程序44输出先行动作命令作为生成打印数据之前的前处理。
此外,在上述过程中,通过辅助程序42启动命令发送应用程序44,命令发送应用程序44根据启动选项自动输出先行动作命令,即,命令发送应用程序44的启动还用作先行动作命令的输出指令,但是,命令发送应用程序44的启动和先行动作命令的输出指令可以分别进行。在这种情况下,例如,连续执行命令发送应用程序44的启动和先行动作命令的输出指令,将命令发送应用程序44的启动选项中所包含的发送信息包含在先行动作命令的输出指令中。
此外,命令发送应用程序44由辅助程序42启动,通过启动命令发送应用程序44而自动开始用于输出先行动作命令的处理,输出后自动结束,但是,也可以是已经启动了的常驻应用程序。在这种情况下,辅助程序42向命令发送应用程序44输出用于输出先行动作命令的执行命令,命令发送应用程序44基于包含在该执行命令中的发送信息输出先行动作命令,在输出后不结束命令发送应用程序44。
接下来,参照图9的流程图来说明在实现上述第二实施方式的打印系统的打印过程中,OS 21进行的打印处理的过程。当OS 21从编辑应用程序43接收到打印执行通知时(图8中的箭头B1),PC 1的CPU 11根据OS 21执行打印处理。
在打印处理中,OS 21首先判断存储器12中是否有辅助程序42(S301)。如上所述,对应于各打印机的辅助程序42由设备供应商提供。当OS 21检测到打印机时,对应于所检测到的打印机的辅助程序42由OS 21安装在PC 1中。
当判断为存储器12中没有辅助程序42时,例如当没有提供对应于打印机2的辅助程序42时等(S301:否),OS 21使用通用打印程序41来生成打印数据(S302)。然后,所生成的打印数据或基于打印数据的打印图像数据被发送到打印机2(S303),打印处理结束。在打印图像数据的发送失败的情况下,OS 21可以执行预定的错误处理。
当辅助程序42未安装在PC 1中时,打印数据由通用打印程序41生成,因此,用户能够以相同的方式使用各种打印机2,而无需知道打印机2的设置。但是,与由高性能打印机驱动程序进行的打印相比,使用通用打印程序41进行的打印可能需要更长的打印时间,打印物的品质可能更低。
另一方面,如果判断为有辅助程序42(S301:是),则OS 21向对应于打印机2的辅助程序42输出执行命令,开始前处理辅助程序421的前处理(S311、图8中的箭头C1)。由此,CPU11根据前处理辅助程序421执行前处理。当从OS 21执行前处理辅助程序421的处理时,例如,OS 21可以将表示前处理辅助程序421的信息输入到辅助程序42。或者,OS 21可以将表示前处理辅助程序421的信息存储在存储器12中,向前处理辅助程序421输出执行命令,前处理辅助程序421读取该信息。或者,OS 21可以输出指定了前处理辅助程序421的前处理的执行命令。
在前处理辅助程序421开始执行前处理之后,当从前处理辅助程序421接收到结束通知时,OS 21使用包含在OS 21中的通用打印程序41生成打印数据(S312,图8中的箭头F1)。S312是与S302相同的处理。当从前处理辅助程序421接收到取消通知时,OS 21不生成打印数据,结束打印处理。
在生成打印数据之后,OS 21在将基于所生成的打印数据的打印图像数据发送到打印机2之前,将执行命令输出到对应于打印机2的辅助程序42,开始后处理辅助程序422的后处理(S313,图8中的箭头G1)。由此,CPU 11根据后处理辅助程序422执行后处理。
在后处理辅助程序422开始执行后处理之后,OS 21进行待机,直到接收到从后处理辅助程序422发送的通知,判断从后处理辅助程序422接收到的通知是结束通知还是取消通知(S314)。当判断为接收到结束通知时(S314:是),OS 21将打印数据或基于打印数据的打印图像数据发送到打印机2(S303,图8中的箭头M1),结束打印处理。当判断为接收到取消通知时(S314:否),OS 21结束打印处理,而不发送打印图像数据。
接下来,参照图10的流程图来说明由实现上述打印系统的辅助程序42进行的后处理的过程。当辅助程序42从OS 21接收到执行命令时(图8中的箭头G1),PC 1的CPU 11根据作为辅助程序42的一部分的后处理辅助程序422执行后处理。
在后处理中,后处理辅助程序422首先根据打印参数基于使用通用打印程序41生成的打印数据来生成打印图像数据(s401)。在S401中,例如,对由打印数据表示的图像进行加工,以合成水印、页眉或页脚。在不对打印数据所表示的图像进行加工的情况下,可以省略S401,将打印数据直接作为打印图像数据,也可以生成打印数据的副本。
接着,后处理辅助程序422判断是否满足限制条件(S402,图8中的箭头H1)。如果不满足限制条件(S402:否),则后处理辅助程序422判断对于被指定为执行打印的装置的打印机2是否存在多个能够进行通信的通信模式(S404)。在S404中,不同通信模式指的是不同通信介质或不同通信方式,作为通信模式的具体例子,可以是有线通信的USB、LAN口,无线通信的WiFi、蓝牙。S404是判断除了由打印指令选择的通信模式以外是否还存在能够与打印机2进行通信的通信模式的处理,例如,在打印指令选择了通过WiFi进行无线通信的情况下,如果通过WiFi以外的通信模式也能够与打印机2进行通信,则判断为能够与打印机2进行通信的通信模式有多个。
如果能够与打印机2进行通信的通信模式有多个(S404:是),则后处理辅助程序422选择打印指令当前选择的通信模式以外的通信模式中的一个,作为用于输出先行动作命令的通信模式(S405)。另一方面,如果能够与打印机2进行通信的通信模式没有多个(S404:否),则后处理辅助程序422选择打印指令当前选择的通信模式,作为用于输出先行动作命令的通信模式(S406)。
在选择了通信模式之后,后处理辅助程序422启动命令发送应用程序44(S407,图8中的箭头I1)。S407是输出指令处理的一个例子。具体而言,后处理辅助程序422通过询问OS21或者参照OS 21存储信息的存储位置,来获取打印机2的型号信息、IP地址等访问信息。在启动选项中包含表示打印机2的型号信息、IP地址和所选择的通信模式的信息,启动命令发送应用程序44。命令发送应用程序44根据包含在启动选项中的通信模式,将先行动作命令输出到打印机2。通信模式将先行动作命令输出到打印机2。在存在多个能够与打印机2进行通信的通信模式的情况下,通过以与发送打印图像数据时的通信模式不同的通信模式向打印机2输出先行动作命令,先行动作命令的输出不影响打印图像数据的发送,能够避免因一方延迟而导致另一方延迟的问题。
在启动了命令发送应用程序44之后,或者当满足限制条件时(S402:是),后处理辅助程序422将结束通知发送到OS 21(S403,图8中的箭头L1),结束后处理。
在上述过程中,后处理辅助程序422选择用于发送先行动作命令的通信模式,但是,也可以是命令发送应用44进行选择。在这种情况下,表示用于发送打印图像数据的通信模式的信息从后处理辅助程序422发送到命令发送应用程序44。此外,在上述过程中,用于发送先行动作命令的打印机2的型号信息和访问信息由后处理辅助程序422从OS 21获取并且发送到命令发送应用程序44,但是,也可以是仅将用于确定打印机2的信息从后处理辅助程序422发送到命令发送应用程序44,命令发送应用程序44从OS 21获取打印机2的型号信息和访问信息。
如上述详细说明所述,根据第二实施方式的辅助程序42,当有使打印机2通过通用打印程序41进行打印的打印指令时,辅助程序42将作为该打印指令的对象的打印机2指定为输出目的地,对具有先行动作命令输出功能的命令发送应用程序44输出执行打印机独有的先行动作的先行动作命令。由此,即使PC 1接收到使用通用打印程序41进行打印的打印指令,打印机2也能够执行打印机独有的先行动作,能够发挥打印机独有的能力。
而且,第二实施方式的辅助程序42在需要输出先行动作命令时启动命令发送应用程序44,命令发送应用程序44在启动时自动输出先行动作命令,然后结束。因为通过命令发送应用程序44的启动来自动完成先行动作命令的输出,因此,与由不同命令来执行命令发送应用程序44的启动和先行动作命令的输出相比,能够使辅助程序42的处理简单。
接下来,参照图11的时序图来说明包括辅助程序42的动作的打印系统的打印过程的第二实施方式的变形例。第二实施方式的变形例与第二实施方式的不同之处在于,在前处理中启动命令发送应用程序44。此外,第二实施方式的变形例与第二实施方式的不同之处在于,命令发送应用程序44被启动并且不立即输出命令。在图11所示的各处理中,与图8所示的第二实施方式相同的处理使用相同的附图标记。此外,在图8所示的第二实施方式的变形例中,箭头A1至C1与第二实施方式相同,因此省略其说明。
在从OS 21输出了前处理执行命令的情况下(图11中的箭头C1),辅助程序42的前处理辅助程序421进行作为前处理之一的判断是否满足限制条件的判断(箭头O1)。这里的限制条件例如可以是与第二实施方式的箭头H1相同的条件。
如果不满足限制条件,则前处理辅助程序421启动命令发送应用程序44(箭头P1)。箭头P1的处理是启动处理的一个例子。在本实施方式中,仅启动命令发送应用程序44,在启动命令的启动选项中不包含关发送方法的发送信息。
在启动了命令发送应用程序44之后,或者当满足限制条件时,前处理辅助程序421将结束通知发送到OS21(箭头E1)。响应于从前处理辅助程序421接收到结束通知,OS 21使用通用打印程序41生成打印数据(箭头F1),输出辅助程序42的后处理的执行命令(箭头G1)。
在输出了后处理的执行命令的情况下,辅助程序42的后处理辅助程序422进行作为后处理之一的判断是否满足限制条件的判断(箭头H1)。如果不满足限制条件,则后处理辅助程序422输出命令发送应用程序44的处理的执行命令(箭头Q1)。箭头Q1的处理是指令输入处理的一个例子。与第二实施方式的命令发送应用程序44启动时的启动选项同样地,第二实施方式的变形例的命令发送应用程序44的处理的执行命令包含作为命令输出目的地的打印机2的型号信息、地址信息、以及表示通信模式的信息。
当有来自后处理辅助程序422的执行命令时,命令发送应用程序44使用包含在执行命令中的信息将先行动作命令输出到打印机2(箭头J1)。打印机2通过从PC 1接收先行动作命令来开始先行动作(箭头K1)。箭头L1至N1与第二实施方式相同,因而省略其说明。
如上述详细说明所述,对于第二实施方式的变形例的辅助程序42,当PC 1接收到使用通用打印程序41进行打印的打印指令时,命令发送应用程序44输出先行动作命令。由此,打印机2能够执行打印机独有的先行动作,能够发挥打印机独有的能力。
而且,第二实施方式的变形例的辅助程序42分开进行命令发送应用程序44的启动和对命令发送应用程序44输入执行命令,因此,能够预先启动命令发送应用程序44,在从辅助程序42输入先行动作命令的输出指令后,能够迅速地向打印机2发送先行动作命令,能够尽早开始打印机2中的先行动作的执行。例如,在预览显示打印图像数据所表示的图像的情况下,虽然先行动作命令的发送在用户进行操作选择了执行打印之后,但是,因为预先启动了命令发送应用程序44,因而与选择了执行打印后再启动的情况相比,能够迅速发送先行动作命令。
第二实施方式及其变形例可以进一步变形如下。命令发送应用程序44可以是用于输出先行动作命令的专用应用程序,也可以是还能够发送其它命令的应用程序。例如,在打印机2具有着色剂节省模式等特有功能的情况下,可以向打印机2发送用于使该特有功能有效的命令。此外,还可以具有命令发送功能以外的功能。
此外,命令发送应用程序44可以像在第二实施方式及其变形例中那样安装在与安装有辅助程序42的设备相同的设备中,也可以安装在不同的设备中。例如,命令发送应用程序44可以安装在与PC 1连接的服务器中。
本说明书中所公开的实施方式仅仅是示例性的,不以任何方式限制本发明。因此,本说明书中公开的技术当然可以在不脱离其要旨的范围内以各种方式进行改进和变形。例如,连接到PC 1的设备不限于打印机,只要是具有打印功能的装置即可适用,例如多功能机、复印机、传真机等。此外,连接到PC 1的打印机的数量不限于一个,可以是多个。
此外,例如,虽然在上述实施方式中辅助程序42包括前处理和后处理两者,但是,辅助程序42也可以仅包括在生成打印数据后启动的后处理辅助程序422。此外,前处理辅助程序421和后处理辅助程序422可以是单个模块,也可以是不同的模块。
此外,打印参数可以作为先行动作命令来发送。在这种情况下,如果打印参数包括彩色打印的设置,则接收到打印参数的打印机2执行彩色打印的准备动作,如果打印参数包括单色打印的设置,则接收到打印参数的打印机2执行仅黑色的准备动作。
此外,当打印机2是激光打印机时,可以执行用于抑制色偏的校准处理作为彩色打印的准备动作。此外,如果打印机2是包括整理装订装置(finisher)的型号,并且打印参数包括整理装订装置进行的处理,则打印机2可以在接收到打印参数时进行整理装订装置的准备动作。
此外,用于执行前处理和后处理的模块不限于辅助程序42,只要是在由OS 21的通用打印程序41执行打印时从OS 21接收指令的程序即可。例如,可以使用微软公司公开了规范的打印工作流(Print workflow)应用程序。
此外,在上述实施方式中,通过从OS 21输出辅助程序42的执行命令来启动辅助程序42,但是,启动辅助程序42的时机不限于此。例如,辅助程序42可以保持在启动的状态,在这种情况下,辅助程序42可以在接收到执行命令时进行上述动作。
此外,在上述实施方式中公开的任意流程图中,只要处理内容不产生矛盾,则任意多个步骤中的多个处理可以任意改变执行顺序,或者并行执行。
此外,在上述实施方式中公开的处理可以由单个CPU、多个CPU、ASIC等硬件、或者它们的组合来执行。此外,在上述实施方式中公开的处理可以以各种形式实现,例如记录有用于执行这些处理的程序的记录介质、方法等。
此外,在不产生矛盾的范围内,可以任意组合来执行上述实施方式及其变形例的处理。
附图标记说明
1:PC
2:打印机
11:CPU
21:OS
41:通用打印程序
42:辅助程序
43:编辑应用程序
44:命令发送应用程序。

Claims (21)

1.一种支持程序,能够由信息处理装置的计算机执行,与连接到所述信息处理装置的打印机相对应,
在有如下打印指令的情况下,所述计算机执行命令输出处理和输出指令处理中的至少一个,所述打印指令是通过预先内置在所述信息处理装置的操作系统中的打印程序由所述打印机进行打印的指令,
所述命令输出处理在基于所述操作系统使用所述打印程序生成的打印数据的打印执行数据开始发送到所述打印机之前,通过所述信息处理装置的通信接口向所述打印机输出用于进行开始打印前的先行动作的先行动作命令,所述打印机具有进行与所述先行动作命令相对应的所述先行动作的功能,
所述输出指令处理将所述打印机指定为输出目的地,使命令发送程序进行所述先行动作命令的输出,所述命令发送程序具有将所述先行动作命令输出到输出目的地所指定的打印机的功能。
2.根据权利要求1所述的支持程序,其特征在于,在所述操作系统使用所述打印程序生成所述打印数据完成之后,所述计算机执行所述命令输出处理。
3.根据权利要求2所述的支持程序,其特征在于,在所述操作系统生成所述打印数据之后,基于所生成的所述打印数据的所述打印执行数据发送到所述打印机之前,所述计算机执行预览处理,所述预览处理用于在所述信息处理装置的显示装置上显示由所述打印执行数据表示的图像,并且接收是否进行基于所述打印执行数据的打印的指令,
所述计算机在所述预览处理之后执行所述命令输出处理。
4.根据权利要求1所述的支持程序,其特征在于,在有所述打印指令的情况下,在所述操作系统使用所述打印程序生成所述打印数据完成之前,所述计算机执行用于判断是否满足第一条件的第一判断处理,所述第一条件是表示不在生成所述打印数据完成之前确定是否进行打印,在生成所述打印数据完成之后确定是否进行打印的条件,
在满足所述第一条件的情况下,在所述操作系统生成所述打印数据完成之后,所述计算机执行所述命令输出处理,
在不满足所述第一条件的情况下,在所述操作系统生成所述打印数据完成之前,所述计算机执行所述命令输出处理。
5.根据权利要求4所述的支持程序,其特征在于,在所述操作系统生成所述打印数据之后,基于所生成的所述打印数据的所述打印执行数据发送到所述打印机之前,所述计算机执行预览处理,所述预览处理用于在所述信息处理装置的显示装置上显示由所述打印执行数据表示的图像,并且接收是否进行基于所述打印执行数据的打印的指令,
在用于执行所述预览处理的设置有效的情况下,所述计算机判断为满足所述第一判断处理中的所述第一条件,
在所述预览处理中接收到进行打印的指令的情况下,所述计算机执行所述命令输出处理。
6.根据权利要求1至5中任一项所述的支持程序,其特征在于,在有所述打印指令的情况下,所述计算机执行用于判断是否满足第二条件的第二判断处理,所述第二条件具有表示在接收到所述打印执行数据的所述打印机中,在满足预定条件之后开始打印的条件,
在满足所述第二条件的情况下,即使所述打印执行数据发送到所述打印机,所述计算机也不执行所述命令输出处理,
在不满足所述第二条件的情况下,在所述打印执行数据开始发送到所述打印机之前,所述计算机执行所述命令输出处理。
7.根据权利要求6所述的支持程序,其特征在于,所述计算机执行用于接收与所述打印执行数据相关联的密码的设置的接收处理,在设置有所述密码的情况下,所述密码与发送到所述打印机的所述打印执行数据相关联,所述打印机具有在接收到的所述打印执行数据关联有所述密码的情况下,以所述密码输入到了所述打印机作为所述预定条件来进行使用所述打印执行数据的打印的功能,
在设置有所述密码的情况下,所述计算机判断为满足所述第二判断处理中的所述第二条件。
8.根据权利要求1所述的支持程序,其特征在于,在有所述打印指令的情况下,在所述打印执行数据开始发送到所述打印机之前,所述计算机执行用于接收用户通过所述信息处理装置的输入设备进行的操作的操作接收处理,
在所述操作接收处理中接收到用户的操作之后,所述计算机执行所述命令输出处理。
9.根据权利要求1所述的支持程序,其特征在于,在所述输出指令处理中,在所述命令发送程序的启动选项中指定所述打印机,通过启动所述命令发送程序,来使所述命令发送程序进行所述先行动作命令的输出,所述命令发送程序将所述先行动作命令输出到在所述启动选项中指定的所述打印机。
10.根据权利要求1所述的支持程序,其特征在于,在所述输出指令处理中,所述计算机执行启动处理和指令输入处理,所述启动处理用于启动所述命令发送程序,所述指令输入处理用于对所述命令发送程序输入指定作为输出目的地的所述打印机的输出指令,所述命令发送程序在启动之后,在输入了所述输出指令的情况下,将所述先行动作命令输出到所述输出指令所指定的所述打印机。
11.根据权利要求10所述的支持程序,其特征在于,在所述操作系统使用所述打印程序生成所述打印数据开始之前,所述计算机执行所述启动处理,
在所述操作系统使用所述打印程序生成所述打印数据完成之后,所述计算机执行所述指令输入处理。
12.根据权利要求1和9至11中任一项所述的支持程序,其特征在于,在所述输出指令处理中,将所述打印机指定为输出目的地,使用与用于将基于所述操作系统使用所述打印程序生成的打印数据的打印执行数据发送到所述打印机的通信模式不同的通信模式,来使所述命令发送程序进行所述先行动作命令的输出。
13.根据权利要求12所述的支持程序,其特征在于,在所述输出指令处理中,通过指定在所述先行动作命令的输出中使用的通信模式,来使所述命令发送程序进行所述先行动作命令的输出。
14.一种信息处理装置,包括:
通信接口;以及
计算机,
所述信息处理装置安装有与连接到所述信息处理装置的打印机相对应的支持程序,所述打印机具有进行开始打印前的先行动作的功能,
所述信息处理装置的操作系统具有作为预先内置的程序的打印程序,
在有如下打印指令的情况下,所述计算机执行命令输出处理和输出指令处理中的至少一个,所述打印指令是通过所述打印程序由所述打印机进行打印的指令,
所述命令输出处理在基于所述操作系统使用所述打印程序生成的打印数据的打印执行数据开始发送到所述打印机之前,由所述支持程序通过所述通信接口向所述打印机输出用于执行所述先行动作的先行动作命令,
所述输出指令处理由所述支持程序将所述打印机指定为输出目的地,指示命令发送程序输出用于进行开始打印前的先行动作的先行动作命令,
在从所述支持程序指示了所述先行动作命令的输出的情况下,所述计算机通过所述命令发送程序经由所述通信接口将所述先行动作命令输出到输出目的地所指定的所述打印机。
15.根据权利要求14所述的信息处理装置,其特征在于,在所述操作系统使用所述打印程序生成所述打印数据完成之后,所述计算机执行所述命令输出处理。
16.一种打印方法,用于使打印机执行使用基于信息处理装置生成的打印数据的打印执行数据的打印,
所述打印机连接到所述信息处理装置,
所述信息处理装置安装有与所述打印机相对应的支持程序,所述打印机具有进行开始打印前的先行动作的功能,
所述信息处理装置的操作系统具有作为预先内置的程序的打印程序,
所述打印方法包括命令输出步骤和输出指令步骤中的至少一个,
在有通过所述打印程序由所述打印机进行打印的打印指令的情况下,所述命令输出步骤在基于所述操作系统使用所述打印程序生成的打印数据的所述打印执行数据开始发送到所述打印机之前,由所述支持程序从所述信息处理装置向所述打印机输出用于执行所述先行动作的先行动作命令,
在有通过所述打印程序由所述打印机进行打印的所述打印指令的情况下,所述输出指令步骤由所述支持程序将所述打印机指定为输出目的地,指示命令发送程序输出所述先行动作命令,
所述打印方法还包括在从所述支持程序指示了所述先行动作命令的输出的情况下,所述命令发送程序将所述先行动作命令输出到输出目的地所指定的所述打印机的命令输出步骤。
17.根据权利要求15所述的打印方法,其特征在于,在所述命令输出步骤中,在所述操作系统使用所述打印程序生成所述打印数据完成之后,所述支持程序输出所述先行动作命令。
18.一种程序集,包括作为能够由信息处理装置的计算机执行的程序的支持程序和命令发送程序,
所述支持程序是与连接到所述信息处理装置的打印机相对应的程序,在有通过预先内置在所述信息处理装置的操作系统中的打印程序由所述打印机进行打印的打印指令的情况下,使所述计算机执行输出指令处理,所述输出指令处理将所述打印机指定为输出目的地,指示所述命令发送程序输出用于进行开始打印前的先行动作的先行动作命令,
所述命令发送程序在从所述支持程序指示了所述先行动作命令的输出的情况下,使所述计算机执行将所述先行动作命令输出到输出目的地所指定的所述打印机的命令输出处理,所述打印机具有进行与所述先行动作命令相对应的所述先行动作的功能。
19.根据权利要求18所述的程序集,其特征在于,在所述支持程序的所述输出指令处理中,在所述命令发送程序的启动选项中指定所述打印机,通过启动所述命令发送程序,来指示所述命令发送程序输出所述先行动作命令,
在所述命令发送程序的所述命令输出处理中,将所述先行动作命令输出到在所述启动选项中指定的所述打印机。
20.根据权利要求18所述的程序集,其特征在于,在所述支持程序的所述输出指令处理中,使所述计算机执行启动处理和指令输入处理,所述启动处理用于启动所述命令发送程序,所述指令输入处理用于对所述命令发送程序输入指定作为输出目的地的所述打印机的输出指令,
在所述命令发送程序的所述命令输出处理中,使所述计算机在所述命令发送程序启动之后,在输入了所述输出指令的情况下,将所述先行动作命令输出到所述输出指令所指定的所述打印机。
21.根据权利要求18至20中任一项所述的程序集,其特征在于,在所述命令发送程序和所述命令输出处理中,使用与用于将基于所述操作系统使用所述打印程序生成的打印数据的打印执行数据发送到所述打印机的通信协议不同的通信协议,来将所述先行动作命令输出到输出目的地所指定的所述打印机。
CN202180034990.9A 2020-05-15 2021-05-14 支持程序、信息处理装置、程序集和打印方法 Pending CN115552368A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2020086101A JP2021179913A (ja) 2020-05-15 2020-05-15 サポートプログラム、プログラムセット、情報処理装置、および印刷方法
JP2020-086100 2020-05-15
JP2020-086101 2020-05-15
JP2020086100A JP2021179912A (ja) 2020-05-15 2020-05-15 サポートプログラム、情報処理装置、および印刷方法
PCT/JP2021/018397 WO2021230349A1 (ja) 2020-05-15 2021-05-14 サポートプログラム、情報処理装置、プログラムセット、および、印刷方法

Publications (1)

Publication Number Publication Date
CN115552368A true CN115552368A (zh) 2022-12-30

Family

ID=78512524

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180034990.9A Pending CN115552368A (zh) 2020-05-15 2021-05-14 支持程序、信息处理装置、程序集和打印方法

Country Status (3)

Country Link
US (1) US11836555B2 (zh)
CN (1) CN115552368A (zh)
WO (1) WO2021230349A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023147785A (ja) * 2022-03-30 2023-10-13 ブラザー工業株式会社 サポートプログラムおよび印刷システム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3258633B2 (ja) 1998-11-26 2002-02-18 キヤノン株式会社 インクジェット記録装置及び方法並びに印刷システムとその制御方法
JP4565505B2 (ja) 2004-09-30 2010-10-20 株式会社リコー 印刷制御装置、印刷制御方法、プログラム及び記録媒体
JP2006215752A (ja) * 2005-02-02 2006-08-17 Canon Inc 処理方法および画像処理システム
US7517162B2 (en) * 2006-06-22 2009-04-14 Kyocera Mita Corporation Printer configured to calculate power consumption data for printers on a network
JP5506360B2 (ja) * 2009-10-06 2014-05-28 キヤノン株式会社 画像形成装置
KR101706773B1 (ko) * 2009-10-20 2017-02-14 에스프린팅솔루션 주식회사 화상형성장치 및 그 제어방법
US8786880B2 (en) * 2011-03-04 2014-07-22 Ricoh Company, Ltd. Device agent for distributed processing and printing
GB201206907D0 (en) 2012-04-19 2012-06-06 Inotec Amd Ltd Oxygen distributor
JP6357918B2 (ja) 2014-06-27 2018-07-18 ブラザー工業株式会社 情報処理プログラム、情報処理装置および情報処理装置の制御方法
JP6353345B2 (ja) * 2014-11-04 2018-07-04 キヤノン株式会社 通信システム、通信装置及びその制御方法、情報処理装置及びその制御方法、並びにプログラム
US20160216919A1 (en) * 2015-01-22 2016-07-28 Kyocera Document Solutions Inc. Centralized Service of a Model Support for Printing Devices
JP6631278B2 (ja) 2016-01-29 2020-01-15 ブラザー工業株式会社 ドライバプログラム、及びドライバプログラムとプリンタとのセット
JP6869097B2 (ja) * 2017-05-10 2021-05-12 キヤノン株式会社 通信装置、制御方法、及びプログラム
JP7214358B2 (ja) 2018-03-29 2023-01-30 キヤノン株式会社 印刷処理システム、および制御方法
JP7147267B2 (ja) * 2018-05-23 2022-10-05 ブラザー工業株式会社 画像処理装置、及び、画像処理装置のためのコンピュータプログラム

Also Published As

Publication number Publication date
WO2021230349A1 (ja) 2021-11-18
US11836555B2 (en) 2023-12-05
US20210357712A1 (en) 2021-11-18

Similar Documents

Publication Publication Date Title
JP7355147B2 (ja) アプリケーションプログラム
JP7405217B2 (ja) サポートプログラム、情報処理装置、および印刷方法
JP7456527B2 (ja) サポートプログラム、情報処理装置、および印刷方法
US20210216256A1 (en) Support program, information processing device, and printing method
WO2020158716A1 (ja) サポートプログラム、情報処理装置、および印刷方法
JP7435697B2 (ja) サポートプログラム、情報処理装置、および印刷方法
CN114846440A (zh) 支援程序、信息处理装置以及印刷方法
CN115552368A (zh) 支持程序、信息处理装置、程序集和打印方法
US11064088B2 (en) Non-transitory computer-readable recording medium, information processing apparatus and printing method
JP2018206311A (ja) 印刷システム、サーバ及びその制御方法とプログラム
JP2021179913A (ja) サポートプログラム、プログラムセット、情報処理装置、および印刷方法
JP2021179912A (ja) サポートプログラム、情報処理装置、および印刷方法
JP7238521B2 (ja) プログラムセット、プログラム、および情報処理装置
WO2022163430A1 (ja) サポートプログラム
WO2023190148A1 (ja) サポートプログラム
JP7255277B2 (ja) 画像処理装置および画像処理システム
JP2022109423A (ja) サポートプログラム
JP2022144355A (ja) サポートプログラムおよび印刷システム
JP2022116553A (ja) サポートプログラム
JP2022109424A (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