JP2019117621A - Driver program and computer - Google Patents

Driver program and computer Download PDF

Info

Publication number
JP2019117621A
JP2019117621A JP2018100160A JP2018100160A JP2019117621A JP 2019117621 A JP2019117621 A JP 2019117621A JP 2018100160 A JP2018100160 A JP 2018100160A JP 2018100160 A JP2018100160 A JP 2018100160A JP 2019117621 A JP2019117621 A JP 2019117621A
Authority
JP
Japan
Prior art keywords
printer
information
print
driver program
instruction information
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.)
Granted
Application number
JP2018100160A
Other languages
Japanese (ja)
Other versions
JP7151170B2 (en
Inventor
山田 和孝
Kazutaka Yamada
和孝 山田
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 US16/221,689 priority Critical patent/US10628090B2/en
Publication of JP2019117621A publication Critical patent/JP2019117621A/en
Application granted granted Critical
Publication of JP7151170B2 publication Critical patent/JP7151170B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

To provide a program capable of instructing a printer of execution of an operation before printing at a proper timing.SOLUTION: A driver program installed in a PC determines whether a printer that print instruction information accepted from an OS indicates is a shared printer managed by an information processor (S31). The driver program, if it is determined that the printer is not a shred printer (S31:No), sets "ON" to a preceding command flag (S32) and determines to transmit a preceding command to the printer. The driver program, if it is determined that the printer is a shred printer (S31:Yes), makes a determination whether the printer is LAN connected to the shared printer(S45) and whether the printer is wireless LAN connected and determines if the program transmits the preceding command or not following the determination.SELECTED DRAWING: Figure 5

Description

本発明は、プリンタにプリント動作を実行させるコンピュータのプログラムに関する。   The present invention relates to a computer program that causes a printer to execute a printing operation.

従来より、通信ネットワークを通じて接続されたプリンタにプリント動作の実行を指示するのに先立って、当該プリント動作の品質を担保するためのプリント前動作の実行を指示するコンピュータのプログラムが知られている。例えば特許文献1において、OSによって起動されたプログラムは、プリンタの出力ポートがレディ状態であり且つプリンタへの直近のデータ送信からの経過時間が規定時間以上であることに応じて、プリント前動作の実行を指示するオートウェイクアップコマンドをプリンタに送信する。   Conventionally, prior to instructing a printer connected via a communication network to execute a printing operation, there is known a computer program that instructs to execute a pre-printing operation for securing the quality of the printing operation. For example, according to Patent Document 1, the program activated by the OS corresponds to the pre-printing operation according to the fact that the output port of the printer is ready and the elapsed time from the latest data transmission to the printer is equal to or longer than the prescribed time. Send an auto wake up command to the printer to instruct execution.

また、従来より、プリンタにおける印刷枚数を情報管理サーバで管理し、印刷枚数に応じて課金を行うシステムが知られている(例えば、特許文献2参照)。   Further, there has been known a system in which the number of printed sheets in a printer is managed by an information management server and charging is performed according to the number of printed sheets (see, for example, Patent Document 2).

特開平11−5350号公報Unexamined-Japanese-Patent No. 11-5350 特開2017−47590号公報JP, 2017-47590, A

特許文献1に記載のプログラムは、オートウェイクアップコマンドをプリンタが受信してから印刷データを受信するまでの時間に拘わらず、前述の条件を満たしたことに応じてオートウェイクアップコマンドをプリンタに送信する。すなわち、特許文献1に記載のプログラムによれば、オートウェイクアップコマンドをプリンタが受信してから印刷データを受信するまでの時間が長くなるおそれがある。当該時間が長くなると、インクが乾いて印刷品質が低下したり、乾いたインクを排出してインクが無駄に消費されたり、或いは、無駄な電力が消費されるという課題を生じる。   The program described in Patent Document 1 transmits an auto wake up command to the printer in response to satisfying the above-described conditions regardless of the time from the printer reception of the auto wake up command to the reception of the print data. Do. That is, according to the program described in Patent Document 1, there is a possibility that the time from the reception of the auto wakeup command to the reception of the print data may become long. If the time is long, the ink may be dried to deteriorate the print quality, or the dried ink may be discharged to waste the ink, or waste power may be consumed.

また、特許文献2に記載のシステムに特許文献1に記載のプログラムを用いると、情報管理サーバがオートウェイクアップコマンドを印刷と判断し、印刷枚数が意図せず増加してしまうという課題を生じる。   In addition, when the program described in Patent Document 1 is used in the system described in Patent Document 2, the information management server determines that the auto wakeup command is printing, and the number of printed sheets increases unintentionally.

本発明は、上記の事情に鑑みてなされたものであり、その目的は、プリント前動作の実行を指示するか否かを適切に判断可能なドライバプログラムを提供することにある。   The present invention has been made in view of the above-described circumstances, and an object thereof is to provide a driver program capable of appropriately determining whether to instruct execution of a pre-printing operation.

本明細書に記載のドライバプログラムは、通信インタフェースを備えるコンピュータによって読み取り可能である。該ドライバプログラムは、前記コンピュータのOSからプリント指示を含むプリント指示情報を受け付けるプリント指示受付処理を前記コンピュータに実行させる。前記プリント指示は、プリンタにプリント動作を実行させる指示がユーザによって入力されたことを示す。該ドライバプログラムは、前記プリント指示受付処理で前記プリント指示を受け付けたことに応じて、プリント前動作の開始を準備指示情報によって指示するか否かを判断する判断処理を前記コンピュータに実行させる。前記プリント前動作は、前記プリント動作の前に、前記プリンタによって前記プリント動作の準備を行う動作である。前記準備指示情報は、前記プリント動作の指示に先行して前記プリンタに送信される情報である。該ドライバプログラムは、前記プリント前動作を指示すると前記判断処理で判断したことに応じて、前記通信インタフェースを通じて前記プリンタに前記準備指示情報を送信する準備指示処理と、前記プリント前動作を指示すると前記判断処理で判断し且つ前記準備指示処理を実行したことに応じて、ユーザによって指定されたコンテンツデータに基づいて、前記プリント動作の対象となるプリントデータを生成する生成処理と、前記通信インタフェースを通じて前記プリンタにプリント実行情報を送信するプリント実行指示処理とを前記コンピュータに実行させる。前記プリント実行情報は、前記生成処理で生成した前記プリントデータに対する前記プリント動作の実行を指示するための情報である。該ドライバプログラムは、前記プリント指示情報に含まれる情報と、前記プリンタとの通信に要する時間を示す参照通信時間との少なくとも一方を用いて、前記プリント前動作の開始を前記準備指示情報によって指示するか否かを判断する前記判断処理を前記コンピュータに実行させる。   The driver program described herein is readable by a computer provided with a communication interface. The driver program causes the computer to execute print instruction acceptance processing for receiving print instruction information including a print instruction from the OS of the computer. The print instruction indicates that an instruction to cause the printer to execute a print operation has been input by the user. The driver program causes the computer to execute determination processing to determine whether start of the pre-printing operation is instructed by preparation instruction information in response to reception of the print instruction in the print instruction acceptance processing. The pre-printing operation is an operation for preparing the printing operation by the printer before the printing operation. The preparation instruction information is information transmitted to the printer prior to the instruction of the printing operation. The driver program instructs preparation operation processing for transmitting the preparation instruction information to the printer through the communication interface, and instructs the pre-printing operation according to the judgment in the judgment processing that the pre-printing operation is instructed. A generation process of generating print data to be a target of the print operation based on the content data designated by the user in response to the determination in the determination process and the execution of the preparation instruction process; The computer is caused to execute a print execution instruction process of transmitting print execution information to the printer. The print execution information is information for instructing execution of the print operation on the print data generated in the generation process. The driver program instructs the start of the pre-printing operation by the preparation instruction information using at least one of information included in the print instruction information and a reference communication time indicating a time required for communication with the printer. The computer is caused to execute the determination process of determining whether or not it is determined.

上記構成によれば、プリント指示情報に含まれる情報と、プリンタとの通信に要する時間を示す参照通信時間との少なくとも一方を用いて、プリント前動作の開始を準備指示情報によって指示するか否かが判断される。したがって、プリント前動作の開始を指示する準備指示情報を送信するか否かを適切に判断することができる。   According to the above configuration, whether start of the pre-printing operation is instructed by the preparation instruction information using at least one of the information included in the print instruction information and the reference communication time indicating the time required for communication with the printer Is judged. Therefore, it can be appropriately determined whether to transmit preparation instruction information instructing the start of the pre-printing operation.

本実施形態に係るコンピュータは、通信インタフェース及びコントローラを備える。前記コントローラは、プリンタにプリント動作を実行させる指示がユーザによって入力されたことを示すプリント指示を含むプリント指示情報を生成する第1生成処理と、前記プリント動作の前に、前記プリンタによって実行される動作であるプリント前動作の開始を、前記プリント動作の指示に先行して前記プリンタに送信される情報である準備指示情報によって指示するか否かを判断する判断処理と、前記プリント前動作を指示すると前記判断処理で判断したことに応じて、前記通信インタフェースを通じて前記プリンタに前記準備指示情報を送信する準備指示処理と、前記プリント前動作を指示すると前記判断処理で判断し且つ前記準備指示処理を実行したことに応じて、ユーザによって指定されたコンテンツデータに基づいて、前記プリント動作の対象となるプリントデータを生成する第2生成処理と、前記通信インタフェースを通じて、前記第2生成処理で生成した前記プリントデータに対する前記プリント動作の実行を指示するための情報であるプリント指示情報を前記プリンタに送信するプリント実行指示処理と、を実行する。前記コントローラは、前記第1生成処理で生成した前記プリント指示情報に含まれる情報と、前記プリンタとの通信に要する時間を示す参照通信時間との少なくとも一方を用いて、前記プリント前動作の開始を前記準備指示情報によって指示するか否かを判断する前記判断処理を実行する。   The computer according to the present embodiment includes a communication interface and a controller. The controller executes a first generation process of generating print instruction information including a print instruction indicating that an instruction to cause the printer to execute a print operation has been input by a user, and is executed by the printer before the print operation. Judgment processing of judging whether start of pre-printing operation which is an operation is instructed by preparation instruction information which is information sent to the printer prior to the instruction of the printing operation, and instructing the pre-printing operation Then, according to the determination in the determination process, the preparation instruction process of transmitting the preparation instruction information to the printer through the communication interface and the preprint operation when it is instructed in the determination process and the preparation instruction process In response to the execution, based on the content data designated by the user, Print instruction information, which is information for instructing the execution of the print operation on the print data generated in the second generation processing through the second generation processing for generating print data to be a target of the lint operation, and the communication interface Print instruction processing for transmitting the print request to the printer. The controller uses at least one of information included in the print instruction information generated in the first generation process and a reference communication time indicating a time required for communication with the printer to start the pre-printing operation. The determination process is performed to determine whether or not to instruct according to the preparation instruction information.

図1は、プリンタ10とPC50との接続手段を示す図である。FIG. 1 is a diagram showing connection means between the printer 10 and the PC 50. As shown in FIG. 図2(A)は、プリンタ10の機能ブロック図であり、図2(B)は、PC50の機能ブロック図である。FIG. 2A is a functional block diagram of the printer 10, and FIG. 2B is a functional block diagram of the PC 50. As shown in FIG. 図3(A)は、プリント指示情報が記憶されたキュー領域67Aを示す図であり、図3(B)は、先行コマンドが記憶されたキュー領域67Aを示す図である。FIG. 3A is a diagram showing the queue area 67A in which the print instruction information is stored, and FIG. 3B is a diagram showing the queue area 67A in which the preceding command is stored. 図4は、プリント指示処理のフローチャートである。FIG. 4 is a flowchart of the print instruction process. 図5(A)は、先行コマンド出力判断処理のフローチャートであり、図5(B)は、共有プリンタの場合の判断処理のフローチャートである。FIG. 5A is a flowchart of the preceding command output determination process, and FIG. 5B is a flowchart of the determination process in the case of the shared printer. 図6は、LANの場合の判断処理のフローチャートである。FIG. 6 is a flowchart of determination processing in the case of the LAN. 図7(A)は、StartPage処理のフローチャートであり、図7(B)は、StartDoc処理のフローチャートである。FIG. 7A is a flowchart of the StartPage process, and FIG. 7B is a flowchart of the StartDoc process. 図8は、プリント処理のフローチャートである。FIG. 8 is a flowchart of print processing. 図9は、ポート設定画面を示す図である。FIG. 9 is a diagram showing a port setting screen. 図10は、変形例1における共有プリンタの場合の判断処理のフローチャートである。FIG. 10 is a flowchart of determination processing in the case of the shared printer in the first modification. 図11(A)は、変形例2におけるStartDoc処理のフローチャートであり、図11(B)は、先行コマンド処理のフローチャートである。FIG. 11A is a flowchart of StartDoc processing in the second modification, and FIG. 11B is a flowchart of preceding command processing.

以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できる。例えば、後述する各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更することができる。   Hereinafter, embodiments of the present invention will be described with reference to the drawings as appropriate. The embodiment described below is only an example of the present invention, and the embodiment of the present invention can be appropriately modified without departing from the scope of the present invention. For example, the execution order of each process to be described later can be appropriately changed without changing the gist of the present invention.

本実施形態では、パーソナルコンピュータ(以下、「PC」と表記する)50にインストールされて実行されるドライバプログラム66(図2(B))を説明する。   In the present embodiment, a driver program 66 (FIG. 2B) installed and executed in a personal computer (hereinafter, referred to as “PC”) 50 will be described.

ドライバプログラム66がインストールされるPC50は、種々の手段によってプリンタ10と通信可能にされる。具体的には、PC50は、図1(A)に示されるように、PC70とともにネットワーク11に接続されている。また、PC70は、ネットワーク11を介してプリンタ10と通信可能となっている。なお、PC70には、自身に接続されるプリンタ10をネットワーク11内で共有し、PC50からプリンタ10を利用可能なプリンタ共有が設定されており、所謂サーバとして機能する。以下では、PC70によって管理されるプリンタ10を共有プリンタ10と表記する。一方、PC50は、PC70を介してプリンタ10と通信可能であり、所謂クライアントとして機能する。   The PC 50 in which the driver program 66 is installed can be communicated with the printer 10 by various means. Specifically, as shown in FIG. 1A, the PC 50 is connected to the network 11 together with the PC 70. Further, the PC 70 can communicate with the printer 10 via the network 11. In the PC 70, the printer 10 connected to itself is shared in the network 11, and the printer sharing in which the printer 50 can be used from the PC 50 is set, which functions as a so-called server. Hereinafter, the printer 10 managed by the PC 70 is referred to as a shared printer 10. On the other hand, the PC 50 can communicate with the printer 10 via the PC 70, and functions as a so-called client.

また、PC50は、図1(B)に示されるように、プリンタ10がケーブル12を介してローカル接続されたPC70にネットワーク接続され、PC70を通じてプリンタ10と通信可能に接続される。図1(A)と同様に、図1(B)においても、PC70には、プリンタ共有が設定されており、PC50からプリンタ10を利用可能となっている。   Further, as shown in FIG. 1B, the PC 50 is connected to the PC 70 to which the printer 10 is locally connected via the cable 12 in a network, and is communicably connected to the printer 10 through the PC 70. Similarly to FIG. 1A, in FIG. 1B, printer sharing is set in the PC 70, and the printer 10 can be used from the PC 50.

また、PC50は、図1(C)に示されるように、ネットワーク11やケーブル12を用いてプリンタ10と接続され、ネットワーク11やケーブル12を通じてプリンタ10と通信を行う。なお、ケーブル12は、USBケーブルやパラレルケーブルなどである。また、PC50は、有線LANによってネットワーク接続されていてもよいし、無線LANによってネットワーク接続されていてもよい。また、PC50は、不図示のアクセスポイントを経由して、Wi−Fi(Wi-Fi Allianceの登録商標)などによってネットワーク11に接続されてもよい。   Further, as shown in FIG. 1C, the PC 50 is connected to the printer 10 using the network 11 and the cable 12 and communicates with the printer 10 via the network 11 and the cable 12. The cable 12 is, for example, a USB cable or a parallel cable. Further, the PC 50 may be connected to a network by a wired LAN or may be connected to a network by a wireless LAN. Also, the PC 50 may be connected to the network 11 by a Wi-Fi (registered trademark of Wi-Fi Alliance) or the like via an access point (not shown).

PC70は、例えば、PC50から受信した印刷ジョブからプリンタ10がプリントしたシートの枚数(以下、プリント枚数と表記)を取得し、プリント枚数に応じた使用金額を算出する管理機能を備えている。PC70を用いてのプリンタ10の管理は、例えばメーカが行う。すなわち、メーカが管理するプリンタ10がユーザに提供される。   The PC 70 has, for example, a management function of acquiring the number of sheets printed by the printer 10 (hereinafter referred to as the number of printed sheets) from the print job received from the PC 50 and calculating the used amount according to the number of printed sheets. The management of the printer 10 using the PC 70 is performed by, for example, a manufacturer. That is, the printer 10 managed by the manufacturer is provided to the user.

メーカは、例えば、プリンタ10と、ドライバプログラム66とのセットをユーザに提供する。或いは、メーカは、プリンタ10と、ドライバプログラム66と、PC70にインストール可能なプログラム(不図示)とのセットをユーザに提供する。ドライバプログラム66は、例えば、プリンタ10に同梱されたCD−ROM等の形式で提供されてもよいし、メーカのWEBサイトを通じてダウンロード可能にされてもよい。   The maker provides, for example, a set of the printer 10 and the driver program 66 to the user. Alternatively, the manufacturer provides the user with a set of the printer 10, the driver program 66, and a program (not shown) installable on the PC 70. The driver program 66 may be provided, for example, in the form of a CD-ROM or the like bundled with the printer 10, or may be downloadable through a manufacturer's web site.

本実施形態では、プリンタ10との接続手段や、PC70の有無などに応じて、後述の先行コマンドをプリンタ10に適切に入力可能なドライバプログラム66を説明する。   In the present embodiment, a driver program 66 capable of appropriately inputting a leading command described later to the printer 10 will be described according to the connection means with the printer 10, the presence or absence of the PC 70, and the like.

プリンタ10は、図2(A)に示されるように、電源部26と、動作部20と、ディスプレイ23と、入力インタフェース(以下、I/Fと表記する)24と、通信インタフェース(以下、I/Fと表記する)25と、制御部30とを主に備える。プリンタ10を構成する各構成要素は、不図示の通信バスを通じて相互に接続されている。本実施形態では、インクジェット方式のプリンタ10を例として説明するが、プリンタ10は、インクジェット方式に限定されず、電子写真方式などの公知の他の方式であってもよい。   As shown in FIG. 2A, the printer 10 includes a power supply unit 26, an operation unit 20, a display 23, an input interface (hereinafter referred to as I / F) 24, and a communication interface (hereinafter referred to as I). And F) and the control unit 30 are mainly provided. The components constituting the printer 10 are mutually connected through a communication bus (not shown). In the present embodiment, an inkjet printer 10 is described as an example, but the printer 10 is not limited to the inkjet method, and may be another known method such as an electrophotographic method.

