[go: up one dir, main page]

JP7615843B2 - Printing device - Google Patents

Printing device Download PDF

Info

Publication number
JP7615843B2
JP7615843B2 JP2021062500A JP2021062500A JP7615843B2 JP 7615843 B2 JP7615843 B2 JP 7615843B2 JP 2021062500 A JP2021062500 A JP 2021062500A JP 2021062500 A JP2021062500 A JP 2021062500A JP 7615843 B2 JP7615843 B2 JP 7615843B2
Authority
JP
Japan
Prior art keywords
information
data
detected
file
received data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021062500A
Other languages
Japanese (ja)
Other versions
JP2022157949A (en
Inventor
和英 澤田
務 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2021062500A priority Critical patent/JP7615843B2/en
Publication of JP2022157949A publication Critical patent/JP2022157949A/en
Application granted granted Critical
Publication of JP7615843B2 publication Critical patent/JP7615843B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)
  • Facsimiles In General (AREA)

Description

本明細書に開示される技術分野は、受信したデータに基づいて画像を印刷する印刷装置に関する。 The technical field disclosed in this specification relates to a printing device that prints an image based on received data.

従来、印刷ジョブを受信し、受信した印刷ジョブに基づいて画像を印刷する印刷装置が知られている。例えば特許文献1には、印刷エンジンと、印刷エンジンに印刷処理を実行させるコントローラと、を備える印刷装置であって、コントローラは、印刷ジョブに含まれるPDL(Page Description Languageの略)コマンドを解析してラスタデータを作成し、作成されたラスタデータに基づいて、印刷エンジンに画像を印刷させる構成が開示されている。 Conventionally, printing devices that receive a print job and print an image based on the received print job are known. For example, Patent Document 1 discloses a printing device that includes a print engine and a controller that causes the print engine to execute a print process, in which the controller analyzes PDL (short for Page Description Language) commands included in the print job to create raster data, and causes the print engine to print an image based on the created raster data.

特開2015-123712号公報JP 2015-123712 A

印刷装置では、受信データを画像データ単位で適切に処理することが求められる。しかしながら、外部デバイスから複数の画像データが隙間なく連続して送信された際、印刷装置は、受信データが連続した複数の画像データであることを認識できない場合があり、その場合、各画像データを適切に処理できない。 Printing devices are required to process received data appropriately on an image data unit basis. However, when multiple pieces of image data are sent continuously from an external device without any gaps, the printing device may not be able to recognize that the received data is multiple pieces of continuous image data, in which case each piece of image data cannot be processed appropriately.

本明細書は、印刷装置において、複数の画像データを連続して受信する場合であっても、個々の画像データを適切に処理できる技術を開示する。 This specification discloses a technology that allows a printing device to appropriately process each piece of image data even when multiple pieces of image data are received consecutively.

この課題の解決を目的としてなされた印刷装置は、印刷ユニットと、メモリと、通信インタフェースと、を備える印刷装置であって、前記印刷装置は、前記通信インタフェースを介して受信した受信データを先頭から順次に解析して画像データを取得し、取得した前記画像データに基づいて前記印刷ユニットに印刷を行わせ、前記印刷ユニットによる印刷の対象となる画像データの種類があらかじめ決まっており、印刷可能な画像データの種類が複数あり、前記複数の種類には、1つの画像データの中に、画像データの終端を示す終端情報を複数含めることが可能な特定の種類が含まれ、さらに前記印刷装置は、受信した前記受信データの解析を開始した後、前記受信データから前記特定の種類の画像データについての、画像データの先頭を示す先頭情報を検知した場合、検知した前記先頭情報に基づいてファイル化を開始し、さらに前記印刷装置は、ファイル化を開始した後で前記受信データから前記終端情報を検知し、さらに前記終端情報を検知した後、前記受信データから別の先頭情報を検知した場合、あるいは前記別の先頭情報を検知せず、検知された前記終端情報が前記受信データに含まれる最後の終端情報であると特定した場合には、ファイル化を終了し、生成されたファイルを前記メモリに保存し、さらに前記印刷装置は、前記メモリに保存された前記ファイルを読み出し、読み出した前記ファイルによって示される前記受信データに基づいてRIP処理を行ってラスタデータを生成し、生成された前記ラスタデータに基づいて、前記印刷ユニットに印刷を行わせる、ことを特徴としている。 A printing device that has been made to solve this problem is a printing device that includes a printing unit, a memory, and a communications interface, and the printing device sequentially analyzes received data received via the communications interface from the beginning to acquire image data, and causes the printing unit to print based on the acquired image data, the type of image data to be printed by the printing unit is predetermined, there are multiple types of image data that can be printed, and the multiple types include a specific type that is capable of including multiple pieces of termination information indicating the end of image data in one image data, and further, after starting to analyze the received data, the printing device derives from the received data leading information indicating the beginning of image data for the specific type of image data. If the printer detects the end information, it starts creating a file based on the detected leading information, and if the printer detects the end information from the received data after starting the creating file, and if it detects other leading information from the received data after detecting the leading information, or if it does not detect the other leading information and identifies the detected trailing information as the last trailing information included in the received data, it ends creating a file and saves the generated file in the memory, and the printer reads out the file saved in the memory, performs RIP processing based on the received data indicated by the read file to generate raster data, and causes the printing unit to print based on the generated raster data.

本明細書に開示される印刷装置は、受信データから、終端情報を複数含めることが可能な特定の種類の画像データの先頭情報を検知した場合、受信データのファイル化を開始する。そして、印刷装置は、受信データから終端情報を検知し、さらにその終端情報の後に別の先頭情報を検知した場合、あるいはその終端情報が受信データに含まれる最後の終端情報であると特定した場合に、ファイル化を終了する。これにより、1つの画像データの中に終端情報を複数含めることが可能な特定の種類のデータを受信した場合であっても、個々の画像データが適切に切り出されてファイル化され、個々の画像データを適切に処理できる。 The printing device disclosed in this specification starts converting the received data into a file when it detects leading information of a specific type of image data that can contain multiple pieces of terminal information from the received data. The printing device then stops converting the data into a file when it detects terminal information from the received data and then detects other leading information after the terminal information, or when it determines that the terminal information is the last terminal information contained in the received data. As a result, even when a specific type of data that can contain multiple pieces of terminal information is received in a single piece of image data, each piece of image data is appropriately extracted and converted into a file, and each piece of image data can be appropriately processed.

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

本明細書に開示される技術によれば、印刷装置において、複数の画像データを連続して受信する場合であっても、個々の画像データを適切に処理できる技術が実現される。 The technology disclosed in this specification allows a printing device to appropriately process each piece of image data even when multiple pieces of image data are received consecutively.

本形態のプリンタの概略構成を示すブロック図である。1 is a block diagram showing a schematic configuration of a printer according to an embodiment of the present invention; データ解析手順を示すシーケンス図である。FIG. 11 is a sequence diagram showing a data analysis procedure. PJLデータを含むPCLXLの印刷ジョブの構成を示す説明図である。FIG. 10 is an explanatory diagram showing the configuration of a PCLXL print job including PJL data. PJLデータを含むPDFの印刷ジョブの構成を示す説明図である。FIG. 10 is an explanatory diagram showing the configuration of a PDF print job including PJL data. PJLデータを含まない印刷ジョブの構成を示す説明図である。FIG. 10 is an explanatory diagram showing the configuration of a print job that does not include PJL data. 区切り文字情報の例を示す説明図である。FIG. 11 is an explanatory diagram showing an example of delimiter information. ファイル化手順を示すシーケンス図である。FIG. 11 is a sequence diagram showing a filing procedure. ファイル化処理の手順を示すフローチャートである。13 is a flowchart showing a procedure for a filing process.

以下、本実施の形態にかかるプリンタについて、添付図面を参照しつつ詳細に説明する。本形態は、受信した画像データに基づいて印刷を実行するプリンタを開示するものである。 The printer according to this embodiment will be described in detail below with reference to the attached drawings. This embodiment discloses a printer that executes printing based on received image data.

本形態のプリンタ1は、図1に示すように、第1コントローラ10と、第2コントローラ20と、第3コントローラ30と、を備え、これらがバス19に接続されている。また、プリンタ1は、ユーザインタフェース(以下、「ユーザIF」とする)13と、通信インタフェース(以下、「通信IF」とする)14と、印刷エンジン15と、メモリ40と、を備え、これらがバス19に接続されている。プリンタ1は、印刷装置の一例である。 As shown in FIG. 1, the printer 1 of this embodiment includes a first controller 10, a second controller 20, and a third controller 30, which are connected to a bus 19. The printer 1 also includes a user interface (hereinafter referred to as "user IF") 13, a communication interface (hereinafter referred to as "communication IF") 14, a print engine 15, and a memory 40, which are connected to the bus 19. The printer 1 is an example of a printing device.

第1コントローラ10と第2コントローラ20と第3コントローラ30とは、メモリ40から読み出したプログラムに従って、また、ユーザの操作に基づいて、各種の処理を実行する。本形態のプリンタ1の第1コントローラ10は、プロセッサコアとして、第1コア11と、第2コア12と、を有するマルチコアCPUである。第1コントローラ10は、コントローラの一例である。一方、第2コントローラ20と第3コントローラ30とは、いずれも、1つのプロセッサコアを有するシングルコアCPUである。 The first controller 10, the second controller 20, and the third controller 30 execute various processes according to a program read from the memory 40 and based on user operations. The first controller 10 of the printer 1 of this embodiment is a multi-core CPU having a first core 11 and a second core 12 as processor cores. The first controller 10 is an example of a controller. On the other hand, the second controller 20 and the third controller 30 are each a single-core CPU having one processor core.

第1コントローラ10の第1コア11は、例えば、受信データの解析、メモリやファイルの管理、を担う。第1コントローラ10の第2コア12は、例えば、画像データのラスタライズ、受信データの解析、を担う。なお、本形態の第2コア12は、第1コア11よりもクロック周波数が高く、負荷の高い処理であるラスタライズ処理に適している。第2コントローラ20は、例えば、印刷エンジン15の制御、搬送機構の制御、を担う。第3コントローラ30は、例えば、着色剤の管理、LED等の制御、を担う。なお、図1中の第1コントローラ10や第2コントローラ20や第3コントローラ30は、それぞれ、プリンタ1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にプリンタ1に存在する単一のハードウェアを表すとは限らない。 The first core 11 of the first controller 10 is responsible for, for example, analyzing received data and managing memory and files. The second core 12 of the first controller 10 is responsible for, for example, rasterizing image data and analyzing received data. Note that the second core 12 of this embodiment has a higher clock frequency than the first core 11 and is suitable for rasterization processing, which is a high-load process. The second controller 20 is responsible for, for example, controlling the print engine 15 and the transport mechanism. The third controller 30 is responsible for, for example, managing colorants and controlling LEDs, etc. Note that the first controller 10, second controller 20, and third controller 30 in FIG. 1 are collective names for hardware and software used to control the printer 1, and do not necessarily represent a single piece of hardware actually present in the printer 1.

メモリ40には、各種のプログラムや各種のデータが記憶される。メモリ40は、各種の処理が実行される際の作業領域としても利用される。メモリ40の一例は、プリンタ1に内蔵されるROM、RAM、HDD等に限らず、コンピュータが読み取り可能かつ書き込み可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non-transitoryな媒体である。non-transitoryな媒体には、上記の例の他に、CD-ROM、DVD-ROM等の記録媒体も含まれる。また、non-transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non-transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。第1コントローラ10、第2コントローラ20、第3コントローラ30が備えるバッファも、メモリの一例である。 The memory 40 stores various programs and various data. The memory 40 is also used as a working area when various processes are executed. An example of the memory 40 is not limited to a ROM, RAM, HDD, etc. built into the printer 1, but may be a computer-readable and writable storage medium. A computer-readable storage medium is a non-transitory medium. In addition to the above examples, non-transitory media also include recording media such as CD-ROM and DVD-ROM. A non-transitory medium is also a tangible medium. On the other hand, an electrical signal that carries a program downloaded from a server on the Internet is a computer-readable signal medium, which is a type of computer-readable medium, but is not included in non-transitory computer-readable storage media. The buffers provided in the first controller 10, the second controller 20, and the third controller 30 are also an example of memory.

ユーザIF13は、例えば、タッチパネルであり、ユーザに情報を報知するための画面を表示するハードウェアと、ユーザによる操作を受け付けるハードウェアと、を含む。ユーザIF13は、表示部と操作ボタン等との組であっても良い。通信IF14は、パーソナルコンピュータ等の外部デバイスと通信を行うためのハードウェアを含む。通信IF14の通信規格は、イーサネット(登録商標)、Wi-Fi(登録商標)、USBなどである。プリンタ1は、複数の通信規格に対応する複数の通信IF14を備えていてもよい。印刷エンジン15は、シート等に画像を印刷するための構成を含む。印刷エンジン15の画像形成方式は、例えば、電子写真方式、インクジェット方式である。印刷エンジン15は、印刷ユニットの一例である。 The user IF 13 is, for example, a touch panel, and includes hardware for displaying a screen for notifying the user of information, and hardware for accepting operations by the user. The user IF 13 may be a combination of a display unit and operation buttons, etc. The communication IF 14 includes hardware for communicating with an external device such as a personal computer. The communication standards of the communication IF 14 include Ethernet (registered trademark), Wi-Fi (registered trademark), USB, etc. The printer 1 may include multiple communication IFs 14 that correspond to multiple communication standards. The print engine 15 includes a configuration for printing an image on a sheet, etc. The image formation method of the print engine 15 is, for example, an electrophotographic method or an inkjet method. The print engine 15 is an example of a printing unit.

次に、本形態のプリンタ1の動作について、シーケンス図などを参照して説明する。なお、以下の処理は、基本的に、プログラムに記述された命令に従った各CPUの処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「取得」、「受付」、「制御」等の処理は、CPUの処理を表している。CPUによる処理は、OSのAPIを用いたハードウェア制御も含む。本明細書では、OSの記載を省略して各プログラムの動作を説明する。すなわち、以下の説明において、「プログラムBがハードウェアCを制御する」という趣旨の記載は、「プログラムBがOSのAPIを用いてハードウェアCを制御する」ことを指してもよい。また、プログラムに記述された命令に従ったCPUの処理を、省略した文言で記載することがある。例えば、「CPUが行う」のように記載することがある。また、プログラムに記述された命令に従ったCPUの処理を、「プログラムAが行う」のようにCPUを省略した文言で記載することがある。 Next, the operation of the printer 1 of this embodiment will be described with reference to a sequence diagram. The following process basically indicates the process of each CPU according to the instructions written in the program. That is, the processes such as "judgment", "extraction", "selection", "calculation", "decision", "identification", "acquisition", "reception", and "control" in the following description represent the process of the CPU. The process by the CPU also includes hardware control using the API of the OS. In this specification, the operation of each program will be described without mentioning the OS. That is, in the following description, a statement to the effect that "program B controls hardware C" may also mean that "program B controls hardware C using the API of the OS". In addition, the process of the CPU according to the instructions written in the program may be described in abbreviated terms. For example, it may be described as "performed by the CPU". In addition, the process of the CPU according to the instructions written in the program may be described in abbreviated terms such as "performed by program A".

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

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

本形態のプリンタ1は、通信IF14を介して印刷ジョブ等のデータの受信を開始すると、受信したデータを順に解析する。データ解析手順について、図2のシーケンス図を参照して説明する。データ解析手順では、図2に示すように、第1コア11には、受信データ解析部111と、各種の処理部112と、エンジン制御部113と、が設けられる。第2コア12には、RIP部121が設けられる。なお、受信データ解析部111、各種の処理部112、エンジン制御部113、RIP部121等の、第1コア11や第2コア12に設けられる各部は、第1コア11や第2コア12が対応するプログラムを実行することで実現される。プリンタ1の通信IF14は、受信したデータを順に入力バッファに溜める。入力バッファは、例えば数キロバイトまでのデータを溜めることができる揮発性のメモリである。 When the printer 1 of this embodiment starts receiving data such as a print job via the communication IF 14, it analyzes the received data in sequence. The data analysis procedure will be described with reference to the sequence diagram of FIG. 2. In the data analysis procedure, as shown in FIG. 2, the first core 11 is provided with a received data analysis unit 111, various processing units 112, and an engine control unit 113. The second core 12 is provided with a RIP unit 121. Note that each unit provided in the first core 11 and the second core 12, such as the received data analysis unit 111, various processing units 112, engine control unit 113, and RIP unit 121, is realized by the first core 11 and the second core 12 executing the corresponding program. The communication IF 14 of the printer 1 stores the received data in the input buffer in sequence. The input buffer is a volatile memory that can store data up to several kilobytes, for example.

第1コア11の受信データ解析部111は、入力バッファから受信データを取得して(S101)、受信データに印刷ジョブのPJLデータが含まれるか否かを判断する(S102)。PJLデータは、プリンタ1の制御に用いるコマンドや印刷パラメータを含むデータである。プリンタ1に対応するプリンタドライバを用いて生成された印刷データには、PJLデータが含まれる。 The received data analysis unit 111 of the first core 11 acquires the received data from the input buffer (S101) and determines whether the received data includes PJL data for a print job (S102). PJL data is data that includes commands and print parameters used to control the printer 1. The print data generated using the printer driver corresponding to the printer 1 includes PJL data.

PJLデータを含む印刷ジョブの一例を図3に示す。図3に示す印刷ジョブ200は、ヘッダ部201と、ボディ部202と、フッタ部203とによって構成されている。ヘッダ部201とフッタ部203とは、PJLデータであり、ボディ部202は、PCLXL形式の画像データである。受信データから「[ESC]%-12345X」が検出された場合、PJLデータが含まれると判断し(S102:YES)、受信データ解析部111は、必要な情報をメモリ40に記憶しつつ、PJLデータを解析する。 An example of a print job including PJL data is shown in FIG. 3. The print job 200 shown in FIG. 3 is composed of a header section 201, a body section 202, and a footer section 203. The header section 201 and the footer section 203 are PJL data, and the body section 202 is image data in PCLXL format. If "[ESC]%-12345X" is detected from the received data, it is determined that PJL data is included (S102: YES), and the received data analysis section 111 analyzes the PJL data while storing the necessary information in memory 40.

図3に示すように、ヘッダ部201のPJLデータには、例えば、印刷ジョブのジョブ名やユーザ名等の識別情報、印刷設定を示す設定情報、ボディ部202の画像データの種類を示す種類情報、を指定する各種のコマンドが含まれる。PJLデータに含まれる各種のコマンドは、プリンタ制御コマンドの一例である。 As shown in FIG. 3, the PJL data in the header section 201 includes various commands that specify, for example, identification information such as the job name and user name of the print job, setting information indicating print settings, and type information indicating the type of image data in the body section 202. The various commands included in the PJL data are examples of printer control commands.

受信データ解析部111は、受信データから、PJLデータのコマンドの1つである「ENTER LANGUAGE」コマンドを検知したか否かを判断する(S103)。プリンタ1にて印刷可能な画像データには、PCLXL、PDF(Portable Document Format)、PostScript、JPEG等の複数の種類があり、「ENTER LANGUAGE」コマンドにて示される情報は、画像データの種類を示す種類情報である。「ENTER LANGUAGE」コマンドは、種類特定コマンドの一例である。「ENTER LANGUAGE」コマンドは、例えば、図3に示した印刷ジョブ200のヘッダ部201の最終ラインに含まれる。つまり、「ENTER LANGUAGE」コマンドに続くデータは、ボディ部202であって、画像データである。 The received data analysis unit 111 determines whether an "ENTER LANGUAGE" command, which is one of the commands of PJL data, has been detected from the received data (S103). There are multiple types of image data that can be printed by the printer 1, such as PCLXL, PDF (Portable Document Format), PostScript, and JPEG, and the information indicated by the "ENTER LANGUAGE" command is type information that indicates the type of image data. The "ENTER LANGUAGE" command is an example of a type-specific command. For example, the "ENTER LANGUAGE" command is included in the last line of the header section 201 of the print job 200 shown in FIG. 3. In other words, the data following the "ENTER LANGUAGE" command is the body section 202, which is image data.

受信データ解析部111は、受信データから「ENTER LANGUAGE」コマンドを検知しなかったと判断した場合(S103:NO)、受信データをさらに解析する。受信データ解析部111は、「ENTER LANGUAGE」コマンドが含まれないPJLデータを受信した場合、その受信データは印刷を指示するジョブではないと判断する。「ENTER LANGUAGE」コマンドが含まれないPJLデータは、画像データを含まないジョブであり、印刷ジョブではない可能性が高い。「ENTER LANGUAGE」コマンドが含まれないPJLデータの一例としては、例えば、プリンタ1の情報の取得要求コマンド、ファームウェアのアップデート要求コマンド、がある。 When the received data analysis unit 111 determines that the "ENTER LANGUAGE" command was not detected in the received data (S103: NO), it further analyzes the received data. When the received data analysis unit 111 receives PJL data that does not include the "ENTER LANGUAGE" command, it determines that the received data is not a job that instructs printing. PJL data that does not include the "ENTER LANGUAGE" command is a job that does not include image data, and is highly likely not a print job. Examples of PJL data that does not include the "ENTER LANGUAGE" command include a command requesting acquisition of information about the printer 1, or a command requesting an update of firmware.

「ENTER LANGUAGE」コマンドが含まれないPJLデータを受信した場合、受信データ解析部111は、PJLデータの内容に応じて、第1コア11の各処理部112に処理要求を渡す(S106)。処理部112は、処理要求に基づいて、適切な処理を行う。例えば、受信したコマンドがプリンタ1の情報の取得要求コマンドであれば、処理部112は、要求されている情報をプリンタ1の各構成部から取得し、取得した情報を返信するための処理を行う。受信したコマンドが,プリンタ1の設定変更コマンドであれば、処理部112は、メモリ40に記憶されている設定情報を変更して記憶する。印刷ジョブではないPJLデータの処理を第1コア11が実行することで、第2コア12を負荷の高い処理に集中させることができる。なお、受信データ解析部111は、処理部112に処理要求を渡した後も、受信データが無くなるまで解析を続け、受信済みの受信データの解析が全て終わったら、データの受信を待つ。 When PJL data that does not include the "ENTER LANGUAGE" command is received, the received data analysis unit 111 passes a processing request to each processing unit 112 of the first core 11 according to the contents of the PJL data (S106). The processing unit 112 performs appropriate processing based on the processing request. For example, if the received command is a command requesting acquisition of information on the printer 1, the processing unit 112 acquires the requested information from each component of the printer 1 and performs processing to return the acquired information. If the received command is a command to change the settings of the printer 1, the processing unit 112 changes and stores the setting information stored in the memory 40. By having the first core 11 execute the processing of PJL data that is not a print job, the second core 12 can concentrate on processing with a high load. Note that even after passing the processing request to the processing unit 112, the received data analysis unit 111 continues analysis until there is no more received data, and waits for data to be received when analysis of all the received data has been completed.

一方、受信データ解析部111は、読み出した受信データにPJLデータが含まれないと判断した場合(S102:NO)、解析対象の受信データの先頭アドレスを示すポインタとともにドキュメント解析要求を第2コア12に出力する(S111)。受信データ解析部111は、印刷ジョブの先頭に「[ESC]%-12345X」が含まれない場合、PJLデータが含まれないと判断する。PJLデータが含まれない受信データの解析処理は、第2コア12による処理であり、ドキュメント解析要求は、第1要求の一例である。 On the other hand, if the received data analysis unit 111 determines that the read received data does not contain PJL data (S102: NO), it outputs a document analysis request to the second core 12 together with a pointer indicating the start address of the received data to be analyzed (S111). If the start of the print job does not contain "[ESC]%-12345X", the received data analysis unit 111 determines that PJL data is not included. The analysis process of received data that does not contain PJL data is a process performed by the second core 12, and the document analysis request is an example of a first request.

なお、プリンタ1は、PJLデータを含まない画像データのみからなる印刷ジョブを受信することもある。例えば、プリンタ1に対応するプリンタドライバ以外のプログラムには、PJLデータを含まない印刷ジョブを出力するものがある。本形態のプリンタ1は、画像データそのものを受信した場合も、PJLデータを含まない印刷ジョブを受信した場合も、画像データに基づく印刷を実行可能である。以下では、画像データそのものを受信した場合であっても、印刷ジョブを受信したと記載する。 Note that printer 1 may also receive a print job consisting of only image data without PJL data. For example, some programs other than the printer driver corresponding to printer 1 output print jobs that do not include PJL data. Printer 1 of this embodiment can execute printing based on image data whether it receives image data itself or a print job that does not include PJL data. In the following, it will be described as receiving a print job even if it receives image data itself.

ドキュメント解析要求が入力されると、第2コア12は、ポインタに基づいて受信データを読み出し、その受信データにファイル化処理の実行が必要となる画像データを示す情報が含まれるか否かを判断する(S115)。ファイル化処理は、受信データをファイル化して、入力バッファとは異なる記憶場所、例えば、メモリ40のRAM領域または不揮発性メモリ領域に保存する処理である。ファイル化処理の実行が必要となる画像データについての詳細や、ファイル化処理についての詳細は、後述する。 When a document analysis request is input, the second core 12 reads the received data based on the pointer and determines whether the received data includes information indicating image data that requires filing processing (S115). The filing processing is a process in which the received data is filed and stored in a memory location different from the input buffer, for example, the RAM area or non-volatile memory area of the memory 40. Details of the image data that requires filing processing and details of the filing processing will be described later.

また、受信データ解析部111は、受信データにPJLデータが含まれ、かつ、「ENTER LANGUAGE」コマンドを検知したと判断した場合(S103:YES)、RIP要求を第2コア12に出力する(S112)。RIP要求は、第2コア12によるRIP処理を要求する情報であり、RIP要求は、第1要求の一例である。受信データ解析部111は、RIP要求とともに、「ENTER LANGUAGE」コマンドによって指定されている画像データの種類、ヘッダ部から取得した印刷パラメータの情報、入力バッファの次の読み出し位置であるボディ部の先頭アドレスへのポインタ、を第2コア12に渡す。入力バッファに記憶された受信データのアドレスへのポインタを渡すことで、プリンタ1は、第1コア11と第2コア12とで受信データを共用できる。 Furthermore, if the received data analysis unit 111 determines that the received data includes PJL data and detects the "ENTER LANGUAGE" command (S103: YES), it outputs a RIP request to the second core 12 (S112). The RIP request is information requesting RIP processing by the second core 12, and is an example of a first request. Along with the RIP request, the received data analysis unit 111 passes to the second core 12 the type of image data specified by the "ENTER LANGUAGE" command, information on the printing parameters obtained from the header section, and a pointer to the top address of the body section, which is the next read position of the input buffer. By passing a pointer to the address of the received data stored in the input buffer, the printer 1 allows the first core 11 and the second core 12 to share the received data.

第2コア12のRIP部121は、第1コア11からのRIP要求に基づいて、ポインタによって示されるアドレスから受信データを順に読み出し、その受信データにファイル化処理の実行が必要となる画像データを示す情報が含まれるか否かを判断する(S116)。ファイル化処理の実行が必要となる画像データについての詳細や、S116にてYESと判断した場合の処理の詳細については、後述する。 Based on the RIP request from the first core 11, the RIP unit 121 of the second core 12 sequentially reads the received data from the address indicated by the pointer, and determines whether the received data includes information indicating image data that requires file processing (S116). Details regarding the image data that requires file processing and details of the processing when YES is determined in S116 will be described later.

RIP部121は、ファイル化処理の実行が必要となる画像データを示す情報が含まれないと判断した場合(S116:NO)、RIP処理を行って(S121)、ラスタデータを生成する。例えば、図3に示した印刷ジョブ200では、画像データの種類がPCLXLであり、ボディ部202の先頭には、PCLXLの画像データを示す情報が含まれている。PCLXLの印刷ジョブ200では、ヘッダ部201のPJLデータに、RIP処理に用いるパラメータが全て含まれていることから、第2コア12のRIP部121は、第1コア11から入力されたパラメータを用いて、ボディ部202の先頭から順次RIP処理を実行できる。PCLXLの画像データは、ファイル化処理の実行が必要ではない画像データである。 When the RIP unit 121 determines that the image data does not contain information indicating that file conversion is required (S116: NO), it performs RIP processing (S121) to generate raster data. For example, in the print job 200 shown in FIG. 3, the type of image data is PCLXL, and the beginning of the body part 202 contains information indicating PCLXL image data. In the PCLXL print job 200, the PJL data in the header part 201 contains all the parameters used for RIP processing, so the RIP unit 121 of the second core 12 can sequentially perform RIP processing from the beginning of the body part 202 using the parameters input from the first core 11. PCLXL image data is image data that does not require file conversion.

RIP部121は、RIP処理を開始した後、受信データを順にラスタライズし、所定量のラスタデータを生成するごとに第1コア11のエンジン制御部113に出力要求を出力する(S123)。RIP部121は、出力要求において、ラスタライズ済みの画像データのアドレスを示す情報を第1コア11に渡す。RIP部121は、エンジン制御部113が読み込む所定のバッファに、出力指令データやラスタデータを書き込んでもよい。RIP部121は、RIP対象の画像データの最後までラスタライズしたら、第1コア11からの次の要求を待つ。 After starting the RIP process, the RIP unit 121 rasterizes the received data in sequence, and outputs an output request to the engine control unit 113 of the first core 11 each time a predetermined amount of raster data is generated (S123). In the output request, the RIP unit 121 passes information indicating the address of the rasterized image data to the first core 11. The RIP unit 121 may write output command data and raster data to a predetermined buffer that is read by the engine control unit 113. After rasterizing the image data to be RIPped to the end, the RIP unit 121 waits for the next request from the first core 11.

第1コア11のエンジン制御部113は、第2コア12から受け取った出力要求に基づいて、印刷エンジン15が印刷を開始できるだけのラスタデータを受け取ったら、第2コントローラ20等を介して印刷エンジン15を制御し(S124)、印刷を実行させる。 When the engine control unit 113 of the first core 11 receives enough raster data for the print engine 15 to start printing based on the output request received from the second core 12, it controls the print engine 15 via the second controller 20 etc. (S124) to execute printing.

続いて、前述した図2のS115またはS116にてファイル化処理の実行が必要と判断された場合の処理について説明する。S115またはS116では、RIP部121は、例えば、画像データの種類に基づいて、ファイル化処理の実行が必要となる画像データであるか否かを判断する。ファイル化処理の実行が必要となる画像データは、例えば、PDFの画像データである。 Next, the process when it is determined in S115 or S116 of FIG. 2 that a file conversion process needs to be performed will be described. In S115 or S116, the RIP unit 121 determines whether the image data requires a file conversion process based on, for example, the type of image data. Image data that requires a file conversion process is, for example, PDF image data.

PDFでは既存のファイルに文字や画像を追加して保存する増分更新が可能であり、画像データの終端を示す終端文字の後にさらにデータが追加されている場合がある。例えば、図4に示すPDFの画像データを含む印刷ジョブ300は、ヘッダ部301と、ボディ部302と、フッタ部303と、を含む。ヘッダ部301とフッタ部303とは、PJLデータを含み、ボディ部302は、画像データ304と付加データ305とを含む。 PDF allows incremental updates by adding text and images to an existing file and saving them, and there are cases where further data is added after the termination character indicating the end of the image data. For example, print job 300 including PDF image data shown in FIG. 4 includes header section 301, body section 302, and footer section 303. Header section 301 and footer section 303 include PJL data, and body section 302 includes image data 304 and additional data 305.

付加データ305には、画像データ304の印刷に関する印刷パラメータが含まれる場合もあることから、プリンタ1は、画像データ304のRIP処理を開始する前に、付加データ305を解析する必要がある。しかし、入力バッファはその容量に制限があり、付加データ305の解析が終了するまで画像データ304を入力バッファに溜めておけるとは限らない。RIP部121は、ボディ部の先頭にPDFの画像データを示す情報が含まれる場合、入力バッファのフルを回避するために、S116にてファイル化処理の実行が必要となると判断する。 Because the additional data 305 may contain printing parameters related to printing the image data 304, the printer 1 must analyze the additional data 305 before starting the RIP process of the image data 304. However, the input buffer has a limited capacity, and the image data 304 cannot necessarily be stored in the input buffer until the analysis of the additional data 305 is completed. If the beginning of the body portion contains information indicating PDF image data, the RIP unit 121 determines in S116 that it is necessary to execute a file process to prevent the input buffer from becoming full.

また、プリンタ1は、PDFの画像データを含みPJLデータを含まないボディ部のみの印刷ジョブを受信することもある。例えば、図5に示す印刷ジョブ310は、ヘッダ部やフッタ部が無く、画像データ311と付加データ312とで構成される。印刷ジョブ310を受信した場合、第1コア11の受信データ解析部111は、図2のS102にてNOと判断し、S111にて画像データ311の先頭アドレスを示すポインタとドキュメント解析要求とを第2コア12に渡す。第2コア12のRIP部121は、画像データ311の先頭から受信データを解析し、PDFの画像データを示す情報が含まれる場合、S115にてファイル化処理の実行が必要となると判断する。 The printer 1 may also receive a print job that contains only the body portion, including PDF image data and no PJL data. For example, the print job 310 shown in FIG. 5 has no header or footer portion, and is composed of image data 311 and additional data 312. When the print job 310 is received, the received data analysis unit 111 of the first core 11 judges NO in S102 of FIG. 2, and passes a pointer indicating the start address of the image data 311 and a document analysis request to the second core 12 in S111. The RIP unit 121 of the second core 12 analyzes the received data from the start of the image data 311, and if information indicating PDF image data is included, judges that a file conversion process needs to be executed in S115.

画像データの先頭には、画像データの種類ごとに所定の区切り文字が付加されている。RIP部121は、例えば、図6に示すように、各種の画像データについて、画像データの先頭や終端を示す区切り文字の情報と画像データの種類を示す情報とを対応付けて記憶する区切り文字情報51を備えている。画像データの先頭を示す区切り文字は、先頭情報の一例である。画像データの終端を示す区切り文字は、終端情報の一例である。例えば、PDFの画像データの先頭には、区切り文字として「%PDF」が含まれる。RIP部121は、読み出した受信データから「%PDF」を検知した場合に、ファイル化処理の実行が必要であると判断する。「%PDF」は、所定の情報の一例である。なお、画像データの先頭を示す区切り文字の検知は、第1コア11にて行ってもよい。 A predetermined delimiter is added to the beginning of the image data for each type of image data. For example, as shown in FIG. 6, the RIP unit 121 has delimiter information 51 that stores information on delimiters indicating the beginning and end of image data and information indicating the type of image data for each type of image data in association with each other. The delimiter indicating the beginning of image data is an example of beginning information. The delimiter indicating the end of image data is an example of end information. For example, the beginning of PDF image data contains "%PDF" as a delimiter. When the RIP unit 121 detects "%PDF" from the read received data, it determines that it is necessary to execute a file conversion process. "%PDF" is an example of predetermined information. Note that the detection of the delimiter indicating the beginning of image data may be performed by the first core 11.

PDFは、終端文字の後に印刷パラメータなどの付加データが含まれる可能性がある画像データの種類であり、特定の種類の一例である。なお、画像データの先頭や終端を示す区切り文字は、複数の文字を含む文字列である場合もあり、本明細書では、「終端文字列」を単に「終端文字」、「先頭文字列」を単に「先頭文字」と記載する。先頭文字や終端文字についての詳細は、後述する。 PDF is a type of image data that may contain additional data such as print parameters after the termination character, and is an example of a specific type. Note that the delimiter indicating the beginning or end of image data may be a string containing multiple characters, and in this specification, a "termination string" will be referred to simply as a "termination character," and a "first string" will be referred to simply as a "first character." First characters and termination characters will be described in more detail below.

次に、図7のシーケンス図を参照して、RIP部121にてファイル化処理の実行が必要と判断された場合の手順について説明する。図7に示すように、第1コア11には、ドキュメントセパレータ部115と、ファイルシステム部116と、メモリ管理部117と、が設けられる。第2コア12には、RIP部121と、ファイル読出部122と、が設けられる。 Next, the procedure when it is determined that the RIP unit 121 needs to execute the file processing will be described with reference to the sequence diagram in FIG. 7. As shown in FIG. 7, the first core 11 is provided with a document separator unit 115, a file system unit 116, and a memory management unit 117. The second core 12 is provided with a RIP unit 121 and a file reading unit 122.

第1コア11のファイルシステム部116は、メモリ管理部117を介して、メモリ40からの読み出し、および、メモリ40への書き込みが可能な構成である。第2コア12のファイル読出部122は、第1コア11のファイルシステム部116とは異なり、メモリ40からファイルを読み出すための構成であり、メモリ40への書き込みが不可能であって、メモリ管理を行わない。 The file system unit 116 of the first core 11 is configured to be able to read from and write to the memory 40 via the memory management unit 117. The file reading unit 122 of the second core 12 differs from the file system unit 116 of the first core 11 in that it is configured to read files from the memory 40, is unable to write to the memory 40, and does not perform memory management.

ファイル化処理の実行が必要であると判断した場合、RIP部121は、第1コア11にファイル化要求と画像データの先頭アドレスとを入力する(S201)。ファイル化要求は、第2要求の一例である。これにより、第1コア11は、入力されたアドレスから順に受信データを読み出して、ファイル化処理を実行する。 When it is determined that the filing process needs to be executed, the RIP unit 121 inputs a filing request and the starting address of the image data to the first core 11 (S201). The filing request is an example of a second request. As a result, the first core 11 reads the received data in order from the input addresses and executes the filing process.

S201にてファイル化要求を出力する際に、RIP部121は、図6に示した区切り文字情報51を第1コア11に渡す。第1コア11は、区切り文字情報51を利用して、ファイル化処理を実行する。第1コア11は、ドキュメントセパレータ部115とファイルシステム部116とメモリ管理部117との協働によってファイル化処理を実行する。 When outputting the filing request in S201, the RIP unit 121 passes the delimiter information 51 shown in FIG. 6 to the first core 11. The first core 11 uses the delimiter information 51 to execute the filing process. The first core 11 executes the filing process in cooperation with the document separator unit 115, the file system unit 116, and the memory management unit 117.

区切り文字情報51を第2コア12から第1コア11に渡す代わりに、第1コア11にも区切り文字情報51を持たせても良い。ただし、画像データの構成や区切り文字の種類は変更される場合もあり、区切り文字情報51を第1コア11と第2コア12との両方で管理する構成とするためには、画像データの解析に必要なファームウェアのバージョンを第1コア11と第2コア12との両方で揃える必要があることから、バージョン管理が複雑になる。本形態では、画像データの解析を第2コア12に集めているので、バージョン管理が容易である。特に、ファイル化が必要な画像データの種類が複数ある場合には、第2コア12で実行されるプログラムが区切り文字情報51を管理することで、バージョン管理が容易になる。 Instead of passing the delimiter information 51 from the second core 12 to the first core 11, the first core 11 may also have the delimiter information 51. However, the configuration of the image data and the type of delimiter may change, and in order to configure the delimiter information 51 to be managed by both the first core 11 and the second core 12, the firmware version required for analyzing the image data must be the same for both the first core 11 and the second core 12, making version management complicated. In this embodiment, the analysis of the image data is concentrated in the second core 12, making version management easy. In particular, when there are multiple types of image data that need to be filed, the program executed by the second core 12 manages the delimiter information 51, making version management easy.

ドキュメントセパレータ部115によって実行されるファイル化処理の手順について、図8のフローチャートを参照して説明する。ファイル化処理は、受信した印刷ジョブに含まれる画像データおよびその後に続く印刷パラメータをファイル化して、メモリ40に保存する処理である。なお、以下では、メモリまたはファイルへ書き込む処理を、「保存する」と記載する。 The procedure for the filing process executed by the document separator unit 115 will be described with reference to the flowchart in FIG. 8. The filing process is a process in which the image data contained in the received print job and the subsequent printing parameters are filed and saved in the memory 40. Note that hereinafter, the process of writing to memory or a file will be referred to as "saving".

ファイル化処理を開始すると、ドキュメントセパレータ部115は、ファイルオープン指示を第1コア11のファイルシステム部116に渡す(S301)。指示を受け付けたファイルシステム部116は、S301の指示に基づいて、ファイル名と関連付けてファイルの記憶領域を設定し、その先頭アドレスを決定する。 When the filing process starts, the document separator unit 115 passes a file open instruction to the file system unit 116 of the first core 11 (S301). The file system unit 116, which has received the instruction, sets the file storage area in association with the file name based on the instruction of S301, and determines its starting address.

ドキュメントセパレータ部115は、入力バッファから受信データを取得し(S302)、取得したデータを解析する。ドキュメントセパレータ部115は、RIP部121から受け取った区切り文字情報51に基づいて、取得したデータ中にファイル化処理の対象である画像データの終端文字が含まれるか否かを判断する(S303)。実行中のファイル化処理の対象がPDFであれば、図6に示したように、終端文字は「%%EOF」であることから、ドキュメントセパレータ部115は、S303にて、取得した受信データ中に「%%EOF」が含まれるか否かを判断する。 The document separator unit 115 acquires the received data from the input buffer (S302) and analyzes the acquired data. Based on the delimiter information 51 received from the RIP unit 121, the document separator unit 115 determines whether the acquired data contains a termination character for the image data to be converted into a file (S303). If the target of the ongoing file conversion process is a PDF, as shown in FIG. 6, the termination character is "%%EOF", and therefore the document separator unit 115 determines in S303 whether the acquired received data contains "%%EOF".

取得したデータ中に終端文字が含まれないと判断した場合(S303:NO)、ドキュメントセパレータ部115は、S302にて取得した受信データをファイルシステム部116に渡し、S301にてオープンしたファイルへの保存を指示する(S304)。終端文字が含まれない受信データは、画像データの一部であり、まだ後に画像データが続いていることを示している。ファイルシステム部116は、メモリ管理部117に指示してメモリを確保し、受信データを保存する。S304の後、ドキュメントセパレータ部115は、S302に戻り、次のデータを入力バッファから取得する。 If it is determined that the acquired data does not contain a termination character (S303: NO), the document separator unit 115 passes the received data acquired in S302 to the file system unit 116 and instructs it to save the data in the file opened in S301 (S304). Received data that does not contain a termination character is part of the image data, and indicates that more image data follows. The file system unit 116 instructs the memory management unit 117 to secure memory and save the received data. After S304, the document separator unit 115 returns to S302 and acquires the next data from the input buffer.

取得したデータ中に終端文字が含まれると判断した場合(S303:YES)、ドキュメントセパレータ部115は、終端文字が取得したデータの末尾にあるか否か、つまり、取得したデータが終端文字で終わっているか否かを判断する(S310)。末尾にあると判断した場合(S310:YES)、ドキュメントセパレータ部115は、所定時間待ち(S311)、再度、終端文字が末尾にあるか否かを判断する(S312)。所定時間は、例えば、数十ミリ秒である。プリンタ1は、継続してデータを受信中であれば、この間に、通信IF14を介して次のデータを受信する可能性が高い。 If it is determined that the acquired data contains a termination character (S303: YES), the document separator unit 115 determines whether or not the termination character is at the end of the acquired data, that is, whether or not the acquired data ends with a termination character (S310). If it is determined that the data is at the end (S310: YES), the document separator unit 115 waits a predetermined time (S311) and determines again whether or not the termination character is at the end (S312). The predetermined time is, for example, several tens of milliseconds. If the printer 1 is continuously receiving data, it is highly likely that the printer 1 will receive the next data via the communication IF 14 during this time.

所定時間待っても終端文字が末尾にあると判断した場合(S312:YES)、すなわち、所定時間中に終端文字以降のデータを受信しなかった場合、ドキュメントセパレータ部115は、終端文字までで受信中のデータが終了したと判断する。そして、ドキュメントセパレータ部115は、終端文字までのデータの保存と(S313)、ファイルクローズと(S314)を、ファイルシステム部116に指示し、ファイル化処理を終了する。これにより、例えば、PDFの先頭文字(「%PDF」)から終端文字(「%%EOF」)までのデータが、1つのファイルとして保存される。 If it is determined that the termination character is at the end after waiting a predetermined time (S312: YES), i.e., if no data after the termination character is received within the predetermined time, the document separator unit 115 determines that the data being received ends at the termination character. The document separator unit 115 then instructs the file system unit 116 to save the data up to the termination character (S313) and close the file (S314), and ends the filing process. As a result, for example, the data from the first character of the PDF ("%PDF") to the termination character ("%%EOF") is saved as a single file.

終端文字がデータの末尾ではないと判断した場合(S310:NO、または、S312:NO)、ドキュメントセパレータ部115は、終端文字に続くデータを解析し、先頭文字の検知を試行する(S320)。具体的には、ドキュメントセパレータ部115は、区切り文字情報51に基づいて、先頭文字が有るか否かを判断する。例えば、PDFでは、図5に示した印刷ジョブ310のように、画像データ311の末尾に終端文字「%%EOF」があり、さらにその後に付加データ312が続く場合がある。付加データ312の末尾にも、画像データ311と同じ終端文字「%%EOF」が含まれる。つまり、1つの終端文字があっても印刷ジョブの最後とは限らず、続くデータを解析する必要がある。 If it is determined that the terminating character is not the end of the data (S310: NO or S312: NO), the document separator unit 115 analyzes the data following the terminating character and attempts to detect the first character (S320). Specifically, the document separator unit 115 determines whether or not there is a first character based on the delimiter information 51. For example, in a PDF, as in the print job 310 shown in FIG. 5, the image data 311 may end with the terminating character "%%EOF", which is followed by additional data 312. The end of the additional data 312 also contains the same terminating character "%%EOF" as the image data 311. In other words, the presence of one terminating character does not necessarily mean that the print job is over, and the following data must be analyzed.

