JP2023050596A - printer - Google Patents

printer Download PDF

Info

Publication number
JP2023050596A
JP2023050596A JP2021160781A JP2021160781A JP2023050596A JP 2023050596 A JP2023050596 A JP 2023050596A JP 2021160781 A JP2021160781 A JP 2021160781A JP 2021160781 A JP2021160781 A JP 2021160781A JP 2023050596 A JP2023050596 A JP 2023050596A
Authority
JP
Japan
Prior art keywords
raster
data
printer
raster data
area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021160781A
Other languages
Japanese (ja)
Inventor
喜裕 糸川
Yoshihiro Itokawa
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 JP2021160781A priority Critical patent/JP2023050596A/en
Publication of JP2023050596A publication Critical patent/JP2023050596A/en
Pending legal-status Critical Current

Links

Images

Abstract

To provide a technique to increase the likelihood that a printer capable of collate printing can continue processing without making a memory become full even when performing collate printing of image data having a large number of pages.SOLUTION: A printer 1 memorizes obtained raster data in raster areas 40 of a memory 12, and after printing, erases the raster data when not performing collate printing, and does not erase the raster data when performing collate printing. The printer 1, when there are no vacancies in the raster areas 40 at the time of memorizing the raster data subjected to collate printing, erases data corresponding to at least one page of the raster data memorized in the raster areas 40, and memorizes the raster data subjected to collate printing in an external memory 50. When printing an image of the raster data erased from the raster areas 40, the printer 1 reads out the raster data memorized in the external memory 50, memorizes the data in the raster area 40 and utilizes the data in printing.SELECTED DRAWING: Figure 8

Description

本明細書に開示される技術分野は、複数ページ分の画像データに基づく部単位の印刷が可能なプリンタに関する。 The technical field disclosed in this specification relates to a printer capable of collating printing based on image data for multiple pages.

従来、複数ページ分の画像データに基づく部単位の印刷である、いわゆるコレート印刷(あるいはソート印刷、丁合印刷)と呼ばれる印刷が可能なプリンタが実用化されている。例えば特許文献1には、コレート印刷が可能なプリンタであって、中間データに展開してメモリに記憶する途中にメモリフルが発生した場合に、それまで記憶した中間データに基づくコレート印刷を行った後、印刷済みの中間データをメモリから消去し、残りの中間データをメモリに記憶して処理を継続することで、できるだけコレート印刷に近づける構成が開示されている。 2. Description of the Related Art Conventionally, printers capable of collating printing (or sorting printing or collating printing), which is collation printing based on image data of a plurality of pages, have been put into practical use. For example, in Japanese Patent Laid-Open No. 2002-100002, a printer capable of collate printing performs collate printing based on the intermediate data stored up to that point when the memory becomes full while developing intermediate data and storing it in the memory. After that, the printed intermediate data is erased from the memory, the remaining intermediate data is stored in the memory, and the processing is continued, thereby making it as close to collate printing as possible.

特開平11-170631号公報JP-A-11-170631

特許文献1に開示されているように、コレート印刷の場合、プリンタでは、複数ページ分の画像データをメモリに記憶する必要があり、メモリフルによって処理の継続が困難になるという問題がある。特許文献1では、メモリフルが発生した段階で印刷を開始することでメモリを解放して処理を継続させているが、この場合、途中のページまでのコレート印刷になり、ユーザの所望する印刷順序にはならない。そのため、コレート印刷を継続させるための処理には、改善の余地がある。 As disclosed in Japanese Patent Application Laid-Open No. 2002-200011, in the case of collate printing, the printer needs to store image data for a plurality of pages in a memory. In Japanese Patent Application Laid-Open No. 2004-100001, printing is started at the stage when the memory becomes full, thereby releasing the memory and continuing the process. does not become Therefore, there is room for improvement in processing for continuing collate printing.

本明細書は、コレート印刷が可能なプリンタであって、ページ数が多い画像データに対するコレート印刷を行う場合であっても、メモリフルにならずに処理を継続できる可能性を高める技術を開示する。 This specification discloses a technique for a printer capable of collate printing, which increases the possibility of continuing processing without memory full even when performing collate printing for image data with a large number of pages. .

この課題の解決を目的としてなされたプリンタは、内部メモリを備えるプリンタであって、前記プリンタは、印刷対象の画像を示すラスタデータを取得し、取得された前記ラスタデータを空いているラスタ領域に記憶し、前記ラスタデータは、ラスタ形式のデータであり、前記ラスタ領域は、前記ラスタデータの記憶に先立って前記内部メモリに確保された領域であり、印刷対象の前記画像は複数ページある場合があり、さらに前記プリンタは、前記ラスタ領域に記憶されている前記ラスタデータを読み出し、読み出された前記ラスタデータに示される画像を印刷し、さらに前記プリンタは、部単位での印刷が指定されていない前記ラスタデータについては、印刷が完了した後、前記ラスタ領域から消去し、部単位での印刷が指定されている前記ラスタデータについては、1部目の印刷が完了しても、前記ラスタ領域から消去せず、2部目以降の印刷に利用し、指定された部数の印刷が完了した後、前記ラスタ領域から消去し、さらに前記プリンタは、部単位の印刷が指定されている前記ラスタデータを記憶する際に、前記ラスタ領域に空きが無かった場合、前記ラスタ領域に記憶されている前記ラスタデータのうち、少なくとも1ページ分を前記ラスタ領域から消去し、さらに前記プリンタは、取得された前記ラスタデータに部単位での印刷が指定されている場合、取得された前記ラスタデータを前記プリンタと接続される外部メモリに記憶し、さらに前記プリンタは、指定された部数の印刷が完了する前に前記ラスタ領域から消去された前記ラスタデータに示される画像を印刷する場合、前記外部メモリから印刷対象の前記ラスタデータを読み出して前記ラスタ領域に記憶し、前記外部メモリから読み出された前記ラスタデータを印刷に利用する、ことを特徴としている。 A printer designed to solve this problem is a printer having an internal memory, the printer acquires raster data representing an image to be printed, and stores the acquired raster data in an empty raster area. The raster data is data in raster format, the raster area is an area secured in the internal memory prior to storing the raster data, and the image to be printed may have a plurality of pages. Further, the printer reads the raster data stored in the raster area, prints an image indicated by the read raster data, and the printer is designated to print in collated units. If the raster data is not printed, it is deleted from the raster area after printing is completed. is used for printing the second and subsequent copies, and after printing of the designated number of copies is completed, the raster data is erased from the raster area, and the printer erases the raster data for which collation printing is specified. is stored, if there is no space in the raster area, at least one page of the raster data stored in the raster area is erased from the raster area, and the printer erases the acquired When the raster data specifies collation printing, the acquired raster data is stored in an external memory connected to the printer, and the printer prints the specified number of copies before printing is completed. When printing an image indicated by the raster data erased from the raster area, the raster data to be printed is read from the external memory and stored in the raster area, and the raster data read from the external memory is stored in the raster area. It is characterized by using data for printing.

本明細書に開示されるプリンタは、部単位の印刷では、取得したラスタデータを記憶する際に、ラスタ領域に空きが無かった場合、ラスタ領域に記憶されている少なくとも1ページ分のラスタデータを消去してラスタ領域を空ける。これにより、ラスタデータを記憶可能になり、その結果として印刷の処理を継続できる。さらに、プリンタは、部単位の印刷では、取得したラスタデータを外部メモリに記憶し、指定された部数の印刷が完了する前にラスタ領域から消去されてしまったラスタデータを、外部メモリから読み出して印刷に利用する。従って、消去されてしまったラスタデータに示される画像についても印刷でき、部単位の印刷の処理を完了できる可能性が高まる。 The printer disclosed in this specification stores at least one page of raster data stored in the raster area if there is no space in the raster area when storing acquired raster data in collated printing. Clear to free up raster space. As a result, the raster data can be stored, and as a result, the printing process can be continued. Furthermore, in printing by collation, the printer stores the acquired raster data in the external memory, and reads out the raster data that has been erased from the raster area before the printing of the specified number of copies is completed, from the external memory. Use for printing. Therefore, it is possible to print even the image indicated by the erased raster data, increasing the possibility of completing the collation printing process.

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

本明細書に開示される技術によれば、コレート印刷が可能なプリンタであって、ページ数が多い画像データに対するコレート印刷を行う場合であっても、メモリフルにならずに処理を継続できる可能性を高める技術が実現される。 According to the technology disclosed in this specification, even when a printer capable of collate printing performs collate printing for image data with a large number of pages, it is possible to continue processing without memory becoming full. technology that enhances performance.

本形態のプリンタの概略構成を示すブロック図である。1 is a block diagram showing a schematic configuration of a printer of this embodiment; FIG. 印刷ジョブの例を示す説明図である。FIG. 4 is an explanatory diagram showing an example of a print job; プリンタの各部を示す説明図である。4 is an explanatory diagram showing each part of the printer; FIG. データ受信処理の手順を示すフローチャートである。4 is a flowchart showing the procedure of data reception processing; 通常印刷処理の手順を示すフローチャートである。4 is a flowchart showing the procedure of normal print processing; エンジン制御処理の手順を示すフローチャートである。4 is a flowchart showing the procedure of engine control processing; 1部目印刷処理の手順を示すフローチャートである。4 is a flow chart showing the procedure of print processing for the first copy. 内部保存処理の手順を示すフローチャートである。7 is a flow chart showing a procedure of internal storage processing; コレート印刷での1部目の印刷時のメモリ利用の例を示す説明図である。FIG. 10 is an explanatory diagram showing an example of memory utilization when printing the first copy in collate printing; 2部目以降印刷処理の手順を示すフローチャートである。FIG. 10 is a flow chart showing the procedure of print processing for the second and subsequent copies; FIG. コレート印刷での2部目以降の印刷時のメモリ利用の例を示す説明図である。FIG. 10 is an explanatory diagram showing an example of memory utilization when printing the second and subsequent copies in collate printing; コレート印刷での最終部の印刷時のメモリ利用の例を示す説明図である。FIG. 10 is an explanatory diagram showing an example of memory utilization when printing the final copy in collate printing;

以下、本実施の形態にかかるプリンタについて、添付図面を参照しつつ詳細に説明する。本形態は、コレート印刷が可能なプリンタを開示するものである。 A printer according to the present embodiment will be described in detail below with reference to the accompanying drawings. This embodiment discloses a printer capable of collate printing.

本形態のプリンタ1は、図1に示すように、CPU11と、メモリ12と、を含むコントローラ10を備えている。また、プリンタ1は、ユーザインタフェース(以下、「ユーザIF」とする)13と、通信インタフェース(以下、「通信IF」とする)14と、印刷エンジン15と、を備え、これらがコントローラ10に電気的に接続されている。 The printer 1 of this embodiment includes a controller 10 including a CPU 11 and a memory 12, as shown in FIG. 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 , and a print engine 15 . properly connected.

CPU11は、メモリ12から読み出したプログラムに従って、また、ユーザの操作に基づいて、各種の処理を実行する。なお、図1中のコントローラ10は、プリンタ1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にプリンタ1に存在する単一のハードウェアを表すとは限らない。 The CPU 11 executes various processes according to programs read from the memory 12 and based on user's operations. Note that the controller 10 in FIG. 1 is a collective term for hardware and software used to control the printer 1 , and does not necessarily represent a single piece of hardware that actually exists in the printer 1 .

本形態のプリンタ1のメモリ12には、各種のプログラムや各種のデータが記憶されている。メモリ12には、例えば、プリンタ1の起動時に、図1に示すように、ラスタ領域40と、受信バッファ60と、が確保される。本形態のメモリ12は、プリンタ1に内蔵されるROM、RAM、HDD等であって、内部メモリの一例である。メモリ12は、各種の処理が実行される際の作業領域としても利用される。CPU11が備えるバッファも、内部メモリの一例である。メモリ12に記憶されるプログラムやデータ、データを格納するバッファないし領域についての詳細は、後述する。 Various programs and various data are stored in the memory 12 of the printer 1 of this embodiment. In the memory 12, for example, when the printer 1 is activated, a raster area 40 and a reception buffer 60 are secured as shown in FIG. The memory 12 of this embodiment is a ROM, RAM, HDD, etc. built in the printer 1, and is an example of an internal memory. The memory 12 is also used as a work area when various processes are executed. A buffer provided in the CPU 11 is also an example of an internal memory. Details of programs and data stored in the memory 12, and buffers or areas for storing the data will be described later.

ユーザIF13は、例えば、タッチパネルであり、ユーザに情報を報知するための画面を表示するハードウェアと、ユーザによる操作を受け付けるハードウェアと、を含む。ユーザIF13は、表示部と操作ボタンとの組み合わせであっても良い。 The user IF 13 is, for example, a touch panel, and includes hardware that displays a screen for informing the user of information and hardware that accepts user operations. The user IF 13 may be a combination of a display and operation buttons.

通信IF14は、パーソナルコンピュータ(以下、「PC」とする)3等の外部デバイスと通信を行うためのハードウェアを含む。通信IF14の通信規格は、イーサネット(登録商標)、Wi-Fi(登録商標)、USBなどである。プリンタ1は、複数の通信規格に対応する複数の通信IF14を備えていてもよい。 The communication IF 14 includes hardware for communicating with an external device such as a personal computer (hereinafter referred to as “PC”) 3 . The communication standard of the communication IF 14 is Ethernet (registered trademark), Wi-Fi (registered trademark), USB, or the like. The printer 1 may include multiple communication IFs 14 that support multiple communication standards.