電源部26は、電源プラグを通じて外部電源から供給された電力を、プリンタ10の各構成要素に供給する。より詳細には、電源部26は、外部電源から取得した電力を、動作部20に駆動電力(例えば、直流24V)として出力し、制御部30に制御電力(例えば、直流5V)として出力する。また、図示は省略するが、電源部26は、ディスプレイ23、入力I/F24、及び通信I/F25にも電力を供給している。電源部26は、例えば、商用交流電圧を直流電圧に変換するAC/DCコンバータと、AC/DCコンバータが出力する直流電圧を所定の直流電圧に降圧するスイッチングレギュレータなどのDC/DCコンバータとを有する。   The power supply unit 26 supplies the power supplied from the external power supply through the power plug to each component of the printer 10. More specifically, the power supply unit 26 outputs the power acquired from the external power supply to the operation unit 20 as drive power (for example, 24 VDC) and outputs it to the control unit 30 as control power (for example, 5 VDC). Although not shown, the power supply unit 26 also supplies power to the display 23, the input I / F 24, and the communication I / F 25. The power supply unit 26 includes, for example, an AC / DC converter that converts commercial AC voltage to a DC voltage, and a DC / DC converter such as a switching regulator that steps down the DC voltage output from the AC / DC converter to a predetermined DC voltage. .

また、電源部26は、制御部30から出力される駆動信号に基づいて、駆動状態と休眠状態とに切り替えが可能である。より詳細には、制御部30は、AC/DCコンバータやDC/DCコンバータが備えるスイッチング素子を駆動させる駆動信号を出力することによって、休眠状態にある電源部26を駆動させて駆動状態にする。   In addition, the power supply unit 26 can switch between the drive state and the sleep state based on the drive signal output from the control unit 30. More specifically, the control unit 30 drives the power supply unit 26 in the sleep state to a driving state by outputting a drive signal for driving the switching elements included in the AC / DC converter and the DC / DC converter.

駆動状態とは、動作部20に駆動電力を出力している状態である。換言すれば、駆動状態とは、動作部20が動作可能な状態である。休眠状態とは、動作部20に駆動電力を出力していない状態である。換言すれば、休眠状態とは、動作部20が動作不能な状態である。一方、電源部26は、駆動状態であるか休眠状態であるかに拘わらず、制御部30に制御電力を出力している。また、図示は省略するが、入力I/F24は、電源部26が駆動状態であるか休眠状態であるかに拘わらず、ユーザ操作に応じた操作信号を出力することができる。また、通信I/F25は、電源部26が駆動状態であるか休眠状態であるかに拘わらず、外部装置から情報を受信することができる。   The drive state is a state in which drive power is output to the operation unit 20. In other words, the drive state is a state in which the operation unit 20 can operate. The sleep state is a state in which the driving power is not output to the operation unit 20. In other words, the sleep state is a state in which the operation unit 20 is inoperable. On the other hand, the power supply unit 26 outputs control power to the control unit 30 regardless of whether it is in the driving state or in the sleeping state. Although not shown, the input I / F 24 can output an operation signal according to the user's operation regardless of whether the power supply unit 26 is in the driving state or in the sleeping state. Also, the communication I / F 25 can receive information from an external device regardless of whether the power supply unit 26 is in the driving state or in the sleeping state.

動作部20は、制御部30の指示に従ってプリント動作及びプリント前動作を実行する。プリント動作は、シートに画像をプリントする動作である。プリント前動作は、プリント動作で所定品質の画像をシートにプリントするために、プリント動作に先立って実行される動作である。プリント動作及びプリント前動作の詳細は、後述する。動作部20は、図1に示されるように、搬送部21と、吐出部22とを主に備える。   The operation unit 20 executes the printing operation and the pre-printing operation according to the instruction of the control unit 30. The print operation is an operation of printing an image on a sheet. The pre-printing operation is an operation performed prior to the printing operation in order to print an image of a predetermined quality on the sheet in the printing operation. Details of the printing operation and the pre-printing operation will be described later. The operation unit 20 mainly includes a transport unit 21 and a discharge unit 22 as shown in FIG.

搬送部21は、不図示の給送トレイに支持されたシートを搬送方向に搬送する。搬送部21は、例えば、不図示のモータの駆動力が伝達されて回転する複数のローラによって構成される。モータによって回転されるローラは、給送トレイに支持されたシートを吐出部22に対面する位置まで搬送し、吐出部22によって画像がプリントされたシートをプリンタ10の外部に排出する。プリンタ10は、複数の給送トレイを備えることができる。   The transport unit 21 transports a sheet supported by a feed tray (not shown) in the transport direction. The transport unit 21 is configured of, for example, a plurality of rollers that are rotated by transmitting a driving force of a motor (not shown). The roller rotated by the motor conveys the sheet supported by the feed tray to a position facing the discharge unit 22, and discharges the sheet on which the image is printed by the discharge unit 22 to the outside of the printer 10. The printer 10 can include multiple feed trays.

吐出部22は、搬送部21によって搬送されたシートに対面し得る位置において、搬送方向と直交する主走査方向に移動する。吐出部22は、不図示のモータの駆動力が伝達されることによって、主走査方向に移動する。吐出部22の下面には、複数のノズルが形成されたノズル面が形成されている。吐出部22は、ノズルからインク滴を吐出する。   The ejection unit 22 moves in the main scanning direction orthogonal to the conveyance direction at a position where it can face the sheet conveyed by the conveyance unit 21. The discharge unit 22 moves in the main scanning direction by transmitting a driving force of a motor (not shown). A nozzle surface on which a plurality of nozzles are formed is formed on the lower surface of the ejection unit 22. The ejection unit 22 ejects an ink droplet from the nozzle.

吐出部22が主走査方向に移動する過程で吐出したインクがシートに着弾することによって、シートに画像がプリントされる。吐出部22が主走査方向の一方から他方に移動する過程において、吐出部22から吐出されたインクが着弾し得るシート上の領域を「プリント領域」と表記する。シートは、複数のプリント領域に区画される。そして、吐出部22は、後述するプリント動作において、複数のプリント領域それぞれに対して順番に画像をプリントする。   An image is printed on the sheet by the discharged ink landing on the sheet in the process of the discharge unit 22 moving in the main scanning direction. An area on the sheet to which the ink ejected from the ejection unit 22 can land during the movement of the ejection unit 22 from one side to the other in the main scanning direction is referred to as a “print area”. The sheet is divided into a plurality of print areas. Then, the ejection unit 22 prints an image in order for each of a plurality of print areas in a printing operation described later.

ディスプレイ23は、液晶ディスプレイ、有機ELディスプレイ等であり、各種情報を表示する表示面を備える。   The display 23 is a liquid crystal display, an organic EL display, or the like, and has a display surface for displaying various information.

入力I/F24は、ユーザによる入力操作を受け付けるユーザインタフェースである。具体的には、入力I/F24はボタンを有しており、押下されたボタンに対応づけられた各種の操作信号をCPU31へ出力する。さらに、入力I/F24は、ディスプレイ23の表示面に重畳された膜状のタッチセンサを有していてもよい。ディスプレイ23の表示面に表示されたオブジェクトを指定する操作、文字列或いは数字列を入力する操作は、ユーザ操作の一例である。「オブジェクト」とは、例えば、ディスプレイ23に表示された文字列、アイコン、ボタン、リンク等である。   The input I / F 24 is a user interface that receives an input operation by the user. Specifically, the input I / F 24 has a button, and outputs various operation signals associated with the pressed button to the CPU 31. Furthermore, the input I / F 24 may have a film-like touch sensor superimposed on the display surface of the display 23. An operation of designating an object displayed on the display surface of the display 23, and an operation of inputting a character string or a number string are examples of user operation. The “object” is, for example, a character string, an icon, a button, a link or the like displayed on the display 23.

タッチセンサとして実現される入力I/F24は、ユーザがタッチした表示面上の位置を示す位置情報を出力する。なお、本明細書中における「タッチ」とは、入力媒体を表示面に接触させる操作全般を含む。また、入力媒体が表示面に触れていなくても、表示面との間の距離がごく僅かな位置まで入力媒体を近接させることを、前述の「タッチ」の概念に含めてもよい。さらに入力媒体とは、ユーザの指であってもよいし、タッチペン等であってもよい。ディスプレイ53に表示されたアイコンの位置のタップするユーザ操作は、当該アイコンを指定する指定操作の一例である。   The input I / F 24 realized as a touch sensor outputs position information indicating the position on the display surface touched by the user. Note that "touch" in the present specification includes all operations for causing an input medium to contact a display surface. Further, even if the input medium does not touch the display surface, bringing the input medium close to a position where the distance to the display surface is very small may be included in the concept of “touch” described above. Furthermore, the input medium may be a finger of the user, a touch pen, or the like. The user operation of tapping the position of the icon displayed on the display 53 is an example of the specification operation of specifying the icon.

通信I/F25は、ネットワーク11やケーブル12を通じてPC70やPC50と通信可能なインタフェースである。すなわち、プリンタ10は、通信I/F25を通じてPC70やPC50に各種情報を送信し、通信I/F25を通じてPC70やPC50から各種情報を受信する。通信I/F25は、例えば、Wi−Fi(Wi-Fi Allianceの登録商標)に従った通信手順で、ネットワーク11の不図示のアクセスポイントに無線信号を送信及び受信するものであってもよいし、LANケーブルや、USBケーブルなどのケーブル12が接続されるインタフェースであってもよい。   The communication I / F 25 is an interface capable of communicating with the PC 70 or the PC 50 through the network 11 or the cable 12. That is, the printer 10 transmits various information to the PC 70 and the PC 50 through the communication I / F 25, and receives various information from the PC 70 and the PC 50 through the communication I / F 25. The communication I / F 25 may transmit and receive a wireless signal to an access point (not shown) of the network 11 by, for example, a communication procedure according to Wi-Fi (registered trademark of Wi-Fi Alliance). It may be an interface to which a cable 12 such as a LAN cable or a USB cable is connected.

制御部30は、プリンタ10の全体動作を制御するものである。制御部30は、図2(A)に示されるように、CPU31、ROM32、RAM33、EEPROM34、ASIC35を主とするマイクロコンピュータである。   The control unit 30 controls the overall operation of the printer 10. As shown in FIG. 2A, the control unit 30 is a microcomputer mainly composed of a CPU 31, a ROM 32, a RAM 33, an EEPROM 34, and an ASIC 35.

ROM32には、CPU31がプリンタ10の動作を制御するためのプログラムが格納される。RAM33は、CPU31がプログラムを実行する際に用いる各種データを一時的に記録する記憶領域又は作業領域として使用される。EEPROM34には、電源オフ後も保持すべき設定やフラグ等が格納される。CPU31は、プログラムをROM32から読み出して実行することにより、プリンタ10の動作を制御する。ASIC35には、搬送部21と、吐出部22と、ディスプレイ23と、入力I/F24と、通信I/F25とが接続されている。ASIC35は、CPU31の指示に従ってプリンタ10の各構成要素を動作させる。   The ROM 32 stores a program for the CPU 31 to control the operation of the printer 10. The RAM 33 is used as a storage area or a work area for temporarily recording various data used when the CPU 31 executes a program. The EEPROM 34 stores settings and flags that should be held even after the power is turned off. The CPU 31 controls the operation of the printer 10 by reading a program from the ROM 32 and executing the program. The conveyance unit 21, the discharge unit 22, the display 23, the input I / F 24, and the communication I / F 25 are connected to the ASIC 35. The ASIC 35 operates each component of the printer 10 in accordance with an instruction of the CPU 31.

ROM32、RAM33、EEPROM34は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non−transitoryな媒体である。non−transitoryな媒体には、上記の例の他に、CD−ROM、DVD−ROM等の記録媒体も含まれる。また、non−transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non−transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。後述する情報処理端末50のメモリ62についても同様である。   The ROM 32, the RAM 33, and the EEPROM 34 may be computer readable storage media. The computer readable storage medium is a non-transitory medium. The non-transitory medium also includes a recording medium such as a CD-ROM, a DVD-ROM, etc. in addition to the above example. In addition, non-transitory media are tangible media. On the other hand, an electrical signal carrying a program downloaded from a server or the like on the Internet is a computer readable signal medium, which is a type of computer readable medium, but a non-transitory computer readable storage. It is not included in the medium. The same applies to the memory 62 of the information processing terminal 50 described later.

EEPROM34には、プリンタ10の装置情報が記憶されている。装置情報は、プリンタ10のモデル名、シリアルナンバー、及びMACアドレスや、復帰時間情報が記憶されている。   Device information of the printer 10 is stored in the EEPROM 34. As the device information, a model name of the printer 10, a serial number, a MAC address, and recovery time information are stored.

復帰時間情報は、プリンタ10が待機状態からプリント実行可能状態に移行した後から、プリントデータが入力しなかった場合に待機状態に戻るまでの復帰時間T1を示す情報であり、EEPROM34に予め記憶される。プリンタ10の待機状態とは、電源部26が休眠状態であり、吐出部22のノズルが不図示のキャップに覆われた状態である。プリンタ10のプリント実行可能状態とは、電源部26が駆動状態であり、吐出部22のノズルがキャップに覆われていない状態である。   The recovery time information is information indicating a recovery time T1 for returning to the standby state when print data is not input after the printer 10 has shifted from the standby state to the print executable state, and is stored in advance in the EEPROM 34. Ru. In the standby state of the printer 10, the power supply unit 26 is in the sleep state, and the nozzle of the discharge unit 22 is covered by a cap (not shown). In the print executable state of the printer 10, the power supply unit 26 is in a driven state, and the nozzle of the ejection unit 22 is not covered by the cap.

ASIC35は、モータへ駆動信号を出力する。モータが回転すると、搬送部21はシートを搬送し、吐出部22は主走査方向に移動する。ASIC35は、ピエゾ素子等の駆動素子へ駆動信号を出力する。駆動素子が振動すると、吐出部22はノズルからインク滴を吐出する。ASIC35は、ディスプレイ23へ画像信号を出力し、ディスプレイ23に画面を表示させる。ASIC35は、入力I/F24から出力される操作信号を取得する。ASIC35は、通信I/F25を通じて外部装置から情報を受信し、通信I/F25を通じて外部装置に情報を送信する。   The ASIC 35 outputs a drive signal to the motor. When the motor rotates, the transport unit 21 transports the sheet, and the discharge unit 22 moves in the main scanning direction. The ASIC 35 outputs a drive signal to a drive element such as a piezo element. When the drive element vibrates, the discharge unit 22 discharges an ink droplet from the nozzle. The ASIC 35 outputs an image signal to the display 23 and causes the display 23 to display a screen. The ASIC 35 acquires an operation signal output from the input I / F 24. The ASIC 35 receives information from an external device through the communication I / F 25, and transmits information to the external device through the communication I / F 25.

PC50は、図2(B)に示されるように、ディスプレイ53と、入力I/F54と、通信I/F55と、CPU61と、メモリ62と、通信バス63とを主に備える。情報処理端末50に含まれるディスプレイ53、入力I/F54、通信I/F55、CPU61は、プリンタ10に含まれるディスプレイ23、入力I/F24、通信I/F25、CPU31と同様の構成であるので、説明は省略する。CPU61及びメモリ62は、コントローラの一例である。   As shown in FIG. 2B, the PC 50 mainly includes a display 53, an input I / F 54, a communication I / F 55, a CPU 61, a memory 62, and a communication bus 63. The display 53, the input I / F 54, the communication I / F 55, and the CPU 61 included in the information processing terminal 50 have the same configuration as the display 23, the input I / F 24, the communication I / F 25, and the CPU 31 included in the printer 10. The description is omitted. The CPU 61 and the memory 62 are an example of a controller.

