JP2006159468A - 印刷装置および印刷方法 - Google Patents
印刷装置および印刷方法 Download PDFInfo
- Publication number
- JP2006159468A JP2006159468A JP2004350817A JP2004350817A JP2006159468A JP 2006159468 A JP2006159468 A JP 2006159468A JP 2004350817 A JP2004350817 A JP 2004350817A JP 2004350817 A JP2004350817 A JP 2004350817A JP 2006159468 A JP2006159468 A JP 2006159468A
- Authority
- JP
- Japan
- Prior art keywords
- band
- printing
- image
- data
- block
- 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.)
- Withdrawn
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Record Information Processing For Printing (AREA)
Abstract
【課題】 画像データを所定の高さで区分したバンドごとに受信した後、実際に用紙の方向と画像の方向が異なる場合に、用紙の方向に合わせた画像を印刷する印刷装置および印刷方法を提供する。
【解決手段】 ホストコンピュータから画像データを受信する印刷データ取得部40と、印刷データから、用紙の方向と画像の方向とが一致するか否かを判断する印刷方向判断部41と、画像データの階調数を少なくするバンドデータ変換部42と、バンドを分割することにより複数のブロックを取得するブロック生成部43と、ブロックを回転させる処理を行うブロック回転部44と、ブロックのデータを圧縮するブロック圧縮部45と、複数のブロックからバンドを生成するバンドデータ生成部46と、バンドを圧縮する圧縮部47とを備える。
【選択図】 図4
【解決手段】 ホストコンピュータから画像データを受信する印刷データ取得部40と、印刷データから、用紙の方向と画像の方向とが一致するか否かを判断する印刷方向判断部41と、画像データの階調数を少なくするバンドデータ変換部42と、バンドを分割することにより複数のブロックを取得するブロック生成部43と、ブロックを回転させる処理を行うブロック回転部44と、ブロックのデータを圧縮するブロック圧縮部45と、複数のブロックからバンドを生成するバンドデータ生成部46と、バンドを圧縮する圧縮部47とを備える。
【選択図】 図4
Description
本発明は、所定の印刷方向に対応した画像を所定の高さで区分したバンドごとに受信した後、受信したバンドに基づいて所定の印刷方向に印刷を行う印刷装置および印刷方法に関する。
一般に、印刷に用いられる用紙として、A3,A4など縦横の長さが異なる所定のサイズの用紙が用いられている。用紙がセットされる方向は印刷装置の機種により異なることがあり、例えば、A4用紙に対応した画像を印刷する際に、A3用紙対応の印刷装置では、印刷する方向に対してA4用紙の長辺方向を垂直にセットすることがある。一方、A4用紙対応の印刷装置では、印刷ヘッドまたは露光ビームを走査する走査長が短くなるように走査方向と用紙の短辺方向とを揃えてセットする。このとき、印刷する方向は走査方向に対して垂直になっているので、A4用紙の短辺方向が印刷する方向に対して垂直にセットされる。このように、印刷装置の機種に依存して、異なる方向にセットされた用紙に対して印刷することがある。そこで、ホスト装置が個々の印刷装置に対応した画像データを生成する、いわゆるホストベースの印刷システムにおいては、ホスト装置は、用紙の方向に対応した画像データを生成するようにしている。
ここで、ホスト装置と印刷装置との機種設定の不一致、ホスト装置側の印刷設定の誤りなどがあった場合、用紙の方向に対応していない画像データが生成されることがある。このような場合、画像データを正しい方向で印刷するためには、印刷装置側で画像データの印刷方向を変換する処理が必要になる。そこで、例えば、特許文献1では、画像データを回転させることにより、用紙の方向に対応した画像データを取得する技術が開示されている(特許文献1 第21頁 図13参照)。また、特許文献2では、画像データを回転させる際に、1ページ分の画像データを、より小さなブロックを単位として回転させる技術が開示されている。
ホスト装置から印刷装置へのデータ転送方法には、画像データを色の順番で送信するプレーン順次の転送方法と、用紙1ページ分の画像データを高さ方向に所定の長さで分割したバンドという領域ごとにデータを送信するバンド順次のデータ転送がある。特許文献1および特許文献2に記載の従来の印刷装置では、各色の画像データごとに送られてくるプレーン順次の転送方法においては、各色ごとの画像データを適切に処理することができる。しかしながら、各色のバンドごとに送られてくるバンド順次の転送方法においては、バンドごとに処理する必要があるため、1ページ分の画像データに対して処理を行うとする従来の印刷装置では適切に処理することができなかった。そこで、本発明は、バンド順次の転送方法においても、適切に画像データを回転させることができる処理方法を提供することを目的とする。
上記課題を解決するために、本発明では、所定の印刷方向に対応した画像を所定の高さで区分したバンドごとに受信し、バンドに基づいて画像を所定の方向の用紙に印刷する印刷装置であって、バンドを分割することにより複数のブロックを取得するブロック取得手段と、ブロックを回転させることにより、ブロックにおける画像の印刷方向を、用紙の方向に合わせて整列する整列手段と、複数の整列したブロックを結合することにより、バンドを構築するバンド構築手段と、構築後のバンドに基づいて印刷する印刷手段と、を備えることを特徴とする。
この構成によれば、画像を所定の高さで区分したバンドを受信した後に、バンドを分割して得られるブロックごとに回転させる処理を行い、回転後のブロックを結合することで回転後のバンドを取得する。回転後のバンドに基づいて印刷することにより、用紙の方向に合わせて回転させた画像を印刷することができる。
また、本発明は、受信したバンドを記憶するバンド記憶手段と、ブロックを記憶するブロック記憶手段を更に備え、整列手段は、バンド記憶手段に記憶されているブロックを読み出してから、ブロック記憶手段を用いてブロックを回転させることが好ましい。
このようにすれば、画像より小さいブロックに対して回転させる処理を行うとしたことにより、回転させる処理を行う際に用いるブロック記憶手段の記憶容量を少なくすることができる。
また、本発明は、ブロック取得手段は、バンドの高さと同じ幅でバンドを分割することにより複数のブロックを取得することが好ましい。
このようにすれば、バンドの高さを1辺とする正方形形状のブロックが得られる。正方形形状のブロックは、画像の印刷方向を用紙の方向に合わせて90°回転させてもブロック中心の座標が変化することがないので、バンド記憶手段に記憶されたブロックを記憶領域上で管理しやすくなる。
また、本発明は、整列手段は、回転後のブロックを回転前のブロックが記憶されていたバンド記憶手段の記憶領域に記憶することが好ましい。
このようにすれば、回転前後のブロックは形状が変化しないので、回転前のブロックが記憶されていたバンド記憶手段の記憶領域に回転後のブロックを記憶することができる。回転前後のブロックを同じ記憶領域に記憶するとしたことにより、バンド記憶手段に必要となる記憶容量を少なくすることができる。
また、本発明は、バンド構築手段は、画像の印刷方向と用紙の方向が一致していない場合に、印刷するべきページのうちの1ページに対応するバンドのみを構築することが好ましい。
このようにすれば、画像の印刷方向と用紙の方向が一致していない場合には、1ページ分の画像のみが印刷されることになる。ここで、画像データの印刷方向が印刷装置の印刷方向と一致していない場合に、上述したように画像を回転させる処理を伴うために印刷に要する処理量は大きくなる。複数のページを印刷する場合であっては、複数のページについて処理を行うため多大な処理量、印刷時間を要することになるので、ユーザにとっては不便である。そこで、印刷するべきページのうちの1ページだけを印刷するとしたことにより、ユーザは、1ページの印刷物を受け取った後に、画像の印刷方向または用紙の方向の設定を変えて、回転させる処理を伴わない印刷により全ての印刷するべきページを印刷することができるようになる。1ページだけについて回転させる処理を行うことになるので、印刷するべきページを印刷するために要するトータルでの処理量、処理時間を軽減することができる。
また、本発明は、バンドに対して、画質を落とす変換を行うバンド変換手段を更に備えることが好ましい。
このようにすれば、印刷される画像データはバンドの画質を落とす変換を行うことによりデータ量が少なくなる。画像データの印刷方向と印刷装置の印刷方向が一致していない場合に印刷された1ページは、画像データのデータ量を少なくすることによって印刷に要する処理量、印刷時間をさらに軽減することができる。なお、画質を落とす変換としては、画像の階調数、色数、解像度などを元の画像より少なくする変換を行うことが望ましい。また、バンドデータを変換するタイミングとしては、バンドをブロックに分割する前に行うとよい。
また、本発明は、画像の印刷方向と用紙の方向とが一致していない旨を表す状態表示画像を分割した状態表示ブロックを記憶する状態表示ブロック記憶手段を更に備え、バンド構築手段は、ブロックおよび状態表示ブロックから、バンドを構築することが好ましい。
このようにすれば、画像データの印刷方向と用紙の方向が一致していない場合には、回転させた画像と共に状態表示画像が表示された画像を印刷する。印刷された状態表示画像を見ることによって、ユーザは画像データの印刷方向が用紙の方向と一致していないことを知ることができる。
また、本発明の印刷装置は、所定の印刷方向に対応した画像を所定の高さで区分したバンドごとに受信し、バンドに基づいて画像を所定の方向の用紙に印刷する印刷装置であって、画像の印刷方向と用紙の方向が一致していない場合に、印刷するべきページのうちの1ページに対応するバンドについて、バンドを回転させることにより、バンドにおける画像の印刷方向を、用紙の方向に合わせて整列する整列手段と、整列したバンドに基づいて印刷する印刷手段と、を備えるとしてもよい。
この構成によれば、画像の印刷方向と用紙の方向が一致していない場合に、回転させた画像を1ページだけ印刷する。2ページ目以降の印刷については、ユーザは、印刷設定を変更して回転させる処理を必要としない通常の印刷処理により印刷することができるようになる。
また、本発明の印刷装置は、所定の印刷方向に対応した画像を所定の高さで区分したバンドごとに受信し、バンドに基づいて画像を所定の方向の用紙に印刷する印刷装置であって、バンドを回転させることにより、バンドにおける画像の印刷方向を、用紙の方向に合わせて整列する整列手段と、整列したバンドに対して、画像の印刷方向と用紙の方向と一致していない旨を表す状態表示画像を付与することにより、状態表示画像を含むバンドを構築するバンド構築手段と、構築したバンドに基づいて印刷する印刷手段と、を備えるとしてもよい。
この構成によれば、画像の印刷方向と用紙の方向が一致していない場合に、印刷するべき画像と状態表示画像を含む画像を印刷することになる。したがって、ユーザは、状態表示画像から画像の印刷方向と用紙の方向が一致していないことを知ることができる。
また、本発明は、印刷方法とすることもできる。すなわち、本発明の印刷方法は、所定の印刷方向に対応した画像を所定の高さで区分したバンドごとに受信し、バンドに基づいて画像を所定の方向の用紙に印刷する印刷方法であって、バンドを分割することにより複数のブロックを取得するブロック取得工程と、ブロックを回転させることにより、ブロックにおける画像の印刷方向を、用紙の方向に合わせて整列する整列工程と、複数の整列したブロックを結合することにより、バンドを構築するバンド構築工程と、構築後のバンドに基づいて印刷する印刷工程と、を備えることを特徴とする。
本発明の印刷方法は、所定の印刷方向に対応した画像を所定の高さで区分したバンドごとに受信し、バンドに基づいて画像を所定の方向の用紙に印刷する印刷方法であって、印刷するべきページのうちの1ページに対応するバンドについて、バンドを回転させることにより、バンドにおける画像の印刷方向を、用紙の方向に合わせて整列する整列工程と、整列したバンドに基づいて印刷する印刷工程と、を備えることを特徴とする。
本発明の印刷方法は、所定の印刷方向に対応した画像を所定の高さで区分したバンドごとに受信し、バンドに基づいて画像を所定の方向の用紙に印刷する印刷方法であって、バンドを回転させることにより、バンドにおける画像の印刷方向を、用紙の方向に合わせて整列する整列工程と、整列したバンドに対して、画像の印刷方向と用紙の方向と一致していない旨を表す状態表示画像を付与することにより、状態表示画像を含むバンドを構築するバンド構築工程と、構築したバンドに基づいて印刷する印刷工程と、を備えることを特徴とする。
以下、本発明を具体化した一実施形態について図面を参照して説明する。
図1は、本発明に係る印刷システム1の構成を示した図である。図1に示すように、印刷システム1は、プリンタ(印刷装置)2およびホストコンピュータ3を備えている。プリンタ2は、ホストコンピュータ3に接続されており、ホストコンピュータ3から送られる印刷データに基づいて、印刷媒体である用紙に印刷を行う。
図1に示すホストコンピュータ3は、プリンタ2に対して印刷要求を行うホスト装置であり、アプリケーション10と、プリンタドライバ11と、インターフェイス(以下I/Fと記す)12とを備えている。ホストコンピュータ3には、ディスプレイ、キーボードおよびマウス(図示なし)が接続されている。ディスプレイに表示される画面に従ってキーボードまたはマウスから入力される操作信号に基づいて以下に述べる印刷処理が行われる。また、ホストコンピュータ3は汎用のパーソナルコンピュータであり、ホストコンピュータ3の内部には、CPU、RAM、ROM、ハードディスク(図示なし)が備えられている。
アプリケーション10は、プリンタ2に対する印刷要求元であり、印刷要求を行うユーザは、ディスプレイに表示される設定画面に従って、印刷時の各種印刷条件を設定する。印刷条件としては、A4、A3、B4など用紙の種類、用紙が縦方向か、横方向であるかを示す印刷方向、カラー印刷を行うかモノクロ印刷を行うかの設定などがある。ユーザが印刷を行う際には、キーボードまたはマウスなどにより入力される操作信号に基づいて当該アプリケーション10、または、後述するプリンタドライバ11からその旨の要求を行う。このとき、アプリケーション10は、プリンタドライバ11に印刷要求および画像データを送信する。
プリンタドライバ11は、アプリケーション10からGDI(Graphic Device Interface)データを受け取って、プリンタ2が処理することができるデータ形式の印刷データを生成する。ここで、プリンタドライバ11は、オブジェクト毎に記述される画像データを画素毎の濃度値で表現された画像データに変換する処理を行っている。そして、変換後の画像データの色表現(RGBデータ)をプリンタ2で印刷される際の色表現に変換する色変換処理、その後のデータを圧縮する圧縮処理等も行う。すなわち、本実施形態では、いわゆるホストベースのシステムを想定している。
なお、プリンタドライバ11は、上述した色変換処理において、カラー印刷、モノクロ印刷などの印刷設定に従って、RGBデータを各種の画像データに変換する。すなわち、カラー印刷を行うと設定されている場合、C(シアン)、M(マゼンタ)、Y(イエロー)、K(ブラック)の各々について階調値をもつCMYKデータからなる画像データに変換する。モノクロ印刷に設定されている場合には、Kの濃度を表す階調値をもつKデータ、またはKの輝度を表す階調値をもつGrayデータが画像データに変換する。本実施形態では、上述したCMYKデータ、Grayデータ、Kデータの階調値は256階調(8ビット)で表現されることとしている。もっとも、変換する色表現、階調数はこれに限られるものではない。
なお、プリンタドライバ11は、上述した色変換処理において、カラー印刷、モノクロ印刷などの印刷設定に従って、RGBデータを各種の画像データに変換する。すなわち、カラー印刷を行うと設定されている場合、C(シアン)、M(マゼンタ)、Y(イエロー)、K(ブラック)の各々について階調値をもつCMYKデータからなる画像データに変換する。モノクロ印刷に設定されている場合には、Kの濃度を表す階調値をもつKデータ、またはKの輝度を表す階調値をもつGrayデータが画像データに変換する。本実施形態では、上述したCMYKデータ、Grayデータ、Kデータの階調値は256階調(8ビット)で表現されることとしている。もっとも、変換する色表現、階調数はこれに限られるものではない。
プリンタドライバ11は、画像の表示領域を高さ方向に所定の画素数ごとに分割した矩形形状の画像(以下、バンドという)に対応する画像データであるバンドデータを生成する。得られたバンドデータは、KCMYの順番に各色のバンドデータを送信する。また、アプリケーション10からの印刷要求に基づいて、各種印刷条件を示す制御コマンドが生成される。プリンタドライバ11は、バンドデータおよび制御コマンドからなる印刷データを、I/F12を介して所定の順番でプリンタ2に送信する。このように、本印刷システム1では、バンドの順番に従って画像データを送信するバンド順次のデータ転送を行う。なお、本実施形態では、バンドの高さを64画素としている。
次に、プリンタドライバ11が送信する印刷データについて説明する。
図2は、プリンタドライバがプリンタに送信する印刷データのデータ構成とデータ転送の順番を示した図である。図2に示すように、印刷データは、ヘッダ(1)〜(3)および画像データであるバンドデータから構成されている。また、図2は、複数ページの画像データを含む1つの印刷ジョブの印刷データを送信する際の、データの順番を示している。印刷データの送信が開始されると、始めに、ヘッダ(1)が送信される。ヘッダ(1)は、印刷データの先頭に付与された印刷データ全体の制御情報である。具体的には、ヘッダ(1)は、600dpiというように当該印刷データが想定している解像度を示す解像度情報などを有している。ヘッダ(1)の次には、各ページの画像データが送信されるが、各ページのデータの先頭にはヘッダ(2)が付与されている。ヘッダ(2)は、ページごとに付与される制御情報であり、当該ページの総バンド数を示す総バンド数情報、当該ページを印刷するために用いる用紙サイズを示す用紙サイズ情報、画像データの描画領域を示す描画領域情報などを有している。ヘッダ(2)の次にはヘッダ(2)に対応するページの画像データが送信される。ここで、上述したように、バンド順次のデータ転送を行うので、バンドデータを順番に送信することにより画像データの送信が行われている。例えば、図2では、各色のバンドデータを、“K,C,Y,M”と表しており、これに付随する数字がバンドの順番を示している。画像データを送信する際には、始めに送信するバンドデータのCMYKデータをK1,C1,M1,Y1の順にを送信してから、次に2つめのバンドデータのCMYKデータをK2,C2,M2,Y2の順に送信する。このように、各色のデータをバンドごとに順次送信することにより1ページ目の画像データの送信を行っている。そして、総バンド数情報が示すバンド数だけバンドデータの送信を繰り返すと1ページ目の画像データの送信が完了する。次に、2ページ目の画像データについて、ヘッダ(2)と当該ページのバンドデータを送信する。このようにして、印刷データが有するページ数だけ画像データの送信を繰り返した後には、プリンタドライバ11は、ヘッダ(3)を送信して印刷データの送信を終了する。ヘッダ(3)は、印刷データの送信の終了を示す情報を有した制御情報である。
図2は、プリンタドライバがプリンタに送信する印刷データのデータ構成とデータ転送の順番を示した図である。図2に示すように、印刷データは、ヘッダ(1)〜(3)および画像データであるバンドデータから構成されている。また、図2は、複数ページの画像データを含む1つの印刷ジョブの印刷データを送信する際の、データの順番を示している。印刷データの送信が開始されると、始めに、ヘッダ(1)が送信される。ヘッダ(1)は、印刷データの先頭に付与された印刷データ全体の制御情報である。具体的には、ヘッダ(1)は、600dpiというように当該印刷データが想定している解像度を示す解像度情報などを有している。ヘッダ(1)の次には、各ページの画像データが送信されるが、各ページのデータの先頭にはヘッダ(2)が付与されている。ヘッダ(2)は、ページごとに付与される制御情報であり、当該ページの総バンド数を示す総バンド数情報、当該ページを印刷するために用いる用紙サイズを示す用紙サイズ情報、画像データの描画領域を示す描画領域情報などを有している。ヘッダ(2)の次にはヘッダ(2)に対応するページの画像データが送信される。ここで、上述したように、バンド順次のデータ転送を行うので、バンドデータを順番に送信することにより画像データの送信が行われている。例えば、図2では、各色のバンドデータを、“K,C,Y,M”と表しており、これに付随する数字がバンドの順番を示している。画像データを送信する際には、始めに送信するバンドデータのCMYKデータをK1,C1,M1,Y1の順にを送信してから、次に2つめのバンドデータのCMYKデータをK2,C2,M2,Y2の順に送信する。このように、各色のデータをバンドごとに順次送信することにより1ページ目の画像データの送信を行っている。そして、総バンド数情報が示すバンド数だけバンドデータの送信を繰り返すと1ページ目の画像データの送信が完了する。次に、2ページ目の画像データについて、ヘッダ(2)と当該ページのバンドデータを送信する。このようにして、印刷データが有するページ数だけ画像データの送信を繰り返した後には、プリンタドライバ11は、ヘッダ(3)を送信して印刷データの送信を終了する。ヘッダ(3)は、印刷データの送信の終了を示す情報を有した制御情報である。
インターフェイス(I/F)12は、プリンタ2と相互に通信可能に接続されており、上述した印刷データをプリンタ2に送信する。
なお、通常、ホストコンピュータ3は、プリンタ2に対応したドライバプログラムを実行してプリンタドライバ11として機能する。この場合、プリンタ2に対応したプリンタドライバ11であるので、プリンタ2は印刷データの制御情報(ヘッダ(1)〜ヘッダ(3))に基づいて、画像データを印刷することができる。
ここで、様々な利用環境のもとでは、プリンタドライバ11に対応していないプリンタ2により印刷が行われる状況が発生することがある。例えば、ホストコンピュータ3がモバイルコンピュータであれば、ユーザは移動先で印刷を試みる場合があるため、A4用紙対応のプリンタ用のプリンタドライバから、A3用紙対応のプリンタに印刷データが転送されるような状況が発生する。さらに、プリンタの機種によっては、A4対応のプリンタはA4用紙の長辺方向に沿って印刷を行うが、A3用紙対応のプリンタでは、A4用紙の短辺方向に沿って印刷を行うというように、プリンタの機種によっては同じ種類の用紙に対しても用紙の方向が異なる場合がある。この場合、プリンタドライバ11はA4用紙の長辺方向を用紙の方向として画像データを生成する一方で、実際の印刷はA4用紙の短辺方向に沿って行われることになる。このようなとき、従来のプリンタでは、用紙形状が異なるため1枚の用紙に収めて印刷することができなくなり、1ページ分の画像を複数のページに分けて印刷されていた。図3は、画像データを印刷した結果を説明するための図である。図3(a)は、縦方向にセットされたA4用紙に、縦方向の印刷に対応する画像データを印刷した印刷物を示している。このときの印刷方向は用紙の縦方向である。同図に示すように、正しい方向に印刷された画像は、画像の描画領域が1ページの用紙の内部に収まっている。図3(b)は、同じ画像データを横方向にセットされたA4用紙に印刷した印刷物の1ページ目を示している。この印刷結果では図3(a)の描画領域が1枚の用紙に収まっていない。このように、ホストベースプリンタでは用紙の種類が合っていても、用紙がセットされた方向である用紙の方向が画像の方向と異なっているときは正しく印刷が行われないことがある。そこで、例えば、特許文献1,2に記載されているプリンタでは、プリンタが用紙の方向に合わせて画像データを回転させる処理を行っている。このようにすれば、正しい方向に印刷することはできる。しかし、多数のページを印刷する際には、全ページの画像データを変換する必要が生じるので多大な演算量が必要になる。本発明のプリンタ2は、特にバンド順次のデータ転送において、画像データの印刷方向とプリンタ2が用紙の方向とが一致していない場合に行う処理に特徴を有するものである。
プリンタ2は、前記ホストコンピュータ3から送信される印刷データを受信して、ページ単位で印刷を実行するいわゆる4サイクルのレーザプリンタである。図1に示すように、プリンタ2は、制御部20、印刷エンジン21を備えている。制御部20は、入出力インターフェイス(以下、入出力I/Fという)30、CPU31、ROM32、RAM33およびエンジンインターフェイス(以下、エンジンI/Fという)36を有している。
入出力I/F30は、ホストコンピュータ3から送信される印刷データを受信する。
ROM32は、プリンタ2を制御するための各種プログラムを記憶している。また、詳細は後述するが、ROM32には用紙の方向と画像の方向が異なる旨を表示する状態表示画像の画像データ(図8(a)参照)を記憶している。
RAM33は、CPU31が後述する処理を行うために使用する汎用のメモリであり、RAM33の記憶領域上にはページ記憶部34およびブロック記憶部35が形成されている。ページ記憶部34は、印刷データ等をページごとに格納する記憶領域であり、入出力I/F30が受信した印刷データは、いったんページ記憶部34に格納される。ブロック記憶部35は後述するブロックを記憶するための記憶領域である。なお、詳細は後述するが、アドレス参照テーブルもRAM33の所定の記憶領域に記憶される。
CPU31は、プリンタ2において行われる各種処理を制御する部分である。CPU31は、特に、受信した印刷データをページ記憶部34に格納する処理、印刷データに含まれる制御情報を解釈して用紙の方向を判断する処理、用紙の方向に合わせて画像データを変換する処理、印刷エンジン21に対して印刷処理を指示する処理などを司る。CPU31が実行する処理は、ROM32またはRAM33に記憶されたプログラムに従って行われる。
エンジンI/F36は、印刷エンジン21が印刷を実行する際に、所定のタイミングでページ記憶部34に格納されている画像データを読み出し、それらに所定の処理を施した後に印刷エンジン21に引き渡す、制御部20と印刷エンジン21とのインターフェースを司る部分である。このエンジンI/F36には、図示していないが、データを一時的に格納するメモリ、解凍部、スクリーン処理部等が備えられ、RAM33から読み出した画像データに対して、圧縮されたデータの解凍、ドットのデータへ変換するスクリーン処理などがなされる。これらの処理を行うエンジンI/F36の処理回路は、具体的には、ASIC(Application Specific Integrated Circuit)で構成されている。
以上に説明した制御部20の各構成は、図1に示すように、相互にデータ授受可能に接続されている。
図4は、制御部20の機能的構成を示した図である。図4に示すように、制御部20は、印刷データ取得部40、印刷方向判断部(判断手段)41、バンドデータ変換部(バンド変換手段)42、ブロック生成部(ブロック取得手段)43、ブロック回転部(整列手段)44、ブロック圧縮部45、バンドデータ生成部(バンド構築手段)46、圧縮部47とを有している。CPU31が、入出力I/F30、ROM32、RAM33、ページ記憶部34、ブロック記憶部35およびエンジンI/F36を動作させて処理を行うことにより、制御部20が上記した各構成として機能している。図5および図6は制御部20が行う処理を説明するための図である。以下、制御部20の各構成が行う処理について図を用いて説明する。
印刷データ取得部40は、入出力I/F30が受信した印刷データよりバンドデータおよびヘッダ(1)〜(3)からなる制御情報を取得する。ここで図5上段に示すように、プリンタドライバ11は、画像を64画素の高さごとに区分したバンドデータを、画像データの上側に位置するバンドデータから順に送信している。この送信する順番を、mで表すこととする。そして、画像データの総バンド数をMとすると、M番目のバンドデータを受信すると、画像データの全バンドデータを取得したことになる。したがって、図5上段に示す画像データは“m=1”のバンドデータから順に送信され、図5中上段には、印刷データ取得部40が“m=1”のバンドデータを取得した様子が示されている。
印刷方向判断部41は、印刷データのヘッダ(1)およびヘッダ(2)が有する制御情報に基づいて、印刷する用紙の方向と画像の方向(画像の印刷方向)とが合っているか否かを判断する。ここで、制御情報に基づいた判断の方法について説明する。印刷方向判断部41は、まず、ヘッダ(1)が有している解像度情報およびヘッダ(2)が有している用紙サイズ情報から印刷する用紙の描画領域を算出する。ここでは、用紙サイズと解像度とを乗算することにより印刷する用紙の描画領域を算出する。次に、ヘッダ(2)が有している画像データの描画領域情報から、画像の描画領域を取得する。こうして得られた印刷する用紙の描画領域と画像の描画領域とを比較することにより、用紙の方向と画像の方向が一致しているか否かを判断することができる。例えば、印刷する用紙の描画領域が縦長の形状であり、画像の描画領域が横長の形状となっていた場合、用紙の方向と画像の方向が90°ずれており、一致していないと判断する。用紙の方向と画像の方向が一致していない場合、以下に述べる処理を行う。用紙の方向と画像の方向とが一致している場合は、エンジンI/F36は、画像データを、そのまま印刷エンジン21に転送して通常の印刷を行うことになる。
バンドデータ変換部42は、用紙の方向と画像の方向とが一致していない場合に、バンドデータをKデータ(1ビット)に変換する。バンドデータがCMYK各色8ビットで表したCMYKデータの場合、バンドデータを構成する各画素ごとに、所定の変換式に基づいて変換を行う。例えば、次に示す式(1)〜式(3)を用いてCMYKデータをRGBデータに変換した後に、式(4)による変換を行うことにより、まずGrayデータを取得することができる。
R=255−(C+K)…(1)
G=255−(M+K)…(2)
B=255−(Y+K)…(3)
Gray=(77×R+151×G+28×B)/256 …(4)
取得したGrayデータは、次式によりK(8ビット)データに変換される。
K(8ビット)=255−Gray …(5)
K(8ビット)データは、例えば次に示す式(6)によりK(1ビット)データに変換することができる。ここで、int()は小数点以下の値を切り捨て整数を出力する関数である。
K(1ビット)=int(K(8ビット)/255) …(6)
また、バンドデータがGrayデータ(8ビット)であった場合、式(5)および式(6)の変換式によりK(1ビット)データに変換する。Kデータ(8ビット)であった場合については、式(6)の変換式によりK(1ビット)で表したデータに変換する。なお、以上に説明した変換式は一例であって、この変換式に限られるものではない。例えば、式(6)においてK(8ビット)データを所定の閾値で区切ることによってK(1ビット)データを得るとしてもよいし、CMYデータから直接、Grayデータ、Kデータに変換する変換式を用いるとしてもよい。もちろん、2〜3ビット程度のKデータに変換するとしてもよい。また、本実施形態では、データ量を少なくするために階調数および色数を変換しているが、バンドデータの解像度を小さくするとしてもよい。
R=255−(C+K)…(1)
G=255−(M+K)…(2)
B=255−(Y+K)…(3)
Gray=(77×R+151×G+28×B)/256 …(4)
取得したGrayデータは、次式によりK(8ビット)データに変換される。
K(8ビット)=255−Gray …(5)
K(8ビット)データは、例えば次に示す式(6)によりK(1ビット)データに変換することができる。ここで、int()は小数点以下の値を切り捨て整数を出力する関数である。
K(1ビット)=int(K(8ビット)/255) …(6)
また、バンドデータがGrayデータ(8ビット)であった場合、式(5)および式(6)の変換式によりK(1ビット)データに変換する。Kデータ(8ビット)であった場合については、式(6)の変換式によりK(1ビット)で表したデータに変換する。なお、以上に説明した変換式は一例であって、この変換式に限られるものではない。例えば、式(6)においてK(8ビット)データを所定の閾値で区切ることによってK(1ビット)データを得るとしてもよいし、CMYデータから直接、Grayデータ、Kデータに変換する変換式を用いるとしてもよい。もちろん、2〜3ビット程度のKデータに変換するとしてもよい。また、本実施形態では、データ量を少なくするために階調数および色数を変換しているが、バンドデータの解像度を小さくするとしてもよい。
ブロック生成部43は、バンドデータを分割することにより、バンドデータより小さな処理単位であるブロックを取得する。図5中下段は、図5中上段に示したバンドデータのうち、Kのバンドデータを分割した一例を示している。分割する間隔としては、バンドの高さと同じ間隔で、バンドデータを幅方向に分割することとした。すなわち、本実施形態では各バンドデータが高さ方向に64画素の高さを有しているので、64画素間隔でバンドデータを幅方向に分割することにより縦横64×64画素からなる正方形のブロックを得ている。ここで、図5中下段に示すように、分割することにより得られたブロックはB1(m,n)と表記する。(m,n)はブロックの座標を示している。mは垂直(高さ)方向に並んだバンドデータの番号であり、nは水平(幅)方向に並んだブロックを示す番号である。Nは1つのバンドデータから得られるブロックの数である。図5中下段では、“m=1“のバンドデータからブロックB1(1,1)〜B1(1,N)を取得している。また、図5の例では、ブロックB1(1,1)には”A“、ブロックB1(1,2)には”B“、ブロックB1(1,3)には”C“の文字が表示されている。
上述したバンドデータを分割してブロックを生成する処理は、実際には、ページ記憶部34に記憶されたバンドデータのアドレスのうち、各ブロックB1の中央に位置する階調値が記憶されているアドレスを、RAM33に記憶されているアドレス参照テーブルに記憶することにより行われる。図7は、アドレス参照テーブルを示した図である。図7(a)には、ブロックの座標ごとに、ブロックB1(1,1)〜B1(M,N)を記憶しているページ記憶部34のアドレスが記憶されているアドレス参照テーブルが示されている。ここで記憶しているアドレスは、実際にはブロックB1の中央に位置する階調値を記憶しているアドレスである。ページ記憶部34からデータを読み出す際には、CPU31はアドレス参照テーブルを参照して、ブロックの中心に位置する階調値が記憶されているアドレスからブロックが記憶されているアドレス範囲を算出する。算出したアドレス範囲の記憶領域にアクセスすることによって、ブロックごとのデータを読み出すことができる。
なお、画像の幅方向の画素数が64で割り切れない値である場合、64画素間隔で分割した際に、最後に分割されたブロックは64画素の幅に満たないことになる。このような場合は、足りない画素について、空白の階調値を付加することにより64×64画素のブロックを生成するとよい。具体的には、バンドデータはKデータに変換されているので、階調値“0”を付加し、階調値が与えられていても実際には印刷が行われないようにして処理する。
ブロック回転部44は、印刷方向判断部41が取得した用紙の方向と画像の方向に基づいて座標変換を行うことにより、ブロックB1を回転させる処理を行う。ブロックB1(1,1)〜B1(1,N)を回転させることにより、図5下段に示すように、時計回りに90°回転させたブロックB2(1,1)〜B2(1,N)が得られる。このように、ブロックB1(m,n)を回転させることにより、用紙の方向と画像の方向が一致した回転後のブロックB2(m,n)が得られる。
ブロック圧縮部45は、ブロックB2に可逆圧縮を行う。圧縮したブロックは、回転前のブロックが記憶されていたページ記憶部34の記憶領域と同じ記憶領域に記憶される。アドレス参照テーブルには、図7(b)に示すように、圧縮されたブロックB2が記憶されているアドレスが記憶される。
バンドデータ生成部46は、圧縮したブロックB2(m,n)を配置して構築することにより画像の方向を用紙の方向に合わせたバンドデータを生成する。図6は、ブロックを配置することによりバンドデータを構築する処理を説明する図である。図6上段には、1ページ分のブロックB2(m,n)が配置されている様子が示されている。構築後のブロックB3(m,n)は、ブロックB2の座標を時計回りに90°回転させる座標変換を行うことにより得られる。例えば、図6の例にあるように、ブロックB2(1,1)が変換されてブロックB3(1,M)、ブロックB2(1,N)が座標変換されてブロックB3(N,M)となる。
さらに、図6下段に示すように、構築後のブロックB3(m,n)を水平方向(n方向)に結合することによりバンドデータが得られる。
さらに、図6下段に示すように、構築後のブロックB3(m,n)を水平方向(n方向)に結合することによりバンドデータが得られる。
上述したバンドデータを構築する処理では、配置前後のアドレス参照テーブルにおいて、ブロックが記憶されているアドレスを書き換えることにより各ブロックの座標変換を行っている。図7(c)は、図7(b)に示すアドレス参照テーブルについて、構築した後のアドレス参照テーブルを示した図である。例えば、図7(b)の構築前のアドレス参照テーブルでは、座標(1,1)に対応してB2(1,1)が記憶されているアドレスが格納されているが、図7(c)の構築後のアドレス参照テーブルでは、座標(1,1)にはB2(M,1)が記憶されているアドレスが格納されている。このように、ブロックのデータが記憶されている記憶領域を直接処理することなく、アドレス参照テーブルの記憶先アドレスを書き換えることにより、バンドデータを構築する処理を行っている。
また、バンドデータ生成部46は、上述して得られた画像データに対して、用紙の方向と画像の方向が違っていることを表す状態表示画像を付与する処理も行っている。図8は状態表示画像を示す図である。図8(a)には状態表示画像の一例が示されている。図8に示すように、状態表示画像50は、用紙の方向と画像の方向が違っていることを視覚的に知らせる画像であり、用紙の方向を画像の方向に合わせて得られた画像データと共に、用紙に印刷するための画像である。ユーザは、用紙に印刷された状態表示画像50を見ることにより用紙の方向と画像の方向とが異なっていたことを容易に知ることができる。状態表示画像50を画像データに付与する処理は以下のようにして行う。
状態表示画像50を画像データに付与する処理は、ブロックを処理単位として行う。図8(b)は、図8(a)に示した状態表示画像50をブロックの状態に分割した様子を示した図である。ここで、状態表示画像50のブロックをB4と表記する。ブロックB4は上述したバンドデータのブロックBと同じ大きさであり、本実施形態では64×64画素の大きさを有している。状態表示画像50は、図8(b)に示すようにブロックに分割した状態で、ブロックごとにROM32に記憶されている。
画像データの中で状態表示画像50を配置する位置は、例えば、画像の中央と予め決められている。CPU31は、バンドデータごとに、状態表示画像50を配置すべきブロックの座標を計算して、当該ブロックの座標に状態表示画像50のブロックB4を配置すべきかを判断している。そして、状態表示画像50を表示すべき座標であった場合には、当該座標のブロックB3に代えて、状態表示画像50のブロックB4を配置することによりバンドデータを構築する。このとき、実際には、アドレス参照テーブルにおいて、バンドデータのブロックB2の記録先のアドレスをブロックB4を記録しているROM32上のアドレスに書き換えることにより処理している。図9は、状態表示画像50を配置した際のアドレス参照テーブルの一例を示す図である。図9では、図7(c)に示すアドレス参照テーブルに、ブロックB4を記憶したアドレスを記録したときの様子が示されている。上述したように、CPU31がブロックB4を配置すべき座標を計算するのであるが、図9の例では、座標(a,b)〜(a+4,b+2)に状態表示画像50のブロックB4(1,1)〜b4(5,3)を配置するとした場合に、”m=a“のバンドデータについてアドレスを書き換えている。例えば、座標(a,b)にはブロックB4(1,1)を配置するので、ブロックB4(1,1)を記憶するアドレスが記憶されている。同じバンドデータに含まれる、座標(a,b+1)〜(a,b+2)についても、各座標に対応してブロックB4(1,2)〜ブロックB4(1,3)が記憶されているアドレスに書き換える。このようにしてバンドデータを構築することによって、状態表示画像50を付与したバンドデータを得ることができる。
圧縮部47は、バンドデータの可逆圧縮を解凍する処理、バンドデータをドットデータへ変換するスクリーン処理等を行った後に、印刷エンジン21へデータを送信するためにデータの圧縮を行う。
以上に述べたように、制御部20は、用紙の方向と画像の方向とが異なる場合に画像データをブロックごとに回転させることによって、用紙の方向に一致した方向をもつ画像データを生成する。
次に、印刷エンジン21は、エンジンI/F36から出力されたデータに基づく印刷処理を実行し、用紙などの印刷媒体に対する印刷を行う。印刷エンジン21は、帯電ユニット、露光ユニット、現像ユニット、転写ユニット、定着ユニット等(図示なし)を有している。そして、エンジンI/F36より受信したデータに基づいて、給紙トレイ(図示なし)などから供給された用紙に転写ユニットによる転写処理、定着ユニットによる定着処理を順次行うことにより画像を印刷する。
図10は、1つの印刷ジョブについて印刷システム1が行う処理の流れを示したフローチャートである。以上に説明した構成を有する本実施形態に係る印刷システム1が行う処理の流れについてフローチャートにしたがって説明する。なお、ステップS1およびステップS4は印刷データ取得部40、ステップS2〜ステップS3は印刷方向判断部41、ステップS5はバンドデータ変換部42、ステップS6はブロック生成部43、ステップS8はバンドデータ生成部46、ステップS10は圧縮部47、が行う処理である。
ホストコンピュータ3から印刷要求および印刷データが送信されると、図10に示す処理を開始し、ステップS1において、プリンタ2のCPU31は、当該印刷要求による印刷データを入出力I/F30を介して受信する。ここでは、印刷データの先頭に付与された制御情報であるヘッダ(1)およびヘッダ(2)を取得する。また、ヘッダ(1)およびヘッダ(2)の制御情報に基づいて、印刷ジョブに対する各種印刷条件が決定される。
次に、ステップS2において、プリンタ2が受信した印刷データのヘッダ(1)に含まれる解像度情報、ヘッダ(2)に含まれる用紙サイズ情報、描画領域情報からCPU31は、印刷する用紙の描画領域および画像の描画領域を算出する。
次に、ステップS3では、CPU31は、ステップS2で取得した印刷する用紙の描画領域および画像データの描画領域から、用紙の方向と画像の方向が異なるか否かを判断する。用紙の方向と画像の方向とが異なる場合(Yes)、ステップS4へ進む。一致している場合(No)、ステップS12へ進む。ステップS12においては、CPU31は、ブロックに分割する処理、ブロックを回転させる処理などを行うことなく通常の印刷を行うが、本発明の特徴部分ではないため詳細な説明は省く。
ステップS4では、入出力I/F30が印刷データのヘッダ(2)の次に送信されるバンドデータを受信することにより、CPU31は、バンドデータを取得する。取得したバンドデータは、ページ記憶部34に格納する。
ステップS5では、CPU31は、バンドデータを階調変換する処理を行う。図11は、バンドデータを階調変換する処理の流れを示す図である。バンドデータを階調変換する処理を開始すると、ステップS50において、CPU31は、バンドデータがCMYKデータであるか否かを判断する。CMYKデータの場合、ステップS51へ進む。CMYKデータでない場合、ステップS52へ進む。
ステップS51では、CPU31は、式(1)〜式(6)の変換式に従う演算を行うことにより、CMYKデータ(8ビット)であるバンドデータからKデータ(1ビット)であるバンドデータを得る。得られたバンドデータは、ページ記憶部34に格納する。バンドデータを変換する処理を終えると、ステップS6に進む。
ステップS52では、CPU31は、バンドデータがGrayデータであるか否かを判断する。Grayデータの場合、ステップS53へ進む。Grayデータでない場合、ステップS54へ進む。
ステップS53では、CPU31は、式(5)および式(6)の変換式に従って、Grayデータ(8ビット)であるバンドデータからKデータ(1ビット)であるバンドデータを得る。得られたバンドデータは、ページ記憶部34に格納する。バンドデータを変換する処理を終えると、ステップS6に進む。
ステップS54では、CPU31は、バンドデータがKデータの多値データであるか否かを判断する。K多値データの場合、ステップS55へ進む。K多値データでない、すなわち、Kデータ(1ビット)からなる2値画像データである場合、ステップS6へ進む。
ステップS55では、CPU31は、式(6)の変換式に従って、K多値データ(8ビット)であるバンドデータからKデータ(1ビット)であるバンドデータを得る。得られたバンドデータは、ページ記憶部34に格納する。バンドデータを変換する処理を終えると、ステップS6に進む。
図10のフローチャートに戻り、ステップS6では、CPU31は、バンドデータからブロックを生成する処理を行う。図12は、バンドデータからブロックを生成する処理の流れを示すフローチャートである。なお、ステップS62はブロック回転部44、ステップS63はブロック圧縮部45が行う処理である。
バンドデータからブロックを生成する処理を開始すると、ステップS60において、CPU31は、バンドデータをブロックに分割する処理を行う。ここで、上述したように、バンドデータを記憶したページ記憶部34の記憶領域上において、各ブロックに対応するデータを記憶したアドレスをRAM33上のアドレス参照テーブルに記憶してブロックごとのデータの記憶領域のアドレスを得ることによりブロックの分割が行われる。
次に、ステップS61において、CPU31はステップS60で得られたブロックB1のうちの1つを選択する。
次に、ステップS62において、ブロックB1を回転させる処理を行う。実際には、CPU31は、ページ記憶部34に記憶されたブロックB1の各画素の座標ごとに座標変換を行って対応する画素の値を算出し、変換後の座標の画素に記憶された画素値をブロック記憶部35に書き込むようにして処理が行われる。したがって、回転させる処理を終えるとブロック記憶部35には回転後のブロックB2のデータが記憶されている。
次に、ステップS63において、CPU31は、ブロック記憶部35に記憶されている回転後のブロックB2に対して可逆圧縮を行う。
次に、ステップS64において、CPU31は、圧縮したブロックB2をページ記憶部34に記憶することにより、ブロックの登録を行う。ここで、ページ記憶部34のメモリ容量を節約するためページ記憶部34の記憶領域のうち回転前のブロックB1が記憶されている記憶領域に、回転・圧縮したブロックB2を書き換えるようにして格納する。このとき、CPU31は、ブロックB2を記録した記憶領域のアドレスを、アドレス参照テーブルに記録する。
次に、ステップS65において、CPU31は、当該バンドデータの全てのブロックについてステップS61〜ステップS64の処理を行ったか否かを判断する。処理を行っていた場合(Yes)、ステップS7へ進む。処理を行っていなかった場合(No)、ステップS61へ戻り別のブロックに対して処理を行う。
図10のフローチャートに戻り、ステップS7では、1ページ目の画像データの全てのバンドデータについて処理を行ったか否かを判断する。全てのバンドデータについて終えていた場合(Yes)、ステップS8へ進む。処理を終えていない場合(No)、ステップS4へ戻り、次のバンドデータの処理を行う。
ステップS8では、バンドデータを構築する処理を行う。図13はバンドデータを構築する処理の流れを示すフローチャートである。バンドデータを構築する処理を開始すると、ステップS80において、ブロックを配置する座標を求める処理を行う。ここでは、CPU31が、RAM33に記憶されたアドレス参照テーブルを参照することにより、全てのブロックについて配置するべき座標を計算する。計算した座標に対応するブロックの記憶先のアドレスがアドレス参照テーブルに記憶される。
次に、ステップS81では、画像データに状態表示画像50の画像データを付与する処理を行う。上述したように状態表示画像50を表示する位置は、予め決められているので、CPU31は、状態表示画像50のブロックごとに、配置すべき位置を計算する。そして、RAM33に記憶されているアドレス参照テーブルを参照して、ブロックを記憶しているアドレスを記憶している記憶領域に、状態表示画像50のブロックを記憶しているアドレスを上書きする。
次に、ステップS82では、CPU31は、アドレス参照テーブルに基づいてバンドデータを生成する。バンドデータを構築する処理を終えると、ステップS9へ進む。
図10のフローチャートに戻り、ステップS9では、生成されたバンドデータを圧縮する。ここでは、CPU31は、生成されたバンドデータをアドレス参照テーブルを参照してページ記憶部34から読み出して、エンジンI/F36に引き渡す。そして、エンジンI/F36が圧縮する処理を行う。
次に、ステップS10では、エンジンI/F36は、圧縮したバンドデータを印刷エンジン21に送信する。印刷エンジン21は、受信したバンドデータに基づいて印刷を行う。
次に、ステップS11では、CPU31は、1ページ分の全てのバンドデータを送信したか否かを判断する。全てのバンドデータを送信していた場合(Yes)、1ページ分の画像データが印刷されたことになるので処理を終了する。全てのバンドデータを送信していない場合(No)、ステップS8に戻り次のバンドデータについての処理を行う。
なお、図12のフローチャートにおけるステップS60がブロック取得工程、ステップS61がブロック記憶工程、ステップS62が整列工程、図10のフローチャートにおけるステップS8がバンド構築工程、ステップS10が印刷工程に相当する。
以上に述べた処理を行うことにより、用紙の方向と画像の方向が一致していない場合、印刷物が1ページだけ得られる。図14は、図3(a)に示した画像を本印刷システム1により印刷した印刷物の一例を示す図である。用紙の方向と画像の方向が異なっている場合でも、図14に示すように、用紙の方向に合わせて回転させることにより、用紙の方向と画像の方向が一致している画像を得ることができる。また、用紙の方向と画像の方向が違っている旨を示す状態表示画像50が印刷され、2ページ目以降のページについては印刷されない。ユーザは、1ページの印刷物から用紙の方向と画像の方向が一致していなかったことを知ることができるので、再び画像データまたはプリンタ2の設定を変えて、印刷し直すことができる。
以下、本実施形態の効果を記載する。
(1)バンドデータを分割して、ブロックごとに回転させるとしたことによりバンド順次のデータ転送においても、適切にバンドデータを回転させる処理を施すことができる。
(2)用紙の方向と画像の方向とが異なる場合に、バンドデータよりデータ量が小さいブロックごとに回転させる処理を行うので、バンドデータそのものを回転させる場合に比べて、回転させる処理に用いられるブロック記憶部35に要するメモリ容量をより少なくすることができる。
(3)正方形のブロックとなるようにバンドデータを分割した。正方形のブロックを扱うためブロックを90°回転させる処理の前後でのブロック中央の位置は変化しない。そこで、ブロックB1の中央に位置する画素の階調位置が記憶されているアドレスを、アドレス参照テーブルに記憶して管理している。ブロックの全画素の記憶先アドレスを管理する必要がなくなるので、回転前後のブロックの管理が容易になる。
(4)ブロックを正方形としたことにより、ブロックを90°回転させる処理の前後でのブロックの形状が変わることがない。そのため、ページ記憶部34の記憶領域のうち回転前のブロックB1が記憶されている記憶領域に、回転・圧縮したブロックB1を書き換えるようにして格納することができるようになった。そのため、バンドデータを正方形形状に分割することによって、ページ記憶部34のメモリ容量を少なくすることができる。
(5)用紙の方向と画像の方向とが一致するか否かを判断し、用紙の方向と画像の方向とが異なる場合にのみ、画像を回転させるとしたので、プリンタ2は印刷データに合わせて適切な処理を行うことができる。
(6)用紙の方向と画像の方向が一致していない場合に、1ページ目の画像のみを印刷する。2ページ目以降を印刷しないとしたことにより、2ページ目以降のページの印刷に要する回転させる処理を行わないので、多大な処理量、印刷時間を要することがない。
(7)本来印刷すべき画像に加えて状態表示画像50を印刷しているので、ユーザは状態表示画像50から、用紙の方向と画像の方向が一致していないことを容易に知ることができる。
(8)ステップS5において、画質を落とす変換を行うことによりデータ量を少なくしているので、ブロック記憶部35に要するメモリ容量を少なくすることができる。また、処理するデータ量が少なくなるので、処理時間をより短縮することができる。なお、印刷物の画質が落ちることになるが、上述したように、用紙の方向と画像の方向が一致していない場合に、1ページ目の印刷物をみることにより方向が誤っていることを知ったユーザは、印刷設定を変えてから、再度全ページの印刷を行うことになるため問題ない。
以上、本発明の一実施形態を説明したが、本発明はこうした実施の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施することもできる。以下、変形例を挙げて説明する。
(変形例1)
前記実施形態では、プリンタ2は1ページ分のバンドデータを受信してから、ステップS8のバンドを構築する処理を行う必要がある。ここで、プリンタドライバ11で行われる設定には、フライング印刷を行う旨の設定が含まれている場合がある。フライング印刷とは、1ページ分の画像データを受信することを待たずに、ある程度の画像データが格納された時点で印刷エンジンへのデータ転送を開始する印刷方法である。この設定は、印刷データの制御情報に含まれる。しかしながら、前記実施形態のプリンタ2では、バンドを構築する処理を行うため1ページ分の画像データが格納されている必要があるので、フライング印刷が設定されていた場合であってもこれに対応することはできない。したがって、フライング印刷を行う設定がなされた印刷データを受信した際であっても、プリンタ2は、フライング印刷設定を無視して、印刷するとすればよい。
前記実施形態では、プリンタ2は1ページ分のバンドデータを受信してから、ステップS8のバンドを構築する処理を行う必要がある。ここで、プリンタドライバ11で行われる設定には、フライング印刷を行う旨の設定が含まれている場合がある。フライング印刷とは、1ページ分の画像データを受信することを待たずに、ある程度の画像データが格納された時点で印刷エンジンへのデータ転送を開始する印刷方法である。この設定は、印刷データの制御情報に含まれる。しかしながら、前記実施形態のプリンタ2では、バンドを構築する処理を行うため1ページ分の画像データが格納されている必要があるので、フライング印刷が設定されていた場合であってもこれに対応することはできない。したがって、フライング印刷を行う設定がなされた印刷データを受信した際であっても、プリンタ2は、フライング印刷設定を無視して、印刷するとすればよい。
(変形例2)
前記実施形態では、用紙の方向と画像の方向が異なる場合に、印刷データの画像と状態表示画像50とを共に印刷することとした。この状態表示画像50はユーザに印刷条件を誤ったことを知らせる機能があるため、印刷データの画像は印刷することなく状態表示画像50のみを印刷するとすることもできる。例えば、プリンタ2が受信した印刷データが、電子透かし情報が付加されている場合がある。このような場合の印刷データは機密度の高い画像や、著作権が関与している画像であると考えられるため、不要な印刷は行わないことが望ましい。そこで、CPU31は受信した印刷データに電子透かし情報が付加されていると判断した場合は、画像データを印刷することなく、状態表示画像50だけを印刷する。
前記実施形態では、用紙の方向と画像の方向が異なる場合に、印刷データの画像と状態表示画像50とを共に印刷することとした。この状態表示画像50はユーザに印刷条件を誤ったことを知らせる機能があるため、印刷データの画像は印刷することなく状態表示画像50のみを印刷するとすることもできる。例えば、プリンタ2が受信した印刷データが、電子透かし情報が付加されている場合がある。このような場合の印刷データは機密度の高い画像や、著作権が関与している画像であると考えられるため、不要な印刷は行わないことが望ましい。そこで、CPU31は受信した印刷データに電子透かし情報が付加されていると判断した場合は、画像データを印刷することなく、状態表示画像50だけを印刷する。
(変形例3)
前記実施形態では、用紙の方向と画像の方向が異なる場合に、印刷データの画像データと状態表示画像50とを印刷することとした。しかし、状態表示画像50が印刷された印刷物が得られることになるので、ユーザが本来所望していない画像を印刷しているともいえる。ここで、例えば、前記実施形態にある印刷システム1が、印刷した印刷物の枚数に応じて、ユーザに課金される場合であっては、不要な印刷は極力行わないことが望ましい。そこで、課金が行われるような印刷システム1では、用紙の方向と画像の方向が異なる場合には、印刷を行わないこととするとよい。
前記実施形態では、用紙の方向と画像の方向が異なる場合に、印刷データの画像データと状態表示画像50とを印刷することとした。しかし、状態表示画像50が印刷された印刷物が得られることになるので、ユーザが本来所望していない画像を印刷しているともいえる。ここで、例えば、前記実施形態にある印刷システム1が、印刷した印刷物の枚数に応じて、ユーザに課金される場合であっては、不要な印刷は極力行わないことが望ましい。そこで、課金が行われるような印刷システム1では、用紙の方向と画像の方向が異なる場合には、印刷を行わないこととするとよい。
(変形例4)
前記実施形態では、印刷データの制御情報から用紙の方向と画像の方向が一致しているか否かを判断した。用紙の方向と画像の方向が一致しているかを判断する方法は、この方法に限られることなく、第4の変形例では、ヘッダ(2)から求めた画像の描画領域と、プリンタの給紙トレイごとに設定された用紙情報から判断する。また、ヘッダ(2)から求めた画像の描画領域と、プリンタ2の給紙トレイに備えたセンサなどにより検出した実際の用紙の方向とから判断するとしてもよい。
前記実施形態では、印刷データの制御情報から用紙の方向と画像の方向が一致しているか否かを判断した。用紙の方向と画像の方向が一致しているかを判断する方法は、この方法に限られることなく、第4の変形例では、ヘッダ(2)から求めた画像の描画領域と、プリンタの給紙トレイごとに設定された用紙情報から判断する。また、ヘッダ(2)から求めた画像の描画領域と、プリンタ2の給紙トレイに備えたセンサなどにより検出した実際の用紙の方向とから判断するとしてもよい。
(変形例5)
前記実施形態では、用紙の方向と画像の方向とが異なっている場合に、ブロックを回転させることにより方向を修正した画像を1ページ分だけを印刷した。第5の変形例では、ブロックを回転させることなく、異なった方向のままの画像を1ページのみ印刷する。このようにしても、ユーザは1ページの印刷物を見ることにより所望の印刷結果となっていないことを知ることができる。また、回転させる処理は行わないが、1ページのみを印刷しているため無駄に用紙・インクを浪費することはない。なお、この場合であっても、状態表示画像50を印刷するとしてもよい。
前記実施形態では、用紙の方向と画像の方向とが異なっている場合に、ブロックを回転させることにより方向を修正した画像を1ページ分だけを印刷した。第5の変形例では、ブロックを回転させることなく、異なった方向のままの画像を1ページのみ印刷する。このようにしても、ユーザは1ページの印刷物を見ることにより所望の印刷結果となっていないことを知ることができる。また、回転させる処理は行わないが、1ページのみを印刷しているため無駄に用紙・インクを浪費することはない。なお、この場合であっても、状態表示画像50を印刷するとしてもよい。
(変形例6)
前記実施形態では、用紙の方向と画像の方向とが異なっている場合の処理に特徴があった。第6の変形例では、印刷条件の違いにより複数のページが印刷される場合に、1ページ目だけを印刷する。例えば、用紙の方向と画像の方向とが異なっている場合の他、画像のサイズと用紙サイズとが異なっている場合にも1ページにのみ印刷する処理を行う。具体的には、A3用紙に印刷するための画像をA4用紙に印刷する場合は、用紙の方向と画像の方向とが同じであっても、複数のページのA4用紙に分けて印刷が行われる。このような場合、各ページはユーザが所望する印刷物ではなくなる。第6の変形例では、印刷方向判断部41は、ヘッダ(1)およびヘッダ(2)から、用紙の方向の他に印刷するサイズを含めた印刷条件が合っていないか否かを判断する。印刷条件があっていないと判断した場合、1ページ目のバンドデータについて、ドットデータへ変換するスクリーン処理等を行った後に、印刷エンジン21へデータを送信する。印刷エンジン21は、1ページ分のデータに基づいて1ページ目だけを印刷する。このように、印刷条件が合っていない場合、始めの1ページのみを印刷することにより、用紙の浪費を防止することができる。画像データと用紙の大きさが異なる旨を表示する状態表示画像50も印刷することにより、ユーザは印刷条件が合っていないことを知ることができる。
前記実施形態では、用紙の方向と画像の方向とが異なっている場合の処理に特徴があった。第6の変形例では、印刷条件の違いにより複数のページが印刷される場合に、1ページ目だけを印刷する。例えば、用紙の方向と画像の方向とが異なっている場合の他、画像のサイズと用紙サイズとが異なっている場合にも1ページにのみ印刷する処理を行う。具体的には、A3用紙に印刷するための画像をA4用紙に印刷する場合は、用紙の方向と画像の方向とが同じであっても、複数のページのA4用紙に分けて印刷が行われる。このような場合、各ページはユーザが所望する印刷物ではなくなる。第6の変形例では、印刷方向判断部41は、ヘッダ(1)およびヘッダ(2)から、用紙の方向の他に印刷するサイズを含めた印刷条件が合っていないか否かを判断する。印刷条件があっていないと判断した場合、1ページ目のバンドデータについて、ドットデータへ変換するスクリーン処理等を行った後に、印刷エンジン21へデータを送信する。印刷エンジン21は、1ページ分のデータに基づいて1ページ目だけを印刷する。このように、印刷条件が合っていない場合、始めの1ページのみを印刷することにより、用紙の浪費を防止することができる。画像データと用紙の大きさが異なる旨を表示する状態表示画像50も印刷することにより、ユーザは印刷条件が合っていないことを知ることができる。
(変形例7)
前記実施形態では、ブロックごとに回転させて得られる画像を、階調数を少なくして1ページのみ印刷するとしたが、回転させた画像を階調数を少なくすることなく、全ページ印刷するとしてもよい。このとき、状態表示画像を付与するとしてもよい。
前記実施形態では、ブロックごとに回転させて得られる画像を、階調数を少なくして1ページのみ印刷するとしたが、回転させた画像を階調数を少なくすることなく、全ページ印刷するとしてもよい。このとき、状態表示画像を付与するとしてもよい。
(変形例8)
前記実施形態では、ブロックごとに回転させて得られる画像を、階調数を少なくして1ページのみ印刷するとしたが、回転させた画像を階調数を落とすことなく1ページだけを印刷するとしてもよい。また、このとき、状態表示画像50を印刷しないようにすれば、最初の1ページは、ユーザが所望の印刷物の1ページ目として有効に使用することができるので、再度印刷をしなおす際にも1ページ目を印刷しなおす必要がなくなる。
前記実施形態では、ブロックごとに回転させて得られる画像を、階調数を少なくして1ページのみ印刷するとしたが、回転させた画像を階調数を落とすことなく1ページだけを印刷するとしてもよい。また、このとき、状態表示画像50を印刷しないようにすれば、最初の1ページは、ユーザが所望の印刷物の1ページ目として有効に使用することができるので、再度印刷をしなおす際にも1ページ目を印刷しなおす必要がなくなる。
(変形例9)
前記実施形態では、プリンタ2が4サイクルのレーザプリンタであったが、いわゆるタンデム式のプリンタやモノクロのプリンタであってもよい。また、インクジェットプリンタなど、他の印刷方式のプリンタであってもよい。また、本発明は、プリンタに限らず複写機などにも適用することができる。
前記実施形態では、プリンタ2が4サイクルのレーザプリンタであったが、いわゆるタンデム式のプリンタやモノクロのプリンタであってもよい。また、インクジェットプリンタなど、他の印刷方式のプリンタであってもよい。また、本発明は、プリンタに限らず複写機などにも適用することができる。
1…印刷システム、2…印刷装置としてのプリンタ、3…ホストコンピュータ、10…アプリケーション、11…プリンタドライバ、12…インターフェイス、20…制御部、21…印刷手段としての印刷エンジン、31…CPU、32…状態表示ブロック記憶手段としてのROM、33…RAM、34…バンド記憶手段としてのページ記憶部、35…ブロック記憶手段としてのブロック記憶部、40…印刷データ取得部、41…印刷判断手段としての印刷判断部、42…バンド変換手段としてのバンドデータ変換部、43…ブロック取得手段としてのブロック生成部、44…整列手段としてのブロック回転部、45…ブロック圧縮部、46…バンド構築手段としてのバンドデータ生成部、47…圧縮部、50…状態表示画像、B…ブロック、B2…回転後のブロック、B3…構築後のブロック、B4…状態表示画像のブロック、m…バンドデータを示す番号または垂直方向のブロックの座標、n…ブロックを示す番号または水平方向のブロックの座標、M…画像データの総バンド数、N…1つのバンドデータから得られるブロックの数。
Claims (12)
- 所定の印刷方向に対応した画像を所定の高さで区分したバンドごとに受信し、前記バンドに基づいて前記画像を所定の方向の用紙に印刷する印刷装置であって、
前記バンドを分割することにより複数のブロックを取得するブロック取得手段と、
前記ブロックを回転させることにより、前記ブロックにおける前記画像の印刷方向を、前記用紙の方向に合わせて整列する整列手段と、
複数の整列したブロックを結合することにより、バンドを構築するバンド構築手段と、
構築後のバンドに基づいて印刷する印刷手段と、を備えることを特徴とする印刷装置。 - 請求項1に記載の印刷装置において、
前記受信したバンドを記憶するバンド記憶手段と、
前記ブロックを記憶するブロック記憶手段を更に備え、
前記整列手段は、前記バンド記憶手段に記憶されているブロックを読み出してから、前記ブロック記憶手段を用いてブロックを回転させることを特徴とする印刷装置。 - 請求項2に記載の印刷装置において、
前記ブロック取得手段は、前記バンドの高さと同じ幅で前記バンドを分割することにより複数のブロックを取得することを特徴とする印刷装置。 - 請求項3に記載の印刷装置において、
前記整列手段は、回転後のブロックを回転前のブロックが記憶されていた前記バンド記憶手段の記憶領域に記憶することを特徴とする印刷装置。 - 請求項1ないし4のいずれかの一項に記載の印刷装置において、
前記バンド構築手段は、前記画像の印刷方向と前記用紙の方向が一致していない場合に、印刷するべきページのうちの1ページに対応するバンドのみを構築することを特徴とする印刷装置。 - 請求項5に記載の印刷装置において、
前記バンドに対して、画質を落とす変換を行うバンド変換手段を更に備えることを特徴とする印刷装置。 - 請求項5または6に記載の印刷装置において、
前記画像の印刷方向と前記用紙の方向とが一致していない旨を表す状態表示画像を分割した状態表示ブロックを記憶する状態表示ブロック記憶手段を更に備え、
前記バンド構築手段は、前記ブロックおよび前記状態表示ブロックから、バンドを構築することを特徴とする印刷装置。 - 所定の印刷方向に対応した画像を所定の高さで区分したバンドごとに受信し、前記バンドに基づいて前記画像を所定の方向の用紙に印刷する印刷装置であって、
前記画像の印刷方向と前記用紙の方向が一致していない場合に、印刷するべきページのうちの1ページに対応するバンドについて、前記バンドを回転させることにより、前記バンドにおける前記画像の印刷方向を、前記用紙の方向に合わせて整列する整列手段と、
前記整列したバンドに基づいて印刷する印刷手段と、を備えることを特徴とする印刷装置。 - 所定の印刷方向に対応した画像を所定の高さで区分したバンドごとに受信し、前記バンドに基づいて前記画像を所定の方向の用紙に印刷する印刷装置であって、
前記バンドを回転させることにより、前記バンドにおける前記画像の印刷方向を、前記用紙の方向に合わせて整列する整列手段と、
前記整列したバンドに対して、前記画像の印刷方向と前記用紙の方向と一致していない旨を表す状態表示画像を付与することにより、前記状態表示画像を含むバンドを構築するバンド構築手段と、
前記構築したバンドに基づいて印刷する印刷手段と、を備えることを特徴とする印刷装置。 - 所定の印刷方向に対応した画像を所定の高さで区分したバンドごとに受信し、前記バンドに基づいて前記画像を所定の方向の用紙に印刷する印刷方法であって、
前記バンドを分割することにより複数のブロックを取得するブロック取得工程と、
前記ブロックを回転させることにより、前記ブロックにおける前記画像の印刷方向を、用紙の方向に合わせて整列する整列工程と、
複数の整列したブロックを結合することにより、バンドを構築するバンド構築工程と、
構築後のバンドに基づいて印刷する印刷工程と、を備えることを特徴とする印刷方法。 - 所定の印刷方向に対応した画像を所定の高さで区分したバンドごとに受信し、前記バンドに基づいて前記画像を所定の方向の用紙に印刷する印刷方法であって、
印刷するべきページのうちの1ページに対応するバンドについて、前記バンドを回転させることにより、前記バンドにおける前記画像の印刷方向を、前記用紙の方向に合わせて整列する整列工程と、
前記整列したバンドに基づいて印刷する印刷工程と、を備えることを特徴とする印刷方法。 - 所定の印刷方向に対応した画像を所定の高さで区分したバンドごとに受信し、前記バンドに基づいて前記画像を所定の方向の用紙に印刷する印刷方法であって、
前記バンドを回転させることにより、前記バンドにおける前記画像の印刷方向を、前記用紙の方向に合わせて整列する整列工程と、
前記整列したバンドに対して、前記画像の印刷方向と前記用紙の方向と一致していない旨を表す状態表示画像を付与することにより、状態表示画像を含むバンドを構築するバンド構築工程と、
前記構築したバンドに基づいて印刷する印刷工程と、を備えることを特徴とする印刷方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004350817A JP2006159468A (ja) | 2004-12-03 | 2004-12-03 | 印刷装置および印刷方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004350817A JP2006159468A (ja) | 2004-12-03 | 2004-12-03 | 印刷装置および印刷方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006159468A true JP2006159468A (ja) | 2006-06-22 |
Family
ID=36662004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004350817A Withdrawn JP2006159468A (ja) | 2004-12-03 | 2004-12-03 | 印刷装置および印刷方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006159468A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008006740A (ja) * | 2006-06-30 | 2008-01-17 | Kyocera Mita Corp | 画像形成装置および画像形成プログラム |
JP2019083438A (ja) * | 2017-10-31 | 2019-05-30 | ブラザー工業株式会社 | プログラム |
-
2004
- 2004-12-03 JP JP2004350817A patent/JP2006159468A/ja not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008006740A (ja) * | 2006-06-30 | 2008-01-17 | Kyocera Mita Corp | 画像形成装置および画像形成プログラム |
JP2019083438A (ja) * | 2017-10-31 | 2019-05-30 | ブラザー工業株式会社 | プログラム |
JP2021141592A (ja) * | 2017-10-31 | 2021-09-16 | ブラザー工業株式会社 | プログラム |
JP7047962B2 (ja) | 2017-10-31 | 2022-04-05 | ブラザー工業株式会社 | プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20100103435A1 (en) | Image processing apparatus and image processing method for processing screen-processed image | |
US7760389B2 (en) | Image forming device having resolution compensation function and method thereof | |
JP2005354414A (ja) | 画像処理装置及びその方法 | |
US8441690B2 (en) | Image processing apparatus and image processing method for processing screen-processed image | |
JP5212886B2 (ja) | 画像形成システム、及び、画像形成プログラム | |
JP2010118927A (ja) | プログラム、記録媒体、画像処理装置、画像処理方法および階調補正パラメータ生成用シート | |
US20050213123A1 (en) | Image forming apparatus and storage medium | |
JP4205000B2 (ja) | 画像処理装置、画像出力装置、画像入力装置、および複合機 | |
JP2007122478A (ja) | 印刷制御装置、印刷制御方法、プログラム、及び記憶媒体 | |
JP5103304B2 (ja) | 画像処理装置、画像処理方法及び画像処理プログラム | |
JP2008118447A (ja) | 画像形成装置及び画像形成方法ならびにそのプログラム | |
JP2006159468A (ja) | 印刷装置および印刷方法 | |
JP2000013600A (ja) | 画像処理装置及びその方法 | |
US8437046B2 (en) | Image processing apparatus and method for outputting an image subjected to pseudo-halftone processing | |
JP4753253B2 (ja) | 画像処理装置 | |
JP4412363B2 (ja) | 画像処理装置 | |
US8228573B2 (en) | System and method for interactively acquiring optical color measurements for device color profiling | |
US20050200645A1 (en) | Image forming apparatus and storage medium | |
US20050213126A1 (en) | Image forming apparatus and image reading apparatus | |
JP4130550B2 (ja) | プロファイル生成装置、プロファイル生成方法、プログラムおよび記録媒体 | |
JP2011187000A (ja) | 画像形成装置、画像形成システム及び制御プログラム | |
JP4222303B2 (ja) | 画像形成装置 | |
US9444963B2 (en) | Non-transitory storage medium storing printer driver used by application software that generates print script from original in accordance with ability of image forming apparatus, and printing method | |
JPH11196246A (ja) | 画像形成装置 | |
JP2006101285A (ja) | 画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20070404 |
|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080205 |