また例えば、PJLデータを含まないPDFの印刷ジョブでは、図5に示したように、複数の印刷ジョブが連続して送信される場合がある。例えば、複数の画像データに基づく印刷指示を受け付けた場合、PJLデータが含まれていない印刷ジョブが、複数連続して送信される可能性がある。USB通信のプロトコルの仕様によって、画像データと画像データとの間を隙間なく送信することが可能となる。なお、ネットワーク接続された外部デバイスからのデータ送信では、画像データと画像データとが連続して送信されることはない。 For example, in the case of a PDF print job that does not include PJL data, multiple print jobs may be sent in succession, as shown in FIG. 5. For example, when a print instruction based on multiple pieces of image data is received, multiple print jobs that do not include PJL data may be sent in succession. The USB communication protocol specifications make it possible to send image data without gaps between each piece of image data. Note that when sending data from an external device connected to a network, image data is never sent in succession.

この図5の例では、印刷ジョブ310の付加データ312に続いて、他の印刷ジョブ320の画像データ321および付加データ322が送信される。PJLデータを含まない複数の印刷ジョブが連続して送信された場合、プリンタ1は、先行する印刷ジョブの末尾の終端文字の後に、後続する印刷ジョブの先頭文字を受信する。ドキュメントセパレータ部115は、終端文字の後に別の先頭文字が有れば、その終端文字は印刷ジョブの最後であると判断する。 In the example of Figure 5, following the additional data 312 of print job 310, image data 321 and additional data 322 of another print job 320 are sent. When multiple print jobs that do not contain PJL data are sent in succession, the printer 1 receives the terminating character at the end of the preceding print job followed by the first character of the subsequent print job. If there is another first character following the terminating character, the document separator unit 115 determines that the terminating character is the end of the print job.

なお、印刷ジョブの末尾の終端文字と次の印刷ジョブの先頭文字等との間には、数個の改行コードなど、少数の文字が挟まれる場合があることから、ドキュメントセパレータ部115は、終端文字から数バイトの所定のデータ量だけ先まで解析して、別の先頭文字の有無を判断する。 Note that since there may be a small number of characters, such as a few line feed codes, between the terminating character at the end of a print job and the first character of the next print job, the document separator unit 115 analyzes a predetermined amount of data, several bytes, beyond the terminating character to determine whether there is another first character.

また、PJLデータを含むPDFの印刷ジョブの場合、図4に示した印刷ジョブ300のように、画像データを含むボディ部302の後にPJLデータのフッタ部303が続く。ドキュメントセパレータ部115は、終端文字の後に、PJLデータを示すデータである「[ESC]%-12345X」が有る場合、その終端文字はファイル化処理の対象となるデータの最後であると判断する。 In addition, in the case of a PDF print job that includes PJL data, as in the print job 300 shown in FIG. 4, a body section 302 that includes image data is followed by a footer section 303 of the PJL data. If the data indicating PJL data, "[ESC]%-12345X", is found after the termination character, the document separator unit 115 determines that the termination character is the end of the data to be filed.

数バイト以内に先頭文字もPJLデータも無いと判断した場合(S320:NO)、ドキュメントセパレータ部115は、その終端文字は印刷ジョブの最後ではないと判断して、S304に進む。つまり、ドキュメントセパレータ部115は、S302にて取得した受信データをオープン中のファイルに保存するようファイルシステム部116に指示し、S302に戻って、さらに次のデータを取得する。そして、ドキュメントセパレータ部115は、取得したデータからさらに別の終端文字を検知した場合も、S303にてYESと判断してS310に進む。 If it is determined that there is neither a leading character nor PJL data within a few bytes (S320: NO), the document separator unit 115 determines that the terminating character is not the end of the print job and proceeds to S304. In other words, the document separator unit 115 instructs the file system unit 116 to save the received data acquired in S302 in the open file, and returns to S302 to acquire more data. Then, if the document separator unit 115 detects another terminating character in the acquired data, it also determines YES in S303 and proceeds to S310.

一方、数バイト以内に先頭文字またはPJLデータが有ると判断した場合(S320:YES)、ドキュメントセパレータ部115は、先頭文字またはPJLデータの直前までのデータの保存(S321)と、ファイルクローズと(S322)を、ファイルシステム部116に指示する。受信データに先頭文字またはPJLデータが含まれている場合、ファイル化の対象となるデータは終端文字までである。そこで、ドキュメントセパレータ部115は、まず、オープンしているファイルをクローズする。 On the other hand, if it is determined that the first character or PJL data is within a few bytes (S320: YES), the document separator unit 115 instructs the file system unit 116 to save the data up to just before the first character or PJL data (S321) and close the file (S322). If the received data contains the first character or PJL data, the data to be converted into a file is up to the termination character. Therefore, the document separator unit 115 first closes the open file.

そして、次のデータが先頭文字である場合、ドキュメントセパレータ部115は、その先頭文字が、PDF等のファイル化の必要な画像データの先頭文字であるか否かを判断する(S323)。先頭文字から後は別の印刷ジョブである。区切り文字情報51に基づいて、後続の印刷ジョブのファイル化が必要であると判断した場合(S323:YES)、ドキュメントセパレータ部115は、ファイルシステム部116に次のファイルのオープンを指示し(S324)、オープンしたファイルに、その先頭文字から後のデータを保存させる(S325)。 If the next data is the first character, the document separator unit 115 determines whether the first character is the first character of image data that needs to be converted into a file, such as a PDF (S323). The part after the first character is a different print job. If it is determined based on the delimiter information 51 that the subsequent print job needs to be converted into a file (S323: YES), the document separator unit 115 instructs the file system unit 116 to open the next file (S324) and saves the data after the first character in the opened file (S325).

連続して送信された複数の印刷ジョブを受信した場合、ドキュメントセパレータ部115は、それぞれの印刷ジョブに含まれる画像データごとに1つのファイルに保存する。例えば、図5に示した例では、ドキュメントセパレータ部115は、印刷ジョブ310の画像データ311と付加データ312を1つのファイルとしてファイル化し、そのファイルをクローズした後、別のファイルをオープンして後続のデータを保存する。そして、ドキュメントセパレータ部115は、S325の後、S302に戻って、次のデータを取得する。そして、後続の印刷ジョブ320の画像データ321と付加データ322を1つのファイルとしてファイル化する。 When multiple print jobs transmitted in succession are received, the document separator unit 115 saves each image data included in each print job in a single file. For example, in the example shown in FIG. 5, the document separator unit 115 files the image data 311 and additional data 312 of print job 310 into a single file, closes that file, and then opens another file to save the subsequent data. After S325, the document separator unit 115 returns to S302 to obtain the next data. Then, the document separator unit 115 files the image data 321 and additional data 322 of the subsequent print job 320 into a single file.

受信データに先頭文字が含まれている場合であっても、その先頭文字がPDFの先頭文字ではないと判断した場合(S323:NO)、または、終端文字に続くデータがPJLデータであると判断した場合、ドキュメントセパレータ部115は、ファイル化処理を終了する。PDFの印刷ジョブ以外のデータであればファイル化の必要はないことから、ドキュメントセパレータ部115は、ファイル化処理を終了して図5の処理に戻る。 Even if the received data contains a first character, if it is determined that the first character is not the first character of a PDF (S323: NO), or if it is determined that the data following the termination character is PJL data, the document separator unit 115 ends the filing process. If the data is not a PDF print job, there is no need to file it, so the document separator unit 115 ends the filing process and returns to the process in FIG. 5.

なお、PDF以外の先頭文字が含まれる場合、ドキュメントセパレータ部115は、その先頭文字の位置を示すポインタとドキュメント解析要求とを第2コア12のRIP部121に渡し、RIP部121は、先頭文字から以後のデータについて、ドキュメント解析処理を行う。また、PJLデータが含まれる場合、ドキュメントセパレータ部115は、続くデータの処理要求を、第1コア11の受信データ解析部111(図2参照)に渡す。 If a first character other than PDF is included, the document separator unit 115 passes a pointer indicating the position of the first character and a document analysis request to the RIP unit 121 of the second core 12, and the RIP unit 121 performs document analysis processing on the data from the first character onwards. If PJL data is included, the document separator unit 115 passes a processing request for the subsequent data to the received data analysis unit 111 of the first core 11 (see Figure 2).

図7の説明に戻る。ファイル化処理を終了すると、ドキュメントセパレータ部115は、第2コア12のRIP部121にファイル化終了を通知する(S211)。ドキュメントセパレータ部115は、第2コア12から入力されたファイル化要求に対する戻り値として、作成した各ファイルのファイル管理情報を第2コア12に出力する。ファイル管理情報は、ファイル保存領域の先頭アドレスを示すポインタ、ファイル名等の情報であり、ファイル情報の一例である。 Returning to the explanation of FIG. 7, when the filing process is completed, the document separator unit 115 notifies the RIP unit 121 of the second core 12 of the completion of filing (S211). The document separator unit 115 outputs file management information of each created file to the second core 12 as a return value for the filing request input from the second core 12. The file management information is information such as a pointer indicating the top address of the file storage area, the file name, etc., and is an example of file information.

なお、全てのデータのファイル化が終了する前であっても、ドキュメントセパレータ部115は、例えば、S322にてファイルをクローズしたら、クローズしたファイルのファイル管理情報を第2コア12に出力しても良い。第2コア12のRIP部121は、第1コア11から入力されたファイル管理情報に基づいて、そのファイルについての処理を開始しても良い。 Even before all data has been converted into files, the document separator unit 115 may output the file management information of the closed file to the second core 12, for example, when the file is closed in S322. The RIP unit 121 of the second core 12 may start processing the file based on the file management information input from the first core 11.

RIP部121は、第1コア11から入力されたファイル管理情報を、第2コア12のファイル読出部122に渡して(S213)、ファイルを読み出すための準備処理を行わせる。第2コア12にファイル読出部122を備えることで、RIP部121は、ファイルへのアクセスが容易になる。第2コア12のファイル読出部122は、第1コア11のファイルシステム部116よりも簡易な構成なので、両方にファイルシステムを備える場合に比較して、印刷のためのプログラムサイズの肥大化を抑えることができる。 The RIP unit 121 passes the file management information input from the first core 11 to the file reading unit 122 of the second core 12 (S213), causing the second core 12 to perform preparation processing for reading the file. Providing the file reading unit 122 in the second core 12 makes it easier for the RIP unit 121 to access files. The file reading unit 122 of the second core 12 has a simpler configuration than the file system unit 116 of the first core 11, so the expansion of the program size for printing can be suppressed compared to when both are provided with file systems.