PC50は、例えば、携帯電話、スマートフォン、タブレット端末等であってもよい。PC50は、コンピュータの一例である。PC50の入力I/F54は、例えば、マウス及びキーボードの組み合わせであってもよい。この場合において、ディスプレイ53に表示されたアイコンなどのオブジェクトの位置にマウスポインタを移動させてクリックするユーザ操作は、当該オブジェクトを指定する指定操作の一例である。   The PC 50 may be, for example, a mobile phone, a smartphone, a tablet terminal, or the like. The PC 50 is an example of a computer. The input I / F 54 of the PC 50 may be, for example, a combination of a mouse and a keyboard. In this case, the user operation of moving the mouse pointer to the position of an object such as an icon displayed on the display 53 and clicking is an example of a specification operation of specifying the object.

メモリ62は、例えば、RAM、ROM、EEPROM、HDD、PC50に着脱されるUSBメモリ等の可搬記憶媒体、CPU61が備えるバッファ等、或いはそれらの組み合わせによって構成される。メモリ62は、プログラム記憶領域62A(以下、「領域62A」と表記する)と、データ記憶領域62B(以下、「領域62B」と表記する)とを有する。領域62Aには、OS64と、ドライバプログラム66とがインストールされている。領域62Aに記憶される各プログラムは、単一のプログラムであってもよいし、複数のプログラムの集合体であってもよい。領域62Bには、各プログラムの実行に必要なデータ或いは情報が記憶される。   The memory 62 is configured by, for example, a RAM, a ROM, an EEPROM, an HDD, a portable storage medium such as a USB memory attached to and detached from the PC 50, a buffer provided in the CPU 61, or the like or a combination thereof. The memory 62 has a program storage area 62A (hereinafter referred to as "area 62A") and a data storage area 62B (hereinafter referred to as "area 62B"). In the area 62A, an OS 64 and a driver program 66 are installed. Each program stored in area 62A may be a single program or a collection of multiple programs. Data or information required to execute each program is stored in the area 62B.

本実施形態では、Windows(Microsoft Corporationの登録商標) Operating SystemをOS64の具体例として説明するが、OS64の具体例はこれに限定されず、例えば、Android(Google inc.の登録商標) OS、iOS(Cisco Systems,Inc.の登録商標)等であってもよい。   In the present embodiment, Windows (registered trademark of Microsoft Corporation) Operating System is described as a specific example of the OS 64, but specific examples of the OS 64 are not limited thereto. For example, Android (registered trademark of Google inc.) OS, iOS (Registered trademark of Cisco Systems, Inc.) or the like.

ドライバプログラム66は、OS64から受け付けたプリント指示情報に従って、プリンタ10にプリント処理を実行させるためのプログラムである。ドライバプログラム66は、単一のモデルのプリンタ10に対してのみプリント処理を指示可能であってもよいし、複数のモデルのプリンタ10に対してプリント処理を指示可能であってもよい。   The driver program 66 is a program for causing the printer 10 to execute print processing in accordance with the print instruction information received from the OS 64. The driver program 66 may be capable of instructing print processing only to the printer 10 of a single model, or may be capable of instructing print processing to the printers 10 of a plurality of models.

ドライバプログラム66には、OS64によって指定された複数の関数が定義されている。そして、ドライバプログラム66は、複数の関数がOS64によって所定の順序で呼び出されることによって、プリンタ10にプリント動作を実行させることができる。本実施形態に係るプリント指示情報は、例えば、所定の定数を引数として、ドライバプログラム66に定義された関数がOS64によって呼び出されたことを指す。   In the driver program 66, a plurality of functions specified by the OS 64 are defined. Then, the driver program 66 can cause the printer 10 to execute the printing operation by the plurality of functions being called by the OS 64 in a predetermined order. The print instruction information according to the present embodiment indicates, for example, that the function defined in the driver program 66 is called by the OS 64 with a predetermined constant as an argument.

領域62Bは、第1領域62Cと、第2領域62Dとを含む。第1領域62Cは、例えば、OS64に関する基本情報、或いはドライバプログラムの設定情報のデータベースである所謂レジストリである。   The area 62B includes a first area 62C and a second area 62D. The first area 62C is, for example, a so-called registry which is a database of basic information on the OS 64 or setting information of the driver program.

第1領域62Cは、条件情報を記憶している。条件情報は、プリンタ10に実行させるプリント動作の実行条件を示すための情報である。条件情報は、セキュアフラグ及び認証情報を含む。   The first area 62C stores condition information. The condition information is information for indicating an execution condition of the printing operation to be executed by the printer 10. Condition information includes a secure flag and authentication information.

条件情報は、ドライバプログラム66がインストールされたタイミングで第1領域62Cに記憶される。また、ドライバプログラム66は、第1領域62Cに記憶された条件情報をユーザの指示に従って変更することができる。より詳細には、ドライバプログラム66は、OS64からの参照指示に従って第1領域62Cから条件情報を読み出し、読み出した条件情報をディスプレイ53に表示させる。次に、ドライバプログラム66は、条件情報を変更するユーザ操作を入力I/F54を通じて受け付けたことに応じて、第1領域62Cに記憶された条件情報を変更後の条件情報で上書きする。   The condition information is stored in the first area 62C at the timing when the driver program 66 is installed. Further, the driver program 66 can change the condition information stored in the first area 62C in accordance with the user's instruction. More specifically, the driver program 66 reads the condition information from the first area 62C according to the reference instruction from the OS 64, and causes the display 53 to display the read condition information. Next, the driver program 66 overwrites the condition information stored in the first area 62C with the changed condition information in response to the user operation for changing the condition information being accepted through the input I / F 54.

セキュアフラグは、所謂セキュアプリントをプリンタ10に実行させるか否かを示す情報である。セキュアフラグには、セキュアプリントを実行させる指示に対応する「ON」、或いはセキュアプリントを実行させない指示に対応する「OFF」が設定される。認証情報は、ユーザによって指定されたPINである。認証情報には、セキュアフラグに「ON」が設定される場合にのみ、有効な値が設定される。   The secure flag is information indicating whether to cause the printer 10 to execute so-called secure printing. In the secure flag, "ON" corresponding to an instruction to execute secure printing or "OFF" corresponding to an instruction not to execute secure printing is set. The authentication information is a PIN designated by the user. In the authentication information, a valid value is set only when the secure flag is set to “ON”.

セキュアプリントとは、有効な認証情報の入力をトリガとして開始されるプリント動作を指す。すなわち、プリンタ10は、セキュアプリントの実行を指示するプリント実行情報を受信したことに応じて直ちにプリント動作を開始せず、入力I/F24を通じて認証情報の入力を受け付けたことに応じてプリント動作を開始する。   Secure printing refers to a printing operation that is triggered by the input of valid authentication information. That is, the printer 10 does not immediately start the printing operation in response to the reception of the print execution information instructing the execution of secure printing, and performs the printing operation in response to the reception of the input of the authentication information through the input I / F 24. Start.

また、領域62Bは、1以上のキュー領域を含む。キュー領域は、プリンタ10に送信すべき情報が記憶されるメモリ領域である。キュー領域は、プリンタ10を特定する所謂印刷ポートに対応付けられている。ドライバプログラム66には、例えば、情報を記憶させるべきキュー領域が、関数の引数としてOS64から指定される。以下、ドライバプログラム66に対して指定されたキュー領域を、「指定キュー」と表記することがある。   The area 62B also includes one or more queue areas. The queue area is a memory area in which information to be transmitted to the printer 10 is stored. The queue area is associated with a so-called print port that specifies the printer 10. In the driver program 66, for example, a queue area in which information is to be stored is designated from the OS 64 as an argument of a function. Hereinafter, a queue area designated for the driver program 66 may be referred to as a “designated queue”.

キュー領域には、各種動作の実行をプリンタ10に指示するための情報が記憶される。より詳細には、キュー領域には、図3(A)に示される先行コマンド、図3(B)に示されるプリント実行情報、及び不図示のステータス送信指示情報等が記憶される。プリント実行情報は、プリント動作の実行を指示するための情報であって、給送指示情報、頭出し指示情報、搬送指示情報、吐出指示情報、及び排出指示情報等を含む。先行コマンドは、プリント前動作の実行を指示するためのコマンドである。不図示のステータス送信指示情報は、プリンタ10の状態を示すステータス情報の送信を指示するための情報である。但し、キュー領域に記憶される情報の具体例は、これらに限定されない。   The queue area stores information for instructing the printer 10 to execute various operations. More specifically, in the queue area, the preceding command shown in FIG. 3A, the print execution information shown in FIG. 3B, status transmission instruction information (not shown), and the like are stored. The print execution information is information for instructing the execution of the print operation, and includes feed instruction information, quick start instruction information, transport instruction information, discharge instruction information, and discharge instruction information. The preceding command is a command for instructing execution of the pre-printing operation. Status transmission instruction information (not shown) is information for instructing transmission of status information indicating the status of the printer 10. However, specific examples of the information stored in the queue area are not limited to these.

キュー領域は、OS64が通信I/F55を通じてプリンタ10に送信する情報が、送信順を特定して記憶される領域である。換言すれば、OS64は、キュー領域に指示情報が記憶されているか否かを所定のタイミングでチェックする。そして、OS64は、キュー領域に指示情報が記憶されていると判断したことに応じて、当該指示情報を予め定められた送信順序で、通信I/F55を通じてプリンタ10に送信し、送信した指示情報をキュー領域から削除する。   The queue area is an area where information transmitted by the OS 64 to the printer 10 through the communication I / F 55 is stored by specifying the order of transmission. In other words, the OS 64 checks at a predetermined timing whether or not instruction information is stored in the queue area. Then, in response to having determined that the instruction information is stored in the queue area, the OS 64 transmits the instruction information to the printer 10 through the communication I / F 55 in a predetermined transmission order, and transmits the instruction information. Is removed from the queue area.

より詳細には、キュー領域に記憶される指示情報には、図3(A)及び図3(B)に示されるように、ジョブIDが付加される。ジョブIDは、キュー領域内において、連続して送信すべき指示情報を特定するための情報である。すなわち、複数の指示情報に同一のジョブIDが付加される場合がある。OS64は、同一のジョブIDが付加された複数の指示情報を、キュー領域に記憶された順にプリンタ10に送信する。また、OS64は、異なるジョブIDが付加された指示情報を、当該ジョブIDの生成順にプリンタ10に送信する。   More specifically, the job ID is added to the instruction information stored in the queue area, as shown in FIGS. 3A and 3B. The job ID is information for specifying instruction information to be continuously transmitted in the queue area. That is, the same job ID may be added to a plurality of pieces of instruction information. The OS 64 transmits a plurality of pieces of instruction information to which the same job ID is added to the printer 10 in the order stored in the queue area. Further, the OS 64 transmits instruction information to which different job IDs are added to the printer 10 in the order of generation of the job IDs.

OS64は、例えばキュー領域において、まず、ジョブID“コンテンツデータA”が付加された搬送指示情報、吐出指示情報、及び排出指示情報をこの順に送信する。次に、OS64は、ジョブID“コンテンツデータB”が付加された給送指示情報、及び頭出し指示情報をこの順に送信する。このとき、ジョブID“コンテンツデータB”が付加された給送指示情報が、ジョブID“コンテンツデータA”が付加された排出指示情報より先にキュー領域に書き込まれていたとしても、排出指示情報が先に送信される。すなわち、同一のジョブIDが付加された複数の指示情報が書き込み順に連続して送信される。   For example, in the queue area, the OS 64 first transmits transport instruction information to which the job ID “content data A” is added, ejection instruction information, and ejection instruction information in this order. Next, the OS 64 transmits feeding instruction information to which the job ID “content data B” is added, and cueing instruction information in this order. At this time, even if the feeding instruction information to which the job ID "content data B" is added is written to the queue area earlier than the discharging instruction information to which the job ID "content data A" is added, Is sent first. That is, a plurality of pieces of instruction information to which the same job ID is added are continuously transmitted in the order of writing.

なお、PC70は、PC50の構成と同様であるので、説明は省略する。   In addition, since PC70 is the same as that of the structure of PC50, description is abbreviate | omitted.

[プリント指示処理]
以下、ドライバプログラム66が実行するプリント指示処理について、図4を参照して説明する。ドライバプログラム66は種々の処理を実行するが、以下では、ドライバプログラム66が先行コマンドを送信するか否かを判断し、当該判断にしたがって、先行コマンドを送信し、或いは先行コマンドを送信せずに、プリントデータを送信するプリント指示処理について説明する。なお、以下の説明では、本発明において特に重要な処理を説明し、それ以外の処理の説明を省略している場合がある。先行コマンドは、準備指示情報の一例である。
Print instruction processing
The print instruction process executed by the driver program 66 will be described below with reference to FIG. The driver program 66 executes various processes, but in the following, the driver program 66 determines whether or not to transmit the preceding command, and transmits the preceding command or transmits the preceding command according to the determination. Print instruction processing for transmitting print data will be described. In the following description, processing that is particularly important in the present invention will be described, and descriptions of other processing may be omitted. The preceding command is an example of preparation instruction information.

本明細書のフローチャートは、基本的に、プログラムに記述された命令に従ったCPU31、61の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「制御」等の処理は、CPU31、61の処理を表している。CPU61による処理は、OS64を介したハードウェア制御も含む。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。   The flowchart of this specification basically shows the processing of the CPUs 31, 61 in accordance with the instructions described in the program. That is, the processes of “determination”, “extraction”, “selection”, “control” and the like in the following description represent the processes of the CPUs 31 and 61. The processing by the CPU 61 also includes hardware control via the OS 64. Also, “data” in the present specification is represented by a computer readable bit string. Then, data having the same substantial semantic content but different format is treated as the same data. The same applies to "information" in the present specification.

ドライバプログラム66は、ドライバプログラム66に定義された関数がOS64によって呼び出されることにより、プリント指示を含むプリント指示情報を受け付ける。ドライバプログラム66は、プリント指示情報を受け付けたか否かを判断する(S11)。ドライバプログラム66は、プリント指示情報を受け付けていないと判断すると(S11:No)、プリント指示処理を終了する。プリント指示を含むプリント指示情報を生成するOS64の処理は、第1生成処理の一例である。   The driver program 66 receives print instruction information including a print instruction when the function defined in the driver program 66 is called by the OS 64. The driver program 66 determines whether print instruction information has been received (S11). If the driver program 66 determines that the print instruction information has not been received (S11: No), the print instruction process is ended. The process of the OS 64 for generating print instruction information including a print instruction is an example of a first generation process.

一方、ドライバプログラム66は、プリント指示情報を受け付けたと判断すると(S11:Yes)、プリント指示情報が示す指定キューに、既にプリントデータがあるか否かを判断する(S12)。プリント指示情報を受け付ける処理(S12:Yes)は、プリント指示受付処理の一例である。   On the other hand, when the driver program 66 determines that the print instruction information has been received (S11: Yes), it determines whether or not print data is already in the designated queue indicated by the print instruction information (S12). The process of receiving print instruction information (S12: Yes) is an example of the print instruction acceptance process.

ドライバプログラム66は、指定キューにプリントデータがあると判断すると(S12:Yes)、ステップS13からS17、S21、S22の処理をスキップして、プリント指示情報を生成するStartPage処理を実行する(S18)。   If the driver program 66 determines that there is print data in the designated queue (S12: Yes), it skips the processes of steps S13 to S17, S21, and S22 and executes StartPage processing for generating print instruction information (S18) .

[StartPage処理]
StartPage処理は、指定コンテンツデータに含まれるページデータ毎に実行される。StartPage処理の処理対象となるページデータは、例えば、OS64によって、関数の引数として指定される。図7(A)を参照して、StartPage処理の詳細を説明する。
[StartPage processing]
The StartPage process is executed for each page data included in the designated content data. The page data to be processed by the StartPage process is specified, for example, by the OS 64 as an argument of a function. The details of the StartPage process will be described with reference to FIG.

OS64は、ドライバプログラム66に定義された関数“DrvStartPage()”を呼び出す(S71)。ドライバプログラム66は、関数“DrvStartPage()”が呼び出されたことに応じて、ヘッダ指示情報を生成し、生成したヘッダ指示情報をキュー領域67Aに記憶させる(S72)。ヘッダ指示情報は、1枚のシートに画像を記録する一連の動作において、シートに画像をプリントする前に実行すべき動作を指示するためのプリント実行情報である。本実施形態に係るヘッダ指示情報は、給送指示情報及び頭出し指示情報である。   The OS 64 calls a function "DrvStartPage ()" defined in the driver program 66 (S71). In response to the function "DrvStartPage ()" being called, the driver program 66 generates header indication information and stores the generated header indication information in the queue area 67A (S72). The header instruction information is print execution information for instructing an operation to be performed before printing an image on a sheet in a series of operations for recording an image on one sheet. The header instruction information according to the present embodiment is feed instruction information and quick start instruction information.

そして、ドライバプログラム66は、関数“DrvStartPage()”を終了する(S73)。次に、OS64は、ドライバプログラム66に定義された描画関数を呼び出す。複数の描画関数が所定の順序で実行されることによって、ドライバプログラム66は、ページデータからプリントデータを生成する(S74)。プリントデータは、例えば、ページデータをラスタライズしたラスタデータである。また、ドライバプログラム66は、プリントデータに対するプリント動作を実行させるためのプリント実行情報を生成し、生成したプリント実行情報をキュー領域67Aに記憶させる。ステップS74では、後述するように、吐出指示情報及び搬送指示情報が生成される。ステップS74においてプリントデータを生成する処理は、生成処理及び第2生成処理の一例である。以下、ドライバプログラム66がプリント実行情報を生成する処理の詳細を説明する。   Then, the driver program 66 ends the function "DrvStartPage ()" (S73). Next, the OS 64 calls the drawing function defined in the driver program 66. The driver program 66 generates print data from the page data by executing the plurality of drawing functions in a predetermined order (S74). The print data is, for example, raster data obtained by rasterizing page data. Further, the driver program 66 generates print execution information for executing the print operation on the print data, and stores the generated print execution information in the queue area 67A. In step S74, discharge instruction information and transfer instruction information are generated as described later. The process of generating print data in step S74 is an example of a generation process and a second generation process. The details of the process in which the driver program 66 generates print execution information will be described below.

まず、ドライバプログラム66は、ラスタライズの対象として受け渡されるデータの単位を示す単位情報を、OS64に通知する。単位情報には、例えば、ページデータの単位での受け渡しを指示する“ページ”、或いはバンドデータの単位での受け渡しを指示する“バンド”が設定される。バンドデータは、ページデータの一部のデータである。   First, the driver program 66 notifies the OS 64 of unit information indicating a unit of data to be delivered as a target of rasterization. As the unit information, for example, a “page” instructing the delivery in the page data unit or a “band” instructing the delivery in the band data unit is set. Band data is part of page data.

単位情報“ページ”を取得したOS64は、ステップS74において、ページデータを、ドライバプログラム66に引き渡す。ドライバプログラム66は、OS64から引き渡されたページデータ全体をラスタライズしてラスタデータを生成する。次に、ドライバプログラム66は、領域62Bに展開されたラスタデータを、領域62B内で90°回転させる。次に、ドライバプログラム66は、プリント領域の1つに記録する画像を示す複数のパスデータを、90°回転されたラスタデータから抽出する。そして、ドライバプログラム66は、抽出したパスデータそれぞれに基づいて吐出指示情報及び搬送指示情報を生成し、生成した吐出指示情報及び搬送指示情報を順番にキュー領域67Aに書き込む。ドライバプログラム66は、パスデータの抽出、吐出指示情報及び搬送指示情報の生成、生成した情報のキュー領域67Aへの書き込みを、ページデータに含まれる全てのパスデータに対して連続して実行する。   The OS 64 having acquired the unit information “page” hands over the page data to the driver program 66 in step S 74. The driver program 66 rasterizes the entire page data delivered from the OS 64 to generate raster data. Next, the driver program 66 rotates the raster data expanded in the area 62B by 90 ° in the area 62B. Next, the driver program 66 extracts a plurality of pass data representing an image to be recorded in one of the print areas from the 90 ° -rotated raster data. Then, the driver program 66 generates discharge instruction information and transfer instruction information based on each of the extracted path data, and sequentially writes the generated discharge instruction information and transfer instruction information in the queue area 67A. The driver program 66 continuously executes the extraction of the pass data, the generation of the discharge instruction information and the conveyance instruction information, and the writing of the generated information in the queue area 67A on all the pass data included in the page data.

一方、単位情報“バンド”を取得したOS64は、ステップS74において、ページデータに含まれる複数のバンドデータのうちの1つを、ドライバプログラム66に引き渡す。ドライバプログラム66は、OS64から引き渡されたバンドデータ全体をラスタライズしてラスタデータを生成する。次に、ドライバプログラム66は、ラスタデータに基づいて吐出指示情報及び搬送指示情報を生成し、生成した吐出指示情報及び搬送指示情報をキュー領域67Aに書き込む。そして、ページデータを構成する全てのバンドデータに対して、前述の処理が繰り返し実行される。   On the other hand, the OS 64 that has acquired the unit information “band” delivers one of the plurality of band data included in the page data to the driver program 66 in step S74. The driver program 66 rasterizes the entire band data delivered from the OS 64 to generate raster data. Next, the driver program 66 generates discharge instruction information and transfer instruction information based on raster data, and writes the generated discharge instruction information and transfer instruction information in the queue area 67A. Then, the above-described processing is repeatedly performed on all band data constituting the page data.

次に、OS64は、ドライバプログラム66に定義された関数“DrvEndPage()”を呼び出す(S75)。ドライバプログラム66は、関数“DrvEndPage()”が呼び出されたことに応じて、排出指示情報を生成し、生成した排出指示情報をキュー領域67Aに記憶させる(S76)。   Next, the OS 64 calls a function "DrvEndPage ()" defined in the driver program 66 (S75). In response to the function "DrvEndPage ()" being called, the driver program 66 generates ejection instruction information, and stores the generated ejection instruction information in the queue area 67A (S76).

図7(A)に示されるStartPage処理によってキュー領域67Aに書き込まれた複数のプリント実行情報は、OS64によって書き込み順にプリンタ10に送信される。典型的には、OS64は、給送指示情報、頭出し指示情報、吐出指示情報、搬送指示情報、吐出指示情報、・・・、排出指示情報を、通信I/F55を通じてプリンタ10にこの順で送信する。ステップS72の処理、ステップS74でプリント実行情報をキュー領域67Aに記憶させる処理、ステップS76の処理は、通信I/F55を通じてプリンタ10にプリント実行情報を送信するプリント実行指示処理の一例である。   The plurality of pieces of print execution information written in the queue area 67A by the StartPage process shown in FIG. 7A are transmitted by the OS 64 to the printer 10 in the order of writing. Typically, the OS 64 sends the feed instruction information, the cue instruction information, the discharge instruction information, the conveyance instruction information, the discharge instruction information,..., The discharge instruction information to the printer 10 through the communication I / F 55 in this order. Send. The process of step S72, the process of storing the print execution information in the queue area 67A in step S74, and the process of step S76 are an example of the print execution instruction process of transmitting the print execution information to the printer 10 through the communication I / F 55.

そして、ドライバプログラム66は、関数“DrvEndPage()”を終了する(S77)。これにより、StartPage処理が終了する。StartPage処理により、プリントデータがOS64によって印刷ポートからプリンタ10に送信される。   Then, the driver program 66 ends the function "DrvEndPage ()" (S77). Thus, the StartPage process ends. The print data is transmitted from the print port to the printer 10 by the OS 64 by the StartPage process.

次に図4に戻って、ドライバプログラム66は、ステップS12において、指定キューにプリントデータがないと判断すると(S12:No)、プリント指示情報が示すセキュアフラグの値が「ON」であるか否かを判断する。すなわち、ステップS12では、プリント実行情報が示すプリントがセキュアプリントであるか否かが判断される。   Next, returning to FIG. 4, when the driver program 66 determines in step S12 that there is no print data in the designated queue (S12: No), the value of the secure flag indicated by the print instruction information is "ON" or not. To judge. That is, in step S12, it is determined whether the print indicated by the print execution information is secure print.

ドライバプログラム66は、セキュアフラグの値が「ON」であると判断すると(S13:Yes)、ステップS14からS17、S21、S22の処理をスキップして、プリントデータを生成するStartPage処理を実行する(S18)。   If the driver program 66 determines that the value of the secure flag is "ON" (S13: Yes), it skips the processes of steps S14 to S17, S21, and S22 and executes the StartPage process of generating print data ( S18).

一方、ドライバプログラム66は、セキュアフラグの値が「OFF」であると判断すると(S13:No)、先行コマンド出力判断処理を実行する(S14)。図5(A)を参照して、先行コマンド出力判断処理の詳細について説明する。   On the other hand, when the driver program 66 determines that the value of the secure flag is "OFF" (S13: No), it executes a preceding command output determination process (S14). Details of the preceding command output determination process will be described with reference to FIG. 5 (A).

ドライバプログラム66は、プリント指示情報が示す識別フラグの値が「ON」であるか否かを判断する(S31)。識別フラグは、プリント指示情報が示すプリンタ10が共有プリンタ10であることに応じて「ON」が設定され、プリンタ10が共有プリンタ10でないことに応じて「OFF」が設定されるフラグである。ステップS31の処理は、判断処理の一例である。識別フラグは、第1情報の一例である。   The driver program 66 determines whether the value of the identification flag indicated by the print instruction information is "ON" (S31). The identification flag is a flag in which "ON" is set according to the fact that the printer 10 indicated by the print instruction information is the shared printer 10, and "OFF" is set according to the fact that the printer 10 is not the shared printer 10. The process of step S31 is an example of the determination process. The identification flag is an example of the first information.

ドライバプログラム66は、プリント指示情報が示す識別フラグの値が「ON」でないと判断すると(S31:No)、先行コマンドフラグに「ON」を設定し(S32)、先行コマンド出力判断処理を終了する。先行コマンドフラグは、ドライバプログラム66が先行コマンドを出力するか否かを判断するためのフラグである。詳しくは後述する。   If the driver program 66 determines that the value of the identification flag indicated by the print instruction information is not "ON" (S31: No), it sets "ON" in the preceding command flag (S32), and ends the preceding command output determination processing. . The preceding command flag is a flag for determining whether the driver program 66 outputs the preceding command. Details will be described later.

一方、ドライバプログラム66は、プリント指示情報が示す識別フラグの値が「ON」であると判断すると(S31:Yes)、共有プリンタの場合の判断処理を実行する(S33)。図5(B)を参照して、共有プリンタの場合の判断処理の詳細について説明する。   On the other hand, when the driver program 66 determines that the value of the identification flag indicated by the print instruction information is "ON" (S31: Yes), the driver program 66 executes determination processing in the case of a shared printer (S33). Details of the determination process in the case of the shared printer will be described with reference to FIG. 5B.

ドライバプログラム66は、管理情報及びポート設定情報をメモリから読み出す(S41)。管理情報は、PC50の管理者によって、「出力」、「出力しない」、「設定に応じて出力」のうちから選択された情報である。   The driver program 66 reads management information and port setting information from the memory (S41). The management information is information selected by the administrator of the PC 50 from among “output”, “do not output”, and “output according to setting”.

ポート設定情報は、PC50のユーザによってPC50に入力された情報である。詳しく説明すると、ドライバプログラム66は、図9に示すポート設定情報入力画面をPC50のディスプレイに53に表示させる。ポート設定情報入力画面をPC50のディスプレイ53に表示させる処理は、表示処理の一例である。   The port setting information is information input to the PC 50 by the user of the PC 50. Specifically, the driver program 66 causes the display of the PC 50 to display the port setting information input screen shown in FIG. The process of displaying the port setting information input screen on the display 53 of the PC 50 is an example of the display process.

ポート設定情報入力画面は、「ポート設定」の文字と、「共有時でも先行コマンドを出力する印刷ポート情報」の文字とを有する。また、ポート設定情報入力画面は、「USBポートの場合には、先行コマンドを送信する」の文字及びチェックボックスを有する。「USBポートの場合には、先行コマンドを送信する」の文字及びチェックボックスは、第1オブジェクトの一例である。   The port setting information input screen has a character of "port setting" and a character of "print port information for outputting preceding command even when sharing". In addition, the port setting information input screen has the characters “transmit preceding command in case of USB port” and a check box. The characters “transmit preceding command in case of USB port” and the check box are an example of the first object.

また、ポート設定情報入力画面は、「LANポートの場合の切り替え条件」の文字及びチェックボックスを有する。また、ポート設定情報入力画面は、「有線/無線の情報で切り替える」の文字及びラジオボタンと、「有線であれば出力する」の文字及びチェックボックスと、「無線であれば出力する」の文字及びチェックボックスと、「プリンタとの通信速度を測定して切り替える」の文字及びラジオボタンとを有する。「LANポートの場合の切り替え条件」の文字及びチェックボックスと、「有線/無線の情報で切り替える」の文字及びラジオボタンと、「有線であれば出力する」の文字及びチェックボックスとは、第2オブジェクトの一例である。「LANポートの場合の切り替え条件」の文字及びチェックボックスと、「有線/無線の情報で切り替える」の文字及びラジオボタンと、「無線であれば出力する」の文字及びチェックボックスとは、第3オブジェクトの一例である。   Also, the port setting information input screen has the characters “switching condition in the case of LAN port” and a check box. In addition, the port setting information input screen, the character and radio button of "switch with wired / wireless information", the character and "check if wired" and the check box, and the character "output if wireless" And a check box, and the characters and “radio button to measure and switch the communication speed with the printer”. The character and check box of "switching condition for LAN port", the character and radio button of "switch with wired / wireless information", and the character and check box of "output if wired" are the second It is an example of an object. The characters and check box of "switching condition in case of LAN port", the characters and radio button of "switch with wired / wireless information", and the characters and check box of "output when wireless" are the third It is an example of an object.

ドライバプログラム66は、入力I/F54を通じたラジオボタンやチェックボックスがユーザ操作を受け付け、受け付けたユーザ操作に応じたポート設定情報をメモリ62に記憶させる。   The driver program 66 causes the memory 62 to store port setting information corresponding to the received user operation, when the radio button or the check box through the input I / F 54 receives the user operation.

図5(B)に戻って、ドライバプログラム66は、管理情報が示す情報が「出力」であるか、「出力しない」であるか、「設定に応じて出力」であるかを判断する(S42)。ドライバプログラム66は、管理情報が示す情報が「出力」であると判断すると(S42:出力)、先行コマンドフラグに「ON」を設定し(S43)、共有プリンタの場合の判断処理を終了する。ドライバプログラム66は、管理情報が示す情報が「出力しない」であると判断すると(S42:出力しない)、先行コマンドフラグに「OFF」を設定し(S44)、共有プリンタの場合の判断処理を終了する。   Referring back to FIG. 5B, the driver program 66 determines whether the information indicated by the management information is "output", "do not output", or "output according to setting" (S42). ). If the driver program 66 determines that the information indicated by the management information is "output" (S42: output), it sets "ON" to the preceding command flag (S43), and ends the determination processing in the case of the shared printer. If the driver program 66 determines that the information indicated by the management information is "do not output" (S42: Do not output), it sets "OFF" to the preceding command flag (S44), and ends the determination processing in the case of a shared printer. Do.

一方、ドライバプログラム66は、管理情報が示す情報が「設定に応じて出力」であると判断すると(S42:設定に応じて出力)、印刷ポートがUSBであるかLANであるかを判断する(S45)。具体的には、ドライバプログラム66は、印刷ポートのポート名をOSから取得する。ここで、プリンタ10が共有プリンタである場合、ポート名としては、PC70に設定されているポート名が取得される。なお、OSがWindows(登録商標)の場合、ポート名と実際にネットワーク上の送信先として指定されるIPアドレスやノード名とが分けて設定可能であり、これらの情報はメモリ62の所定のレジストリに書き込まれている。よって、ドライバプログラム66は、ポート名を取得すると、レジストリを検索して、ポート名からIPアドレスやノード名を取得する。そしてドライバプログラム66は、印刷ポートのポート名、IPアドレス又はノード名に基づいて、印刷ポートがUSBであるかLANであるかを判断する。ポート名は、第2情報の一例である。   On the other hand, when the driver program 66 determines that the information indicated by the management information is "output according to the setting" (S42: output according to the setting), the driver program 66 determines whether the print port is USB or LAN (S42). S45). Specifically, the driver program 66 acquires the port name of the print port from the OS. Here, when the printer 10 is a shared printer, the port name set in the PC 70 is acquired as the port name. When the OS is Windows (registered trademark), the port name and the IP address or node name actually designated as the transmission destination on the network can be set separately, and these information can be set in a predetermined registry of the memory 62. Has been written to. Therefore, when acquiring the port name, the driver program 66 searches the registry to acquire an IP address or a node name from the port name. Then, the driver program 66 determines whether the print port is USB or LAN based on the port name, IP address or node name of the print port. The port name is an example of the second information.

ドライバプログラム66は、印刷ポートがUSBであると判断すると(S45:USB)、ポート設定情報が「USBで出力の設定」であるか否かを判断する(S46)。ドライバプログラム66は、ポート設定情報が「USBで出力の設定」でないと判断すると、先行コマンドフラグに「OFF」を設定する。一方、ドライバプログラム66は、ポート設定情報が「USBで出力の設定」であると判断すると、先行コマンドフラグに「ON」を設定する。   When the driver program 66 determines that the print port is USB (S45: USB), it determines whether the port setting information is "setting for output with USB" (S46). If the driver program 66 determines that the port setting information is not "setting for output with USB", it sets "OFF" in the preceding command flag. On the other hand, when the driver program 66 determines that the port setting information is “setting of output by USB”, it sets “ON” to the preceding command flag.

ドライバプログラム66は、印刷ポートがLANであると判断すると(S45:LAN)、LANの場合の判断処理を実行する(S48)。図6を参照して、LANの場合の判断処理の詳細について説明する。   When the driver program 66 determines that the print port is a LAN (S45: LAN), the driver program 66 executes a determination process for a LAN (S48). The details of the determination process in the case of the LAN will be described with reference to FIG.

まず、ドライバプログラム66は、ポート設定情報が「有線/無線の情報で切り替える」であるか、「プリンタとの通信速度を測定して切り替える」であるかを判断する(S51)。ドライバプログラム66は、「プリンタとの通信速度を測定して切り替える」であると判断すると(S51:通信速度)、プリンタ10がEEPROM34に記憶する復帰時間T1をプリンタ10から取得する(S52)。ステップS52の処理は、取得処理の一例である。   First, the driver program 66 determines whether the port setting information is "switching by wired / wireless information" or "measuring and switching the communication speed with the printer" (S51). When the driver program 66 determines that "the communication speed with the printer is measured and switched" (S51: communication speed), the recovery time T1 stored in the EEPROM 34 by the printer 10 is acquired from the printer 10 (S52). The process of step S52 is an example of an acquisition process.

