説明

画像処理装置および印刷システム

【課題】印刷処理を行うための画像データを出力する画像処理装置において、より安価な構成とし、かつ高速な印刷処理を実現するとする。
【解決手段】画像データに対して1または複数のバイト単位からなるブロック単位で圧縮処理を施して圧縮画像データを生成し、その圧縮画像データに対してブロック単位で展開処理を施し、その展開処理の施された画像データを出力する画像処理装置において、ビットデータの配列方向に配置された画素データのうちの1のビットデータを含む先頭位置の画素データが印刷用紙の所望の位置に印刷されるように先頭位置の画素データの前にダミー画素データを配置した後、上記圧縮処理を施す。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置およびその画像処理装置を用いた印刷システムに関するものであり、特に、印刷される画像データに対して施される圧縮処理に関するものである。
【背景技術】
【0002】
従来、コンピュータのアプリケーションによって作成された画像データや、スキャナなどによって原稿画像を光電的に読み取った画像データに基づいて印刷処理を行う印刷システムが種々提案されている。
【0003】
このような印刷システムにおいては、画像データに対してランレングス圧縮などの圧縮処理を施した後、その圧縮画像データに基づいてPDL(Page Description Language)などで記述されたプリンタ制御コードを生成し、そのプリンタ制御コードをハードディスクに一旦保存する。そして、その保存したプリンタ制御コードをハードディスクから読み出して展開処理を施し、その展開処理済の画像データをメモリに一旦記憶した後、印刷エンジンに出力して印刷処理を行う。
【0004】
ここで、上記画像データは、多数の画素データを2次元状に配列したものであり、この各画素データは、一般的に3ビットまたは4ビットのビットデータで構成される。
【0005】
一方、上述した圧縮処理や展開処理を行うCPU(Central Processing Unit)は、一般的に、そのハードウェアの設計の都合上、バイト単位で圧縮処理や展開処理を行うように構成されていることが多い(たとえば特許文献1参照)。
【0006】
したがって、各画素データがたとえば3ビットのビットデータから構成される場合には、この3ビットのビットデータが圧縮処理の処理単位であるバイト単位の間でまたがってしまっては、バイト単位で展開処理を施してビットデータをメモリに書き込む際にビットシフトをする必要があり、複雑な処理が必要となるため、展開処理の速度低下となり、これにより印刷処理の開始タイミングが遅れるため高速な印刷処理を行うことができない。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開平7−262082号公報
【特許文献2】特開昭63−304293号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
そこで、各画素データがたとえば3ビットのビットデータから構成される場合には、この3ビットのビットデータが圧縮処理の処理単位であるバイト単位の間でまたがらないようにするため、3バイト(24ビット)の画素データ、すなわち8つの画素データを1つのブロック単位(処理単位)として設定し、このブロック単位で圧縮処理および展開処理を行う方法が考えられる。
【0009】
ここで、上述したようなブロック単位で圧縮処理および展開処理を行う場合について、図14を参照しながら詳細に説明する。なお、図14は、印刷対象の元の画像データと、その元の画像データから生成される圧縮対象の画素データと、その圧縮処理済の画像データから生成されるプリンタ制御コードと、プリンタ制御コードに対して展開処理を施した展開処理済の画像データと、その展開処理済の画像データから構成される印刷用の画像データとを上から順に示したものである。
【0010】
まず、図14に示すような元の画像データに対して、印刷用紙の用紙サイズに合わせて必要に応じてカット処理が施された後、一般的には、圧縮処理後のデータの容量を小さくするため、1行の画素データのうち、1のビットデータを含む先頭位置(5,3)の画素データから1のビットデータを含む後端(14,3)の画素データまでが圧縮対象の画素データとして切り出される。
【0011】
そして、この切り出された画素データに対してブロック単位で圧縮処理を施すため、図14に示すように、後端の画素データの後ろに6画素のダミー画素データ(ゼロの画素データ)が配置される。
【0012】
次いで、上述したようにダミー画素データが配置された画素データに対して圧縮処理が施され、その圧縮画像データに基づいて画像コードが生成され、図14に示すようなプリンタ制御コードが生成される。なお、図14に示すプリンタ制御コードにおける座標コードは、上述した先頭位置の画素データの元の画像データにおける座標値を示すものである。
【0013】
そして、上記のようにして生成されたプリンタ制御コードに対して展開処理が施され、その展開処理済の画像データに基づいて印刷用の画像データが生成されるが、このとき展開処理済の画像データをそのまま印刷用の画像データとしたのでは、元の画像データにおいては座標値(5,3)の位置であった画素データが、印刷用紙の座標系における座標値(0,3)の位置に印刷されることになるので、5画素(5ドット)のズレが発生してしまう。
【0014】
したがって、元の画像データにおける座標値(5,3)の位置にある画素データを印刷用紙の座標系における(5,3)の位置に印刷するためには、図14に示すように、座標コードに含まれる座標値(5,3)に基づいて、1行の画素データに対してビットシフト処理を施す必要がある。
【0015】
しかしながら、このようなビットシフト処理を行うためには、たとえば特許文献2に示されるようなバレルシフタを設ける必要があり、このような特別な回路を用いることは開発工数やコストが増大してしまう問題がある。
【0016】
また、展開処理の際に上述したようなビットシフト処理を行うようにしたのでは、そのビットシフト処理の時間を要するため、高速な印刷処理を行う際にはその印刷速度に追いつかず、印刷処理が可能な状態であるにも関わらず、印刷用の画像データの生成が終了していないという事態となり、高速な印刷処理の実現が困難となる問題がある。
【0017】
本発明は、上記事情に鑑み、より安価に製造することができ、かつ高速な印刷処理の実現が可能な画像処理装置および印刷システムを提供することを目的とするものである。
【課題を解決するための手段】
【0018】
本発明の画像処理装置は、印刷用紙に印刷される画像データであって、複数のビットデータで表される画素データが複数配列されてなる画像データを取得する画像データ取得部と、画像データ取得部により取得された画像データに対して、ビットデータの配列方向について、画素データの境界で区切られる1または複数のバイト単位からなるブロック単位で圧縮処理を施して圧縮画像データを生成する圧縮処理部と、圧縮処理部により生成された圧縮画像データに対してブロック単位で展開処理を施し、その展開処理の施された画像データを出力する展開処理部とを備え、圧縮処理部が、ビットデータの配列方向に配置された画素データのうちの1のビットデータを含む先頭位置の画素データが印刷用紙の所望の位置に印刷されるように先頭位置の画素データの前にダミー画素データを配置した後、圧縮処理を施すものであることを特徴とするものである。
【0019】
また、上記本発明の画像処理装置においては、圧縮処理部を、先頭位置の画素データが展開処理後に圧縮処理前の画像データの元の位置に配置されるように先頭位置の画素データの前にダミー画素データを配置するものとできる。
【0020】
また、画像データ取得部を、複数の画像データを取得するものとし、画像データ取得部により取得された複数の画像データを1枚の印刷用紙内に配置して印刷する面付け印刷指示を受け付ける面付け印刷指示受付部を設け、展開処理部を、面付け印刷指示受付部において面付け印刷指示が受け付けられた場合には、ビットデータの配列方向に隣接して配置される圧縮画像データに対して展開処理を施す際、一方の圧縮画像データの先頭または後端のブロックの展開処理済の画像データとその先頭または後端のブロックに隣接する他方の圧縮画像データのブロックの展開処理済の画像データとが互いに上書きされないように、一方の圧縮画像データの先頭または後端のブロックおよび他方の圧縮画像データの先頭または後端のブロックに隣接するブロックの展開処理済の画像データに対して所定の演算を施すものとすることができる。
【0021】
また、上記所定の演算としてOR演算を用いることができる。
【0022】
また、圧縮処理部を、複数の画像データに対して別個に圧縮処理を施して複数の圧縮画像データを生成するものとできる。
【0023】
また、展開処理部を、複数の圧縮画像データに対して別個に展開処理を施し、その展開処理の施された複数の画像データを面付け印刷指示に基づいて順次出力するものとできる。
【0024】
また、圧縮画像データと画像データに付加される所定の情報を表す付加情報データとをまとめて印刷制御コードとして生成する印刷制御コード生成部を設けることができる。
【0025】
本発明の印刷システムは、上記画像処理装置およびその画像処理装置から出力された画像データに基づいて印刷用紙に対して印刷処理を施す印刷部を備えた印刷装置と、原稿画像を光電的に読み取って画像データを画像処理装置に出力する原稿読取装置とを備えたことを特徴とするものである。
【0026】
本発明の印刷システムは、上記画像処理装置における画像データ取得部および圧縮処理部を備えたコンピュータと、画像処理装置における展開処理部およびその展開処理部から出力された画像データに基づいて印刷用紙に対して印刷処理を施す印刷部を備えた印刷装置とを備えたことを特徴とするものである。
【発明の効果】
【0027】
本発明の画像処理装置によれば、画像データに対して1または複数のバイト単位からなるブロック単位で圧縮処理を施して圧縮画像データを生成し、その圧縮画像データに対してブロック単位で展開処理を施し、その展開処理の施された画像データを出力する画像処理装置において、ビットデータの配列方向に配置された画素データのうちの1のビットデータを含む先頭位置の画素データが印刷用紙の所望の位置に印刷されるように先頭位置の画素データの前にダミー画素データを配置した後、上記圧縮処理を施すようにしたので、ブロック単位で展開処理を施した画像データに対して、上述したようなビットシフト処理を施す必要がないので、ビットシフト処理を行う回路を必要としない安価な構成とすることができ、かつ高速な印刷処理を実現することができる。
【0028】
なお、本発明によれば圧縮処理前にダミー画素データを配置する処理の時間が必要となるが、たとえばスキャナで読み取った画像データを印刷する際には、スキャナでの原稿画像の読み取り時間などを含めて圧縮処理が終わるまでに相当な時間を要するので、ダミー画素データを配置する処理の時間はそれ程問題とならない。
【0029】
これに対し、上述したように展開処理後にビットシフト処理を行う場合には、印刷処理の開始タイミングに直接的な影響を及ぼすことになるので、高速な印刷処理の実現が困難となる。
【図面の簡単な説明】
【0030】
【図1】本発明の画像処理装置の一実施形態を用いたプリンタシステムの概略構成を示すブロック図
【図2】本発明の画像処理装置の一実施形態を用いたプリンタシステムの作用を説明するための模式図
【図3】プリンタ制御コードの一例を示す図
【図4】本発明の画像処理装置の一実施形態を用いたプリンタシステムの作用を説明するためのフローチャート
【図5】本発明の画像処理装置の一実施形態を用いたプリンタシステムの面付け印刷の作用を説明するための模式図
【図6】2面アップ印刷における圧縮処理のその他の実施形態を説明するための図
【図7】4面アップ印刷の一例を示す図
【図8】4面アップ印刷の際の圧縮処理および展開処理と、プリンタ制御コードとを説明するための図
【図9】4面アップ印刷のその他の例を示す図
【図10】付加情報として文字画像コードを含むプリンタ制御コードを示す図
【図11】図10に示すプリンタ制御コードを展開して印刷した場合の一例を示す図
【図12】白抜き四角内にページ数を印刷した例を示す図
【図13】付加情報として白抜き画像コードと文字画像コードとを含むプリンタ制御コードを示す図
【図14】プリンタ制御コードを展開した後にビットシフト処理を行う場合の例を説明するための図
【発明を実施するための形態】
【0031】
以下、図面を参照して本発明の画像処理装置の一実施形態を用いたプリンタシステムについて詳細に説明する。図1は、本実施形態のプリンタシステムの全体概略構成図である。
【0032】
本実施形態のプリンタシステムは、図1に示すように、スキャナ10と、プリンタ20と、コンピュータ30とを備えている。
【0033】
スキャナ10は、原稿画像が印刷された原稿用紙を光電的に読み取って画像データを取得し、その画像データをプリンタ20に出力するものである。
【0034】
ここで、本実施形態においてスキャナ10から出力される画像データは、図2に示すように、多数の画素データを2次元状に配列したビットマップデータである。なお、図2は、印刷対象の元の画像データと、その元の画像データから生成される圧縮対象の画素データと、その圧縮処理済の画像データから生成されるプリンタ制御コードと、プリンタ制御コードに対して展開処理を施した展開処理済の画像データと、その展開処理済の画像データから構成される印刷用の画像データとを上から順に示したものである。
【0035】
そして、本実施形態においては、画像データを構成する各画素データは、図2に示すように、3ビットのビットデータによって表されるものである。なお、図2に示すビットデータは、画像データにおける所定の1行の画素データを抜き出したものである。また、本実施形態においては、各画素データとして3ビットのビットデータを用いるようにしたが、これに限らず、たとえば4ビット以上のビットデータを用いるようにしてもよい。
【0036】
プリンタ20は、図1に示すように、制御部21と、メモリ22と、ハードディスク23と、印刷エンジン24と、インクヘッド25と、印刷指示受付部26とを備えている。そして、さらに制御部21は、画像データ取得部40と、圧縮処理部41と、プリンタ制御コード生成部42と、展開処理部43とを備えている。
【0037】
画像データ取得部40は、スキャナ10から出力された画像データを取得し、その画像データをメモリ22に出力して記憶させたり、コンピュータ30から出力された後述するプリンタ制御コードを取得し、そのプリンタ制御コードをハードディスク23に出力して記憶させたりするものである。
【0038】
圧縮処理部41は、メモリ22から読み出された画像データに対して圧縮処理を施すものである。具体的には、本実施形態の圧縮処理部41は、入力された画像データに対して、各画素データを構成するビットデータの配列方向についてランレングス圧縮処理を施すものである。
【0039】
ここで、この圧縮処理部41を含む制御部21は、CPU(Central Processing Unit)などのハードウェアから構成されており、そのハードウェアの設計の都合上、バイト単位で処理を行うように構成されている。
【0040】
したがって、圧縮処理部41においても1または複数のバイト単位で圧縮処理が施されるが、このとき、本実施形態のように各画素データを3ビットのビットデータから構成した場合、上述したように、この3ビットのビットデータが圧縮処理の処理単位の間でまたがらないようにする必要がある。すなわち、圧縮処理の処理単位が、画素データの境界で区切られるようにする必要がある。
【0041】
そこで、本実施形態の圧縮処理部41においては、3バイトの画素データ、すなわち8つの画素データを1つのブロック単位(処理単位)として設定し、このブロック単位でランレングス圧縮を行う。
【0042】
一方、ランレングス圧縮を行う際には、その圧縮後のデータの容量を小さくするため、一般的には、図2に示すように、1行の画素データのうちの、1のビットデータを含む先頭位置の画素データから1のビットデータを含む後端の画素データまでが圧縮対象の画素データとして切り出される。なお、本実施形態においては、図2に示すビットデータの左から右に向かって圧縮処理を施すものとする。
【0043】
しかしながら、このとき上述したように切り出した先頭位置の画素データからブロック単位で圧縮処理を開始するようにしたのでは、上述したように、展開処理を施した後に、展開処理後の画素データにシフト処理を施す必要があり、その処理時間が多くかかってしまう。
【0044】
そこで、本実施形態においては、先頭位置の画素データが、展開処理後において所望の位置に配置されるように、図2に示すように先頭位置の画素データの前にダミー画素データを配置し、その後、圧縮処理を施すようにしている。より具体的には、本実施形態においては、先頭位置の画素データが、展開処理後において圧縮処理前の画像データの元の位置に配置されるようにダミー画素データを配置する。なお、このときダミー画素データを含めた圧縮対象の画素データの数がブロック単位でない場合には、図2に示すように1のビットデータを含む後端の画素データの後にもダミー画素データを配置する。
【0045】
そして、圧縮処理部41は、上述したようにしてダミー画素データの配置後に圧縮処理を施した圧縮画像データとともに、画像データの行毎の先頭ダミー画素データの座標値をプリンタ制御コード生成部42に出力するものである。
【0046】
プリンタ制御コード生成部42は、圧縮処理部41から出力された圧縮画像データおよび行毎の先頭ダミー画素データの座標値などに基づいて、図2および図3に示すようなプリンタ制御コードを生成するものである。
【0047】
図3は、図2に示すプリンタ制御コードをより詳細に示すものである。本実施形態において生成されるプリンタ制御コードは、図3に示すように、座標コード、画像コードおよび改頁コードなどから構成されている。座標コードは、上述した行毎の先頭ダミー画像データの座標値(x,y)を含むものである。画像コードは、圧縮画像データおよび展開処理後の画像データのサイズ情報や、画像データに含まれる色(たとえばCMYK)の情報や、圧縮処理の有無の情報や、展開処理の際の演算方式の情報や、圧縮画像データなどを含むものである。なお、展開処理の際の演算方式の情報については、後で詳述する。
【0048】
そして、プリンタ制御コード生成部42において生成されたプリンタ制御コードは、ハードディスク23に出力されて記憶されるものである。
【0049】
展開処理部43は、ハードディスク23に記憶されたプリンタ制御コードを読み出し、このプリンタ制御コードに含まれる圧縮画像データに対してブロック単位で展開処理を施し、図2に示すようなダミー画素データを含む画像データを生成するものである。展開処理後の画像データは、プリンタ制御コードに含まれる座標コードに基づいてメモリ22に一旦記憶された後、印刷エンジン24に出力される。
【0050】
印刷エンジン24は、入力された画像データに基づいて、後述するインクヘッド25に制御信号を出力してインクヘッド25の駆動を制御するものである。
【0051】
インクヘッド25は、印刷用紙の搬送面の上方に非接触状態で配設され、印刷用紙に向かってインクを選択的に吐出するラインヘッドを備えている。たとえばフルカラー画像を形成する場合には、K(黒)、C(シアン)、M(マゼンダ)、Y(イエロー)の4色のラインヘッドから構成される。
【0052】
印刷指示受付部26は、たとえばタッチパネルなどの入力受付手段から構成されており、印刷枚数や印刷部数、面付け印刷指示などの種々の印刷条件および出力方法などの操作者による入力を受け付けるものである。
【0053】
コンピュータ30は、図1に示すように、アプリケーション31とプリンタドライバ32とを備えている。なお、アプリケーション31およびプリンタドライバ32は、コンピュータ30にインストールされたプログラムによって構成されるものである。
【0054】
アプリケーション31は、メモ帳やWord(登録商標)などのような原稿画像を表す画像データを編集することができるプログラムであり、アプリケーション31において編集された画像データはプリンタドライバ32に出力される。
【0055】
プリンタドライバ32は、印刷枚数や印刷部数、面付け印刷指示などの種々の印刷条件および出力方法などの操作者による入力を受け付けるユーザーインターフェースを有し、その印刷条件や出力方法などに応じて、プリンタ20において認識可能なプリンタ制御コードを生成して出力するものである。本実施形態におけるプリンタドライバ32は、プリンタ制御コードとして、PDL(Page Description Language)データを生成するものである。
【0056】
また、本実施形態のプリンタドライバ32は圧縮処理部33を備えている。この圧縮処理部33は、アプリケーション31から出力された画像データに対して圧縮処理を施すものである。プリンタドライバ32の圧縮処理部33において施される圧縮処理は、プリンタ20における制御部21の圧縮処理部41において画像データに施される圧縮処理と同様である。
【0057】
そして、プリンタドライバ32は、アプリケーション31から出力された画像データに基づいて、プリンタ20における制御部21のプリンタ制御コード生成部42において生成されるプリンタ制御コードと同様のものを生成するものである。プリンタドライバ32から出力されたプリンタ制御コードは、プリンタ20の制御部21によって取得され、ハードディスク23に記憶される。
【0058】
次に、本実施形態のプリンタシステムの作用について、図2および図4に示すフローチャートを参照しながら説明する。本実施形態のプリンタシステムは、スキャナ10において原稿画像を読み取ることによって取得された画像データに基づく印刷と、コンピュータ30のアプリケーション31において生成された画像データに基づく印刷とを行うことができるが、まずは、スキャナ10において取得された画像データに基づいて印刷を行う場合の作用について説明する。
【0059】
まず、スキャナ10において原稿画像が光電的に読み取られ、その読み取られた画像データがプリンタ20に出力される(S10)。そして、スキャナ10から出力された画像データは、プリンタ20の画像データ取得部40によって取得され、メモリ22に一旦記憶される(S12)。
【0060】
次に、メモリ22に記憶された画像データが読み出され、この読み出された画像データに対して必要に応じてカット処理が施される(S14)。このカット処理は、たとえばスキャナ10から出力された画像データのサイズが印刷用紙のサイズよりも大きい場合に施される処理であり、画像データのサイズが印刷用紙のサイズに一致するように画像データの一部を削除する処理である。たとえば、図2に示すように、画像データの両サイドの斜線の部分の画素データが削除される。
【0061】
次に、カット処理が施された後の画像データは圧縮処理部41に入力される。そして、圧縮処理部41は、入力された画像データに対して圧縮処理を施す前に、上述したダミー画素データの挿入を行う(S16)。
【0062】
具体的には、圧縮処理部41は、まず、画像データの所定の行の画素データについて、図2に示すように、1のビットデータを含む先頭位置(5,3)の画素データから1のビットデータを含む後端(14,3)の画素データまでの画素データを切り出す。次に、圧縮処理部41は、先頭位置(5,3)の画素データが、展開処理後において圧縮処理前の画像データの元の位置(5,3)に配置されるように、図2に示すように、先頭位置(5,3)の画素データの前にダミー画素データを配置する。このダミー画素データとはゼロの画素データである。図2に示す例では5画素のダミー画素データが配置される。そして、さらに圧縮対象の画素データの数が上述したブロック単位となるように、必要に応じて後端の画素データの後ろにもダミー画素データを配置する。図2に示す例では1画素のダミー画素データが後ろに配置される。
【0063】
そして、圧縮処理部41は、上述したようにダミー画素データを配置した後に圧縮処理を施し(S18)、その圧縮処理の施された圧縮画像データとともに、行毎の先頭ダミー画素データの座標値をプリンタ制御コード生成部42に出力する。
【0064】
次に、プリンタ制御コード生成部42において、入力された圧縮画像データおよび行毎の先頭ダミー画素データの座標値などに基づいて、図2および図3に示すようなプリンタ制御コードが生成される(S20)。なお、図2においては、所定の1行の画素データに対する処理のみを表しているが、その他の行についても、上記と同様のカット処理、ダミー画素データの配置処理および圧縮処理が施され、1枚の画像データ全体に対して1つのプリンタ制御コードが生成される。
【0065】
そして、プリンタ制御コード生成部42において生成されたプリンタ制御コードは、ハードディスク23に一旦記憶される(S22)。
【0066】
次いで、展開処理部43によってハードディスク23に記憶されたプリンタ制御コードが読み出され、このプリンタ制御コードに含まれる圧縮画像データに対してブロック単位で展開処理が施され、図2に示すようなダミー画素データを含む画像データが生成される(S24)。
【0067】
そして、展開処理後の画像データは、プリンタ制御コードに含まれる座標コードに基づいてメモリ22に一旦記憶された後、印刷エンジン24に出力される。
【0068】
印刷エンジン24は、入力された画像データに基づいてインクヘッド25に制御信号を出力し、インクヘッド25は、入力された制御信号に基づいて駆動され、印刷用紙にインクを吐出して印刷を行う(S26)。
【0069】
以上が、スキャナ10によって取得された画像データに基づいて印刷を行う場合の作用である。
【0070】
次に、コンピュータ30のアプリケーション31において生成された画像データに基づいて印刷を行う場合の作用について説明する。
【0071】
まず、アプリケーション31が起動され、このアプリケーション31を用いて文書、イラスト、写真画像などが編集されて画像データが生成される。
【0072】
そして、アプリケーション31において印刷指示が選択されると、プリンタドライバ32のユーザーインターフェースが起動されて種々の印刷条件および出力方法などの入力を受け付ける印刷条件受付画面が表示される。そして、その印刷条件受付画面において種々の印刷条件および出力方法などが操作者によって所定の入力手段を用いて設定された後、印刷指示が選択されると、プリンタドライバ32はアプリケーション31から出力された画像データに対して、上述したカット処理を施した後、圧縮処理部33においてダミー画素データの配置処理および圧縮処理(S14〜S18)を行い、その圧縮処理を施した圧縮画像データと設定された印刷条件などに基づいて、上述したプリンタ制御コードを生成する(S20)。
【0073】
そして、プリンタドライバ32において生成されたプリンタ制御コードはプリンタ20に出力され、プリンタ20の画像データ取得部40によって取得された後、ハードディスク23に出力されて記憶される。
【0074】
そして、その後、ハードディスク23に記憶されたプリンタ制御コードが読み出されて上述した展開処理が施され(S22)、上記と同様にして展開処理後の画像データに基づいて印刷処理が行われる(S24)。
【0075】
以上が、コンピュータ30のアプリケーション31において生成された画像データに基いて印刷を行う場合の作用である。
【0076】
次に、本実施形態のプリンタシステムにおいて、面付け処理の印刷指示条件が設定された場合の作用について説明する。面付け処理とは、1枚の印刷用紙の中に複数枚の画像を割り当てて印刷を行う処理である。ここでは、まず、1枚の印刷用紙に2枚の画像を左右に並べて印刷する場合の作用について説明する。
【0077】
まず、プリンタ20の印刷指示受付部26において使用者による面付け印刷指示が受け付けられた後、面付けされる2枚の画像のうちの1枚目の画像データがスキャナ10から出力され、その1枚の画像データがプリンタ20の画像データ取得部40によって取得され、メモリ22に一旦記憶される。
【0078】
ここで、本実施形態におけるメモリ22は、1枚分の画像データのデータ量に相当する記憶容量を有するものとする。そして、本実施形態においては、後述するとおり、1枚の画像データが画像データ取得部40によって取得され、メモリ22に一旦記憶される毎にその画像データがメモリ22から読み出されて所定の処理が施され、メモリ22から読み出された画像データについてはメモリ22から順次破棄される。このように1枚の画像データを取得する毎に所定の処理を施して各画像コードを生成することによって、従来のように、予めメモリ上で面付け対象の複数の画像データを配置して面付け画像データを生成する場合と比較すると、メモリ22の記憶容量を少なくすることができ、コストの削減を図ることができる。なお、本実施形態においては、上述したようにメモリ22を、1枚分の画像データのデータ量に相当する記憶容量を有するものとしたが、これに限らず、1枚分の画像データのデータ容量以上であって、2枚分の画像データのデータ容量より小さい記憶容量であればよい。
【0079】
そして、メモリ22に記憶された1枚の画像データが読み出され、この読み出された1枚の画像データに対して、印刷用紙の用紙サイズに応じてカット処理が施される。
【0080】
ここで、図5に、本実施形態における面付け対象の左面の画像データと右面の画像データとを示す。具体的には、図5では、X方向のサイズが16画素(3バイト×2=6バイト)の2枚の画像データを、X方向の用紙サイズが24画素(3バイト×3=9バイト)の印刷用紙に印刷する場合の左面の画像データと右面の画像データとを示している。
【0081】
そして、まず、図5に示す2枚の画像データのうちの左面の1枚の画像データに対して、左端の2画素と右端の2画素が削除される処理が施される。
【0082】
そして、カット処理が施された後の1枚の画像データは圧縮処理部41に入力される。次に、スキャナ10から出力された2枚目の画像データ、すなわち右面の画像データがプリンタ20の画像データ取得部40によって取得され、メモリ22に一旦記憶された後、メモリ22から読み出されて上記と同様のカット処理が施されて圧縮処理部41に入力される。
【0083】
次に、圧縮処理部41は、入力された画像データに対して圧縮処理を施す前にダミー画素データの挿入を行う。なお、ここでは左右の画像データの各行の画素データのうちの3行目と5行目の画素データに対してダミー画素データの挿入を行う場合について説明するが、実際には全ての行に対してダミー画素データの挿入処理が行われるものとする。
【0084】
具体的には、圧縮処理部41は、左面の画像データの3行目の画素データについては、図5に示すように、1のビットデータを含む先頭位置(5,3)の画素データから1のビットデータを含む後端(11,3)の画素データまでの画素データを切り出した後、先頭位置(5,3)の画素データが、展開処理後において圧縮処理前の画像データの元の位置に配置されるように、先頭位置(5,3)の画素データの前に5画素のダミー画素データを配置する。そして、さらに圧縮対象の画素データの数がブロック単位となるように、後端(11,3)の画素データの後ろにも4画素のダミー画素データを配置する。
【0085】
また、左面の画像データの5行目の画素データについても同様に、1のビットデータを含む先頭位置(1,5)の画素データから1のビットデータを含む後端(10,5)の画素データまでの画素データを切り出した後、先頭位置(1,5)の画素データが、展開処理後において圧縮処理前の画像データの元の位置に配置されるように、先頭位置(1,5)の画素データの前に1画素のダミー画素データを配置する。そして、さらに圧縮対象の画素データの数がブロック単位となるように、後端(10,5)の画素データの後ろにも5画素のダミー画素データを配置する。
【0086】
また、右面の画像データについては、上述したようにX方向の用紙サイズが24画素(3バイト×3=9バイト)の印刷用紙に印刷する場合、図5に示すように、印刷用紙の座標系におけるX=12の位置から印刷されることになる。すなわち、右面の画像データの一番左端の画素データのX座標は、図5に示すようにX=12となる。
【0087】
そして、まず、3行目の画素データについては、図5に示すように、1のビットデータを含む先頭位置(16,3)の画素データから1のビットデータを含む後端(23,3)の画素データまでの画素データを切り出した後、先頭位置(16,3)の画素データが、展開処理後において印刷用紙の座標系における(16,3)の位置に印刷されるように、先頭位置の画素データの前に8画素のダミー画素データを配置する。そして、さらに圧縮対象の画素データの数がブロック単位となるように、後端(22,3)の画素データの後ろにも1画素のダミー画素データを配置する。
【0088】
また、左面の画像データの5行目の画素データについても同様に、1のビットデータを含む先頭位置(12,5)の画素データから1のビットデータを含む後端(21,5)の画素データまでの画素データを切り出した後、先頭位置(12,5)の画素データが、展開処理後において印刷用紙の座標系における(12,3)の位置に印刷されるように、先頭位置(12,5)の画素データの前に4画素のダミー画素データを配置する。そして、さらに圧縮対象の画素データの数がブロック単位となるように、後端(21,5)の画素データの後ろにも2画素のダミー画素データを配置する。
【0089】
そして、圧縮処理部41は、上述したようにダミー画素データを配置した後、左面の画像データと右面の画像データとに対してそれぞれ別個に圧縮処理を施し、2つの圧縮画像データを生成する。そして、圧縮処理部41は、その2つの圧縮画像データとともに、各圧縮画像データについて、行毎の先頭ダミー画素データの座標値をプリンタ制御コード生成部42に出力する。
【0090】
次に、プリンタ制御コード生成部42において、入力された各圧縮画像データおよび各圧縮画像データについての行毎の先頭ダミー画素データの座標値などに基づいて、図5に示すような、左面の座標コードおよび画像コードと、右面の座標コードおよび画像コードとから構成される1つのプリンタ制御コードが生成される。
【0091】
そして、プリンタ制御コード生成部42において生成されたプリンタ制御コードは、ハードディスク23に一旦記憶される。
【0092】
次いで、展開処理部43によってハードディスク23に記憶されたプリンタ制御コードが読み出され、このプリンタ制御コードに含まれる圧縮画像データに対してブロック単位で展開処理が施され、その展開処理済の画像データがメモリ22に記憶される。
【0093】
ここで、この展開処理においては、左面の圧縮画像データと右面の圧縮画像データとに対してそれぞれ別個に展開処理が施されるが、このとき左面の圧縮画像データの後端ブロックの展開処理済の画像データと右面の圧縮画像データの先頭ブロックの展開処理済の画像データとをそれぞれ展開してメモリ22に記憶するようにしたのでは、たとえば左面の圧縮画像データの後端ブロックの展開処理済の画像データを記憶した後に、右面の圧縮画像データの先頭ブロックの展開処理済の画像データを記憶するようにした場合、図5に示すように、左面の展開処理済の後端ブロックのX=8〜11までの画素データが右面の展開処理済の先頭ブロックのダミー画素データによって上書きされてしまい、画像情報が失われてしまう。また、逆に、たとえば右面の圧縮画像データの先頭ブロックの展開処理済の画像データを記憶した後に、左面の圧縮画像データの後端ブロックの展開処理済の画像データを記憶するようにした場合、右面の展開処理済の後端ブロックのX=12〜16までの画素データが左面の展開処理済の後端ブロックのダミー画素データによって上書きされてしまい画像情報が失われてしまう。
【0094】
そこで、本実施形態においては、図5に示すように、左面の画像データの後端ブロックの展開処理済の画像データと右面の画像データの先頭ブロックの展開処理済の画像データとのOR演算を行い、そのOR演算の結果得られた画像データをメモリ22に記憶するようにする。なお、このとき左面の画像データの先頭ブロックと右面の画像データの後端ブロックの画像データを展開する際には上記OR演算は行わないものとする。
【0095】
このように圧縮(展開)方向に隣接する圧縮画像データを展開する際、隣接するブロックの展開処理済の画像データのOR演算を行うことによって、図5に示すように、左面および右面の画像データの画像情報を失うことなく適切な印刷用の画像データを展開することができる。
【0096】
なお、本実施形態においては、上述したようにOR演算を行うことによって左面の画像データと右面の画像データとの画像情報が失われないようにしたが、演算方式としてはこれに限らず、両方の画像情報が失われないような演算方式であれば如何なる演算方式でもよく、たとえばマスク演算などを行うようにしてもよい。また、OR演算に限らず、AND演算、XOR演算、NOT演算、COPY演算などを用いるようにしてもよい。また、このときの演算方式は、上述したプリンタ制御コードの画像コードにおける展開処理の際の演算方式の情報として含めることができ、また、印刷指示受付部26において使用者によって複数の演算方式の中から所定の演算方式を選択可能としてもよい。
【0097】
そして、展開処理後の画像データは、プリンタ制御コードに含まれる座標コードに基づいてメモリ22に一旦記憶された後、印刷エンジン24に出力される。
【0098】
次いで、印刷エンジン24は、入力された画像データに基づいてインクヘッド25に制御信号を出力し、インクヘッド25は、入力された制御信号に基づいて駆動され、印刷用紙にインクを吐出して印刷を行う。
【0099】
なお、上記説明は、スキャナ10によって読み取られた2枚の画像データに基づいて面付け印刷を行う場合の作用であるが、コンピュータ30のアプリケーション31において生成された画像データに基づいて面付け印刷を行う場合も、アプリケーション31から出力された画像データに対して、上記と同様のカット処理、ダミー画素データの配置処理および圧縮処理が行われてプリンタ制御コードが生成される。
【0100】
そして、コンピュータ30のプリンタドライバ32において生成されたプリンタ制御コードはプリンタ20に出力され、プリンタ20の画像データ取得部40によって取得された後、ハードディスク23に出力されて記憶される。
【0101】
そして、その後、ハードディスク23に記憶されたプリンタ制御コードが読み出されて上記と同様のOR演算を含む展開処理が施され、その展開処理後の画像データに基づいて印刷処理が行われる。
【0102】
また、上記説明では、模式的にX方向のサイズが16画素(3バイト×2=6バイト)の2枚の画像データを、X方向の用紙サイズが24画素(3バイト×3=9バイト)の印刷用紙に印刷する場合を説明したが、以下、原稿画像を300dpiで読み取った画像データを図6(A)に示すようなA4Rサイズの印刷用紙に対して左右に並べて面付け印刷する場合の作用について説明する。
【0103】
300dpiで読み取られた画像データをA4Rサイズの印刷用紙に左右に2枚並べて印刷する際には、まず、各画像データに対して所定の縮小率で縮小処理が施され、図6(B)に示すように1753画素×2480画素の左面の画像データAと右面の画像データBとが生成される。なお、ここでは、説明を簡略化するため、図6(B)に示す左面の画像データAと右面の画像データBとは全ての画素データが1のビットデータを有する有効な画素データであるとする。
【0104】
そして、この左面の画像データAと右面の画像データBとを左右に並べて圧縮処理を施す際には、上記説明と同様に、8画素(3バイト)のブロック単位で圧縮処理が施されるが、図6(C)に示すように左面の画像データAと右面の画像データBとの境界は、左端から1753画素目と1754画素目との間となり、ブロック単位の倍数である1752画素の位置から1画素だけずれることになる。
【0105】
したがって、左面の画像データAについてはブロック単位で圧縮処理を施すために、図6(D)に示すように後端ブロックの後ろに7画素のダミー画素データが配置され、このダミー画素データを含めてブロック単位で圧縮処理が施される。
【0106】
一方、右面の画像データBについては、先頭位置の画素データが、展開処理後において印刷用紙の座標系における1754画素目の位置に印刷されるように、図6(E)に示すように先頭ブロックの前に1画素のダミー画素データが配置される。また、右面の画像データBの後端の画素データの位置は1753画素×2=3506画素目となるので、図6(E)に示すようにブロック単位の倍数の3504画素目から2画素だけずれることになる。したがって、右面の画像データBの後端の画素データをブロック単位で圧縮処理を施すために、図6(E)に示すように後端ブロックの後ろに6画素のダミー画素データが配置される。上記のようにして右面の画像データBに対してダミー画素データが配置された後、このダミー画素データを含めてブロック単位で圧縮処理が施される。
【0107】
そして、上記のようにして生成された左面の圧縮画像データと右面の圧縮画像データとに基づいて、上記と同様にしてプリンタ制御コードが生成され、ハードディスク23に一旦記憶される。
【0108】
次いで、ハードディスク23に記憶されたプリンタ制御コードが読み出されて展開処理が施されるが、このとき、上述した面付け印刷の場合と同様に、左面の画像データの後端ブロックの展開処理済の画像データと右面の画像データの先頭ブロックの展開処理済の画像データとのOR演算を行い、そのOR演算の結果得られた画像データをメモリ22に記憶する。なお、このとき左面の画像データの後端ブロック以外のブロックと右面の画像データの先頭ブロック以外のブロックの画像データを展開する際には上記OR演算は行わないものとする。
【0109】
そして、展開処理後の画像データは、プリンタ制御コードに含まれる座標コードに基づいてメモリ22に一旦記憶された後、印刷エンジン24に出力される。
【0110】
以上が、A4サイズの原稿画像の画像データをA4Rサイズの印刷用紙に対して左右に2枚並べて面付け印刷する場合の作用である。
【0111】
また、上記説明では、1枚の印刷用紙に2枚の画像データを印刷する、いわゆる2面アップの圧縮処理、展開処理および印刷処理について説明したが、2面アップに限らず、図7に示すような4面アップや、それ以上の8面アップなどにおいても、同様の処理を適用することができる。
【0112】
なお、たとえば図7に示すような1面から4面の画像データの4面アップの印刷の際には、図8に示すように、1面から4面の各面の画像データに対して別個に上記と同様の圧縮処理が施され、各面の画像データについてそれぞれ座標コードと画像コードとが生成されて図8に示すような各面の座標コードと画像コードとから構成されるプリンタ制御コードが生成される。なお、このとき生成されるプリンタ制御コードの各面の座標コードには、各面の印刷用紙における印刷位置の座標が含まれているものとする。
【0113】
そして、プリンタ制御コードの画像コードに含まれる各面の圧縮画像データに対して上記と同様の展開処理が施される。なお、このとき1面の画像データと2面の画像データとが互いに上書きしないように、上記と同様にして1面の画像データと2面の画像データとにおける隣接するブロックの展開処理を行う際にはOR演算が行われる。また、同様に、3面の画像データと4面の画像データとが互いに上書きしないように、上記と同様にして3面の画像データと4面の画像データとにおける隣接するブロックの展開処理を行う際にはOR演算が行われる。
【0114】
そして、展開処理済の各面の画像データが座標コードに含まれる印刷位置の座標値に基づいて配置されて4面アップの印刷用の画像データが生成され、その印刷用の画像データはメモリ22に一旦記憶された後、印刷エンジン24に出力される。
【0115】
なお、上記説明では、1面から4面の画像データを左上から順に配置して印刷する場合について説明したが、必ずしもこの順でなくてもよく、プリンタ制御コードの各面の座標コードを指定することによって、図9に示すような配置で1面から4面までの画像データを印刷することも可能である。各面の座標コードの指定については、プリンタ20の印刷指示受付部26またはコンピュータ30のプリンタドライバ32によって受け付けるようにすることができる。
【0116】
また、上記実施形態におけるプリンタ制御コードは、さらに図10に示すような文字画像コードなどの付加情報を含むことも可能である。この文字画像コードは、たとえば印刷用紙内に図11に示すようなページ数や、日付などの文字を印刷するためのものである。そして、この文字画像コードは、ページ数などを表す文字画像の画素データとゼロの画素データから構成される1枚の画像データに対して上記と同様の圧縮処理を施すことによって生成された圧縮画像データから構成されるものである。
【0117】
そして、上記のような文字画像コードを含むプリンタ制御コードが展開される際には、画像コードに含まれる圧縮画像データを展開した画像データと、文字画像コードに含まれる圧縮画像データを展開した文字画像データとの間でOR演算を行うことによって、図11に示すような印刷用の画像データを生成することができる。なお、このOR演算の情報についても、プリンタ制御コードにおける展開処理の際の演算方式の情報として含めることができる。
【0118】
また、さらに、上述したページ数などの文字画像を、図12に示すような白抜き四角内に印刷するような場合には、プリンタ制御コードに対して、図13に示すような白抜き画像コードをさらに含めるようにすればよい。この白抜き画像コードは、白抜き四角を表すゼロの画素データと1の画素データから構成される1枚の画像データに対して上記と同様の圧縮処理を施すことによって生成された圧縮画像データから構成されるものである。
【0119】
そして、上記のような白抜き画像コードを含むプリンタ制御コードが展開される際には、画像コードに含まれる圧縮画像データを展開した画像データと、白抜き画像コードに含まれる圧縮画像データを展開した白抜き画像データとの間でAND演算を行った後、そのAND演算の結果と文字画像コードに含まれる圧縮画像データを展開した文字画像データとの間でOR演算を行うことによって、図12に示すような印刷用の画像データを生成することができる。なお、このAND演算とOR演算の情報についても、プリンタ制御コードにおける展開処理の際の演算方式の情報として含めることができる。
【0120】
なお、プリンタ制御コードに含める付加情報としては、上述したような文字画像コードや白抜き画像コードに限らず、その他の付加的な画像を表す画像コードも用いることができる。
【0121】
また、上記実施形態においてはプリンタ20として、インクジェットプリンタを用いるようにしたが、これに限らず、孔版印刷プリンタやレーザープリンタなども用いることができる。
【符号の説明】
【0122】
10 スキャナ
20 プリンタ
21 制御部
22 メモリ
23 ハードディスク
24 印刷エンジン
25 インクヘッド
26 印刷指示受付部
30 コンピュータ
31 アプリケーション
32 プリンタドライバ
33 圧縮処理部
40 画像データ取得部
41 圧縮処理部
42 プリンタ制御コード生成部
43 展開処理部