ファイル読出部122による読み出し準備が終了したら、RIP部121は、ファイル読出部122を介して、ファイルから画像データを読み出し(S214)、RIP処理を実行する(S215)。RIP部121は、まず、ファイルから読み出した画像データの全体を解析して印刷パラメータを抽出し、抽出した印刷パラメータに従ってRIP処理を行う。PJLデータに基づくパラメータを第1コア11から受け取っている場合には、RIP部121は、第1コア11から受け取ったパラメータとファイルから抽出したパラメータとの両方に基づいて、パラメータとして用いる。 When the file reading unit 122 has completed the preparation for reading, the RIP unit 121 reads the image data from the file via the file reading unit 122 (S214) and executes the RIP process (S215). The RIP unit 121 first analyzes the entire image data read from the file to extract print parameters, and performs the RIP process according to the extracted print parameters. If parameters based on the PJL data have been received from the first core 11, the RIP unit 121 uses them as parameters based on both the parameters received from the first core 11 and the parameters extracted from the file.

ファイル化された画像データは、画像データの後にパラメータが含まれている可能性があることからファイル全体からパラメータを抽出し、抽出したパラメータに従ってRIP処理を行うことで、適切なRIP処理を実行できる。なお、第1コア11から受け取ったパラメータとファイルから抽出したパラメータとで競合するパラメータがあった場合、プリンタ1は、あらかじめプログラムされた方法に従って、どちらかのパラメータを優先する。なお、プリンタ1は、優先するパラメータの選択を受け付けても良い。 Since filed image data may contain parameters following the image data, appropriate RIP processing can be performed by extracting parameters from the entire file and performing RIP processing according to the extracted parameters. If there are conflicting parameters between the parameters received from the first core 11 and the parameters extracted from the file, the printer 1 will prioritize one of the parameters according to a pre-programmed method. The printer 1 may also accept a selection of the prioritized parameters.

そして、RIP部121は、所定量のラスタデータを生成するごとに、第1コア11に出力要求を出力する(S216)。S216は、図2中のS123と同様の処理である。出力要求に基づいて、第1コア11のエンジン制御部113は、印刷エンジン15を制御して、印刷を実行させる。 Then, the RIP unit 121 outputs an output request to the first core 11 each time it generates a predetermined amount of raster data (S216). S216 is the same process as S123 in FIG. 2. Based on the output request, the engine control unit 113 of the first core 11 controls the print engine 15 to execute printing.

RIP部121は、ドキュメントセパレータ部115から受け取ったファイルの全体の処理が終了するまで、ファイルの読み出しとRIP処理とを繰り返す。これにより、1つの印刷ジョブについてのRIP処理が完了する。複数の印刷ジョブを連続して受信した場合であっても、印刷ジョブごとに1つのファイルとなっているので、RIP部121は、各印刷ジョブについて適切な処理を行うことができる。これにより、プリンタ1は、印刷ジョブごとに適切な印刷物を形成できる。 The RIP unit 121 repeats reading the file and RIP processing until the entire processing of the file received from the document separator unit 115 is completed. This completes the RIP processing for one print job. Even if multiple print jobs are received in succession, since there is one file for each print job, the RIP unit 121 can perform appropriate processing for each print job. This allows the printer 1 to form an appropriate printed matter for each print job.

以上、詳細に説明したように、本形態のプリンタ1は、PDFの画像データの先頭文字を検知した場合、その画像データをファイル化する。PDFの画像データには終端文字を複数含めることが可能であるので、プリンタ1は、終端文字を検知した場合であっても、その後に別の先頭文字が検知される場合か、もしくはその終端文字が受信データに含まれる最後の終端文字であった場合に、ファイル化を終了する。これにより、1つの画像データの中に終端文字を複数含めることが可能な種類のデータを受信した場合であっても、個々の画像データが適切に切り出されてファイル化されるので、個々の画像データを適切に処理できる。 As explained in detail above, when the printer 1 of this embodiment detects the first character of PDF image data, it files the image data. Because PDF image data can contain multiple terminating characters, even if the printer 1 detects a terminating character, it ends the file creation if another first character is subsequently detected, or if that terminating character is the last terminating character contained in the received data. As a result, even if data of a type that can contain multiple terminating characters is received in a single image data, each image data is appropriately extracted and filed, so that each image data can be appropriately processed.

さらに、本形態のプリンタ1は、終端文字の検知後に終端文字を再度検知した場合であっても、その後に別の先頭文字が検知される場合か、もしくはその終端文字が受信データに含まれる最後の終端文字であるまではファイル化を継続するので、個々の画像データを適切に切り出すことができる。また、プリンタ1は、別の先頭文字を検知し、その先頭文字がPDFの先頭文字であった場合、続く画像データについてのファイル化を開始するので、後続する画像データについても適切にファイル化することができる。一方、PDF以外の先頭文字が検知された場合には、プリンタ1は、ファイル化を終了してラスタデータの生成を行うので、処理時間の短縮を図ることができる。 Furthermore, even if the printer 1 of this embodiment detects a termination character again after detecting a termination character, it continues filing until another leading character is detected thereafter or until that termination character is the last termination character included in the received data, so that individual image data can be appropriately extracted. Also, if the printer 1 detects another leading character and that leading character is the leading character of a PDF, it starts filing the subsequent image data, so that the subsequent image data can also be appropriately filed. On the other hand, if a leading character other than PDF is detected, the printer 1 ends filing and generates raster data, so that processing time can be shortened.

さらに、本形態のプリンタ1は、PJLデータを検知し、PJLデータに含まれる画像データの種類を示す情報がPDFを示す場合、ファイル化を開始する一方、PJLデータに含まれる画像データの種類を示す情報がPDFを示さない場合には、速やかにラスタデータの生成を行うので、処理時間の短縮を図ることができる。 In addition, the printer 1 of this embodiment detects the PJL data, and if the information indicating the type of image data contained in the PJL data indicates PDF, it starts to create a file, but if the information indicating the type of image data contained in the PJL data does not indicate PDF, it quickly generates raster data, thereby shortening the processing time.

さらに、本形態のプリンタ1は、第1コア11と第2コア12とを備え、第1コア11にてファイル化処理を行い、第2コア12にてRIP処理を行う。これにより、印刷までの処理のうち、処理負荷が高いRIP処理を第2コア12に行わせ、RIP処理以外の処理をRIP処理と並行させることが可能になり、各処理を1つのプロセッサコアにより実行する場合と比べて、印刷までの処理時間の短縮が期待できる。さらに、本形態では、第2コア12が区切り文字情報51を備え、ファイル化処理を行う場合に第1コア11に渡すので、画像データの種類に応じて適切な終端文字を利用できる。 Furthermore, the printer 1 of this embodiment is equipped with a first core 11 and a second core 12, with the first core 11 performing the file processing and the second core 12 performing the RIP processing. As a result, among the processes up to printing, the RIP processing, which has a high processing load, is performed by the second core 12, and it is possible to perform processes other than the RIP processing in parallel with the RIP processing, which is expected to reduce the processing time up to printing compared to when each process is performed by a single processor core. Furthermore, in this embodiment, the second core 12 is equipped with delimiter character information 51 and passes it to the first core 11 when performing the file processing, so that an appropriate termination character can be used depending on the type of image data.

なお、本実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。従って本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、プリンタ1は、印刷単機能のものに限らず、複合機、複写機、FAX装置等、印刷機能を備えるものであれば適用可能である。また、プリンタ1での印刷対象となる画像データは、PC等から送信される印刷ジョブに限らず、スキャナ、クラウドサーバ、USBメモリ等から取得した画像データであっても良い。 Note that this embodiment is merely an example and does not limit the present invention in any way. Therefore, the technology disclosed in this specification can naturally be improved and modified in various ways without departing from the gist of the technology. For example, the printer 1 is not limited to a printer with a single function, but can be a multifunction machine, copier, fax machine, or other device with a printing function. Furthermore, the image data to be printed by the printer 1 is not limited to a print job sent from a PC or the like, but can be image data obtained from a scanner, cloud server, USB memory, etc.

例えば、プリンタ1は、通信IF14としてUSBメモリの挿入口を有していれば、挿入されたUSBメモリに記憶されている画像データに基づく印刷指示を受け付けることができる。例えば、印刷ジョブを記憶しているUSBメモリを装着された場合、プリンタ1は、装着されたUSBメモリから印刷ジョブ等のデータを取得しても良い。USBメモリからデータを取得する場合、プリンタ1は、USBメモリから取得したデータを入力バッファに書き込みながら、入力バッファ内のデータを対象としてS101以降の処理を行っても良い。あるいは、プリンタ1は、入力バッファに書き込むことなく、USBメモリからデータを取得しながらS101以降の処理を行っても良い。入力バッファを介さずにデータを取得する場合、実施の形態中の各処理は、「入力バッファ」を「USBメモリ」に置き換えた処理となる。また、例えば、USBメモリに画像データがファイルとして記憶されていることもあり、その場合には、プリンタ1は、メモリ40内にファイル化して記憶することなく、USBメモリに記憶されているファイルを対象としてRIP処理を行っても良い。 For example, if the printer 1 has an insertion port for a USB memory as the communication IF 14, it can accept a print instruction based on image data stored in the inserted USB memory. For example, when a USB memory storing a print job is attached, the printer 1 may acquire data such as the print job from the attached USB memory. When acquiring data from the USB memory, the printer 1 may write the data acquired from the USB memory to the input buffer and perform the processes from S101 onwards on the data in the input buffer. Alternatively, the printer 1 may perform the processes from S101 onwards while acquiring data from the USB memory without writing it to the input buffer. When acquiring data without going through the input buffer, each process in the embodiment is a process in which the "input buffer" is replaced with the "USB memory". Also, for example, image data may be stored as a file in the USB memory, and in that case, the printer 1 may perform RIP processing on the file stored in the USB memory without storing it as a file in the memory 40.

また、例えば、クラウドサーバ等からのダウンロードによって画像データを取得した場合、プリンタ1は、ダウンロードした画像データの全体を入力バッファとは別の記憶場所に記憶してから、USBメモリから取得したデータの場合と同様に処理しても良い。例えば、プリンタ1は、ダウンロードした画像データの全体を一旦ファイル化し、そのファイルを対象としてRIP処理を行っても良い。 For example, when image data is acquired by downloading from a cloud server or the like, the printer 1 may store the entire downloaded image data in a memory location other than the input buffer, and then process it in the same way as data acquired from a USB memory. For example, the printer 1 may first convert the entire downloaded image data into a file, and then perform RIP processing on that file.

また、本形態では、プリンタ1は、マルチコアCPUの第1コントローラ10を備えるとしたが、シングルコアCPUであっても良い。また、本形態では、1ページ分のラスタデータを生成するごとに印刷するとしたが、2ページ以上ごとに印刷するとしてもよい。 In addition, in this embodiment, the printer 1 is described as having a first controller 10 that is a multi-core CPU, but it may be a single-core CPU. Also, in this embodiment, printing is performed every time one page of raster data is generated, but printing may be performed every two or more pages.

また、本形態では、プリンタ1は、画像データの種類がPDFの場合にファイル化処理を実行するとしたが、PDF以外の画像データについても、ファイル化処理を実行してもよい。その場合、第2コア12は、ファイル化の対象とする他の種類の画像データについても、先頭文字を検出したら、第1コア11にファイル化要求を入力する。第1コア11は、ファイル化要求とともに、その種類の画像データの終端文字の情報を第2コア12から受け取り、受信データから終端文字を検出するまでファイル化する。なお、終端文字を複数含む可能性のない種類の画像データをファイル化する場合には、第1コア11は、終端文字を検出した時点でファイル化を終了すればよい。具体的には、第1コア11は、ファイル化処理のS303にてYESと判断したら、S313に進むとすればよい。 In addition, in this embodiment, the printer 1 executes the filing process when the type of image data is PDF, but the printer 1 may also execute the filing process for image data other than PDF. In this case, when the second core 12 detects the first character for other types of image data to be filed, it inputs a filing request to the first core 11. The first core 11 receives information on the end character of that type of image data from the second core 12 along with the filing request, and files the received data until it detects the end character. Note that when filed for a type of image data that is not likely to contain multiple end characters, the first core 11 may end the filing process when it detects the end character. Specifically, if the first core 11 determines YES in S303 of the file process, it may proceed to S313.

