Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7589448B2 - SUPPORT PROGRAM, INFORMATION PROCESSING APPARATUS, AND PRINTING METHOD - Google Patents
[go: Go Back, main page]

JP7589448B2 - SUPPORT PROGRAM, INFORMATION PROCESSING APPARATUS, AND PRINTING METHOD - Google Patents

SUPPORT PROGRAM, INFORMATION PROCESSING APPARATUS, AND PRINTING METHOD Download PDF

Info

Publication number
JP7589448B2
JP7589448B2 JP2020086100A JP2020086100A JP7589448B2 JP 7589448 B2 JP7589448 B2 JP 7589448B2 JP 2020086100 A JP2020086100 A JP 2020086100A JP 2020086100 A JP2020086100 A JP 2020086100A JP 7589448 B2 JP7589448 B2 JP 7589448B2
Authority
JP
Japan
Prior art keywords
printer
print
program
printing
condition
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.)
Active
Application number
JP2020086100A
Other languages
Japanese (ja)
Other versions
JP2021179912A (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
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2020086100A priority Critical patent/JP7589448B2/en
Priority to PCT/JP2021/018397 priority patent/WO2021230349A1/en
Priority to CN202180034990.9A priority patent/CN115552368B/en
Priority to US17/320,467 priority patent/US11836555B2/en
Publication of JP2021179912A publication Critical patent/JP2021179912A/en
Priority to JP2024197305A priority patent/JP7782650B2/en
Application granted granted Critical
Publication of JP7589448B2 publication Critical patent/JP7589448B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Description

本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラム、情報処理装置、および印刷方法に関する。 The technical field disclosed in this specification relates to a support program that supports printer control, an information processing device, and a printing method.

パーソナルコンピュータ(PC)等の情報処理装置からプリンタを制御する技術として、情報処理装置にプリンタドライバをインストールし、プリンタドライバによって印刷データを生成し、その印刷データをプリンタに送信する構成が広く知られている(例えば、特許文献1)。プリンタドライバは、プリンタメーカから提供され、そのプリンタが有する各種の機能に対応しており、そのプリンタを十分に利用することができる。 As a technique for controlling a printer from an information processing device such as a personal computer (PC), a configuration in which a printer driver is installed in the information processing device, print data is generated by the printer driver, and the print data is sent to the printer is widely known (for example, Patent Document 1). The printer driver is provided by the printer manufacturer and corresponds to the various functions of the printer, allowing the printer to be fully utilized.

特開2017-134718号公報JP 2017-134718 A

近年、前述したプリンタドライバを利用せず、オペレーティングシステム(OS)に標準に組み込まれている印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタを検知するとOS標準の印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタドライバを用いずに、OS標準の印刷プログラムによる印刷が可能になる。 In recent years, a technology has been put into practical use that controls a printer using a print program built into the operating system (OS) as standard, without using the printer driver mentioned above. With this technology, when the OS detects a printer, it associates it with the OS's standard print program, and thereafter, when a print instruction is received for that printer, it becomes possible to print using the OS's standard print program without using a printer driver.

しかしながら、OS標準の印刷プログラムによる印刷では、プリンタが有する機能を全て利用できるとは限らない。例えば、プリンタ独自に有する機能についてはサポートされておらず、プリンタが本来有する能力を十分に発揮できていない場合がある。 However, when printing using the OS's standard printing program, it is not always possible to use all of the printer's functions. For example, printer-specific functions may not be supported, and the printer may not be able to fully utilize its inherent capabilities.

本明細書は、OS標準の印刷プログラムが組み込まれた情報処理装置において、その印刷プログラムによる印刷であっても、プリンタ独自に有する能力を発揮させる技術を開示する。 This specification discloses a technology that allows a printer to utilize its own unique capabilities even when printing using an OS-standard print program installed in an information processing device.

上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記コンピュータに、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた印刷プログラムを介して前記プリンタによる印刷を行わせる印刷指示があった場合に、前記印刷プログラムによって前記オペレーティングシステムが生成した印刷データに基づく印刷実行データの前記プリンタへの送信が開始される前に、前記情報処理装置の通信インタフェースを介して、印刷を開始する前の先行動作を実行させる先行動作コマンドを前記プリンタに出力するコマンド出力処理を実行させ、前記プリンタは、前記先行動作コマンドに対応する前記先行動作を行う機能を有している、ことを特徴としている。 The support program made to solve the above-mentioned problems is executable by a computer of an information processing device, and is a support program corresponding to a printer connected to the information processing device, and when the computer receives a print instruction to cause the printer to print via a print program pre-installed in the operating system of the information processing device, executes a command output process to output to the printer, via a communication interface of the information processing device, a pre-operation command to execute a pre-operation before starting printing, before the printing execution data based on the print data generated by the operating system by the print program is started to be sent to the printer, and the printer has a function of performing the pre-operation corresponding to the pre-operation command.

本明細書に開示されるサポートプログラムは、オペレーティングシステムに組み込まれた印刷プログラムを介してプリンタによる印刷を行わせる印刷指示があった場合に、印刷実行データの送信が開始される前に、その印刷指示の対象となったプリンタに対して、先行動作を実行させる先行動作コマンドを出力する。これにより、情報処理装置が印刷プログラムを介する印刷指示を受け付けた場合でも、プリンタがその印刷指示に基づく印刷を開始する前に、プリンタ独自の先行動作を実行することができ、プリンタ独自に有する能力を発揮させることができる。 When a print instruction is given to cause a printer to print via a print program built into the operating system, the support program disclosed in this specification outputs a precedence operation command to the printer that is the target of the print instruction to execute a precedence operation before transmission of the print execution data begins. This allows the printer to execute a precedence operation unique to the printer before the printer starts printing based on the print instruction, even when the information processing device accepts a print instruction via a print program, and allows the printer to demonstrate its unique capabilities.

上記装置の機能を実現するための制御方法、コンピュータプログラム、および当該コンピュータプログラムを格納するコンピュータにて読取可能な記憶媒体も、新規で有用である。 The control method for implementing the functions of the above device, the computer program, and the computer-readable storage medium storing the computer program are also novel and useful.

本明細書に開示される技術によれば、OS標準の印刷プログラムが組み込まれた情報処理装置において、その印刷プログラムによる印刷であっても、プリンタ独自に有する能力を発揮させる技術が実現される。 The technology disclosed in this specification realizes a technology that allows a printer to utilize its unique capabilities even when printing using an OS-standard print program installed on an information processing device.

印刷システムの電気的構成を示すブロック図である。FIG. 2 is a block diagram showing the electrical configuration of the printing system. 各プログラムによる処理の順序を示す説明図である。FIG. 2 is an explanatory diagram showing the order of processing by each program. 第1の形態における各プログラムの動作の例を示すシーケンス図である。FIG. 4 is a sequence diagram showing an example of the operation of each program in the first embodiment. 第1の形態における印刷処理の手順を示すフローチャートである。5 is a flowchart showing a procedure of a printing process in the first embodiment. 第1の形態における後処理の手順を示すフローチャートである。5 is a flowchart showing a procedure of post-processing in the first embodiment. 第2の形態における各プログラムの動作の例を示すシーケンス図である。FIG. 11 is a sequence diagram showing an example of the operation of each program in the second embodiment.

以下、実施の形態のプログラムを利用する印刷システムについて、添付図面を参照しつつ詳細に説明する。本形態は、パーソナルコンピュータ(以下、「PC」とする)とプリンタとを含む印刷システムを具体化した実施の形態を開示するものである。 A printing system that uses the program of the embodiment will be described in detail below with reference to the attached drawings. This embodiment discloses an embodiment that embodies a printing system that includes a personal computer (hereinafter, "PC") and a printer.

本形態のプログラムが実行される印刷システムの構成の例を、図1に示す。図1に示すシステムには、PC1と、プリンタ2と、が含まれる。PC1は、情報処理装置の一例である。プリンタ2は、印刷機能を有する装置であり、ローカル通信またはネットワーク通信を介して、PC1と通信可能である。 An example of the configuration of a printing system in which the program of this embodiment is executed is shown in FIG. 1. The system shown in FIG. 1 includes a PC 1 and a printer 2. The PC 1 is an example of an information processing device. The printer 2 is a device that has a printing function and can communicate with the PC 1 via local communication or network communication.

PC1は、例えば、図1に示すように、コントローラ10と、ユーザインタフェース(以下、「UI」とする)20と、通信インタフェース(以下、「通信IF」とする)30と、を備えている。UI20及び通信IF30は、コントローラ10に電気的に接続されている。 As shown in FIG. 1, the PC 1 includes a controller 10, a user interface (hereinafter referred to as "UI") 20, and a communication interface (hereinafter referred to as "communication IF") 30. The UI 20 and the communication IF 30 are electrically connected to the controller 10.

UI20は、各種の表示を行い、ユーザの指示入力を受け付けるハードウェアを含む。UI20は、表示機能と入力受付機能との両方の機能を有するタッチパネルであっても良いし、表示機能を有するディスプレイと入力受付機能を有するキーボードやマウス等との組合せであっても良い。 The UI 20 includes hardware that performs various displays and accepts user input instructions. The UI 20 may be a touch panel that has both a display function and an input reception function, or may be a combination of a display that has a display function and a keyboard, mouse, or the like that has an input reception function.

通信IF30は、プリンタ2との通信を行うためのハードウェアや、インターネットへのアクセスを行うためのハードウェアを含む。通信IF30は、通信方式の異なる複数のインタフェースを含んでいても良い。通信方式としては、例えば、ネットワーク通信、USB通信がある。また、Wi-Fi(登録商標)やBluetooth(登録商標)等の無線通信を行うハードウェアを含んでいても良い。 The communication IF 30 includes hardware for communicating with the printer 2 and hardware for accessing the Internet. The communication IF 30 may include multiple interfaces with different communication methods. Examples of communication methods include network communication and USB communication. It may also include hardware for wireless communication such as Wi-Fi (registered trademark) and Bluetooth (registered trademark).

コントローラ10は、CPU11と、メモリ12と、を含む。CPU11は、コンピュータの一例である。メモリ12は、ROMと、RAMと、不揮発性メモリと、を含み、各種のアプリケーションプログラム(以下、「アプリ」とする)などのプログラムや各種のデータなどを記憶する。なお、本明細書では、メモリの詳細を区別しない。CPU11は、メモリ12から読み出したプログラムに従って、また、ユーザの指示に基づいて、各種の処理を実行する。なお、図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。 The controller 10 includes a CPU 11 and a memory 12. The CPU 11 is an example of a computer. The memory 12 includes a ROM, a RAM, and a non-volatile memory, and stores programs such as various application programs (hereinafter referred to as "apps") and various data. Note that this specification does not distinguish between the details of the memory. The CPU 11 executes various processes according to the programs read from the memory 12 and based on the user's instructions. Note that the controller 10 in FIG. 1 is a general term that collectively refers to the hardware and software used to control the PC 1, and does not necessarily represent a single piece of hardware that actually exists in the PC 1.

メモリ12の一例は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non-transitoryな媒体である。non-transitoryな媒体には、上記の例の他に、CD-ROM、DVD-ROM等の記録媒体も含まれる。また、non-transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non-transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。 An example of memory 12 may be a computer-readable storage medium. A computer-readable storage medium is a non-transitory medium. In addition to the above examples, non-transitory media also include recording media such as CD-ROMs and DVD-ROMs. Non-transitory media are also tangible media. On the other hand, electrical signals that carry programs downloaded from a server on the Internet, etc., are a type of computer-readable medium, that is, a computer-readable signal medium, but are not included in non-transitory computer-readable storage media.

メモリ12には、例えば、図1に示すように、汎用印刷プログラム41を含むオペレーティングシステム(以下、「OS」とする)21と、補助プログラム42と、編集アプリ43と、が記憶されている。補助プログラム42は、サポートプログラムの一例である。補助プログラム42は、例えば、マイクロソフト社が仕様公開した、ハードウェアサポートアプリ(略称、HSA)である。OS21は、例えば、マイクロソフトウィンドウズ(登録商標)、macOS(登録商標)、Linux(登録商標)である。なお、メモリ12には、図示したもの以外にも、接続されているデバイスの情報を含む各種のデータや、ブラウザ等の各種のプログラムが記憶されている。 As shown in FIG. 1, the memory 12 stores an operating system (hereinafter, "OS") 21 including a general-purpose print program 41, an auxiliary program 42, and an editing application 43. The auxiliary program 42 is an example of a support program. The auxiliary program 42 is, for example, a hardware support application (abbreviated as HSA) whose specifications have been published by Microsoft. The OS 21 is, for example, Microsoft Windows (registered trademark), MacOS (registered trademark), or Linux (registered trademark). In addition to the items shown in the figure, the memory 12 also stores various data including information on connected devices and various programs such as a browser.

なお、以下の処理およびフローチャートの各処理ステップは、基本的に、補助プログラム42などのプログラムに記述された命令に従ったCPU11の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「取得」、「受付」、「制御」等の処理は、CPU11の処理を表している。CPU11による処理は、OS21のAPIを用いたハードウェア制御も含む。本明細書では、OS21の詳細な記載を省略して各プログラムの動作を説明する。すなわち、以下の説明において、「プログラムBがハードウェアCを制御する」という趣旨の記載は、「プログラムBがOS21のAPIを用いてハードウェアCを制御する」ことを指してもよい。また、プログラムに記述された命令に従ったCPU11の処理を、省略した文言で記載することがある。例えば、「CPU11が行う」のようにプログラムを省略して記載することがある。また、プログラムに記述された命令に従ったCPU11の処理を、「プログラムAが行う」のようにCPUを省略した文言で記載することがある。 Note that the following processes and each processing step of the flowchart basically indicate the processing of the CPU 11 according to the instructions written in a program such as the auxiliary program 42. That is, processes such as "judgment," "extraction," "selection," "calculation," "decision," "identification," "acquisition," "reception," and "control" in the following description represent the processing of the CPU 11. The processing by the CPU 11 also includes hardware control using the API of the OS 21. In this specification, the operation of each program is described without detailed description of the OS 21. That is, in the following description, a description to the effect that "program B controls hardware C" may also mean that "program B controls hardware C using the API of the OS 21." In addition, the processing of the CPU 11 according to the instructions written in the program may be described in abbreviated terms. For example, the program may be described without the program being described, such as "performed by the CPU 11." In addition, the processing of the CPU 11 according to the instructions written in the program may be described without the CPU being described, such as "performed by program A."

なお、「取得」は要求を必須とはしない概念で用いる。すなわち、CPU11が要求することなくデータを受信するという処理も、「CPU11がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。また、「要求する」、「指示する」とは、要求していることを示す情報や、指示していることを示す情報を相手に出力することを示す概念である。また、要求していることを示す情報や指示していることを示す情報のことを、単に、「要求」、「指示」とも記載する。 Note that "obtaining" is used as a concept that does not necessarily require a request. In other words, the process of CPU 11 receiving data without making a request is also included in the concept of "CPU 11 obtaining data." In this specification, "data" is represented as a bit string that can be read by a computer. Data with the same substantial meaning but different formats is treated as the same data. The same applies to "information" in this specification. In addition, "requesting" and "instructing" are concepts that indicate outputting information indicating a request or information indicating an instruction to the other party. Information indicating a request or information indicating an instruction is also simply referred to as a "request" and "instruction."

また、CPU11による、情報Aは事柄Bであることを示しているか否かを判断する処理を、「情報Aから、事柄Bであるか否かを判断する」のように概念的に記載することがある。CPU11による、情報Aが事柄Bであることを示しているか、事柄Cであることを示しているか、を判断する処理を、「情報Aから、事柄Bであるか事柄Cであるかを判断する」のように概念的に記載することがある。 The process by CPU 11 to determine whether information A indicates event B may be conceptually described as "determining from information A whether it is event B or not." The process by CPU 11 to determine whether information A indicates event B or event C may be conceptually described as "determining from information A whether it is event B or event C."

汎用印刷プログラム41は、PC1からプリンタ2等の各種のプリンタで印刷を実行させるためのアプリであり、OS21にあらかじめ組み込まれているOS標準の印刷プログラムである。本形態の汎用印刷プログラム41は、印刷対象の画像データに基づいて、プリンタが対応可能な印刷データを生成するプログラムである。汎用印刷プログラム41は、印刷プログラムの一例である。 The general-purpose printing program 41 is an application for executing printing from the PC 1 on various printers such as the printer 2, and is an OS-standard printing program pre-installed in the OS 21. In this embodiment, the general-purpose printing program 41 is a program that generates print data that the printer can handle based on the image data to be printed. The general-purpose printing program 41 is an example of a printing program.

汎用印刷プログラム41は、各デバイスのベンダによって提供される複数種類のモデルのプリンタに適用可能な汎用のアプリであり、各モデルに共通する動作を各プリンタに行わせるプログラムである。あるいは、汎用印刷プログラム41は、OS21にあらかじめ組み込むために、各デバイスのベンダによってOS21のベンダに提供されるプログラム、例えば、OS21にあらかじめ組み込むために提供されるプリンタドライバの一種であっても良い。 The generic printing program 41 is a generic application that can be applied to multiple models of printers provided by each device vendor, and is a program that causes each printer to perform operations common to each model. Alternatively, the generic printing program 41 may be a program provided by each device vendor to the OS21 vendor for incorporation into the OS21 in advance, for example, a type of printer driver provided for incorporation into the OS21 in advance.

一方、OS21に組み込むための汎用印刷プログラム41をOS21のベンダに提供した後に各デバイスのベンダが開発したプログラムは、インストールするという形でPC1に追加することができる。以下では、OS21にあらかじめ組み込まれたプログラムではなく、インストールによって追加できるプリンタドライバを、単に「プリンタドライバ」とする、あるいは、「ベンダドライバ」とする。つまり、プリンタドライバは、OS21にあらかじめ組み込まれているプログラムではなく、使用するためには所定の手順によってOS21にインストールする必要があるプログラムである。例えば、UI20を介して指示されたインストーラ、あるいは、OS21が、プリンタドライバをOS21にインストールする。プリンタドライバは、プリンタの各モデルに個別に対応してプリンタのベンダによって用意されるプログラムであり、対応するモデルに固有の機能の指示を受け付けることもできるプログラムであってもよい。 On the other hand, after providing the OS21 vendor with the generic print program 41 to be incorporated into the OS21, the programs developed by the vendors of each device can be added to the PC1 by installing them. In the following, a printer driver that can be added by installation, rather than a program that is pre-installed in the OS21, will simply be referred to as a "printer driver" or a "vendor driver." In other words, a printer driver is not a program that is pre-installed in the OS21, but a program that must be installed in the OS21 by a specific procedure in order to be used. For example, an installer instructed via the UI20, or the OS21, installs the printer driver in the OS21. A printer driver is a program prepared by a printer vendor to correspond individually to each printer model, and may also be a program that can accept instructions for functions specific to the corresponding model.

なお、プリンタドライバ、すなわちベンダドライバは、OS21にあらかじめ組み込まれた汎用印刷プログラム41よりも高性能である場合がある。高性能である、とは、例えば、汎用印刷プログラム41にて生成された印刷データよりも、プリンタドライバにて生成された印刷データの方が、プリンタにおいて効率よく処理でき、印刷速度が速くなっても良い。また、より少ないメモリで、プリンタが印刷データを処理できても良い。また、プリンタドライバにて生成された印刷データの方が、より発色の良い印刷物をプリンタに印刷させることができても良い。また、プリンタドライバにて生成された印刷データの方が、より高解像度の印刷物をプリンタに印刷させることができても良い。また、汎用印刷プログラム41ではプリンタに指示することができない、プリンタドライバ固有の機能をプリンタドライバがプリンタに指示できても良い。固有の機能とは、例えば、ミラー印刷機能、ネガポジ反転印刷機能、である。 The printer driver, i.e., the vendor driver, may have higher performance than the general-purpose printing program 41 pre-installed in the OS 21. High performance may mean, for example, that the print data generated by the printer driver can be processed more efficiently in the printer than the print data generated by the general-purpose printing program 41, resulting in faster printing speed. The printer may also be able to process the print data with less memory. The print data generated by the printer driver may enable the printer to print a printout with better color reproduction. The print data generated by the printer driver may enable the printer to print a printout with higher resolution. The printer driver may also be able to instruct the printer on functions specific to the printer driver that the general-purpose printing program 41 cannot instruct the printer. Examples of specific functions include a mirror printing function and a negative-positive inversion printing function.

補助プログラム42は、汎用印刷プログラム41の動作に応じてOS21からの指示に基づいて処理を実行するプログラムであり、対象のハードウェアの制御をサポートするアプリである。補助プログラム42は、例えば、OS21から起動される。補助プログラム42は、プリンタ2等の各モデルに対応するアプリである。補助プログラム42は、プリンタ2等のデバイスのベンダによって用意される。デバイスのベンダは、OS21のベンダが指定する手順に従って、補助プログラム42をOS21のベンダが提供するプラットフォームに登録する。OS21は、PC1に新たにプリンタ2が接続され、そのプリンタ2に対応する補助プログラム42がプラットフォームに登録されている場合には、当該補助プログラム42を補助プログラム42が格納されているサーバからダウンロードしてPC1に組み込む。 The auxiliary program 42 is a program that executes processing based on instructions from the OS 21 in response to the operation of the general-purpose printing program 41, and is an application that supports the control of the target hardware. The auxiliary program 42 is launched, for example, from the OS 21. The auxiliary program 42 is an application that corresponds to each model of the printer 2, etc. The auxiliary program 42 is prepared by the vendor of the device such as the printer 2. The device vendor registers the auxiliary program 42 in the platform provided by the vendor of the OS 21 according to a procedure specified by the vendor of the OS 21. When a new printer 2 is connected to the PC 1 and an auxiliary program 42 corresponding to the printer 2 is registered on the platform, the OS 21 downloads the auxiliary program 42 from the server where the auxiliary program 42 is stored and incorporates it into the PC 1.

そして、OS21は、組み込んだ補助プログラム42の識別情報を新たに接続されたプリンタ2のプリンタ情報に対応付けて、メモリ12に記憶させる。複数のモデルのプリンタが接続されているPC1では、各モデルに対応するそれぞれの補助プログラムが組み込まれ、各プリンタと各補助プログラムとを対応付ける情報がメモリ12に記憶される。つまり、メモリ12には、PC1に接続されている各プリンタのプリンタ情報として、当該プリンタのモデル情報やアクセス情報とともに、対応する補助プログラム42の情報が記憶される。 Then, OS 21 associates the identification information of the incorporated auxiliary program 42 with the printer information of the newly connected printer 2 and stores it in memory 12. In PC 1 to which multiple models of printers are connected, the respective auxiliary programs corresponding to each model are incorporated, and information associating each printer with each auxiliary program is stored in memory 12. In other words, memory 12 stores, as printer information for each printer connected to PC 1, information on the corresponding auxiliary program 42 along with model information and access information for that printer.

編集アプリ43は、例えば、画像データや文書データの作成や編集を行うためのアプリである。編集アプリ43は、例えば、マイクロソフト ワード(登録商標)、パワーポイント(登録商標)である。編集アプリ43は、プリンタ2に所定の動作を行わせる指示を含むユーザ操作を受け付ける。具体的には、編集アプリ43は、UI20を介して、例えば、プリンタ2に印刷を実行させる印刷指示を受け付ける。 The editing application 43 is, for example, an application for creating and editing image data and document data. The editing application 43 is, for example, Microsoft Word (registered trademark) or PowerPoint (registered trademark). The editing application 43 accepts user operations including instructions to cause the printer 2 to perform a predetermined operation. Specifically, the editing application 43 accepts, via the UI 20, for example, a print instruction to cause the printer 2 to execute printing.

続いて、各プログラムによる印刷のための処理の順序について、図2を参照して説明する。以下では、PC1がUI20を介して、編集アプリ43にて、汎用印刷プログラム41を介してのプリンタ2での印刷実行の指示を受け付けた場合について説明する。 Next, the processing sequence for printing by each program will be described with reference to FIG. 2. In the following, a case will be described in which the PC 1 accepts, via the UI 20, an instruction to execute printing on the printer 2 via the general-purpose printing program 41 in the editing application 43.

印刷指示を受け付けた編集アプリ43は、受け付けた印刷指示に基づいて、印刷実行通知をOS21に渡す。印刷実行通知には、例えば、印刷指示にて指定されたプリンタを示す情報、印刷パラメータ、印刷対象の画像データを示す情報が含まれる。 The editing application 43 that has received the print instruction passes a print execution notification to the OS 21 based on the received print instruction. The print execution notification includes, for example, information indicating the printer specified in the print instruction, print parameters, and information indicating the image data to be printed.

次に、OS21は、印刷指示にて指定されたプリンタに対応する補助プログラム42がメモリ12に記憶されていれば、汎用印刷プログラム41による印刷データの生成を開始する前に、補助プログラム42による処理の実行を補助プログラム42に指示する。 Next, if an auxiliary program 42 corresponding to the printer specified in the print instruction is stored in memory 12, OS 21 instructs auxiliary program 42 to execute processing by auxiliary program 42 before starting generation of print data by general-purpose print program 41.

補助プログラム42には、汎用印刷プログラム41による処理の開始前に実行される前処理と、汎用印刷プログラム41による処理の終了後であってプリンタ2に印刷画像データを送信する前に実行される後処理と、が含まれる。以下では、補助プログラム42の処理のうち、汎用印刷プログラム41による処理の開始前に実行される処理を、「前処理補助プログラム」421による処理として説明し、汎用印刷プログラム41による処理の終了後に実行される処理を、「後処理補助プログラム」422による処理として説明する。 The auxiliary program 42 includes pre-processing that is executed before the processing by the general-purpose printing program 41 starts, and post-processing that is executed after the processing by the general-purpose printing program 41 ends and before the print image data is sent to the printer 2. Below, of the processing of the auxiliary program 42, the processing that is executed before the processing by the general-purpose printing program 41 starts is described as processing by the "pre-processing auxiliary program" 421, and the processing that is executed after the processing by the general-purpose printing program 41 ends is described as processing by the "post-processing auxiliary program" 422.

本形態のPC1では、印刷指示を受け付けたことに応じて、汎用印刷プログラム41による印刷データの生成が開始される前に、前処理補助プログラム421による前処理が実行される。前処理補助プログラム421は、印刷指示に含まれる各種の情報、例えば、印刷パラメータやプリンタの情報に加え、印刷対象の画像データに基づく中間画像データを、OS21から取得できる。前処理補助プログラム421は、取得した情報と自身のプログラムとに基づいて前処理を実行し、前処理の終了後に終了通知をOS21に返す。前処理補助プログラム421による前処理の詳細については後述する。 In this embodiment, in response to receiving a print instruction, the PC 1 executes preprocessing by the preprocessing assistant program 421 before the general-purpose print program 41 starts generating print data. The preprocessing assistant program 421 can obtain from the OS 21 various information included in the print instruction, such as print parameters and printer information, as well as intermediate image data based on the image data to be printed. The preprocessing assistant program 421 executes preprocessing based on the obtained information and its own program, and returns a completion notification to the OS 21 after the preprocessing is completed. Details of the preprocessing by the preprocessing assistant program 421 will be described later.

前処理補助プログラム421から終了通知を受け取ると、OS21は、汎用印刷プログラム41による処理を実行する。汎用印刷プログラム41は、印刷指示に基づいて、印刷データを生成する。 When the OS 21 receives a completion notification from the pre-processing auxiliary program 421, it executes processing by the general-purpose printing program 41. The general-purpose printing program 41 generates print data based on the print instruction.

印刷データの生成が完了したら、OS21は、生成した印刷データに基づく印刷画像データをプリンタ2に送信する前に、後処理補助プログラム422による後処理を実行する。後処理補助プログラム422は、印刷パラメータやプリンタの情報に加え、生成が終了している印刷データもOS21から取得できる。後処理補助プログラム422は、取得した情報と自身のプログラムとに基づいて後処理を実行し、後処理の終了後に終了通知をOS21に返す。後処理補助プログラム422による後処理の詳細については後述する。 When the generation of the print data is complete, the OS 21 executes post-processing using the post-processing assistant program 422 before sending the print image data based on the generated print data to the printer 2. The post-processing assistant program 422 can obtain print data that has already been generated from the OS 21, in addition to print parameters and printer information. The post-processing assistant program 422 executes post-processing based on the obtained information and its own program, and returns a completion notification to the OS 21 after the post-processing is completed. Details of the post-processing using the post-processing assistant program 422 will be described later.

OS21は、後処理補助プログラム422から終了通知を受け取ると、通信IF30を介して、印刷パラメータと印刷画像データとを関連付けてプリンタ2に送信する。印刷画像データは、印刷データそのものであってもよいし、印刷データによって示される画像を加工した画像を示すものであってもよい。例えば後処理にてウォータマークを合成する場合、印刷画像データは合成後の画像を示すデータとなる。また、印刷パラメータは、編集アプリ43における設定から前処理補助プログラム421や後処理補助プログラム422にて変更されている場合もある。プリンタ2は、受信した印刷パラメータと印刷画像データとに基づいて、印刷を実行する。 When the OS 21 receives a completion notification from the post-processing auxiliary program 422, it associates the print parameters with the print image data and sends them to the printer 2 via the communication IF 30. The print image data may be the print data itself, or may represent an image obtained by processing the image represented by the print data. For example, when a watermark is synthesized in post-processing, the print image data becomes data representing the synthesized image. In addition, the print parameters may have been changed by the pre-processing auxiliary program 421 or the post-processing auxiliary program 422 from the settings in the editing application 43. The printer 2 executes printing based on the received print parameters and print image data.

続いて、補助プログラム42の動作を含む印刷システムによる印刷手順の、第1の形態について図3のシーケンス図を参照して説明する。なお、以下の説明では、印刷を実行するプリンタとしてプリンタ2が選択されているものとする。 Next, a first embodiment of the printing procedure by the printing system, including the operation of the auxiliary program 42, will be described with reference to the sequence diagram in FIG. 3. In the following description, it is assumed that printer 2 is selected as the printer that will perform printing.

まず、編集アプリ43は、UI20を介して、印刷対象の画像データの指定と、印刷パラメータの設定とを受け付ける(矢印A)。印刷パラメータには、例えば部数設定のような一般的な設定の他、プリンタ2やプリンタ2に対応する補助プログラム42に固有の設定が含まれる。 First, the editing application 43 accepts the designation of image data to be printed and the setting of printing parameters via the UI 20 (arrow A). The printing parameters include general settings such as the number of copies, as well as settings specific to the printer 2 and the auxiliary program 42 corresponding to the printer 2.

編集アプリ43は、プリンタ2やプリンタ2に対応する補助プログラム42に固有の設定を受け付けるために、詳細設定への移行指示を受け付ける。編集アプリ43は、詳細設定への移行指示を受け付けると、印刷パラメータの設定を示す実行命令をOS21に渡し、OS21を介して実行命令を補助プログラム42に出力する(矢印B)。 The editing application 43 accepts an instruction to transition to detailed settings in order to accept settings specific to the printer 2 or the auxiliary program 42 corresponding to the printer 2. When the editing application 43 accepts an instruction to transition to detailed settings, it passes an execution command indicating the setting of print parameters to the OS 21, and outputs the execution command to the auxiliary program 42 via the OS 21 (arrow B).

補助プログラム42は、印刷パラメータの設定を示す実行命令に応じて、前処理補助プログラム421による設定処理を実行する(矢印C)。ここでは、印刷パラメータの設定を受け付ける設定画面をUI20に表示させ、印刷パラメータの設定および設定完了の指示を受け付ける。受け付け可能な設定には、補助プログラム42やプリンタ2固有の機能の設定が含まれる。 In response to an execution command indicating the setting of print parameters, the auxiliary program 42 executes the setting process by the pre-processing auxiliary program 421 (arrow C). Here, a setting screen for accepting the setting of print parameters is displayed on the UI 20, and an instruction for setting the print parameters and completing the setting is accepted. Acceptable settings include settings for functions specific to the auxiliary program 42 and the printer 2.

本形態では、補助プログラム42固有の印刷パラメータとして、印刷画像データの送信前に印刷対象の画像をUI20に表示させるプレビュー機能を有効にするか否かの設定と、パスワードの入力を印刷の実行条件をするセキュア印刷の指定と、を受け付ける。セキュア印刷の指定を受け付けた場合、パスワードの設定も受け付ける。入力されたパスワードは、印刷パラメータに含められる。これらの他、補助プログラム42固有の印刷パラメータとして、プリンタドライバと同等の機能の設定を受け付けてもよい。 In this embodiment, as printing parameters specific to the auxiliary program 42, a setting as to whether to enable a preview function that displays the image to be printed on the UI 20 before the print image data is sent, and a designation of secure printing that sets the input of a password as a printing execution condition are accepted. If a designation of secure printing is accepted, a password setting is also accepted. The entered password is included in the printing parameters. In addition to these, settings of functions equivalent to a printer driver may be accepted as printing parameters specific to the auxiliary program 42.

設定完了の指示を受け付けると、補助プログラム42は、終了通知をOS21に渡し、OS21を介して終了通知を編集アプリ43に応答する(矢印D)。なお、編集アプリ43が詳細設定への移行指示を受け付けなかった場合、矢印Bから矢印Dまでの処理は省略される。 When the instruction to complete the settings is received, the auxiliary program 42 passes a termination notification to the OS 21 and responds with a termination notification to the editing application 43 via the OS 21 (arrow D). Note that if the editing application 43 does not receive an instruction to transition to detailed settings, the processes from arrow B to arrow D are omitted.

その後、編集アプリ43は、UI20を介して、印刷実行の指示を受け付ける(矢印E)。そして、編集アプリ43は、印刷実行の指示を受け付けた場合、印刷実行通知をOS21に渡す(矢印F)。印刷実行通知には、設定された印刷パラメータや印刷対象の画像データを示す情報が含まれる。 Then, the editing application 43 receives an instruction to execute printing via the UI 20 (arrow E). Then, when the editing application 43 receives an instruction to execute printing, it passes a print execution notification to the OS 21 (arrow F). The print execution notification includes information indicating the set print parameters and the image data to be printed.

OS21は、編集アプリ43から出力される印刷実行通知を検知すると、印刷実行通知に含まれる情報に基づいて、印刷を実行させる装置として指定されているプリンタを特定する。例えば、汎用印刷プログラム41を用いてプリンタ2にて印刷させることが指定されている場合、当該プリンタ2に対応する補助プログラム42が組み込まれていれば、OS21は、補助プログラム42の処理の実行命令を出力する(矢印G)。 When the OS 21 detects a print execution notification output from the editing application 43, it identifies the printer designated as the device to execute the printing based on the information included in the print execution notification. For example, if it is designated to print on the printer 2 using the general-purpose printing program 41, and an auxiliary program 42 corresponding to the printer 2 is installed, the OS 21 outputs an execution command for the processing of the auxiliary program 42 (arrow G).

補助プログラム42は、自身に対応する実行命令が出力された場合、前処理補助プログラム421または後処理補助プログラム422の処理を実行する。ここでは、OS21は、印刷データの生成を開始する前に、補助プログラム42に前処理の実行命令を出力し、前処理補助プログラム421による前処理を開始させる。 When an execution command corresponding to itself is output, the auxiliary program 42 executes the processing of the pre-processing auxiliary program 421 or the post-processing auxiliary program 422. Here, before starting to generate print data, the OS 21 outputs an execution command for pre-processing to the auxiliary program 42, causing the pre-processing auxiliary program 421 to start pre-processing.

前処理補助プログラム421は、OS21から渡されるプリンタ2の情報、印刷パラメータ、画像データを用いて、前処理を実行する(矢印H)。OS21から取得する画像データは、OS21が編集アプリ43から渡された画像データの形式を中間データの形式に変換した中間画像データである。前処理としては、例えば、画像の拡大縮小や集約といった印刷パラメータの設定に基づく画像の加工処理が該当する。また、前処理として、印刷パラメータの設定画面をUI20に表示させ、印刷パラメータの設定変更を受け付けてもよい。前処理の実行が終了した後、前処理補助プログラム421は、終了通知をOS21に渡す(矢印I)。 The pre-processing assistant program 421 executes pre-processing using the information on the printer 2, the printing parameters, and the image data passed from the OS 21 (arrow H). The image data obtained from the OS 21 is intermediate image data that the OS 21 converts the format of the image data passed from the editing application 43 into an intermediate data format. Pre-processing, for example, corresponds to image processing based on the settings of printing parameters such as image enlargement/reduction and aggregation. As pre-processing, a printing parameter setting screen may be displayed on the UI 20 and changes to the printing parameter settings may be accepted. After the execution of pre-processing is completed, the pre-processing assistant program 421 passes a completion notification to the OS 21 (arrow I).

OS21は、前処理補助プログラム421から終了通知を受け取ったことに応じて、汎用印刷プログラム41を使用して印刷データを生成する(矢印J)。汎用印刷プログラム41によって生成される印刷データは、汎用の印刷データであり、各種のプリンタ2にて印刷に使用できる印刷データである。 In response to receiving a completion notification from the pre-processing auxiliary program 421, the OS 21 generates print data using the generic print program 41 (arrow J). The print data generated by the generic print program 41 is generic print data that can be used for printing on various printers 2.

汎用印刷プログラム41による印刷データの生成の終了後、OS21は、再度、補助プログラム42の処理の実行命令を出力する(矢印K)。具体的にOS21は、印刷データの生成を完了した後に、補助プログラム42に後処理の実行命令を出力し、後処理補助プログラム422による後処理を開始させる。 After the general-purpose print program 41 finishes generating the print data, the OS 21 again outputs a command to execute the processing of the auxiliary program 42 (arrow K). Specifically, after completing the generation of the print data, the OS 21 outputs a command to execute post-processing to the auxiliary program 42, causing the post-processing auxiliary program 422 to start post-processing.

後処理補助プログラム422は、OS21から渡されるプリンタ2の情報、印刷パラメータ、印刷データを用いて、後処理補助プログラム422による後処理を実行する。本形態の後処理補助プログラム422は、後処理として、OS21から取得した印刷データに基づく印刷画像データの生成に加え、プレビュー機能が有効になっている場合、生成した印刷画像データによって示される画像をUI20に表示させるプレビュー処理を実行する(矢印L)。 The post-processing assistant program 422 executes post-processing using the printer 2 information, print parameters, and print data passed from the OS 21. In this embodiment, the post-processing assistant program 422 executes a preview process to display an image shown by the generated print image data on the UI 20 when the preview function is enabled, in addition to generating print image data based on the print data obtained from the OS 21 as post-processing (arrow L).

プレビュー処理では、後処理補助プログラム422は、UI20を用いて、印刷画像データによって示される画像を表示するとともに、印刷実行かキャンセルかの選択を受け付ける。そして、印刷実行が選択された場合、OS21から取得したプリンタ2のモデル情報およびIPアドレスを使用して、通信IF30を介して、プリンタ2に先行動作の実行を指示する先行動作コマンドをプリンタ2に出力する(矢印M)。先行動作は、印刷画像データの送信前にプリンタ2に印刷のための準備を行わせる動作である。 In the preview process, the post-processing assistant program 422 uses the UI 20 to display the image represented by the print image data, and accepts the selection of whether to print or cancel. If print is selected, the post-processing assistant program 422 uses the model information and IP address of the printer 2 acquired from the OS 21 to output to the printer 2 an advance operation command (arrow M) via the communication IF 30 instructing the printer 2 to execute an advance operation. The advance operation is an operation that causes the printer 2 to prepare for printing before the print image data is sent.

プリンタ2は、PC1から先行動作コマンドを受信することで先行動作を開始する(矢印N)。プリンタ2が先行動作を行うことで、ユーザが印刷指示を入力してから1枚目の印刷が完了するまでの待ち時間を短くできる。 The printer 2 starts the advance operation when it receives the advance operation command from the PC 1 (arrow N). By having the printer 2 perform the advance operation, it is possible to shorten the waiting time from when the user inputs a print command until the printing of the first page is completed.

先行動作には、例えば、プリンタ2のモデルごとに複数の種類がある。プリンタ2がインクジェット方式のプリンタである場合、例えば、印刷ヘッドの乾燥防止用キャップを外して、印刷開始位置まで印刷ヘッドを移動させる先行動作がある。また、プリンタ2が電子写真方式のプリンタである場合、例えば、定着装置の予熱を開始させる先行動作がある。すなわち、プリンタのモデルごとに実行可能な先行動作が異なることから、先行動作コマンドにも複数の種類が有る。補助プログラム42は、先行動作コマンドをモデル名に対応付けて記憶している。さらに、プリンタ2の印刷方式に関わらず、例えば、印刷パラメータに基づいて給紙トレイを特定し、特定された給紙トレイから用紙を引き出して所定の待機位置まで搬送させる先行動作がある。 There are several types of preceding operations, for example, depending on the model of the printer 2. If the printer 2 is an inkjet printer, for example, there is a preceding operation of removing the cap to prevent the print head from drying and moving the print head to the printing start position. Also, if the printer 2 is an electrophotographic printer, for example, there is a preceding operation of starting preheating of the fixing device. In other words, since the preceding operations that can be executed differ depending on the printer model, there are several types of preceding operation commands. The auxiliary program 42 stores the preceding operation commands in association with the model name. Furthermore, regardless of the printing method of the printer 2, for example, there is a preceding operation of identifying a paper feed tray based on the printing parameters, pulling paper from the identified paper feed tray, and transporting it to a specified standby position.

後処理補助プログラム422は、プリンタ2で対応可能な先行動作コマンドが複数種類ある場合、その複数種類の先行動作コマンドを出力してもよいし、プリンタ2に出力する先行動作コマンドの指定をあらかじめ設定画面等で受け付けてもよい。そして、複数の先行動作をプリンタ2に行わせる場合、複数の先行動作コマンドを順次に送信してもよいし、複数の先行動作コマンドを1つの先行動作コマンドに合成して送信してもよい。プリンタ2は、少なくとも1つの先行動作を行う機能を有し、先行動作コマンドを受信することで、その先行動作コマンドに対応する先行動作を行う。 When there are multiple types of precedence operation commands that the printer 2 can handle, the post-processing auxiliary program 422 may output the multiple types of precedence operation commands, or may accept in advance on a settings screen or the like the specification of the precedence operation command to be output to the printer 2. When the printer 2 is to perform multiple precedence operations, the post-processing auxiliary program 422 may transmit the multiple precedence operation commands sequentially, or may combine the multiple precedence operation commands into one precedence operation command and transmit it. The printer 2 has the function of performing at least one precedence operation, and upon receiving a precedence operation command, it performs the precedence operation corresponding to that precedence operation command.

また、プレビュー処理によって印刷実行が選択された場合、後処理補助プログラム422は、終了通知をOS21に渡す(矢印O)。OS21は、後処理補助プログラム422から終了通知を受け取ったことに応じて、印刷画像データをプリンタ2に送信し(矢印P)、印刷実行通知に基づく処理を終了する。印刷画像データを受信したプリンタ2は、受信した印刷画像データに基づく印刷を行う(矢印Q)。 In addition, if printing is selected by the preview process, the post-processing assistant program 422 passes a completion notification to the OS 21 (arrow O). In response to receiving the completion notification from the post-processing assistant program 422, the OS 21 sends the print image data to the printer 2 (arrow P) and ends the processing based on the print execution notification. The printer 2, which has received the print image data, performs printing based on the received print image data (arrow Q).

一方、プレビュー処理によってキャンセルが選択された場合、後処理補助プログラム422は、キャンセル通知をOS21に渡す(矢印O)。OS21は、後処理補助プログラム422からキャンセル通知を受け取ったことに応じて、印刷画像データをプリンタ2に送信せずに、印刷実行通知に基づく処理を終了する。この場合、プリンタ2での印刷は行われない。 On the other hand, if cancel is selected by the preview process, the post-processing assistant program 422 passes a cancellation notification to the OS 21 (arrow O). In response to receiving the cancellation notification from the post-processing assistant program 422, the OS 21 ends the processing based on the print execution notification without sending the print image data to the printer 2. In this case, printing is not performed on the printer 2.

なお、後処理補助プログラム422による先行動作コマンドの出力は、図3ではOS21に終了通知を渡す前に行っているが、OS21に終了通知を渡した後であってもよい。また、プレビュー機能が有効になっておらず、プレビュー処理を実行しない場合、後処理補助プログラム422は、プレビューを表示することなく、先行動作コマンドをプリンタ2に出力し、終了通知をOS21に渡す。 In FIG. 3, the post-processing support program 422 outputs the preceding operation command before passing the end notification to the OS 21, but it may output the preceding operation command after passing the end notification to the OS 21. Also, if the preview function is not enabled and the preview process is not executed, the post-processing support program 422 outputs the preceding operation command to the printer 2 without displaying a preview, and passes the end notification to the OS 21.

また、後処理補助プログラム422による後処理では、プリンタ2が着色剤の節約モード等の固有の機能を有している場合、その固有の機能を有効にするためのコマンドをプリンタ2に送信してもよい。 In addition, in post-processing by the post-processing assistance program 422, if the printer 2 has a unique function such as a colorant saving mode, a command to enable the unique function may be sent to the printer 2.

続いて、上述した第1の形態の印刷システムを実現する手順のうち、OS21による印刷処理の手順について、図4のフローチャートを参照して説明する。印刷処理は、OS21が編集アプリ43から印刷実行通知を受け付けたこと(図3の矢印F)を契機に、OS21に従って、PC1のCPU11にて実行される。 Next, the procedure for the print process by the OS 21, which is one of the procedures for realizing the printing system of the first embodiment described above, will be described with reference to the flowchart in FIG. 4. The print process is executed by the CPU 11 of the PC 1 according to the OS 21 when the OS 21 receives a print execution notification from the editing application 43 (arrow F in FIG. 3).

印刷処理では、OS21は、まず、メモリ12に補助プログラム42が有るか否かを判断する(S101)。補助プログラム42は、前述したように、各プリンタに対応するものがデバイスのベンダによって用意され、OS21がプリンタを検出した場合にOS21によってPC1に組み込まれる。 In the printing process, the OS 21 first determines whether the auxiliary program 42 is present in the memory 12 (S101). As described above, the auxiliary program 42 is prepared by the device vendor for each printer, and is installed in the PC 1 by the OS 21 when the OS 21 detects the printer.

プリンタ2に対応する補助プログラム42が用意されていない場合など、補助プログラム42がメモリ12に無いと判断した場合(S101:NO)、OS21は、汎用印刷プログラム41を用いて、印刷データを生成する(S102)。そして、生成された印刷データあるいは印刷データに基づく印刷画像データをプリンタ2に送信し(S103)、印刷処理を終了する。なお、印刷画像データの送信に失敗した場合、OS21は所定のエラー処理を実行するとよい。 If it is determined that the auxiliary program 42 is not in the memory 12 (S101: NO), such as when the auxiliary program 42 corresponding to the printer 2 is not prepared, the OS 21 generates print data using the general-purpose print program 41 (S102). Then, the OS 21 transmits the generated print data or print image data based on the print data to the printer 2 (S103), and ends the print process. Note that if transmission of the print image data fails, the OS 21 may execute a specified error process.

PC1に補助プログラム42が組み込まれていない場合には、汎用印刷プログラム41によって印刷データが生成されるので、ユーザは、プリンタ2のセットアップを意識することなく、各種のプリンタ2を同じ使い勝手で使用できる。ただし、汎用印刷プログラム41を用いた印刷では、高性能なプリンタドライバによる印刷よりも、印刷に長時間を要する可能性や、印刷物の品質が下がる可能性がある。 If the auxiliary program 42 is not installed in the PC 1, the print data is generated by the general-purpose print program 41, so the user can use various printers 2 with the same ease of use without having to worry about setting up the printer 2. However, when printing using the general-purpose print program 41, printing may take longer than when printing using a high-performance printer driver, and the quality of the printed matter may be lower.

一方、補助プログラム42が有ると判断した場合(S101:YES)、OS21は、プリンタ2に対応する補助プログラム42に実行命令を出力し、前処理補助プログラム421による前処理を開始させる(S111、図3の矢印G)。これにより、CPU11は、前処理補助プログラム421に従って前処理を実行する。OS21から前処理補助プログラム421の処理を実行する場合、例えば、OS21が前処理補助プログラム421を示す情報を補助プログラム42に入力しても良い。あるいは、OS21が前処理補助プログラム421を示す情報をメモリ12に記憶させてから前処理補助プログラム421に実行命令を出力し、前処理補助プログラム421がその情報を読み出しても良い。あるいは、OS21が、前処理補助プログラム421の前処理を指定した実行命令を出力しても良い。 On the other hand, if it is determined that the auxiliary program 42 is present (S101: YES), the OS 21 outputs an execution command to the auxiliary program 42 corresponding to the printer 2, and starts preprocessing by the preprocessing auxiliary program 421 (S111, arrow G in FIG. 3). This causes the CPU 11 to execute preprocessing in accordance with the preprocessing auxiliary program 421. When executing the processing of the preprocessing auxiliary program 421 from the OS 21, for example, the OS 21 may input information indicating the preprocessing auxiliary program 421 to the auxiliary program 42. Alternatively, the OS 21 may store information indicating the preprocessing auxiliary program 421 in the memory 12, and then output an execution command to the preprocessing auxiliary program 421, which then reads the information. Alternatively, the OS 21 may output an execution command specifying the preprocessing of the preprocessing auxiliary program 421.

前処理補助プログラム421が前処理の実行を開始した後、OS21は、前処理補助プログラム421から終了通知を受け取った場合、OS21に含まれる汎用印刷プログラム41を用いて、印刷データを生成する(S112、図3の矢印J)。S112は、S102と同様の処理である。なお、前処理補助プログラム421からキャンセル通知を受け取った場合、OS21は、印刷データを生成することなく、印刷処理を終了する。 After the pre-processing auxiliary program 421 starts executing the pre-processing, if the OS 21 receives a termination notification from the pre-processing auxiliary program 421, it generates print data using the general-purpose print program 41 included in the OS 21 (S112, arrow J in FIG. 3). S112 is the same process as S102. Note that if a cancellation notification is received from the pre-processing auxiliary program 421, the OS 21 ends the print process without generating print data.

印刷データの生成後、OS21は、生成した印刷データに基づく印刷画像データをプリンタ2に送信する前に、OS21は、プリンタ2に対応する補助プログラム42に実行命令を出力し、後処理補助プログラム422による後処理を開始させる(S113、図3の矢印K)。これにより、CPU11は、後処理補助プログラム422に従って後処理を実行する。 After generating the print data, before sending the print image data based on the generated print data to the printer 2, the OS 21 outputs an execution command to the auxiliary program 42 corresponding to the printer 2 to start post-processing by the post-processing auxiliary program 422 (S113, arrow K in FIG. 3). This causes the CPU 11 to execute post-processing according to the post-processing auxiliary program 422.

後処理補助プログラム422が後処理の実行を開始した後、OS21は、後処理補助プログラム422から受け取った通知が終了通知かキャンセル通知かを判断する(S114)。終了通知を受け取ったと判断した場合(S114:YES)、OS21は、印刷データあるいは印刷データに基づく印刷画像データをプリンタ2に送信し(S103、図3の矢印P)、印刷処理を終了する。キャンセル通知を受け取ったと判断した場合(S114:NO)、OS21は、印刷画像データを送信することなく、印刷処理を終了する。 After the post-processing assistant program 422 starts executing the post-processing, the OS 21 judges whether the notification received from the post-processing assistant program 422 is an end notification or a cancellation notification (S114). If it is determined that an end notification has been received (S114: YES), the OS 21 sends the print data or print image data based on the print data to the printer 2 (S103, arrow P in FIG. 3) and ends the print process. If it is determined that a cancellation notification has been received (S114: NO), the OS 21 ends the print process without sending the print image data.

続いて、上述した印刷システムを実現する補助プログラム42による後処理の手順について、図5のフローチャートを参照して説明する。後処理は、補助プログラム42がOS21から実行命令を受け付けたこと(図3の矢印K)を契機に、補助プログラム42の一部である後処理補助プログラム422に従って、PC1のCPU11にて実行される。 Next, the procedure of post-processing by the auxiliary program 42 that realizes the above-mentioned printing system will be described with reference to the flowchart in FIG. 5. The post-processing is executed by the CPU 11 of the PC 1 according to the post-processing auxiliary program 422, which is part of the auxiliary program 42, when the auxiliary program 42 receives an execution command from the OS 21 (arrow K in FIG. 3).

後処理では、後処理補助プログラム422は、まず、印刷パラメータに従って、汎用印刷プログラム41を用いて生成された印刷データに基づく印刷画像データを生成する(S201)。S201では、例えば印刷データによって示される画像にウォータマークやヘッダないしフッタを合成する加工を行う。なお、印刷データによって示される画像の加工を行わない場合、S201を省略し、印刷データをそのまま印刷画像データとしてもよいし、印刷データの複製を生成してもよい。 In post-processing, the post-processing assistant program 422 first generates print image data based on the print data generated using the general-purpose print program 41 in accordance with the print parameters (S201). In S201, for example, processing is performed to combine a watermark, header, or footer with the image represented by the print data. Note that if no processing is performed on the image represented by the print data, S201 can be omitted and the print data can be used as is as print image data, or a copy of the print data can be generated.

次に、後処理補助プログラム422は、プレビュー機能が有効か否かを判断する(S202)。プレビュー機能が有効な場合(S202:YES)、後処理補助プログラム422は、S201にて生成した印刷画像データに示される画像をUI20に表示させ、印刷実行かキャンセルかの選択を受け付けるプレビュー表示を行う(S211、図3の矢印L)。S211は、プレビュー処理の一例である。そして、補助プログラム42は、ユーザの選択が印刷実行かキャンセルかを判断する(S212)。 Next, the post-processing auxiliary program 422 determines whether the preview function is enabled (S202). If the preview function is enabled (S202: YES), the post-processing auxiliary program 422 displays an image shown in the print image data generated in S201 on the UI 20, and performs a preview display that accepts the selection of whether to print or cancel (S211, arrow L in Figure 3). S211 is an example of preview processing. Then, the auxiliary program 42 determines whether the user's selection is to print or cancel (S212).

印刷実行が選択されたと判断した場合(S212:YES)、あるいはプレビューが無効な場合(S202:NO)、後処理補助プログラム422は、印刷を実行させる装置として指定されているプリンタ2のプリンタ情報を取得し、プリンタ2に先行動作コマンドを出力する(S203、図3の矢印M)。S203は、コマンド出力処理の一例である。具体的に後処理補助プログラム422は、OS21に問い合わせるか、OS21が情報を記憶している記憶場所を参照して、プリンタ2のモデル情報や、IPアドレス等のアクセス情報を取得する。そして、プリンタのモデルや印刷パラメータに適した先行動作コマンドを決定し、アクセス情報を用いて先行動作コマンドを出力する。 If it is determined that printing has been selected (S212: YES), or if preview is disabled (S202: NO), the post-processing assistant program 422 acquires printer information for the printer 2 designated as the device that will execute printing, and outputs a pre-operation command to the printer 2 (S203, arrow M in FIG. 3). S203 is an example of command output processing. Specifically, the post-processing assistant program 422 queries the OS 21 or refers to a memory location where the OS 21 stores information to acquire model information for the printer 2 and access information such as an IP address. It then determines a pre-operation command suitable for the printer model and printing parameters, and outputs the pre-operation command using the access information.

S202の後、後処理補助プログラム422は、OS21に終了通知を渡し(S204、図3の矢印O)、後処理を終了する。一方、キャンセルが選択されたと判断した場合(S212:NO)、後処理補助プログラム422は、OS21にキャンセル通知を渡し(S213、図3の矢印R)、後処理を終了する。 After S202, the post-processing auxiliary program 422 passes a termination notification to the OS 21 (S204, arrow O in FIG. 3) and terminates the post-processing. On the other hand, if it is determined that cancel has been selected (S212: NO), the post-processing auxiliary program 422 passes a cancellation notification to the OS 21 (S213, arrow R in FIG. 3) and terminates the post-processing.

以上、詳細に説明したように、第1の形態の補助プログラム42によれば、汎用印刷プログラム41を介してプリンタ2による印刷を行わせる印刷指示があった場合に、汎用印刷プログラム41によって生成された印刷データに基づく印刷画像データのプリンタ2への送信が開始される前に、その印刷指示の対象となったプリンタ2に対してプリンタ独自の先行動作を実行させる先行動作コマンドを出力する。これにより、PC1が汎用印刷プログラム41を介する印刷指示を受け付けた場合でも、プリンタ2がその印刷指示に基づく印刷を開始する前に、プリンタ独自の先行動作を実行することができ、プリンタ独自に有する能力を発揮させることができる。 As described above in detail, according to the first form of auxiliary program 42, when a print instruction is given to cause the printer 2 to print via the general-purpose print program 41, a precedence operation command is output to the printer 2 that is the target of the print instruction to execute a printer-specific precedence operation before the printer 2 starts transmitting print image data based on the print data generated by the general-purpose print program 41. As a result, even when the PC 1 accepts a print instruction via the general-purpose print program 41, the printer 2 can execute a printer-specific precedence operation before the printer 2 starts printing based on the print instruction, allowing the printer to demonstrate its own capabilities.

さらに第1の形態の補助プログラム42は、OS21による印刷データの生成後のプレビュー処理でのユーザの操作を終えた後に、先行コマンドを出力する。すなわち、プレビューが有効であった場合、印刷の実行が印刷データの生成前では確定せず、印刷データの生成後に確定する。そのため、印刷データの生成の後に先行動作コマンドを送信することで、プリンタでの先行動作の無駄を回避できる。また、印刷実行データの送信前にユーザの操作を受け付ける場合、早期に先行動作コマンドを送信しても、ユーザの操作の受け付けの待ち時間が長くなると、先行動作が無駄になる場合がある。そのため、ユーザの操作の後に先行動作コマンドを送信することで、プリンタでの先行動作の無駄を回避できる。 Furthermore, the auxiliary program 42 in the first form outputs the precedence command after the user has completed the operation in the preview process after the OS 21 has generated the print data. In other words, if the preview is enabled, the execution of printing is not confirmed before the print data is generated, but is confirmed after the print data is generated. Therefore, by sending the precedence operation command after the print data is generated, it is possible to avoid the waste of the precedence operation on the printer. Also, if the user's operation is accepted before the print execution data is sent, even if the precedence operation command is sent early, the precedence operation may be wasted if the waiting time for the acceptance of the user's operation becomes long. Therefore, by sending the precedence operation command after the user's operation, it is possible to avoid the waste of the precedence operation on the printer.

続いて、補助プログラム42の動作を含む印刷システムによる印刷手順の、第2の形態について図6のシーケンス図を参照して説明する。第2の形態では、前処理において先行動作コマンドを出力する場合がある点が、第1の形態と異なる。なお、図6に示した各処理のうち、図3に示した第1の形態と同じ処理については同じ符号を付している。また、第2の形態では、図3に示した第1の形態のうち、矢印Aから矢印Gまでは同じであり、説明を省略する。 Next, a second form of the printing procedure by the printing system, including the operation of the auxiliary program 42, will be described with reference to the sequence diagram of FIG. 6. The second form differs from the first form in that a preceding operation command may be output in pre-processing. Note that, of the processes shown in FIG. 6, the same processes as those in the first form shown in FIG. 3 are given the same reference numerals. Also, in the second form, arrows A to G are the same as those in the first form shown in FIG. 3, and so description thereof will be omitted.

補助プログラム42の前処理補助プログラム421は、OS21から前処理の実行命令が出力された場合(図3の矢印G)、前処理の1つとして、先行動作コマンドの出力を印刷データの生成後とする条件である後出力条件と、先行動作コマンドの出力を制限する条件である制限条件と、の両方とも満たさないか否かの第1出力判断を行う(矢印S)。そして、第1出力判断による条件を満たす場合、すなわち後出力条件と制限条件との両方とも満たさない場合、前処理の中でプリンタ2に先行動作コマンドを出力する(矢印T)。プリンタ2は、PC1から先行動作コマンドを受信することで、先行動作を開始する(矢印U)。一方、第1出力判断による条件を満たさない、すなわち後出力条件と制限条件との少なくとも一方を満たす場合、先行動作コマンドを出力しない。 When a command to execute preprocessing is output from the OS 21 (arrow G in FIG. 3), the preprocessing auxiliary program 421 of the auxiliary program 42 performs a first output judgment as one of the preprocessing steps to determine whether or not both the post-output condition, which is a condition for outputting the preprocessing command after the generation of print data, and the restriction condition, which is a condition for restricting the output of the preprocessing command, are satisfied (arrow S). Then, if the condition of the first output judgment is satisfied, that is, if neither the post-output condition nor the restriction condition is satisfied, the preprocessing auxiliary program 421 outputs the preprocessing command to the printer 2 during preprocessing (arrow T). The printer 2 starts the preprocessing by receiving the preprocessing command from the PC 1 (arrow U). On the other hand, if the condition of the first output judgment is not satisfied, that is, if at least one of the post-output condition and the restriction condition is satisfied, the preprocessing auxiliary program 421 does not output the preprocessing command.

本形態の後出力条件には、プレビュー機能が有効になっていることが該当する。プレビュー処理を実行する場合、印刷がキャンセルされる可能性があり、プレビュー処理の前に先行動作コマンドを出力してもプリンタ2での先行動作が無駄になる場合がある。また、印刷実行が選択された場合であっても、その選択までに時間がかかると、折角の先行動作が無駄になる場合もある。 In this embodiment, the post-output condition is that the preview function is enabled. When preview processing is performed, printing may be canceled, and the advance operation on the printer 2 may be wasted even if an advance operation command is output before the preview processing. Also, even if print execution is selected, if it takes time for that selection to be made, the advance operation may be wasted.

すなわち、印刷実行がキャンセルされること、ユーザ操作の受け付け待ちがあること、の少なくとも一方に関する条件が後出力条件に該当する。後出力条件は、第1条件の一例である。例えば、プレビュー機能の他、印刷画像データの送信前に送信可否のメッセージを表示し、ユーザの入力操作を受け付ける機能を有する場合には、その機能が有効になっていることを後出力条件としてもよい。なお、前処理においてユーザの入力操作による印刷パラメータの変更を受け付ける場合、前処理補助プログラム421は、その受け付けが終了した後に後出力条件の判断を行う。 In other words, a post-output condition corresponds to at least one of the conditions that the print execution is canceled and that a user operation is waiting to be accepted. The post-output condition is an example of a first condition. For example, if there is a function that displays a message indicating whether or not the print image data can be sent before it is sent and accepts user input operations in addition to a preview function, the post-output condition may be that this function is enabled. Note that, if changes to print parameters are accepted through user input operations in pre-processing, the pre-processing auxiliary program 421 judges the post-output condition after the acceptance is completed.

また、本形態の制限条件には、セキュア印刷の指定があることが該当する。セキュア印刷の指定があると、プリンタ2は、印刷画像データを受信した後、パスワードの入力を受け付け、印刷パラメータに含まれるパスワードと一致するパスワードが入力された場合に、その印刷画像データに基づく印刷を行うことになる。つまり、セキュア印刷が指定されている場合、プリンタ2が印刷画像データを受信しても直ぐには印刷が開始されない。そのため、先行動作を行う必要がなく、先行動作コマンドの送信を制限するものと判断できる。 The restriction conditions in this embodiment also include the specification of secure printing. When secure printing is specified, the printer 2 will accept the input of a password after receiving the print image data, and will perform printing based on the print image data if a password matching the password included in the print parameters is entered. In other words, when secure printing is specified, printing will not start immediately even if the printer 2 receives the print image data. Therefore, there is no need to perform a preemptive operation, and it can be determined that the sending of a preemptive operation command is restricted.

すなわち、プリンタ2が印刷画像データを受信しても他の条件を満たさない限り印刷を開始しないことが制限条件に該当する。制限条件は、第2条件の一例である。例えば、セキュア印刷の他、指定された時間に印刷を行わせる予約印刷の指定があることを制限条件としてもよい。あるいはパスワードの入力は無くともユーザからの実行指示の入力操作を待って印刷を開始する印刷であった場合も制限条件に含めてもよい。あるいはプリンタ2が既に印刷を実行していることを制限条件としてもよい。印刷の実行中は先行動作が不要なためである。また、用紙無しや紙詰まり等のエラーで印刷不能になっていることを制限条件としてもよい。先行動作を行ったとしても印刷を直ぐには開始できないためである。 In other words, a restriction condition corresponds to the printer 2 not starting printing even if it receives print image data unless other conditions are met. The restriction condition is an example of the second condition. For example, a restriction condition may be that, in addition to secure printing, there is a designation of scheduled printing to print at a specified time. Or, a restriction condition may include printing that starts printing after waiting for an execution instruction input operation from the user even without a password being entered. Or a restriction condition may be that the printer 2 is already printing. This is because a preceding operation is not necessary while printing is in progress. Or a restriction condition may be that printing is not possible due to an error such as no paper or a paper jam. This is because printing cannot start immediately even if a preceding operation is performed.

前処理の実行が終了した後、前処理補助プログラム421は、終了通知をOS21に渡す(矢印I)。OS21は、前処理補助プログラム421から終了通知を受け取ったことに応じて、汎用印刷プログラム41を使用して印刷データを生成し(矢印J)、補助プログラム42の後処理の実行命令を出力する(矢印K)。 After the execution of the pre-processing is completed, the pre-processing auxiliary program 421 passes a completion notification to the OS 21 (arrow I). In response to receiving the completion notification from the pre-processing auxiliary program 421, the OS 21 generates print data using the general-purpose printing program 41 (arrow J) and outputs an execution command for the post-processing of the auxiliary program 42 (arrow K).

補助プログラム42の後処理補助プログラム422は、後処理の実行命令が出力された場合、後処理の1つとして、プレビュー処理を実行する(矢印L)。なお、プレビュー機能が無効になっている場合、プレビュー処理は省略される。 When a command to execute post-processing is output, the post-processing auxiliary program 422 of the auxiliary program 42 executes preview processing as one of the post-processing processes (arrow L). Note that if the preview function is disabled, the preview processing is omitted.

さらに、後処理補助プログラム422は、後処理の1つとして、先行動作コマンドを出力する条件である出力実行条件を満たすことと、先行動作コマンドの出力を制限する条件である制限条件を満たさないことと、の両方を満たすか否かの第2出力判断を行う(矢印V)。そして、第2出力判断による条件を満たす場合、後処理の中でプリンタ2に先行動作コマンドを出力する(矢印W)。プリンタ2は、PC1から先行動作コマンドを受信することで、先行動作を開始する(矢印X)。 Furthermore, as one of the post-processing steps, the post-processing auxiliary program 422 performs a second output judgment to determine whether or not both an output execution condition, which is a condition for outputting a precedent operation command, is satisfied, and a restrictive condition, which is a condition for restricting the output of the precedent operation command, is not satisfied (arrow V). If the condition of the second output judgment is satisfied, the precedent operation command is output to the printer 2 during the post-processing (arrow W). The printer 2 starts the precedent operation by receiving the precedent operation command from the PC 1 (arrow X).

本形態の出力実行条件には、プレビュー処理において印刷実行が選択されたことが該当する。プレビュー処理を実行する場合、印刷データの生成後に印刷を実行するかキャンセルするかを受け付けるため、印刷実行が選択されたことによって先行動作コマンドを送信できるものと判断できる。 In this embodiment, the output execution condition is when print execution is selected during preview processing. When preview processing is performed, a choice is accepted as to whether to print or cancel after print data is generated, so it can be determined that a preceding operation command can be sent when print execution is selected.

また、本形態の後処理での制限条件には、前処理での制限条件と同じ条件に加え、前処理において先行動作コマンドを送信していることが該当する。前処理において先行動作コマンドが送信済みの場合、後処理での先行動作コマンドの送信は無駄になる。そのため、先行動作コマンドが送信済みであれば先行動作コマンドの送信が不要と判断できる。 In addition, the restriction conditions for post-processing in this embodiment include the same conditions as the restriction conditions for pre-processing, plus the sending of a precedent operation command in pre-processing. If a precedent operation command has already been sent in pre-processing, sending a precedent operation command in post-processing is wasted. Therefore, if a precedent operation command has already been sent, it can be determined that there is no need to send a precedent operation command.

プレビュー処理においてキャンセルが選択されることなく後処理の実行を終了する場合、後処理補助プログラム422は、終了通知をOS21に渡す(矢印O)。OS21は、後処理補助プログラム422から終了通知を受け取ったことに応じて、印刷画像データをプリンタ2に送信し(矢印P)、印刷実行通知に基づく処理を終了する。印刷画像データを受信したプリンタ2は、受信した印刷画像データに基づく印刷を開始する(矢印Q)。なお、不図示であるが、キャンセルが選択されて後処理の実行を終了する場合、後処理補助プログラム422は、キャンセル通知をOS21に渡す。OS21は、キャンセル通知を受け取ったことに応じて、印刷画像データを送信することなく、印刷実行通知に基づく処理を終了する。 When the execution of post-processing is terminated without cancel being selected in the preview process, the post-processing assistant program 422 passes a termination notification to the OS 21 (arrow O). In response to receiving the termination notification from the post-processing assistant program 422, the OS 21 sends the print image data to the printer 2 (arrow P) and terminates the processing based on the print execution notification. The printer 2 that has received the print image data starts printing based on the received print image data (arrow Q). Although not shown, when the execution of post-processing is terminated by selecting cancel, the post-processing assistant program 422 passes a cancellation notification to the OS 21. In response to receiving the cancellation notification, the OS 21 terminates the processing based on the print execution notification without sending the print image data.

以上、詳細に説明したように、第2の形態の補助プログラム42であっても、汎用印刷プログラム41を介してプリンタ2による印刷を行わせる印刷指示があった場合に、印刷画像データのプリンタ2への送信が開始される前に、補助プログラム42がプリンタ2に先行動作コマンドを出力する。これにより、PC1が汎用印刷プログラム41を介する印刷指示を受け付けた場合でも、プリンタ2がその印刷指示に基づく印刷を開始する前に、プリンタ2がプリンタ独自の先行動作を実行することができ、プリンタ独自に有する能力を発揮させることができる。 As explained in detail above, even in the case of the auxiliary program 42 in the second form, when a print instruction is given via the general-purpose print program 41 to cause the printer 2 to print, the auxiliary program 42 outputs a preemptive operation command to the printer 2 before transmission of the print image data to the printer 2 begins. This allows the printer 2 to execute its own preemptive operation before the printer 2 starts printing based on the print instruction, even when the PC 1 accepts a print instruction via the general-purpose print program 41, thereby making it possible to demonstrate the printer's own capabilities.

さらに、本形態の補助プログラム42は、OS21による印刷データの生成前に後出力条件の判断を行い、後出力条件を満たさない場合には、OS21による印刷データの生成前であっても、先行動作コマンドをプリンタ2に送信可能にしている。すなわち、印刷の条件によっては、印刷データの生成前であっても印刷の実行が確定している場合もある。その場合は先行動作コマンドを印刷データの生成前に送信することで、プリンタでの先行動作を早期に開始でき、印刷の開始をより早めることができる。 Furthermore, the auxiliary program 42 of this embodiment determines whether the post-output conditions are met before the OS 21 generates print data, and if the post-output conditions are not met, it is possible to send a pre-operation command to the printer 2 even before the OS 21 generates print data. In other words, depending on the printing conditions, printing may be confirmed even before the print data is generated. In that case, by sending the pre-operation command before the print data is generated, the pre-operation on the printer can be started early, and printing can be started even sooner.

さらに、本形態の補助プログラム42は、制限条件の判断を行い、制限条件を満たす場合には、後出力条件を満たさない場合や出力実行条件を満たす場合であっても、先行動作コマンドをプリンタ2に送信していない。すなわち、印刷の条件によっては、印刷実行データがプリンタ2に送信された後、プリンタ2によって印刷が直ぐに開始されない場合もある。その場合は先行動作コマンドを送信しないことで、プリンタ2での先行動作の無駄を回避できる。 Furthermore, the auxiliary program 42 of this embodiment judges whether the restrictive conditions are satisfied, and if the restrictive conditions are satisfied, it does not send a pre-emptive operation command to the printer 2, even if the post-output conditions are not satisfied or the output execution conditions are satisfied. In other words, depending on the printing conditions, the printer 2 may not immediately start printing after the print execution data is sent to the printer 2. In that case, by not sending a pre-emptive operation command, it is possible to avoid wasting a pre-emptive operation on the printer 2.

なお、本明細書に開示される実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続されるデバイスは、プリンタに限らず、複合機、複写機、FAX装置など、印刷機能を有する装置であれば、適用可能である。また、PC1に接続されるプリンタは、1台に限らず、複数台でもよい。 Note that the embodiments disclosed in this specification are merely examples and do not limit the present invention in any way. Naturally, the technology disclosed in this specification can be improved and modified in various ways without departing from the spirit of the technology. For example, the device connected to PC1 is not limited to a printer, but can be any device with a printing function, such as a multifunction device, copier, or fax machine. Also, the number of printers connected to PC1 is not limited to one, and multiple printers may be connected.

また、例えば、実施の形態では、補助プログラム42は前処理と後処理との両方を備えているとしたが、補助プログラム42は印刷データの生成後に起動される後処理補助プログラム422の構成のみであってもよい。また、前処理補助プログラム421と後処理補助プログラム422とは、1つのモジュールであってもよいし、別のモジュールであっても良い。 In addition, for example, in the embodiment, the auxiliary program 42 has both pre-processing and post-processing, but the auxiliary program 42 may be configured only as a post-processing auxiliary program 422 that is started after the print data is generated. Also, the pre-processing auxiliary program 421 and the post-processing auxiliary program 422 may be a single module or separate modules.

また、先行動作コマンドとして、印刷パラメータを送信してもよい。この場合、印刷パラメータを受信したプリンタ2は、例えば、印刷パラメータにカラー印刷の設定が含まれていればカラー印刷の準備動作を実行し、モノクロ印刷の設定であれば黒色のみの準備動作を実行する。 Printing parameters may also be sent as a preliminary operation command. In this case, the printer 2 that receives the printing parameters will, for example, execute preparatory operations for color printing if the printing parameters include a color printing setting, and execute preparatory operations for black-and-white printing only if the printing parameters include a monochrome printing setting.

また、プリンタ2がレーザプリンタである場合、カラー印刷の準備動作として、色ずれ抑制のためのキャリブレーション処理を行ってもよい。また、プリンタ2がフィニッシャを備えるモデルであり、印刷パラメータにフィニッシャでの処理が含まれている場合、プリンタ2は、印刷パラメータを受信した場合にフィニッシャの準備動作を行うとしても良い。 If the printer 2 is a laser printer, a calibration process to suppress color misregistration may be performed as a preparatory operation for color printing. If the printer 2 is a model equipped with a finisher and the printing parameters include processing by the finisher, the printer 2 may perform a preparatory operation for the finisher when it receives the printing parameters.

また、前処理と後処理とを実行するモジュールは、補助プログラム42に限らず、OS21の汎用印刷プログラム41にて印刷を行う際に、OS21から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフロー アプリ(Print workflow)でも良い。 The module that executes the pre-processing and post-processing is not limited to the auxiliary program 42, but may be any program that receives instructions from the OS 21 when printing is performed by the general-purpose print program 41 of the OS 21. For example, it may be a print workflow application (Print workflow) whose specifications have been published by Microsoft.

また、実施の形態では、OS21から補助プログラム42の実行命令が出力されることで、補助プログラム42が起動されるとしているが、補助プログラム42の起動タイミングはこれに限らない。例えば、常時起動されている補助プログラム42であってもよく、その場合には、補助プログラム42は、実行命令を受けて前述した動作を行うとすれば良い。 In the embodiment, the auxiliary program 42 is started by the OS 21 outputting an execution command for the auxiliary program 42, but the timing of starting the auxiliary program 42 is not limited to this. For example, the auxiliary program 42 may be constantly running, in which case the auxiliary program 42 may receive an execution command and perform the above-mentioned operation.

また、実施の形態では、印刷指示を受け付ける(矢印E)の前に、補助プログラム42において、固有の印刷パラメータとして、印刷画像データの送信前に印刷対象の画像をUI20に表示させるプレビュー機能を有効にするか否かの設定と、パスワードの入力を印刷の実行条件とするセキュア印刷の指定と、を受け付ける(矢印C)ようにしているが、印刷指示を受け付けた後の前処理(矢印H)の1つとして受け付けてもよい。 In addition, in the embodiment, before a print instruction is accepted (arrow E), the auxiliary program 42 accepts (arrow C) specific print parameters, including a setting for whether to enable a preview function that displays the image to be printed on the UI 20 before the print image data is sent, and a specification for secure printing that requires the entry of a password as a printing execution condition, but these may also be accepted as one of the pre-processing steps (arrow H) after accepting a print instruction.

また、実施の形態では、補助プログラム42が固有の印刷パラメータとして、印刷画像データの送信前に印刷対象の画像をUI20に表示させるプレビュー機能を有効にするか否かの設定と、パスワードの入力を印刷の実行条件とするセキュア印刷の指定と、を受け付けるようにしているが、これらの設定の一部または全てをOS21にて受け付けるようにしてもよい。 In addition, in the embodiment, the auxiliary program 42 accepts as unique print parameters a setting for whether to enable a preview function that displays the image to be printed on the UI 20 before the print image data is sent, and a designation for secure printing that requires the entry of a password as a condition for executing printing, but some or all of these settings may be accepted by the OS 21.

また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。 In addition, in any of the flowcharts disclosed in the embodiments, the execution order of multiple processes in any of the steps can be arbitrarily changed or the processes can be executed in parallel, as long as no inconsistencies occur in the process content.

また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。 The processes disclosed in the embodiments may be executed by a single CPU, multiple CPUs, hardware such as an ASIC, or a combination of these. The processes disclosed in the embodiments may be realized in various ways, such as a recording medium on which a program for executing the processes is recorded, or a method.

1 PC
2 プリンタ
11 CPU
21 OS
41 汎用印刷プログラム
42 補助プログラム
43 編集アプリ
1 PC
2 Printer 11 CPU
21 OS
41 General-purpose printing program 42 Auxiliary program 43 Editing application

Claims (5)

情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
前記コンピュータに、
前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれ、プリンタメーカから提供されるプリンタドライバを用いない印刷プログラムを介して前記プリンタによる印刷を行わせる印刷指示があった場合に、前記印刷指示に対応する印刷データが生成される前に、第1条件を満たすか否かを判断する第1判断処理を実行させ、前記第1条件は、プレビュー処理を実行させるための設定が有効であることを示す条件であり、前記プレビュー処理は、前記情報処理装置の表示デバイスに、印刷対象の画像を表示させ、印刷を行うか否かの選択を受け付ける処理であり、
さらに前記コンピュータに、
前記第1条件を満たさない場合、前記印刷指示に対応する前記印刷データが生成される前に、前記情報処理装置の通信インタフェースを介して、印刷を開始する前の先行動作を実行させる先行動作コマンドを前記プリンタに出力するコマンド出力処理を実行させ、前記プリンタは、前記先行動作コマンドに対応する前記先行動作を行う機能を有し、
前記第1条件を満たす場合、前記印刷指示に対応する前記印刷データが生成された後、前記プレビュー処理を実行させ、前記プレビュー処理にて印刷を行う前記選択を受け付けた場合にさらに、前記コマンド出力処理を実行させ、
さらに前記コンピュータに、
前記コマンド出力処理の実行後に、前記印刷指示に対応する前記印刷データに基づく印刷画像データが前記プリンタに送信されるように制御させる、
ことを特徴とするサポートプログラム。
A support program executable by a computer of an information processing device and corresponding to a printer connected to the information processing device,
The computer includes:
when there is a print instruction to cause the printer to print via a print program that is pre-installed in an operating system of the information processing device and does not use a printer driver provided by a printer manufacturer , a first determination process is executed to determine whether a first condition is satisfied before print data corresponding to the print instruction is generated, the first condition being a condition indicating that a setting for executing a preview process is valid, and the preview process is a process of displaying an image to be printed on a display device of the information processing device and accepting a selection of whether to print or not,
The computer further comprises:
if the first condition is not satisfied, before the print data corresponding to the print instruction is generated, a command output process is executed to output to the printer, via a communication interface of the information processing device, a precedent operation command for executing a precedent operation before starting printing, the printer having a function of performing the precedent operation corresponding to the precedent operation command;
When the first condition is satisfied, after the print data corresponding to the print instruction is generated, the preview process is executed, and when the selection of printing is accepted in the preview process, the command output process is further executed;
The computer further comprises:
and after the command output process is executed, control is performed so that print image data based on the print data corresponding to the print instruction is transmitted to the printer.
A support program characterized by:
請求項1に記載するサポートプログラムにおいて、
前記コンピュータに、
前記印刷指示があった場合に、第2条件を満たすか否かを判断する第2判断処理を実行させ、前記第2条件は、前記印刷画像データを受信した前記プリンタにおいて、所定の条件が満たされた後に印刷が開始されることを示す条件であり、
さらに前記コンピュータに、
前記第2条件を満たす場合、前記印刷画像データが前記プリンタに送信される場合であっても、前記コマンド出力処理を実行させず、
前記第2条件を満たさない場合、前記印刷画像データの前記プリンタへの送信が開始される前に、前記コマンド出力処理を実行させる、
ことを特徴とするサポートプログラム。
2. The support program according to claim 1 ,
The computer includes:
executes a second determination process for determining whether a second condition is satisfied when the print instruction is received, the second condition being a condition indicating that printing will start after a predetermined condition is satisfied in the printer that has received the print image data;
The computer further comprises:
When the second condition is satisfied, even if the print image data is to be transmitted to the printer, the command output process is not executed;
if the second condition is not satisfied, the command output process is executed before transmission of the print image data to the printer is started;
A support program characterized by:
請求項2に記載するサポートプログラムにおいて、
前記コンピュータに、
前記印刷画像データに関連付けられるパスワードの設定を受け付ける受付処理を実行させ、前記パスワードが設定されている場合、前記プリンタに送信される前記印刷画像データには、前記パスワードが関連付けられ、前記プリンタは、受信した前記印刷画像データに前記パスワードが関連付けられている場合に、前記プリンタに前記パスワードが入力されたことを前記所定の条件として前記印刷画像データを用いた印刷を行う機能を有し、
さらに前記コンピュータに、
前記パスワードが設定されている場合に、前記第2判断処理において前記第2条件を満たすと判断させる、
ことを特徴とするサポートプログラム。
The support program according to claim 2 ,
The computer includes:
a function of executing an acceptance process for accepting the setting of a password associated with the print image data, and when the password is set, the password is associated with the print image data to be transmitted to the printer, and when the password is associated with the received print image data, the printer has a function of performing printing using the print image data under the predetermined condition that the password has been input to the printer,
The computer further comprises:
When the password is set, the second determination process determines that the second condition is satisfied.
A support program characterized by:
通信インタフェースと、
コンピュータと、
を備える情報処理装置であって、
前記情報処理装置と接続するプリンタに対応するサポートプログラムが組み込まれ、前記プリンタは、印刷を開始する前の先行動作を行う機能を有し、
前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムであって、プリンタメーカから提供されるプリンタドライバを用いない印刷プログラムを有しており、
前記コンピュータは、
前記印刷プログラムを介して前記プリンタによる印刷を行わせる印刷指示があった場合に、前記印刷指示に対応する印刷データが生成される前に、前記サポートプログラムによって、第1条件を満たすか否かを判断する第1判断処理を実行し、前記第1条件は、プレビュー処理を実行させるための設定が有効であることを示す条件であり、前記プレビュー処理は、前記情報処理装置の表示デバイスに、印刷対象の画像を表示させ、印刷を行うか否かの選択を受け付ける処理であり、
さらに前記コンピュータは、
前記第1条件を満たさない場合、前記印刷指示に対応する前記印刷データが生成される前に、前記サポートプログラムによって、前記情報処理装置の通信インタフェースを介して、前記先行動作を実行させる先行動作コマンドを前記プリンタに出力するコマンド出力処理を実行し、
前記第1条件を満たす場合、前記印刷指示に対応する前記印刷データが生成された後、前記サポートプログラムによって、前記プレビュー処理を実行し、前記プレビュー処理にて印刷を行う前記選択を受け付けた場合にさらに、前記サポートプログラムによって、前記コマンド出力処理を実行し、
さらに前記コンピュータは、
前記コマンド出力処理の実行後に、前記印刷指示に対応する前記印刷データに基づく印刷画像データが前記プリンタに送信されるように制御する、
ことを特徴とする情報処理装置。
A communication interface;
A computer,
An information processing device comprising:
a support program corresponding to a printer connected to the information processing device is installed, the printer having a function of performing a preliminary operation before starting printing;
the operating system of the information processing device has a printing program that is a pre-installed program and does not use a printer driver provided by a printer manufacturer;
The computer includes:
when a print instruction is given via the print program to cause the printer to perform printing, before print data corresponding to the print instruction is generated, a first determination process is executed by the support program to determine whether or not a first condition is satisfied, the first condition being a condition indicating that a setting for executing a preview process is valid, and the preview process is a process of displaying an image to be printed on a display device of the information processing device and accepting a selection of whether or not to print,
The computer further comprises:
if the first condition is not satisfied, before the print data corresponding to the print instruction is generated, a command output process is executed by the support program to output to the printer, via a communication interface of the information processing device, a precedent operation command for executing the precedent operation;
When the first condition is satisfied, after the print data corresponding to the print instruction is generated, the preview process is executed by the support program, and when the selection of printing is accepted in the preview process, the command output process is further executed by the support program;
The computer further comprises:
After the command output process is executed, control is performed so that print image data based on the print data corresponding to the print instruction is transmitted to the printer.
23. An information processing apparatus comprising:
情報処理装置にプリンタが接続され、
前記情報処理装置には、前記プリンタに対応するサポートプログラムが組み込まれ、前記プリンタは、印刷を開始する前の先行動作を行う機能を有し、
前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムであって、プリンタメーカから提供されるプリンタドライバを用いない印刷プログラムを有しており、
前記情報処理装置から前記プリンタに印刷を実行させる印刷方法において、
前記印刷プログラムを介して前記プリンタによる印刷を行わせる印刷指示があった場合に、前記印刷指示に対応する印刷データが生成される前に、前記サポートプログラムによって、第1条件を満たすか否かを判断し、前記第1条件は、プレビューを実行させるための設定が有効であることを示す条件であり、前記プレビューでは、前記サポートプログラムによって、前記情報処理装置の表示デバイスに、印刷対象の画像を表示させ、印刷を行うか否かの選択を受け付け、
さらに、
前記第1条件を満たさない場合、前記印刷指示に対応する前記印刷データが生成される前に、前記サポートプログラムによって、前記情報処理装置の通信インタフェースを介して、前記先行動作を実行させる先行動作コマンドを前記プリンタに出力し、
前記第1条件を満たす場合、前記印刷指示に対応する前記印刷データが生成された後、前記プレビューを行い、前記プレビューにて印刷を行う前記選択を受け付けた場合にさらに、前記サポートプログラムによって、前記情報処理装置の前記通信インタフェースを介して、前記先行動作コマンドを前記プリンタに出力し、
さらに、
前記先行動作コマンドの出力後に、前記印刷指示に対応する前記印刷データに基づく印刷画像データが前記プリンタに送信されるように、前記情報処理装置を制御する、
ことを特徴とする印刷方法。
A printer is connected to the information processing device,
a support program corresponding to the printer is installed in the information processing device, the printer has a function of performing a preliminary operation before starting printing;
the operating system of the information processing device has a printing program that is a pre-installed program and does not use a printer driver provided by a printer manufacturer;
A printing method for causing the information processing device to execute printing on the printer ,
when a print instruction is given via the print program to cause the printer to perform printing, before print data corresponding to the print instruction is generated, the support program determines whether or not a first condition is satisfied, the first condition being a condition indicating that a setting for executing a preview is valid, and in the preview, the support program causes a display device of the information processing apparatus to display an image to be printed and accepts a selection of whether or not to print;
moreover,
if the first condition is not satisfied, before the print data corresponding to the print instruction is generated, a precedence operation command for executing the precedence operation is output to the printer by the support program via a communication interface of the information processing device;
When the first condition is satisfied, after the print data corresponding to the print instruction is generated, the preview is performed, and when the selection of printing is accepted in the preview, the preceding operation command is output to the printer via the communication interface of the information processing device by the support program;
moreover,
controlling the information processing device so that, after the output of the anticipatory operation command, print image data based on the print data corresponding to the print instruction is transmitted to the printer;
A printing method comprising:
JP2020086100A 2020-05-15 2020-05-15 SUPPORT PROGRAM, INFORMATION PROCESSING APPARATUS, AND PRINTING METHOD Active JP7589448B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2020086100A JP7589448B2 (en) 2020-05-15 2020-05-15 SUPPORT PROGRAM, INFORMATION PROCESSING APPARATUS, AND PRINTING METHOD
PCT/JP2021/018397 WO2021230349A1 (en) 2020-05-15 2021-05-14 Support program, information processing device, program set, and printing method
CN202180034990.9A CN115552368B (en) 2020-05-15 2021-05-14 Support program, information processing apparatus, program set, and printing method
US17/320,467 US11836555B2 (en) 2020-05-15 2021-05-14 Information processing device outputting preceding operation command to printer before starting transmitting print execution data
JP2024197305A JP7782650B2 (en) 2020-05-15 2024-11-12 Support program, information processing device, and printing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020086100A JP7589448B2 (en) 2020-05-15 2020-05-15 SUPPORT PROGRAM, INFORMATION PROCESSING APPARATUS, AND PRINTING METHOD

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2024197305A Division JP7782650B2 (en) 2020-05-15 2024-11-12 Support program, information processing device, and printing method

Publications (2)

Publication Number Publication Date
JP2021179912A JP2021179912A (en) 2021-11-18
JP7589448B2 true JP7589448B2 (en) 2024-11-26

Family

ID=78511647

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020086100A Active JP7589448B2 (en) 2020-05-15 2020-05-15 SUPPORT PROGRAM, INFORMATION PROCESSING APPARATUS, AND PRINTING METHOD
JP2024197305A Active JP7782650B2 (en) 2020-05-15 2024-11-12 Support program, information processing device, and printing method

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2024197305A Active JP7782650B2 (en) 2020-05-15 2024-11-12 Support program, information processing device, and printing method

Country Status (1)

Country Link
JP (2) JP7589448B2 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000163225A (en) 1998-11-26 2000-06-16 Canon Inc Information processing apparatus, print control apparatus, print system and control method thereof, printing apparatus and storage medium
JP2006127478A (en) 2004-09-30 2006-05-18 Ricoh Co Ltd Print control apparatus and program recording medium
JP2006215752A (en) 2005-02-02 2006-08-17 Canon Inc Processing method and image processing system
JP2016012189A (en) 2014-06-27 2016-01-21 ブラザー工業株式会社 Information processing program, information processing apparatus, and information processing apparatus control method
JP2018190285A (en) 2017-05-10 2018-11-29 キヤノン株式会社 Communication device, control method, and program
JP2019175330A (en) 2018-03-29 2019-10-10 キヤノン株式会社 Print processing system and control method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000163225A (en) 1998-11-26 2000-06-16 Canon Inc Information processing apparatus, print control apparatus, print system and control method thereof, printing apparatus and storage medium
JP2006127478A (en) 2004-09-30 2006-05-18 Ricoh Co Ltd Print control apparatus and program recording medium
JP2006215752A (en) 2005-02-02 2006-08-17 Canon Inc Processing method and image processing system
JP2016012189A (en) 2014-06-27 2016-01-21 ブラザー工業株式会社 Information processing program, information processing apparatus, and information processing apparatus control method
JP2018190285A (en) 2017-05-10 2018-11-29 キヤノン株式会社 Communication device, control method, and program
JP2019175330A (en) 2018-03-29 2019-10-10 キヤノン株式会社 Print processing system and control method

Also Published As

Publication number Publication date
JP7782650B2 (en) 2025-12-09
JP2025019083A (en) 2025-02-06
JP2021179912A (en) 2021-11-18

Similar Documents

Publication Publication Date Title
JP7405217B2 (en) Support programs, information processing devices, and printing methods
JP7435697B2 (en) Support programs, information processing devices, and printing methods
JP2025109981A (en) SUPPORT PROGRAM, INFORMATION PROCESSING APPARATUS, AND PRINTING METHOD
JP7225737B2 (en) Support program, information processing device, and printing method
JP7456527B2 (en) Support programs, information processing devices, and printing methods
JP7540148B2 (en) SUPPORT PROGRAM, INFORMATION PROCESSING APPARATUS, AND PRINTING METHOD
JP7559919B2 (en) SUPPORT PROGRAM, INFORMATION PROCESSING APPARATUS, AND PRINTING METHOD
JP7172672B2 (en) Application program, information processing device, and printing method
JP2023073347A (en) Support program, information processing device, and printing method
US11064088B2 (en) Non-transitory computer-readable recording medium, information processing apparatus and printing method
US11604613B2 (en) Support program for driverless general-purpose print program, information processing device, and printing method for aggregate printing
JP7342577B2 (en) Support programs, information processing devices, and printing methods
JP7259373B2 (en) Support program, information processing device, and printing method
JP7559351B2 (en) SUPPORT PROGRAM, PROGRAM SET, INFORMATION PROCESSING APPARATUS, AND PRINTING METHOD
US11836555B2 (en) Information processing device outputting preceding operation command to printer before starting transmitting print execution data
JP7589448B2 (en) SUPPORT PROGRAM, INFORMATION PROCESSING APPARATUS, AND PRINTING METHOD
JP7615801B2 (en) Support programs and printing systems
WO2022163430A1 (en) Support program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240312

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240508

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240820

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240904

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20241015

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20241028

R150 Certificate of patent or registration of utility model

Ref document number: 7589448

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150