(57)【要約】【課題】蓄積印刷を行う画像形成装置であって、受信した画像データの好適な保存技術を提供すること。【解決手段】ＭＦＰ１００は、通信ＩＦ３７を介して画像データを受信し、受信した画像データがＧＤＩデータであるか否かを判断する。ＭＦＰ１００は、ＧＤＩデータであると判断した場合、受信したＧＤＩデータをＲＡＭ３３に保存し、ＧＤＩデータではないと判断した場合、受信した画像データをラスタライズ及び圧縮した圧縮データをＲＡＭ３３に保存する。ＭＦＰ１００は、保存されているＧＤＩデータに対する印刷指示を受け付けた場合、ＧＤＩデータに基づく画像形成を画像形成部１０に行わせ、保存されている圧縮データに対する印刷指示を受け付けた場合、圧縮データを解凍及び画処理して印刷データを生成し、生成した印刷データに基づく画像形成を画像形成部１０に行わせる。【選択図】図３
2019130704.tif 000002
【特許請求の範囲】
【請求項１】
画像形成ハードウェアと、
ネットワークインターフェースと、
ユーザインターフェースと、
メモリと、
コントローラと、
を備え、
前記コントローラは、
前記ネットワークインターフェースを介して画像データを受信する受信処理と、
前記画像データが、前記画像形成ハードウェアが画像形成に用いる特定の種別の画像データであるか否かを判断する判断処理と、
を実行し、さらに、
前記判断処理にて前記画像データが前記特定の種別であると判断された場合、
前記画像データを前記メモリに保存する第１保存処理を実行し、
前記判断処理にて前記画像データが前記特定の種別ではないと判断された場合、
前記画像データをラスタライズしてラスタライズデータを生成するラスタライズデータ生成処理と、
前記ラスタライズデータを圧縮した圧縮データを生成する圧縮処理と、
前記圧縮データを前記メモリに保存する第２保存処理と、
を実行し、
前記メモリに保存されている前記画像データに対する印刷指示を前記ユーザインターフェースを介して受け付けた場合、
前記画像データに基づいて前記画像形成ハードウェアに画像形成を行わせる第１画像形成処理を実行し、
前記メモリに保存されている前記圧縮データに対する印刷指示を前記ユーザインターフェースを介して受け付けた場合、
前記圧縮データを解凍して前記ラスタライズデータを復元する解凍処理と、
前記解凍処理によって解凍された前記ラスタライズデータに対して画処理を施した印刷データを生成する印刷データ生成処理と、
前記印刷データに基づいて前記画像形成ハードウェアに画像形成を行わせる第２画像形成処理と、
を実行する、
ことを特徴とする画像形成装置。
【請求項２】
請求項１に記載する画像形成装置において、
前記コントローラは、
前記判断処理では、画素情報を記憶する形式であって、かつ連続する同じ画素情報を間引く形式の画像データを、前記特定の種別であると判断する、
ことを特徴とする画像形成装置。
【請求項３】
請求項１または請求項２に記載する画像形成装置において、
前記コントローラは、
前記受信処理では、前記特定の種別の画像データを一部分ずつ受信し、
前記特定の種別の画像データのうちの受信済みの部分のデータサイズが所定サイズを超えたか否かを判断する受信データサイズ判断処理を実行し、
前記第１保存処理では、
前記受信データサイズ判断処理にて前記データサイズが前記所定サイズを超えたと判断されることなく、前記特定の種別の画像データの送信終了を示すコマンドを前記ネットワークインターフェースを介して受信した場合、前記特定の種別の画像データを前記メモリに保存し、
前記コマンドを前記ネットワークインターフェースを介して受信する前に、前記受信データサイズ判断処理にて前記データサイズが前記所定サイズを超えたと判断された場合、前記特定の種別の画像データのジョブをキャンセルする、
ことを特徴とする画像形成装置。
【請求項４】
請求項１または請求項２に記載する画像形成装置において、
前記コントローラは、
前記受信処理では、前記特定の種別の画像データを一部分ずつ受信し、
前記特定の種別の画像データのうちの受信済みの部分のデータサイズが所定サイズを超えたか否かを判断する受信データサイズ判断処理を実行し、
前記第１保存処理では、
前記受信データサイズ判断処理にて前記データサイズが前記所定サイズを超えたと判断されることなく、前記特定の種別の画像データの送信終了を示すコマンドを前記ネットワークインターフェースを介して受信した場合、前記特定の種別の画像データを前記メモリに保存し、
前記コマンドを前記ネットワークインターフェースを介して受信する前に、前記受信データサイズ判断処理にて前記データサイズが前記所定サイズを超えたと判断された場合、前記特定の種別の画像データを圧縮した特定圧縮データを生成して、前記特定圧縮データを前記メモリに保存する、
ことを特徴とする画像形成装置。
【請求項５】
請求項１から請求項４のいずれか１つに記載する画像形成装置において、
前記コントローラは、
前記判断処理では、ページ記述言語で記述された形式の画像データを、前記特定の種別の画像データではないと判断する、
ことを特徴とする画像形成装置。
【請求項６】
請求項１から請求項５のいずれか１つに記載する画像形成装置において、
データの圧縮および解凍を行う回路を備え、
前記コントローラは、
前記圧縮処理では、前記ラスタライズデータを前記回路に圧縮させ、
前記解凍処理では、前記圧縮データを前記回路に解凍させる、
ことを特徴とする画像形成装置。
【請求項７】
請求項１から請求項６のいずれか１つに記載する画像形成装置において、
前記コントローラは、
前記圧縮処理では、前記ラスタライズデータを非可逆圧縮方式で圧縮する、
ことを特徴とする画像形成装置。
【請求項８】
請求項１から請求項６のいずれか１つに記載する画像形成装置において、
前記コントローラは、
前記圧縮処理では、前記ラスタライズデータを可逆圧縮方式で圧縮する、
ことを特徴とする画像形成装置。
【請求項９】
請求項１から請求項８のいずれか１つに記載する画像形成装置において、
前記コントローラは、
第１コントローラと、
第２コントローラと、
を備え、
前記第１コントローラが実行する処理には、
前記判断処理および前記ラスタライズデータ生成処理が含まれ、
前記第２コントローラが実行する処理には、
前記第１保存処理、前記圧縮処理および前記第２保存処理が含まれる、
ことを特徴とする画像形成装置。
【請求項１０】
請求項９に記載する画像形成装置において、
前記コントローラは、さらに、
第３コントローラと、
第４コントローラと、
を備え、
前記第２コントローラが実行する処理には、
前記解凍処理が含まれ、
前記第３コントローラが実行する処理には、
前記印刷データ生成処理が含まれ、
前記第４コントローラが実行する処理には、
前記第１画像形成処理および前記第２画像形成処理が含まれる、
ことを特徴とする画像形成装置。
【請求項１１】
画像形成ハードウェアと、
ネットワークインターフェースと、
ユーザインターフェースと、
メモリと、
コントローラと、
を備える画像形成装置の前記コントローラに、
前記ネットワークインターフェースを介して受信した画像データが、前記画像形成ハードウェアでの画像形成に用いられる特定の種別の画像データである場合、
前記画像データを前記メモリに保存する第１保存処理を実行させ、
前記画像データが前記特定の種別ではない場合、
前記画像データがラスタライズされたラスタライズデータを圧縮した圧縮データを生成する圧縮処理と、
前記圧縮データを前記メモリに保存する第２保存処理と、
を実行させ、
前記メモリに保存されている前記画像データに対する印刷指示を前記ユーザインターフェースを介して受け付けた場合、
前記画像データに基づいて前記画像形成ハードウェアに画像形成を行わせる第１画像形成処理を実行させ、
前記メモリに保存されている前記圧縮データに対する印刷指示を前記ユーザインターフェースを介して受け付けた場合、
前記圧縮データを解凍して前記ラスタライズデータを復元する解凍処理と、
前記解凍処理によって解凍された前記ラスタライズデータに対して画処理を施した印刷データに基づいて前記画像形成ハードウェアに画像形成を行わせる第２画像形成処理と、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、蓄積印刷を行う画像形成装置およびプログラムに関する。さらに詳細には、受信した画像データの保存に関する技術である。
【背景技術】
【０００２】
従来、画像データを受信した際に印刷を直ぐには行わず、画像データもしくは画像データを変換したデータを保存し、ユーザからの印刷指示の入力等の印刷条件を満たした場合に印刷を行う蓄積印刷が可能な画像形成装置が知られている。蓄積印刷が可能な画像形成装置を開示した文献としては、例えば、特許文献１がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−２１８２４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
受信した画像データの種別によって、その画像データに対してラスタライズや画処理等の各種の処理を画像形成装置が行う必要が有るものと、それらの処理を行う必要が無いもの、すなわちそれらの処理が画像データの送信元で行われているものとがある。前者の画像データの蓄積印刷を行う場合、上述の処理のうちラスタライズには時間がかかることから、ラスタライズを行った上で保存する方が、印刷開始を早めるために好ましい。しかしながら、ラスタライズ後のデータはＲＧＢ等のローデータであり、データサイズが大きい傾向にある。そのため、メモリ不足が生じ易く、蓄積可能なページ数が少なくなる。
【０００５】
本発明は、前記した従来の技術が有する問題点を解決するためになされたものである。すなわちその課題とするところは、蓄積印刷を行う画像形成装置であって、受信した画像データの好適な保存技術を提供することにある。
【課題を解決するための手段】
【０００６】
この課題の解決を目的としてなされた画像形成装置は、画像形成ハードウェアと、ネットワークインターフェースと、ユーザインターフェースと、メモリと、コントローラと、を備え、前記コントローラは、前記ネットワークインターフェースを介して画像データを受信する受信処理と、前記画像データが、前記画像形成ハードウェアが画像形成に用いる特定の種別の画像データであるか否かを判断する判断処理と、を実行し、さらに、前記判断処理にて前記画像データが前記特定の種別であると判断された場合、前記画像データを前記メモリに保存する第１保存処理を実行し、前記判断処理にて前記画像データが前記特定の種別ではないと判断された場合、前記画像データをラスタライズしてラスタライズデータを生成するラスタライズデータ生成処理と、前記ラスタライズデータを圧縮した圧縮データを生成する圧縮処理と、前記圧縮データを前記メモリに保存する第２保存処理と、を実行し、前記メモリに保存されている前記画像データに対する印刷指示を前記ユーザインターフェースを介して受け付けた場合、前記画像データに基づいて前記画像形成ハードウェアに画像形成を行わせる第１画像形成処理を実行し、前記メモリに保存されている前記圧縮データに対する印刷指示を前記ユーザインターフェースを介して受け付けた場合、前記圧縮データを解凍して前記ラスタライズデータを復元する解凍処理と、前記解凍処理によって解凍された前記ラスタライズデータに対して画処理を施した印刷データを生成する印刷データ生成処理と、前記印刷データに基づいて前記画像形成ハードウェアに画像形成を行わせる第２画像形成処理と、を実行する、ことを特徴としている。
【０００７】
本明細書に開示される画像形成装置は、ネットワークインターフェースを介して受信した画像データの種別を判断し、その判断結果に基づいて、画像データの処理を切り替える。すなわち、受信した画像データが特定の種別の画像データであれば、画像形成装置は、その画像データを圧縮せずにメモリに保存し、印刷指示を受け付けた場合、保存している画像データに基づく画像形成を行う。自装置でのラスタライズの必要がない特定の種別の画像データは、データサイズが小さい傾向にあることからメモリ不足の可能性は低く、圧縮せずに保存することで早期の画像形成が期待できる。一方、受信した画像データが特定の種別の画像データでなければ、画像形成装置は、画像データをラスタライズ後に圧縮して保存し、印刷指示を受け付けた場合、保存している圧縮データを解凍し、解凍されたデータに基づく画像形成を行う。ラスタライズ後のデータを圧縮することで、早期の画像形成の可能性を高めるとともに、メモリ不足を抑制する。
【０００８】
上記画像形成装置の機能を実現するための制御方法、コンピュータプログラム、および当該コンピュータプログラムを格納するコンピュータにて読取可能な記憶媒体も、新規で有用である。
【発明の効果】
【０００９】
本発明によれば、蓄積印刷を行う画像形成装置であって、受信した画像データの好適な保存技術が実現される。
【図面の簡単な説明】
【００１０】
【図１】実施の形態にかかるプリンタの電気的構成を示すブロック図である。
【図２】プリンタによるデータ生成の手順を示す説明図である。
【図３】データ形式による保存手順の違いの例を示す説明図である。
【図４】データ形式による印刷手順の違いの例を示す説明図である。
【図５】プリンタのジョブ受信処理の手順を示すフローチャートである。
【図６】蓄積印刷処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明にかかる画像形成装置を具体化した実施の形態について、添付図面を参照しつつ詳細に説明する。本形態は、画像形成機能を備えたプリンタに本発明を適用したものである。
【００１２】
本形態のＭＦＰ１００の電気的構成について説明する。本形態のＭＦＰ１００は、図１に示すように、ＣＰＵ３１と、ＲＯＭ３２と、ＲＡＭ３３と、不揮発性メモリ３４と、を含む制御基板３０を備えている。また、ＭＦＰ１００は、画像形成部１０と、画像読取部２０と、通信ＩＦ（インターフェースの略）３７と、操作パネル４０と、を備え、これらが制御基板３０に電気的に接続されている。
【００１３】
ＲＯＭ３２には、ＭＦＰ１００を起動するための起動プログラム等が記憶されている。ＲＡＭ３３は、各種の処理が実行される際の作業領域として、あるいは、データを一時的に記憶する記憶領域として利用される。不揮発性メモリ３４は、例えば、ＨＤＤ、フラッシュメモリであり、各種のプログラムや画像データ等のデータや各種設定を記憶する領域として利用される。ＲＯＭ３２、ＲＡＭ３３および不揮発性メモリ３４は、いずれもメモリの一例である。また、ＣＰＵ３１がＣＰＵバッファを備えているものであれば、ＣＰＵバッファもメモリの一例である。
【００１４】
メモリの一例はいずれも、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体である。ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体には、上記の例の他に、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の記録媒体も含まれる。また、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体は、ｔａｎｇｉｂｌｅな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙなコンピュータが読み取り可能なストレージ媒体には含まれない。
【００１５】
ＣＰＵ３１は、ＲＯＭ３２や不揮発性メモリ３４から読み出したプログラムに従って、その処理結果をＲＡＭ３３または不揮発性メモリ３４に記憶させながら、ＭＦＰ１００の各構成要素を制御する。ＣＰＵ３１は、コントローラの一例である。制御基板３０がコントローラであってもよい。なお、図１中の制御基板３０は、ＣＰＵ３１等、ＭＦＰ１００の制御に利用されるハードウェアを纏めた総称であって、実際にＭＦＰ１００に存在する単一のハードウェアを表すとは限らない。また、ＣＰＵ３１は１個に限らず、複数個の協働にて動作するものでも良い。
【００１６】
画像形成部１０は、シートに画像を印刷するための構成およびシートを搬送するための構成を有する。本形態のＭＦＰ１００は、例えば、インクジェット方式で画像を形成するプリンタであり、画像形成部１０は、インクの吐出ノズルを備えた印字ヘッドを有している。画像形成部１０は、印字ヘッドをキャリッジにて走査させて１ライン分の印刷を行い、１ライン分の印刷と１ライン分のシートの搬送とを交互に繰り返すことで、１ページ分の印刷を完了させる。画像形成部１０は、画像形成ハードウェアの一例である。なお、画像形成部１０の印刷方式は、インクジェット方式に限らず、電子写真方式、熱転写方式等であってもよい。また、ＭＦＰ１００の画像形成部１０は、カラー画像の印刷が可能な装置であっても、モノクロ印刷専用の装置であってもよい。
【００１７】
画像読取部２０は、原稿の画像を読み取るための読取ヘッド等の構成を有する。画像読取部２０の読取ヘッドの読取方式は何でも良いし、カラー読み取りでもモノクロ読み取りでも良い。また、画像読取部２０は、原稿搬送装置を備えていてもよい。本形態の画像読取部２０は、読取ヘッドにて読み取ったデータである画素データの圧縮および解凍を行うＪＰＥＧ変換回路２１を備えている。ＪＰＥＧ変換回路２１は、非可逆的な圧縮方式であるＪＰＥＧ方式の圧縮および解凍を行うハードウェア構成である。ＪＰＥＧ変換回路２１は、回路の一例である。
【００１８】
通信ＩＦ３７は、例えば、ネットワークを介して接続された外部装置と通信を行うためのハードウェアである。通信方法は、有線であっても無線であってもよい。ＭＦＰ１００は、例えば、通信ＩＦ３７を介して、ＰＣ等の外部装置から送信された印刷ジョブを受け付ける。通信ＩＦ３７は、ネットワークインターフェースの一例である。
【００１９】
操作パネル４０は、ＭＦＰ１００の外装に設けられ、動作状況の表示やユーザによる入力操作の受付を行う。本形態のＭＦＰ１００は、操作パネル４０にて表示するユーザ向けの情報を圧縮して保存するために、ＰＮＧ変換回路４１を備えている。ＰＮＧ変換回路４１は、可逆的な圧縮方式であるＰＮＧ方式の圧縮および解凍を行うハードウェア構成である。操作パネル４０は、ユーザインターフェースの一例である。ＰＮＧ変換回路４１は、回路の一例である。
【００２０】
続いて、本形態のＭＦＰ１００における印刷ジョブの処理手順について説明する。ＭＦＰ１００は、例えば、図２に示すように、通信ＩＦ３７を介して、ＰＣ２００から印刷ジョブを受信する。具体的には、ジョブ開始を示すジョブ開始コマンドの受信から、ジョブ終了を示すジョブ終了コマンドの受信までが、印刷ジョブの受信である。印刷ジョブの受信には、印刷ジョブの開始から終了までの間における、ページ開始を示すページ開始コマンドの受信、ページ終了を示すページ終了コマンドの受信、ページの開始から終了までの間における、画像データの受信が含まれる。ＭＦＰ１００は、受信した画像データを、順次処理して、最終的に画像形成部１０にて使用するデータ形式であるラインデータを生成する。
【００２１】
データの処理を行う構成として、ＭＦＰ１００の制御基板３０は、図２に示すように、データ受信モジュール３０１と、ラスタライズモジュール３０２と、画処理モジュール３０３と、印刷エンジン制御モジュール３０４と、印刷制御モジュール３０５と、を備えている。各モジュールは、ソフトウェアモジュールである。また、各モジュールは、他のモジュールとデータ交換するためのＩＦ（例えば、ＡＰＩとも呼ばれる）を備える。また、ＭＦＰ１００は、各種のデータを一時的に記憶するために、画像メモリ３３１と、ページメモリ３３２と、ラインメモリ３３３と、をそれぞれ必要に応じてＲＡＭ３３に構成する。
【００２２】
なお、以下の処理およびフローチャートの各処理ステップは、基本的に、印刷制御モジュール３０５などのプログラムに記述された命令に従ったＣＰＵ３１の処理を示す。すなわち、以下の説明における「判断」、「算出」、「受付」、「制御」等の処理は、ＣＰＵ３１の処理を表している。ＣＰＵ３１による処理は、ＭＦＰ１００のＯＳのＡＰＩを用いたハードウェア制御も含む。本明細書では、ＯＳの記載を省略して各プログラムの動作を説明する。すなわち、以下の説明において、「プログラムがハードウェアを制御する」という趣旨の記載は、「プログラムがＯＳのＡＰＩを用いてハードウェアを制御する」ことを指してもよい。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。
【００２３】
データ受信モジュール３０１は、図２に示すように、ＰＣ２００等の外部装置から画像データを受信し、受信した画像データを画像メモリ３３１に書き込む。画像データは、例えば、ページ記述言語（以下、ＰＤＬとも記載）によって記述されたデータである。ＰＤＬとしては、例えば、ＰＣＬ（Ｐｒｉｎｔ  Ｃｏｎｔｒｏｌ  Ｌａｎｇｕａｇｅの略）、ＰＳ（ＰｏｓｔＳｃｒｉｐｔ（登録商標）の略）、ＡｉｒＰｒｉｎｔ（登録商標）で用いられるＰＤＬ（以下、単に、ＡｉｒＰｒｉｎｔとも記載）がある。
【００２４】
ラスタライズモジュール３０２は、図２に示すように、画像メモリ３３１から１ページ分の画像データを読み出し、ラスタライズ処理を行ってページデータを生成し、生成したページデータをページメモリ３３２に書き込む。１ページ分の画像データとは、ページ開始コマンドの受信から、ページ終了コマンドの受信までの間に受信した画像データである。ページデータは、画像の各ドットの色情報などを含むドットデータである。ラスタライズモジュール３０２は、画像データの種類に応じて、ＲＧＢ形式、または、ＣＭＹＫ形式のドット単位のデータであるページデータを生成する。ラスタライズモジュール３０２は、第１コントローラの一例である。ページデータは、ラスタライズデータの一例である。ラスタライズモジュール３０２による読み出しの終了した画像データは、画像メモリ３３１から破棄される。
【００２５】
画処理モジュール３０３は、図２に示すように、ページメモリ３３２からページデータを読み出して、誤差拡散処理等の画処理を行ってラインデータを生成し、生成したラインデータをラインメモリ３３３に書き込む。ラインデータは、各吐出ノズルからのインクの吐出量などの情報を含み、画像形成部１０の印字ヘッドを制御するためのデータであり、１ライン単位で処理される。なお、１ラインとは、印字ヘッドの１回のスキャンによって印刷できる範囲である。画像の印刷幅や印字ヘッドの構成に応じて、１ライン分のデータ量は異なる場合がある。画処理モジュール３０３は、第３コントローラの一例である。ラインデータは、印刷データの一例である。
【００２６】
外部装置から受信する画像データは、ＰＤＬで記述されたデータ（以下、ＰＤＬデータとする）には限らず、ＧＤＩ（Ｇｒａｐｈｉｃｓ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅの略）形式のものである場合もある。ＧＤＩ形式の画像データ（以下、ＧＤＩデータとする）は、送信元の装置によってラスタライズなどの処理済みのデータであり、ラインデータと同様に画素情報を記憶する形式の画像データである。ラスタライズモジュール３０２は、受信した画像データがＧＤＩデータであった場合には、図２に示すように、ページデータを作成せず、そのままラインメモリ３３３に書き込む。ＧＤＩデータは、特定の種別の画像データの一例である。
【００２７】
印刷エンジン制御モジュール３０４は、図２に示すように、ラインメモリ３３３からラインデータを読み出して画像形成部１０に受け渡すことで、画像形成部１０に印刷を実行させる。印刷エンジン制御モジュール３０４によって読み出され、印刷に使用されたラインデータは、ラインメモリ３３３から破棄される。印刷エンジン制御モジュール３０４は、第４コントローラの一例である。
【００２８】
なお、ラインデータは、ランダムアクセス可能なデータであり、ラインごとに読み出しや破棄が可能である。一方、ページメモリ３３２に記憶されるページデータは、シーケンシャル構造のデータであり、その読み出しや破棄は、ページの先頭から順に行われる。
【００２９】
印刷制御モジュール３０５は、図２に示すように、画像形成部１０の状態を監視し、ラスタライズモジュール３０２と画処理モジュール３０３と印刷エンジン制御モジュール３０４とを制御する。また、印刷制御モジュール３０５は、画像形成部１０から、例えば、ジャムの発生等のエラー情報、印刷完了情報を含む状態情報を受け取る。印刷制御モジュール３０５は、第２コントローラの一例である。
【００３０】
本形態のＭＦＰ１００は、ページデータやラインデータの生成に際して、まず、ＲＡＭ３３にメモリ領域を構成する。印刷制御モジュール３０５は、保存しようとしているデータのデータサイズに見合う空き領域がＲＡＭ３３に有るか否かを判断し、空き領域が不足している場合には、メモリ不足と判断して、ラスタライズモジュール３０２や画処理モジュール３０３によるデータの生成を中断させる。
【００３１】
続いて、本形態ＭＦＰ１００にて実行される蓄積印刷について説明する。蓄積印刷とは、単にＭＦＰ１００に送信しただけでは印刷が開始されない印刷設定である。ＭＦＰ１００は、受け付けた印刷ジョブが蓄積印刷の印刷ジョブ（以下、蓄積ジョブとする）である場合、操作パネル４０にてユーザによる印刷指示を受け付けるまで、そのジョブのデータを保存する。蓄積印刷の印刷ジョブには、例えば、ユーザ認証を印刷の条件とするセキュアジョブが有る。ＭＦＰ１００は、多ページの蓄積ジョブや多数の蓄積ジョブを受け付けたことで、保存するデータ量が多くなると、メモリ不足となる可能性がある。
【００３２】
本形態のＭＦＰ１００は、ＰＣ２００等から受信した蓄積ジョブの画像データのデータ形式に基づいて、図３に示すように、保存するデータ形式を切り替える。具体的には、受信した蓄積ジョブの画像データがＰＤＬデータであれば、ラスタライズモジュール３０２にてラスタライズした後のページデータを圧縮し、圧縮データを保存する。圧縮方式は、例えば、ＪＰＥＧ、ＰＮＧである。一方、受信した蓄積ジョブの画像データがＧＤＩデータであれば、受信したＧＤＩデータをそのまま保存する。
【００３３】
そして、ＭＦＰ１００は、保存している蓄積ジョブの印刷指示を受け付ける。ＭＦＰ１００は、例えば、操作パネル４０を介して蓄積ジョブの選択操作を受け付け、選択された蓄積ジョブの印刷指示を受け付ける。また、例えば、蓄積ジョブがセキュアジョブである場合、ＭＦＰ１００は、認証情報を受け付け、ユーザ認証を行う。ＭＦＰ１００は、ユーザ認証に成功すると、認証に成功したユーザに関連付けて保存されているセキュアジョブの一覧を操作パネル４０に表示し、印刷対象のセキュアジョブの選択を受け付ける。
【００３４】
蓄積ジョブの印刷指示を受け付けた場合、ＭＦＰ１００は、選択された蓄積ジョブの保存されているデータ形式に応じて、図４に示すように、印刷動作を実行する。具体的には、ＭＦＰ１００は、印刷指示を受け付けた蓄積ジョブのデータが圧縮データであれば、圧縮データを解凍してページデータを復元する。さらに、ＭＦＰ１００は、復元したページデータに対して画処理モジュール３０３にて画処理を施し、ラインデータを生成する。そして、ＭＦＰ１００は、生成したラインデータに基づいて、印刷エンジン制御モジュール３０４を介して、画像形成部１０に画像形成を行わせる。
【００３５】
一方、ＭＦＰ１００は、印刷指示を受け付けた蓄積ジョブのデータがＧＤＩデータであれば、ＧＤＩデータを読み出して印刷エンジン制御モジュール３０４に受け渡し、印刷エンジン制御モジュール３０４を介して、画像形成部１０に画像形成を行わせる。
【００３６】
次に、本形態のＭＦＰ１００におけるジョブ受信処理の手順について、図５のフローチャートを参照して説明する。このジョブ受信処理は、ＰＣ２００等の外部装置から印刷ジョブの受信を開始したことを契機に、ＣＰＵ３１にて実行される。印刷ジョブを受信する処理は、受信処理の一例である。
【００３７】
ＣＰＵ３１は、まず、受信した印刷ジョブが蓄積ジョブであるか否かを判断する（Ｓ１０１）。具体的には、ＣＰＵ３１は、ジョブ開始コマンドに、蓄積ジョブであることを示すパラメータが含まれているか否かを判断する。そして、蓄積ジョブではないと判断した場合（Ｓ１０１：ＮＯ）、ＣＰＵ３１は、受信した印刷ジョブに基づく印刷を画像形成部１０に実行させ（Ｓ１０２）、ジョブ受信処理を終了する。印刷を実行する場合、ＭＦＰ１００は、図２に示したように、ページデータとラインデータとを順次生成し、画像形成部１０にラインデータを送信する。印刷の手順は、既知の一般的な手順である。
【００３８】
蓄積ジョブであると判断した場合（Ｓ１０１：ＹＥＳ）、ＣＰＵ３１は、印刷ジョブに含まれる画像データがＧＤＩデータであるか否かを判断する（Ｓ１０３）。具体的には、ＣＰＵ３１は、ジョブ開始コマンドに含まれる画像データのデータ形式を示すパラメータに基づいて、画像データの形式を判断する。Ｓ１０３は、判断処理の一例である。ＧＤＩデータではないと判断した場合（Ｓ１０３：ＮＯ）、ＣＰＵ３１は、受信した画像データがＰＣＬで記述されているか否かを判断する（Ｓ１０４）。ＰＣＬではないと判断した場合（Ｓ１０４：ＮＯ）、ＣＰＵ３１は、受信した画像データがＡｉｒＰｒｉｎｔであるか否かを判断する（Ｓ１０５）。
【００３９】
ＰＣＬであると判断した場合（Ｓ１０４：ＹＥＳ）、または、ＡｉｒＰｒｉｎｔであると判断した場合（Ｓ１０５：ＹＥＳ）、ＣＰＵ３１は、受信した印刷ジョブの画像データをラスタライズモジュール３０２にてラスタライズする（Ｓ１０６）。Ｓ１０６は、ラスタライズデータ生成処理の一例である。ＰＣＬまたはＡｉｒＰｒｉｎｔの画像データに基づくラスタライズ後のデータは、ＲＧＢデータである。つまり、Ｓ１０６では、ＣＰＵ３１は、ＲＧＢデータを生成する。
【００４０】
さらに、ＣＰＵ３１は、Ｓ１０６にて生成したＲＧＢデータをＪＰＥＧ方式で圧縮してＪＰＥＧデータを生成する（Ｓ１０７）。Ｓ１０７は、圧縮処理の一例である。
【００４１】
ＡｉｒＰｒｉｎｔではないと判断した場合（Ｓ１０５：ＮＯ）、ＣＰＵ３１は、受信した画像データがＰＳであるか否かを判断する（Ｓ１０８）。ＰＳであると判断した場合（Ｓ１０８：ＹＥＳ）、ＣＰＵ３１は、受信した印刷ジョブの画像データをラスタライズモジュール３０２にてラスタライズする（Ｓ１０９）。Ｓ１０９は、ラスタライズデータ生成処理の一例である。ＰＳの画像データに基づくラスタライズ後のデータは、ＣＭＹＫデータである。つまり、Ｓ１０９では、ＣＰＵ３１は、ＣＭＹＫデータを生成する。
【００４２】
さらに、ＣＰＵ３１は、Ｓ１０９にて生成したＣＭＹＫデータをＲＧＢデータに変換し、変換後のＲＧＢデータをＪＰＥＧ方式で圧縮してＪＰＥＧデータを生成する（Ｓ１１０）。Ｓ１１０は、圧縮処理の一例である。
【００４３】
Ｓ１０７やＳ１１０において、ＲＧＢデータを圧縮してＪＰＥＧデータを生成する際に、ＣＰＵ３１は、画像読取部２０の備えるＪＰＥＧ変換回路２１を利用する。ＪＰＥＧ変換回路２１は、ハードウェアによってＲＧＢデータの圧縮を行うので、短時間での圧縮処理が可能である。ＪＰＥＧ方式の圧縮は、非可逆方式であって、データサイズを安定して小さくできる。Ｓ１０７とＳ１１０の後、ＣＰＵ３１は、生成したＪＰＥＧデータを保存する（Ｓ１１１）。Ｓ１１１は、第２保存処理の一例である。
【００４４】
一方、ＰＳでもないと判断した場合（Ｓ１０８：ＮＯ）、ＣＰＵ３１は、エラーと判断して（Ｓ１１２）、ジョブ受信処理を終了する。本形態のＭＦＰ１００において印刷可能な画像データは、ＰＣＬ、ＡｉｒＰｒｉｎｔ、ＰＳ、ＧＤＩデータの４種類である。
【００４５】
また、受信した印刷ジョブの画像データがＧＤＩデータであると判断した場合（Ｓ１０３：ＹＥＳ）、ＣＰＵ３１は、画像データのデータサイズが大きいか否かを判断する（Ｓ１１３）。Ｓ１１３は、受信データサイズ判断処理の一例である。なお、ＰＣ２００等は、ジョブ開始コマンドの送信からジョブ終了コマンドの送信までの間に、画像データを一部分ずつ送信する。そのため、ＭＦＰ１００は、通信ＩＦ３７を介して、ＰＣ２００等から画像データを一部分ずつ受信することになる。
【００４６】
ＣＰＵ３１は、ジョブ開始コマンドの受信以降、ジョブ終了コマンドを受信するまでの間に、画像データを受信する都度、画像データのうちの受信済みの部分のデータサイズを算出する。ＣＰＵ３１は、画像データのうちの受信済みの部分のデータサイズが所定サイズを超えた場合に、画像データのデータサイズが大きいと判断する。所定サイズは、例えば、所定のデータサイズであり、例えば、ＭＦＰ１００の製造時に予め決定されている。ＣＰＵ３１は、ＭＦＰ１００の全メモリサイズに対する所定の割合のサイズを算出し、所定のデータサイズとして用いてもよい。あるいは、ＣＰＵ３１は、ジョブ開始コマンドの受信以降、ジョブ終了コマンドを受信する前に、ＭＦＰ１００がメモリ不足の状態となった場合、画像データのデータサイズが大きいと判断しても良い。
【００４７】
そして、画像データのうちの受信済みの部分のデータサイズが所定サイズを超える前に、画像データの送信終了を示すコマンドを受信した場合、ＣＰＵ３１は、画像データのデータサイズが大きくないと判断する。画像データのデータサイズが大きくないと判断した場合（Ｓ１１３：ＮＯ）、ＣＰＵ３１は、受信したＧＤＩデータを加工せずに保存する（Ｓ１１４）。Ｓ１１４は、第１保存処理の一例である。Ｓ１１４では、ＣＰＵ３１は、データの圧縮を行わない。一方、データサイズが大きいと判断した場合（Ｓ１１３：ＹＥＳ）、ＣＰＵ３１は、ジョブをキャンセルして（Ｓ１１５）、ジョブ受信処理を終了する。
【００４８】
Ｓ１１５では、ＣＰＵ３１は、操作パネル４０を介してジョブのキャンセルを通知し、既に一部のデータを保存済みであれば、保存しているデータを破棄する。ＧＤＩデータは、例えば、白画素が連続する空白ラインのように、同じ画素データが連続する場合、連続する画素データの一部が間引かれている。そのため、ＧＤＩデータは、ＰＤＬデータをラスタライズしたＲＧＢ等のローデータに比較して、データサイズの小さい画像データである可能性が高く、そのまま保存したとしてもメモリを圧迫する可能性が低い。ただし、例えば、写真印刷、高解像度印刷では、ＧＤＩデータであってもデータサイズが大きい画像データとなる可能性がある。本形態のＭＦＰ１００は、データサイズの大きいＧＤＩデータを含む蓄積ジョブを受け付けないことで、メモリの圧迫を抑制する。
【００４９】
一方、ＧＤＩデータ以外の画像データでは、データの間引きは行われていない。つまり、本形態のＭＦＰ１００は、データが間引きされている画像データであれば圧縮せずに保存し、データが間引きされていない画像データであれば圧縮して保存する。
【００５０】
Ｓ１１１またはＳ１１４の後、ＣＰＵ３１は、ジョブの終端に到達したか否かを判断する（Ｓ１１６）。Ｓ１１６では、ＣＰＵ３１は、例えば、画像データの送信終了を示すコマンドを受信したか否かを判断する。ジョブの終端に到達していないと判断した場合（Ｓ１１６：ＮＯ）、ＣＰＵ３１は、Ｓ１０３に戻って、次のページの画像データを処理する。ジョブの終端に到達したと判断した場合（Ｓ１１６：ＹＥＳ）、ＣＰＵ３１は、ジョブ受信処理を終了する。
【００５１】
次に、本形態のＭＦＰ１００における蓄積印刷処理の手順について、図６のフローチャートを参照して説明する。この蓄積印刷処理は、保存されている蓄積ジョブに対する印刷指示を受け付けたことを契機に、ＣＰＵ３１にて実行される。印刷指示には、ジョブを指定する情報が含まれる。
【００５２】
ＣＰＵ３１は、まず、指定された蓄積ジョブの保存データを読み出す（Ｓ２０１）。蓄積ジョブの保存データは、ジョブ受信処理のＳ１１１またはＳ１１４にて保存されたデータである。そして、ＣＰＵ３１は、読み出した保存データがＪＰＥＧデータであるか否かを判断する（Ｓ２０２）。
【００５３】
保存データがＪＰＥＧデータであると判断した場合（Ｓ２０２：ＹＥＳ）、ＣＰＵ３１は、保存データを解凍する（Ｓ２０３）。Ｓ２０３は、解凍処理の一例である。Ｓ２０３により、ラスタライズモジュール３０２にてラスタライズされて生成されたページデータが復元される。Ｓ２０３では、ＣＰＵ３１は、画像読取部２０のＪＰＥＧ変換回路２１を利用する。
【００５４】
そして、ＣＰＵ３１は、復元されたページデータを画処理モジュール３０３にて画処理し、ラインデータを生成する（Ｓ２０４）。Ｓ２０４は、印刷データ生成処理の一例である。ＣＰＵ３１は、生成したラインデータを印刷エンジン制御モジュール３０４を介して、画像形成部１０に受け渡す（Ｓ２０５）。この場合のＳ２０５は、第２画像形成処理の一例である。画像形成部１０は、受け渡されたラインデータを用いて、画像を形成する。
【００５５】
一方、保存データがＪＰＥＧデータではないと判断した場合（Ｓ２０２：ＮＯ）、ＣＰＵ３１は、読み出した保存データを加工せず、印刷エンジン制御モジュール３０４を介して、画像形成部１０に受け渡す（Ｓ２０５）。この場合のＳ２０５は、第１画像形成処理の一例である。ＪＰＥＧデータではない保存データは、ＧＤＩデータであり、そのまま画像形成に供することができる。画像形成部１０は、受け渡されたＧＤＩデータを用いて、画像を形成する。
【００５６】
Ｓ２０５の後、ＣＰＵ３１は、印刷ジョブの終端まで保存データの読み出しを行ったか否かを判断する（Ｓ２０６）。印刷ジョブの終端ではないと判断した場合（Ｓ２０６：ＮＯ）、ＣＰＵ３１は、Ｓ２０１に戻って、さらに保存データを読み出す。印刷ジョブの終端まで読み出したと判断した場合（Ｓ２０６：ＹＥＳ）、ＣＰＵ３１は、蓄積印刷処理を終了する。
【００５７】
以上、詳細に説明したように、本形態のＭＦＰ１００は、受信した印刷ジョブが蓄積ジョブであって、印刷ジョブの画像データがＰＤＬデータであれば、ＰＤＬデータをラスタライズしたページデータを圧縮して保存する。一方、画像データが、自装置でのラスタライズや画処理を必要とせず、画像形成部１０での画像形成に用いることができる特定の種別であるＧＤＩデータの場合、ＭＦＰ１００は、圧縮せずに保存する。ＧＤＩデータは、自装置でラスタライズを行った場合のページデータと比較してサイズが小さい傾向にあり、そのまま記憶したとしてもメモリを圧迫する可能性は低く、蓄積可能なページ数を多く確保できる可能性が高い。また、圧縮せずにそのまま記憶することで、印刷の際に解凍処理が不要であり、早期の印刷開始が期待できる。一方、自装置でのラスタライズや画処理を必要とするＰＤＬデータの場合、少なくともラスタライズまでは行い、その後のページデータを圧縮して保存することで、蓄積可能なページ数を多く確保しつつ印刷開始の遅れを抑制できる。
【００５８】
さらに、ＭＦＰ１００では、ラスタライズモジュール３０２と画処理モジュール３０３と印刷エンジン制御モジュール３０４と印刷制御モジュール３０５とが、それぞれ独立した構成となっている。つまり、画像データの解析（種別の判断およびラスタライズ）と、印刷用のラインデータの生成と、画像形成部１０の制御と、蓄積印刷のための保存と、が独立するため、設計が容易になる。
【００５９】
なお、本実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本発明は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、ＭＦＰに限らず、複写機、プリンタ、ＦＡＸ装置等、画像形成機能を備えるものであれば適用可能である。
【００６０】
また、本形態では、ラスタライズモジュール３０２、画処理モジュール３０３、印刷エンジン制御モジュール３０４、印刷制御モジュール３０５等の各モジュールは、ソフトウェアモジュールであるとしたが、ハードウェアモジュールであっても良い。例えば、制御基板３０内にＡＳＩＣとして実装されたものでも良い。あるいは、ソフトウェアモジュールとハードウェアモジュールとの組み合わせで構成されていても良い。
【００６１】
また、圧縮方式は、ＪＰＥＧ方式に限らない。例えば、Ｓ１０７やＳ１１０では、ＪＰＥＧ方式の圧縮に代えて、ＰＮＧ方式での圧縮を行ってもよい。その場合には、ＪＰＥＧ変換回路２１に代えてＰＮＧ変換回路４１を用いると良い。ＰＮＧ方式での圧縮は、可逆的な圧縮方式であることから、画質の劣化を抑えることができる。一方、ＪＰＥＧ方式での圧縮を行うと、安定して高い圧縮率での圧縮が可能であり、圧縮データのデータサイズをより小さくできる可能性が高い。また、さらに他の方式での圧縮を行うハードウェアを備えていれば、そのハードウェアを用いて他の方式で圧縮しても良い。
【００６２】
また、本形態では、圧縮をＪＰＥＧ変換回路２１やＰＮＧ変換回路４１にて行うとしたが、ソフトウェアで行っても良い。ただし、ハードウェアにて行うことで、より高速に圧縮できる可能性が高い。また、ＭＦＰ１００に既に設けられているハードウェアを共用すれば、本発明のために新たな構成を追加する必要はない。
【００６３】
また、ジョブ受信処理では、受信しているＧＤＩデータのデータサイズが大きいと判断した場合、Ｓ１１５にてジョブをキャンセルするとしたが、キャンセルする代わりに、受信したＧＤＩデータを圧縮して保存しても良い。例えば、Ｓ１１５にて、ＧＤＩデータをＪＰＥＧ変換回路２１にてＪＰＥＧ方式に圧縮する処理と、圧縮後の圧縮データを保存する処理とを行うとしても良い。この場合の圧縮データは、特定圧縮データの一例である。そして、蓄積印刷処理では、保存データがＧＤＩデータを圧縮した圧縮データであった場合には、ＪＰＥＧ変換回路２１にて解凍してＧＤＩデータを復元し、復元したＧＤＩデータを印刷エンジン制御モジュール３０４を介して画像形成部１０に受け渡す。
【００６４】
また、ジョブ受信処理では、受信したＰＤＬデータが、ＰＣＬ、Ａｉｒ Ｐｒｉｎｔ、ＰＳのいずれでもない場合にはエラーとするとしたが、他の形式のＰＤＬデータであっても、ＭＦＰ１００にて処理可能な形式であれば、受け付けるとよい。一方、ＰＣＬ、Ａｉｒ Ｐｒｉｎｔ、ＰＳのいずれかであっても、ＭＦＰ１００にて処理可能でなければ、エラーとするとよい。
【００６５】
また、本形態では、ＰＤＬデータをラスタライズした後のページデータを圧縮して、圧縮済みのＪＰＥＧデータを保存するとしたが、ページデータを画処理した後のラインデータを圧縮して保存しても良い。ただし、画処理によってデータサイズがさらに大きくなることがあるため、ページデータを圧縮して保存する方がメモリを圧迫する可能性は低い。
【００６６】
また、画処理モジュール３０３による画処理は、誤差拡散処理に限らず、例えば、ディザリング処理であっても良い。
【００６７】
また、本形態では、ジョブ開始コマンドに含まれるパラメータに基づいて、受信したジョブが蓄積ジョブであるか否かの判断、および、画像データのデータ形式の判断を行うとしたが、ジョブ開始コマンドとは別に、ジョブ開始コマンドより後で受信するパラメータに基づいて判断しても良い。
【００６８】
また、実施の形態に開示されている処理は、単一のＣＰＵ、複数のＣＰＵ、ＡＳＩＣなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
【符号の説明】
【００６９】
１０  画像形成部
２１  ＪＰＥＧ変換回路
３１  ＣＰＵ
３３  ＲＡＭ
３７  通信ＩＦ
４０  操作パネル
１００  ＭＦＰ
３０２  ラスタライズモジュール
３０３  画処理モジュール
３０４  印刷エンジン制御モジュール
３０５  印刷制御モジュール
【図１】
2019130704.tif 000003
【図２】
2019130704.tif 000004
【図３】
2019130704.tif 000005
【図４】
2019130704.tif 000006
【図５】
2019130704.tif 000007
【図６】
2019130704.tif 000008