印刷エンジン15は、シート等の印刷媒体に画像を印刷するための構成を含む。印刷エンジン15の画像形成方式は、例えば、電子写真方式である。本形態のプリンタ1は、カラー印刷が可能であっても良いし、モノクロ印刷のみを行う構成であっても良い。 The print engine 15 includes configuration for printing images on print media such as sheets. The image forming method of the print engine 15 is, for example, an electrophotographic method. The printer 1 of this embodiment may be capable of color printing, or may be configured to perform only monochrome printing.

本形態のプリンタ1には、着脱可能な外部メモリ50が装着されている。外部メモリ50は、例えば、USBメモリ等のCPU11が読み取り可能かつ書き込み可能なストレージ媒体である。なお、コンピュータが読み取り可能なストレージ媒体とは、non-transitoryな媒体である。non-transitoryな媒体には、上記の例の他に、CD-ROM、DVD-ROM等の記録媒体も含まれる。また、non-transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non-transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。 A detachable external memory 50 is attached to the printer 1 of this embodiment. The external memory 50 is, for example, a storage medium such as a USB memory that is readable and writable by the CPU 11 . A computer-readable storage medium is a non-transitory medium. In addition to the above examples, non-transitory media include recording media such as CD-ROMs and DVD-ROMs. 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 kind of computer-readable medium, but is a non-transitory computer-readable storage. Not included in media.

本形態のプリンタ1は、例えば、図1に示すように、PC3と接続され、PC3から印刷ジョブ等のデータを受信する。PC3は、外部デバイスの一例である。PC3は、例えば、図1に示すように、プリンタ1に対応するプリンタドライバ31を備えている。プリンタドライバ31は、ユーザの指示に基づいて、プリンタ1に印刷させるための印刷ジョブを生成するプログラムである。また、PC3は、プリンタドライバ31の機能を利用してプリンタ1に印刷を実行させるためのアプリケーションプログラムを備えている。 For example, as shown in FIG. 1, the printer 1 of this embodiment is connected to the PC 3 and receives data such as print jobs from the PC 3 . PC3 is an example of an external device. The PC 3 has, for example, a printer driver 31 corresponding to the printer 1, as shown in FIG. The printer driver 31 is a program that generates a print job for causing the printer 1 to print based on a user's instruction. The PC 3 also has an application program for causing the printer 1 to print using the functions of the printer driver 31 .

例えば、図2に示すように、PC3のプリンタドライバ31にて生成されてプリンタ1に渡される印刷ジョブ200は、印刷に関するパラメータを示すPJLデータ201、203と、印刷対象の画像を示す印刷対象データ202と、を含む。なお、プリンタ1での印刷対象となるデータは、PC3等から送信される印刷ジョブに限らず、スキャナ、クラウドサーバ、USBメモリ等から取得したデータであっても良い。 For example, as shown in FIG. 2, a print job 200 generated by the printer driver 31 of the PC 3 and transferred to the printer 1 includes PJL data 201 and 203 indicating parameters related to printing, and print target data indicating an image to be printed. 202 and. Data to be printed by the printer 1 is not limited to a print job transmitted from the PC 3 or the like, and may be data obtained from a scanner, a cloud server, a USB memory, or the like.

印刷対象データ202は、例えば、GDIデータである。GDIデータは、ラスタ形式のデータであって、このままで印刷エンジン15が印刷に利用できるラスタデータである。印刷対象データ202は、PDLデータであっても良い。PDLデータは、例えば、PCLXL、PDF等の形式のデータである。PDLデータは、画像データの一例である。PDLデータは、ラスタ形式ではないデータである。PDLデータを受信した場合、プリンタ1は、印刷エンジン15にて印刷に利用できるようにするために、PDLデータをラスタライズしてラスタデータを生成して利用する。 The print target data 202 is, for example, GDI data. The GDI data is data in raster format, and can be used for printing by the print engine 15 as it is. The print target data 202 may be PDL data. PDL data is data in formats such as PCLXL and PDF, for example. PDL data is an example of image data. PDL data is data that is not in raster format. When receiving PDL data, the printer 1 rasterizes the PDL data to generate raster data so that the print engine 15 can use it for printing.

次に、プリンタ1の動作について説明する。なお、以下の処理は、基本的に、プログラムに記述された命令に従ったCPU11の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「取得」、「受付」、「制御」等の処理は、CPU11の処理を表している。CPUによる処理は、OSのAPIを用いたハードウェア制御も含む。本明細書では、OSの記載を省略して各プログラムの動作を説明する。すなわち、以下の説明において、「プログラムBがハードウェアCを制御する」という趣旨の記載は、「プログラムBがOSのAPIを用いてハードウェアCを制御する」ことを指してもよい。また、プログラムに記述された命令に従ったCPU11の処理を、省略した文言で記載することがある。例えば、「CPU11が行う」のように記載することがある。また、プログラムに記述された命令に従ったCPU11の処理を、「プログラムAが行う」のようにCPUを省略した文言で記載することがある。 Next, operation of the printer 1 will be described. It should be noted that the following processing basically shows the processing of the CPU 11 according to the instructions described in the program. That is, the processes such as "judgment", "extraction", "selection", "calculation", "determination", "specification", "acquisition", "acceptance", "control", etc. in the following description are performed by the CPU 11. represent. Processing by the CPU also includes hardware control using the API of the OS. In this specification, the description of the OS is omitted and the operation of each program will be described. That is, in the following description, the description to the effect that "the program B controls the hardware C" may refer to "the program B controls the hardware C using the API of the OS". Also, the processing of the CPU 11 according to the instructions written in the program may be described with abbreviated words. For example, it may be described as "performed by the CPU 11". In addition, the processing of the CPU 11 according to the instructions described in the program may be described by abbreviating the CPU, such as "performed by the program A."

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

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

本形態のプリンタ1は、図3に示すように、受信バッファ制御部21、ラスタライズ部22、システムメモリ管理部23、エンジン制御部24を含む複数の構成を備えている。受信バッファ制御部21は、受信バッファ60を制御する。ラスタライズ部22は、ラスタライズ処理を実行する。システムメモリ管理部23は、プリンタ1に内蔵されるメモリ12を管理する。エンジン制御部24は、印刷エンジン15を制御する。なお、図3に示す各構成は、ソフトウェアで構成されていても良いし、ハードウェアで構成されていても良いし、ソフトウェアとハードウェアとの組み合わせで構成されていても良い。後述する図4等の各フローチャートに記載したCPU11の処理には、上述した複数の構成による処理が含まれる。 As shown in FIG. 3, the printer 1 of this embodiment has a plurality of components including a reception buffer control section 21, a rasterization section 22, a system memory management section 23, and an engine control section 24. FIG. The receive buffer control unit 21 controls the receive buffer 60 . The rasterization unit 22 executes rasterization processing. A system memory management unit 23 manages the memory 12 built in the printer 1 . The engine control section 24 controls the print engine 15 . Each configuration shown in FIG. 3 may be configured by software, may be configured by hardware, or may be configured by a combination of software and hardware. The processing of the CPU 11 described in each flowchart such as FIG. 4 to be described later includes processing by the plurality of configurations described above.

プリンタ1において、メモリ12中に所定のメモリ領域を確保する処理、確保したメモリ領域を解放する処理、メモリ12にデータを書き込む処理、メモリ12からデータを消去する処理、メモリ12からデータを読み出す処理は、システムメモリ管理部23に要求することで実行される。なお、メモリ12にデータを書き込む処理には、メモリ12にデータを上書きする処理が含まれる。 In the printer 1, a process of securing a predetermined memory area in the memory 12, a process of releasing the secured memory area, a process of writing data to the memory 12, a process of erasing data from the memory 12, and a process of reading data from the memory 12. is executed by making a request to the system memory management unit 23 . Note that the process of writing data to the memory 12 includes the process of overwriting the data in the memory 12 .

システムメモリ管理部23は、メモリ領域の確保要求に応じて、要求されたサイズのメモリを、要求元のプログラムに対して確保された領域として登録する。システムメモリ管理部23は、確保された領域として登録した場合、その領域に対して、確保を要求した要求元のプログラムから、データ書き込みの要求、データ消去の要求を受け付けた場合には、要求に従った処理を行い、他のプログラムからの要求を受け付けても、要求に従った処理を実行しない。また、システムメモリ管理部23は、メモリ領域の確保要求を受け付けたとしても、すでに確保された領域を、さらに、確保された領域として確保することはない。 In response to the memory area reservation request, the system memory management unit 23 registers the requested size of memory as an area reserved for the requesting program. When the system memory management unit 23 registers the area as a reserved area and receives a data write request or a data erase request from the requesting program that requested the area to be reserved, the system memory management unit 23 responds to the request. It performs the processing according to the request, and does not execute the processing according to the request even if it receives a request from another program. Further, even if the system memory management unit 23 receives a request to secure a memory area, it does not further secure the already secured area as a secured area.

また、確保を要求した要求元のプログラムからメモリ領域の解放が要求されると、システムメモリ管理部23は、確保されていたメモリ領域を解放する。メモリ領域を解放すると、システムメモリ管理部23は、解放された領域を、データ書き込み、メモリ領域の確保に用いるようになる。 Further, when the requesting program that requested the allocation requests release of the memory area, the system memory management unit 23 releases the secured memory area. After releasing the memory area, the system memory management unit 23 uses the released area for writing data and securing the memory area.

システムメモリ管理部23は、データ書き込みの要求を受け付けた場合、基本的には、すでに他のデータが書き込まれている領域には、データを書き込まない。書き込まれているデータを消去すると、システムメモリ管理部23は、消去されたデータが記憶されていた領域を、データ書き込みに用いるようになる。すなわち、システムメモリ管理部23による、データ消去の処理は、そのデータが記憶された領域を、他のデータの書き込みに使うことができるようにする、という概念である。なお、データ上書きの要求を受け付けた場合、システムメモリ管理部23は、すでにデータが書き込まれている領域であっても、要求されたデータを書き込む。 When receiving a data write request, the system memory management unit 23 basically does not write data to an area in which other data has already been written. After erasing the written data, the system memory management unit 23 uses the area in which the erased data was stored for data writing. That is, the concept of data erasing processing by the system memory management unit 23 is to enable the area in which the data is stored to be used for writing other data. Note that when receiving a data overwrite request, the system memory management unit 23 writes the requested data even in an area in which data has already been written.

本形態のプリンタ1におけるデータ受信処理の手順について、図4のフローチャートを参照して説明する。データ受信処理は、プリンタ1が通信IF14を介して、PC3等からデータを受信したことを契機に、プリンタ1のCPU11にて実行される。プリンタ1は、受信したデータを、一旦、受信バッファ60に記憶する。受信バッファ60は、所定のサイズの領域であって、プリンタ1の起動時にメモリ12に確保される。 The procedure of data reception processing in the printer 1 of this embodiment will be described with reference to the flowchart of FIG. The data reception process is executed by the CPU 11 of the printer 1 when the printer 1 receives data from the PC 3 or the like via the communication IF 14 . The printer 1 temporarily stores the received data in the reception buffer 60 . The reception buffer 60 is an area of a predetermined size, and is reserved in the memory 12 when the printer 1 is activated.

本形態のプリンタ1は、通信IF14が受信したデータを受信バッファ制御部21が受信バッファ60に記憶する。CPU11は、受信バッファ60からデータを取得して解析し(S101)、印刷ジョブであるか否かを判断する(S102)。受信したデータが印刷ジョブではないと判断した場合(S102:NO)、CPU11は、受信したデータに基づいて、各種の処理を実行して(S103)、データ受信処理を終了する。印刷ジョブ以外の受信データとしては、例えば、プリンタ1のファームウェアをアップデートするアップデートコマンド、プリンタ1の設定を変更する設定コマンド、を含むデータがある。 In the printer 1 of this embodiment, the reception buffer control unit 21 stores the data received by the communication IF 14 in the reception buffer 60 . The CPU 11 acquires and analyzes data from the reception buffer 60 (S101), and determines whether or not it is a print job (S102). When determining that the received data is not a print job (S102: NO), the CPU 11 executes various processes based on the received data (S103), and ends the data reception process. Received data other than the print job includes, for example, data including an update command for updating the firmware of the printer 1 and a setting command for changing the settings of the printer 1 .

なお、CPU11は、受信バッファ60のデータのどこまでを読み出したかを、図示しないポインタで管理している。そのため、CPU11は、受信バッファ60から一度読み出されたデータを、再度読み込む事はない。 The CPU 11 manages how far the data in the reception buffer 60 has been read using a pointer (not shown). Therefore, the CPU 11 does not read the data once read from the reception buffer 60 again.

印刷ジョブであると判断した場合(S102:YES)、CPU11は、ジョブIDを生成して(S111)、生成したジョブIDと関連付けて、受信した印刷ジョブをジョブリストに登録する。 When determining that it is a print job (S102: YES), the CPU 11 generates a job ID (S111), associates it with the generated job ID, and registers the received print job in the job list.

さらに、CPU11は、受信した印刷ジョブがコレート印刷の印刷ジョブであるか否かを判断する(S112)。コレート印刷は、複数ページの印刷物を複数部形成する場合の、部単位で出力する方式の印刷である。例えば、図2に示した印刷ジョブ200では、PJLデータ201に、3部のコレート印刷の指示を示す「SET QTY=3」コマンド210が含まれる。コマンド210は、部単位の印刷を示すコマンドの一例である。 Further, the CPU 11 determines whether the received print job is a collate print job (S112). Collate printing is a method of outputting by collation when forming a plurality of copies of a printed matter of a plurality of pages. For example, in the print job 200 shown in FIG. 2, the PJL data 201 includes a "SET QTY=3" command 210 indicating an instruction to print three copies of collate printing. A command 210 is an example of a command indicating collated printing.

コレート印刷ではないと判断した場合(S112:NO)、CPU11は、通常印刷処理を実行する(S121)。コレート印刷ではない印刷ジョブとは、印刷対象の各ページを、データを受信した順に、1部または複数部ずつ印刷するジョブである。通常印刷処理の手順について、図5のフローチャートを参照して説明する。 If the CPU 11 determines that it is not collate printing (S112: NO), the CPU 11 executes normal printing processing (S121). A print job that is not collate printing is a job that prints one or more copies of each page to be printed in the order in which the data is received. The procedure of normal print processing will be described with reference to the flowchart of FIG.

通常印刷処理では、CPU11は、受信したデータを受信バッファ60から取得し(S201)、取得したデータが、データの終端を示すデータであるか否かを判断する(S202)。データの終端でないと判断した場合(S202:NO)、CPU11は、ページIDを生成する(S211)。ページIDには保持フラグが関連付けられており、CPU11は、生成したページIDに関連付けられる保持フラグを、オフに設定する(S212)。 In normal print processing, the CPU 11 acquires received data from the reception buffer 60 (S201), and determines whether or not the acquired data indicates the end of the data (S202). When determining that the end of the data is not reached (S202: NO), the CPU 11 generates a page ID (S211). A retention flag is associated with the page ID, and the CPU 11 sets off the retention flag associated with the generated page ID (S212).

保持フラグは、関連付けられるページIDに対応するページの印刷に用いられるラスタデータを、印刷が完了した後に消去するか否かを示す情報である。保持フラグがオフである場合、プリンタ1は、後述するエンジン制御処理のS306にて、印刷が完了したラスタデータが記憶されているラスタ領域40を解放する。印刷が完了した後にラスタ領域40を解放することで、事実上、プリンタ1は、そのラスタ領域40に記憶されているラスタデータを消去する。通常印刷処理では印刷が完了したページのラスタデータは不要となるので、プリンタ1は、S212にて、保持フラグをオフとする。 The retention flag is information indicating whether or not to erase the raster data used for printing the page corresponding to the associated page ID after the printing is completed. If the hold flag is off, the printer 1 releases the raster area 40 storing the raster data for which printing has been completed in S306 of the engine control process, which will be described later. By releasing the raster area 40 after printing is complete, the printer 1 effectively erases the raster data stored in that raster area 40 . Since the raster data of the printed page is unnecessary in the normal print process, the printer 1 turns off the retention flag in S212.

S212の後、CPU11は、取得したデータがPDLデータであるかGDIデータであるかを判断する(S214)。取得したデータがGDIデータであると判断した場合(S214:GDI)、CPU11は、ラスタ領域40の確保を試行し、ラスタ領域40の確保に成功したか否かを判断する(S216)。CPU11は、例えば、システムメモリ管理部23にラスタ領域40用のメモリ領域の確保を要求し、システムメモリ管理部23から、成功したことが通知されたか否かを判断する。ラスタ領域40は、取得したラスタデータを記憶するための領域である。 After S212, the CPU 11 determines whether the acquired data is PDL data or GDI data (S214). When determining that the acquired data is GDI data (S214: GDI), the CPU 11 attempts to secure the raster area 40, and determines whether or not the raster area 40 has been successfully secured (S216). For example, the CPU 11 requests the system memory management unit 23 to secure a memory area for the raster area 40, and determines whether or not the system memory management unit 23 has notified that the request was successful. The raster area 40 is an area for storing acquired raster data.

ラスタ領域40の確保に成功しなかったと判断した場合(S216:NO)、CPU11は、ラスタ領域40の確保の試行と、確保に成功したか否かの判断と、を繰り返す。なお、通常印刷処理では、印刷後にラスタ領域40が解放されることから、印刷の進行に伴って、CPU11は、ラスタ領域40を確保可能となる。ラスタ領域40の確保に成功したら(S216:YES)、CPU11は、確保したラスタ領域40に、取得したラスタデータを記憶する(S218)。 If it is determined that the raster area 40 has not been successfully secured (S216: NO), the CPU 11 repeats the trial of securing the raster area 40 and the determination of whether the securing has succeeded. In normal print processing, since the raster area 40 is released after printing, the CPU 11 can secure the raster area 40 as the printing progresses. If the raster area 40 is successfully secured (S216: YES), the CPU 11 stores the acquired raster data in the secured raster area 40 (S218).

一方、取得したデータがPDLデータであると判断した場合(S214:PDL)、CPU11は、PDLデータをラスタライズし(S215)、ラスタデータを生成する。S215では、CPU11は、例えば、ラスタライズ部22にPDLデータを渡すことで、ラスタライズを実行する。CPU11は、PDLデータを取得した場合は、S215にて生成したラスタデータを記憶対象のデータとして、S216~S218を実行し、確保したラスタ領域40に、生成したラスタデータを記憶する。なお、以下では、PDLデータのラスタライズによって生成されるラスタデータを取得する場合も、単に、ラスタデータを取得する、と記載する。 On the other hand, when determining that the acquired data is PDL data (S214: PDL), the CPU 11 rasterizes the PDL data (S215) to generate raster data. In S<b>215 , the CPU 11 performs rasterization by passing the PDL data to the rasterization unit 22 , for example. When the PDL data is acquired, the CPU 11 executes S216 to S218 with the raster data generated in S215 as data to be stored, and stores the generated raster data in the secured raster area 40 . Note that hereinafter, acquisition of raster data generated by rasterizing PDL data is simply described as acquisition of raster data.

さらに、CPU11は、ラスタデータを記憶したラスタ領域40の情報と処理中のページIDとを、ジョブIDに紐づけて記憶する(S219)。そして、CPU11は、1ページ分のラスタデータを記憶したか否かを判断する(S221)。1ページ分を記憶していなければ(S221:NO)、CPU11は、S214に戻り、継続して、ラスタデータを取得し、取得したラスタデータを記憶する。なお、プリンタ1は、例えば、所定サイズのブロック単位でラスタデータを取得し、ブロック単位でラスタ領域40を確保して、記憶する。この場合、1ページ分のラスタデータは、複数のブロックのラスタデータからなっても良い。 Further, the CPU 11 stores the information of the raster area 40 storing the raster data and the ID of the page being processed in association with the job ID (S219). Then, the CPU 11 determines whether or not one page of raster data has been stored (S221). If one page is not stored (S221: NO), the CPU 11 returns to S214, continues to acquire raster data, and stores the acquired raster data. Note that the printer 1 acquires raster data in units of blocks of a predetermined size, for example, and secures and stores the raster area 40 in units of blocks. In this case, raster data for one page may consist of raster data for a plurality of blocks.

なお、プリンタ1は、起動時等に所定数のラスタ領域40を確保する構成であっても良い。この場合、CPU11は、S216で、まず、ラスタデータがまだ記憶されていないラスタ領域40が有るか否かを判断しても良い。CPU11は、ラスタデータがまだ記憶されていないラスタ領域40が有った場合、S218に進み、取得したラスタデータを、そのラスタ領域40に記憶させればよい。CPU11は、ラスタデータがまだ記憶されていないラスタ領域40が無いと判断した場合に、S216にて、ラスタ領域40の確保の試行と、確保に成功したか否かの判断と、を行っても良い。 Note that the printer 1 may be configured to secure a predetermined number of raster areas 40 at the time of startup or the like. In this case, the CPU 11 may first determine in S216 whether or not there is a raster area 40 in which raster data is not yet stored. If there is a raster area 40 in which raster data is not yet stored, the CPU 11 proceeds to S218 and stores the acquired raster data in that raster area 40 . If the CPU 11 determines that there is no raster area 40 in which raster data is not yet stored, in S216, the CPU 11 may try to secure the raster area 40 and determine whether the allocation was successful. good.

1ページ分のラスタデータを記憶したら(S221:YES)、CPU11は、ページIDを指定して、ラスタデータを記憶済みであることをエンジン制御部24に通知する(S222)。なお、1ページ分のラスタデータを記憶した後にエンジン制御部24に通知する構成に限らず、CPU11は、例えば、1ブロック分のラスタデータを記憶するごとにエンジン制御部24に通知しても良い。 After one page of raster data has been stored (S221: YES), the CPU 11 designates the page ID and notifies the engine control unit 24 that the raster data has been stored (S222). Note that the CPU 11 may notify the engine control unit 24 every time one block of raster data is stored, without being limited to the configuration in which the notification is made to the engine control unit 24 after one page of raster data is stored. .

なお、コレート印刷ではなく、単に複数部の印刷を行う印刷ジョブの場合、CPU11は、通常印刷処理のS222の通知を複数回行い、同じラスタデータを利用して複数回印刷させる。この場合、CPU11は、最終部の1部前の印刷が終了するまで、当該ページの保持フラグをオンとし、最終部の1部前の印刷終了後に当該ページの保持フラグをオフとする。 Note that in the case of a print job for simply printing a plurality of copies instead of collate printing, the CPU 11 notifies S222 of normal print processing multiple times, and prints using the same raster data multiple times. In this case, the CPU 11 turns on the hold flag for the page until printing of the copy before the final copy is completed, and turns off the hold flag for the page after printing the copy before the final copy is completed.

そして、CPU11は、S201に戻って、受信したデータをさらに取得し、取得したデータがデータの終端を示すデータであれば(S202:YES)、通常印刷処理を終了して、データ受信処理に戻る。 Then, the CPU 11 returns to S201, further acquires the received data, and if the acquired data indicates the end of the data (S202: YES), ends the normal print processing and returns to the data reception processing. .

エンジン制御部24は、通常印刷処理のS222等にてページIDの通知を受けると、エンジン制御処理を実行する。エンジン制御処理の手順について、図6のフローチャートを参照して説明する。エンジン制御処理は、プリンタ1のCPU11にて実行される。 The engine control unit 24 executes the engine control process upon receiving the notification of the page ID in S222 or the like of the normal print process. The procedure of engine control processing will be described with reference to the flowchart of FIG. The engine control process is executed by the CPU 11 of the printer 1 .

エンジン制御処理では、CPU11は、通知を受けたページIDに基づいてラスタデータを読み出し、エンジン制御部24によって、印刷エンジン15に印刷を実行させる(S301)。CPU11は、そのページの印刷が完了するまで(S302:NO)、つまり、印刷エンジン15から印刷完了の通知を受け取るまで待機する。なお、そのページの印刷が完了したと判断するタイミングは、印刷エンジン15がラスタデータの利用を終えるタイミングである。印刷が完了したと判断するタイミングは、例えば、印刷済みのシートがプリンタ1から排紙されるタイミングでも良い。印刷が完了したと判断するタイミングは、例えば、シートを給紙してそのページの印刷を開始するタイミングでも良い。 In the engine control process, the CPU 11 reads raster data based on the notified page ID, and causes the engine control unit 24 to cause the print engine 15 to execute printing (S301). The CPU 11 waits until printing of the page is completed (S302: NO), that is, until a print completion notification is received from the print engine 15. FIG. The timing at which it is determined that printing of the page is completed is the timing at which the print engine 15 finishes using the raster data. The timing at which it is determined that printing is completed may be, for example, the timing at which the printed sheet is discharged from the printer 1 . The timing at which it is determined that printing is completed may be, for example, the timing at which the sheet is fed and the printing of that page is started.

ページの印刷が完了したら(S302:YES)、CPU11は、そのページの保持フラグがオフであるか否かを判断する(S305)。例えば、コレート印刷ではない印刷ジョブでは、前述した通常印刷処理のS212にて、各ページの保持フラグがオフとされている。 When printing of the page is completed (S302: YES), the CPU 11 determines whether or not the retention flag for that page is off (S305). For example, in a print job that is not collate printing, the hold flag for each page is turned off in S212 of the normal print processing described above.

印刷対象のページの保持フラグがオフであれば(S305:YES)、CPU11は、印刷済みのページのラスタデータが記憶されているラスタ領域40を解放して(S306)、エンジン制御処理を終了する。具体的には、エンジン制御部24は、該当するラスタデータが記憶されているラスタ領域40の解放を、システムメモリ管理部23に要求する。なお、ラスタ領域40が解放されることで、そのラスタ領域40として使われていた領域に別のデータを書き込むことなどが可能となる。すなわち、事実上、そのラスタ領域40に記憶されているラスタデータが消去されたことになる。本明細書におけるデータの消去は、データが記憶されているメモリ領域の解放による事実上のデータ消去、を含む概念である。 If the hold flag of the page to be printed is off (S305: YES), the CPU 11 releases the raster area 40 storing the raster data of the printed page (S306), and ends the engine control process. . Specifically, the engine control unit 24 requests the system memory management unit 23 to release the raster area 40 in which the corresponding raster data is stored. By releasing the raster area 40 , it becomes possible to write other data in the area used as the raster area 40 . That is, in effect, the raster data stored in the raster area 40 is erased. Erasure of data in this specification is a concept including de facto erasure of data by releasing a memory area in which data is stored.

印刷対象のページの保持フラグがオンであれば(S305:NO)、CPU11は、ラスタ領域40を解放せず、メモリ12にラスタデータを残したままとしてエンジン制御処理を終了する。 If the retention flag of the page to be printed is ON (S305: NO), the CPU 11 does not release the raster area 40 and leaves the raster data in the memory 12, and terminates the engine control process.

図4のデータ受信処理の説明に戻る。S121の通常印刷処理の後、CPU11は、終了した印刷ジョブの情報をジョブリストから消去し(S141)、データ受信処理を終了する。 Returning to the description of the data reception process in FIG. After the normal print process of S121, the CPU 11 erases the information of the finished print job from the job list (S141), and ends the data reception process.

一方、受信した印刷ジョブがコレート印刷の印刷ジョブであると判断した場合(S112:YES)、CPU11は、1部目印刷処理を実行する(S131)。1部目印刷処理は、コレート印刷の場合に、1ページ目から最終ページまでの最初の1部を印刷する処理である。また、本形態の1部目印刷処理の処理対象の印刷ジョブは、図2に示した印刷ジョブ200のように、コレート印刷の指示を示すコマンドを含む印刷ジョブである。 On the other hand, when determining that the received print job is a print job for collate printing (S112: YES), the CPU 11 executes the printing process for the first copy (S131). The first copy print processing is processing for printing the first copy from the first page to the last page in the case of collate printing. Also, a print job to be processed in the first copy print process of the present embodiment is a print job including a command indicating collate printing, like the print job 200 shown in FIG.

1部目印刷処理の手順について、図7のフローチャートを参照して説明する。1部目印刷処理の説明および図7では、図5の通常印刷処理と同様の手順については、同じ符号を付して、説明を簡略化する。 The procedure for printing the first copy will be described with reference to the flowchart of FIG. In the description of the printing process for the first set and in FIG. 7, the same steps as in the normal printing process of FIG. 5 are given the same reference numerals to simplify the description.

1部目印刷処理では、CPU11は、保存先情報を、プリンタ1に内蔵されるメモリであるメモリ12を示す情報に設定する(S401)。CPU11は、受信したデータを受信バッファ60から取得し(S201)、取得したデータがデータの終端を示すデータであるか否かを判断する(S202)。データの終端でなければ(S202:NO)、CPU11は、ページIDを生成する(S211)。 In the first copy printing process, the CPU 11 sets the storage destination information to information indicating the memory 12, which is a memory built into the printer 1 (S401). The CPU 11 acquires the received data from the reception buffer 60 (S201), and determines whether or not the acquired data indicates the end of the data (S202). If it is not the end of the data (S202: NO), the CPU 11 generates a page ID (S211).

CPU11は、受信したデータがPDLデータであるかGDIデータであるかを判断する(S412)。受信したデータがGDIデータであると判断した場合(S412:GDI)、CPU11は、1ページ分のラスタデータを取得したか否かを判断する(S414)。CPU11は、例えば、ページ区切りコマンドを受信した場合、1ページ分のラスタデータを取得したと判断する。1ページ分のラスタデータを取得できていないと判断した場合(S414:NO)、CPU11は、S412に戻って、さらにデータを取得する。 The CPU 11 determines whether the received data is PDL data or GDI data (S412). When determining that the received data is GDI data (S412: GDI), the CPU 11 determines whether or not one page of raster data has been acquired (S414). For example, when a page break command is received, the CPU 11 determines that one page of raster data has been obtained. When determining that one page of raster data has not been acquired (S414: NO), the CPU 11 returns to S412 and acquires further data.

一方、受信したデータがPDLデータであると判断した場合(S412:PDL)、CPU11は、受信したPDLデータをラスタライズして(S413)、ラスタデータを取得する。 On the other hand, when determining that the received data is PDL data (S412: PDL), the CPU 11 rasterizes the received PDL data (S413) to obtain raster data.

1ページ分のラスタデータを取得したと判断した場合(S414:YES)、CPU11は、保存先情報が、プリンタ1に内蔵されるメモリ12を示す情報であるか、外部メモリ50を示す情報であるか、を判断する(S421)。保存先情報がメモリ12を示す情報であると判断した場合(S421:内部)、CPU11は、内部保存処理を実行する(S422)。 If it is determined that one page of raster data has been acquired (S414: YES), the CPU 11 determines that the save destination information is information indicating the memory 12 built into the printer 1 or information indicating the external memory 50. or (S421). When determining that the storage destination information is information indicating the memory 12 (S421: internal), the CPU 11 executes internal storage processing (S422).

内部保存処理の手順について、図8のフローチャートを参照して説明する。内部保存処理の説明および図8では、図5の通常印刷処理と同様の手順については、同じ符号を付して、説明を簡略化する。 The procedure of internal storage processing will be described with reference to the flowchart of FIG. In the description of the internal storage process and FIG. 8, the same steps as in the normal print process of FIG. 5 are given the same reference numerals to simplify the description.

内部保存処理では、CPU11は、システムメモリ管理部23によって、1ページ分のラスタデータを記憶できるラスタ領域40の確保を試行し、ラスタ領域40の確保に成功したか否かを判断する(S216)。なお、この印刷ジョブより前に実行中の印刷ジョブが有る場合、前の印刷ジョブの印刷が終了することで、前の印刷ジョブによって利用されていたラスタ領域40が解放され、新たにラスタ領域40を確保できるようになる可能性がある。CPU11は、ラスタ領域40を確保できなかった場合であって、処理対象の印刷ジョブがジョブリストの先頭ではない場合、先頭となるまで待っても良い。 In the internal storage process, the CPU 11 attempts to secure the raster area 40 capable of storing one page of raster data using the system memory management unit 23, and determines whether or not the raster area 40 has been successfully secured (S216). . Note that if there is a print job being executed before this print job, the raster area 40 used by the previous print job is released by completing the printing of the previous print job, and the raster area 40 is newly created. It may be possible to secure If the raster area 40 cannot be secured and the print job to be processed is not at the top of the job list, the CPU 11 may wait until it becomes the top.

ラスタ領域40の確保に成功したら(S216:YES)、CPU11は、生成したページIDに関連付けられる保持フラグを、オンに設定する(S502)。コレート印刷では、プリンタ1は、1部目の全ページの印刷が完了した後、1部目の印刷に用いたラスタデータに基づいて2部目以降の印刷を行う。プリンタ1は、受信バッファ60から読み出したデータを再度読み出すことはないので、1部目の印刷に利用したラスタデータをラスタ領域40に記憶したままとして、再利用する。そのため、コレート印刷では、CPU11は、エンジン制御部24によってラスタ領域40が解放されないように、すなわち、エンジン制御処理のS306がスキップされるように、各ページの保持フラグをオンにする。 If the raster area 40 has been successfully secured (S216: YES), the CPU 11 sets ON the retention flag associated with the generated page ID (S502). In collate printing, after printing all the pages of the first copy, the printer 1 prints the second and subsequent copies based on the raster data used for printing the first copy. Since the printer 1 does not read the data read from the reception buffer 60 again, the raster data used for printing the first copy is stored in the raster area 40 and reused. Therefore, in collate printing, the CPU 11 turns on the hold flag of each page so that the raster area 40 is not released by the engine control unit 24, that is, so that S306 of the engine control process is skipped.

そして、CPU11は、確保したラスタ領域40に、取得したラスタデータを記憶する(S218)。さらに、CPU11は、ラスタデータを記憶したラスタ領域40のアドレスやサイズ等の情報と、処理中のページIDとを、ジョブIDに紐づけて記憶する(S219)。さらに、CPU11は、ラスタデータを記憶したページのページIDをエンジン制御部24に通知して(S222)、内部保存処理を終了し、1部目印刷処理に戻る。 Then, the CPU 11 stores the obtained raster data in the secured raster area 40 (S218). Further, the CPU 11 stores information such as the address and size of the raster area 40 storing the raster data and the ID of the page being processed in association with the job ID (S219). Further, the CPU 11 notifies the engine control unit 24 of the page ID of the page storing the raster data (S222), ends the internal storage process, and returns to the first copy printing process.

エンジン制御部24は、ページIDの通知を受け、図6に示したエンジン制御処理を実行する。コレート印刷の場合、S502にて各ページの保持フラグがオンとなっていることから、エンジン制御部24は、印刷が完了しても、ラスタ領域40を解放しない。つまり、ラスタ領域40に記憶されているラスタデータは、1部目の印刷が終了してもメモリ12に残ったままとなり、2部目以降の印刷のために再利用される。 The engine control unit 24 receives the notification of the page ID and executes the engine control process shown in FIG. In the case of collate printing, since the hold flag of each page is turned on in S502, the engine control unit 24 does not release the raster area 40 even after printing is completed. That is, the raster data stored in the raster area 40 remains in the memory 12 even after the printing of the first copy is completed, and is reused for the printing of the second copy and thereafter.

コレート印刷ではラスタデータがメモリ12に残ったままとなることから、確保されているラスタ領域40が次第に多くなり、新たに取得したラスタデータを記憶するためのラスタ領域40を確保できない状態となる可能性がある。ラスタデータを記憶するためのラスタ領域40を確保できなかったと判断した場合(S216:NO)、CPU11は、外部メモリ50に所定サイズの空き領域が有るか否かを判断する(S511)。 Since the raster data remains in the memory 12 in collate printing, the secured raster area 40 gradually increases, and it is possible that the raster area 40 for storing newly acquired raster data cannot be secured. have a nature. When determining that the raster area 40 for storing the raster data could not be secured (S216: NO), the CPU 11 determines whether or not there is an empty area of a predetermined size in the external memory 50 (S511).

プリンタ1に外部メモリ50が装着されていない場合、または、装着されている外部メモリ50に十分なサイズの空き領域が無いと判断した場合(S511:NO)、CPU11は、エラーを報知して(S512)、内部保存処理を終了し、1部目印刷処理に戻る。 If the external memory 50 is not attached to the printer 1, or if it is determined that the attached external memory 50 does not have a sufficient size of free space (S511: NO), the CPU 11 notifies an error ( S512), the internal storage process is ended, and the process returns to the printing process for the first copy.

ラスタデータはサイズが大きい傾向にあり、複数ページ分をメモリ12に記憶するとメモリ不足が生じ易い。一方、内蔵のメモリ12と比較して大容量の外部メモリ50が装着されていれば、指定された部数の印刷が完了するまで、複数ページ分のラスタデータを保持することが容易である。なお、本明細書では、プリンタ1に内蔵されるメモリ12よりも大容量の外部メモリ50が装着されている場合について説明する。 Raster data tends to be large in size, and storing a plurality of pages in the memory 12 tends to cause memory shortage. On the other hand, if the external memory 50, which has a larger capacity than the built-in memory 12, is attached, it is easy to hold raster data for a plurality of pages until printing of the specified number of copies is completed. In this specification, a case where an external memory 50 having a larger capacity than the memory 12 built into the printer 1 is installed will be described.

外部メモリ50に空き領域があると判断した場合(S511:YES)、CPU11は、保存先情報を、外部メモリ50を示す情報に変更する(S521)。さらに、CPU11は、この印刷ジョブのラスタデータであって、今までにラスタ領域40に記憶したラスタデータをすべて、外部メモリ50にコピーする(S522)。 When determining that the external memory 50 has a free space (S511: YES), the CPU 11 changes the save destination information to information indicating the external memory 50 (S521). Furthermore, the CPU 11 copies all the raster data of this print job, which has been stored in the raster area 40 so far, to the external memory 50 (S522).

本形態のプリンタ1は、全ページ分のラスタデータのラスタ領域40への記憶が不可能な場合に、ラスタデータを外部メモリ50に記憶する。全ページ分のラスタデータをメモリ12のラスタ領域40に記憶可能であれば、外部メモリ50を利用しなくてもコレート印刷が可能である。その場合にはプリンタ1は、外部メモリ50へのラスタデータの記憶を省略するので、制御の負荷を軽減できる。なお、内部保存処理のS216にてNOと判断されるまでに記憶されたラスタデータは、すべて保持フラグがオンとされたページのラスタデータであり、消去されずにラスタ領域40に記憶されている。 The printer 1 of this embodiment stores the raster data in the external memory 50 when the raster data for all pages cannot be stored in the raster area 40 . If raster data for all pages can be stored in the raster area 40 of the memory 12, collate printing is possible without using the external memory 50. FIG. In that case, the printer 1 omits storing raster data in the external memory 50, thereby reducing the control load. Note that the raster data stored until S216 of the internal storage process determines NO is all the raster data of the page for which the hold flag is turned on, and is stored in the raster area 40 without being erased. .

そして、CPU11は、メモリ12のラスタ領域40から1ページ分のラスタデータを消去の対象とする(S523)。CPU11は、例えば、メモリ12に記憶されているラスタデータのうち、少なくとも1ページ分のラスタデータであって、記憶された時期が最も古いラスタデータを消去の対象とする。具体的には、CPU11は、S523では消去の対象としたラスタデータが記憶されているラスタ領域40の解放をシステムメモリ管理部23に要求する。すなわち、CPU11は、ラスタ領域40の解放による、事実上の、ラスタデータの消去を試みる。 The CPU 11 then erases one page of raster data from the raster area 40 of the memory 12 (S523). For example, among the raster data stored in the memory 12, the CPU 11 selects the raster data of at least one page and the oldest stored raster data to be erased. Specifically, in S523, the CPU 11 requests the system memory management unit 23 to release the raster area 40 storing the raster data to be erased. That is, the CPU 11 tries to practically erase the raster data by releasing the raster area 40 .

そして、CPU11は、システムメモリ管理部23によってラスタ領域40の確保を試行し、ラスタ領域40の確保に成功したか否かを判断する(S524)。具体的には、CPU11は、S524では新たなラスタ領域40の確保をシステムメモリ管理部23に要求する。ラスタ領域40の確保に成功しなかったと判断した場合(S524:NO)、CPU11は、さらに1ページ分のラスタデータを消去の対象とする。CPU11は、処理中のページのラスタデータを記憶可能なサイズのラスタ領域40の確保に成功するまで、S523とS524とを繰り返す。 Then, the CPU 11 attempts to secure the raster area 40 by the system memory management unit 23, and determines whether or not the raster area 40 has been successfully secured (S524). Specifically, the CPU 11 requests the system memory management unit 23 to secure a new raster area 40 in S524. If the CPU 11 determines that the raster area 40 has not been successfully secured (S524: NO), the CPU 11 further deletes one page of raster data. The CPU 11 repeats S523 and S524 until it succeeds in securing the raster area 40 having a size capable of storing the raster data of the page being processed.

S523では、CPU11は、例えば、生成順に大きくなる値のページIDを生成している場合、値の最も小さいページIDに紐づけられているラスタデータを消去の対象とする。あるいは、ラスタ領域40に記憶時期を示す情報が付与されていても良く、その場合、CPU11は、付与されている情報に基づいて最も古いラスタデータを特定できる。 In S<b>523 , for example, when page IDs having values that increase in the order of generation are generated, the CPU 11 deletes the raster data linked to the page ID with the smallest value. Alternatively, the raster area 40 may be provided with information indicating the time of storage, in which case the CPU 11 can identify the oldest raster data based on the provided information.

なお、S523にて消去の対象となるラスタデータは、最も古いラスタデータに限らず、1部目の印刷が完了しているラスタデータであればよい。ただし、コレート印刷であっても1ページ分のラスタデータを記憶するごとに印刷が実行されることから、記憶された時期が古いラスタデータであれば、1部目の印刷が完了している可能性が高い。従って、最も古いラスタデータを消去の対象とすれば、1部目の印刷を適切に完了できる可能性が高い。 Note that the raster data to be erased in S523 is not limited to the oldest raster data, and may be any raster data for which printing of the first set has been completed. However, even with collate printing, printing is executed each time one page of raster data is stored. highly sexual. Therefore, if the oldest raster data is to be erased, there is a high possibility that the printing of the first copy can be properly completed.

ラスタ領域40を確保できたと判断した場合(S524:YES)、CPU11は、処理中のページの保持フラグをオフとする(S525)。保持フラグをオフとすることで、前述したように、印刷後に、エンジン制御処理のS306にてラスタ領域40が解放される。さらに、CPU11は、取得したラスタデータを、確保したラスタ領域40と外部メモリ50とに記憶する(S526)。 When determining that the raster area 40 has been secured (S524: YES), the CPU 11 turns off the holding flag of the page being processed (S525). By turning off the hold flag, the raster area 40 is released in S306 of the engine control process after printing, as described above. Furthermore, the CPU 11 stores the obtained raster data in the secured raster area 40 and the external memory 50 (S526).

なお、S523とS526では、CPU11は、記憶された記事が最も古いラスタデータをラスタ領域40から消去し、ラスタデータが消去されたラスタ領域40に、新たに取得したラスタデータを記憶しても良い。具体的には、消去の対象としたラスタデータが記憶されているラスタ領域40を特定して、新たに取得したラスタデータを上書きしても良い。例えば、システムメモリ管理部23に要求することで、消去の対象のラスタデータが記憶されているラスタ領域40に、新たなラスタデータが上書きされても良い。 In S523 and S526, the CPU 11 may delete the raster data of the oldest stored article from the raster area 40, and store the newly acquired raster data in the raster area 40 where the raster data has been deleted. . Specifically, the raster area 40 in which the raster data to be erased is stored may be specified, and newly obtained raster data may be overwritten. For example, by requesting the system memory management unit 23, the raster area 40 storing the raster data to be erased may be overwritten with new raster data.

本形態のプリンタ1は、受信したラスタデータのラスタ領域40への記憶と外部メモリ50への記憶とを並行して行う。これにより、ラスタデータを外部メモリ50に記憶させた後に、その外部メモリ50にあるラスタデータをラスタ領域40へ記憶する場合と比較して、ラスタデータのラスタ領域40への記憶を早期に開始できる。従って、印刷ジョブの処理を早期に完了できる可能性が高まる。 The printer 1 of this embodiment stores the received raster data in the raster area 40 and in the external memory 50 in parallel. As a result, after the raster data is stored in the external memory 50, it is possible to start storing the raster data in the raster area 40 earlier than when the raster data in the external memory 50 is stored in the raster area 40. . Therefore, it is more likely that processing of the print job can be completed early.

ラスタデータを記憶した後、CPU11は、S219に進み、ラスタ領域40にラスタデータを記憶したページである、処理中のページのページIDを、ジョブIDに紐づけて記憶する(S219)。さらに、CPU11は、処理中のページのページIDをエンジン制御部24に通知して(S222)、内部保存処理を終了し、1部目印刷処理に戻る。エンジン制御部24は、保持フラグがオフとなっていることから、このページの印刷が完了した後、このページのラスタデータが記憶されているラスタ領域40を解放する。これにより、新たに確保可能なラスタ領域40ができ、処理中の印刷ジョブにさらに次のページがあったとしても、CPU11は、次のページのためのラスタ領域40を確保できる可能性が高い。 After storing the raster data, the CPU 11 proceeds to S219 and stores the page ID of the page in process, which is the page whose raster data is stored in the raster area 40, in association with the job ID (S219). Further, the CPU 11 notifies the engine control unit 24 of the page ID of the page being processed (S222), ends the internal storage process, and returns to the first copy print process. Since the retention flag is turned off, the engine control unit 24 releases the raster area 40 storing the raster data of this page after printing of this page is completed. As a result, a newly securable raster area 40 is created, and even if there is a next page in the print job being processed, the CPU 11 is highly likely to be able to secure the raster area 40 for the next page.

図7の1部目印刷処理の説明に戻る。S422の内部保存処理の後、CPU11は、内部保存処理のS512にてエラーを報知したか否かを判断する(S423)。エラーを報知したと判断した場合(S423:YES)、すなわち、プリンタ1に内蔵されるメモリ12にも外部メモリ50にも空き領域が無い場合、CPU11は、処理を継続できないことから、印刷ジョブをキャンセルし、1部目印刷処理を終了して、図4に示したデータ受信処理に戻る。なお、データ受信処理では、CPU11は、印刷ジョブがキャンセルされた場合、以降の処理を行わず処理を終了する。 Returning to the description of the printing process for the first set in FIG. After the internal storage process of S422, the CPU 11 determines whether or not an error was reported in S512 of the internal storage process (S423). If it is determined that an error has been notified (S423: YES), that is, if there is no free space in either the memory 12 built into the printer 1 or the external memory 50, the CPU 11 cannot continue processing, so it cancels the print job. Cancel, end the printing process for the first set, and return to the data receiving process shown in FIG. In the data reception process, when the print job is canceled, the CPU 11 ends the process without performing subsequent processes.

エラーを報知していないと判断した場合(S423:NO)、CPU11は、S201に戻り、受信バッファ60からさらにデータを取得する。 If it is determined that an error has not been reported (S423: NO), the CPU 11 returns to S201 and further acquires data from the reception buffer 60. FIG.

一方、保存先情報がすでに外部メモリ50を示す情報となっていると判断した場合(S421:外部)、CPU11は、外部メモリ50に空き領域が有るか否かを判断する(S431)。なお、S431では、CPU11は、1ページ分のラスタデータを記憶できるだけの空き領域が、外部メモリ50に有るか否かを判断する。外部メモリ50に十分な空き領域が無いと判断した場合(S431:NO)、CPU11は、メモリフルを示すエラーを報知して(S432)、印刷ジョブをキャンセルし、1部目印刷処理を終了する。 On the other hand, when determining that the storage destination information has already become information indicating the external memory 50 (S421: external), the CPU 11 determines whether or not there is an empty area in the external memory 50 (S431). In S431, the CPU 11 determines whether or not the external memory 50 has a free area sufficient to store raster data for one page. If it is determined that there is not enough free space in the external memory 50 (S431: NO), the CPU 11 notifies an error indicating that the memory is full (S432), cancels the print job, and ends the printing process for the first copy. .

外部メモリ50に十分な空き領域が有ると判断した場合(S431:YES)、CPU11は、1ページ分のラスタデータを消去対象として、ラスタ領域40から消去する(S441)。CPU11は、システムメモリ管理部23によって、新たに取得したラスタデータを記憶できるサイズのラスタ領域40の確保を試行し、確保に成功したか否かを判断する(S442)。確保に成功していないと判断した場合(S442:NO)、CPU11は、さらに1ページ分のラスタデータを消去対象とする。ラスタ領域40を確保できたと判断した場合(S442:YES)、CPU11は、処理中のページの保持フラグをオフとし(S212)、取得したラスタデータをラスタ領域40と外部メモリ50とに記憶する(S444)。S441とS442では、CPU11は、前述した内部保存処理のS523とS524と同様に、ラスタ領域40の解放と確保とを試行する。 When determining that there is sufficient free space in the external memory 50 (S431: YES), the CPU 11 erases one page of raster data from the raster area 40 (S441). The CPU 11 uses the system memory management unit 23 to try to secure a raster area 40 having a size capable of storing the newly acquired raster data, and determines whether or not the securing has succeeded (S442). If it is determined that the reservation has not been successful (S442: NO), the CPU 11 sets another page of raster data to be erased. If it is determined that the raster area 40 has been secured (S442: YES), the CPU 11 turns off the holding flag of the page being processed (S212), and stores the acquired raster data in the raster area 40 and the external memory 50 ( S444). In S441 and S442, the CPU 11 attempts to release and secure the raster area 40 in the same manner as in S523 and S524 of the internal storage process described above.

さらに、CPU11は、ラスタデータを記憶したラスタ領域40の情報と処理中のページのページIDを、ジョブIDに紐づけて記憶し(S219)、エンジン制御部24に通知する(S222)。エンジン制御部24は、保持フラグがオフとなっていることから、このページの印刷が完了した後、このページのラスタデータが記憶されているラスタ領域40を解放する。 Further, the CPU 11 stores the information of the raster area 40 storing the raster data and the page ID of the page being processed in association with the job ID (S219), and notifies the engine control unit 24 (S222). Since the retention flag is turned off, the engine control unit 24 releases the raster area 40 storing the raster data of this page after printing of this page is completed.

S222の後、CPU11は、S201に戻り、受信バッファ60から、さらにデータを取得する。そして、取得したデータがデータの終端であると判断した場合(S202:YES)、CPU11は、1部目印刷処理を終了して、データ受信処理に戻る。 After S<b>222 , the CPU 11 returns to S<b>201 and further acquires data from the reception buffer 60 . Then, when it is determined that the acquired data is the end of the data (S202: YES), the CPU 11 ends the printing process for the first copy and returns to the data receiving process.

次に、コレート印刷が指定されたGDIデータを含む印刷ジョブを受信した場合の、1部目の印刷時におけるメモリ12や外部メモリ50の利用状況の具体例について、図9を参照して説明する。なお、プリンタ1は、GDIデータを含む印刷ジョブを受信した場合、受信バッファ60に記憶されたGDIデータを読み出すことで、上述したフローチャートのラスタデータを取得する処理を行う。図9および後述する同様の図の説明では、フローチャートで「取得する」として説明した処理を、「受信する」として説明する。 Next, a specific example of how the memory 12 and the external memory 50 are used when printing the first copy when a print job including GDI data specifying collate printing is received will be described with reference to FIG. . When the printer 1 receives a print job including GDI data, the printer 1 reads the GDI data stored in the reception buffer 60 to perform the process of acquiring the raster data in the flowchart described above. In the description of FIG. 9 and similar figures to be described later, the process described as "obtaining" in the flowchart will be described as "receiving".

なお、図9および後述する同様の図では、メモリ12に確保されたラスタ領域40は、8ページ分のラスタデータを記憶できる領域であるものとし、処理対象のジョブは9ページのジョブであるとする。また、外部メモリ50には、十分な空きがあるものとする。なお、各図中の数字は、そのラスタデータのページを示す。 9 and similar figures to be described later, it is assumed that the raster area 40 secured in the memory 12 is an area capable of storing raster data for 8 pages, and that the job to be processed is a 9-page job. do. It is also assumed that the external memory 50 has sufficient free space. Note that the numbers in each figure indicate the page of the raster data.

プリンタ1は、受信バッファ60に受信したデータを解析して、コレート印刷の印刷ジョブであると判断したら(データ受信処理のS112にてYES)、図9(A)に示すように、ラスタ領域40を確保し、確保したラスタ領域40に、受信したラスタデータを1ページ目から順に記憶する。さらに、プリンタ1は、ラスタデータを記憶した各ページの保持フラグをオンとする(内部保存処理のS502とS218)。プリンタ1は、ラスタデータがラスタ領域40に記憶されたことで、1ページ目の印刷を実行できる(内部保存処理のS222)。この例では、8ページ目までのラスタデータをラスタ領域40に記憶できるので、プリンタ1は、8ページ目までの印刷を実行できる。 When the printer 1 analyzes the data received in the reception buffer 60 and determines that the print job is for collate printing (YES in S112 of the data reception process), the raster area 40 is displayed as shown in FIG. 9A. is secured, and the received raster data is stored in order from the first page in the secured raster area 40 . Further, the printer 1 turns on the retention flag of each page storing raster data (S502 and S218 of internal storage processing). Since the raster data is stored in the raster area 40, the printer 1 can print the first page (S222 of the internal storage process). In this example, raster data up to the eighth page can be stored in the raster area 40, so the printer 1 can print up to the eighth page.