具体的には、ドライバプログラム66は、プリンタ10に装置情報を返送させるコマンド及びプリンタ10のアドレス(IPアドレスやMACアドレス)を含むリクエスト情報を生成し、送信する。リクエスト情報を受信したプリンタ10は、装置情報をPC50に返送する。ドライバプログラム66は、返送に含まれる装置情報から、復帰時間T1を取得する。リクエスト情報は、第1要求情報の一例である。   Specifically, the driver program 66 generates and transmits request information including a command for causing the printer 10 to return device information and an address (IP address or MAC address) of the printer 10. The printer 10 having received the request information returns the device information to the PC 50. The driver program 66 acquires the recovery time T1 from the device information included in the return. The request information is an example of the first request information.

次に、ドライバプログラム66は、参照通信時間T2を取得する(S53)。具体的には、ドライバプログラム66は、プリンタ10のアドレスを含むPINGコマンドを生成し、OS64に受け渡す。OS64は、PINGコマンドにしたがって、所定のリクエスト情報をプリンタ10に送信し、プリンタ10からの返信を受信する。OS64は、リクエスト情報を送信してから返信を受信するまでの時間をカウントする。OS64は、カウントした時間を示す結果情報をドライバプログラム66に引き渡す。ドライバプログラム66は、結果情報が示す時間を参照通信時間T2として取得する。PINGコマンドは、第3情報の一例である。PINGコマンドにしたがって生成される所定のリクエスト情報は、第2要求情報の一例である。   Next, the driver program 66 acquires the reference communication time T2 (S53). Specifically, the driver program 66 generates a PING command including the address of the printer 10 and passes it to the OS 64. The OS 64 transmits predetermined request information to the printer 10 according to the PING command, and receives a reply from the printer 10. The OS 64 counts time from transmission of request information to reception of a reply. The OS 64 delivers result information indicating the counted time to the driver program 66. The driver program 66 acquires the time indicated by the result information as the reference communication time T2. The PING command is an example of third information. The predetermined request information generated according to the PING command is an example of second request information.

ドライバプログラム66は、参照通信時間T2と、メモリ62に予め記憶された所定時間T3とを和算し、和算の結果得られた時間(T2+T3)がステップS52で取得した復帰時間T1未満か否かを判断する(S54)。所定時間は、先行コマンドを送信してから、ヘッダ指示情報をプリントジョブに追加(S72)するまでに要する時間として、メモリ62に予め記憶される。すなわち、ステップS54では、プリンタ10が先行コマンドを受信して待機状態からプリント実行可能状態に移行してから、ヘッダ指示情報を受信するまでの時間が、復帰時間T1より短いか否かが判断される。ステップS54の処理は、判断処理の一例である。和算の結果得られた時間(T2+T3)は、参照通信時間に応じた時間の一例である。   The driver program 66 adds the reference communication time T2 and the predetermined time T3 stored in advance in the memory 62, and the time (T2 + T3) obtained as a result of the addition is less than the recovery time T1 acquired in step S52. It is determined (S54). The predetermined time is stored in advance in the memory 62 as a time required to transmit header instruction information to the print job (S72) after transmitting the preceding command. That is, in step S54, it is determined whether the time from reception of the preceding command and transition from the standby state to the print executable state to reception of the header instruction information is shorter than return time T1. Ru. The process of step S54 is an example of the determination process. The time (T2 + T3) obtained as a result of the addition is an example of the time according to the reference communication time.

ドライバプログラム66は、和算の結果得られた時間(T2+T3)が復帰時間T1未満でないと判断すると(S54:No)、先行コマンドフラグに「OFF」を設定し(S56)、LANの場合の判断処理を終了する。一方、ドライバプログラム66は、和算の結果得られた時間(T2+T3)が復帰時間T1未満であると判断すると(S54:Yes)、先行コマンドフラグに「ON」を設定し、かつ、直接送信フラグに「ON」を設定し(S55)、LANの場合の判断処理を終了する。   If the driver program 66 determines that the time (T2 + T3) obtained as a result of addition is not less than the recovery time T1 (S54: No), it sets "OFF" to the preceding command flag (S56), and determines the case of LAN. End the process. On the other hand, when the driver program 66 determines that the time (T2 + T3) obtained as a result of addition is less than the recovery time T1 (S54: Yes), it sets "ON" to the preceding command flag and the direct transmission flag Is set to "ON" (S55), and the determination processing in the case of LAN is ended.

直接送信フラグは、プリント実行情報を送信するプリンタ10が共有プリンタ10であって、かつ、ネットワーク11との接続がLAN接続であって、かつ、先行フラグに「ON」が設定される場合に、「ON」に設定されるフラグである。詳しくは後述するが、ドライバプログラム66は、直接送信フラグに「ON」が設定されていると判断すると、ステップS74で生成したプリントデータをOS64に引き渡すことなく、生成したプリントデータを含むプリント実行情報及び共有プリンタ10のアドレスを有する送信情報を生成し、共有プリンタ10に送信する。すなわち、プリントデータを含むプリント実行情報は、印刷ポートを介さずに共有プリンタ10に送信される。印刷ポートを介さないので、プリント実行情報は、PC70を介さずに、共有プリンタ10に直接受信される。   The direct transmission flag indicates that the printer 10 transmitting the print execution information is the shared printer 10, and the connection with the network 11 is a LAN connection, and the preceding flag is set to "ON". This flag is set to "ON". Although described later in detail, when the driver program 66 determines that the direct transmission flag is set to "ON", print execution information including the print data generated without passing the print data generated in step S74 to the OS 64 The transmission information having the address of the shared printer 10 is generated and transmitted to the shared printer 10. That is, print execution information including print data is sent to the shared printer 10 without passing through the print port. Since the print port is not used, the print execution information is directly received by the shared printer 10 without going through the PC 70.

ドライバプログラム66は、ステップS51において、「有線/無線の情報で切り替える」であると判断すると(S51:有線/無線)、印刷ポートが有線であるか無線であるかを判断する(S57)。具体的には、ドライバプログラム66は、印刷ポートのポート名に基づいて、印刷ポートが有線であるか無線であるかを判断する。   If the driver program 66 determines in step S51 that "switch with wired / wireless information" (S51: wired / wireless), the driver program 66 determines whether the print port is wired or wireless (S57). Specifically, the driver program 66 determines whether the print port is wired or wireless based on the port name of the print port.

ドライバプログラム66は、印刷ポートが有線であると判断すると、ポート設定情報が「有線であれば出力する」であるか否かを判断する(S61)。ドライバプログラム66は、ポート設定情報が「有線であれば出力する」でないと判断すると、先行コマンドフラグに「OFF」を設定し(S56)、LANの場合の判断処理を終了する。一方、ドライバプログラム66は、ポート設定情報が「有線であれば出力する」であると判断すると、先行コマンドフラグに「ON」を設定し(S60)、LANの場合の判断処理を終了する。   If the driver program 66 determines that the print port is wired, it determines whether the port setting information is "output if wired" (S61). If the driver program 66 determines that the port setting information is not “output if wired”, the driver command 66 sets “OFF” to the preceding command flag (S56), and ends the determination processing in the case of LAN. On the other hand, when the driver program 66 determines that the port setting information is “output if wired”, it sets “ON” to the preceding command flag (S60), and ends the determination processing in the case of LAN.

ドライバプログラム66は、ステップS57において、印刷ポートが無線であると判断すると(S57:無線)、ポート設定情報が「無線であれば出力する」であるか否かを判断する(S58)。ドライバプログラム66は、ポート設定情報が「無線であれば出力する」でないと判断すると、先行コマンドフラグに「OFF」を設定し(S59)、LANの場合の判断処理を終了する。一方、ドライバプログラム66は、ポート設定情報が「無線であれば出力する」であると判断すると、先行コマンドフラグに「ON」を設定し、かつ、直接送信フラグに「ON」を設定し(S60)、LANの場合の判断処理を終了する。   When the driver program 66 determines in step S57 that the print port is wireless (S57: wireless), the driver program 66 determines whether the port setting information is "output when wireless" (S58). If the driver program 66 determines that the port setting information is not "output when wireless", the driver command 66 sets "OFF" to the preceding command flag (S59), and ends the determination processing in the case of LAN. On the other hand, when the driver program 66 determines that the port setting information is “output when wireless”, it sets “ON” to the preceding command flag and sets “ON” to the direct transmission flag (S60). ), End the determination processing in the case of LAN.

ドライバプログラム66は、ステップS57において、印刷ポートが有線であるか無線であるか不明であると判断すると(S57:不明)、設定情報が「不明であれば出力する」であるか否かを判断する(S62)。設定情報は、ポート設定画面によってユーザの入力によって設定されてもよいし、PC50の管理者によって設定されてもよい。   When the driver program 66 determines that the print port is wired or wireless in step S57 (S57: unknown), the driver program 66 determines whether the setting information is “output if unknown”. (S62). The setting information may be set by the user's input on the port setting screen, or may be set by the administrator of the PC 50.

ドライバプログラム66は、設定情報が「不明であれば出力する」でないと判断すると(S62:No)、先行コマンドフラグに「OFF」を設定し(S59)、LANの場合の判断処理を終了する。一方、ドライバプログラム66は、設定情報が「不明であれば出力する」であると判断すると(S62:Yes)、先行コマンドフラグに「ON」を設定し、かつ、直接送信フラグにONを設定し(S63)、LANの場合の判断処理を終了する。   If the driver program 66 determines that the setting information is not "output if unknown" (S62: No), the preceding command flag is set to "OFF" (S59), and the determination processing in the case of LAN is ended. On the other hand, when the driver program 66 determines that the setting information is "output if unknown" (S62: Yes), the preceding command flag is set to "ON", and the direct transmission flag is set to ON. (S63), the determination process in the case of the LAN is ended.

図4に戻って、ドライバプログラム66は、先行コマンド出力判断処理(S14)が終了すると、先行コマンドフラグの値が「ON」であるか否かを判断する(S15)。ドライバプログラム66は、先行コマンドフラグの値が「ON」でないと判断すると(S15:No)、ステップS16、S17、S21、S22の処理をスキップし、ステップS18のStartPage処理を実行する。   Returning to FIG. 4, when the preceding command output determination process (S14) is completed, the driver program 66 determines whether the value of the preceding command flag is "ON" (S15). If the driver program 66 determines that the value of the preceding command flag is not "ON" (S15: No), the process of steps S16, S17, S21, and S22 is skipped and the StartPage process of step S18 is performed.

一方、ドライバプログラム66は、先行コマンドフラグの値が「ON」であると判断すると(S15:ON)、直接送信フラグの値が「ON」であるか否かを判断する(S16)。ドライバプログラム66は、直接送信フラグの値が「ON」であると判断すると(S16:Yes)、先に取得したポート名、ノード名又はIPアドレスから共有プリンタ10のアドレスを特定し、先行コマンド及び共有プリンタ10のアドレスを含む先行コマンド送信情報を生成する(S21)。そして、ドライバプログラム66は、生成した先行コマンド送信情報を、印刷ポート及びPC70を介さずに、共有プリンタ10に直接送信する(S22)。ドライバプログラム66は、先行コマンド送信処理の実行後、ステップS18のStartPage処理を実行する。   On the other hand, when the driver program 66 determines that the value of the preceding command flag is "ON" (S15: ON), it determines whether the value of the direct transmission flag is "ON" (S16). If the driver program 66 determines that the value of the direct transmission flag is "ON" (S16: Yes), the driver program 66 specifies the address of the shared printer 10 from the port name, node name or IP address acquired earlier, The preceding command transmission information including the address of the shared printer 10 is generated (S21). Then, the driver program 66 transmits the generated preceding command transmission information directly to the shared printer 10 without the print port and the PC 70 (S22). After executing the preceding command transmission process, the driver program 66 executes the StartPage process of step S18.

ドライバプログラム66は、直接送信フラグの値が「ON」でないと判断すると(S16:No)、StartDoc処理を実行する(S17)。図7(B)を参照して、StartDoc処理の詳細について説明する。   If the driver program 66 determines that the value of the direct transmission flag is not "ON" (S16: No), it executes the StartDoc process (S17). Details of the StartDoc process will be described with reference to FIG. 7 (B).

[StartDoc処理]
OS64は、ドライバプログラム66に定義された各種関数を所定の順序で呼び出す。また、ドライバプログラム66は、OS64によって呼び出された関数に定義された処理を実行する。これらの処理の詳細は省略する。
[StartDoc processing]
The OS 64 calls various functions defined in the driver program 66 in a predetermined order. The driver program 66 also executes the process defined in the function called by the OS 64. The details of these processes are omitted.

OS64は、関数“DrvDocumentEvent()”を呼び出す(S81)。OS64は、定数“DOCUMENTEVENT_FIRST”を、関数“DrvDocumentEvent()”の引数として指定する。   The OS 64 calls the function "DrvDocumentEvent ()" (S81). The OS 64 designates the constant "DOCUMENT EVENT_FIRST" as an argument of the function "DrvDocumentEvent ()".

次に、ドライバプログラム66は、第1関数“DrvDocumentEvent()”が呼び出されたことに応じて、第1領域62Cに記憶された条件情報を読み出し、読み出した条件情報を第2領域62Dに記憶させ(S82)、関数“DrvDocumentEvent()”を終了する(S83)。すなわち、ドライバプログラム66は、ステップS82において、第1領域62Cから読み出された条件情報を第2領域62Dに記憶させる。   Next, in response to the first function "DrvDocumentEvent ()" being called, the driver program 66 reads out the condition information stored in the first area 62C, and stores the read out condition information in the second area 62D. (S82), the function "DrvDocumentEvent ()" is ended (S83). That is, in step S82, the driver program 66 stores the condition information read from the first area 62C in the second area 62D.

次に、OS64は、関数“DrvDocumentEvent()”を呼び出す(S84)。OS64は、定数“DOCUMENTEVENT_STARTDOCDOC”を、関数“DrvDocumentEvent()”の引数として指定する。ステップS84の処理は、ステップS81の処理より後に実行される。次に、関数“DrvDocumentEvent()”が呼び出されたドライバプログラム66は、先行コマンドを指定キューに記憶させる(S85)。   Next, the OS 64 calls a function "DrvDocumentEvent ()" (S84). The OS 64 designates the constant "DOCUMENTEVENT_STARTDOCDOC" as an argument of the function "DrvDocumentEvent ()". The process of step S84 is performed after the process of step S81. Next, the driver program 66 from which the function "DrvDocumentEvent ()" is called stores the preceding command in the designated queue (S85).

次に、ドライバプログラム66は関数“DrvDocumentEvent()”を終了する(S86)。次に、OS64は、関数“DrvDocumentEvent()”が終了したことに応じて(S86)、ドライバプログラム66に定義された関数“DrvStartDoc()”を呼び出す(S87)。OS64は、関数“DrvStartDoc()”の引数として指定された指定データID“コンテンツデータC”を関数“DrvStartDoc()”の引数として指定する。   Next, the driver program 66 ends the function "DrvDocumentEvent ()" (S86). Next, in response to the end of the function "DrvDocumentEvent ()" (S86), the OS 64 calls the function "DrvStartDoc ()" defined in the driver program 66 (S87). The OS 64 designates a designated data ID "content data C" designated as an argument of the function "DrvStartDoc ()" as an argument of the function "DrvStartDoc ()".

次に、ドライバプログラム66は、関数“DrvStartDoc()”が呼び出されたことに応じて、引数として指定された指定データID“コンテンツデータC”をジョブIDとするプリントジョブを、指定キューであるキュー領域67Aに生成して(S88)、関数“DrvStartDoc()”を終了する(S89)。上述のステップS72、S74、S76でキュー領域67Aに書き込まれる各種実行情報には、ジョブID“コンテンツデータC”が付加される。但し、ジョブID“コンテンツデータC”で識別されるプリントジョブは、この時点では指示情報を含んでいない。   Next, in response to the function “DrvStartDoc ()” being called, the driver program 66 is a queue, which is a designation queue, having a print job having a designated data ID “content data C” designated as an argument as a job ID. An area 67A is generated (S88), and the function "DrvStartDoc ()" is ended (S89). The job ID “content data C” is added to the various types of execution information written to the queue area 67A in the above-described steps S72, S74, and S76. However, the print job identified by the job ID “content data C” does not include instruction information at this time.

次に、OS64は、関数“DrvStartDoc()”が終了したことに応じて(S89)、関数“DrvDocumentEvent()”を呼び出す(S90)。OS64は、定数“DOCUMENTEVENT_STARTDOCPOST”を、関数“DrvDocumentEvent()”の引数として指定する。次に、ドライバプログラム66は、関数“DrvDocumentEvent()”が呼び出されたことに応じて、先行コマンドを指定キューから削除する(S91)。   Next, the OS 64 calls the function "DrvDocumentEvent ()" (S90) in response to the end of the function "DrvStartDoc ()" (S89). The OS 64 designates the constant "DOCUMENTEVENT_STARTDOCPOST" as an argument of the function "DrvDocumentEvent ()". Next, in response to the function "DrvDocumentEvent ()" being called, the driver program 66 deletes the preceding command from the designated queue (S91).

次に、ドライバプログラム66は、関数“DrvDocumentEvent()”を終了する(S92)。これにより、StartDoc処理が終了される。フローチャートには示されていないが、StartDoc処理の実行により、OS64によって、指定キューに記憶された先行コマンドが印刷ポートからプリンタ10に送信される。StartDoc処理は、準備指示処理の一例である。   Next, the driver program 66 ends the function "DrvDocumentEvent ()" (S92). This completes the StartDoc process. Although not shown in the flowchart, execution of the StartDoc process causes the OS 64 to transmit the preceding command stored in the designated queue from the print port to the printer 10. The StartDoc process is an example of the preparation instruction process.

図4に戻って、ドライバプログラム66は、StartDoc処理の実行後、上述のStartPage処理を実行する(S18)。次に、ドライバプログラム66は、全てのページに対してStartPage処理を実行したか否かを判断する(S19)。ドライバプログラム66は、全てのページに対してStartPage処理を実行していないと判断すると(S19:Yes)、次ページに対してStartPage処理を実行する(S18)。一方、ドライバプログラム66は、全てのページに対してStartPage処理を実行したと判断すると(S19:No)、EndDoc処理を実行する(S20)。EndDoc処理は、プリンタ10にプリント動作を実行させた後の後処理である。EndDoc処理は、周知の処理なので、詳細の説明は省略する。   Returning to FIG. 4, the driver program 66 executes the above-described StartPage processing after executing the StartDoc processing (S18). Next, the driver program 66 determines whether the StartPage process has been performed on all pages (S19). If the driver program 66 determines that the StartPage process has not been performed on all pages (S19: Yes), it executes the StartPage process on the next page (S18). On the other hand, when the driver program 66 determines that the StartPage process has been performed on all pages (S19: No), it executes the EndDoc process (S20). EndDoc processing is post-processing after the printer 10 executes a printing operation. Since the EndDoc process is a well-known process, the detailed description is omitted.

StartPage処理の実行により、OS64によって印刷ポートからプリントデータを含むプリント実行情報がプリンタ10に送信される。プリント実行情報、或いは、先行コマンド及びプリント実行情報を受信したプリンタ10は、プリント処理を実行する。図8を参照して、プリント処理の詳細について説明する。   Execution of the StartPage process causes the OS 64 to transmit print execution information including print data from the print port to the printer 10. The printer 10 having received the print execution information or the preceding command and the print execution information executes the print process. The details of the print process will be described with reference to FIG.

[プリント処理]
プリンタ10が実行する以下の各処理は、ROM32に記憶されているプログラムをCPU31が読み出して実行してもよいし、制御部30に搭載されたハードウェア回路によって実現されてもよい。プリント処理は、プリント動作の一例である。
[Print processing]
The following processes executed by the printer 10 may be realized by the CPU 31 reading and executing a program stored in the ROM 32 or may be realized by a hardware circuit mounted on the control unit 30. The print process is an example of the print operation.

プリンタ10の制御部30は、通信I/F25を通じてPC50から先行コマンドを受信したか、プリント実行情報を受信したかを判断する(S101)。先行コマンドは、上述のように、StartDoc処理の実行により、OS64によってプリンタ10に送信され、或いは、ステップS22の処理によって、ドライバプログラム66によってプリンタ10に送信される。プリント実行情報は、上述のStartPage処理の実行により、OS64によってプリンタ10に送信される。ステップS22の処理は、準備指示処理の一例である。   The control unit 30 of the printer 10 determines whether the preceding command has been received from the PC 50 through the communication I / F 25 or the print execution information has been received (S101). The preceding command is transmitted to the printer 10 by the OS 64 by execution of the StartDoc process, as described above, or transmitted to the printer 10 by the driver program 66 by the process of step S22. The print execution information is transmitted to the printer 10 by the OS 64 by the execution of the above-described StartPage process. The process of step S22 is an example of the preparation instruction process.

制御部30は、先行コマンドを受信したことに応じて(S101:先行コマンド)、電源部26が休眠状態か否かを判断する(S102)。制御部30は、例えば、電源部26の現在の状態を示すフラグ情報をRAM33或いはEEPROM34に記憶させておき、当該フラグ情報に基づいてステップS102の判断を行ってもよい。但し、ステップS72の判断の方法は、前述の例に限定されない。   In response to receiving the preceding command (S101: preceding command), the control unit 30 determines whether or not the power supply unit 26 is in the sleep state (S102). For example, the control unit 30 may store flag information indicating the current state of the power supply unit 26 in the RAM 33 or the EEPROM 34, and may make the determination in step S102 based on the flag information. However, the method of determination in step S72 is not limited to the above-described example.

次に、制御部30は、電源部26が休眠状態だと判断したことに応じて(S102:Yes)、電源部26を休眠状態から駆動状態に切り替える(S103)。より詳細には、制御部30は、HIGHレベルの電源信号を電源部26に出力する。一方、制御部30は、電源部26が駆動状態だと判断したことに応じて(S102:No)、ステップS103の処理をスキップする。   Next, in response to determining that the power supply unit 26 is in the sleep state (S102: Yes), the control unit 30 switches the power supply unit 26 from the sleep state to the drive state (S103). More specifically, control unit 30 outputs a power signal of HIGH level to power supply unit 26. On the other hand, in response to determining that the power supply unit 26 is in the driving state (S102: No), the control unit 30 skips the process of step S103.

次に、制御部30は、先行コマンドを受信したことをディスプレイ23を通じて報知する(S104)。制御部30は、例えば、ディスプレイ23のバックライトを所定の時間だけ点灯させればよい。   Next, the control unit 30 notifies that the preceding command has been received through the display 23 (S104). The control unit 30 may, for example, turn on the backlight of the display 23 only for a predetermined time.

次に、制御部30は、動作部20にプリント前動作を実行させる(S105)。プリント前動作は、プリント動作で所定品質の画像をシートに記録するために、プリンタ10が実行すべき動作である。プリント前動作は、例えば、ノズル面を覆うキャップを吐出部22から離間させるアンキャップ処理、シートが通過する領域外において吐出部22にインクを吐出させるフラッシング処理、電源部26の電源電圧を目標電圧に昇圧する昇圧処理等のうちの一部又は全部を含む。ステップS105の処理は、プリント前処理の一例である。   Next, the control unit 30 causes the operation unit 20 to execute the pre-printing operation (S105). The pre-printing operation is an operation that the printer 10 should execute in order to record an image of a predetermined quality on a sheet in the printing operation. The pre-printing operation includes, for example, an uncapping process of separating the cap covering the nozzle surface from the discharge unit 22, a flushing process of discharging the ink to the discharge unit 22 outside the area where the sheet passes, and a target voltage of the power supply unit 26. Or part or all of the boosting process and the like. The process of step S105 is an example of print pre-processing.

また、制御部30は、複数のプリント前動作それぞれに対応するフラグ情報を、RAM33或いはEEPROM34に記憶させておく。全てのフラグ情報には、プリント前処理の開始時点において、プリント前動作が終了していないことに対応する「OFF」が設定されている。そして、制御部30は、プリント前動作の1つが終了したことに応じて、プリント前動作が終了したことに対応する「ON」を、終了したプリント前動作に対応するフラグ情報に設定する。   In addition, the control unit 30 stores flag information corresponding to each of the plurality of pre-printing operations in the RAM 33 or the EEPROM 34. In all the flag information, "OFF" corresponding to the fact that the pre-printing operation is not completed at the start of the pre-printing process is set. Then, in response to the completion of one of the pre-printing operations, the control unit 30 sets “ON” corresponding to the completion of the pre-printing operation as flag information corresponding to the completed pre-printing operation.

次に、制御部30は、通信I/F25を通じてPC50からプリント実行情報を受信する(S101:プリント実行)。すなわち、制御部30は、給送指示情報、頭出し指示情報、吐出指示情報、搬送指示情報、吐出指示情報、・・・、排出指示情報を、通信I/F25を通じて情報処理端末50からこの順に受信する。   Next, the control unit 30 receives print execution information from the PC 50 through the communication I / F 25 (S101: print execution). That is, the control unit 30 controls the feeding instruction information, the positioning instruction information, the discharging instruction information, the conveying instruction information, the discharging instruction information,..., The discharging instruction information from the information processing terminal 50 through the communication I / F 25 in this order. To receive.

給送指示情報は、編集条件情報のトレイ情報で示される給送トレイから搬送部21にシートを給送させるための情報である。頭出し指示情報は、給送されたシートの最初の記録領域が吐出部22に対面する位置まで、当該シートを搬送部21に搬送させるための情報である。吐出指示情報は、吐出部22に対面されたシートの記録領域に対して画像を記録するために、吐出部22によるインクの吐出タイミングを示すための情報である。搬送指示情報は、次に画像を記録する記録領域が吐出部22に対面する位置まで、搬送部21にシートを搬送させるための情報である。排出指示情報は、画像が記録されたシートを搬送部21に排出させるための情報である。   The feed instruction information is information for causing the conveyance unit 21 to feed a sheet from the feed tray indicated by the tray information of the editing condition information. The cueing instruction information is information for causing the transport unit 21 to transport the sheet to a position where the first recording area of the fed sheet faces the discharge unit 22. The discharge instruction information is information for indicating the discharge timing of the ink by the discharge unit 22 in order to record an image on the recording area of the sheet facing the discharge unit 22. The conveyance instruction information is information for causing the conveyance unit 21 to convey the sheet to a position where a recording area for recording an image next faces the discharge unit 22. The discharge instruction information is information for causing the conveyance unit 21 to discharge the sheet on which the image is recorded.

次に、制御部30は、プリント実行情報に含まれるセキュアフラグの設定値を判断する(S106)。次に、制御部30は、セキュアフラグに「OFF」が設定されていると判断したことに応じて(S106:OFF)、プリント前処理が終了したか否かを判断する(S107)。より詳細には、制御部30は、プリント前動作に対応付けられた全てのフラグ情報に「ON」が設定されていることに応じて、プリント前処理が終了したと判断する(S107:Yes)。一方、制御部30は、プリント前動作に対応付けられた少なくとも1つのフラグ情報に「OFF」が設定されていることに応じて、プリント前処理が終了していないと判断する(S107:No)。   Next, the control unit 30 determines the setting value of the secure flag included in the print execution information (S106). Next, in response to having determined that the secure flag is set to "OFF" (S106: OFF), the control unit 30 determines whether or not the pre-print process has been completed (S107). More specifically, the control unit 30 determines that the pre-printing process has ended in response to the fact that "ON" is set to all the flag information associated with the pre-printing operation (S107: Yes). . On the other hand, the control unit 30 determines that the pre-printing process is not completed in response to the fact that "OFF" is set in at least one flag information associated with the pre-printing operation (S107: No) .

先行コマンドとプリント実行情報との受信間隔は、例えば、プリンタデータを生成する(S74)のドライバプログラム66の処理量、ネットワーク11の状態等によって変動する。すなわち、先行コマンドをトリガにして開始されたプリント前処理は、プリント実行情報を受信した時点で終了していない可能性がある。そこで、制御部30は、プリント前処理が終了していないと判断したことに応じて(S107:No)、プリント前処理が終了するまで後続の処理の実行を待機する。そして、制御部30は、プリント前処理が終了したと判断したことに応じて(S107:Yes)、受信したプリント実行情報に従ったプリント動作を動作部20に実行させる(S108〜S112)。   The reception interval between the preceding command and the print execution information varies depending on, for example, the processing amount of the driver program 66 that generates printer data (S74), the state of the network 11, and the like. That is, there is a possibility that the pre-printing process started by using the preceding command as a trigger is not completed when the print execution information is received. Therefore, in response to determining that the pre-print process is not completed (S107: No), the control unit 30 waits for the execution of the subsequent process until the pre-print process is completed. Then, in response to having determined that the pre-print processing has been completed (S107: Yes), the control unit 30 causes the operation unit 20 to execute the printing operation according to the received print execution information (S108 to S112).

まず、制御部30は、受信した給送指示情報に従った給送処理と、頭出し指示情報に従った頭出し処理とを実行する(S108)。すなわち、制御部30は、給送指示情報に示される給送トレイに収容されたシートを搬送部21に給送させる。次に、制御部30は、給送処理で給送されたシートを、頭出し指示情報に示される位置まで搬送部21に搬送させる。なお、これらの処理は、プリント前処理で実行されてもよい。   First, the control unit 30 executes a feeding process according to the received feeding instruction information and a cueing process according to the cue instruction information (S108). That is, the control unit 30 causes the conveyance unit 21 to feed the sheet accommodated in the feeding tray indicated by the feeding instruction information. Next, the control unit 30 causes the conveyance unit 21 to convey the sheet fed in the feeding process to the position indicated by the cue instruction information. Note that these processes may be performed in print pre-processing.

次に、制御部30は、受信した吐出指示情報に従った吐出処理を実行する(S109)。すなわち、制御部30は、主走査方向の一方から他方に吐出部22を移動させると共に、吐出指示情報に示される吐出タイミングで吐出部22にインクを吐出させる。次に、制御部30は、シートの全ての記録領域に画像を記録したか否かを判断する(S110)。換言すれば、制御部30は、直近のステップS109で用いた吐出指示情報の次に搬送指示情報及び排出指示情報のどちらを受信したかを判断する。   Next, the control unit 30 executes the discharge process according to the received discharge instruction information (S109). That is, the control unit 30 moves the discharge unit 22 from one side to the other in the main scanning direction, and causes the discharge unit 22 to discharge the ink at the discharge timing indicated by the discharge instruction information. Next, the control unit 30 determines whether the image is recorded in all the recording areas of the sheet (S110). In other words, the control unit 30 determines which of the transport instruction information and the discharge instruction information has been received next to the discharge instruction information used in the most recent step S109.

次に、制御部30は、シートの全ての記録領域に画像を記録していないと判断したことに応じて(S110:No)、受信した搬送指示情報に従った搬送処理を実行する(S111)。すなわち、制御部30は、搬送指示情報に示される搬送量だけ搬送部21にシートを搬送させる。制御部30は、シートの全ての記録領域に画像を記録するまで(S110:No)、ステップS109〜S111の処理を繰り返し実行する。   Next, in response to determining that the image is not recorded in all the recording areas of the sheet (S110: No), the control unit 30 executes the conveyance process according to the received conveyance instruction information (S111) . That is, the control unit 30 causes the conveyance unit 21 to convey the sheet by the conveyance amount indicated by the conveyance instruction information. The control unit 30 repeatedly executes the processing of steps S109 to S111 until the image is recorded in all the recording areas of the sheet (S110: No).

そして、制御部30は、シートの全てのプリント領域に画像をプリントしたと判断したことに応じて(S110:Yes)、受信した排出指示情報に従った排出処理を実行する(S112)。すなわち、制御部30は、画像がプリントされたシートを搬送部21にプリンタ10の外部へ排出させる。なお、指定コンテンツデータに複数のページデータが含まれる場合、ステップS108〜S112の処理が繰り返し実行される。これにより、ステップS74で生成されたプリントデータで示される画像、換言すれば、指定コンテンツデータで示される画像がシートにプリントされる。   Then, when it is determined that the image has been printed in all the print areas of the sheet (S110: Yes), the control unit 30 executes the discharge process according to the received discharge instruction information (S112). That is, the control unit 30 causes the conveyance unit 21 to discharge the sheet on which the image is printed out of the printer 10. When a plurality of page data is included in the designated content data, the processes of steps S108 to S112 are repeatedly executed. Thus, the image indicated by the print data generated in step S74, in other words, the image indicated by the designated content data, is printed on the sheet.

一方、制御部30は、セキュアフラグに「ON」が設定されていると判断したことに応じて(S106:ON)、認証情報の入力を入力I/F24を通じて受け付ける。そして、制御部30は、入力I/F24を通じて入力された認証情報と、プリント実行情報に含まれる認証情報とが一致するか否かを判断する(S113)。次に、制御部30は、2つの認証情報が一致したと判断したことに応じて(S113:Yes)、プリント前処理を実行する(S114)。そして、制御部30は、プリント前処理が終了したことに応じて、ステップS108以降の処理を実行する。一方、制御部30は、2つの認証情報が不一致と判断したことに応じて(S113:No)、ユーザに認証情報を再び入力させる。   On the other hand, in response to having determined that the secure flag is set to “ON” (S106: ON), the control unit 30 accepts input of authentication information through the input I / F 24. Then, the control unit 30 determines whether the authentication information input through the input I / F 24 matches the authentication information included in the print execution information (S113). Next, in response to determining that the two pieces of authentication information match (S113: Yes), the control unit 30 executes pre-print processing (S114). Then, in response to the end of the pre-printing process, the control unit 30 executes the process after step S108. On the other hand, in response to determining that the two pieces of authentication information do not match (S113: No), the control unit 30 causes the user to input the authentication information again.

[本実施形態の作用効果]
本実施形態では、プリント指示情報が示すプリンタ10が共有プリンタであるか否かと、プリンタ10との通信に要する時間を示す参照通信時間T2との少なくとも一方を用いて、プリント前動作の開始を先行コマンドによってプリンタ10に指示するか否かが判断される。したがって、プリント前動作の開始を指示する先行コマンドを送信するか否かを適切に判断することができる。
[Operation and effect of this embodiment]
In the present embodiment, the start of the pre-printing operation is preceded by using at least one of whether the printer 10 indicated by the print instruction information is a shared printer and the reference communication time T2 indicating the time required for communication with the printer 10. Whether or not to instruct the printer 10 is determined by the command. Therefore, it can be appropriately determined whether or not to send a preceding command instructing the start of the pre-printing operation.

