JP6642210B2 - Printing system, driver program, and printer - Google Patents
Printing system, driver program, and printer Download PDFInfo
- Publication number
- JP6642210B2 JP6642210B2 JP2016070002A JP2016070002A JP6642210B2 JP 6642210 B2 JP6642210 B2 JP 6642210B2 JP 2016070002 A JP2016070002 A JP 2016070002A JP 2016070002 A JP2016070002 A JP 2016070002A JP 6642210 B2 JP6642210 B2 JP 6642210B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- instruction
- condition
- tray
- 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
Links
Images
Landscapes
- Ink Jet (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Facsimiles In General (AREA)
Description
本発明は、情報処理端末の指示に従ってプリンタが印刷動作を実行する印刷システムに関する。 The present invention relates to a printing system in which a printer performs a printing operation according to an instruction from an information processing terminal.
特許文献1に記載のホストは、印刷前準備をプリンタに指示した後に印刷データを生成し、生成した印刷データをプリンタに送信する。また、特許文献1に記載のプリンタは、ホストからの印刷前準備の指示に従ってヘッドメンテナンスを実行し、ホストから受信した印刷データに従って印刷を実行する。 The host described in Patent Literature 1 generates print data after instructing the printer to perform pre-print preparation, and transmits the generated print data to the printer. Further, the printer described in Patent Literature 1 performs head maintenance according to a pre-print preparation instruction from a host, and performs printing according to print data received from the host.
特許文献1に記載のプリンタは、印刷前処理としてヘッドメンテナンスの例しか記載されていない。しかしながら、ヘッドメンテナンスは、直前にインクが吐出されている場合には実行する必要がない。また、印刷前処理として給紙動作を行う事ができれば、さらに印刷時間を短縮できる効果がある。すなわち、特許文献1の技術では、印刷動作の実行指示が入力されてから最初のシートがプリンタから排出されるまでの所要時間であるFPOT(First Print Out Timeの略)を短縮する効果が限定的である。 The printer described in Patent Literature 1 describes only an example of head maintenance as a pre-print process. However, it is not necessary to perform head maintenance when ink is ejected immediately before. Further, if the paper feeding operation can be performed as the pre-printing process, there is an effect that the printing time can be further reduced. That is, in the technique of Patent Document 1, the effect of shortening the FPOT (abbreviated for First Print Out Time), which is the time required from the input of the print operation execution instruction to the ejection of the first sheet from the printer, is limited. It is.
本発明は、上記の事情に鑑みてなされたものであり、その目的は、FPOTをさらに短縮した印刷システムを提供することにある。 The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a printing system in which FPOT is further reduced.
本明細書に記載の印刷システムは、第1通信インタフェースを備える情報処理端末によって読み取り可能なドライバプログラムと、プリンタとからなる。前記ドライバプログラムは、前記情報処理端末のOSから印刷指示を受け付ける印刷指示受付処理を前記情報処理端末に実行させる。前記印刷指示は、ユーザによって指定された実行条件に従った印刷動作を前記プリンタに実行させる指示がユーザによって入力されたことを示す。前記ドライバプログラムは、前記印刷指示受付処理で前記印刷指示を受け付けたことに応じて、前記第1通信インタフェースを通じて前記プリンタに第1準備指示情報を送信する第1準備指示処理を前記情報処理端末に実行させる。前記第1準備指示情報は、前記印刷動作で特定品質の画像をシートに印刷するための複数の印刷前動作のうち、前記印刷動作の実行条件によって動作内容が変化しない第1印刷前動作の実行を指示する情報である。前記ドライバプログラムは、ユーザによって指定された複数の前記実行条件のうち、既に確定した確定条件が存在するか否かを判断する判断処理と、前記確定条件が存在すると前記判断処理で判断したことに応じて、前記第1通信インタフェースを通じて前記プリンタに第2準備指示情報を送信する第2準備指示処理とを前記情報処理端末に実行させる。前記第2準備指示情報は、複数の前記印刷前動作のうち、前記確定条件によって動作内容が変化する第2印刷前動作の実行を指示する情報である。前記ドライバプログラムは、前記確定条件が存在しないと前記判断処理で判断した、或いは前記第2準備指示処理を実行したことに応じて、ユーザによって指定された画像データから前記印刷動作の対象となる印刷データを生成する生成処理と、前記第1通信インタフェースを通じて前記プリンタに印刷指示情報を送信する印刷指示処理とを前記情報処理端末に実行させる。前記印刷指示情報は、前記生成処理で生成した前記印刷データに対する前記印刷動作を前記実行条件に従って実行させる情報である。前記プリンタは、前記印刷前動作及び前記印刷動作を実行する動作部と、第2通信インタフェースと、コントローラとを備えており、前記コントローラは、前記第2通信インタフェースを通じて前記情報処理端末から前記第1準備指示情報を受信する第1受信処理と、前記第1受信処理で前記第1準備指示情報を受信したことに応じて、前記動作部に前記第1印刷前動作を実行させる第1印刷前処理と、前記第2通信インタフェースを通じて前記情報処理端末から前記第2準備指示情報を受信する第2受信処理と、前記第2受信処理で前記第2準備指示情報を受信したことに応じて、前記動作部に前記第2印刷前動作を実行させる第2印刷前処理と、前記第2通信インタフェースを通じて前記情報処理端末から前記印刷指示情報を受信する第3受信処理と、前記第3受信処理で前記印刷指示情報を受信し且つ全ての前記印刷前動作を実行したことに応じて、前記印刷指示情報に従った前記印刷動作を前記動作部に実行させる印刷処理とを実行する。 The printing system described in the present specification includes a driver program readable by an information processing terminal having a first communication interface, and a printer. The driver program causes the information processing terminal to execute a print instruction receiving process of receiving a print instruction from an OS of the information processing terminal. The print instruction indicates that the user has input an instruction to cause the printer to execute a print operation in accordance with the execution condition specified by the user. The driver program transmits, to the information processing terminal, a first preparation instruction process of transmitting first preparation instruction information to the printer through the first communication interface in response to receiving the print instruction in the print instruction reception process. Let it run. The first preparation instruction information includes, among a plurality of pre-print operations for printing an image of a specific quality on a sheet in the print operation, execution of the first pre-print operation in which the operation content does not change depending on the execution condition of the print operation. Is the information for instructing. The driver program determines, in a plurality of the execution conditions specified by the user, a determination process of determining whether or not a confirmed determination condition already exists, and determining that the determination condition exists by the determination process. Accordingly, the information processing terminal causes the information processing terminal to execute a second preparation instruction process of transmitting second preparation instruction information to the printer via the first communication interface. The second preparation instruction information is information for instructing execution of a second pre-print operation in which the operation content changes according to the determination condition among a plurality of the pre-print operations. The driver program determines from the image data specified by the user that the printing operation is to be performed, in response to the determination processing determining that the determination condition does not exist or executing the second preparation instruction processing. The information processing terminal executes a generation process of generating data and a print instruction process of transmitting print instruction information to the printer via the first communication interface. The print instruction information is information for causing the print operation to be performed on the print data generated in the generation processing according to the execution condition. The printer includes an operation unit that executes the pre-printing operation and the printing operation, a second communication interface, and a controller, wherein the controller transmits the first information from the information processing terminal to the first communication interface through the second communication interface. A first reception process for receiving preparation instruction information; and a first pre-print process for causing the operation unit to execute the first pre-print operation in response to receiving the first preparation instruction information in the first reception process. And a second receiving process of receiving the second preparation instruction information from the information processing terminal through the second communication interface; and performing the operation in response to receiving the second preparation instruction information in the second receiving process. A second pre-printing process that causes the unit to execute the second pre-printing operation, and a second pre-printing process that receives the print instruction information from the information processing terminal through the second communication interface. A print process for receiving the print instruction information in the third reception process and performing all the pre-print operations in the third reception process, and causing the operation unit to execute the print operation in accordance with the print instruction information. And processing.
上記構成によれば、情報処理端末が印刷データを生成するのと並行して、印刷動作の実行条件に応じて動作内容が変化しない第1印刷前動作に加えて、印刷動作の実行条件に応じて動作内容が変化する第2印刷前動作をプリンタに実行させることができるので、FPOTをさらに短縮することができる。 According to the configuration, in parallel with the generation of the print data by the information processing terminal, in addition to the first pre-print operation in which the operation content does not change according to the execution condition of the printing operation, the information processing terminal responds to the execution condition of the printing operation. FPOT can be further shortened because the printer can execute the second pre-printing operation whose operation content changes.
本明細書に記載のドライバプログラムは、通信インタフェースを備える情報処理端末によって読み取り可能である。該ドライバプログラムは、前記情報処理端末のOSから印刷指示を受け付ける印刷指示受付処理を前記情報処理端末に実行させる。前記印刷指示は、ユーザによって指定された実行条件に従った印刷動作をプリンタに実行させる指示がユーザによって入力されたことを示す。該ドライバプログラムは、前記印刷指示受付処理で前記印刷指示を受け付けたことに応じて、前記通信インタフェースを通じて前記プリンタに第1準備指示情報を送信する第1準備指示処理を前記情報処理端末に実行させる。前記第1準備指示情報は、前記印刷動作で特定品質の画像をシートに印刷するための複数の印刷前動作のうち、前記印刷動作の実行条件によって動作内容が変化しない第1印刷前動作の実行を指示する情報である。該ドライバプログラムは、ユーザによって指定された複数の前記実行条件のうち、既に確定した確定条件が存在するか否かを判断する判断処理と、前記確定条件が存在すると前記判断処理で判断したことに応じて、前記通信インタフェースを通じて前記プリンタに第2準備指示情報を送信する第2準備指示処理とを前記情報処理端末に実行させる。前記第2準備指示情報は、複数の前記印刷前動作のうち、前記確定条件によって動作内容が変化する第2印刷前動作の実行を指示する情報である。該ドライバプログラムは、前記確定条件が存在しないと前記判断処理で判断した、或いは前記第2準備指示処理を実行したことに応じて、ユーザによって指定された画像データから前記印刷動作の対象となる印刷データを生成する生成処理と、前記通信インタフェースを通じて前記プリンタに印刷指示情報を送信する印刷指示処理とを前記情報処理端末に実行させる。前記印刷指示情報は、前記生成処理で生成した前記印刷データに対する前記印刷動作を前記実行条件に従って実行させる情報である。 The driver program described in this specification can be read by an information processing terminal having a communication interface. The driver program causes the information processing terminal to execute a print instruction receiving process of receiving a print instruction from the OS of the information processing terminal. The print instruction indicates that the user has input an instruction to cause the printer to execute a print operation in accordance with the execution condition specified by the user. The driver program causes the information processing terminal to execute a first preparation instruction process of transmitting first preparation instruction information to the printer via the communication interface in response to receiving the print instruction in the print instruction reception process. . The first preparation instruction information includes, among a plurality of pre-print operations for printing an image of a specific quality on a sheet in the print operation, execution of the first pre-print operation in which the operation content does not change depending on the execution condition of the print operation. Is the information for instructing. The driver program determines, in the execution conditions specified by the user, a determination process of determining whether or not a confirmed determination condition already exists, and determining that the determination condition exists in the determination process. Accordingly, the information processing terminal causes the information processing terminal to execute a second preparation instruction process of transmitting second preparation instruction information to the printer via the communication interface. The second preparation instruction information is information for instructing execution of a second pre-print operation in which the operation content changes according to the determination condition among a plurality of the pre-print operations. The driver program determines from the image data specified by the user that the print operation is to be performed, in response to the determination processing determining that the determination condition does not exist or executing the second preparation instruction processing. The information processing terminal executes a generation process of generating data and a print instruction process of transmitting print instruction information to the printer via the communication interface. The print instruction information is information for causing the print operation to be performed on the print data generated in the generation processing according to the execution condition.
本明細書に記載のプリンタは、印刷前動作及び印刷動作を実行する動作部と、通信インタフェースと、コントローラとを備える。前記印刷動作は、印刷データで示される画像をシートに印刷する動作である。前記印刷前動作は、特定品質の画像をシートに印刷するために、前記印刷動作に先立って実行される動作である。前記コントローラは、前記通信インタフェースを通じて情報処理端末から第1準備指示情報を受信する第1受信処理と、前記第1受信処理で前記第1準備指示情報を受信したことに応じて、前記動作部に第1印刷前動作を実行させる第1印刷前処理とを実行する。前記第1印刷前動作は、複数の前記印刷前動作のうち、前記印刷動作の実行条件によって動作内容が変化しない前記印刷前動作である。前記コントローラは、前記通信インタフェースを通じて前記情報処理端末から第2準備指示情報を受信する第2受信処理と、前記第2受信処理で前記第2準備指示情報を受信したことに応じて、前記動作部に第2印刷前動作を実行させる第2印刷前処理とを実行する。前記第2印刷前動作は、複数の前記印刷前動作のうち、前記確定条件によって動作内容が変化する前記印刷前動作である。前記コントローラは、前記通信インタフェースを通じて前記情報処理端末から印刷指示情報を受信する第3受信処理と、前記第3受信処理で前記印刷指示情報を受信し且つ全ての前記印刷前動作を実行したことに応じて、前記印刷指示情報に従った前記印刷動作を前記動作部に実行させる印刷処理とを実行する。 The printer described in this specification includes an operation unit that executes a pre-print operation and a print operation, a communication interface, and a controller. The printing operation is an operation of printing an image represented by print data on a sheet. The pre-print operation is an operation executed prior to the print operation in order to print an image of a specific quality on a sheet. The controller, in response to receiving the first preparation instruction information in the first reception processing and receiving the first preparation instruction information from the information processing terminal through the communication interface the first preparation instruction information, the operation unit And a first pre-print process for executing a first pre-print operation. The first pre-print operation is the pre-print operation in which the operation content does not change depending on the execution condition of the print operation among the plurality of pre-print operations. The controller includes: a second reception process for receiving second preparation instruction information from the information processing terminal via the communication interface; and the operating unit, in response to receiving the second preparation instruction information in the second reception process. And a second pre-print process for causing the second pre-print operation to be performed. The second pre-printing operation is the pre-printing operation of which the content of the operation changes depending on the determination condition among the plurality of pre-printing operations. The controller receives a print instruction information from the information processing terminal through the communication interface, and receives the print instruction information in the third reception process and executes all the pre-print operations. Accordingly, a print process for causing the operation unit to execute the print operation according to the print instruction information is executed.
以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できる。例えば、後述する各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更することができる。 Hereinafter, embodiments of the present invention will be described with reference to the drawings as appropriate. The embodiment described below is merely an example of the present invention, and the embodiment of the present invention can be appropriately changed without changing the gist of the present invention. For example, the execution order of each process described below can be appropriately changed without changing the gist of the present invention.
本実施形態に係るシステムは、例えば、図1に示されるプリンタ10と、図3(A)に示される情報処理端末50とを備える。プリンタ10及び情報処理端末50は、例えば、通信ネットワークを通じて相互に通信可能に構成されている。通信ネットワークの具体例は特に限定されないが、例えば、有線LAN、無線LAN、或いはUSBケーブル等であってもよい。また、情報処理端末50は、例えば図4(A)に示されるように、複数のプリンタ10A、10Bと通信可能であってもよい。
The system according to the present embodiment includes, for example, the
メーカは、例えば、図1に示されるプリンタ10と、情報処理端末50にインストール可能なドライバプログラム66とのセットをユーザに提供する。そして、ドライバプログラム66がユーザによって情報処理端末50にインストールされることによって、本実施形態に係るシステムが構成される。ドライバプログラム66は、例えば、プリンタ10に同梱されたCD−ROM等の形式で提供されてもよいし、メーカのWEBサイトを通じてダウンロード可能にされてもよい。
The manufacturer provides the user with a set of the
プリンタ10は、図1及び図2に示されるように、電源部11と、ディスプレイ13と、入力I/F14と、通信I/F15と、動作部20と、コントローラ40とを主に備える。プリンタ10を構成する各構成要素は、通信バスを通じて相互に接続されている。また図示は省略するが、プリンタ10は、シートを支持する第1給送トレイと、シートを支持する第2給送トレイと、画像が印刷されたシートを支持する排出トレイとを備える。
1 and 2, the
第1給送トレイは、プリンタ10が画像を印刷可能な複数のサイズ“A4”、“B5”のシートの全てを支持することができる。一方、第2給送トレイは、プリンタ10が画像を印刷可能な複数のサイズ“A4”、“B5”のシートのうち、特定サイズ(例えば、“A4”)のシートのみを支持することができる。また、第1給送トレイは、プリンタ10が画像を印刷可能な複数の種類“普通紙”、“光沢紙”のシートの全てを支持することができる。一方、第2給送トレイは、プリンタ10が画像を印刷可能な複数の種類“普通紙”、“光沢紙”のうち、特定種類(例えば、“普通紙”)のシートのみを支持することができる。
The first feeding tray can support all sheets of a plurality of sizes “A4” and “B5” on which the
また、プリンタ10には、第1給送トレイ及び第2給送トレイの一方が「優先トレイ」として指定されている。そして、プリンタ10は、後述するトレイ情報に“Auto”が設定された印刷指示情報を受信したことに応じて、優先トレイに支持されたシートに画像を印刷する。一方、プリンタ10は、優先トレイに支持されたシートに画像を印刷できない場合に、優先トレイと異なるトレイに支持されたシートに画像を印刷する。さらに、プリンタ10は、第1給送トレイ及び第2給送トレイの両方が装着された状態で動作することもできるし、第1給送トレイのみが装着された状態で動作することもできる。
In the
本実施形態では、インクジェット方式のプリンタ10の例を説明するが、プリンタ10の印刷方式はインクジェット方式に限定されず、電子写真方式などの公知の方式であってもよい。なお、図4(A)に示されるプリンタ10A、10Bの基本的な構成は、図1及び図2に示されるプリンタ10と同様であってもよい。
In the present embodiment, an example of the
電源部11は、電源プラグを通じて外部電源から供給された電力を、プリンタ10の各構成要素に供給する。より詳細には、電源部11は、外部電源から取得した電力を、動作部20に駆動電力(例えば、24V)として出力し、コントローラ40に制御電力(例えば、5V)として出力する。また、図示は省略するが、電源部11は、ディスプレイ13、入力I/F14、及び通信I/F15にも電力を供給している。
The
また、電源部11は、コントローラ40から出力される電源信号に基づいて、駆動状態と休眠状態とに切り替えが可能である。より詳細には、コントローラ40は、HIGHレベルの電源信号(例えば、5V)を出力することによって、電源部11を休眠状態から駆動状態に切り替える。また、コントローラ40は、LOWレベルの電源信号(例えば、0V)を出力することによって、電源部11を駆動状態から休眠状態に切り替える。
Further, the
駆動状態とは、動作部20に駆動電力を出力している状態である。換言すれば、駆動状態とは、動作部20が動作可能な状態である。休眠状態とは、動作部20に駆動電力を出力していない状態である。換言すれば、休眠状態とは、動作部20が動作不能な状態である。一方、電源部11は、駆動状態であるか休眠状態であるかに拘わらず、コントローラ40に制御電力を出力している。また、図示は省略するが、入力I/F14は、電源部11が駆動状態であるか休眠状態であるかに拘わらず、ユーザ操作に応じた操作信号を出力することができる。また、通信I/F15は、電源部11が駆動状態であるか休眠状態であるかに拘わらず、外部装置から情報を受信することができる。
The driving state is a state in which driving power is being output to the
ディスプレイ13は、液晶ディスプレイ、有機ELディスプレイ等であり、各種情報を表示する表示面を備える。
The
入力I/F14は、ユーザによる入力操作を受け付けるユーザインタフェースである。具体的には、入力I/F14はボタンを有しており、押下されたボタンに対応づけられた各種の操作信号をCPU41へ出力する。さらに、入力I/F14は、ディスプレイ13の表示面に重畳された膜状のタッチセンサを有していてもよい。ディスプレイ13の表示面に表示されたオブジェクトを指定する操作、文字列或いは数字列を入力する操作は、ユーザ操作の一例である。「オブジェクト」とは、例えば、ディスプレイ13に表示された文字列、アイコン、ボタン、リンク等である。
The input I /
タッチセンサとして実現される入力I/F14は、ユーザがタッチした表示面上の位置を示す位置情報を出力する。なお、本明細書中における「タッチ」とは、入力媒体を表示面に接触させる操作全般を含む。また、入力媒体が表示面に触れていなくても、表示面との間の距離がごく僅かな位置まで入力媒体を近接させることを、前述の「タッチ」の概念に含めてもよい。さらに入力媒体とは、ユーザの指であってもよいし、タッチペン等であってもよい。ディスプレイ53に表示されたアイコンの位置のタップするユーザ操作は、当該アイコンを指定する指定操作の一例である。
The input I /
通信I/F15は、通信ネットワークを通じて外部装置と通信可能なインタフェースである。すなわち、プリンタ10は、通信I/F15を通じて外部装置に各種情報を出力し、通信I/F15を通じて外部装置から各種情報を受信する。通信I/F15は、例えば、Wi−Fi(Wi-Fi Allianceの登録商標)に従った通信手順で無線信号を送受信するものであってもよいし、LANケーブル或いはUSBケーブルが接続されるインタフェースであってもよい。
The communication I /
動作部20は、コントローラ40の指示に従って印刷動作及び印刷前動作を実行する。印刷動作は、シートに画像を印刷する動作である。印刷前動作は、印刷動作で特定品質の画像をシートに印刷するために、印刷動作に先立って実行される動作である。印刷動作及び印刷前動作の詳細は、後述する。動作部20は、図1及び図2に示されるように、給送モータ21と、搬送モータ22と、キャリッジモータ23と、給送ローラ24、25と、搬送ローラ26と、キャリッジ27と、記録ヘッド28と、メンテナンス機構30と、インク受け部33と、駆動力伝達機構35とを主に備える。
The
給送ローラ24は、第1給送トレイに支持されたシートを、不図示の搬送路を通じて搬送ローラ26に到達する位置まで給送する第1給送ローラの一例である。給送ローラ25は、第2給送トレイに支持されたシートを、不図示の搬送路を通じて搬送ローラ26に到達する位置まで給送する第2給送ローラの一例である。給送ローラ24、25は、駆動力伝達機構35を通じて伝達された給送モータ21の回転駆動力によって回転する。
The
搬送ローラ26は、給送ローラ24、25によって給送されたシートを、図2に示されるシート対向領域へ向けて搬送方向に搬送する。シート対向領域は、シートとキャリッジ27とが対面し得る主走査方向の領域を指す。搬送方向と主走査方向とは、互いに直交する方向である。また、搬送ローラ26は、記録ヘッド28によって画像が印刷されたシートを、排出トレイへ向けて搬送方向に搬送する。搬送ローラ26は、駆動力伝達機構35を通じて伝達された搬送モータ22の回転駆動力によって回転する。搬送ローラ26は、複数のローラによって構成されていてもよい。
The
キャリッジ27は、図2に示されるように、シート対向領域を含む領域を主走査方向に移動する。より詳細には、キャリッジ27は、シート対向領域から主走査方向の右方に外れたキャップ位置と、シート対向領域から主走査方向の左方に外れたフラッシング位置との間を移動する。キャリッジ27は、キャリッジモータ23の回転駆動力が伝達されて移動する。記録ヘッド28は、キャリッジ27に搭載されている。記録ヘッド28の下面(以下、「ノズル面」と表記する。)には、複数のノズルが形成されている。記録ヘッド28は、ピエゾ素子等の駆動素子が振動することによって、ノズルからインクを吐出する。
As shown in FIG. 2, the
キャリッジ27が主走査方向の一方から他方に移動する過程において、シート対向領域に位置するシートの印刷領域に対して記録ヘッド28からインク滴が吐出される。これにより、シートに画像が印刷される。シートは、シートの短手方向に隣接する複数の印刷領域に区画される。そして、動作部20は、後述する印刷動作において、複数の印刷領域それぞれに対して順番に画像を印刷する。
In the process of moving the
メンテナンス機構30は、記録ヘッド28をメンテナンスする。より詳細には、メンテナンス機構30は、ノズル内のインクを吸引する所謂パージ動作を実行する。メンテナンス機構30は、図2に示されるように、シート対向領域から主走査方向の右方に外れた位置に配置される。メンテナンス機構30は、図1に示されるように、キャップ31と、ポンプ32とを主に備える。
The
キャップ31は、キャップ位置のキャリッジ27に搭載された記録ヘッド28に対面する位置に配置されている。キャップ31は、上下方向に離間した被覆位置及び離間位置の間を移動可能に構成されている。被覆位置のキャップ31は、キャップ位置のキャリッジ27の記録ヘッド28に密着してノズル面を覆う。離間位置のキャップ31は、ノズル面から離間する。不図示の昇降機構は、駆動力伝達機構35を通じて伝達された給送モータ21の回転駆動力によって、被覆位置及び離間位置の間でキャップ31を移動させる。ポンプ32は、被覆位置のキャップ31を通じてノズル内のインクを吸引し、吸引したインクを不図示の廃インクタンクに排出する。ポンプ32は、駆動力伝達機構35を通じて伝達された搬送モータ22の回転駆動力によって駆動する。
The
駆動力伝達機構35は、給送モータ21及び搬送モータ22の駆動力を、給送ローラ24、25、搬送ローラ26、キャップ31の昇降機構、及びポンプ32に伝達する。駆動力伝達機構35は、歯車、プーリ、無端環状のベルト、振子ギヤ機構、及びワンウェイクラッチ等の全部又は一部を組み合わせて構成される。また、駆動力伝達機構35による給送モータ21及び搬送モータ22の駆動力の伝達先は、キャリッジ27によって切り替えられる。駆動力伝達機構35は、駆動力の伝達先が異なる第1状態、第2状態、及び第3状態に切替可能に構成されている。
The driving
第1状態は、給送モータ21の駆動力を、給送ローラ24に伝達し、給送ローラ25及びキャップ31の昇降機構に伝達しない状態である。第2状態は、給送モータ21の駆動力を、給送ローラ25に伝達し、給送ローラ24及びキャップ31の昇降機構に伝達しない状態である。第3状態は、給送モータ21の駆動力を、キャップ31の昇降機構に伝達し、給送ローラ24、25に伝達しない状態である。また、第1状態及び第2状態は、搬送モータ22の駆動力を、搬送ローラ26に伝達し、ポンプ32に伝達しない状態である。第2状態は、搬送モータ22の駆動力を、搬送ローラ26及びポンプ32の両方に伝達する状態である。
The first state is a state in which the driving force of the
駆動力伝達機構35は、図2に示されるように、キャリッジ27に当接し得る位置まで延出されたスライド部材36を備える。スライド部材36は、キャリッジ27に接離されて主走査方向に移動する。駆動力伝達機構35の状態は、主走査方向に移動するスライド部材36によって切り替えられる。より詳細には、スライド部材36が主走査方向に移動することによって、駆動力伝達機構35を構成するギヤの噛合状態が変化する。
As shown in FIG. 2, the driving
まず、キャップ位置まで右方に移動したキャリッジ27がスライド部材36に当接することによって、駆動力伝達機構35が第3状態に切り替えられる。また、キャップ位置から左方に移動したキャリッジ27がスライド部材36から離間することによって、駆動力伝達機構35が第3状態から第1状態に切り替えられる。さらに、キャップ位置の手前まで右方に移動したキャリッジ27がスライド部材36に当接することによって、駆動力伝達機構35が第1状態から第2状態に切り替えられる。但し、本実施形態に係る駆動力伝達機構35は、第3状態から第2状態に直接切り替えることができない。
First, when the
コントローラ40は、プリンタ10の全体動作を制御するものである。コントローラ40は、図1に示されるように、CPU41、ROM42、RAM43、EEPROM44、ASIC45を主とするマイクロコンピュータである。
The
ROM42には、CPU41がプリンタ10の動作を制御するためのプログラムが格納される。RAM43は、CPU41がプログラムを実行する際に用いる各種データを一時的に記録する記憶領域又は作業領域として使用される。EEPROM44には、電源オフ後も保持すべき設定やフラグ等が格納される。CPU41は、プログラムをROM42から読み出して実行することにより、プリンタ10の動作を制御する。ASIC45には、ディスプレイ13と、入力I/F14と、通信I/F15と、給送モータ21と、搬送モータ22と、キャリッジモータ23と、記録ヘッド28とが接続されている。ASIC45は、CPU41の指示に従ってプリンタ10の各構成要素を動作させる。
The
ROM42、RAM43、EEPROM44は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non−transitoryな媒体である。non−transitoryな媒体には、上記の例の他に、CD−ROM、DVD−ROM等の記録媒体も含まれる。また、non−transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non−transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。後述する情報処理端末50のメモリ62についても同様である。
The
ASIC45は、各モータ21、22、23へ駆動信号を出力する。モータ21、22、23が回転すると、各ローラ24、25、26はシートを搬送し、キャリッジ27は主走査方向に移動する。ASIC45は、ピエゾ素子等の駆動素子へ駆動信号を出力する。駆動信号が振動すると、記録ヘッド28はノズルからインク滴を吐出する。ASIC45は、ディスプレイ13へ画像信号を出力し、ディスプレイ13に画面を表示させる。ASIC45は、入力I/F14から出力される操作信号を取得する。ASIC45は、通信I/F15を通じて外部装置から情報を受信し、通信I/F15を通じて外部装置に情報を送信する。また、ASIC45には、周知の各種センサが接続されている。コントローラ40は、当該センサから出力される検出信号に基づいて、搬送ローラ26によって搬送されたシートの位置、キャリッジ27の位置、及びキャップ31の位置などを検知する。
The ASIC 45 outputs a drive signal to each of the
情報処理端末50は、図3(A)に示されるように、ディスプレイ53と、入力I/F54と、通信I/F55と、CPU61と、メモリ62と、通信バス63とを主に備える。情報処理端末50に含まれるディスプレイ53、入力I/F54、通信I/F55、CPU61は、プリンタ10に含まれるディスプレイ13、入力I/F14、通信I/F15、CPU41と同様の構成であるので、説明は省略する。
The
情報処理端末50は、例えば、携帯電話、スマートフォン、タブレット端末、或いはPC等であってもよい。情報処理端末50は、コンピュータの一例である。情報処理端末50の入力I/F54は、例えば、マウス及びキーボードの組み合わせであってもよい。この場合において、ディスプレイ53に表示されたアイコンの位置にマウスポインタを移動させてクリックするユーザ操作は、当該アイコンを指定する指定操作の一例である。
The
メモリ62は、例えば、RAM、ROM、EEPROM、HDD、情報処理端末50に着脱されるUSBメモリ等の可搬記憶媒体、CPU61が備えるバッファ等、或いはそれらの組み合わせによって構成される。メモリ62は、プログラム記憶領域62Aと、データ記憶領域62Bとを有する。領域62Aには、OS64と、編集プログラム65と、ドライバプログラム66とがインストールされている。領域62Aに記憶される各プログラムは、単一のプログラムであってもよいし、複数のプログラムの集合体であってもよい。領域62Bには、各プログラムの実行に必要なデータ或いは情報が記憶される。
The
本実施形態では、Windows(Microsoft Corporationの登録商標) Operating SystemをOS64の具体例として説明するが、OS64の具体例はこれに限定されず、例えば、Android(Google inc.の登録商標) OS、iOS(Cisco Systems,Inc.の登録商標)等であってもよい。 In this embodiment, Windows (registered trademark of Microsoft Corporation) Operating System will be described as a specific example of OS64. However, a specific example of OS64 is not limited to this. For example, Android (registered trademark of Google inc.) OS, iOS (Registered trademark of Cisco Systems, Inc.) or the like.
編集プログラム65は、ユーザ操作に従ってコンテンツデータを編集するプログラムである。編集プログラム65は、例えば図12(A)に示されるように、指定されたコンテンツデータで示される画像をディスプレイ53に表示させ、コンテンツデータの編集を指示するユーザ操作を入力I/F54を通じて受け付け、受け付けたユーザ操作に従ってコンテンツデータを編集する。コンテンツデータの形式は、例えば、テキスト形式、画像形式、スプレッドシート形式、プレゼンテーション形式等が挙げられる。コンテンツデータは、1以上のページデータを含んでもよい。ページデータは、1枚のシートに印刷されるコンテンツを示すデータである。
The
ドライバプログラム66は、OS64から受け付けた印刷指示に従って、プリンタ10に印刷動作を実行させるためのプログラムである。本実施形態に係るドライバプログラム66は、図6及び図7に示されるように、第1モジュールの一例であるUIモジュール66Aと、第2モジュールの一例であるレンダリングモジュール66Bとを含む。但し、ドライバプログラム66は、単一のモジュールで構成されていてもよいし、他のモジュールをさらに含んでもよい。ドライバプログラム66は、単一のモデルのプリンタ10に対してのみ印刷動作を指示可能であってもよいし、複数のモデルのプリンタ10に対して印刷動作を指示可能であってもよい。
The
ドライバプログラム66には、OS64によって指定された複数の関数が定義されている。そして、ドライバプログラム66は、複数の関数がOS64によって特定の順序で呼び出されることによって、プリンタ10に印刷動作を実行させることができる。本実施形態に係る印刷指示は、例えば、定数“DOCUMENTEVENT_STARTDOC”を引数として、UIモジュール66Aに定義された第1関数“DrvDocumentEvent()”がOS64によって呼び出されたことを指す。
A plurality of functions specified by the
領域62Bは、図3(A)に示されるように、第1領域62Cと、第2領域62Dとを含む。第1領域62Cは、例えば、OS64に関する基本情報、或いはドライバプログラムの設定情報のデータベースである所謂レジストリである。第1領域62Cに記憶された情報の参照手順は、OS64によって規定されている。そして、OS64は、参照手順に従って参照された情報の正しさを保証し、参照手順に従わずに参照された情報の正しさを保証しない。これに対して、第2領域62Dに記憶された情報は、前述のような参照手順を踏むことなく、任意のタイミングで参照することができる。以下、「プログラムが領域62Bに情報を記憶させる」と表記した場合、原則として当該情報が第2領域62Dに記憶されるものとする。第1領域62Cに記憶された情報の参照手順の例を、以下に説明する。
The
一例として、編集プログラム65は、第2領域62Dに特定のメモリ領域を確保する。そして、編集プログラム65は、確保したメモリ領域の先頭アドレスを示す第1ポインタ“DEVMODE”を引数として、OS64に定義された読出関数を呼び出す。OS64は、第1ポインタ“DEVMODE”で示されるメモリ領域に、第1領域62Cに記憶された情報をコピーする。これにより、編集プログラム65は、第1ポインタ“DEVMODE”で示されるメモリ領域に第1領域62Cからコピーされた情報を、読み出し或いは編集できるようになる。
As an example, the
他の例として、ドライバプログラム66には、OS64によって規定された関数(例えば、第1関数“DrvDocumentEvent()”)が定義されている。OS64は、定数“DOCUMENTEVENT_FIRST”と、第2ポインタとを引数として、第1関数を呼び出す。第2ポインタは、第1領域62Cに記憶された情報が記憶されたメモリ領域の先頭アドレス、或いは第1領域62Cから第2領域62Dにコピーされた情報が記憶されたメモリ領域の先頭アドレスを示す。そして、ドライバプログラム66は、第2ポインタで示されるメモリ領域に記憶された情報を、第1領域62Cに記憶された情報として、読み出し或いは編集することができる。本実施形態において、定数“DOCUMENTEVENT_FIRST”及び第2ポインタを引数として指定して第1関数が実行されることを、第1領域62Cに記憶された情報の参照を許可する参照指示と表記することがある。
As another example, the
第1領域62Cは、例えば図3(B)に示されるように、条件情報を記憶している。条件情報は、プリンタ10に実行させる印刷動作の実行条件を示すための情報である。本実施形態に係る条件情報は、サイズ情報と、色情報と、トレイ情報と、シート情報と、カラー制限フラグとを含む。但し、条件情報の具体例は、図3(B)に示される例に限定されない。
The
条件情報は、ドライバプログラム66がインストールされたタイミングで第1領域62Cに記憶される。また、ドライバプログラム66は、第1領域62Cに記憶された条件情報をユーザの指示に従って変更することができる。より詳細には、ドライバプログラム66は、OS64からの参照指示に従って第1領域62Cから条件情報を読み出し、読み出した条件情報をディスプレイ53に表示させる。次に、ドライバプログラム66は、条件情報を変更するユーザ操作を入力I/F54を通じて受け付けたことに応じて、第1領域62Cに記憶された条件情報を変更後の条件情報で上書きする。
The condition information is stored in the
条件情報は、パブリック情報と、プライベート情報とを含む。パブリック情報は、情報処理端末50にインストールされた他のプログラム(例えば、編集プログラム65)も編集可能な情報である。プライベート情報は、情報処理端末50にインストールされた他のプログラムが編集不能な情報である。換言すれば、プライベート情報は、ドライバプログラム66によってのみ編集が可能な情報である。図3(B)の例において、サイズ情報及び色情報はパブリック情報であり、トレイ情報、シート情報、及びカラー制限フラグはプライベート情報である。
The condition information includes public information and private information. The public information is information that can be edited by other programs (for example, the editing program 65) installed in the
サイズ情報は、印刷動作に用いるシートのサイズ(例えば、“A4”、“B5”等)を示す。色情報は、印刷動作に用いるインクの数(例えば、“カラー”、“モノクロ”等)を示す。トレイ情報は、プリンタ10が備える複数の給送トレイのうちの1つ(例えば、“トレイ1”、“トレイ2”、“Auto”等)を示す。“トレイ1”はプリンタ10の第1給送トレイに対応し、“トレイ2”はプリンタ10の第2給送トレイに対応する。“Auto”は、プリンタ10に設定された優先トレイに対応する。シート情報は、印刷動作に用いるシートの種類(例えば、“普通紙”、“光沢紙”等)を示す。カラー制限フラグは、印刷動作で使用可能な色を制限するか否かを示す。カラー制限フラグには、黒色のみの使用を許可する指示に対応する第1値“ON”、或いは全ての色の使用を許可する指示に対応する第2値“OFF”が設定される。
The size information indicates the size of the sheet used for the printing operation (for example, “A4”, “B5”, etc.). The color information indicates the number of inks used for the printing operation (for example, “color”, “monochrome”, etc.). The tray information indicates one (for example, “Tray 1”, “Tray 2”, “Auto”, etc.) among a plurality of feeding trays provided in the
なお、パブリック情報のデータ構造はOS64によって定義されているが、図3(B)には代表的な項目のみが図示されている。一方、プライベート情報のデータ構造は、プリンタ10毎或いはドライバプログラム66毎に異なってもよい。以下、パブリック情報で示される実行条件を「パブリック条件」と表記し、プライベート情報で示される実行条件を「プライベート条件」と表記することがある。
Although the data structure of the public information is defined by the
また、領域62Bは、図4(A)に示されるように、1以上のキュー領域67A、67B、67Cを含む。キュー領域67A〜67Cは、プリンタ10A、10Bに送信すべき情報が記憶されるメモリ領域である。キュー領域67A〜67Cは、プリンタ10A、10Bを特定する所謂プリンタポートに対応付けられている。すなわち、キュー領域67A、67Bには、プリンタ10Aに送信すべき情報が記憶される。また、キュー領域67Cには、プリンタ10Bに送信すべき情報が記憶される。また、ドライバプログラム66には、例えば、情報を記憶させるべきキュー領域67A〜67Cが、関数の引数としてOS64から指定される。以下、ドライバプログラム66に対して指定されたキュー領域67A〜67Cを、「指定キュー」と表記することがある。
The
キュー領域67A〜67Cには、各種動作の実行をプリンタ10A、10Bに指示するための情報が記憶される。より詳細には、キュー領域67A〜67Cには、図4(B)に示される印刷指示情報、図4(C)に示される準備指示情報、及び不図示のステータス送信指示情報等が記憶される。印刷指示情報は、印刷動作の実行を指示するための情報であって、給送指示情報、頭出し指示情報、搬送指示情報、吐出指示情報、及び排出指示情報等を含む。準備指示情報は、印刷前動作の実行を指示するための情報である。不図示のステータス送信指示情報は、プリンタ10A、10Bの状態を示すステータス情報の送信を指示するための情報である。但し、キュー領域67A〜67Cに記憶される情報の具体例は、これらに限定されない。
Information for instructing the
キュー領域67Aは、OS64が通信I/F55を通じてプリンタ10Aに送信する情報が、送信順を特定して記憶される領域である。換言すれば、OS64は、キュー領域67Aに指示情報が記憶されているか否かを特定のタイミングでチェックする。そして、OS64は、キュー領域67Aに指示情報が記憶されていると判断したことに応じて、当該指示情報を予め定められた送信順序で、通信I/F55を通じてプリンタ10に送信し、送信した指示情報をキュー領域67Aから削除する。キュー領域67B、67Cについても同様である。
The
より詳細には、キュー領域67Aに記憶される指示情報には、図4(B)及び図4(C)に示されるように、ジョブIDが付加される。ジョブIDは、キュー領域67A内において、連続して送信すべき指示情報を特定するための情報である。すなわち、複数の指示情報に同一のジョブIDが付加される場合がある。OS64は、同一のジョブIDが付加された複数の指示情報を、キュー領域67Aに記憶された順に送信する。また、OS64は、異なるジョブIDが付加された指示情報を、当該ジョブIDの生成順に送信する。
More specifically, a job ID is added to the instruction information stored in the
OS64は、例えば図4(B)に示されるキュー領域67Aにおいて、まず、ジョブID“コンテンツデータA”が付加された搬送指示情報、吐出指示情報、及び排出指示情報をこの順に送信する。次に、OS64は、ジョブID“コンテンツデータB”が付加された給送指示情報、及び頭出し指示情報をこの順に送信する。このとき、ジョブID“コンテンツデータB”が付加された給送指示情報が、ジョブID“コンテンツデータA”が付加された排出指示情報より先にキュー領域67Aに書き込まれていたとしても、排出指示情報が先に送信される。すなわち、同一のジョブIDが付加された複数の指示情報が書き込み順に連続して送信される。
For example, in the
[システムの動作]
図5〜図11を参照して、本実施形態に係るシステムの動作を説明する。
[System operation]
The operation of the system according to the present embodiment will be described with reference to FIGS.
本明細書のフローチャートは、基本的に、プログラムに記述された命令に従ったCPU31、61の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「制御」等の処理は、CPU31、61の処理を表している。CPU61による処理は、OS64を介したハードウェア制御も含む。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。
The flowchart in this specification basically shows the processing of the
なお、図5〜図11、特に図6及び図7には、本発明において特に重要な処理を図示し、各処理の間に実行される他の処理の図示を省略している。より詳細には、OS64は、図6及び図7に図示されている関数の他に、不図示の関数を呼び出してもよい。また、以下の説明では、各関数の呼び出し時に指定される引数のうち、代表的な引数のみを説明しているが、他の引数が指定されていてもよい。さらに、以下の説明では、呼び出される各関数に定義された処理のうち、本発明において特に重要な処理を説明し、それ以外の処理の説明を省略している場合がある。
FIGS. 5 to 11, particularly FIGS. 6 and 7, show particularly important processes in the present invention, and do not show other processes executed between the processes. More specifically, the
まず、情報処理端末50の編集プログラム65は、図12(A)に示される編集画面をディスプレイ53に表示させる。編集画面は、読出指示アイコン111と、記憶指示アイコン112と、印刷指示アイコン113と、編集画像114とを含む。そして、編集プログラム65は、編集画面に対するユーザ操作を、入力I/F54を通じて受け付ける。
First, the
読出指示アイコン111は、領域62Bに記憶されたコンテンツデータを読み出す指示に対応する。記憶指示アイコン112は、編集画像114を示すコンテンツデータを領域62Bに記憶させる指示に対応する。印刷指示アイコン113は、コンテンツデータに対する印刷動作を実行させる指示に対応する。編集画像114は、コンテンツデータに含まれるページデータで示される画像である。本実施形態に係る編集プログラム65は、編集画像114の長手方向がディスプレイ53の上下方向に沿うように、編集画像114を編集画面に表示させている。
Read
編集プログラム65は、読出指示アイコン111を指定するユーザ操作を入力I/F54を通じて受け付けたことに応じて、読み出し可能な形式のコンテンツデータの一覧をディスプレイ53に表示させる。次に、編集プログラム65は、入力I/F54を通じて指定されたコンテンツデータを領域62Bから読み出す。そして、編集プログラム65は、読み出したコンテンツデータで示される編集画像114をディスプレイ53に表示させる。編集プログラム65は、編集画像114の編集を指示するユーザ操作を入力I/F54を通じて受け付けたことに応じて、コンテンツデータを編集する。編集プログラム65は、記憶指示アイコン112を指定するユーザ操作を入力I/F54を通じて受け付けたことに応じて、編集されたコンテンツデータを領域62Bに記憶させる。
The
編集プログラム65は、印刷指示アイコン113を指定するユーザ操作を入力I/F54を通じて受け付けたことに応じて、編集中のコンテンツデータを識別するデータIDを、領域62Bに一時記憶させる。以下、ここで一時記憶されたデータIDを「指定データID」と表記し、指定データIDで識別されるコンテンツデータを「指定コンテンツデータ」と表記する。本実施形態では、指定データID“コンテンツデータC”が一時記憶されたものとする。そして、編集プログラム65は、印刷指示処理を実行する。印刷指示処理は、指定コンテンツデータに対する印刷動作をプリンタ10に指示するための処理である。図5を参照して、印刷指示処理の詳細を説明する。
The
[印刷指示処理]
まず、編集プログラム65は、条件情報を記憶させるのに必要なメモリ領域を領域62Bの第2領域62Dに確保する。また、編集プログラム65は、確保したメモリ領域の先頭アドレスを示す第1ポインタ“DEVMODE”を引数として指定して、OS64に定義された読出関数を呼び出す。これにより、第1領域62Cに記憶された条件情報が、第1ポインタ“DEVMODE”で示されるメモリ領域に、OS64によってコピーされる。以下、第2領域62Dに確保されたメモリ領域に記憶される条件情報を「編集条件情報」と表記する。
[Print instruction processing]
First, the
次に、編集プログラム65は、図13に示される標準設定画面をディスプレイ53に表示させる(S11)。標準設定画面は、プルダウンメニュー121と、ラジオボタン122、123、124、125と、[OK]アイコン126と、[キャンセル]アイコン127とを含む。そして、編集プログラム65は、標準設定画面に対するユーザ操作を、入力I/F54を通じて受け付ける(S12)。
Next, the
プルダウンメニュー121は、印刷動作を実行させるプリンタ10を指定する指示に対応する。ラジオボタン122、123は、サイズ情報に設定され得る設定値“A4”、“B5”に対応する。ラジオボタン124、125は、色情報に設定され得る設定値“カラー”、“モノクロ”に対応する。最初に表示される標準設定画面において、ラジオボタン123〜127の状態は、編集条件情報に設定された設定値に対応する。[OK]アイコン126は、編集条件情報で示される実行条件に従って、指定コンテンツデータに対する印刷動作をプリンタ10に実行させる指示に対応する。[キャンセル]アイコン127は、印刷指示処理を終了させる指示に対応する。
The pull-
編集プログラム65は、プルダウンメニュー121に対するユーザ操作を入力I/F54を通じて受け付けたことに応じて、指定されたプリンタ10を識別するプリンタID(以下、「指定プリンタID」と表記する。)を領域62Bに一時記憶させる。本実施形態では、プリンタID“MFP−A”で識別されるプリンタ10Aが指定されたものとする。また、編集プログラム65は、ラジオボタン122〜125に対するユーザ操作を入力I/F54を通じて受け付けたことに応じて(S12:設定変更)、指定されたラジオボタン122〜125に対応する設定値で編集条件情報を更新する(S13)。
The
そして、編集プログラム65は、当該ユーザ操作を反映させた標準設定画面をディスプレイ53に表示させる(S11)。すなわち、編集プログラム65は、印刷動作を実行させるプリンタ10の指定と、編集条件情報に含まれるパブリック情報の変更とを、標準設定画面を通じて受け付けることができる。一方、編集プログラム65は、編集条件情報に含まれるプライベート情報の変更を受け付けることができない。
Then, the
編集プログラム65は、[OK]アイコン126の指定を入力I/F54を通じて受け付けたことに応じて(S12:[OK]アイコン)、StartDoc処理を実行する(S14)。一方図示は省略するが、編集プログラム65は、[キャンセル]アイコン127の指定を入力I/F54を通じて受け付けたことに応じて、印刷指示処理を終了する。StartDoc処理は、プリンタ10に印刷動作を実行させるための前処理である。図6を参照して、StartDoc処理の詳細を説明する。
The
[StartDoc処理]
まず、編集プログラム65は、OS64に定義された関数“StartDoc()”を呼び出す(S21)。以下、ステップSxxで呼び出される関数を「関数Sxx」と表記することがある。編集プログラム65は、指定データID“コンテンツデータC”と、指定プリンタID”MFP−A”と、第1ポインタとを、関数S21の引数として指定する。OS64は、関数S21が呼び出されたことに応じて、ドライバプログラム66に定義された各種関数を特定の順序で呼び出す。また、ドライバプログラム66は、OS64によって呼び出された関数に定義された処理を実行する。これらの処理の詳細は省略する。
[StartDoc processing]
First, the
関数S21が呼び出されたOS64は、第1関数“DrvDocumentEvent()”を呼び出す(S22)。OS64は、定数“DOCUMENTEVENT_FIRST”と、第2ポインタとを、関数S22の引数として指定する。第2ポインタは、例えば、条件情報が記憶されている第1領域62Cの先頭アドレス、或いはOS64が第1領域62Cから読み出した条件情報が記憶されたメモリ領域の先頭アドレスを示す情報である。
The
次に、UIモジュール66Aは、関数S22が呼び出されたことに応じて、第2ポインタで示されるメモリ領域に記憶された条件情報を読み出し、読み出した条件情報を第2領域62Dに記憶させ(S23)、関数S22を終了する(S24)。すなわち、UIモジュール66Aは、ステップS23において、第1領域62Cから読み出された条件情報を第2領域62Dに記憶させる。ドライバプログラム66が実行するステップS22の処理は参照受付処理の一例であり、ステップS23の処理は記憶処理の一例である。
Next, in response to the call of the function S22, the UI module 66A reads the condition information stored in the memory area indicated by the second pointer, and stores the read condition information in the
以下、ステップS23で第2領域62Dに記憶された条件情報を「退避条件情報」と表記する。ここで、編集条件情報と退避条件情報とは、プライベート情報は同一であり、パブリック情報は異なる可能性がある。より詳細には、ステップS13で編集条件情報が更新されている場合、編集条件情報と退避条件情報とでパブリック情報は異なる。
Hereinafter, the condition information stored in the
また、関数S21が呼び出されたOS64は、第1関数“DrvDocumentEvent()”を呼び出す(S25)。OS64は、定数“DOCUMENTEVENT_STARTDOC”を、関数S25の引数として指定する。ステップS25の処理は、ステップS22の処理より後に実行される。次に、UIモジュール66Aは、関数S25が呼び出されたことに応じて(S25)、準備指示処理を実行する(S26)。準備指示処理は、印刷前動作の実行をプリンタ10に指示する処理である。UIモジュール66Aが実行するステップS25の処理は、OS64から印刷指示を受け付ける印刷指示受付処理の一例である。図8を参照して、準備指示処理の詳細を説明する。
The
なお、プリンタ10に対する印刷前動作の実行指示は、プリンタ10に印刷指示情報を送信することが確実な場合に行われることが望ましい。そして、標準設定画面の[OK]アイコン126が指定された後は、入力I/F54を通じたユーザの指示を必要とせずに、プリンタ10に印刷指示情報が送信される。すなわち、[OK]アイコン126の指定は、プリンタ10に印刷動作の実行を指示するユーザの意思表示と捉えることができる。そこで、UIモジュール66Aは、標準設定画面の[OK]アイコン126が指定された後に、準備指示処理を実行するのが望ましい。
It is desirable that the instruction to execute the pre-print operation to the
より詳細には、編集プログラム65は、標準設定画面の[OK]アイコン126の指定を入力I/F54を通じて受け付けたことに応じて(S12:OKアイコン)、関数S21を呼び出す。OS64は、関数S21が呼び出された場合以外のタイミング(例えば、プリンタドライバの情報を参照するタイミング)でも、UIモジュール66Aに定義された関数を呼び出すことがある。しかしながら、OS64が関数S25を呼び出すのは、関数S21が呼び出された場合のみである。そこで、本実施形態に係るUIモジュール66Aは、関数S21が呼び出されたことに応じて、準備指示処理を実行する。
More specifically, the
[準備指示処理]
まず、UIモジュール66Aは、生成識別情報の一例であるジョブID“__準備__”を生成する。そして、UIモジュール66Aは、ジョブID“__準備__”で識別される準備ジョブを生成する(S61)。なお、UIモジュール66Aは、指定データIDとなり得る文字列と重複しないように、ジョブIDを生成する。指定データIDは、後述するステップS29において、ジョブIDとして用いられるからである。後述するステップS62、S66でキュー領域67Aに書き込まれる各種指示情報には、ジョブID“__準備__”が付加される。
[Preparation instruction processing]
First, the UI module 66A generates a job ID “__preparation__” which is an example of the generation identification information. Then, the UI module 66A generates a preparation job identified by the job ID “__preparation__” (S61). Note that the UI module 66A generates a job ID so as not to overlap with a character string that can be the designated data ID. This is because the designated data ID is used as a job ID in step S29 described later. A job ID “__preparation__” is added to various instruction information written in the
次に、UIモジュール66Aは、第1準備指示情報をキュー領域67Aに記憶させる(S62)。第1準備指示情報は、印刷前動作の実行を指示するための準備指示情報のうち、後述する特定条件情報を含まない準備指示情報である。換言すれば、第1準備指示情報は、後述する特定実行条件によって動作内容が変化しない第1印刷前動作を実行させるための情報である。キュー領域67Aに記憶された第1準備指示情報は、OS64によってプリンタ10Aに送信される。ステップS62の処理は、通信I/F55を通じてプリンタ10Aに第1準備指示情報を送信する第1準備指示処理の一例である。
Next, the UI module 66A stores the first preparation instruction information in the
次に、UIモジュール66Aは、後述する印刷指示情報に先立って、特定条件情報を送信するか否かを判断する(S63)。特定条件情報は、図3(B)に示される条件情報の一部である。以下、特定条件情報で示される実行条件を「特定実行条件」と表記する。特定実行条件は、印刷前動作の動作内容を変化させる実行条件である。一例として、トレイ情報は、後述する給送処理において、シートの給送元を変化させる特定実行条件を示す。他の例として、色情報は、後述するフラッシング処理において、記録ヘッド28に吐出させるインクの色を変化させる特定実行条件を示す。 Next, the UI module 66A determines whether or not to transmit the specific condition information before printing instruction information to be described later (S63). The specific condition information is a part of the condition information shown in FIG. Hereinafter, the execution condition indicated by the specific condition information is referred to as “specific execution condition”. The specific execution condition is an execution condition that changes the operation content of the pre-print operation. As an example, the tray information indicates a specific execution condition for changing a sheet feeding source in a feeding process described later. As another example, the color information indicates a specific execution condition for changing a color of ink ejected to the recording head 28 in a flushing process described later.
一例として、UIモジュール66Aは、特定条件情報に従った第2印刷前動作を、指定プリンタIDで識別されるプリンタ10Aが実行可能か否かを判断してもよい。より詳細には、UIモジュール66Aは、特定条件情報に従った第2印刷前動作を実行可能か否かを示す能力情報を通信I/F55を通じてプリンタ10Aから受信し、受信した能力情報に基づいて判断してもよい。
As an example, the UI module 66A may determine whether the
他の例として、UIモジュール66Aは、特定条件情報を送信するか否かを指示するユーザ操作を入力I/F54を通じて受け付け、受け付けた内容を示す設定情報を領域62Bに事前に記憶させておいてもよい。そして、UIモジュール66Aは、ステップS63において、設定情報に示される内容に応じて、特定条件情報を送信するか否かを判断してもよい。また、UIモジュール66Aは、複数の条件情報それぞれについて、送信するか否かの指示を受け付けてもよい。
As another example, the UI module 66A receives a user operation for instructing whether or not to transmit the specific condition information through the input I /
また、UIモジュール66Aは、ステップS23で領域62Bに記憶させた退避条件情報に特定条件情報が含まれるか否かを判断する(S64)。一例として、特定条件情報となる条件情報は、UIモジュール66Aのソースコードに予め記述されていてもよい。他の例として、UIモジュール66Aは、どの条件情報が特定条件情報となるかを示す情報を、プリンタ10Aから受信してもよい。そして、UIモジュール66Aは、ソースコードに記述された情報或いはプリンタ10Aから受信した情報と、退避条件情報とを照合して、特定条件情報の有無を判断してもよい。本実施形態では、前述したように、トレイ情報及び色情報が特定条件情報であるものとする。
Further, the UI module 66A determines whether the evacuation condition information stored in the
さらに、UIモジュール66Aは、ステップS64で特定条件情報と判断された条件情報が既に確定しているか否かを判断する(S65)。以下、確定した特定実行条件を「確定条件」と表記する。ステップS65の処理は、判断処理の一例である。本実施形態に係るUIモジュール66Aは、ステップS65において、第2領域62Dに記憶された退避条件情報で示される複数の実行条件の相関関係に基づいて、確定条件が存在するか否かを判断する。図9を参照して、確定条件の有無を判断する処理の詳細を説明する。
Further, the UI module 66A determines whether the condition information determined as the specific condition information in step S64 has already been determined (S65). Hereinafter, the determined specific execution condition is referred to as “determined condition”. The process in step S65 is an example of a determination process. In step S65, the UI module 66A according to the present embodiment determines whether or not there is a fixed condition based on a correlation between a plurality of execution conditions indicated by the evacuation condition information stored in the
[確定判断処理A]
図9(A)に示される確定判断処理Aは、プライベート情報の1つであるトレイ情報が既に確定したか否かを判断する処理である。トレイ情報は、後述するステップS45において、パブリック情報の1つであるサイズ情報の設定値によって変化し得る。しかしながら、前述したように、退避条件情報のサイズ情報は、編集条件情報のサイズ情報と異なる可能性がある。そこで、UIモジュール66Aは、トレイ情報が確定しているか否かを、プリンタ10Aの能力に基づいて判断する。
[Fixed judgment processing A]
The determination determination processing A shown in FIG. 9A is processing for determining whether tray information, which is one of the private information, has already been determined. The tray information can change in step S45 described later, depending on the set value of size information, which is one of the public information. However, as described above, the size information of the save condition information may be different from the size information of the edit condition information. Therefore, the UI module 66A determines whether or not the tray information is determined based on the capability of the
まず、UIモジュール66Aは、退避条件情報のトレイ情報に“Auto”が設定されているか否かを判断する(S71)。次に、UIモジュール66Aは、トレイ情報に“Auto”が設定されていると判断したことに応じて(S71:Yes)、プリンタ10Aに装着されているトレイの数を判断する(S72)。より詳細には、UIモジュール66Aは、装着されたトレイの数を問い合わせる問合せ情報を、通信I/F55を通じてプリンタ10Aに送信する。そして、UIモジュール66Aは、問合せ情報の応答としてプリンタ10Aが送信したトレイ数情報を、通信I/F55を通じて受信する。トレイ数情報は、プリンタ10Aの能力を示す情報の一例である。
First, the UI module 66A determines whether or not “Auto” is set in the tray information of the evacuation condition information (S71). Next, the UI module 66A determines the number of trays mounted on the
そして、UIモジュール66Aは、受信したトレイ数情報で示されるトレイの数が1つ、すなわち、第1給送トレイのみが装着されていると判断したことに応じて(S72:Yes)、トレイ情報“Auto=トレイ1”が確定条件であると判断する(S73→S65:Yes)。すなわち、UIモジュール66Aは、編集条件情報のサイズ情報にどのような値が設定されていたとしても、第1給送トレイに支持されたシートに画像が印刷されると判断する。 When the UI module 66A determines that the number of trays indicated by the received tray number information is one, that is, that only the first feeding tray is mounted (S72: Yes), the UI module 66A It is determined that “Auto = Tray 1” is the determination condition (S73 → S65: Yes). That is, the UI module 66A determines that the image is printed on the sheet supported by the first feed tray regardless of what value is set in the size information of the editing condition information.
一方、UIモジュール66Aは、受信したトレイ数情報で示されるトレイの数が複数、すなわち、第1給送トレイ及び第2給送トレイの両方が装着されていると判断したことに応じて(S72:No)、トレイ情報“Auto=トレイ1”が確定条件でないと判断する(S65:No)。すなわち、UIモジュール66Aは、プリンタ10Aの優先トレイが第2給送トレイである場合に、編集条件情報のサイズ情報によって、第1給送トレイ及び第2給送トレイのどちらに支持されたシートに画像が印刷されるかを特定することができない。
On the other hand, the UI module 66A determines that the number of trays indicated by the received tray number information is plural, that is, determines that both the first feed tray and the second feed tray are mounted (S72). : No), it is determined that the tray information “Auto = Tray 1” is not a determination condition (S65: No). That is, when the priority tray of the
また、UIモジュール66Aは、トレイ情報に“Auto”が設定されていないと判断したことに応じて(S71:No)、退避条件情報のトレイ情報で示される給送トレイが支持可能なシートのサイズを判断する(S74)。より詳細には、UIモジュール66Aは、トレイ情報で示される給送トレイが支持可能なシートのサイズを問い合わせる問合せ情報を、通信I/F55を通じてプリンタ10Aに送信する。そして、UIモジュール66Aは、問合せ情報の応答としてプリンタ10Aが送信した支持可能サイズ情報を、通信I/F55を通じて受信する。支持可能サイズ情報は、プリンタ10Aの能力を示す情報の一例である。
In addition, the UI module 66A determines that “Auto” is not set in the tray information (S71: No), and determines the size of the sheet that can be supported by the feeding tray indicated by the tray information of the evacuation condition information. Is determined (S74). More specifically, the UI module 66A transmits to the
そして、UIモジュール66Aは、プリンタ10Aが画像を印刷可能な全てのサイズを受信した支持可能サイズ情報が示すことに応じて(S74:Yes)、退避条件情報のトレイ情報が確定条件であると判断する(S73→S65:Yes)。本実施形態では、トレイ情報が“トレイ1”である場合に、確定条件であると判断される。一方、UIモジュール66Aは、支持可能サイズ情報が特定サイズのみを示すことに応じて(S74:No)、退避条件情報のトレイ情報が確定条件でないと判断する(S65:No)。本実施形態では、トレイ情報が“トレイ2”である場合に、確定条件でないと判断される。なお、プリンタ10Aが画像を印刷可能なシートのサイズは、UIモジュール66Aに予め設定されていてもよいし、支持可能サイズ情報と共に複合機10Aから受信してもよい。
Then, the UI module 66A determines that the tray information of the evacuation condition information is a determination condition in response to the supportable size information indicating that all sizes in which the
[確定判断処理B]
図9(B)に示される確定判断処理Bは、パブリック情報の1つである色情報が既に確定したか否かを判断する処理である。退避条件情報の色情報は、編集条件情報の色情報と異なる可能性がある。また、色情報は、後述するステップS45において、プライベート情報の1つであるカラー制限フラグの設定値によって変化し得る。そこで、UIモジュール66Aは、色情報が確定したか否かを、退避条件情報のカラー制限フラグに基づいて判断する。
[Fixation judgment processing B]
The determination processing B shown in FIG. 9B is processing for determining whether or not color information, which is one of the public information, has already been determined. The color information of the save condition information may be different from the color information of the edit condition information. Further, the color information can be changed by a set value of a color restriction flag, which is one of the private information, in step S45 described later. Therefore, the UI module 66A determines whether or not the color information is determined based on the color restriction flag of the evacuation condition information.
まず、UIモジュール66Aは、退避条件情報のカラー制限フラグの設定値を判断する(S76)。そして、UIモジュール66Aは、カラー制限フラグに第1値“ON”が設定されていることに応じて(S76:ON)、色情報“モノクロ”が確定条件であると判断する(S77→S65:Yes)。すなわち、UIモジュール66Aは、編集条件情報の色情報にどのような値が設定されていたとしても、シートにモノクロ画像が印刷されると判断する。一方、UIモジュール66Aは、カラー制限フラグに第2値“OFF”が設定されていることに応じて(S76:OFF)、色情報が確定条件でないと判断する(S65:No)。すなわち、UIモジュール66Aは、カラー画像及びモノクロ画像のどちらが印刷されるかを特定することができない。 First, the UI module 66A determines the set value of the color restriction flag of the evacuation condition information (S76). Then, in response to the first value “ON” being set in the color restriction flag (S76: ON), the UI module 66A determines that the color information “monochrome” is the determination condition (S77 → S65: Yes). That is, the UI module 66A determines that a monochrome image is printed on a sheet regardless of what value is set in the color information of the editing condition information. On the other hand, the UI module 66A determines that the color information is not a determination condition (S65: No) in response to the second value “OFF” being set in the color restriction flag (S76: OFF). That is, the UI module 66A cannot specify which of a color image and a monochrome image is to be printed.
図8に戻って、UIモジュール66Aは、特定条件情報を事前送信すると判断し、退避条件情報に特定条件情報が含まれると判断し、且つ当該特定条件情報が既に確定していると判断したことに応じて(S63:Yes&S64:Yes&S65:Yes)、第2準備指示情報をキュー領域67Aに記憶させる(S66)。すなわち、UIモジュール66Aは、トレイ情報“トレイ1”が確定条件だと判断したことに応じて(S73)、トレイ情報“トレイ1”を含む第2準備指示情報を、キュー領域62Aに記憶させる(S66)。また、UIモジュール66Aは、色情報“モノクロ”が確定条件だと判断したことに応じて(S77)、色情報“モノクロ”を含む第2準備指示情報を、キュー領域62Aに記憶させる(S66)。
Returning to FIG. 8, the UI module 66A determines that the specific condition information is transmitted in advance, determines that the evacuation condition information includes the specific condition information, and determines that the specific condition information is already determined. (S63: Yes & S64: Yes & S65: Yes), the second preparation instruction information is stored in the
第2準備指示情報は、印刷前動作の実行を指示するための準備指示情報のうち、確定した特定条件情報を含む準備指示情報である。換言すれば、第2準備指示情報は、確定条件によって動作内容が変化する第2印刷前動作を実行させるための情報である。キュー領域67Aに記憶された第2準備指示情報は、OS64によってプリンタ10Aに送信される。ステップS66の処理は、通信I/F55を通じてプリンタ10Aに第2準備指示情報を送信する第2準備指示処理の一例である。
The second preparation instruction information is preparation instruction information that includes determined specific condition information among the preparation instruction information for instructing execution of the pre-print operation. In other words, the second preparation instruction information is information for executing the second pre-print operation in which the operation content changes according to the confirmation condition. The second preparation instruction information stored in the
一例として、確定した特定条件情報が複数の場合において、UIモジュール66Aは、全ての特定条件情報を含む1つの第2準備指示情報を、キュー領域67Aに記憶させてもよい。他の例として、確定した特定条件情報が複数の場合において、UIモジュール66Aは、各々が特定条件情報の1つを含む複数の第2準備指示情報を、キュー領域67Aに記憶させてもよい。この場合、複数の第2準備指示情報は、対応する印刷前動作の実行順序に合わせた順序でキュー領域67Aに記憶される。
As an example, when there are a plurality of determined specific condition information, the UI module 66A may store one piece of second preparation instruction information including all the specific condition information in the
一方、UIモジュール66Aは、特定条件情報を送信しないと判断したことに応じて(S63:No)、退避条件情報に特定条件情報が含まれないと判断したことに応じて(S64:No)、或いは当該特定条件情報が確定していないと判断したことに応じて(S65:No)、ステップS66の処理を実行することなく、準備指示処理を終了する。 On the other hand, in response to determining that the specific condition information is not transmitted (S63: No), the UI module 66A determines that the evacuation condition information does not include the specific condition information (S64: No). Alternatively, in response to determining that the specific condition information has not been determined (S65: No), the preparation instruction process ends without executing the process of step S66.
図6に戻って、UIモジュール66Aは、関数S25を終了する(S27)。次に、OS64は、関数S25が終了したことに応じて(S27)、レンダリングモジュール66Bに定義された第2関数“DrvStartDoc()”を呼び出す(S28)。OS64は、S21の引数として指定された指定データID“コンテンツデータC”及び第1ポインタを、関数S28の引数として指定する。
Returning to FIG. 6, the UI module 66A ends the function S25 (S27). Next, in response to the termination of the function S25 (S27), the
次に、レンダリングモジュール66Bは、関数S28が呼び出されたことに応じて、引数として指定された指定データID“コンテンツデータC”をジョブIDとする印刷ジョブを、指定キューであるキュー領域67Aに生成して(S29)、関数S28を終了する(S30)。後述するステップS45、S48、S53でキュー領域67Aに書き込まれる各種指示情報には、ジョブID“コンテンツデータC”が付加される。但し、ジョブID“コンテンツデータC”で識別される印刷ジョブは、この時点では指示情報を含んでいない。関数S28の引数として指定される指定データIDは、OS64によって指定された指定識別情報の一例である。
Next, in response to the calling of the function S28, the rendering module 66B generates a print job having the specified data ID “contents data C” specified as an argument as the job ID in the
次に、OS64は、関数S28が終了したことに応じて(S30)、第1関数“DrvDocumentEvent()”を呼び出す(S31)。OS64は、定数“DOCUMENTEVENT_STARTDOCPOST”を、関数S31の引数として指定する。次に、UIモジュール66Aは、関数S31が呼び出されたことに応じて、指示解除処理を実行する(S32)。
Next, the
指示解除処理は、準備ジョブに追加した準備指示情報をキュー領域67Aから削除する処理である。より詳細には、UIモジュール66Aは、ステップS64で一時記憶させたジョブID“__準備__”が付加された指示情報がキュー領域67Aに記憶されているか否かを判断する。ステップS66でキュー領域67Aに準備指示情報が記憶されている場合とは、例えば、通信I/F55が通信回線に接続されていない場合、プリンタ10Aの電源がOFFされている場合などである。そして、UIモジュール66Aは、キュー領域67Aに準備指示情報が記憶されていると判断したことに応じて、当該準備指示情報をキュー領域67Aから削除する。
The instruction release process is a process of deleting the preparation instruction information added to the preparation job from the
次に、UIモジュール66Aは、関数S31を終了する(S33)。また、OS64は、関数S31が終了したことに応じて(S33)、関数S21を終了する(S34)。これにより、StartDoc処理が終了される。関数S21の次に図5に戻って、編集プログラム65は、StartPage処理を実行する(S15)。StartPage処理は、印刷指示情報を生成する生成処理の一例である。StartPage処理は、指定コンテンツデータに含まれるページデータ毎に実行される。StartPage処理の処理対象となるページデータは、例えば、編集プログラム65によって関数の引数として指定される。図7を参照して、StartPage処理の詳細を説明する。
Next, the UI module 66A ends the function S31 (S33). The
[StartPage処理]
編集プログラム65は、OS64に定義された関数“StartPage()”を呼び出す(S41)。次に、OS64は、第1関数“DrvDocumentEvent()”を呼び出す(S42)。OS64は、定数“DOCUMENTEVENT_STARTPAGE”を、関数S42の引数として指定する。次に、UIモジュール66Aは、特定の処理を実行して関数S42を終了する(S43)。
[StartPage processing]
The
次に、OS64は、関数S42が終了したことに応じて(S43)、レンダリングモジュール66Bに定義された関数“DrvStartPage()”を呼び出す(S44)。次に、レンダリングモジュール66Bは、関数S44が呼び出されたことに応じて、第1ポインタで示される編集条件情報において、パブリック情報とプライベート情報との整合性を判断する。そして、レンダリングモジュール66Bは、パブリック情報とプライベート情報とが整合していないと判断したことに応じて、パブリック情報及びプライベート情報の一方を他方に整合させる。
Next, in response to the termination of the function S42 (S43), the
一例として、レンダリングモジュール66Bは、サイズ情報に特定サイズと異なるサイズが設定され、且つトレイ情報に“トレイ2”が設定されていることに応じて、トレイ情報を“トレイ1”に変更する。他の例として、レンダリングモジュール66Bは、色情報に“カラー”が設定され、且つカラー制限フラグに第1値“ON”が設定されていることに応じて、色情報を“モノクロ”に変更する。 As an example, the rendering module 66B changes the tray information to “tray 1” in accordance with the fact that a size different from the specific size is set in the size information and “tray 2” is set in the tray information. As another example, the rendering module 66B changes the color information to “monochrome” in response to the color information being set to “color” and the color restriction flag being set to the first value “ON”. .
また、レンダリングモジュール66Bは、ヘッダ指示情報を生成し、生成したヘッダ指示情報をキュー領域67Aに記憶させる(S45)。ヘッダ指示情報は、1枚のシートに画像を印刷する一連の動作において、シートに画像を印刷する前に実行すべき動作を指示するための印刷指示情報である。本実施形態に係るヘッダ指示情報は、給送指示情報及び頭出し指示情報である。給送指示情報は、編集条件情報のトレイ情報で示される給送トレイから給送ローラ24、25にシートを給送させるための情報である。頭出し指示情報は、給送されたシートの最初の印刷領域が記録ヘッド28に対面する位置まで、当該シートを搬送ローラ26に搬送させるための情報である。なお、レンダリングモジュール66Bは、トレイ情報“シート1”を含む第2準備指示情報をステップS66で送信したことに応じて、ステップS45における給送指示情報の送信を省略してもよい。
Further, the rendering module 66B generates header instruction information, and stores the generated header instruction information in the
そして、レンダリングモジュール66Bは、関数S44を終了する(S46)。次に、OS64は、関数S44が終了したことに応じて(S46)、関数S41を終了する(S47)。次に、編集プログラム65は、関数S41が終了したことに応じて(S47)、OS64に定義された描画関数を呼び出す。また、OS64は、編集プログラム65によって描画関数が呼び出されたことに応じて、レンダリングモジュール66Bに定義された描画関数を呼び出す。
Then, the rendering module 66B ends the function S44 (S46). Next, the
そして、複数の描画関数が特定の順序で実行されることによって、レンダリングモジュール66Bは、ページデータから印刷データを生成する。印刷データは、例えば、ページデータをラスタライズしたラスタデータである。また、レンダリングモジュール66Bは、印刷データに対する印刷動作を実行させるための印刷指示情報を生成し、生成した印刷指示情報をキュー領域67Aに記憶させる(S48)。ステップS48では、後述するように、吐出指示情報及び搬送指示情報が生成される。以下、レンダリングモジュール66Bが印刷指示情報を生成する処理の詳細を説明する。
Then, the rendering module 66B generates print data from the page data by executing a plurality of drawing functions in a specific order. The print data is, for example, raster data obtained by rasterizing page data. Further, the rendering module 66B generates print instruction information for executing a print operation on the print data, and stores the generated print instruction information in the
まず、レンダリングモジュール66Bは、ステップS28以降の特定のタイミングにおいて、ラスタライズの対象として受け渡されるデータの単位を示す単位情報を、OS64に通知する。単位情報には、例えば、ページデータの単位での受け渡しを指示する“ページ”、或いはバンドデータの単位での受け渡しを指示する“バンド”が設定される。バンドデータは、ページデータの一部のデータである。より詳細には、ページデータは、長手方向に隣接する複数のバンドデータに区画される。また、バンドデータで示される画像は、後述するパスデータで示される画像より面積が大きい。
First, at a specific timing after step S28, the rendering module 66B notifies the
レンダリングモジュール66Bは、例えば、編集条件情報のサイズ情報に特定サイズ(例えば、A4)が設定されていることに応じて、単位情報“ページ”をOS64に通知する。特定サイズのシートは、プリンタ10のローラ24、25、26によって、当該シートの短手方向を搬送方向に一致させた状態で搬送される。また、特定サイズのシートには、当該シートの長手方向に沿って移動するプリンタ10のキャリッジ27によって、画像が印刷される。
The rendering module 66B notifies the
一方、レンダリングモジュール66Bは、例えば、編集条件情報のサイズ情報に非特定サイズ(例えば、A4以外)が設定されていることに応じて、単位情報“バンド”をOS64に通知する。非特定サイズのシートは、プリンタ10のローラ24、25、26によって、当該シートの長手方向を搬送方向に一致させた状態で搬送される。また、非特定サイズのシートには、当該シートの短手方向に沿って移動するプリンタ10のキャリッジ27によって、画像が印刷される。
On the other hand, the rendering module 66B notifies the
なお、単位情報は、例えば、OS64によって呼び出された関数の戻り値として通知されてもよい。また、特定サイズは、例えば、プリンタ10A、10B毎に異なっていてもよい。プリンタ10A、10B毎の特定サイズは、ドライバプログラム66のソースコードに記述されていてもよいし、ドライバプログラム66がプリンタ10A、10Bに問い合わせてもよい。
The unit information may be notified as a return value of a function called by the
単位情報“ページ”を取得したOS64は、ステップS48において、ページデータを、レンダリングモジュール66Bに引き渡す。レンダリングモジュール66Bは、OS64から引き渡されたページデータ全体をラスタライズしてラスタデータを生成する。次に、レンダリングモジュール66Bは、領域62Bに展開されたラスタデータを、領域62B内で90°回転させる。次に、レンダリングモジュール66Bは、印刷領域の1つに印刷する画像を示す複数のパスデータを、90°回転されたラスタデータから抽出する。
The
そして、レンダリングモジュール66Bは、抽出したパスデータそれぞれに基づいて吐出指示情報及び搬送指示情報を生成し、生成した吐出指示情報及び搬送指示情報を順番にキュー領域67Aに書き込む。レンダリングモジュール66Bは、パスデータの抽出、吐出指示情報及び搬送指示情報の生成、生成した情報のキュー領域67Aへの書き込みを、ページデータに含まれる全てのパスデータに対して連続して実行する。
Then, the rendering module 66B generates ejection instruction information and transport instruction information based on each of the extracted path data, and writes the generated ejection instruction information and transport instruction information into the
吐出指示情報は、記録ヘッド28に対面されたシートの印刷領域に対して画像を印刷するために、記録ヘッド28によるインクの吐出タイミングを示すための情報である。すなわち、編集条件情報の色情報が“モノクロ”の場合の吐出指示情報は、ブラックインクの吐出タイミングを示す。一方、編集条件情報の色情報が“カラー”の場合の吐出指示情報は、各色(例えば、シアン、マゼンタ、イエロー、ブラック)のインクの吐出タイミングを示す。搬送指示情報は、次に画像を印刷する印刷領域が記録ヘッド28に対面する位置まで、搬送ローラ26にシートを搬送させるための情報である。
The ejection instruction information is information for indicating the ejection timing of ink by the recording head 28 in order to print an image on a print area of a sheet facing the recording head 28. That is, the ejection instruction information when the color information of the editing condition information is “monochrome” indicates the ejection timing of the black ink. On the other hand, the ejection instruction information when the color information of the editing condition information is “color” indicates the ejection timing of the ink of each color (for example, cyan, magenta, yellow, and black). The transport instruction information is information for causing the
一方、単位情報“バンド”を取得したOS64は、ステップS48において、ページデータに含まれる複数のバンドデータのうちの1つを、レンダリングモジュール66Bに引き渡す。レンダリングモジュール66Bは、OS64から引き渡されたバンドデータ全体をラスタライズしてラスタデータを生成する。次に、レンダリングモジュール66Bは、ラスタデータに基づいて吐出指示情報及び搬送指示情報を生成し、生成した吐出指示情報及び搬送指示情報をキュー領域67Aに書き込む。そして、ページデータを構成する全てのバンドデータに対して、前述の処理が繰り返し実行される。
On the other hand, the
すなわち、単位情報“ページ”の場合において、最初の吐出指示情報がキュー領域67Aに書き込まれるのは、ページデータ全体がラスタデータに変換され、且つ領域62B内でラスタデータが90°回転された後になる。一方、単位情報“バンド”の場合において、最初の吐出指示情報がキュー領域67Aに書き込まれるのは、ページデータの一部であるバンドデータ全体がラスタデータに変換された後になる。すなわち、[OK]アイコン126が指定されてから最初の吐出指示情報がキュー領域67Aに書き込まれるまでの時間は、単位情報“ページ”の場合が単位情報“バンド”の場合より長くなる。
That is, in the case of the unit information “page”, the first ejection instruction information is written in the
次に、編集プログラム65は、指定されたページデータに対するステップS48の処理が終了したことに応じて、OS64に定義された関数“EndPage()”を呼び出す(S49)。次に、OS64は、第1関数“DrvDocumentEvent()”を呼び出す(S50)。OS64は、定数“DOCUMENTEVENT_ENDPAGE”を、関数S50の引数として指定する。次に、UIモジュール66Aは、特定の処理を実行して関数S50を終了する(S51)。
Next, the
次に、OS64は、関数S50が終了したことに応じて(S51)、レンダリングモジュール66Bに定義された関数“DrvEndPage()”を呼び出す(S52)。次に、レンダリングモジュール66Bは、関数S52が呼び出されたことに応じて、排出指示情報を生成し、生成した排出指示情報をキュー領域67Aに記憶させる(S53)。排出指示情報は、画像が印刷されたシートを搬送ローラ26にプリンタ10の外部へ排出させるための情報である。
Next, in response to the termination of the function S50 (S51), the
図7に示されるStartPage処理によってキュー領域67Aに書き込まれた複数の印刷指示情報は、OS64によって書き込み順にプリンタ10Aに送信される。典型的には、OS64は、給送指示情報、頭出し指示情報、吐出指示情報、搬送指示情報、吐出指示情報、・・・、排出指示情報を、通信I/F55を通じてプリンタ10Aにこの順で送信する。ステップS45の処理、ステップS48で印刷指示情報をキュー領域67Aに記憶させる処理、ステップS53の処理は、通信I/F55を通じてプリンタ10に印刷指示情報を送信する印刷指示処理の一例である。
The plurality of pieces of print instruction information written in the
そして、レンダリングモジュール66Bは、関数S52を終了する(S54)。次に、OS64は、関数S52が終了したことに応じて(S54)、関数S49を終了する(S55)。これにより、StartPage処理が終了される。次に図5に戻って、編集プログラム65は、指定コンテンツデータに含まれる全てのページデータに対してStartPage処理を実行したか否かを判断する(S16)。そして、編集プログラム65は、StartPage処理を実行していないページデータが存在すると判断したことに応じて(S16:Yes)、当該ページデータに対するStartPage処理を実行する(S15)。
Then, the rendering module 66B ends the function S52 (S54). Next, the
そして、編集プログラム65は、全てのページデータに対するStartPage処理が終了したと判断したことに応じて(S16:No)、EndDoc処理を実行する(S17)。EndDoc処理は、プリンタ10に印刷動作を実行させた後の後処理である。EndDoc処理は、OS64に定義された関数“EndDoc()”が編集プログラム65によって呼び出されることによって開始される周知の処理なので、詳細の説明は省略する。
Then, the
[印刷処理]
次に、図10を参照して、プリンタ10によって実行される印刷処理を説明する。プリンタ10は、通信I/F15を通じて情報処理端末50から準備指示情報或いは印刷指示情報を受信したことに応じて、印刷処理を実行する。以下の各処理は、ROM42に記憶されているプログラムをCPU41が読み出して実行してもよいし、コントローラ40に搭載されたハードウェア回路によって実現されてもよい。
[Print processing]
Next, a printing process executed by the
プリンタ10のコントローラ40は、通信I/F15を通じて情報処理端末50から準備指示情報を受信する(S81:準備指示)。本実施形態に係るコントローラ40は、第1準備指示情報、トレイ情報“トレイ1”を含む第2準備指示情報、色情報“モノクロ”を含む第2準備指示情報を、通信I/F15を通じて情報処理端末50からこの順に受信する。ステップS81において、第1準備指示情報を受信する処理は第1受信処理の一例であり、第2準備指示情報を受信する処理は第2受信処理の一例である。
The
次に、プリンタ10は、第1準備指示情報を受信したことに応じて(S81:準備指示)、電源部11が休眠状態か否かを判断する(S82)。コントローラ40は、例えば、電源部11の現在の状態を示すフラグ情報をRAM43或いはEEPROM44に記憶させておき、当該フラグ情報に基づいてステップS82の判断を行ってもよい。但し、ステップS82の判断の方法は、前述の例に限定されない。
Next, in response to receiving the first preparation instruction information (S81: preparation instruction), the
次に、コントローラ40は、電源部11が休眠状態だと判断したことに応じて(S82:Yes)、電源部11を休眠状態から駆動状態に切り替える(S83)。より詳細には、コントローラ40は、HIGHレベルの電源信号を電源部11に出力する。一方、コントローラ40は、電源部11が駆動状態だと判断したことに応じて(S82:No)、ステップS83の処理をスキップする。ステップS82の処理は状態判断処理の一例であり、ステップS83の処理は切替処理の一例である。
Next, in response to determining that the
次に、コントローラ40は、準備指示情報を受信したことをディスプレイ13を通じて報知する(S84)。コントローラ40は、例えば、ディスプレイ13のバックライトを特定の時間だけ点灯させればよい。ステップS84の処理は、報知処理の一例である。ディスプレイ13は、報知部の一例である。但し、報知処理の具体例はこれに限定されず、不図示のLEDランプを点灯させてもよいし、不図示のスピーカーに報知音を出力させてもよい。
Next, the
次に、コントローラ40は、動作部20に印刷前動作を実行させる(S85)。印刷前動作は、印刷動作で特定品質の画像をシートに印刷するために、プリンタ10が実行すべき動作である。図11を参照して、動作部20に印刷前動作を実行させる印刷前処理の詳細を説明する。印刷前処理の実行時点において、キャリッジ27はキャップ位置であり、キャップ31は被覆位置であり、駆動力伝達機構35は第3状態であるものとする。
Next, the
コントローラ40は、通信I/F15を通じて情報処理端末50から第1準備指示情報を受信したことに応じて、キャップ31を被覆位置から離間位置に移動させる(S101)。次に、コントローラ40は、キャリッジ27をキャップ位置からフラッシング位置に移動させる(S102)。このとき、駆動力伝達機構35は、キャップ位置からフラッシング位置に移動するキャリッジ27がスライド部材36から離間することによって、第3状態から第1状態に切り替えられる。ステップS101の処理は離間処理の一例であり、ステップS102の処理は移動処理及び切替処理の一例である。また、ステップS101、S102の処理は、特定条件情報によって動作内容が変化しない第1印刷前処理の一例である。
The
次に、コントローラ40は、トレイ情報“トレイ1”を含む第2準備指示情報を通信I/F15を通じて情報処理端末50から受信したことに応じて(S103:第1トレイ)、第1給送トレイに支持されたシートを、搬送ローラ26に到達する位置まで、給送ローラ24に給送させる(S104)。一方、コントローラ40は、トレイ情報“トレイ1”を含む第2準備指示情報を受信しないことに応じて(S103:未受信)、ステップS104の処理をスキップする。ステップS104の処理は、給送処理の一例であり、特定条件情報によって動作内容が変化する第2印刷前処理の一例である。
Next, in response to receiving the second preparation instruction information including the tray information “tray 1” from the
次に、コントローラ40は、色情報“モノクロ”を含む第2準備指示情報を通信I/F15を通じて情報処理端末50から受信したことに応じて(S105:モノクロ)、インク受け部33に向けて記録ヘッド28にブラックインクのみを吐出させる(S106)。一方、コントローラ40は、色情報“モノクロ”を含む第2準備指示情報を通信I/F15を通じて情報処理端末50から受信したことに応じて(S105:未受信)、インク受け部33に向けて記録ヘッド28に全ての色のインクを吐出させる(S107)。ステップS106、107の処理は、フラッシング処理の一例であり、特定条件情報によって動作内容が変化する第2印刷前処理の一例である。
Next, in response to receiving the second preparation instruction information including the color information “monochrome” from the
また、コントローラ40は、複数の印刷前動作それぞれに対応するフラグ情報を、RAM43或いはEEPROM44に記憶させておく。全てのフラグ情報には、印刷前処理の開始時点において、印刷前動作が終了していないことに対応する第2値“OFF”が設定されている。そして、コントローラ40は、印刷前動作の1つが終了したことに応じて、印刷前動作が終了したことに対応する第1値“ON”を、終了した印刷前動作に対応するフラグ情報に設定する。
Further, the
次に図10に戻って、コントローラ40は、通信I/F15を通じて情報処理端末50から印刷指示情報を受信する(S81:印刷指示)。すなわち、本実施形態に係るコントローラ40は、給送指示情報、頭出し指示情報、吐出指示情報、搬送指示情報、吐出指示情報、・・・、排出指示情報を、通信I/F15を通じて情報処理端末50からこの順に受信する。ステップS81で印刷指示情報を受信する処理は、第3受信処理の一例である。
Next, returning to FIG. 10, the
次に、コントローラ40は、印刷前処理が終了したか否かを判断する(S86)。より詳細には、コントローラ40は、印刷前動作に対応付けられた全てのフラグ情報に第1値“ON”が設定されていることに応じて、印刷前処理が終了したと判断する(S86:Yes)。一方、コントローラ40は、印刷前動作に対応付けられた少なくとも1つのフラグ情報に第2値“OFF”が設定されていることに応じて、印刷前処理が終了していないと判断する(S86:No)。
Next, the
準備指示情報と印刷指示情報との受信間隔は、例えば、ステップS48の処理量、通信ネットワークの状態等によって変化する。すなわち、準備指示情報をトリガにして開始された印刷前処理は、印刷指示情報を受信した時点で終了していない可能性がある。また、コントローラ40は、第2準備指示情報を受信していない場合に、第2印刷前処理の一部を実行していない可能性がある。
The reception interval between the preparation instruction information and the print instruction information changes depending on, for example, the processing amount in step S48, the state of the communication network, and the like. That is, the pre-print process started by using the preparation instruction information as a trigger may not be completed when the print instruction information is received. When the second preparation instruction information has not been received, the
そして、コントローラ40は、印刷前処理で実行すべき印刷前動作のうちの少なくとも1つを実行していないと判断したことに応じて(S86:No)、実行していない印刷前動作を動作部20に実行させる(S87)。より詳細には、コントローラ40は、ステップS104の処理を未だ実行していないことに応じて、受信した給送指示情報に従って給送処理を実行する。すなわち、コントローラ40は、給送指示情報で示される給送トレイに支持されたシートを、給送ローラ24、25に給送させる。
Then, in response to determining that at least one of the pre-printing operations to be performed in the pre-printing process has not been performed (S86: No), the
一方、コントローラ40は、印刷前処理で実行すべき全ての印刷前動作を実行したと判断したことに応じて(S86:Yes)、ステップS87の処理をスキップする。また、コントローラ40は、ステップS104の処理を既に実行し、且つ給送指示情報を受信したことに応じて、受信した給送指示情報に従った処理を実行しない。
On the other hand, upon determining that all the pre-printing operations to be performed in the pre-printing process have been performed (S86: Yes), the
次に、コントローラ40は、頭出し指示情報に従った頭出し処理とを実行する(S88)。すなわち、コントローラ40は、給送処理で給送されたシートを、頭出し指示情報に示される位置まで搬送ローラ26に搬送させる。そして、コントローラ40は、印刷動作を動作部20に実行させる(S89〜S92)。印刷動作は、印刷指示情報で示される実行条件に従って、印刷データで示される画像をシートに印刷する動作である。ステップS89〜S92の処理は、印刷処理の一例である。
Next, the
まず、コントローラ40は、受信した吐出指示情報に従った吐出処理を実行する(S89)。すなわち、コントローラ40は、主走査方向の一方から他方にキャリッジ27を移動させると共に、吐出指示情報に示される吐出タイミングで記録ヘッド28にインクを吐出させる。次に、コントローラ40は、シートの全ての印刷領域に画像を印刷したか否かを判断する(S90)。換言すれば、コントローラ40は、直近のステップS89で用いた吐出指示情報の次に搬送指示情報及び排出指示情報のどちらを受信したかを判断する。
First, the
次に、コントローラ40は、シートの全ての印刷領域に画像を印刷していないと判断したことに応じて(S90:No)、受信した搬送指示情報に従った搬送処理を実行する(S91)。すなわち、コントローラ40は、搬送指示情報に示される搬送量だけ搬送ローラ26にシートを搬送させる。コントローラ40は、シートの全ての印刷領域に画像を印刷するまで(S90:No)、ステップS89〜S91の処理を繰り返し実行する。
Next, in response to determining that the image has not been printed on all the print areas of the sheet (S90: No), the
そして、コントローラ40は、シートの全ての印刷領域に画像を印刷したと判断したことに応じて(S90:Yes)、受信した排出指示情報に従った排出処理を実行する(S92)。すなわち、コントローラ40は、画像が印刷されたシートを搬送ローラ26にプリンタ10の外部へ排出させる。なお、指定コンテンツデータに複数のページデータが含まれる場合、ステップS88〜S92の処理が繰り返し実行される。これにより、ステップS48で生成された印刷データで示される画像、換言すれば、指定コンテンツデータで示される画像がシートに印刷される。
Then, in response to determining that the image has been printed on all the print areas of the sheet (S90: Yes), the
[本実施形態の作用効果]
上記の実施形態によれば、情報処理端末50が印刷データを生成するのと並行して、印刷動作の実行条件に応じて動作内容が変化しない第1印刷前動作に加えて、印刷動作の実行条件に応じて動作内容が変化する第2印刷前動作をプリンタ10に実行させることができるので、FPOTをさらに短縮することができる。
[Operation and effect of the present embodiment]
According to the above embodiment, in addition to the first pre-print operation in which the operation content does not change according to the execution condition of the print operation, the execution of the print operation is performed in parallel with the
また、上記の実施形態のように、第1領域62Cから読み出した条件情報を第2領域62Dに退避させておくことにより、確定条件の有無を適切に判断することができる。さらに、プライベート情報は、情報処理端末50にインストールされた他のプログラムによって編集されないので、第2領域62Dに退避させた条件情報に基づいて確定条件の有無を適切に判断することができる。
Further, as in the above-described embodiment, by saving the condition information read from the
なお、図9に示される確定判断処理A、Bは、ステップS65で両方とも実行されてもよいし、いずれか一方のみが実行されてもよい。また、上記の実施形態では、サイズ情報とトレイ情報との相関関係、及び色情報とカラー制限フラグとの相関関係に基づいて、特定条件情報が確定しているか否かを判断する例を説明した。しかしながら、確定条件の有無を判断するための条件情報の組み合わせは、前述の例に限定されない。例えば、シート情報は、パブリック情報に含まれていてもよい。そして、UIモジュール66Aは、シート情報とトレイ情報との相関関係に基づいて、トレイ情報が確定しているか否かを判断してもよい。 Note that both of the determination determination processes A and B shown in FIG. 9 may be executed in step S65, or only one of them may be executed. In the above-described embodiment, an example has been described in which it is determined whether or not the specific condition information is determined based on the correlation between the size information and the tray information and the correlation between the color information and the color restriction flag. . However, the combination of condition information for determining the presence or absence of the confirmation condition is not limited to the above-described example. For example, the sheet information may be included in the public information. Then, the UI module 66A may determine whether or not the tray information is determined based on the correlation between the sheet information and the tray information.
すなわち、UIモジュール66Aは、退避条件情報のトレイ情報に“トレイ1”が設定されていることに応じて、トレイ情報“トレイ1”が確定条件であると判断する。一方、UIモジュール66Aは、退避条件情報のトレイ情報に“トレイ2”が設定されていることに応じて、トレイ情報が確定条件でないと判断する。その他の処理は、確定判断処理Aと同様であってもよい。 That is, the UI module 66A determines that the tray information “Tray 1” is the determination condition in accordance with the fact that “Tray 1” is set in the tray information of the evacuation condition information. On the other hand, the UI module 66A determines that the tray information is not a fixed condition in accordance with the fact that “tray 2” is set in the tray information of the evacuation condition information. The other processing may be the same as the finalization determination processing A.
また、上記の実施形態によれば、準備指示情報を送信するか否かを関数S25が実行されたタイミングで判断するので、不要な印刷前動作をプリンタ10に実行させることがない。すなわち、印刷前動作の実行を適切なタイミングでプリンタ10に指示することができる。また、準備指示情報に従ってプリンタ10が印刷前動作を実行している間に、情報処理端末50で印刷データが生成されるので、標準設定画面の[OK]アイコン126が指定されてから最初のシートがプリンタから排出されるまでの所要時間であるFPOTを短縮できる。
Further, according to the above-described embodiment, whether to transmit the preparation instruction information is determined at the timing when the function S25 is executed, so that the
また、上記の実施形態のプリンタ10及び情報処理端末50において、ROM42或いはメモリ62に記憶された各種プログラムがCPU41、61によって実行されることによって、本発明のコントローラが実行する各処理が実現される例を説明した。しかしながら、コントローラの構成はこれに限定されず、その一部又は全部を集積回路等のハードウェアで実現してもよい。
Further, in the
さらに、本発明は、プリンタ10及び情報処理端末50として実現できるだけでなく、プリンタ10及び情報処理端末50に処理を実行させるプログラムとして実現してもよい。そして、当該プログラムは、non−transitoryな記録媒体に記録されて提供されてもよい。non−transitoryな記録媒体は、CD−ROM、DVD−ROM等の他、通信ネットワークを通じてプリンタ10及び情報処理端末50に接続可能なサーバに搭載された記憶部を含んでもよい。そして、サーバの記憶部に記憶されたプログラムは、当該プログラムを示す情報或いは信号として、インターネット等の通信ネットワークを通じて配信されてもよい。
Further, the present invention can be realized not only as the
10・・・プリンタ
13,53・・・ディスプレイ
14,54・・・入力I/F
15,55・・・通信I/F
40・・・コントローラ
41,61・・・CPU
42・・・ROM
50・・・情報処理端末
62・・・メモリ
66・・・ドライバプログラム
10
15, 55 ... Communication I / F
40:
42 ... ROM
50 ...
Claims (11)
前記ドライバプログラムは、
前記情報処理端末のOSから印刷指示を受け付ける印刷指示受付処理を前記情報処理端末に実行させ、前記印刷指示は、ユーザによって指定された実行条件に従った印刷動作を前記プリンタに実行させる指示がユーザによって入力されたことを示し、
前記印刷指示受付処理で前記印刷指示を受け付けたことに応じて、前記第1通信インタフェースを通じて前記プリンタに第1準備指示情報を送信する第1準備指示処理を前記情報処理端末に実行させ、前記第1準備指示情報は、前記印刷動作で特定品質の画像をシートに印刷するための複数の印刷前動作のうち、前記印刷動作の実行条件によって動作内容が変化しない第1印刷前動作の実行を指示する情報であり、
ユーザによって指定された複数の前記実行条件のうち、既に確定した確定条件が存在するか否かを判断する判断処理と、
前記確定条件が存在すると前記判断処理で判断したことに応じて、前記第1通信インタフェースを通じて前記プリンタに第2準備指示情報を送信する第2準備指示処理とを前記情報処理端末に実行させ、前記第2準備指示情報は、複数の前記印刷前動作のうち、前記確定条件によって動作内容が変化する第2印刷前動作の実行を指示する情報であり、
前記確定条件が存在しないと前記判断処理で判断した、或いは前記第2準備指示処理を実行したことに応じて、ユーザによって指定された画像データから前記印刷動作の対象となる印刷データを生成する生成処理と、
前記第1通信インタフェースを通じて前記プリンタに印刷指示情報を送信する印刷指示処理とを前記情報処理端末に実行させ、前記印刷指示情報は、前記生成処理で生成した前記印刷データに対する前記印刷動作を前記実行条件に従って実行させる情報であり、
前記プリンタは、
前記印刷前動作及び前記印刷動作を実行する動作部と、
第2通信インタフェースと、
コントローラとを備えており、
前記コントローラは、
前記第2通信インタフェースを通じて前記情報処理端末から前記第1準備指示情報を受信する第1受信処理と、
前記第1受信処理で前記第1準備指示情報を受信したことに応じて、前記動作部に前記第1印刷前動作を実行させる第1印刷前処理と、
前記第2通信インタフェースを通じて前記情報処理端末から前記第2準備指示情報を受信する第2受信処理と、
前記第2受信処理で前記第2準備指示情報を受信したことに応じて、前記動作部に前記第2印刷前動作を実行させる第2印刷前処理と、
前記第2通信インタフェースを通じて前記情報処理端末から前記印刷指示情報を受信する第3受信処理と、
前記第3受信処理で前記印刷指示情報を受信し且つ全ての前記印刷前動作を実行したことに応じて、前記印刷指示情報に従った前記印刷動作を前記動作部に実行させる印刷処理とを実行する印刷システム。 A printing system comprising: a driver program readable by an information processing terminal having a first communication interface; and a printer,
The driver program includes:
The information processing terminal causes the information processing terminal to execute a print instruction receiving process for receiving a print instruction from the OS of the information processing terminal, and the print instruction includes an instruction to cause the printer to execute a print operation according to an execution condition specified by the user. Indicates that it was entered by
In response to receiving the print instruction in the print instruction receiving process, the information processing terminal causes the information processing terminal to execute a first preparation instruction process of transmitting first preparation instruction information to the printer through the first communication interface. 1 The preparation instruction information instructs execution of a first pre-print operation in which the operation content does not change depending on the execution condition of the print operation, among a plurality of pre-print operations for printing an image of a specific quality on a sheet in the print operation. Information
A judgment process of judging whether or not a fixed condition that has already been determined exists among the plurality of execution conditions specified by the user;
And causing the information processing terminal to execute a second preparation instruction process of transmitting second preparation instruction information to the printer through the first communication interface in response to the determination processing determining that the determination condition exists. The second preparation instruction information is information for instructing execution of a second pre-print operation in which the operation content changes depending on the determination condition among a plurality of the pre-print operations,
Generating the print data to be subjected to the print operation from the image data specified by the user in response to the determination processing determining that the determination condition does not exist or performing the second preparation instruction processing. Processing,
And causing the information processing terminal to execute a print instruction process of transmitting print instruction information to the printer via the first communication interface, wherein the print instruction information executes the print operation on the print data generated in the generation process. Information to be executed according to the conditions,
The printer is
An operation unit that executes the pre-printing operation and the printing operation;
A second communication interface;
And a controller,
The controller is
A first reception process of receiving the first preparation instruction information from the information processing terminal through the second communication interface;
A first pre-printing process that causes the operating unit to execute the first pre-printing operation in response to receiving the first preparation instruction information in the first receiving process;
A second reception process of receiving the second preparation instruction information from the information processing terminal through the second communication interface;
A second pre-printing process that causes the operating unit to execute the second pre-printing operation in response to receiving the second preparation instruction information in the second receiving process;
A third receiving process of receiving the print instruction information from the information processing terminal through the second communication interface;
Executing a print process for causing the operating unit to execute the print operation according to the print instruction information in response to receiving the print instruction information and performing all the pre-print operations in the third reception process. Printing system.
前記実行条件を示す条件情報は、前記メモリの第1領域に記憶されており、前記第1領域は、参照を許可する参照指示を前記OSから受け付けた場合にのみ、記憶された情報を参照可能な領域であり、
前記ドライバプログラムは、
前記参照指示を前記OSから受け付ける参照受付処理と、
前記参照受付処理で前記参照指示を受け付けたことに応じて、前記第1領域から読み出した前記条件情報を前記メモリの第2領域に記憶させる記憶処理とを、前記印刷指示受付処理に先立って前記情報処理端末に実行させ、前記第2領域は、前記参照指示を受け付けなくても記憶された情報を参照可能な領域であり、
前記判断処理において、前記第2領域に記憶されている前記条件情報で示される複数の前記実行条件の相関関係に基づいて、前記確定条件が存在するか否かを判断する請求項1に記載の印刷システム。 The information processing terminal includes a memory,
Condition information indicating the execution condition is stored in a first area of the memory, and the first area can refer to the stored information only when a reference instruction for permitting reference is received from the OS. Area
The driver program includes:
A reference receiving process of receiving the reference instruction from the OS;
And storing the condition information read from the first area in the second area of the memory in response to receiving the reference instruction in the reference reception processing, prior to the print instruction reception processing. The information processing terminal is executed, the second area is an area that can refer to the stored information without receiving the reference instruction,
2. The method according to claim 1, wherein in the determining process, it is determined whether or not the confirmation condition exists based on a correlation between a plurality of the execution conditions indicated by the condition information stored in the second area. 3. Printing system.
前記ドライバプログラムは、前記判断処理において、前記パブリック条件によって変化し得る前記プライベート条件が確定したか否かを、前記プリンタの能力に基づいて判断する請求項2に記載の印刷システム。 The condition information includes public information indicating a public condition that can be edited by other programs installed in the information processing terminal, and private information indicating a private condition that can be edited only by the driver program,
The printing system according to claim 2, wherein the driver program determines whether or not the private condition that can be changed according to the public condition is determined in the determination process based on a capability of the printer.
前記プライベート情報は、シートの給紙元のトレイを示すトレイ情報を含み、
前記トレイ情報は、前記プリンタが画像を印刷可能な複数のサイズのシートのうち、全てのサイズのシートを支持可能な第1トレイ、或いは特定サイズのみを支持可能な第2トレイを示し、
前記ドライバプログラムは、
前記サイズ情報が前記特定サイズと異なるサイズを示し且つ前記トレイ情報が前記第2トレイを示す場合の前記印刷指示処理において、前記トレイ情報を前記第1トレイに変更した前記条件情報を含む前記印刷指示情報を前記プリンタに送信し、
前記判断処理において、前記第1トレイを示す前記トレイ情報を前記確定条件と判断する請求項3に記載の印刷システム。 The public information includes size information indicating a size of a sheet on which an image is printed,
The private information includes tray information indicating a tray from which a sheet is fed,
The tray information indicates a first tray capable of supporting sheets of all sizes, or a second tray capable of supporting only a specific size, among a plurality of sizes of sheets on which the printer can print an image,
The driver program includes:
The print instruction including the condition information in which the tray information is changed to the first tray in the print instruction processing when the size information indicates a size different from the specific size and the tray information indicates the second tray. Sending information to the printer,
The printing system according to claim 3, wherein in the determination processing, the tray information indicating the first tray is determined as the determination condition.
前記プライベート情報は、シートの給紙元のトレイを示すトレイ情報を含み、
前記トレイ情報は、前記プリンタが画像を印刷可能な複数の種類のシートのうち、全ての種類のシートを支持可能な第1トレイ、或いは特定種類のみを支持可能な第2トレイを示し、
前記ドライバプログラムは、
前記シート情報が前記特定種類と異なる種類を示し且つ前記トレイ情報が前記第2トレイを示す場合の前記印刷指示処理において、前記トレイ情報を前記第1トレイに変更した前記条件情報を含む前記印刷指示情報を前記プリンタに送信し、
前記判断処理において、前記第1トレイを示す前記トレイ情報を前記確定条件と判断する請求項3又は4に記載の印刷システム。 The public information includes sheet information indicating a type of a sheet on which an image is printed,
The private information includes tray information indicating a tray from which a sheet is fed,
The tray information indicates a first tray capable of supporting all types of sheets, or a second tray capable of supporting only a specific type, among a plurality of types of sheets on which the printer can print an image,
The driver program includes:
The print instruction including the condition information in which the tray information is changed to the first tray in the print instruction processing when the sheet information indicates a type different from the specific type and the tray information indicates the second tray. Sending information to the printer,
The printing system according to claim 3, wherein in the determination process, the tray information indicating the first tray is determined as the determination condition.
前記第1トレイ及び前記第2トレイと、
トレイに支持されたシートを給送する給送ローラと、
前記給送ローラによって給送されたシートを搬送向きに搬送する搬送ローラとを備えており、
前記コントローラは、前記第1トレイを示す前記トレイ情報を含む前記第2準備指示情報を前記第2受信処理で受信したことに応じて、前記第1トレイに支持されたシートを、前記搬送ローラに到達する位置まで、前記給送ローラに給送させる給送処理を、前記第2印刷前処理として実行する請求項4又は5に記載の印刷システム。 The operating unit includes:
The first tray and the second tray;
A feed roller for feeding a sheet supported by the tray,
Transport rollers for transporting the sheet fed by the feed roller in the transport direction,
The controller, in response to receiving the second preparation instruction information including the tray information indicating the first tray in the second receiving process, the sheet supported by the first tray, the transport roller The printing system according to claim 4, wherein a feeding process for causing the feeding roller to feed to a position at which the printing roller reaches the position is performed as the second pre-printing process.
前記ドライバプログラムは、前記判断処理において、前記プライベート条件によって変化し得る前記パブリック条件が確定したか否かを判断する請求項2から6のいずれかに記載の印刷システム。 The condition information includes public information indicating a public condition that can be edited by other programs installed in the information processing terminal, and private information indicating a private condition that can be edited only by the driver program,
The printing system according to any one of claims 2 to 6, wherein the driver program determines whether or not the public condition that can be changed according to the private condition is determined in the determination process.
前記プライベート情報は、前記印刷動作で使用可能な色を制限するか否かを示すカラー制限フラグを含み、
前記カラー制限フラグには、黒色のみの使用を許可する指示に対応する第1値、或いは全ての色の使用を許可する指示に対応する第2値が設定され、
前記ドライバプログラムは、
前記色情報がカラー画像を示し且つ前記カラー制限フラグに前記第1値が設定されている場合の前記印刷指示処理において、前記色情報をモノクロ画像に変更した前記条件情報を含む前記印刷指示情報を前記プリンタに送信し、
前記判断処理において、前記カラー制限フラグに前記第1値が設定されていることに応じて、モノクロ画像を示す前記色情報を前記確定条件と判断する請求項7に記載の印刷システム。 The public information includes color information indicating a color image or a monochrome image,
The private information includes a color restriction flag indicating whether to restrict colors that can be used in the printing operation,
In the color restriction flag, a first value corresponding to an instruction to permit use of only black or a second value corresponding to an instruction to permit use of all colors is set,
The driver program includes:
In the print instruction processing when the color information indicates a color image and the first value is set in the color restriction flag, the print instruction information including the condition information in which the color information is changed to a monochrome image is used. Send to the printer,
The printing system according to claim 7, wherein in the determination processing, the color information indicating a monochrome image is determined as the determination condition in accordance with the first value being set in the color restriction flag.
シートを搬送向きに搬送する搬送ローラと、
前記搬送ローラによって搬送されたシートに対向するシート対向領域を含む領域を、前記搬送向きと交差する主走査方向に移動するキャリッジと、
前記キャリッジに搭載されており、ノズルからインクを吐出する記録ヘッドと、
前記シート対向領域から前記主走査方向に外れたフラッシング位置の前記キャリッジと対向し、前記ノズルから吐出されたインクを受けるインク受け部とを備えており、
前記コントローラは、モノクロ画像を示す前記色情報を含む前記第2準備指示情報を前記第2受信処理で受信したことに応じて、前記インク受け部に向けて前記記録ヘッドに黒色インクのみを吐出させるフラッシング処理を、前記第2印刷前処理として実行する請求項8に記載の印刷システム。 The operating unit includes:
A transport roller for transporting the sheet in the transport direction;
A carriage that moves in an area including a sheet facing area facing the sheet conveyed by the conveying roller in a main scanning direction that intersects the conveying direction;
A recording head mounted on the carriage and discharging ink from nozzles;
An ink receiving portion that receives the ink ejected from the nozzle, facing the carriage at a flushing position deviated in the main scanning direction from the sheet facing region;
The controller causes the recording head to eject only black ink toward the ink receiving unit in response to receiving the second preparation instruction information including the color information indicating a monochrome image in the second reception process. The printing system according to claim 8, wherein a flushing process is executed as the second pre-printing process.
該ドライバプログラムは、
前記情報処理端末のOSから印刷指示を受け付ける印刷指示受付処理を前記情報処理端末に実行させ、前記印刷指示は、ユーザによって指定された実行条件に従った印刷動作をプリンタに実行させる指示がユーザによって入力されたことを示し、
前記印刷指示受付処理で前記印刷指示を受け付けたことに応じて、前記通信インタフェースを通じて前記プリンタに第1準備指示情報を送信する第1準備指示処理を前記情報処理端末に実行させ、前記第1準備指示情報は、前記印刷動作で特定品質の画像をシートに印刷するための複数の印刷前動作のうち、前記印刷動作の実行条件によって動作内容が変化しない第1印刷前動作の実行を指示する情報であり、
ユーザによって指定された複数の前記実行条件のうち、既に確定した確定条件が存在するか否かを判断する判断処理と、
前記確定条件が存在すると前記判断処理で判断したことに応じて、前記通信インタフェースを通じて前記プリンタに第2準備指示情報を送信する第2準備指示処理とを前記情報処理端末に実行させ、前記第2準備指示情報は、複数の前記印刷前動作のうち、前記確定条件によって動作内容が変化する第2印刷前動作の実行を指示する情報であり、
前記確定条件が存在しないと前記判断処理で判断した、或いは前記第2準備指示処理を実行したことに応じて、ユーザによって指定された画像データから前記印刷動作の対象となる印刷データを生成する生成処理と、
前記通信インタフェースを通じて前記プリンタに印刷指示情報を送信する印刷指示処理とを前記情報処理端末に実行させ、前記印刷指示情報は、前記生成処理で生成した前記印刷データに対する前記印刷動作を前記実行条件に従って実行させる情報であるドライバプログラム。 A driver program readable by an information processing terminal having a communication interface,
The driver program is:
The information processing terminal causes the information processing terminal to execute a print instruction reception process for receiving a print instruction from the OS of the information processing terminal, and the print instruction is issued by the user to cause the printer to execute a print operation in accordance with an execution condition specified by the user. Indicates that it has been entered,
And causing the information processing terminal to execute first preparation instruction processing for transmitting first preparation instruction information to the printer through the communication interface in response to receiving the print instruction in the print instruction reception processing. The instruction information is information for instructing execution of a first pre-print operation in which the operation content does not change depending on the execution condition of the print operation among a plurality of pre-print operations for printing an image of a specific quality on a sheet in the print operation. And
A judgment process of judging whether or not a fixed condition that has already been determined exists among the plurality of execution conditions specified by the user;
And causing the information processing terminal to execute a second preparation instruction process of transmitting second preparation instruction information to the printer through the communication interface in response to the determination processing determining that the determination condition exists. The preparation instruction information is information for instructing execution of a second pre-print operation in which the operation content changes according to the determination condition among a plurality of the pre-print operations,
Generating the print data to be subjected to the print operation from the image data specified by the user in response to the determination processing determining that the determination condition does not exist or performing the second preparation instruction processing. Processing,
And causing the information processing terminal to execute a print instruction process of transmitting print instruction information to the printer through the communication interface, wherein the print instruction information performs the printing operation on the print data generated in the generation process according to the execution condition. A driver program that is information to be executed.
前記コントローラは、
前記通信インタフェースを通じて情報処理端末から第1準備指示情報を受信する第1受信処理と、
前記第1受信処理で前記第1準備指示情報を受信したことに応じて、前記動作部に第1印刷前動作を実行させる第1印刷前処理とを実行し、前記第1印刷前動作は、複数の前記印刷前動作のうち、前記印刷動作の実行条件によって動作内容が変化しない前記印刷前動作であり、
前記通信インタフェースを通じて前記情報処理端末から第2準備指示情報を受信する第2受信処理と、
前記第2受信処理で前記第2準備指示情報を受信したことに応じて、前記動作部に第2印刷前動作を実行させる第2印刷前処理とを実行し、前記第2印刷前動作は、複数の前記印刷前動作のうち、確定条件によって動作内容が変化する前記印刷前動作であり、前記確定条件は、ユーザによって指定された複数の前記実行条件のうち、既に確定した条件であり、
前記通信インタフェースを通じて前記情報処理端末から印刷指示情報を受信する第3受信処理と、
前記第3受信処理で前記印刷指示情報を受信し且つ全ての前記印刷前動作を実行したことに応じて、前記印刷指示情報に従った前記印刷動作を前記動作部に実行させる印刷処理とを実行するプリンタ。 A printer including an operation unit for performing a pre-print operation and a print operation, a communication interface, and a controller, wherein the print operation is an operation of printing an image represented by print data on a sheet, and the pre-print operation Is an operation that is performed prior to the printing operation to print a specific quality image on a sheet,
The controller is
A first reception process of receiving first preparation instruction information from the information processing terminal through the communication interface;
Executing a first pre-printing process for causing the operating unit to execute a first pre-printing operation in response to receiving the first preparation instruction information in the first receiving process, wherein the first pre-printing operation includes: Among the plurality of pre-printing operations, the pre-printing operation in which the operation content does not change depending on the execution condition of the printing operation,
A second reception process of receiving second preparation instruction information from the information processing terminal through the communication interface;
Executing a second pre-printing process that causes the operating unit to execute a second pre-printing operation in response to receiving the second preparation instruction information in the second receiving process, wherein the second pre-printing operation includes: among the plurality of the pre-printing operation is the printing before the operation in which the operation content varies depending make constant conditions, the definite condition, among the plurality of execution conditions specified by the user, are already finalized conditions,
A third reception process of receiving print instruction information from the information processing terminal through the communication interface;
Executing a print process for causing the operating unit to execute the print operation according to the print instruction information in response to receiving the print instruction information and performing all the pre-print operations in the third reception process. Printer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016070002A JP6642210B2 (en) | 2016-03-31 | 2016-03-31 | Printing system, driver program, and printer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016070002A JP6642210B2 (en) | 2016-03-31 | 2016-03-31 | Printing system, driver program, and printer |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017182525A JP2017182525A (en) | 2017-10-05 |
JP6642210B2 true JP6642210B2 (en) | 2020-02-05 |
Family
ID=60007087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016070002A Active JP6642210B2 (en) | 2016-03-31 | 2016-03-31 | Printing system, driver program, and printer |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6642210B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7259781B2 (en) * | 2020-02-26 | 2023-04-18 | ブラザー工業株式会社 | Printer, control method and control program |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000141822A (en) * | 1998-11-04 | 2000-05-23 | Oki Data Corp | Control method for recorder and recording system |
JP2004102832A (en) * | 2002-09-11 | 2004-04-02 | Murata Mach Ltd | Image forming method, image forming system, image forming data generator, image forming apparatus and computer program |
JP2008186164A (en) * | 2007-01-29 | 2008-08-14 | Canon Inc | Data processing apparatus, image forming apparatus and image forming system |
JP2011053997A (en) * | 2009-09-03 | 2011-03-17 | Konica Minolta Business Technologies Inc | Printer driver and controller |
JP5532848B2 (en) * | 2009-11-20 | 2014-06-25 | セイコーエプソン株式会社 | Recording control apparatus, control method, and program |
-
2016
- 2016-03-31 JP JP2016070002A patent/JP6642210B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017182525A (en) | 2017-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6631278B2 (en) | Driver program, and set of driver program and printer | |
JP6672959B2 (en) | Printing system, driver program, and printer | |
US11059293B2 (en) | Printer and non-transitory computer-readable medium storing instructions for printer driver | |
CN107038005B (en) | Printing system, information processing apparatus, and method thereof | |
JP6589664B2 (en) | Driver program and set of driver program and printer | |
JP6651902B2 (en) | Printing system, driver program, and printer | |
US9420126B2 (en) | Image forming apparatus and screen operation method | |
JP6642210B2 (en) | Printing system, driver program, and printer | |
JP6658214B2 (en) | Printing system, driver program, and printer | |
JP6773201B2 (en) | Program and printer set | |
JP6962433B2 (en) | Program and printer set | |
JP6746982B2 (en) | program | |
JP7151170B2 (en) | driver program and computer | |
JP6693196B2 (en) | program | |
JP6728694B2 (en) | Printer and display control method | |
JP2017124924A (en) | Printer and printing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20180219 |
|
RD05 | Notification of revocation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7425 Effective date: 20180219 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190305 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190917 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190911 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191029 |
|
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: 20191203 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20191216 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6642210 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |