図1は、本実施形態における印刷装置100が備える印刷機構を示す図である。給紙トレイ101には印刷用紙が格納されている。給紙ローラ103は、給紙トレイ101に格納されている印刷用紙を搬送ローラ105、106に給紙する。印刷用紙104は、給紙ローラ103により給紙され、搬送ローラ105、106により搬送されている印刷用紙である。図1のように、印刷用紙104は、搬送ローラ105、106により部材107、108による搬送路を通り、搬送ローラ109、110へ搬送される。搬送ローラ109、110は、印刷用紙104をプラテン111に搬送する。
またプラテン111の上部には印刷ヘッド112を搭載したキャリッジ113が設けられている。キャリッジ113は、ガイドレール114に沿って図1に示すA方向(図1中手前から奥に向かう方向)、B方向(図1中奥から手前に向かう方向)に往復走査する。印刷装置100は、キャリッジ113をA方向、B方向に走査させながら、印刷ヘッド112に駆動パルスを印加することにより印刷ヘッド112からインク等の記録剤を吐出させる。このように印刷ヘッド112から印刷用紙104に記録剤が吐出されることで、印刷用紙104に印刷対象の画像が印刷される。画像が印刷された印刷用紙104はさらに搬送ローラ109、110により、排紙ローラ115、116に搬送される。排紙ローラ115、116は印刷用紙104を、排紙トレイ117に排紙する。
またキャリッジ113には、反射型の光学センサである用紙センサ118が設けられている。印刷装置100は、この用紙センサ118が受光した光の強さを示す出力レベル(出力電圧)を取得し、その出力レベルが印刷用紙からの反射光に対応するレベルであるか判定することにより、当該受光された位置に印刷用紙が存在するか検出することができる。また上記のように、用紙センサ118はキャリッジ113に設けられており、印刷ヘッド112とともに走査される。そして印刷装置100は、用紙センサ118の走査が行われる範囲について印刷用紙104が存在するか検出することで、当該走査の範囲における印刷用紙の端部を判定することができる。そして当該印刷用紙の左右の端部間の距離に基づいて、当該印刷用紙の幅を検出することができる。この検出処理の詳細について図2を用いて説明する。用紙センサ118(キャリッジ113)の走査位置は後述するエンコーダ224によって検出される。
印刷装置100は、上記の給紙トレイ101、プラテン111、印刷ヘッド112、キャリッジ113、ガイドレール114、排紙トレイ117、また上記の各種のローラを印刷機構として備える。
図2は、用紙センサ118による用紙幅の検出を説明するための図である。
上記のように、印刷装置100はキャリッジ113をガイドレール114に沿って矢印A方向、B方向に往復移動させながら印刷ヘッド112に記録剤を吐出させることにより、印刷用紙104上に画像を印刷する。またキャリッジ113の移動範囲(用紙センサの位置x)においてプラテン111から外れた位置には、印刷ヘッド112のキャッピングを行うためにヘッド回復機構119が設けられている。用紙センサの位置xは、後述するエンコーダ224により検出されたキャリッジ113の位置により特定される。
また用紙センサ118はプラテン111上を走査しながら光を受光し、受光された光の出力レベルを検出する。図2に示すグラフは、キャリッジ113の移動範囲において用紙センサ118が検出した出力レベルを示す。なお本実施形態においては、印刷用紙は白色等の明るい色であり、プラテン111は黒色等の暗い色である。よって印刷用紙がプラテン111に存在する位置については高い出力レベル(印刷用紙からの強い反射光)が取得され、印刷用紙が存在しない位置については低い出力レベル(プラテン111からの弱い反射光)が検出される。
用紙センサ118は、キャリッジ113がヘッド回復機構119の位置にいるときにプラテン111における位置Eの反射光を受光する。そして、キャリッジ113がA方向に向かって移動すると、印刷用紙104の端部に対応する位置で出力レベルが上がる。そして、印刷用紙104の端部から反対側の端部までは、およそ一定の出力レベルが取得され、端部において出力レベルが下がる。
本実施形態においては、用紙センサ118の出力レベルが所定の閾値Vthを超える場合に、当該出力レベルが検出された位置に印刷用紙104が存在するものと判定する。具体的には、図2における位置G、位置Fが印刷用紙104の端の位置であり、位置G〜位置Fまでの範囲を、印刷用紙104が存在する範囲とする。そして、位置G〜位置Fの距離を、印刷用紙104の用紙幅として検出する。
なお本実施形態において印刷装置100は、印刷用紙の中心がプラテン111の中央位置Cとなるように、印刷用紙104を中央寄せで搬送する。このとき仮に印刷用紙104が大きく、図2において印刷用紙104の右端が位置Eよりも右側であった場合、印刷用紙104の右端の位置を検出できないことがある。
そこで本実施形態において印刷装置100は、印刷用紙104の右端の位置が位置Eよりも右にある場合、中央位置Cと印刷用紙104の左端の位置Gとの距離により、印刷用紙104の用紙幅を判定する。具体的には、まず位置Eにおける出力レベルがVthを超える場合、印刷用紙104の右端の位置が位置Eもしくは位置Eよりも右側であると判定される。このように判定された場合、中央位置Cと位置Gの距離を2倍した長さが、印刷用紙104の用紙幅として検出される。即ち、印刷装置100は印刷用紙104の中心が中央位置Cとなるように印刷用紙104を搬送するため、中央位置Cと印刷用紙104の左端の位置Gとの距離が用紙幅の半分の長さとなる。よって印刷装置100は、中央位置Cと位置Gとの距離を2倍した長さを用紙幅として検出することができる。なお、キャリッジの走査範囲における中央位置Cを示す値が印刷装置100内のメモリに予め記憶されており、印刷装置100はこの値を参照することで、中央位置Cと位置Gとの距離を求めることができる。
なお、上記の閾値Vthは固定の値でなくてもよく、例えば位置Eにおける出力レベルに応じて閾値を変更する場合であってもよい。また印刷媒体の表面の特性による反射光の強さに応じて閾値Vthを決定してもよい。具体的には、印刷に用いられる用紙の種別(普通紙、光沢紙等)に応じて、閾値Vthを変更する。さらに、印刷用紙の有無を検出する方法として、上記のように出力レベルが閾値を超えるか判定する方法でなく、位置Eにおける出力レベルと他の位置における出力レベルの比較結果から印刷用紙の有無を検出してもよい。例えば、位置Eの出力レベルにより位置Eにおいて印刷用紙が存在しないと判定した場合に、その出力レベルから所定値以上大きな出力レベルの位置に印刷用紙が存在すると判定してもよい。
また、図2の方法では、キャリッジ113に用紙センサ118を設け、用紙センサ118が移動しながら検出を行う例について説明したが、これに限らない。例えばプラテン111上にキャリッジ113とは個別に用紙センサが設けられる場合であってもよい。この場合、印刷用紙の搬送路の幅に対応する数の用紙センサを並べて配置し、各用紙センサが印刷用紙の存在を検出したか判定することにより、印刷用紙の幅を判定することができる。
次に、印刷装置100の構成を説明する。図3は、印刷装置100の構成を示すブロック図である。
CPU201は、印刷装置100を制御するプロセッサである。CPU201は内部バス202を介して、ROMやハードディスク等のプログラムメモリ203とRAM等のデータメモリ204と接続されている。プログラムメモリ203には、印刷装置100を制御するためのプログラムが格納されている。CPU201は、プログラムメモリ203に格納されているプログラムをデータメモリ204に読み出し、データメモリ204に割り当てられているワークメモリ205上で実行することにより、印刷装置100を制御することができる。またデータメモリ204には、画像メモリ206も割り当てられており、印刷装置100において印刷される画像データなどの各種のデータがCPU201により画像メモリ206に展開される。
インタフェース制御部207は、CPU201の制御によりインタフェースを介してスマートフォン等のスマートデバイス208と通信を行う。例えば、スマートデバイス208から印刷対象のジョブを受信し、また印刷装置100のステータス情報をスマートデバイス208へ通知することができる。なお、インタフェース制御部207は、USB(Universal Serial Bus)ケーブル等の有線のインタフェースを介して通信を行ってもよいし、または赤外線通信や無線LAN等の無線インタフェースを介して通信を行ってもよい。なお、スマートデバイスとは、例えばスマートフォン、タブレットであり、また携帯電話など各種のデバイスを含む。
また通信相手は、スマートデバイス208に限らずパーソナルコンピュータであってもよい。その他、ネットワークを介して接続されたサーバであってもよいし、電話回線を介して接続されたファクシミリ装置や、デジタルテレビ等の装置であってもよい。また、印刷ジョブに印刷対象のデータが含まれている場合に限らず、印刷ジョブに含まれているアドレス情報に従って印刷装置100がサーバ等の外部装置から印刷対象のデータを取得する場合であってもよい。
モータ制御部209はCPU201による制御により、印刷装置100の印刷機構を駆動するための各種モータを制御する。搬送モータ210は、モータ制御部209の制御に従って、図1で示した給紙ローラ103、搬送ローラ105、106、109、110、排紙ローラ115、116を駆動する。キャリッジモータ211(CRモータ)は、モータ制御部209の制御に従ってキャリッジ113を駆動し、キャリッジ113を往復移動させる。また回復モータ212は、モータ制御部209の制御に従ってヘッド回復機構119を駆動する。
ヘッド制御部213は、CPU201の制御に従って印刷ヘッド112を制御し、印刷ヘッド112にインク等の記録剤を吐出させる。CPU201は印刷ヘッド112と搬送モータ210を共に駆動させることで、印刷ヘッド112を走査させながら印刷用紙に画像を印刷させる。即ち、印刷装置100内のCPU201が印刷制御装置として動作し、印刷機構としての各種のモータ、印刷ヘッド112を制御して、当該印刷機構に画像を印刷させる。
センサ制御部214は、CPU201の制御に従って、用紙センサ118に含まれるセンサ光源215を発光させ、また用紙センサ118が備える光学センサ216に反射光を受光させる。またセンサ制御部214は、光学センサ216が受光した光の強さを示す出力レベルを取得する。CPU201は、センサ制御部214が取得した出力レベルを取得することで、図2で示した用紙幅の判定を行うことができる。なお、CPU201は後述する処理により、上記のように判定された用紙幅に応じて、用紙長も含めた用紙サイズを判定する。
パネル制御部217は、CPU201の制御に従って、操作パネル218を制御する。なお、操作パネル218は、キーやタッチパネルなどユーザが操作を行う操作デバイスと、画像等の各種の情報を表示できる表示パネルを含む。例えばユーザが操作パネル218の操作デバイスを操作すると、ユーザの指示がパネル制御部217に入力され、その指示がさらにCPU201に入力される。またパネル制御部217がCPU201の指示に応じて、画像メモリ206に展開されている画像を操作パネルの表示パネルに表示する。
スキャナ制御部219は、CPU201の制御に従って、スキャナ220を制御し、スキャナ220の原稿台に載置されている原稿をスキャナ220に読み取らせ、その読取画像を入力する。またスキャナ制御部219を画像メモリ206に格納する。メモリカード制御部221は、CPU201の制御により、メモリカードスロット222に装着されたメモリカード223に対して各種のデータの書き込み、読み出しを行う。
エンコーダ224は、ガイドレール114に沿ってキャリッジ113が走査するときのキャリッジ113の位置を特定する。CPU201は、エンコーダ224により特定されたキャリッジ113の位置と、キャリッジ113における用紙センサ118の取り付け位置により、図2に示した用紙センサの位置xを特定する。
本実施形態においてCPU201は、上記のように用紙センサ118により判定された用紙幅に応じて、用紙長も含めた用紙サイズを判定する。なお、本実施形態の印刷装置100は、用紙センサ118が印刷ヘッド112とともにキャリッジ113に設けられている。そして、キャリッジ113を移動させるための各種のモータやガイドレール114、キャリッジ113の位置を特定するためのエンコーダ224等の部材は、印刷ヘッド112による印刷と用紙センサ118による用紙幅の検出の両方に共通して用いられる。そのため、印刷のための部材とは別に、用紙幅の検出のために上記の部材を設けなくてもよく、印刷装置100が大型化してしまうことを防ぐことができる。
図4は、本実施形態における用紙サイズテーブルを示す図である。図4(a)の用紙サイズ管理テーブルは、印刷装置100で使用され得る用紙サイズ300と、当該サイズの用紙幅301、用紙長302、縦横比(アスペクト比)303が含まれている。なお、用紙幅301、用紙長302の単位はミリメートル(mm)である。
なお用紙サイズテーブルはプログラムメモリ203に格納されており、CPU201は、プログラムメモリ203からデータメモリ204に用紙サイズテーブルを読み出すことで用紙サイズテーブルを参照することができる。なお、用紙幅301の情報はテーブル形式で保持される場合に限らず、用紙サイズに対応付けて用紙幅301を記憶する種々の方法が採用される。
本実施形態においてCPU201は、用紙センサ118により検出された用紙幅に応じて印刷用紙のサイズを判定する。具体的には、CPU201は用紙サイズテーブルにおいて、用紙センサ118により検出された用紙幅の所定範囲内にある用紙幅301を持つ用紙サイズ300を、印刷装置100において搬送されている印刷用紙104のサイズとして特定する。このように所定の範囲を設ける理由は、例えば印刷用紙の状態や印刷装置100が置かれている環境によって印刷用紙からの反射光の強さが異なるために、用紙センサ118の検出結果と実際の用紙幅の間に誤差が生じる場合があるからである。
そこで例えば上記所定の範囲を上下3mmとして、用紙センサ118により用紙幅として126.0mmが検出された場合、123.0mm〜129.0mmに含まれる用紙幅301に対応する用紙サイズ300を、印刷用紙のサイズの候補として特定する。図4(a)の用紙サイズテーブルに示されているように、この場合、用紙幅301(127.0mm)に対応する2L判が候補として特定される。
またこのように用紙サイズが一意に特定される場合に限らず、用紙幅が近い複数の用紙サイズが、当該印刷媒体のサイズの候補として特定される場合がある。例えば用紙センサ118により用紙幅として99.0mmが検出された場合、用紙幅の範囲96.0mm〜102.0mmに封筒洋形6号(用紙幅98.0mm)、はがき(用紙幅100.0mm)、4×6判(用紙幅101.6mm)が含まれる。同様に、用紙幅として213.0mmが検出された場合、A4サイズ(用紙幅210.0mm)とレター(用紙幅215.9mm)が用紙サイズの候補として特定される。
本実施形態においては、印刷用紙のサイズが印刷設定として設定されている場合、用紙センサ118による印刷用紙のサイズの1または候補にユーザ指定のサイズが含まれているか判定される。そして、その判定により、ユーザ指定のサイズが候補に含まれている場合に、その指定されたサイズに応じた画像を当該印刷用紙に印刷させる。
また、印刷設定として設定されている印刷用紙のサイズが候補に含まれていない場合、印刷が制限される。
よって、例えば印刷に使用される印刷用紙のサイズと大きく異なるサイズをユーザが誤って指定していた場合、またはユーザが指定したサイズと大きく異なるサイズの印刷用紙が搬送された場合に、適切な処理を行うことができる。具体的には、そのような場合に、印刷用紙と大きさが大きく異なる画像が印刷されてしまうことを防ぐことができる。本実施形態の上記処理の詳細については後述する。
なお、上記の印刷設定は、例えば印刷ジョブを印刷装置100に送信する装置であるホストコンピュータやスマートデバイスにおいてユーザの指示に応じて設定される。具体的には、印刷用紙のサイズや印刷用紙の種別、印刷が行われる際に印刷用紙に設けられる余白に関する設定についてユーザが指示するための表示画面が、ホストコンピュータやスマートデバイスにより表示される。例えばユーザが印刷対象のデータを選択した後に上記表示画面上で印刷設定を指示することで、当該印刷対象のデータの印刷に対する印刷設定を指示することができる。このようにユーザに指示された印刷設定を示す印刷設定情報が、印刷対象のデータとともにホストコンピュータやスマートデバイスから印刷装置100に送信される。なお印刷設定情報と印刷対象のデータとを含む印刷ジョブとして印刷装置100に送信されてもよいし、印刷対象のデータと印刷設定情報とがそれぞれ個別に送信されてもよい。また例えばDPOF (Digital Print Order format)ファイルのように、設定用紙サイズを含む印刷設定情報が1つのファイルとして、印刷対象のデータを含むファイルとは別に印刷装置100に送信されてもよい。
なお、図2を用いて説明したように、本実施形態においては印刷用紙104が大きい場合に印刷用紙104の片端が用紙センサ118により検出されないことがあり、このとき中央位置Cと位置Gとの距離に基づく計算により用紙幅が判定される。この場合、例えば印刷用紙104の特性等により、印刷用紙104の中心が中央位置Cから外れて搬送されてしまうことがある。よって、印刷用紙104の片端が検出されなかった場合には、上記所定の範囲を±3mmではなく±10mmなど比較的広く設定するようにしてもよい。この場合、例えば用紙幅210mmが検出されると、往復はがき(用紙幅200.0mm)、六切(用紙幅203.2mm)、A4サイズ(用紙幅210.0mm)とレター(用紙幅215.9mm)が用紙サイズの候補として特定される。
また上記の例では、用紙センサ118の検出結果である用紙幅を中心に、所定の範囲内(例えば±3mm)に含まれる用紙サイズを特定していた。しかしこれに限らず、検出結果よりも所定幅(例えば+3mm)大きい範囲に含まれる用紙サイズを特定してもよいし、逆に所定幅小さな範囲に含まれる用紙サイズを特定してもよい。また印刷用紙の種別(普通紙、光沢紙等)によって上記所定の範囲を変更するようにしてもよい。例えば印刷用紙が光沢紙の場合、普通紙の場合に比べて反射光が強い。このとき、本来は印刷用紙の位置ではない位置において用紙センサ118が取得した出力レベルが上記閾値Vthを越えてしまい、当該位置に印刷用紙があるものと判定してしまう可能性がある。よって、例えば印刷用紙の種別が普通紙の場合には±3mmの範囲を設定し、光沢紙の場合には、―6mmの範囲を設定するようにしてもよい。その他、用紙センサ118の特定等、種々の条件に応じて上記所定の範囲を設定してよい。
また上記の説明では、図4(a)に示した用紙サイズテーブルを用いて用紙サイズの判定を行っていたが、別の例として、図4(b)の用紙サイズテーブルを用いてもよい。
図4(b)の用紙サイズテーブルは、図4(a)の用紙サイズテーブルに加えて、用紙幅が近い用紙を示す用紙情報304を含む。具体的には、テーブル内に記号(×)が記入されている用紙サイズが、テーブルにおいて当該用紙サイズに対応する用紙サイズと用紙幅が近いものである。例えばA4サイズとレターサイズは用紙幅が近いものとして用紙サイズテーブルにおいて指定されている。また封筒洋形6号、はがき、4×6判が、用紙幅が近いものとして指定されている。
CPU201は、プログラムメモリ203からデータメモリ204に図4(b)の用紙サイズテーブルを読み出すことで用紙幅301を参照することができる。そしてCPU201は、用紙センサ118により用紙幅が検出されたときに、検出された用紙幅に対応する用紙サイズを特定する。そして、用紙サイズテーブルにおいて当該用紙サイズに用紙幅が近い用紙サイズが指定されている場合には、その用紙幅が近い用紙サイズも含め、用紙サイズの複数の候補を特定する。
例えば、用紙センサ118により検出された用紙幅が90.0mmの場合、用紙サイズとしてL判が一意に特定される。一方、用紙センサ118により検出した用紙幅が99.0mmの場合、用紙サイズとして、当該検出された用紙幅に最も近いはがきサイズが特定され、さらにはがき以外にも、用紙情報304で指定されている封筒洋形6号、4×6判が特定される。
以上のようにCPU201は、図4(a)または図4(b)の用紙サイズテーブルに基づき、用紙幅301に加えて用紙長302も含めた印刷用紙の用紙サイズを判定する。そして、CPU201は、判定した用紙サイズに応じた印刷処理を実行する。
なおCPU201は、図4で示した用紙サイズ(定型サイズ)以外にも、任意の用紙サイズを用紙サイズとして設定して、印刷を行うことができる。具体的には、mm(ミリメートル)単位で用紙幅、用紙長を用紙サイズとして設定して、設定された用紙幅、用紙長に応じて印刷対象の画像を変倍することにより、設定された用紙サイズに対応する大きさの画像を印刷用紙に印刷することができる。
図5は、CPU201による印刷制御処理の一例を示すフローチャートである。なお図5に示すフローチャートの処理に対応するプログラムがプログラムメモリ203に格納されている。CPU201はこのプログラムをワークメモリ205に読み出し、ワークメモリ205上で実行することにより、図5に示すフローチャートの各ステップにおける処理を実現することができる。
CPU201はS501において、スマートデバイス208から印刷ジョブデータを受信し、受信した印刷ジョブデータをデータメモリ204の所定の領域に記憶させる記憶制御を行う。そして、印刷ジョブデータは順次コマンド解析され、各コマンドに応じた処理が行われる。なお、印刷ジョブデータには、当該印刷ジョブにおいて印刷が実行される印刷対象のデータや当該印刷における印刷設定を示す印刷設定情報が含まれている。即ち、S501では、印刷対象のデータ(もしくは印刷対象のデータに基づき展開された画像)や印刷設定情報をデータメモリ204に記憶させる記憶制御が実行される。
S502では、S501で受信された印刷ジョブデータのコマンド群のなかから上記の印刷設定情報を抽出し、印刷設定として設定された用紙サイズを取得してワークメモリ205の所定の領域に設定用紙サイズとして記憶する。この設定用紙サイズは、例えばスマートデバイス208において、スマートデバイス208のユーザが画面上で指定する。
S503においてCPU201は、印刷ジョブのデータフォーマットを取得してワークメモリ205の所定の領域に保存する。次にCPU201はS504において、S503において保存したデータフォーマットを判定し、該データフォーマットが、フィッティング処理対象であるか判定する。具体的には、S503において取得されたデータフォーマットが、フィッティング処理対象である所定のフォーマットであるか判定される。所定のフォーマットは、例えばJPEG(Joint Photographic Experts Group)である。S504では、S503においてJPEGがデータフォーマットとして取得されると、フィッティング処理対象であるとしてS505に進み、後述するフィッティング処理を行う。一方、S503において取得されたデータフォーマットが、PDF(Portable Document Format)である場合、ファイル内において予めページサイズが定義されている場合がある。よって、PDFではフィッティング処理対象でないフォーマットとしてS506に進み、後述する設定用紙サイズ印刷モード処理を行う。なお、印刷対象がPDFの場合、後述の設定用紙サイズは、印刷設定としてユーザにより指定されたサイズに限らず、PDFにおいて指定されているページサイズを設定用紙サイズとしてもよい。
S504における処理は、データフォーマットを参照する場合に限らず、印刷設定情報における変倍設定を参照してもよい。例えば自動変倍が変倍設定として設定されている場合、S504の判定ののち、S505に進むようにしてもよい。またS501において受信した印刷ジョブを送信した装置の種類や当該受信に使用されたプロトコル、S501において印刷ジョブを受信したときの印刷装置100のモードなど、各種の条件により、フィッティング処理の対象であるか判定してもよい。
図6は、図5のS505におけるフィッティング処理の処理内容を示すフローチャートである。
S601においてCPU201は印刷機構を制御して給紙動作を行う。これにより給紙トレイ101に積載された印刷用紙102のうち、一番上の一枚の印刷用紙104が給紙ローラ103によりピックアップされ、プラテン111の位置に印刷用紙104の先端が位置するところまで搬送される。次にCPU201はS602に進み、キャリッジ113および用紙センサ118を制御して紙幅検知動作を実行し、検知された用紙幅をワークメモリ205の所定の領域に用紙幅情報として記憶する。
次にCPU201はS603へ進み、S602で記憶した用紙幅情報を基に、図4で説明した用紙サイズテーブルを参照し、用紙幅情報が示す用紙幅に対応する定型サイズの用紙サイズを全て抽出する。これを候補用紙サイズ群としてワークメモリ205の所定の領域に記憶する。
次にCPU201はS604へ進み、後述するフィッティング処理を実行する。フィッティング処理が完了した後、CPU201はS605へ進み、印刷機構を制御することによって画像メモリ206に格納されたフィッティング済みの画像データを印刷用紙104上に印刷する。
図7は、図6のS604におけるフィッティング処理の詳細を示すフローチャートである。
CPU201はS701において、S501において受信された印刷ジョブがフチなし印刷指定されているかどうかを調べる。本実施形態においては、印刷ジョブ内の印刷設定情報において、フチなし印刷を行うか否かが余白設定として指定されている。例えば印刷ジョブを送信するスマートデバイス208において、ユーザが画面上でフチなし印刷を行わせるか否かを指定し、その指定が印刷設定情報に範囲される。S701では、この印刷設定情報を参照することにより、フチなし印刷を行うか否かを判定する。
S701において、フチなし印刷を実行しないと判定された場合にはS702へ進む。S702では、候補用紙サイズ群のそれぞれの用紙幅のうちの最小の用紙幅を取得し、レイアウト幅としてワークメモリ205の所定の領域に記憶する。次にS703では候補用紙サイズ群のそれぞれの用紙長のうちの最小の用紙長を取得し、レイアウト長としてワークメモリ205の所定の領域に記憶する。
一方、S701において、印刷ジョブにフチなし印刷が設定されていると判定された場合にはS704へ進む。S704では、候補用紙サイズ群のそれぞれの用紙幅のうちの最大の用紙幅を取得し、レイアウト幅としてワークメモリ205の所定の領域に記憶する。次にS705では候補用紙サイズ群のそれぞれの用紙長のうちの最大の用紙長を取得し、レイアウト長としてワークメモリ205の所定の領域に記憶する。
以上のS701からS705までの処理でレイアウト幅およびレイアウト長を決定すると、CPU201はS706へ進む。S706では、印刷ジョブデータに含まれている印刷対象のデータに基づく印刷対象の画像を、記憶されたレイアウト幅、レイアウト長に合わせて拡大縮小した上でデータメモリ204中の画像メモリ206に格納する。
図7に示す処理により、フチなし印刷が指定されている場合には、候補用紙サイズよりも大きなレイアウト領域に印刷対象の画像がレイアウトされる。よって、印刷装置にセットされている印刷用紙のサイズが候補用紙サイズ群のいずれであっても、フチなし印刷を実現することができる。
なお、上記の説明においてはフチあり印刷の場合もフチなし印刷の場合も候補用紙サイズ群全ての中から最大または最小の幅、長さを取得してレイアウト幅、レイアウト長を決定した。しかし印刷装置100のプラテン111の構成や、用紙の種類、利用用途に応じて、フチなし印刷をサポートしていない用紙サイズが含まれる場合がある。このような場合にはS704、S705で行うフチなし印刷の場合のレイアウト決定処理において候補用紙サイズ群の中からフチなし印刷をサポートしている用紙サイズに限定して最大の幅、最大の長さを取得するようにしてもよい。
図8は、図5のS506における設定用紙サイズ印刷モード処理の処理内容を示すフローチャートである。S801からS803までの処理は前述のS601からS603までの処理と同様であるため、説明を省略する。
S804においてCPU201は、S502で取得した設定用紙サイズがS802で取得した候補用紙サイズ群に含まれるかどうか判定する。設定用紙サイズが候補用紙サイズ群に含まれると判定された場合にはS805へ進み、その設定用紙サイズに従って印刷が実行される。
一方、S804において、設定用紙サイズが候補用紙サイズ群に含まれないと判定された場合にはS806へ進み、プラテン上に搬送されている印刷用紙を排出する。
次にS807へ進み、候補用紙サイズ群から最小の用紙幅を取得し、候補用紙最小幅としてワークメモリ205の所定の領域に記憶する。
次に、S808においてCPU201は、設定用紙サイズの幅とS807において保存した候補用紙最小幅を比較する。この比較の結果、設定用紙サイズ幅が候補用紙最小幅より小さいと判定された場合には、S809へ進み、後述するミスマッチ処理1を行う。設定用紙サイズ幅が候補用紙最小幅より小さい場合、例えば設定用紙サイズに合わせて印刷対象の画像を印刷した場合、その画像の幅が印刷装置にセットされている印刷用紙の幅よりも小さいため、画像の幅が欠けずに印刷を実行することができる。よって、設定用紙サイズ幅が候補用紙最小幅より小さい場合、当該設定用紙サイズに対応する大きさの画像の、印刷装置100にセットされている印刷用紙への印刷を許可すると判定される。よってミスマッチ処理1では、ユーザに対する警告表示において、設定用紙サイズに合わせて印刷を実行させるための選択肢をユーザに提供する。詳細について後述する。
一方、設定用紙サイズ幅が候補用紙最小幅より小さくないと判定された場合、設定用紙サイズ幅よりも小さな幅のサイズが候補用紙サイズに含まれていると判断できる。例えば、候補用紙サイズのいずれの幅よりも設定用紙サイズの幅が大きな場合、S810におけるミスマッチ処理2が実行される。また、設定用紙サイズの幅よりも幅が小さなサイズ、幅が大きなサイズの両方が候補用紙サイズに含まれているが、設定用紙サイズの幅が、候補用紙サイズそれぞれの幅に対する上記所定の範囲に含まれていない場合、S810におけるミスマッチ処理2が実行される。この場合、仮に当該設定用紙サイズに対応する大きさの画像が印刷装置100にセットされている印刷用紙へ印刷されると、当該画像の幅が印刷用紙よりも大きく、画像が欠けて印刷されてしまうことがある。よって、設定用紙サイズ幅が候補用紙最小幅より小さいと判定されなかった場合、S808では、設定用紙サイズに対応する大きさの画像の印刷装置100にセットされている印刷用紙への印刷を許可しないと判定される。そして、ミスマッチ処理2が実行される。ミスマッチ処理2では、ユーザに対する警告表示において、設定用紙サイズに合わせて印刷を実行させるための選択肢をユーザに提供しないように制御する。詳細について後述する。
図9は図8のS809におけるミスマッチ処理1の処理内容を示すフローチャートである。
S901においてCPU201は操作パネル218上に共通ミスマッチ警告画面を表示させる表示制御を行う。この共通ミスマッチ警告では図11に示すように「用紙が間違っている可能性がある」事をユーザに報知し、同時に印刷ジョブに含まれる設定用紙サイズを表示している(1101)。これにより、ユーザは本来どのサイズの用紙をセットすべきであったかを知ることができる。
次にS902においてCPU201は、ユーザが操作パネル218における「OK」キー(不図示)を押下するまで待ち状態となる。そしてユーザが「OK」キーを押下したことを検知するとS903へ進み、CPU201は操作パネル218上にミスマッチ警告表示1を表示させる表示制御を行う。このミスマッチ警告表示1は、図12(a)に示すように「このまま続行」(1201)、「用紙を交換して続行」(1202)、「キャンセル」(1203)の3つの選択肢が、ユーザが選択可能に含まれる画面である。
「このまま続行」はユーザが用紙サイズのミスマッチが発生していることを承知した上で、それでも現在セットされている当該用紙に設定用紙サイズに合わせた印刷を行うかユーザに問合せるための表示である。例えば印刷ジョブにおける設定用紙サイズはB5サイズであるが、ユーザが手元にA4サイズの用紙しか無い様な場合に選択する。或いは、L判の写真紙に対して写真を印刷する前に、印刷結果を確認するために、A4サイズの普通紙の印刷用紙に印刷する場合がある。光沢紙など写真印刷用の写真紙の場合、普通紙よりも高価であることが多い。そこでユーザが、L判の写真紙に印刷する前に、テストとしてL判よりも大きなA4サイズの普通紙に印刷を実行させ、写真全体の印刷結果を確認することが考えられる。上記の選択肢「このまま続行」はこのような用途によりユーザにより選択される。
次に「用紙を交換して続行」は用紙サイズのミスマッチ報知を受けて、印刷ジョブに合わせた用紙に交換して印刷したい時に選択する選択肢である。この時には先に述べたように共通ミスマッチ警告に「印刷ジョブに含まれる設定用紙サイズ」が表示されているので、そのサイズの用紙を給紙トレイ101にセットすれば良い。最後に「キャンセル」の選択肢であるが、これは印刷を中止するための選択肢である。
さて、ミスマッチ警告表示1を表示した後にはS904へ進み、上述のユーザの選択確定待ち状態となる。ここで、ユーザは操作パネル218の「上」「下」キー(不図示)を押下することにより3つの選択肢から一つを選び、更に「OK」キーを押下することにより選択を確定することが出来る。ユーザ操作により選択が確定したことを検知するとS905へ進み、選択した指示を調べ「このまま続行」を選択した場合にはS906へ進む。
S906では再び給紙トレイ101から印刷用紙を給紙する。次にS907へ進む。S907では、印刷ジョブに含まれる設定用紙サイズに応じた大きさの印刷対象の画像が、S906において給紙された印刷用紙に印刷される。
なお、本実施形態では、ミスマッチ処理1は、設定用紙サイズが候補用紙サイズ群に含まれておらず、その幅が候補用紙サイズ群の幅よりも小さい。そのため、ユーザが「このまま続行」を選択して印刷を実行させた場合、印刷装置にセットされている印刷用紙の幅よりも小さな幅の画像が印刷される。よって、印刷用紙の幅から印刷対象の画像が欠けることなく印刷を実行させることができる。
一方、S905において「用紙を交換して印刷」を選択した場合には再びS506における設定用紙サイズ印刷モード処理を行う。このとき、S501において受信された印刷ジョブ内の印刷対象の画像や、S502において取得された設定用紙サイズ等の印刷設定情報のデータメモリ204への記憶が維持されるように制御される。よって、ユーザが改めて印刷ジョブの送信や設定用紙サイズの指定のための操作を行わなくても、印刷装置100にセットされる印刷用紙を交換することで、再び図8に示した処理を実行することができる。これにより再び給紙〜用紙幅検知が実行され、交換した用紙のミスマッチをチェックすることができる。
最後にS905において「キャンセル」を選択した場合には印刷ジョブを破棄し、処理を終了する。具体的には、データメモリ204において、S501において受信された印刷ジョブ内の印刷対象の画像や、S502において取得された設定用紙サイズ等の印刷設定情報が削除可能な状態になる。
図10は図8のS809におけるミスマッチ処理2の処理内容を示すフローチャートである。ミスマッチ処理2では、まずS1001においてCPU201は操作パネル218上に共通ミスマッチ警告の表示を行う。これは前述のミスマッチ処理1におけるS901で表示した内容と同じである。
次にS1002においてCPU201は、ユーザが操作パネル218の「OK」キー(不図示)を押下するまで待ち状態となる。そしてユーザが「OK」キーを押下したことを検知するとS1003へ進み、CPU201は操作パネル218上にミスマッチ警告表示2を表示させる表示制御を行う。このミスマッチ警告表示2は、図12(b)に示すように「用紙を交換して続行」(1204)、「キャンセル」(1205)の2つの選択肢が、ユーザが選択可能に含まれている画面である。このミスマッチ警告表示2は、ミスマッチ警告表示1とは異なり「このまま続行」の選択肢は表示されず、ユーザは「このまま続行」を選択することはできない。ミスマッチ警告表示2を表示した後にはS1004へ進み、ユーザの選択確定待ち状態となる。
ここで、ユーザは操作パネル218の「上」「下」キー(不図示)を押下することにより2つの選択肢から一つを選び、更に「OK」キーを押下することにより選択を確定することが出来る。ユーザ操作により選択が確定したことを検知するとS1005へ進み、選択した指示を調べ「用紙を交換して印刷」を選択した場合には再びS506、すなわち設定用紙サイズ印刷モード処理を行う。これにより再び給紙〜用紙幅検知が実行され、交換した用紙のミスマッチをチェックすることができる。一方、S1005において「キャンセル」を選択した場合には印刷ジョブを破棄し、処理を終了する。
以上のように本実施形態では、印刷設定として設定されている設定用紙サイズが、印刷装置にセットされている印刷用紙のサイズを用紙センサが検出することにより得られた候補用紙サイズに含まれているか判定される。そして、設定用紙サイズが候補用紙サイズに含まれていない場合、ユーザに対する警告表示が行われる。
その警告表示において、設定用紙サイズの幅が候補用紙サイズのいずれの幅よりも小さい場合、上記ミスマッチ処理1により「このまま続行」が選択肢としてユーザに提供される。一方、設定用紙サイズの幅よりも小さな幅を持つサイズが候補用紙サイズに含まれている場合、上記ミスマッチ処理2により「このまま続行」がユーザに提供されない。
即ち、設定用紙サイズの幅よりも小さな幅を持つサイズが候補用紙サイズに含まれている場合、画像の幅が欠けて印刷が実行されてしまうことがある。よってミスマッチ処理2により、ユーザに対する警告表示において、設定用紙サイズに合わせて印刷を実行させるための選択肢をユーザに提供しないように制御する。これにより、上記のように画像の幅が欠けて印刷が実行されてしまうことを防ぐことができる。
なお、上記S808では、設定用紙サイズの幅と候補用紙サイズの幅を比較していた。しかしこれに限らず、設定用紙サイズの幅、長さと候補用紙サイズの幅、長さを比較してもよい。そして、設定用紙サイズの幅、長さのそれぞれが、候補用紙サイズのそれぞれの幅、長さのそれぞれの最小幅、最小長さよりも小さいときに、ミスマッチ処理1を実行し、それ以外の場合にはミスマッチ処理2を実行するようにしてもよい。
これにより、印刷対象の画像の幅のみならず、印刷対象の画像の長さが欠けて印刷されてしまうことを防ぐことができる。即ち、設定用紙サイズの幅、長さのそれぞれが、候補用紙サイズのそれぞれの幅、長さのそれぞれの最小幅、最小長さよりも小さいとき、印刷装置にセットされている印刷用紙が候補用紙サイズのいずれであっても、そのサイズは、設定用紙サイズよりも大きい。このときミスマッチ処理1により表示された「このまま印刷」をユーザが選択した場合、設定用紙サイズに応じた大きさの印刷対象の画像の全体が印刷用紙に印刷される。一方、ミスマッチ処理2が実行された場合、設定用紙サイズに応じた大きさの印刷対象の画像の幅、長さの一方または両方が、印刷用紙からはみ出し、画像が欠けて印刷されてしまうことを防ぐことができる。
なお、上記の実施形態においては、インタフェースを介して接続されたスマートデバイス208からの印刷ジョブの場合を説明したが、電話回線やネットワーク回線により接続された、遠隔地からの印刷であってもよい。印刷ジョブを発行する装置はスマートデバイス208として説明したが、スマートデバイス208の代わりに、携帯電話、ホストコンピュータ、デジタルテレビ等の装置であってもよい。また、ユーザが操作する装置から直接印刷ジョブを受け取る形態であっても、プリントサーバーやクラウドサービス等の中間装置を通して印刷ジョブを受け取る形態であってもよい。
図13は、本実施形態である印刷装置100におけるコピー動作実行時のCPU201の処理内容を示すフローチャートである。なお本実施形態における印刷装置100の印刷機構部分の構成、プラテン111および印刷ヘッド112部分の構成、制御系の構成等については上記の説明と同等であるためここでは説明を省略する。
本フローチャートの処理は、印刷装置100の操作パネル218に対してユーザがコピー機能を選択した時にCPU201により実行される処理である。CPU201は最初のS1301において操作パネル218上の操作パネル218に不図示のコピー設定画面を表示する。このコピー設定画面はコピーの用紙サイズ、印刷部数、印刷濃度、コピー倍率、フチありなしの設定などコピー動作にかかわるパラメータ等を設定する画面である。ここでCPU201は操作パネル218上に対するユーザの入力操作を監視し、パラメータの変更およびコピー動作開始指示を受け付ける。S1302でコピー動作開始指示を受け付けたことを判定すると、CPU201はS1303へ進む。S1303では、S1301においてユーザが選択した用紙サイズを取得してワークメモリ205の所定の領域に設定用紙サイズとして保存する。次にS1304へ進み、同じくS1301においてユーザが選択したコピー倍率を取得してワークメモリ205の所定の領域に設定コピー倍率として保存する。次にS1305へ進み、保存した設定コピー倍率を判定し、設定コピー倍率が自動変倍である場合にはS1306へ進み、上述のフィッティング処理を行う。一方、S1305で保存した設定コピー倍率を判定した結果、自動変倍以外(例えば倍率100%、あるいはA4からB5への定型変倍、等)であった場合にはS1307へ進み、上記の設定用紙サイズ印刷処理を行う。これらフィッティング処理、設定用紙サイズ印刷処理は上述したものと同様であるため、説明を省略する。
なお、以上の実施形態において説明した「設定用紙サイズ」は、印刷ジョブを送信する装置においてユーザが指定したものに限らない。例えば、印刷装置100の操作パネル218をユーザが用いて印刷装置100に対して設定したものでもよい。さらに、「設定用紙サイズ」はユーザが指定するものに限らず、印刷ジョブを送信する装置の種類、アプリケーション、あるいは印刷装置100における印刷モード等の各種の条件に応じて自動的に設定されるものであってもよい。
また、以上の実施形態では、印刷装置100の外部装置から受信された印刷ジョブに基づく印刷や、印刷装置100においてコピー機能が実行されたときに、用紙センサ118の検出結果に基づいて印刷用紙のサイズを判定する例を示した。しかしこれに限らず、例えばメモリカードスロット222に装着されたメモリカード223に記憶されている画像を、ユーザが操作パネル218において設定した印刷設定に従って印刷するときに、上記の印刷用紙サイズの判定処理を実行してもよい。またS504では、ユーザが指定した印刷設定を示す印刷設定情報において用紙サイズが指定されていなかった場合に、上記のフィッティング処理を行ってもよい。なお、印刷設定情報において用紙サイズが指定されていなかった場合とは、印刷設定情報に用紙サイズが含まれていない場合でもよい。または、用紙センサ118による用紙幅の検出結果に応じた用紙サイズの設定処理を実行させるための指示が印刷設定情報に含まれている場合でもよい。
また、このように印刷装置100においてユーザが指定した印刷設定に従って印刷を行う場合、メモリカード223のような外部メモリに限らず、印刷装置100が備える内部メモリに記憶されている画像を印刷する場合であってもよい。また、印刷装置100とネットワークを介して接続されたサーバ等の外部装置に格納されている画像を、印刷装置100の操作パネル218においてユーザが指定した印刷設定に従って印刷する場合であってもよい。
さらに、以上の実施形態では印刷装置100の用紙センサ118が用紙の幅を検出する例を示したが、これに限らず、センサにより用紙の長さが検出される場合でもよいし、または用紙の幅、長さの両方が検出される場合であってもよい。いずれの検出方法であっても、印刷装置100において用いられる印刷用紙のサイズとして複数の候補があった場合に、以上の実施形態で示した処理により適切な用紙サイズを決定することができる。
また、以上の実施形態では、図6で示した用紙サイズの判定処理を印刷装置100が備えるCPU201が印刷制御装置として実行する例を示した。しかしこれに限らず、印刷装置100に接続され当該印刷装置に印刷を実行させるホストコンピュータやサーバ等の装置が本実施形態の印刷制御装置として動作することで、本実施形態の処理が実行される場合であってもよい。
具体的には、ホストコンピュータやサーバ、スマートデバイスが印刷装置100に印刷ジョブを送信するときに、図5の処理を実行する。即ち、これらの装置が印刷装置100に印刷ジョブを送信するときに、印刷装置100の用紙センサ118により検出された印刷用紙の用紙幅の情報を取得する。そして、その取得された情報が示す用紙幅に応じて印刷用紙のサイズの候補を特定し、特定された候補と設定用紙サイズによりレイアウト領域を決定する。そして、ホストコンピュータやサーバ、スマートデバイスが備えるメモリ上において、レイアウト領域に対して印刷対象の画像を展開し、展開された画像を印刷装置100に印刷ジョブとして送信し、印刷装置100に印刷を実行させる。具体的には、印刷装置100のCPU201の制御により、ホストコンピュータやサーバ、スマートデバイスから受信した画像を印刷装置100内の印刷機構が印刷用紙に印刷する。
なお上記の構成において、図9、図10で印刷のキャンセルを行う場合、ホストコンピュータやサーバ、スマートデバイスにおいてエラーを発行する。具体的には、図11〜図13の表示がホストコンピュータやサーバ、スマートデバイスで実行される。ホストコンピュータにおいてエラーを表示する場合、ホストコンピュータが備える表示装置、またはホストコンピュータに接続されている外部の表示装置に表示を行う。またサーバにおいてエラー表示を行う場合、サーバに対して印刷ジョブを送信したクライアント装置にエラー表示の内容を通知し、クライアント装置の内部または外部の表示装置にエラー表示が行われる。
またホストコンピュータやサーバ、スマートデバイスにおいて本実施形態の処理を行う場合の別の例として、図6のS605、図7のS704、図8のS805、図9のS907以外の処理を上記装置で行ってもよい。この場合、印刷対象の画像の画像メモリ206に対する印刷機構による印刷が印刷装置100のCPU201により実行される。また印刷処理の前の、設定用紙サイズと候補用紙サイズとの比較や、印刷対象の画像の展開処理については、ホストコンピュータやサーバ、スマートデバイスにより実行される。印刷装置100と、ホストコンピュータ、サーバ、スマートデバイス等の装置とにおける処理の分担については、他にも種々の構成を本実施形態に適用することができる。
また以上の実施形態では、印刷装置により画像が印刷される印刷媒体の例として印刷用紙を例に説明したが、これに限らず、OHPシートであってもよい。また印刷用紙のような矩形の印刷媒体に限らず、CDやDVD等の円盤状の記録メディアであってもよい。
なお、本実施形態の機能は以下の構成によっても実現することができる。つまり、本実施形態の処理を行うためのプログラムコードをシステムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)がプログラムコードを実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することとなり、またそのプログラムコードを記憶した記憶媒体も本実施形態の機能を実現することになる。
また、本実施形態の機能を実現するためのプログラムコードを、1つのコンピュータ(CPU、MPU)で実行する場合であってもよいし、複数のコンピュータが協働することによって実行する場合であってもよい。さらに、プログラムコードをコンピュータが実行する場合であってもよいし、プログラムコードの機能を実現するための回路等のハードウェアを設けてもよい。またはプログラムコードの一部をハードウェアで実現し、残りの部分をコンピュータが実行する場合であってもよい。