また、本実施形態では、プリンタ10がプリント前処理を行ってからプリント前処理を行う前の状態に戻るまでの復帰時間T1が、プリントデータの生成及び送信に要する時間よりも長いと推定される場合、先行コマンドは送信されない。したがって、プリンタ10において、インクが乾いて印刷品質が低下したり、乾いたインクを排出してインクが無駄に消費されたり、或いは、無駄な電力が消費されるということが抑制される。   Further, in the present embodiment, it is estimated that the recovery time T1 from the printer 10 performing the pre-printing process to the state before performing the pre-printing process is longer than the time required for print data generation and transmission. If so, no prior command is sent. Therefore, in the printer 10, it is possible to suppress that the ink is dried and the print quality is degraded, the dried ink is discharged, and the ink is consumed wastefully, or the useless power is consumed.

また、本実施形態では、プリント指示情報が示すプリンタ10が共有プリンタ10である場合、プリントデータが印刷ポート及びPC70を介さず、共有プリンタ10に直接送信される。したがって、PC70が先行コマンドを誤ってプリントデータと判断してプリント枚数が意図せず増加してしまうことが防止される。   In the present embodiment, when the printer 10 indicated by the print instruction information is the shared printer 10, the print data is directly transmitted to the shared printer 10 without passing through the print port and the PC 70. Therefore, it is prevented that the PC 70 erroneously determines the preceding command as print data and the number of prints unintentionally increases.

また、本実施形態では、ユーザの入力を受け付ける第1オブジェクト、第2オブジェクト、及び第3オブジェクトがディスプレイに表示され、ユーザ入力の設定に従って、先行コマンドが送信されるか否かが判断される。したがって、先行コマンドを送信するか否かのユーザの意図が反映されて先行コマンドを送信するか否かが判断される   Furthermore, in the present embodiment, the first object, the second object, and the third object that receive the user's input are displayed on the display, and it is determined whether or not the preceding command is transmitted according to the setting of the user input. Therefore, it is determined whether or not to transmit the preceding command, reflecting the user's intention as to whether or not to transmit the preceding command.

[変形例1]
上述の実施形態では、ポート設定画面においてユーザが設定したポート設定情報と、管理者が設定した管理情報とに応じてドライバプログラム66が先行コマンドフラグに「ON」を設定するか「OFF」を設定するかを判断する例を説明した。本変形例では、ユーザによるポート設定情報の設定及びPC40の管理者による管理情報の設定を受け付けず、ドライバプログラム66が先行コマンドを送信するか否かを判断する例を説明する。
[Modification 1]
In the above embodiment, the driver program 66 sets "ON" or "OFF" in the preceding command flag according to the port setting information set by the user on the port setting screen and the management information set by the administrator. An example of determining whether to In this modification, an example will be described in which the driver program 66 determines whether to transmit a preceding command without accepting the setting of port setting information by the user and the setting of management information by the administrator of the PC 40.

本変形例では、ドライバプログラム66は、共有プリンタの場合の判断処理(図5(A))に代えて、図10に示される共有プリンタの場合の判断処理を実行する。その他の処理は、実施形態で説明した処理と同じである。なお、実施形態と同一の処理については、実施形態と同一の符号を付して、一部の説明を省略する。   In the present modification, the driver program 66 executes the determination process for the shared printer shown in FIG. 10 in place of the determination process (FIG. 5A) for the shared printer. The other processes are the same as the processes described in the embodiment. In addition, about the process same as embodiment, the code | symbol same as embodiment is attached | subjected and one part description is abbreviate | omitted.

図10に示される共有プリンタの場合の判断処理において、ドライバプログラム66は、プリント指示情報が示す共有プリンタ10に設定された印刷ポートが「USB」であるか「LAN」であるかを、印刷ポート名から判断する(S45)。すなわち、ステップS45では、プリント指示情報が示すプリンタ10とケーブル12で接続されているかLANで接続されているかが判断される。ステップS45の処理は、判断処理の一例である。   In the determination process in the case of the shared printer shown in FIG. 10, the driver program 66 determines whether the print port set in the shared printer 10 indicated by the print instruction information is “USB” or “LAN”. It judges from the name (S45). That is, in step S45, it is determined whether the printer 10 indicated by the print instruction information is connected by the cable 12 or by the LAN. The process of step S45 is an example of the determination process.

ドライバプログラム66は、プリント指示情報が示すプリンタ10に設定された印刷ポートが「USB」であると判断すると(S45:USB)、先行コマンドフラグに「ON」を設定し(S43)、共有プリンタの場合の判断処理を終了する。一方、ドライバプログラム66は、プリント指示情報が示すプリンタ10に設定された印刷ポートが「LAN」であると判断すると(S45:「LAN」)、プリント指示情報が示すプリンタ10が有線LANによってネットワーク11に接続されているか、無線LANによってネットワーク11に接続されているかを判断する(S57)。ステップS57の処理は、判断処理の一例である。   If the driver program 66 determines that the print port set in the printer 10 indicated by the print instruction information is "USB" (S45: USB), it sets "ON" to the preceding command flag (S43), and The determination process of the case ends. On the other hand, when the driver program 66 determines that the print port set in the printer 10 indicated by the print instruction information is "LAN" (S45: "LAN"), the printer 10 indicated by the print instruction information indicates the network 11 by the wired LAN. It is determined whether it is connected to the network 11 or by the wireless LAN (S57). The process of step S57 is an example of the determination process.

ドライバプログラム66は、プリント指示情報が示すプリンタ10が有線LANによってネットワーク11に接続されていると判断すると、実施形態と同様に、ステップS52からS54の処理を実行する。ドライバプログラム66は、ステップS54の処理において、参照通信時間T2とメモリ62に記憶された所定の時間T3とを和算した時間が復帰時間T1未満でないと判断すると、先行コマンドフラグに「OFF」を設定し(S59)、共有プリンタの場合の判断処理を終了する。ステップS54の処理は、判断処理の一例である。   If the driver program 66 determines that the printer 10 indicated by the print instruction information is connected to the network 11 by the wired LAN, the processes from steps S52 to S54 are performed as in the embodiment. When the driver program 66 determines that the time obtained by summing the reference communication time T2 and the predetermined time T3 stored in the memory 62 is not less than the recovery time T1 in the process of step S54, the preceding command flag is "OFF". The setting is made (S59), and the determination processing in the case of the shared printer is ended. The process of step S54 is an example of the determination process.

一方、ドライバプログラム66は、参照通信時間T2と所定の時間T3とを和算した時間が復帰時間T1未満であると判断すると、先行コマンドフラグに「ON」を設定し、かつ、直接送信フラグに「ON」を設定し(S55)、共有プリンタの場合の判断処理を終了する。   On the other hand, when the driver program 66 determines that the time obtained by summing the reference communication time T2 and the predetermined time T3 is less than the recovery time T1, the driver program 66 sets the preceding command flag to "ON" and the direct transmission flag. "ON" is set (S55), and the determination processing in the case of the shared printer is ended.

また、ドライバプログラム66は、ステップS57の処理において、プリント指示情報が示すプリンタ10が有線LANによってネットワーク11に接続されているか、無線LANによってネットワーク11に接続されているかが不明であると判断すると(S57:不明)、先行コマンドフラグに「OFF」を設定し、共有プリンタの場合の判断処理を終了する。   When the driver program 66 determines in the process of step S57 that it is unclear whether the printer 10 indicated by the print instruction information is connected to the network 11 by the wired LAN or connected to the network 11 by the wireless LAN ( S57: Unknown), the preceding command flag is set to "OFF", and the determination processing in the case of the shared printer is ended.

[変形例1の効果]
本変形例では、ユーザや管理者の設定に拠らず、先行コマンドを出力するか否かをドライバプログラム66が判断するので、ユーザや管理者が設定条件を入力する手間を低減することができる。
[Effect of Modification 1]
In this modification, the driver program 66 determines whether or not to output the preceding command regardless of the setting of the user or the administrator, so that the time for the user or the administrator to input the setting conditions can be reduced. .

一般に、無線LAN接続では、通信のリトライや再接続が有線LAN接続よりも多く発生する。すなわち、無線LAN接続は、有線LAN接続よりもデータの受け渡しに時間を要することがある。本変形例では、プリンタ10とPC50とが有線LAN接続されている場合、先行コマンドが送信される。一方、プリンタ10とPC50とが無線LAN接続されている場合、先行コマンドが送信されない。すなわち、プリンタ10が先行コマンドを受信してからプリントデータを受信するまでの時間が長くなるおそれがある無線LAN接続では、先行コマンドは送信されない。したがって、プリンタ10において、インクが乾いて印刷品質が低下したり、乾いたインクを排出してインクが無駄に消費されたり、或いは、無駄な電力が消費されるということが抑制される。   Generally, in the wireless LAN connection, communication retries and reconnection occur more frequently than in the wired LAN connection. That is, wireless LAN connection may take more time to pass data than wired LAN connection. In the present modification, when the printer 10 and the PC 50 are connected by wired LAN, the preceding command is transmitted. On the other hand, when the printer 10 and the PC 50 are connected by wireless LAN, the preceding command is not transmitted. That is, in the wireless LAN connection in which the time from the reception of the preceding command by the printer 10 to the reception of the print data may be long, the preceding command is not transmitted. Therefore, in the printer 10, it is possible to suppress that the ink is dried and the print quality is degraded, the dried ink is discharged, and the ink is consumed wastefully, or the useless power is consumed.

[変形例2]
実施形態で説明した図4に示されるステップS11〜S16、ステップS21、S22、及び図7(B)に示されるステップS85の処理は、図7(B)で説明したStartDoc処理の一部(サブルーチン)として実行されてもよい。本変形例では、図11(A)に示されたStartDoc処理を説明する。なお、実施形態と同様の処理については、実施形態と同一の符号を付して、説明を省略する。
[Modification 2]
The processes of steps S11 to S16, steps S21 and S22 shown in FIG. 4 described in the embodiment, and step S85 shown in FIG. 7B are a part of the StartDoc process described in FIG. May be implemented as In this modification, the StartDoc process shown in FIG. 11A will be described. In addition, about the process similar to embodiment, the code | symbol same as embodiment is attached | subjected and description is abbreviate | omitted.

図11(A)に示されるStartDoc処理では、ステップS85(図7(B))に代えて、図4に示されるステップS11〜S16、ステップS21、S22、及び図7(B)に示されるステップS85の処理を実行するサブルーチンであるステップS93の先行コマンド処理が実行される点において、図7(B)に示されるStartDoc処理と相違する。図11(A)に示されるStartDoc処理におけるその他の処理(S81〜S84、S86〜S92)は、図7(B)に示されるStartDoc処理と同じである。   In the StartDoc process shown in FIG. 11A, steps S11 to S16, steps S21 and S22 shown in FIG. 4 and steps shown in FIG. 7B are substituted for step S85 (FIG. 7B). This is different from the StartDoc process shown in FIG. 7B in that the preceding command process of step S93, which is a subroutine for executing the process of S85, is executed. The other processes (S81 to S84 and S86 to S92) in the StartDoc process shown in FIG. 11A are the same as the StartDoc process shown in FIG. 7B.

ステップS93の先行コマンド処理について、図11(B)を参照して説明する。先行コマンド処理では、ドライバプログラム66は、実施形態のプリント指示処理(図4)と同様に、ステップS11〜S15の処理を実行する。ドライバプログラム66は、プリント指示を受け付けていないと判断し(S11:No)、或いは、プリントデータが存在すると判断し(S12:Yes)、或いは、セキュアプリントであると判断し(S13:Yes)、或いは、先行コマンドフラグが「ON」でないと判断すると(S15:No)、先行コマンド処理を終了する。   The preceding command processing in step S93 will be described with reference to FIG. In the preceding command processing, the driver program 66 executes the processing of steps S11 to S15 as in the print instruction processing (FIG. 4) of the embodiment. The driver program 66 determines that a print instruction has not been received (S11: No), or determines that print data exists (S12: Yes), or determines that it is secure print (S13: Yes), Alternatively, if it is determined that the preceding command flag is not "ON" (S15: No), the preceding command processing is ended.

一方、ドライバプログラム66は、ステップS15において、先行コマンドフラグが「ON」であると判断すると(S15:Yes)、実施形態と同様に、直接送信フラグが「ON」であるか否かを判断する(S16)。ドライバプログラム66は、直接送信フラグが「ON」であると判断すると(S16:Yes)、実施形態と同様に、ステップS21、S22の処理を実行し、先行コマンド処理を終了する。一方、ドライバプログラム66は、直接送信フラグが「ON」でないと判断すると(S16:No)、実施形態と同様に、先行コマンドを指定キューに記憶させ(S85)、先行コマンド処理を終了する。   On the other hand, when the driver program 66 determines in step S15 that the preceding command flag is "ON" (S15: Yes), it determines whether the direct transmission flag is "ON" as in the embodiment. (S16). When the driver program 66 determines that the direct transmission flag is "ON" (S16: Yes), the processing of steps S21 and S22 is performed as in the embodiment, and the preceding command processing is ended. On the other hand, when the driver program 66 determines that the direct transmission flag is not "ON" (S16: No), the preceding command is stored in the designated queue (S85) as in the embodiment, and the preceding command processing is ended.

ドライバプログラム66は、先行コマンド処理の実行後(S93)、実施形態と同様に、ステップS86〜S92の処理を実行し、StartDoc処理を終了する。ドライバプログラム66は、StartDoc処理の実行後、実施形態で説明したステップS18〜S20の処理を実行する。   After executing the preceding command process (S93), the driver program 66 executes the processes of steps S86 to S92 as in the embodiment, and ends the StartDoc process. The driver program 66 executes the processing of steps S18 to S20 described in the embodiment after the execution of the StartDoc processing.

上述したように、本変形例2でドライバプログラム66が実行する処理の内容は、実施形態と同一であり、ステップS11〜S16及びステップS21、S22の処理が、StartDoc処理の一部として実行されるか否かが実施形態と相違する。すなわち、プリンタドライバ66は、先行コマンドを出力するか否かを判断する先行コマンド出力判断処理(S14、図5(A))を、適切なタイミングで実行すればよい。すなわち、本変形例2は、プリンタドライバ66が先行コマンド出力判断処理を実行するタイミングを示す他の例である。   As described above, the contents of the process executed by the driver program 66 in the second modification are the same as in the embodiment, and the processes of steps S11 to S16 and steps S21 and S22 are performed as part of the StartDoc process. Whether or not it is different from the embodiment. That is, the printer driver 66 may execute the preceding command output determination processing (S14, FIG. 5A) for determining whether to output the preceding command at an appropriate timing. That is, the second modification is another example showing the timing when the printer driver 66 executes the preceding command output determination process.

[その他の変形例]
上述の実施形態や変形例では、プリント指示情報が示すプリンタ10が共有プリンタ10であるか否か、及び、参照通信時間T2と所定の時間T3とを和算した時間が復帰時間T1未満か否かによって、先行コマンドフラグの値を設定する例を説明した。しかしながら、プリント指示情報が示すプリンタ10が共有プリンタ10であるか否かのみによって、或いは、参照通信時間T2と所定の時間T3とを和算した時間が復帰時間T1未満か否かのみによって、先行コマンドフラグの値が設定されてもよい。
[Other modifications]
In the above-described embodiment and modification, whether or not the printer 10 indicated by the print instruction information is the shared printer 10, and whether the time obtained by adding the reference communication time T2 and the predetermined time T3 is less than the recovery time T1. Described an example of setting the value of the preceding command flag. However, only by whether the printer 10 indicated by the print instruction information is the shared printer 10 or only by whether the time obtained by adding the reference communication time T2 and the predetermined time T3 is less than the recovery time T1 The value of the command flag may be set.

また、上述の実施形態や変形例では、プリント指示情報が示すプリンタ10が共有プリンタ10であって、かつ、先行コマンドフラグに「ON」を設定して先行コマンドを送信に決定する場合、直接送信フラグに「ON」を設定して、印刷ポート及びPC70を介さずにプリント実行情報が共有プリンタ10に送信される例を説明した。しかしながら、共有プリンタ10であることに応じて、一律に先行コマンドフラグに「OFF」を設定し、先行コマンドを送信しないことに決定してもよい。   In the above-described embodiment and modification, direct transmission is performed when the printer 10 indicated by the print instruction information is the shared printer 10 and the preceding command flag is set to "ON" and the preceding command is determined to be transmitted. The example in which the print execution information is transmitted to the shared printer 10 without the print port and the PC 70 by setting the flag “ON” has been described. However, according to the shared printer 10, it is also possible to uniformly set "OFF" in the preceding command flag and decide not to transmit the preceding command.

また、上述の実施形態や変形例では、PINGコマンドを用いて通信参照時間を測定する例を説明した。しかしながら、PINGコマンドを用いず、ドライバプログラム66が、リクエスト情報を共有プリンタ10のアドレス宛に送信し、共有プリンタ10からの返送を受信するまでの時間をカウントしてもよい。   Moreover, in the above-mentioned embodiment and modification, the example which measures communication reference time using a PING command was explained. However, without using the PING command, the driver program 66 may transmit the request information to the address of the shared printer 10 and count the time until the return from the shared printer 10 is received.

また、上述の実施形態や変形例では、ポート設定情報入力画面が、「ポート設定」の文字と、「共有時でも先行コマンドを出力する印刷ポート情報」の文字と、「USBポートの場合には、先行コマンドを送信する」の文字及びチェックボックスと、「LANポートの場合の切り替え条件」の文字及びチェックボックスと、「有線/無線の情報で切り替える」の文字及びラジオボタンと、「有線であれば出力する」の文字及びチェックボックスと、「無線であれば出力する」の文字及びチェックボックスと、「プリンタとの通信速度を測定して切り替える」の文字及びラジオボタンとを有する例を説明した。しかしながら、上述の複数のラジオボタン及びチェックボックスの全てがポート設定画面に設けられる必要はなく、いずれかのラジオボタンやチェックボックスがポート設定画面に設けられていてもよい。   Further, in the above-described embodiment and modification, the port setting information input screen includes the characters "port setting", the characters "print port information for outputting preceding command even when sharing", and "USB port". , Send the preceding command, the check box, the character and check box of "switch condition in case of LAN port", the character and the radio button of "switch with wired / wireless information", and "wired" An example is described that includes the following characters: “output” and the check box, “output when wireless” and the check box, and “character to change the communication speed with the printer and switching” and the radio button. . However, it is not necessary for all of the plurality of radio buttons and check boxes described above to be provided in the port setting screen, and any radio button or check box may be provided in the port setting screen.

10・・・プリンタ
23,53・・・ディスプレイ
24,54・・・入力I/F
25,55・・・通信I/F
30・・・制御部
31,61・・・CPU
32・・・ROM
50・・・PC
62・・・メモリ
66・・・ドライバプログラム
70・・・PC
10: Printer 23, 53: Display 24, 54: input I / F
25, 55 ··· Communication I / F
30: Control unit 31, 61: CPU
32 ・ ・ ・ ROM
50 ・ ・ ・ PC
62: Memory 66: Driver program 70: PC

Claims (8)

通信インタフェースを備えるコンピュータによって読み取り可能なドライバプログラムであって、
該ドライバプログラムは、前記コンピュータのOSからプリント指示を含むプリント指示情報を受け付けるプリント指示受付処理を前記コンピュータに実行させ、前記プリント指示は、プリンタにプリント動作を実行させる指示がユーザによって入力されたことを示し、
該ドライバプログラムは、前記プリント指示受付処理で前記プリント指示を受け付けたことに応じて、プリント前動作の開始を準備指示情報によって指示するか否かを判断する判断処理を前記コンピュータに実行させ、前記プリント前動作は、前記プリント動作の前に、前記プリンタによって前記プリント動作の準備を行う動作であり、前記準備指示情報は、前記プリント動作の指示に先行して前記プリンタに送信される情報であり、
該ドライバプログラムは、
前記プリント前動作を指示すると前記判断処理で判断したことに応じて、前記通信インタフェースを通じて前記プリンタに前記準備指示情報を送信する準備指示処理と、
前記プリント前動作を指示すると前記判断処理で判断し且つ前記準備指示処理を実行したことに応じて、ユーザによって指定されたコンテンツデータに基づいて、前記プリント動作の対象となるプリントデータを生成する生成処理と、
前記通信インタフェースを通じて前記プリンタにプリント実行情報を送信するプリント実行指示処理とを前記コンピュータに実行させ、前記プリント実行情報は、前記生成処理で生成した前記プリントデータに対する前記プリント動作の実行を指示するための情報であり、
該ドライバプログラムは、前記プリント指示情報に含まれる情報と、前記プリンタとの通信に要する時間を示す参照通信時間との少なくとも一方を用いて、前記プリント前動作の開始を前記準備指示情報によって指示するか否かを判断する前記判断処理を前記コンピュータに実行させるドライバプログラム。
A computer readable driver program comprising a communication interface, the driver program comprising:
The driver program causes the computer to execute print instruction acceptance processing for receiving print instruction information including a print instruction from the OS of the computer, and the user inputs an instruction to cause the printer to execute a print operation. Show,
The driver program causes the computer to execute a determination process of determining whether or not start of the pre-printing operation is instructed by preparation instruction information in response to acceptance of the print instruction in the print instruction acceptance process. The pre-printing operation is an operation for preparing the printing operation by the printer before the printing operation, and the preparation instruction information is information transmitted to the printer prior to the instruction of the printing operation. ,
The driver program is
A preparation instruction process of transmitting the preparation instruction information to the printer through the communication interface according to the determination in the determination process that the pre-printing operation is instructed;
The print data to be the target of the print operation is generated based on the content data designated by the user according to the judgment that the pre-print operation is instructed in the judgment process and the preparation instruction process is executed. Processing and
In order to cause the computer to execute a print execution instruction process of transmitting print execution information to the printer through the communication interface, the print execution information is for instructing the execution of the print operation on the print data generated in the generation process. Information, and
The driver program instructs the start of the pre-printing operation by the preparation instruction information using at least one of information included in the print instruction information and a reference communication time indicating a time required for communication with the printer. And a driver program for causing the computer to execute the determination process of determining whether or not it is determined.
該ドライバプログラムは、前記プリント指示情報に含まれる情報であって、前記プリンタが情報処理装置を通じて前記プリントデータを受信する共有プリンタであるか否かを示す第1情報に基づいて、前記プリンタが前記共有プリンタでないことに応じて、前記プリント前動作の開始を前記準備指示情報によって指示すると判断し、前記プリンタが前記共有プリンタであることに応じて、前記プリント前動作の開始を指示しないと判断する前記判断処理を前記コンピュータに実行させる請求項1に記載のドライバプログラム。   The driver program is the information included in the print instruction information, and the printer uses the driver program based on first information indicating whether the printer is a shared printer that receives the print data through an information processing apparatus. According to the fact that the printer is not a shared printer, it is determined that the start of the pre-printing operation is instructed by the preparation instruction information, and it is determined that the start of the pre-printing operation is not instructed according to the fact that the printer is the shared printer. The driver program according to claim 1, which causes the computer to execute the determination process. 該ドライバプログラムは、前記プリント指示情報に含まれる情報であって、前記プリンタと1対1対応でローカル接続されているかネットワークにネットワーク接続されているかを示す第2情報に基づいて、前記プリンタと前記コンピュータとがローカル接続されていると判断したことに応じて、前記プリント前動作の開始を前記準備指示情報によって指示すると判断する前記判断処理を前記コンピュータに実行させる請求項1または2に記載のドライバプログラム。   The driver program is information included in the print instruction information, and based on second information indicating whether the printer is locally connected in a one-to-one correspondence with the printer or connected to a network. The driver according to claim 1 or 2, wherein the driver makes the computer execute the determination process of determining start of the pre-printing operation according to the preparation instruction information according to determining that the computer is locally connected. program. 該ドライバプログラムは、前記第2情報に基づいて、前記プリンタと前記ネットワークを通じて接続されていると判断したことに応じて、前記第2情報に基づいて、前記プリンタと有線接続されているか無線接続されているかを判断し(S117)、有線接続されていると判断したことに応じて、前記プリント前動作の開始を前記準備指示情報によって指示すると判断し、無線接続されていると判断したことに応じて、前記プリント前動作の開始を指示しないと判断する前記判断処理を前記コンピュータに実行させる請求項3に記載のドライバプログラム。   The driver program is wire-connected to or wirelessly connected to the printer based on the second information in response to determining that the printer is connected to the printer through the network based on the second information. (S117), and it is determined that the start of the pre-printing operation is instructed by the preparation instruction information according to the determination that the wired connection is established, and the determination is made that the wireless connection is established. 4. The driver program according to claim 3, causing the computer to execute the determination process of determining that the start of the pre-printing operation is not instructed. 該ドライバプログラムは、
前記プリンタが前記プリント前動作を実行して待機状態からプリント実行可能状態に移行した後、前記待機状態に戻るまでの時間を示す復帰時間の送信を要求する第1要求情報を前記プリンタに送信して前記復帰時間を取得する取得処理と、
前記プリント指示受付処理で前記プリント指示情報を受け付けたことに応じて、応答を返信することを要求する第2要求情報を前記プリンタに送信し、前記第2要求情報を送信してから前記応答を受信するまでの時間である前記参照通信時間を計測することを要求する第3情報を生成して前記OSに出力し、
前記第3情報の出力後、前記参照通信時間を前記OSから取得し、
取得した前記参照通信時間に応じた時間が前記取得処理で取得した前記復帰時間未満であるか否かを判断し、
前記参照通信時間に応じた時間が前記復帰時間未満であることに応じて、前記プリント前動作の開始を前記準備指示情報によって指示すると判断し、
前記参照通信時間に応じた時間が前記復帰時間以上であることに応じて、前記プリント前動作の開始を指示しないと判断する前記判断処理を前記コンピュータに実行させる請求項1から4のいずれかに記載のドライバプログラム。
The driver program is
The printer transmits, to the printer, first request information requesting transmission of a recovery time indicating a time until the printer returns to the standby state after the printer performs the pre-printing operation and shifts from the standby state to the print executable state. Acquisition processing for acquiring the return time;
In response to acceptance of the print instruction information in the print instruction acceptance process, the printer transmits second request information requesting return of a response to the printer, transmits the second request information, and then transmits the response. Generating third information requesting measurement of the reference communication time, which is the time until reception, and outputting the third information to the OS;
After the output of the third information, the reference communication time is acquired from the OS,
It is determined whether a time corresponding to the acquired reference communication time is less than the recovery time acquired by the acquisition process,
It is determined that the start of the pre-printing operation is instructed by the preparation instruction information according to the fact that the time corresponding to the reference communication time is less than the return time,
The computer-readable storage medium according to any one of claims 1 to 4, wherein the determination processing is performed to determine that the start of the pre-printing operation is not instructed according to the time corresponding to the reference communication time being equal to or longer than the recovery time. Driver program described.
該ドライバプログラムは、
前記プリント指示情報に含まれる情報であって、前記プリンタが情報処理装置を通じて前記プリントデータを受信する共有プリンタであるか否かを示す第1情報に基づいて、前記プリンタが前記共有プリンタであるか否かを判断し、
前記プリンタが前記共有プリンタであると判断し、かつ、前記プリント前動作を指示すると前記判断処理で判断し、かつ、前記プリンタと1対1対応でローカル接続されていると判断したことに応じて、前記準備指示情報を前記OSに出力し、前記OSを介して、前記プリンタに前記準備指示情報を送信し、
前記プリンタが前記共有プリンタでないと判断し、かつ、前記プリント前動作を指示すると前記判断処理で判断し、かつ、前記プリンタと前記ネットワークにネットワーク接続されていると判断したことに応じて、前記準備指示情報及び前記プリンタの送信アドレスを含む送信情報を生成し、生成した送信情報を前記通信インタフェースを通じて前記プリンタに送信する前記準備指示処理を前記コンピュータに実行させる請求項1から5のいずれかに記載のドライバプログラム。
The driver program is
Whether the printer is the shared printer based on first information which is information included in the print instruction information and which indicates whether the printer is the shared printer that receives the print data through the information processing apparatus Judge whether or not
According to the fact that the printer is determined to be the shared printer and the pre-print operation is instructed in the determination process, and it is determined that the printer is locally connected to the printer in a one-to-one correspondence. Outputting the preparation instruction information to the OS, and transmitting the preparation instruction information to the printer via the OS;
If the printer determines that the printer is not the shared printer and instructs the pre-print operation, the determination processing determines that the printer and the network are connected to the network, the preparation is made. The method according to any one of claims 1 to 5, wherein the preparation instruction process of generating transmission information including instruction information and a transmission address of the printer and transmitting the generated transmission information to the printer through the communication interface is executed by the computer. Driver program.
該ドライバプログラムは、
前記プリンタと前記コンピュータとがUSB接続されている場合に前記準備指示情報の送信を実行するか否かの設定を受け付ける第1オブジェクトと、
前記プリンタと前記コンピュータとが有線LAN接続されている場合に前記準備指示情報の送信を実行するか否かの設定を受け付ける第2オブジェクトと、
前記プリンタと前記コンピュータとが無線LAN接続されている場合に前記準備指示情報の送信を実行するか否かの設定を受け付ける第3オブジェクトと、を含む設定画面を前記コンピュータのディスプレイに表示させる表示処理と、
前記第1オブジェクト、前記第2オブジェクト、及び前記第3オブジェクトを用いたユーザ設定に基づいて、前記判断処理を前記コンピュータに実行させる請求項1から6のいずれかに記載のドライバプログラム。
The driver program is
A first object that receives a setting as to whether or not to transmit the preparation instruction information when the printer and the computer are connected via USB;
A second object that receives a setting as to whether or not to transmit the preparation instruction information when the printer and the computer are connected via a wired LAN;
A display process for causing a display of the computer to display a setting screen including a third object that receives a setting as to whether or not to transmit the preparation instruction information when the printer and the computer are connected by wireless LAN When,
The driver program according to any one of claims 1 to 6, causing the computer to execute the determination process based on user settings using the first object, the second object, and the third object.
通信インタフェース及びコントローラを備えるコンピュータであって、
前記コントローラは、プリンタにプリント動作を実行させる指示がユーザによって入力されたことを示すプリント指示を含むプリント指示情報を生成する第1生成処理と、
前記プリント動作の前に、前記プリンタによって実行される動作であるプリント前動作の開始を、前記プリント動作の指示に先行して前記プリンタに送信される情報である準備指示情報によって指示するか否かを判断する判断処理と、
前記プリント前動作を指示すると前記判断処理で判断したことに応じて、前記通信インタフェースを通じて前記プリンタに前記準備指示情報を送信する準備指示処理と、
前記プリント前動作を指示すると前記判断処理で判断し且つ前記準備指示処理を実行したことに応じて、ユーザによって指定されたコンテンツデータに基づいて、前記プリント動作の対象となるプリントデータを生成する第2生成処理と、
前記通信インタフェースを通じて、前記第2生成処理で生成した前記プリントデータに対する前記プリント動作の実行を指示するための情報であるプリント指示情報を前記プリンタに送信するプリント実行指示処理と、を実行し、
前記コントローラは、前記第1生成処理で生成した前記プリント指示情報に含まれる情報と、前記プリンタとの通信に要する時間を示す参照通信時間との少なくとも一方を用いて、前記プリント前動作の開始を前記準備指示情報によって指示するか否かを判断する前記判断処理を実行するコンピュータ。
A computer comprising a communication interface and a controller,
First generation processing for generating print instruction information including a print instruction indicating that an instruction for causing a printer to execute a print operation has been input by a user;
Whether the start of the pre-printing operation, which is an operation to be executed by the printer, is instructed by the preparation instruction information which is information transmitted to the printer prior to the instruction of the printing operation before the printing operation. Judgment processing to judge
A preparation instruction process of transmitting the preparation instruction information to the printer through the communication interface according to the determination in the determination process that the pre-printing operation is instructed;
The print data to be the target of the print operation is generated based on the content data specified by the user according to the judgment made in the determination processing when instructing the pre-printing operation and the execution of the preparation instruction processing. 2 generation processing,
Executing a print execution instruction process of transmitting print instruction information, which is information for instructing execution of the print operation on the print data generated in the second generation process, to the printer through the communication interface;
The controller uses at least one of information included in the print instruction information generated in the first generation process and a reference communication time indicating a time required for communication with the printer to start the pre-printing operation. A computer that executes the determination process of determining whether or not to instruct based on the preparation instruction information.
JP2018100160A 2017-12-27 2018-05-25 driver program and computer Active JP7151170B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/221,689 US10628090B2 (en) 2017-12-27 2018-12-17 Computer-readable medium, information processing device, and method for causing a printer to perform pre-printing operation

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017251537 2017-12-27
JP2017251537 2017-12-27

Publications (2)

Publication Number Publication Date
JP2019117621A true JP2019117621A (en) 2019-07-18
JP7151170B2 JP7151170B2 (en) 2022-10-12

Family

ID=67305395

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018100160A Active JP7151170B2 (en) 2017-12-27 2018-05-25 driver program and computer

Country Status (1)

Country Link
JP (1) JP7151170B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
JP2012139860A (en) * 2010-12-28 2012-07-26 Riso Kagaku Corp Image forming device and image forming system
JP2017134719A (en) * 2016-01-29 2017-08-03 ブラザー工業株式会社 Driver program, and set comprising driver program and printer

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
JP2012139860A (en) * 2010-12-28 2012-07-26 Riso Kagaku Corp Image forming device and image forming system
JP2017134719A (en) * 2016-01-29 2017-08-03 ブラザー工業株式会社 Driver program, and set comprising driver program and printer

Also Published As

Publication number Publication date
JP7151170B2 (en) 2022-10-12

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
US10692130B2 (en) Non-transitory computer-readable medium, information processing terminal and consumable ordering method
CN107038005B (en) Printing system, information processing apparatus, and method thereof
JP6589664B2 (en) Driver program and set of driver program and printer
US11059293B2 (en) Printer and non-transitory computer-readable medium storing instructions for printer driver
JP6651902B2 (en) Printing system, driver program, and printer
JP7151170B2 (en) driver program and computer
JP6642210B2 (en) Printing system, driver program, and printer
JP6962433B2 (en) Program and printer set
JP6773201B2 (en) Program and printer set
US10628090B2 (en) Computer-readable medium, information processing device, and method for causing a printer to perform pre-printing operation
JP2019177584A (en) Printing apparatus and method for controlling printing apparatus
JP6658214B2 (en) Printing system, driver program, and printer
JP2018019181A (en) program
JP6631313B2 (en) program
JP2017062660A (en) Program and information processing device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210511

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220324

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220530

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: 20220830

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220912

R150 Certificate of patent or registration of utility model

Ref document number: 7151170

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150