【特許請求の範囲】
【請求項1】
印刷用紙に印刷される画像データであって、複数のビットデータで表される画素データが複数配列されてなる画像データを取得する画像データ取得部と、
該画像データ取得部により取得された画像データに対して、前記ビットデータの配列方向について、前記画素データの境界で区切られる1または複数のバイト単位からなるブロック単位で圧縮処理を施して圧縮画像データを生成する圧縮処理部と、
該圧縮処理部により生成された圧縮画像データに対して前記ブロック単位で展開処理を施し、該展開処理の施された画像データを出力する展開処理部とを備え、
前記圧縮処理部が、前記ビットデータの配列方向に配置された画素データのうちの1のビットデータを含む先頭位置の画素データが前記印刷用紙の所望の位置に印刷されるように前記先頭位置の画素データの前にダミー画素データを配置した後、前記圧縮処理を施すものであることを特徴とする画像処理装置。
【請求項2】
前記圧縮処理部が、前記先頭位置の画素データが前記展開処理後に前記圧縮処理前の画像データの元の位置に配置されるように前記先頭位置の画素データの前にダミー画素データを配置するものであることを特徴とする請求項1記載の画像処理装置。
【請求項3】
前記画像データ取得部が、複数の前記画像データを取得するものであり、
該画像データ取得部により取得された複数の画像データを1枚の印刷用紙内に配置して印刷する面付け印刷指示を受け付ける面付け印刷指示受付部を備え、
前記展開処理部が、前記面付け印刷指示受付部において面付け印刷指示が受け付けられた場合には、前記ビットデータの配列方向に隣接して配置される前記圧縮画像データに対して展開処理を施す際、一方の前記圧縮画像データの先頭または後端の前記ブロックの展開処理済の画像データと該先頭または後端のブロックに隣接する他方の前記圧縮画像データのブロックの展開処理済の画像データとが互いに上書きされないように、前記一方の圧縮画像データの先頭または後端のブロックおよび前記他方の圧縮画像データの前記先頭または後端のブロックに隣接するブロックの展開処理済の画像データに対して所定の演算を施すものであることを特徴とする請求項1または2記載の画像処理装置。
【請求項4】
前記所定の演算がOR演算であることを特徴とする請求項3記載の画像処理装置。
【請求項5】
前記圧縮処理部が、前記複数の画像データに対して別個に圧縮処理を施して複数の圧縮画像データを生成するものであることを特徴とする請求項3または4記載の画像処理装置。
【請求項6】
前記展開処理部が、前記複数の圧縮画像データに対して別個に展開処理を施し、該展開処理の施された複数の画像データを前記面付け印刷指示に基づいて順次出力するものであることを特徴とする請求項5記載の画像処理装置。
【請求項7】
前記圧縮画像データと前記画像データに付加される所定の情報を表す付加情報データとをまとめて印刷制御コードとして生成する印刷制御コード生成部を備えたことを特徴とする請求項1から6いずれか1項記載の画像処理装置。
【請求項8】
請求項1から7いずれか1項記載の画像処理装置および該画像処理装置から出力された画像データに基づいて印刷用紙に対して印刷処理を施す印刷部を備えた印刷装置と、
原稿画像を光電的に読み取って前記画像データを前記画像処理装置に出力する原稿読取装置とを備えたことを特徴とする印刷システム。
【請求項9】
請求項1から7いずれか1項記載の画像処理装置における前記画像データ取得部および前記圧縮処理部を備えたコンピュータと、
前記画像処理装置における前記展開処理部および該展開処理部から出力された画像データに基づいて印刷用紙に対して印刷処理を施す印刷部を備えた印刷装置とを備えたことを特徴とする印刷システム。

【図1】
image rotate

【図3】
image rotate

【図4】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図2】
image rotate

【図5】
image rotate

【図14】
image rotate


【公開番号】特開2013−97407(P2013−97407A)
【公開日】平成25年5月20日(2013.5.20)
【国際特許分類】
【出願番号】特願2011−236668(P2011−236668)
【出願日】平成23年10月28日(2011.10.28)
【出願人】(000250502)理想科学工業株式会社 (1,191)
【Fターム(参考)】