また、本形態では、第2コア12は、ファイルの書き込みを行わないファイル読出部122を有するとしたが、第2コア12も、第1コア11と同様に、書き込みと読み出しの可能なファイルシステムを備えていてもよい。また、本形態では、第2コア12が区切り文字情報51を有し、ファイル化要求とともに第1コア11に渡すとしたが、第1コア11も区切り文字情報51を有していてもよい。 In addition, in this embodiment, the second core 12 has a file reading unit 122 that does not write files, but the second core 12 may also have a file system that is capable of writing and reading, like the first core 11. In addition, in this embodiment, the second core 12 has delimiter information 51 and passes it to the first core 11 together with the file conversion request, but the first core 11 may also have delimiter information 51.

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

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

1 プリンタ
10 第1コントローラ
11 第1コア
12 第2コア
14 通信IF
15 印刷エンジン
40 メモリ
REFERENCE SIGNS LIST 1 Printer 10 First controller 11 First core 12 Second core 14 Communication IF
15 Print engine 40 Memory

Claims (10)

印刷ユニットと、
メモリと、
通信インタフェースと、
を備える印刷装置であって、
前記印刷装置は、
前記通信インタフェースを介して受信した受信データを先頭から順次に解析して画像データを取得し、取得した前記画像データに基づいて前記印刷ユニットに印刷を行わせ、前記印刷ユニットによる印刷の対象となる画像データの種類があらかじめ決まっており、印刷可能な画像データの種類が複数あり、前記複数の種類には、1つの画像データの中に、画像データの終端を示す終端情報を複数含めることが可能な特定の種類が含まれ、
前記印刷装置は、プロセッサコアである第1コアと、前記第1コアと異なるプロセッサコアである第2コアと、を備えるコントローラを備え、
前記第1コアは、
前記通信インタフェースを介して受信した前記受信データを解析し、画像データが含まれる可能性があると判断した場合に、第1要求を前記第2コアに出力し、
前記第2コアは、
前記第1コアからの前記第1要求に応じて、受信した前記受信データの解析を開始した後、前記受信データから前記特定の種類の画像データについての、画像データの先頭を示す先頭情報を検知した場合、第2要求を前記第1コアに出力し、
前記第1コアは、
前記第2コアからの前記第2要求に応じて、前記受信データのファイル化を開始し、
さらに前記第1コアは、
ファイル化を開始した後で前記受信データから前記終端情報を検知し、さらに前記終端情報を検知した後、前記受信データから別の先頭情報を検知した場合、あるいは前記別の先頭情報を検知せず、検知された前記終端情報が前記受信データに含まれる最後の終端情報であると特定した場合には、ファイル化を終了し、生成されたファイルを前記メモリに保存し、保存された前記ファイルを示すファイル情報を前記第2コアに出力し、
前記第2コアは、
前記第2要求を前記第1コアに出力した場合、前記第1コアから前記ファイル情報が入力されたことに応じて、前記第1コアから入力された前記ファイル情報を用いて、前記メモリに保存された前記ファイルを読み出し、読み出した前記ファイルによって示される前記受信データに基づいてRIP処理を行ってラスタデータを生成し、
前記第2要求を前記第1コアに出力しなかった場合、受信した前記受信データに基づいて前記RIP処理を行ってラスタデータを生成し、
前記第1コアは、
前記第2コアによって生成された前記ラスタデータに基づいて、前記印刷ユニットに印刷を行わせる、
ことを特徴とする印刷装置。
A printing unit;
Memory,
A communication interface;
A printing device comprising:
The printing device includes:
the data received via the communication interface is analyzed sequentially from the beginning to acquire image data, and the printing unit is caused to print based on the acquired image data, the type of image data to be printed by the printing unit is predetermined, there are a plurality of types of printable image data, and the plurality of types includes a specific type that is capable of including multiple pieces of termination information indicating the termination of the image data in one image data;
the printing device includes a controller including a first core that is a processor core and a second core that is a processor core different from the first core;
The first core is
analyzing the received data received via the communication interface, and when determining that the received data may include image data, outputting a first request to the second core;
The second core is
after starting an analysis of the received data in response to the first request from the first core , when beginning information indicating a beginning of image data for the specific type of image data is detected from the received data, a second request is output to the first core;
The first core is
in response to the second request from the second core, starting to file the received data ;
Furthermore, the first core
detects the end information from the received data after starting the file conversion, and if another beginning information is detected from the received data after the end information is detected, or if the other beginning information is not detected and the detected end information is identified as the last end information included in the received data, terminates the file conversion, stores the generated file in the memory, and outputs file information indicating the stored file to the second core;
The second core is
when the second request is output to the first core, in response to the input of the file information from the first core, reads out the file stored in the memory using the file information input from the first core, and performs RIP processing based on the received data indicated by the read file to generate raster data;
If the second request is not output to the first core, the RIP process is performed based on the received data to generate raster data;
The first core is
causing the printing unit to print based on the raster data generated by the second core ;
A printing device comprising:
請求項1に記載する印刷装置において、
前記印刷装置は、
ファイル化を開始した後で前記受信データから前記終端情報を検知し、さらに前記終端情報を検知した後、前記受信データから別の終端情報を検知した場合であっても、前記別の終端情報を検知した後もファイル化を継続し、前記受信データから前記別の先頭情報を検知した場合、あるいは別の先頭情報を検知せず、検知された前記終端情報が前記受信データに含まれる最後の終端情報であると特定した場合には、ファイル化を終了し、生成されたファイルを前記メモリに保存する、
ことを特徴とする印刷装置。
2. The printing device according to claim 1,
The printing device includes:
the terminal information is detected from the received data after starting the filing, and even if another terminal information is detected from the received data after the detection of the terminal information, the filing is continued even after the detection of the other terminal information, and when the other head information is detected from the received data, or when the other head information is not detected and the detected terminal information is identified as the last terminal information included in the received data, the filing is terminated and the generated file is stored in the memory.
A printing device comprising:
請求項1に記載する印刷装置において、
さらに前記印刷装置は、
ファイル化を開始した後で前記受信データから前記終端情報を検知し、さらに前記終端情報を検知した後、前記受信データから別の先頭情報を検知した場合には、ファイル化を終了し、生成された前記ファイルを前記メモリに保存し、検知した前記別の先頭情報が前記特定の種類の画像データについての先頭情報であれば、検知した前記別の先頭情報に基づいて次のファイルのファイル化を開始する、
ことを特徴とする印刷装置。
2. The printing device according to claim 1,
Furthermore, the printing device
the end information is detected from the received data after starting the filing, and if another head information is detected from the received data after the end information is detected, the filing is terminated and the generated file is stored in the memory, and if the other head information detected is head information for the specific type of image data, the filing of the next file is started based on the other head information detected.
A printing device comprising:
請求項3に記載する印刷装置において、
前記印刷装置は、
ファイル化を開始した後で前記受信データから前記終端情報を検知し、さらに前記終端情報を検知した後、前記受信データから別の先頭情報を検知した場合には、ファイル化を終了し、生成された前記ファイルを前記メモリに保存し、検知した前記別の先頭情報が前記特定の種類の画像データについての先頭情報であれば、検知した前記別の先頭情報に基づいて次のファイルのファイル化を開始する一方、検知した前記別の先頭情報が前記特定の種類の画像データについての先頭情報でなければ、検知した前記別の先頭情報に基づいての次のファイルのファイル化を開始せず、
さらに前記印刷装置は、
前記メモリに保存された前記ファイルを読み出し、読み出した前記ファイルによって示されるデータに基づいて前記RIP処理を行ってラスタデータを生成し、生成された前記ラスタデータに基づいて、前記印刷ユニットに印刷を行わせ、前記受信データにファイル化されていないデータが残っている場合には、残っているデータに基づいて前記RIP処理を行ってラスタデータを生成し、生成された前記ラスタデータに基づいて、前記印刷ユニットに印刷を行わせる、
ことを特徴とする印刷装置。
4. The printing device according to claim 3,
The printing device includes:
the end information is detected from the received data after starting the filing, and if other beginning information is detected from the received data after detecting the end information, the filing is terminated and the generated file is stored in the memory, and if the other beginning information detected is beginning information for the specific type of image data, the filing of the next file is started based on the other beginning information detected, whereas if the other beginning information detected is not beginning information for the specific type of image data, the filing of the next file is not started based on the other beginning information detected,
Furthermore, the printing device
reading out the file stored in the memory, performing the RIP process based on the data indicated by the read file to generate raster data, and having the printing unit print based on the generated raster data; if data that has not been converted into a file remains in the received data, performing the RIP process based on the remaining data to generate raster data, and having the printing unit print based on the generated raster data;
A printing device comprising:
請求項1から請求項4のいずれか1つに記載する印刷装置において、
前記画像データの種類ごとに、先頭情報および終端情報が対応付けて記憶されており、
前記印刷装置は、
前記受信データから前記特定の種類の画像データについての先頭情報を検知した場合、検知した前記先頭情報に基づいてファイル化を開始し、さらに検知した前記先頭情報に基づいて画像データの種類を特定し、特定した前記画像データの種類に対応する前記終端情報を抽出し、
さらに前記印刷装置は、
ファイル化を開始した後で、前記受信データから、抽出した前記終端情報を検知し、さらに前記終端情報を検知した後、前記受信データから別の先頭情報を検知した場合、あるいは別の先頭情報を検知せず、検知された前記終端情報が前記受信データに含まれる最後の終端情報であると特定した場合には、ファイル化を終了し、生成された前記ファイルを前記メモリに保存する、
ことを特徴とする印刷装置。
5. The printing device according to claim 1,
beginning information and end information are stored in association with each type of image data;
The printing device includes:
When the start information for the specific type of image data is detected from the received data, a file is started based on the detected start information, the type of image data is further identified based on the detected start information, and the end information corresponding to the identified type of image data is extracted.
Furthermore, the printing device
after starting the filing, the extracted terminal information is detected from the received data, and if another head information is detected from the received data after the terminal information is detected, or if no other head information is detected and the detected terminal information is identified as the last terminal information included in the received data, the filing is terminated and the generated file is stored in the memory.
A printing device comprising:
請求項1から請求項5のいずれか1つに記載する印刷装置において、
前記印刷装置は、
ファイル化を開始した後で前記受信データから前記終端情報を検知した場合、前記終端情報を検知してから所定のデータ量を読み込むまで、先頭情報の検知を試行する、
ことを特徴とする印刷装置。
6. The printing device according to claim 1,
The printing device includes:
when the end information is detected from the received data after starting to convert the data into a file, detection of the beginning information is attempted from the detection of the end information until a predetermined amount of data is read.
A printing device comprising:
請求項1から請求項6のいずれか1つに記載する印刷装置において、
1つの画像データの中に終端情報を複数含めることが可能な前記特定の種類の画像データは、PDF(Portable Document Format)の画像データである、
ことを特徴とする印刷装置。
7. The printing device according to claim 1,
The specific type of image data that can include multiple pieces of termination information in one image data is image data in PDF (Portable Document Format).
A printing device comprising:
請求項1に記載する印刷装置において、
前記印刷装置は、
受信した前記受信データを解析し、前記受信データの中から前記印刷装置の制御に用いるコマンドであるプリンタ制御コマンドを検知し、さらに検知した前記プリンタ制御コマンドの中に画像データの種類を示す種類特定コマンドが含まれ、検知した前記プリンタ制御コマンドの中に含まれる前記種類特定コマンドが前記特定の種類を示す場合、あるいは前記受信データの中に前記プリンタ制御コマンドが含まれない場合に、前記受信データから前記特定の種類の画像データについての前記先頭情報の検知を試行し、前記受信データから前記特定の種類の画像データについての、前記先頭情報を検知した場合、検知した前記先頭情報に基づいてファイル化を開始し、
ファイル化を開始した後で前記受信データから前記終端情報を検知し、さらに前記終端情報を検知した後、前記受信データから別の先頭情報を検知した場合、あるいは別の先頭情報を検知せず、検知された前記終端情報が前記受信データに含まれる最後の終端情報であると特定した場合には、ファイル化を終了し、生成されたファイルを前記メモリに保存し、
前記メモリに保存された前記ファイルを読み出し、読み出した前記ファイルによって示される前記受信データに基づいて前記RIP処理を行ってラスタデータを生成し、生成された前記ラスタデータに基づいて、前記印刷ユニットに印刷を行わせる、
ことを特徴とする印刷装置。
2. The printing device according to claim 1,
The printing device includes:
the received data is analyzed, and a printer control command which is a command used to control the printing device is detected from the received data; if the detected printer control command includes a type specifying command which indicates a type of image data, and if the type specifying command included in the detected printer control command indicates the specific type, or if the printer control command is not included in the received data, an attempt is made to detect leading information for the specific type of image data from the received data; and if the leading information for the specific type of image data is detected from the received data, filing is started based on the detected leading information;
detects the end information from the received data after starting the file conversion, and if, after detecting the end information, another beginning information is detected from the received data, or if no beginning information is detected and the detected end information is identified as the last end information included in the received data, terminates the file conversion and stores the generated file in the memory;
reading out the file stored in the memory, performing the RIP process based on the received data indicated by the read file to generate raster data, and causing the printing unit to perform printing based on the generated raster data;
A printing device comprising:
請求項8に記載する印刷装置において、
前記印刷装置は、
受信した前記受信データを解析し、前記受信データの中から前記印刷装置の制御に用いるコマンドである前記プリンタ制御コマンドを検知し、さらに検知した前記プリンタ制御コマンドの中に画像データの種類を示す前記種類特定コマンドが含まれ、検知した前記プリンタ制御コマンドの中に含まれる前記種類特定コマンドが前記特定の種類を示す場合、あるいは前記受信データの中に前記プリンタ制御コマンドが含まれない場合に、前記受信データから前記特定の種類の画像データについての先頭情報の検知を試行し、前記受信データから前記特定の種類の画像データについての、前記先頭情報を検知した場合、検知した前記先頭情報に基づいてファイル化を開始し、
ファイル化を開始した後で前記受信データから前記終端情報を検知し、さらに前記終端情報を検知した後、前記受信データから別の先頭情報を検知した場合、あるいは別の先頭情報を検知せず、検知された前記終端情報が前記受信データに含まれる最後の終端情報であると特定した場合には、ファイル化を終了し、生成されたファイルを前記メモリに保存し、
前記メモリに保存された前記ファイルを読み出し、読み出した前記ファイル全体から前記RIP処理に用いるパラメータを抽出し、抽出された前記パラメータに従って、前記ファイルによって示される前記受信データに基づいて前記RIP処理を行ってラスタデータを生成し、生成された前記ラスタデータに基づいて、前記印刷ユニットに印刷を行わせる、
ことを特徴とする印刷装置。
9. The printing device according to claim 8,
The printing device includes:
the received data is analyzed, and the printer control command which is a command used to control the printing device is detected from the received data, and if the detected printer control command includes a type specifying command which indicates a type of image data, and if the type specifying command included in the detected printer control command indicates the specific type, or if the printer control command is not included in the received data, an attempt is made to detect leading information for the specific type of image data from the received data, and if the leading information for the specific type of image data is detected from the received data, file creation is started based on the detected leading information,
detects the end information from the received data after starting the file conversion, and if, after detecting the end information, another beginning information is detected from the received data, or if no beginning information is detected and the detected end information is identified as the last end information included in the received data, terminates the file conversion and stores the generated file in the memory;
reading out the file stored in the memory, extracting parameters to be used for the RIP process from the entirety of the read out file, performing the RIP process based on the received data indicated by the file in accordance with the extracted parameters to generate raster data, and causing the printing unit to perform printing based on the generated raster data;
A printing device comprising:
請求項8または請求項9に記載する印刷装置において、
前記印刷装置は、
受信した前記受信データを解析し、前記受信データの中から前記印刷装置の制御に用いるコマンドである前記プリンタ制御コマンドを検知し、さらに検知した前記プリンタ制御コマンドの中に画像データの種類を示す前記種類特定コマンドが含まれ、検知した前記プリンタ制御コマンドの中に含まれる前記種類特定コマンドが前記特定の種類を示さない場合、前記受信データのファイル化を行わず、前記受信データに基づいて前記RIP処理を行ってラスタデータを生成し、生成された前記ラスタデータに基づいて、前記印刷ユニットに印刷を行わせる、
ことを特徴とする印刷装置。
10. The printing device according to claim 8 or 9,
The printing device includes:
analyzing the received data, detecting the printer control command which is a command used to control the printing device from the received data, and if the detected printer control command includes the type specifying command which indicates the type of image data and the type specifying command included in the detected printer control command does not indicate the specific type, not filing the received data, but performing the RIP processing based on the received data to generate raster data, and causing the printing unit to perform printing based on the generated raster data;
A printing device comprising:
JP2021062500A 2021-04-01 2021-04-01 Printing device Active JP7615843B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021062500A JP7615843B2 (en) 2021-04-01 2021-04-01 Printing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021062500A JP7615843B2 (en) 2021-04-01 2021-04-01 Printing device