プリンタ1は、9ページ目のラスタデータを受信した場合、図9(B)に示すように、ラスタ領域40に空きが無い状態となっている(内部保存処理のS216にてNO)。そこで、プリンタ1は、図9(C)に示すように、まず、メモリ12のラスタ領域40に記憶されている1ページ目から8ページ目までのラスタデータを、外部メモリ50にコピーする(内部保存処理のS522)。 When the printer 1 receives the raster data of the ninth page, as shown in FIG. 9B, the raster area 40 is in a state of no space (NO in S216 of the internal storage process). Therefore, as shown in FIG. 9C, the printer 1 first copies the raster data from the first page to the eighth page stored in the raster area 40 of the memory 12 to the external memory 50 (internal S522 of the saving process).

プリンタ1は、1ページ目のラスタデータをラスタ領域40から消去して(内部保存処理のS523)、確保可能となったラスタ領域40に、9ページ目のラスタデータを記憶する(内部保存処理のS526)。なお、9ページ目のラスタデータを記憶するラスタ領域40の物理的な場所は、1ページ目のラスタデータが記憶されていた場所と同じでも良いし、異なっても良い。また、プリンタ1は、9ページ目の保持フラグをオフとする(内部保存処理のS525)。さらに、プリンタ1は、9ページ目のラスタデータを外部メモリ50にも記憶する(内部保存処理のS526)。 The printer 1 erases the raster data of the first page from the raster area 40 (S523 of the internal storage process), and stores the raster data of the ninth page in the raster area 40 that can be secured (S523 of the internal storage process). S526). The physical location of the raster area 40 that stores the raster data of the 9th page may be the same as or different from the location where the raster data of the 1st page was stored. Also, the printer 1 turns off the hold flag for the ninth page (S525 of the internal storage process). Further, the printer 1 also stores the raster data of the ninth page in the external memory 50 (S526 of internal storage processing).

これにより、図9(D)に示すように、全ページのラスタデータが外部メモリ50に記憶され、ラスタ領域40には、2~8ページ目のラスタデータと9ページ目のラスタデータとが記憶されている状態となる。そして、プリンタ1は、9ページ目の印刷後、9ページ目のラスタデータが記憶されているラスタ領域40を解放する(エンジン制御処理のS306)。これで、1部目の全ページの印刷が完了したことになる。 As a result, as shown in FIG. 9D, the raster data of all pages are stored in the external memory 50, and the raster data of the 2nd to 8th pages and the raster data of the 9th page are stored in the raster area 40. It will be in a state where After printing the ninth page, the printer 1 releases the raster area 40 storing the raster data of the ninth page (S306 of the engine control process). This completes the printing of all pages of the first copy.

図4のデータ受信処理の説明に戻る。S131の1部目印刷処理の後、CPU11は、コレート印刷の指示にて指定されている部数を1減し(S132)、2部目以降印刷処理を実行する(S133)。なお、印刷ジョブに指定されている部数の情報は、受信したデータが印刷ジョブであると判断した場合に、メモリ12に記憶される。S132では、CPU11は、メモリ12に記憶されている部数の情報を更新する。 Returning to the description of the data reception process in FIG. After printing the first copy in S131, the CPU 11 decrements the number of copies specified by the collate printing instruction by 1 (S132), and executes the printing processing for the second and subsequent copies (S133). Information on the number of copies specified in the print job is stored in the memory 12 when it is determined that the received data is the print job. In S<b>132 , the CPU 11 updates the number of copies information stored in the memory 12 .

2部目以降印刷処理は、コレート印刷の場合に、2部目から指定部数まで印刷する処理である。2部目以降印刷処理の手順について、図10のフローチャートを参照して説明する。2部目印刷処理の説明および図10では、図5の通常印刷処理と同様の手順については、同じ符号を付して、説明を簡略化する。 The printing process for the second and subsequent copies is a process for printing from the second copy up to the specified number of copies in the case of collate printing. The procedure of print processing for the second and subsequent copies will be described with reference to the flowchart of FIG. In the explanation of the printing process for the second copy and in FIG. 10, the same steps as in the normal printing process of FIG. 5 are given the same reference numerals to simplify the explanation.

2部目以降印刷処理では、CPU11は、現在の処理対象の印刷ジョブについて、全ページ数を取得する(S601)。1部目印刷処理にて全ページの印刷が完了していることから、CPU11は、例えば、ジョブIDに紐づけられている全てのページIDの数を数えることで、この印刷ジョブに含まれる全ページ数を取得できる。あるいは、CPU11は、1部目印刷処理のS211にてページIDを生成する度にページ数をカウントし、S202にてYESと判断した場合に、カウントされているページ数をページIDに紐付けて記憶しても良い。そして、CPU11は、1ページ目から順に、対象ページのラスタデータがメモリ12に記憶されているか否かを判断する(S602)。 In the printing process for the second and subsequent copies, the CPU 11 acquires the total number of pages of the current print job to be processed (S601). Since printing of all pages has been completed in the printing process for the first copy, the CPU 11 counts all the page IDs linked to the job ID, for example. Get the number of pages. Alternatively, the CPU 11 counts the number of pages each time a page ID is generated in S211 of the printing process for the first copy, and if YES is determined in S202, the counted number of pages is associated with the page ID. You can remember. Then, the CPU 11 determines whether or not the raster data of the target page is stored in the memory 12 in order from the first page (S602).

1部目印刷処理にて説明したように、コレート印刷では、CPU11は、ラスタ領域40を確保できた場合にはそのページの保持フラグをオンとし、ラスタデータが消去されないようにしている。処理対象のページのラスタデータがメモリ12に記憶されていると判断した場合(S602:YES)、CPU11は、そのページのページIDをエンジン制御部24に通知し、印刷を実行させる(S222)。エンジン制御部24は、指定されたページIDに基づいて、ラスタ領域40からラスタデータを読み出し、印刷エンジン15に印刷させる。 As described in the first copy printing process, in collate printing, when the raster area 40 is secured, the CPU 11 turns on the hold flag for that page so that the raster data is not erased. When it is determined that the raster data of the page to be processed is stored in the memory 12 (S602: YES), the CPU 11 notifies the page ID of the page to the engine control section 24 and causes printing to be executed (S222). The engine control unit 24 reads raster data from the raster area 40 based on the specified page ID, and causes the print engine 15 to print it.

一方、1部目印刷処理にてラスタ領域40が確保できなくなった場合、印刷対象のページのラスタデータがメモリ12に記憶されていない可能性がある。ラスタデータが記憶されていないと判断した場合(S602:NO)、CPU11は、新たにページIDを生成し(S211)、生成したページIDを処理対象の印刷ジョブのジョブIDに関連付ける。さらに、CPU11は、生成したページIDに関連付けられる保持フラグをオフに設定する(S212)。 On the other hand, if the raster area 40 cannot be secured in the printing process of the first copy, there is a possibility that the raster data of the page to be printed is not stored in the memory 12 . When determining that raster data is not stored (S602: NO), the CPU 11 newly generates a page ID (S211), and associates the generated page ID with the job ID of the print job to be processed. Further, the CPU 11 sets off the retention flag associated with the generated page ID (S212).

外部メモリ50が装着されていれば、ラスタデータがプリンタ1に内蔵されるメモリ12に記憶されていないページについても、外部メモリ50にはラスタデータが記憶されている。この2部目以降印刷処理では、外部メモリ50にラスタデータが記憶されている場合に付いて説明する。なお、外部メモリ50が装着されていない場合、あるいは、装着されている外部メモリ50にラスタデータが記憶されていない場合、CPU11は、S602にてNOと判断した場合、エラーとする。なお、外部メモリ50を利用せずに印刷を続行する方法があれば、CPU11は、エラーにしなくても良い。 If the external memory 50 is installed, the external memory 50 stores raster data even for pages for which raster data is not stored in the memory 12 built into the printer 1 . In the printing process for the second and subsequent copies, a case where raster data is stored in the external memory 50 will be described. If the external memory 50 is not installed, or raster data is not stored in the installed external memory 50, and the CPU 11 determines NO in S602, an error occurs. Note that if there is a method for continuing printing without using the external memory 50, the CPU 11 does not have to make an error.

外部メモリ50に記憶されているラスタデータを利用するために、CPU11は、システムメモリ管理部23によってラスタ領域40の確保を試行し、ラスタ領域40の確保に成功したか否かを判断する(S216)。 In order to use the raster data stored in the external memory 50, the CPU 11 attempts to secure the raster area 40 by the system memory management unit 23, and determines whether or not the raster area 40 has been successfully secured (S216). ).

コレート印刷では、内部保存処理のS502にて各ページの保持フラグをオンとしていることから、1部目の印刷が完了しても、各ページのラスタデータが記憶されているラスタ領域40は解放されない。ただし、S526にて新たに記憶されたラスタデータについては、対応するページの保持フラグがS525にてオフにされている。つまり、新たに記憶されたラスタデータを記憶するラスタ領域40は、印刷が完了するとエンジン制御処理のS306にて解放される。従って、2部目以降印刷処理のS216では、システムメモリ管理部23によって再度、ラスタ領域40の確保を試行することで、解放済みの領域を新たなラスタ領域40として確保できる可能性がある。 In collate printing, since the holding flag of each page is turned on in S502 of the internal storage processing, even if the printing of the first copy is completed, the raster area 40 storing the raster data of each page is not released. . However, for the raster data newly stored in S526, the holding flag of the corresponding page is turned off in S525. That is, the raster area 40 for storing newly stored raster data is released in S306 of the engine control process when printing is completed. Therefore, in S216 of the printing process for the second and subsequent copies, the system memory management unit 23 attempts to secure the raster area 40 again, and there is a possibility that the released area can be secured as a new raster area 40. FIG.

ラスタ領域40の確保に成功したら(S216:YES)、CPU11は、対象ページのラスタデータを外部メモリ50から取得し、確保したラスタ領域40にコピーする(S618)。さらに、CPU11は、ラスタデータを記憶したラスタ領域40の情報と処理中のページIDを、ジョブIDに紐づけて記憶する(S219)。2部目以降印刷処理の開始時に記憶されていなかったラスタデータは、1部目印刷処理にて一旦、メモリ12に記憶され、印刷に利用された後に消去されたデータである。CPU11は、ページIDをエンジン制御部24に通知し、印刷を実行させる(S222)。 If the raster area 40 has been successfully secured (S216: YES), the CPU 11 acquires the raster data of the target page from the external memory 50 and copies it to the secured raster area 40 (S618). Further, the CPU 11 stores the information of the raster area 40 storing the raster data and the ID of the page being processed in association with the job ID (S219). Raster data that has not been stored at the start of the printing process for the second and subsequent copies is data that is once stored in the memory 12 in the printing process for the first copy, and is erased after being used for printing. The CPU 11 notifies the page ID to the engine control unit 24 and causes printing to be executed (S222).

S222の後、CPU11は、2部目の全ページの印刷が終了したか否かを判断する(S631)。CPU11は、例えば、S222にてエンジン制御部24に通知した回数をカウントし、通知回数がS601にて取得したページ数に到達したか否かを判断する。未印刷のページが残っている場合(S631:NO)、CPU11は、S602に戻り、記憶済みのラスタデータ、または、外部メモリ50からコピーしたラスタデータに基づいて、印刷エンジン15に印刷を実行させる。 After S222, the CPU 11 determines whether printing of all pages of the second set has been completed (S631). For example, the CPU 11 counts the number of notifications to the engine control unit 24 in S222, and determines whether or not the number of notifications reaches the number of pages acquired in S601. If unprinted pages remain (S631: NO), the CPU 11 returns to S602 and causes the print engine 15 to print based on the stored raster data or the raster data copied from the external memory 50. .

2部目の全ページの印刷が終了したら(S631:YES)、CPU11は、メモリ12に記憶されている部数の情報を1減し(S632)、残り部数が1となったか否かを判断する(S633)。残り部数が1ではないと判断した場合(S633:NO)、CPU11は、残り部数が0であるか否かを判断する(S634)。残り部数が1でも0でもなければ(S634:NO)、CPU11は、S602に戻り、2部目と同様に次の1部の印刷を実行する。 When all pages of the second set have been printed (S631: YES), the CPU 11 subtracts 1 from the number of copies stored in the memory 12 (S632), and determines whether or not the remaining number of copies is 1. (S633). When determining that the number of remaining copies is not 1 (S633: NO), the CPU 11 determines whether or not the number of remaining copies is 0 (S634). If the number of remaining copies is neither 1 nor 0 (S634: NO), the CPU 11 returns to S602 and executes printing of the next copy in the same manner as the second copy.

残り部数が1となったと判断した場合(S633:YES)、CPU11は、処理対象のジョブIDに紐づけられている全てのページの保持フラグをオフに変更し(S635)、S602に戻り、最後の1部の印刷を実行する。これにより、最後の1部の印刷が完了した後、エンジン制御部24によって、エンジン制御処理のS306にて、印刷が完了した各ページのラスタデータが記憶されているラスタ領域40は、解放される。 When determining that the number of remaining copies is 1 (S633: YES), the CPU 11 turns off the retention flags of all pages linked to the job ID to be processed (S635), returns to S602, and finally to print one copy of As a result, after the printing of the last copy is completed, the engine control unit 24 releases the raster area 40 in which the raster data of each printed page is stored in S306 of the engine control process. .

残り部数が0となったと判断した場合(S634:YES)、CPU11は、2部目以降印刷処理を終了して、データ受信処理に戻る。 When determining that the number of remaining copies is 0 (S634: YES), the CPU 11 ends the print processing for the second and subsequent copies, and returns to the data reception processing.

例えば、図9に示した印刷ジョブの1部目の印刷が終了した後、プリンタ1は、2部目以降印刷処理に基づく処理を実行する。プリンタ1においてコレート印刷の2部目から最終部の1部前までの印刷時におけるメモリ12の利用状況を、図11を参照して説明する。 For example, after the printing of the first copy of the print job shown in FIG. 9 is completed, the printer 1 executes processing based on the printing process for the second and subsequent copies. Referring to FIG. 11, the usage status of the memory 12 when printing from the second copy to the last copy before the final copy in the printer 1 will be described.

2部目以降印刷処理の開始時には、図11(A)に示すように、2ページ目から8ページ目までのラスタデータがラスタ領域40に記憶され、1ページ目から9ページ目までのラスタデータが外部メモリ50に記憶されている状態となる。 At the start of the printing process for the second and subsequent copies, as shown in FIG. is stored in the external memory 50 .

2部目以降印刷処理にて、CPU11は、1ページ目のラスタデータがメモリ12に記憶されていないと判断する(S602にてNO)ので、S211~S219を実行する。プリンタ1は、図11(B)に示すように、外部メモリ50から1ページ目のラスタデータを読み出し、ラスタ領域40に記憶する(2部目以降印刷処理のS618)。プリンタ1は、1ページ目の印刷を実行し(2部目以降印刷処理のS222)、1ページ目の保持フラグがオフであることから(2部目以降印刷処理のS212)、印刷が終了したら1ページ目のラスタデータが記憶されているラスタ領域40を解放する(エンジン制御処理のS306)。 In the printing process for the second and subsequent copies, the CPU 11 determines that the raster data for the first page is not stored in the memory 12 (NO in S602), and therefore executes S211 to S219. As shown in FIG. 11B, the printer 1 reads out the raster data of the first page from the external memory 50 and stores it in the raster area 40 (S618 for printing the second and subsequent copies). The printer 1 executes the printing of the first page (S222 of the printing process for the second and subsequent copies), and since the hold flag for the first page is off (S212 of the printing process of the second and subsequent copies), The raster area 40 storing the raster data of the first page is released (S306 of the engine control process).

2~8ページ目のラスタデータは、ラスタ領域40に既に記憶されているので(2部目以降印刷処理のS602にてYES)、プリンタ1は、図11(C)に示すように、ラスタ領域40に記憶されているラスタデータに基づいて、2~8ページ目の印刷を行う(2部目以降印刷処理のS222)。これらのページの保持フラグはオンであり、プリンタ1は、2~8ページ目のラスタデータを記憶するラスタ領域40を解放しない。 Since the raster data of the 2nd to 8th pages have already been stored in the raster area 40 (YES in S602 of the printing process for the second and subsequent copies), the printer 1 performs the raster area 2 to 8 pages are printed based on the raster data stored in 40 (S222 of print processing for the second and subsequent copies). The hold flags of these pages are ON, and the printer 1 does not release the raster area 40 storing the raster data of the 2nd to 8th pages.

9ページ目のラスタデータがラスタ領域40に記憶されていないので、プリンタ1は、図11(D)に示すように、外部メモリ50から9ページ目のラスタデータを読み出し、ラスタ領域40に記憶する(2部目以降印刷処理のS602にてNOによりS618)。9ページ目の保持フラグは、オフである(2部目以降印刷処理のS212)。プリンタ1は、9ページ目の印刷を実行し、印刷が終了したら9ページ目のラスタデータが記憶されているラスタ領域40を解放する(エンジン制御処理のS306)ので、図11(E)に示す状態となる。 Since the raster data of the ninth page is not stored in the raster area 40, the printer 1 reads the raster data of the ninth page from the external memory 50 and stores it in the raster area 40 as shown in FIG. 11(D). (S618 if NO in S602 of print processing for the second and subsequent copies). The hold flag for the ninth page is off (S212 of the printing process for the second and subsequent copies). The printer 1 executes printing of the ninth page, and releases the raster area 40 storing the raster data of the ninth page when the printing is completed (S306 of the engine control process). state.

図11(E)は、図11(A)と同じ状態である。なお、図11(B)~(E)では省略しているが、外部メモリ50に記憶されているラスタデータは、図11(A)の状態から変化していない。そして、プリンタ1は、2部目から最終部の1部前まで、図11(A)~(E)の処理を繰り返す。 FIG. 11(E) is the same state as FIG. 11(A). Although omitted in FIGS. 11B to 11E, the raster data stored in the external memory 50 has not changed from the state shown in FIG. 11A. Then, the printer 1 repeats the processes of FIGS. 11A to 11E from the second set to the one set before the final set.

次に、プリンタ1においてコレート印刷の最終部の印刷時におけるメモリ12の利用状況を、図12を参照して説明する。最終部の印刷前には、2部目以降印刷処理のS635により、各ページの保持フラグはオフとなっている。 Next, the usage state of the memory 12 when printing the final copy of collate printing in the printer 1 will be described with reference to FIG. Before the final copy is printed, the hold flag of each page is turned off by S635 of the printing process for the second and subsequent copies.

最終部の印刷時にも、プリンタ1は、1部前と同様に、外部メモリ50から1ページ目のラスタデータを読み出して、ラスタ領域40に記憶し(2部目以降印刷処理のS618)、1ページ目の印刷を行う。さらに、プリンタ1は、ラスタ領域40に記憶されている2~8ページ目のラスタデータに基づいて、2~8ページ目の印刷を行う。最終部の印刷時には、2~8ページ目の保持フラグがオフに変更されていることから(2部目以降印刷処理のS635)、プリンタ1は、最終部の各ページの印刷が完了した後、そのページのラスタデータが記憶されているラスタ領域40を解放する(エンジン制御処理のS306)。 When printing the final copy, the printer 1 reads out the raster data of the first page from the external memory 50 and stores it in the raster area 40 (S618 of the printing process for the second and subsequent copies) in the same way as the previous copy. Print the first page. Further, the printer 1 prints the 2nd to 8th pages based on the raster data of the 2nd to 8th pages stored in the raster area 40 . When printing the last copy, since the hold flags for pages 2 to 8 are turned off (S635 of the printing process for the second and subsequent copies), the printer 1, after printing each page of the last copy, The raster area 40 storing the raster data of that page is released (S306 of the engine control process).

さらに、プリンタ1は、図12(B)に示すように、外部メモリ50から9ページ目のラスタデータを読み出し、ラスタ領域40に記憶して印刷を実行する(2部目以降印刷処理のS618~S222)。9ページ目の保持フラグはオフであり(2部目以降印刷処理のS212)、プリンタ1は、9ページ目の印刷が終了したら9ページ目のラスタデータが記憶されているラスタ領域40を解放する(エンジン制御処理のS306)。 Further, as shown in FIG. 12B, the printer 1 reads out the raster data of the ninth page from the external memory 50, stores it in the raster area 40, and executes printing (from S618 of the printing process for the second and subsequent copies). S222). The hold flag for the ninth page is off (S212 of the printing process for the second and subsequent copies), and the printer 1 releases the raster area 40 storing the raster data for the ninth page after printing the ninth page. (S306 of engine control processing).

図4のデータ受信処理の説明に戻る。S133の2部目以降印刷処理の後、CPU11は、外部メモリ50に記憶したラスタデータを消去する(S134)。指定された部数の印刷が完了した後、プリンタ1は、外部メモリ50に記憶した全ページ分のラスタデータを消去する。これにより、図12(C)に示すように、ラスタ領域40も外部メモリ50も、ラスタデータが記憶されていない状態となる。CPU11は、終了した印刷ジョブの情報をジョブリストから消去し(S141)、データ受信処理を終了する。 Returning to the description of the data reception process in FIG. After the printing process for the second and subsequent copies in S133, the CPU 11 erases the raster data stored in the external memory 50 (S134). After printing the designated number of copies, the printer 1 erases all pages of raster data stored in the external memory 50 . As a result, as shown in FIG. 12C, neither the raster area 40 nor the external memory 50 stores raster data. The CPU 11 erases the information of the finished print job from the job list (S141), and finishes the data reception process.

以上、詳細に説明したように、本形態のプリンタ1は、コレート印刷では、取得したラスタデータを記憶する際に、ラスタ領域40に空きが無かった場合、ラスタ領域40に記憶されている少なくとも1ページ分のラスタデータを記憶するラスタ領域40を解放して、ラスタ領域40を空けるので、ラスタデータを記憶可能になり、その結果として印刷の処理を継続できる。さらに、本形態のプリンタ1は、取得したラスタデータを外部メモリ50に記憶し、指定された部数の印刷が完了する前にラスタ領域40から消去されてしまったラスタデータを、外部メモリ50から読み出して印刷に利用する。これにより、消去されてしまったラスタデータに示される画像についても印刷でき、コレート印刷の処理を完了できる可能性が高い。 As described in detail above, in collate printing, when the acquired raster data is stored in the printer 1 of the present embodiment, if the raster area 40 has no free space, at least one data stored in the raster area 40 is stored. Since the raster area 40 for storing raster data for a page is released and the raster area 40 is vacated, the raster data can be stored, and as a result, the printing process can be continued. Further, the printer 1 of this embodiment stores the acquired raster data in the external memory 50, and reads out from the external memory 50 the raster data that has been erased from the raster area 40 before printing of the specified number of copies is completed. used for printing. As a result, it is highly likely that the image indicated by the erased raster data can also be printed and the collate printing process can be completed.

さらに、本形態のプリンタ1は、コレート印刷のためにラスタ領域40に記憶されているラスタデータを消去した場合、消去したことで空いたラスタ領域40に記憶するラスタデータに対応するページの保持フラグをオフにする。ラスタデータの消去によってラスタ領域40を確保した場合、その後もラスタ領域40に空きが無い可能性が高い。本形態のプリンタ1は、消去によって確保されたラスタ領域40に記憶したラスタデータを、印刷が完了した後に消去するので、後続のラスタデータについても早期にラスタ領域40に記憶できる可能性が高まる。 Further, when the raster data stored in the raster area 40 is erased for collate printing, the printer 1 of the present embodiment has a hold flag for the page corresponding to the raster data stored in the raster area 40 that has been cleared by the erasure. turn off. If the raster area 40 is secured by erasing raster data, there is a high possibility that the raster area 40 will remain empty after that. Since the printer 1 of the present embodiment erases the raster data stored in the raster area 40 secured by erasing after printing is completed, the subsequent raster data can also be stored in the raster area 40 at an early stage.

さらに、本形態のプリンタ1は、ラスタ領域40に記憶されているラスタデータを消去する場合、まず1ページ分だけを消去し、それでも足りない場合にはさらに1ページ分を消去する。一度に多くのラスタデータを消去してしまうと、消去された分のラスタデータを外部メモリ50から取得するための処理負荷が大きくなるが、このようにすることで、外部メモリ50から取得するラスタデータを少なくでき、処理負荷の増大が抑制される。 Furthermore, when erasing the raster data stored in the raster area 40, the printer 1 of the present embodiment erases only one page first, and if it is still insufficient, erases another page. If a large amount of raster data is erased at once, the processing load for acquiring the erased raster data from the external memory 50 increases. Data can be reduced, and an increase in processing load is suppressed.

なお、本実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。従って本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、プリンタ1は、印刷単機能のものに限らず、複合機、複写機、FAX装置等、印刷機能を備えるものであれば適用可能である。また、プリンタ1に印刷ジョブを送信する装置は、PC3に限らず、スマートフォン、タブレットコンピュータ、サーバコンピュータでも良い。また、プリンタ1には、複数のPC等が接続されていても良い。 It should be noted that the present 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 thereof. For example, the printer 1 is not limited to a printer having a single printing function, and can be applied to any printer having a printing function such as a multifunction machine, a copier, a FAX machine, and the like. Also, the device that transmits the print job to the printer 1 is not limited to the PC 3, and may be a smart phone, a tablet computer, or a server computer. Also, the printer 1 may be connected to a plurality of PCs or the like.

また、本形態では、プリンタ1に内蔵されるメモリ12のラスタ領域40にラスタデータを記憶できなくなったと判断した場合に、外部メモリ50の利用を開始するとしたが、これに限らない。例えば、コレート印刷の印刷ジョブであると判断した場合、全ページのラスタデータを取得して、まず、外部メモリ50に記憶した後、外部メモリ50にあるラスタデータを順に読み出して印刷に利用するとしてもよい。ただし、プリンタ1に内蔵されるメモリ12のラスタ領域40が足りなくなった場合に外部メモリ50の利用を開始し、その後は受信バッファ60にあるラスタデータを、プリンタ1に内蔵されるメモリ12のラスタ領域40と外部メモリ50とに記憶して印刷することで、外部メモリ50を利用せずに印刷できるページが多くなり、印刷ジョブの処理を早期に完了できる可能性が高まる。 Further, in this embodiment, when it is determined that raster data cannot be stored in the raster area 40 of the memory 12 built into the printer 1, the use of the external memory 50 is started, but the present invention is not limited to this. For example, if it is determined that the print job is for collate printing, the raster data of all pages are acquired and stored in the external memory 50 first, and then the raster data in the external memory 50 are sequentially read out and used for printing. good too. However, when the raster area 40 in the memory 12 built into the printer 1 runs out, the use of the external memory 50 is started, and thereafter the raster data in the reception buffer 60 is transferred to the raster data in the memory 12 built into the printer 1. Storing and printing in the area 40 and the external memory 50 increases the number of pages that can be printed without using the external memory 50, increasing the possibility of early completion of print job processing.