Publications (2)

Publication Number Publication Date
JP2022157949A JP2022157949A (en) 2022-10-14
JP7615843B2 true JP7615843B2 (en) 2025-01-17

Family

ID=83559407

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021062500A Active JP7615843B2 (en) 2021-04-01 2021-04-01 Printing device

Country Status (1)

Country Link
JP (1) JP7615843B2 (en)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006004183A (en) 2004-06-17 2006-01-05 Konica Minolta Business Technologies Inc Device, method and program for image processing, and device, method and program for file creation
JP2008072671A (en) 2006-09-15 2008-03-27 Ricoh Co Ltd Image processing apparatus, pattern image synthesizing method, and pattern image synthesizing program
US20090002726A1 (en) 2007-06-26 2009-01-01 Xerox Corporation Raster image processing of hold jobs when digital front end is idle
JP2009202488A (en) 2008-02-28 2009-09-10 Oki Data Corp Image forming apparatus
JP2011068010A (en) 2009-09-25 2011-04-07 Kyocera Mita Corp Image forming apparatus
JP2012111210A (en) 2010-11-29 2012-06-14 Konica Minolta Business Technologies Inc Apparatus, method and program for forming print data
JP2013003965A (en) 2011-06-20 2013-01-07 Kyocera Document Solutions Inc Image formation system, image formation device, and image formation program
JP2013192125A (en) 2012-03-15 2013-09-26 Hitachi Ltd Electronic signature system and method for electronic signature and postscript
JP2014119998A (en) 2012-12-17 2014-06-30 Canon Inc Output processing system and output processing method
JP2016063407A (en) 2014-09-18 2016-04-25 コニカミノルタ株式会社 Image forming device, parallel processing control method, and control program
JP2020006514A (en) 2018-07-02 2020-01-16 コニカミノルタ株式会社 Image forming device and program

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006004183A (en) 2004-06-17 2006-01-05 Konica Minolta Business Technologies Inc Device, method and program for image processing, and device, method and program for file creation
JP2008072671A (en) 2006-09-15 2008-03-27 Ricoh Co Ltd Image processing apparatus, pattern image synthesizing method, and pattern image synthesizing program
US20090002726A1 (en) 2007-06-26 2009-01-01 Xerox Corporation Raster image processing of hold jobs when digital front end is idle
JP2009202488A (en) 2008-02-28 2009-09-10 Oki Data Corp Image forming apparatus
JP2011068010A (en) 2009-09-25 2011-04-07 Kyocera Mita Corp Image forming apparatus
JP2012111210A (en) 2010-11-29 2012-06-14 Konica Minolta Business Technologies Inc Apparatus, method and program for forming print data
JP2013003965A (en) 2011-06-20 2013-01-07 Kyocera Document Solutions Inc Image formation system, image formation device, and image formation program
JP2013192125A (en) 2012-03-15 2013-09-26 Hitachi Ltd Electronic signature system and method for electronic signature and postscript
JP2014119998A (en) 2012-12-17 2014-06-30 Canon Inc Output processing system and output processing method
JP2016063407A (en) 2014-09-18 2016-04-25 コニカミノルタ株式会社 Image forming device, parallel processing control method, and control program
JP2020006514A (en) 2018-07-02 2020-01-16 コニカミノルタ株式会社 Image forming device and program

Also Published As

Publication number Publication date
JP2022157949A (en) 2022-10-14

Similar Documents

Publication Publication Date Title
JP6575074B2 (en) Information processing apparatus, information processing method, and program
JP4784361B2 (en) Printing system, information processing apparatus, and program
US8792124B2 (en) Print control apparatus, image forming system, and non-transitory computer readable medium
US20110255126A1 (en) Printing apparatus, print processing method, and program
US9507544B2 (en) Information processing apparatus, recording medium, and control method to process print data using filters
US9830541B2 (en) Image output system, image output method, document server, and non-transitory computer readable recording medium
JP6786408B2 (en) Image forming apparatus, control method of image forming apparatus, and program
US11269565B2 (en) Image forming apparatus that edits page description language based on a delete instruction, and a related control method and storage medium
US10310788B2 (en) Control method for generating data used for printing and information processing apparatus
JP4110945B2 (en) Image processing apparatus, image forming apparatus, and program
US20150002873A1 (en) Image forming apparatus, method for controlling the same, and storage medium
US9871933B2 (en) Information processing apparatus and image processing system for generating image data for a preview image by using print data described in page description language
JP7615843B2 (en) Printing device
US11934723B2 (en) Converting PJL print data to PDL print data using a conversion rule
JP7582029B2 (en) Printing device
JP2012058795A (en) Information processor, document image processor, electronic document processing method, and program
JP5244770B2 (en) Image forming apparatus
JP2004188865A (en) Image forming device and program
JP2011142614A (en) Image processing apparatus, and control method therefor
JP2012155415A (en) Printing system
EP2284689B1 (en) PDL data processing device
JP2015204045A (en) Information processing device and control method thereof
JP7528614B2 (en) Control program, image forming apparatus, and information processing apparatus
US9165228B2 (en) Printing apparatus allowing user change of operational control of job, control method thereof, and storage medium
US8836984B2 (en) Image processing apparatus, method and storage medium for increasing the speed of printing data stored in an external storage medium by reducing the number of accesses to the medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240216

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240911

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240924

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20241122

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20241216

R150 Certificate of patent or registration of utility model

Ref document number: 7615843

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150