また、本形態では、コレート印刷の印刷ジョブとして、コマンド210を含む印刷ジョブを例示したが、PJLデータ201、203を含まないラスタデータだけの印刷ジョブであっても良い。プリンタ1は、例えば、ユーザIF13を介して、印刷部数の指示やコレート印刷の指示を受け付け可能であっても良い。 Further, in this embodiment, the print job including the command 210 is illustrated as the print job for collate printing, but the print job may be a print job including only raster data that does not include the PJL data 201 and 203 . For example, the printer 1 may be able to receive an instruction for the number of copies to be printed and an instruction for collate printing via the user IF 13 .

また、本形態では、ラスタ領域40が足りなくなった場合、1ページ分ずつラスタデータを消去し、以降のページの処理では、ラスタデータを消去することで空いたラスタ領域40を使いまわすとしたが、これに限らない。例えば、ラスタ領域40が足りなくなった時点で、その後のラスタデータから残りのページ数を取得して、残りのページ数分のラスタ領域40を空けるとしても良い。 Also, in this embodiment, when the raster area 40 runs out, the raster data is erased one page at a time, and the raster area 40 vacated by erasing the raster data is reused in the processing of subsequent pages. , but not limited to this. For example, when the raster area 40 runs out, the number of remaining pages may be acquired from subsequent raster data, and the raster area 40 may be made available for the remaining number of pages.

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

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

1 プリンタ
3 PC
12 メモリ
14 通信IF
50 外部メモリ
1 Printer 3 PC
12 memory 14 communication IF
50 external memory

Claims (11)

内部メモリを備えるプリンタであって、
前記プリンタは、
印刷対象の画像を示すラスタデータを取得し、取得された前記ラスタデータを空いているラスタ領域に記憶し、前記ラスタデータは、ラスタ形式のデータであり、前記ラスタ領域は、前記ラスタデータの記憶に先立って前記内部メモリに確保された領域であり、印刷対象の前記画像は複数ページある場合があり、
さらに前記プリンタは、
前記ラスタ領域に記憶されている前記ラスタデータを読み出し、読み出された前記ラスタデータに示される画像を印刷し、
さらに前記プリンタは、
部単位での印刷が指定されていない前記ラスタデータについては、印刷が完了した後、前記ラスタ領域から消去し、
部単位での印刷が指定されている前記ラスタデータについては、1部目の印刷が完了しても、前記ラスタ領域から消去せず、2部目以降の印刷に利用し、指定された部数の印刷が完了した後、前記ラスタ領域から消去し、
さらに前記プリンタは、
部単位の印刷が指定されている前記ラスタデータを記憶する際に、前記ラスタ領域に空きが無かった場合、前記ラスタ領域に記憶されている前記ラスタデータのうち、少なくとも1ページ分を前記ラスタ領域から消去し、
さらに前記プリンタは、
取得された前記ラスタデータに部単位での印刷が指定されている場合、取得された前記ラスタデータを前記プリンタと接続される外部メモリに記憶し、
さらに前記プリンタは、
指定された部数の印刷が完了する前に前記ラスタ領域から消去された前記ラスタデータに示される画像を印刷する場合、前記外部メモリから印刷対象の前記ラスタデータを読み出して前記ラスタ領域に記憶し、前記外部メモリから読み出された前記ラスタデータを印刷に利用する、
ことを特徴とするプリンタ。
A printer comprising an internal memory,
The printer is
Obtaining raster data representing an image to be printed, storing the obtained raster data in an empty raster area, wherein the raster data is data in raster format, and the raster area stores the raster data. is an area secured in the internal memory prior to , and the image to be printed may have multiple pages,
Further, the printer
reading the raster data stored in the raster area, printing an image indicated by the read raster data;
Further, the printer
deleting the raster data for which collation printing is not specified from the raster area after printing is completed;
The raster data for which collation printing is specified is not deleted from the raster area even after the printing of the first copy is completed. After printing is completed, erase from the raster area,
Further, the printer
If there is no space in the raster area when storing the raster data for which collation printing is designated, at least one page of the raster data stored in the raster area is stored in the raster area. erase from
Further, the printer
storing the acquired raster data in an external memory connected to the printer, if collated printing is specified for the acquired raster data;
Further, the printer
reading the raster data to be printed from the external memory and storing it in the raster area when printing an image indicated by the raster data erased from the raster area before printing of a specified number of copies is completed; using the raster data read from the external memory for printing;
A printer characterized by:
請求項1に記載するプリンタにおいて、
前記プリンタは、
取得された前記ラスタデータに、部単位の印刷を示すコマンドが付与されている場合に、部単位での印刷が指定されているとする、
ことを特徴とするプリンタ。
The printer of claim 1, wherein
The printer is
If a command indicating collation printing is given to the acquired raster data, collation printing is specified.
A printer characterized by:
請求項1または請求項2に記載するプリンタにおいて、
前記プリンタは、
部単位の印刷が指定されている前記ラスタデータを記憶する際に、前記ラスタ領域に空きが無く、前記ラスタ領域に記憶されている前記ラスタデータのうち、少なくとも1ページ分を前記ラスタ領域から消去した場合、その消去によって前記ラスタ領域に記憶された前記ラスタデータについて、印刷が完了した後、前記ラスタ領域から消去する、
ことを特徴とするプリンタ。
In the printer according to claim 1 or claim 2,
The printer is
At least one page of the raster data stored in the raster area is erased from the raster area when the raster area is full when the raster data for which collation printing is specified is stored. in this case, the raster data stored in the raster area due to the erasure is erased from the raster area after printing is completed;
A printer characterized by:
請求項1から請求項3のいずれか1つに記載するプリンタにおいて、
前記プリンタは、
前記外部メモリから読み出した前記ラスタデータを印刷に利用する場合、その読み出された前記ラスタデータについては、印刷が完了した後、前記ラスタ領域から消去する、
ことを特徴とするプリンタ。
In the printer according to any one of claims 1 to 3,
The printer is
when the raster data read from the external memory is used for printing, the read raster data is erased from the raster area after printing is completed;
A printer characterized by:
請求項1から請求項4のいずれか1つに記載するプリンタにおいて、
前記プリンタは、
部単位の印刷が指定されている前記ラスタデータを記憶する際に、前記ラスタ領域に空きが無かった場合、前記ラスタ領域に記憶されている前記ラスタデータのうち、前記ラスタ領域に記憶された時期が最も古い前記ラスタデータを前記ラスタ領域から消去する、
ことを特徴とするプリンタ。
In the printer according to any one of claims 1 to 4,
The printer is
If there is no space in the raster area when storing the raster data for which collation printing is designated, the timing of storing the raster data in the raster area among the raster data stored in the raster area. erases the oldest raster data from the raster area,
A printer characterized by:
請求項1から請求項5のいずれか1つに記載するプリンタにおいて、
前記プリンタは、
部単位の印刷が指定されている前記ラスタデータを記憶する際に、前記ラスタ領域に空きが無かった場合、前記ラスタ領域に記憶されている前記ラスタデータのうち、1ページ分を前記ラスタ領域から消去し、その後、前記ラスタデータを記憶する空きが前記ラスタ領域に有れば、前記ラスタデータを前記ラスタ領域に記憶し、前記ラスタデータを記憶する空きが前記ラスタ領域に無ければ、前記ラスタ領域に記憶されている前記ラスタデータのうち、さらに1ページ分を前記ラスタ領域から消去する、
ことを特徴とするプリンタ。
In the printer according to any one of claims 1 to 5,
The printer is
If there is no space in the raster area when storing the raster data for which collation printing is specified, one page of the raster data stored in the raster area is removed from the raster area. After that, if there is space for storing the raster data in the raster area, the raster data is stored in the raster area, and if there is no space for storing the raster data in the raster area, the raster area is stored. erasing from the raster area one page of the raster data stored in
A printer characterized by:
請求項1から請求項6のいずれか1つに記載するプリンタにおいて、
通信インタフェースを備え、
前記プリンタは、
前記通信インタフェースを介して、外部デバイスから送信された前記ラスタデータを受信することによって前記ラスタデータを取得する、
ことを特徴とするプリンタ。
In the printer according to any one of claims 1 to 6,
Equipped with a communication interface,
The printer is
obtaining the raster data by receiving the raster data transmitted from an external device via the communication interface;
A printer characterized by:
請求項7に記載するプリンタにおいて、
前記プリンタは、
受信した前記ラスタデータを前記内部メモリに確保された受信バッファに記憶し、前記受信バッファから前記ラスタデータを前記ラスタ領域に記憶し、
さらに前記プリンタは、
部単位での印刷が指定されている場合、前記ラスタデータの前記ラスタ領域への記憶に並行して、前記受信バッファに記憶された前記ラスタデータを前記外部メモリに記憶する、
ことを特徴とするプリンタ。
A printer according to claim 7, wherein
The printer is
storing the received raster data in a reception buffer secured in the internal memory, storing the raster data from the reception buffer in the raster area;
Further, the printer
when collation printing is specified, storing the raster data stored in the reception buffer in the external memory in parallel with storing the raster data in the raster area;
A printer characterized by:
請求項1から請求項6のいずれか1つに記載するプリンタにおいて、
通信インタフェースを備え、
前記プリンタは、
前記通信インタフェースを介して、印刷対象の画像を示す画像データを受信し、受信された前記画像データをラスタライズすることによって生成された前記ラスタデータを取得する、
ことを特徴とするプリンタ。
In the printer according to any one of claims 1 to 6,
Equipped with a communication interface,
The printer is
receiving image data representing an image to be printed via the communication interface, and obtaining the raster data generated by rasterizing the received image data;
A printer characterized by:
請求項1から請求項9のいずれか1つに記載するプリンタにおいて、
前記プリンタは、
取得された前記ラスタデータに部単位での印刷が指定されている場合、全ページ分の前記ラスタデータを前記ラスタ領域に記憶可能であれば、前記ラスタデータを前記外部メモリに記憶せず、全ページ分の前記ラスタデータを前記ラスタ領域に記憶できなければ、全ページ分の前記ラスタデータを前記外部メモリに記憶する、
ことを特徴とするプリンタ。
In the printer according to any one of claims 1 to 9,
The printer is
When the obtained raster data specifies printing in units of copies, if the raster data for all pages can be stored in the raster area, the raster data is not stored in the external memory, and all the raster data are stored in the external memory. if the raster data for a page cannot be stored in the raster area, storing the raster data for all pages in the external memory;
A printer characterized by:
請求項10に記載するプリンタにおいて、
前記プリンタは、
取得された前記ラスタデータに部単位での印刷が指定されている場合、印刷対象の前記ラスタデータを記憶する空きが前記ラスタ領域にある間は、前記ラスタデータを前記外部メモリに記憶せず、印刷対象の前記ラスタデータを記憶する空きが前記ラスタ領域に無くなった場合に、その印刷対象の前記ラスタデータおよびその印刷対象の前記ラスタデータよりも先に取得された前記ラスタデータを、前記外部メモリに記憶し、さらにその印刷対象の前記ラスタデータよりも後に取得した前記ラスタデータも、前記外部メモリに記憶する、
ことを特徴とするプリンタ。
11. The printer of claim 10, wherein
The printer is
if collation printing is designated for the obtained raster data, the raster data is not stored in the external memory while there is space for storing the raster data to be printed in the raster area; When the space for storing the raster data to be printed runs out in the raster area, the raster data to be printed and the raster data acquired earlier than the raster data to be printed are stored in the external memory. and further storing the raster data acquired after the raster data to be printed in the external memory.
A printer characterized by:
JP2021160781A 2021-09-30 2021-09-30 printer Pending JP2023050596A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021160781A JP2023050596A (en) 2021-09-30 2021-09-30 printer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021160781A JP2023050596A (en) 2021-09-30 2021-09-30 printer

Publications (1)

Publication Number Publication Date
JP2023050596A true JP2023050596A (en) 2023-04-11

Family

ID=85806335

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021160781A Pending JP2023050596A (en) 2021-09-30 2021-09-30 printer

Country Status (1)

Country Link
JP (1) JP2023050596A (en)

Similar Documents

Publication Publication Date Title
JP6034555B2 (en) Printing control apparatus and control method therefor
US9280732B2 (en) Printing device, printing control method and recording medium capable of interruption printing with high security
US20120293835A1 (en) Host computer, print control system, control method for print control system, and program
EP2431921A2 (en) Image forming apparatus, image forming method, and computer program product
JP2009241584A (en) Method of canceling printing job submitted to printer
US8649049B2 (en) Image forming apparatus, job management method, and storage medium in which a job designated in a job list for reprinting can be securely reprinted
US20130194609A1 (en) Printing apparatus and method of controlling the same
US8169632B2 (en) Printing system and printing device
US20160381244A1 (en) Image forming apparatus, image forming method and non-transitory computer readable recording medium
JP2023050596A (en) printer
JP4916487B2 (en) Information processing apparatus and program
JP2000158761A (en) Image output unit, image processing system, image output control method and memory medium
JP2023050593A (en) printer
KR20140005773A (en) Information processing apparatus equipped with overwrite deletion function, method of controlling the same, and storage medium
JP2012224035A (en) Printing apparatus, method for controlling printing apparatus, and program
US9207889B2 (en) Information processing apparatus, information processing method, and storage medium
JP2012162041A (en) Image forming apparatus, method of controlling the same, and program
JP2006256041A (en) Image forming device and image forming method
JP2023048503A (en) printer
US11144803B1 (en) Image processing apparatus, image forming apparatus, and image processing method for temporarily deleting page area of ring buffer
JP2008195041A (en) Image formation system, information processing method, information processing program
JP2013111799A (en) Printer and method for controlling the same
US11113013B2 (en) Image forming apparatus for executing secure print job
JP5776240B2 (en) Image forming apparatus and image forming program
JP2013126748A (en) Image forming apparatus and image forming method