(57)【要約】【課題】  穴あき用紙を使用する際の印刷の利便性を向上させる。【解決手段】  本印刷装置は、用紙有無検出部（１１）により用紙幅方向において用紙の有無を検出することができ、用紙送り機構（２３，２４，２５，２６）により用紙をフィードおよびバックフィードさせることができる。そして、印刷領域設定部（Ｓ１００〜Ｓ１９６）は、前記用紙送り機構にて用紙をフィードさせ（Ｓ１１２）、前記用紙有無検出部にて用紙幅の範囲で用紙が無い位置を検出し（Ｓ１３２）、複数の用紙が無い位置を検出（Ｓ１６０）して穴の径を判定し（Ｓ１６８，Ｓ１７６）、穴を避けて印刷領域を設定する（Ｓ４０４〜Ｓ４２０）と、印刷部は、設定された前記印刷領域内で印刷する（Ｓ１９６）。【選択図】  図２
2017149095.tif 000002
【特許請求の範囲】
【請求項１】
用紙幅方向において用紙の有無を検出する用紙有無検出部と、
用紙をフィードおよびバックフィードさせる用紙送り機構と、
前記用紙送り機構にて用紙をフィードさせ、前記用紙有無検出部にて用紙幅の範囲で用紙が無い位置を検出し、複数の用紙が無い位置を検出して穴の径を判定し、穴を避けて印刷領域を設定する印刷領域設定部と、
設定された前記印刷領域内で印刷する印刷部とを具備することを特徴とする印刷装置。
【請求項２】
前記印刷領域設定部は、複数の穴の径に基づいて、大径の穴と小径の穴とを判別し、大径の穴よりも用紙の中心側の領域を印刷領域と設定することを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記大径の穴を検出した場合、縁有り印刷の設定では、大径の穴の縁部から用紙の中心側に向けて所定の余白を付けた印刷領域を設定し、縁無し印刷の設定では、大径の穴の縁部から用紙の中心側に向けた領域を印刷領域と設定することを特徴とする請求項２に記載の印刷装置。
【請求項４】
前記用紙有無検出部は、用紙の幅方向に往復動するキャリッジに配設された用紙有無検出素子を備え、前記キャリッジの前記幅方向への移動時に、移動位置と用紙の有無の検出結果とを出力することを特徴とする請求項１〜請求項３のいずれかに記載の印刷装置。
【請求項５】
前記印刷領域設定部は、穴を検出したときに、前記用紙有無検出素子を穴の中心位置に移動させ、用紙をフィードして用紙の有無の検出結果に基づいて穴の径を測定することを特徴とする請求項４に記載の印刷装置。
【請求項６】
前記印刷領域設定部は、用紙をフィードしたときに前記用紙有無検出部にて用紙の端部の位置が変化したら斜行に対応した印刷領域を設定することを特徴とする請求項１〜請求項５のいずれかに記載の印刷装置。
【請求項７】
前記印刷領域設定部は、両面印刷の場合、表面印刷の際に判定した穴の情報を記憶し、裏面印刷の際に同記憶されている穴の情報を幅方向で反転させて印刷領域を設定することを特徴とする請求項１〜請求項６のいずれかに記載の印刷装置。
【請求項８】
前記印刷部は、穴を避ける印刷領域が設定されると印刷画像の幅方向の両端をカットあるいは同印刷画像を縮小して印刷することを特徴とする請求項１〜請求項７のいずれかに記載の印刷装置。
【請求項９】
前記印刷部は、印刷開始位置が現在の用紙のフィード位置よりも用紙のフィード側に位置するときに用紙をバックフィードさせずに印刷を開始することを特徴とする請求項１〜請求項８のいずれかに記載の印刷装置。
【請求項１０】
用紙幅方向において用紙の有無を検出することが可能であるとともに、用紙をフィードおよびバックフィードさせることが可能な印刷装置の印刷方法であって、
用紙をフィードさせて用紙幅の範囲で用紙が無い位置を検出し、
複数の用紙が無い位置を検出して穴の径を判定し、
穴を避けて印刷領域を設定し、
設定された印刷領域内で印刷することを特徴とする印刷方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置、印刷方法に関し、特に、穴あき用紙に印刷可能な印刷装置、印刷方法に関する。
【背景技術】
【０００２】
穴あき用紙として、ルーズリーフ用紙が知られている。ルーズリーフ用紙には、一方の長辺に沿って用紙に一列に多数の穴が形成されている。コピー機などにこのような穴あき用紙をセットすると、用紙を正確に検知できないことがあった。用紙の端を検知するセンサーが穴の部分を用紙の端と検知してしまうからである。
用紙の穴を用紙の端と検知しないようにする技術として、従来、特許文献１に開示するものが知られている。
【０００３】
特許文献１は、原稿搬送速度に応じた応答遅延時間を設定し、応答遅延時間に対応した大きさ以上の開口だけを検出するようにしている。このため、ルーズリーフに形成された穴はこの条件を満たさず、用紙の端とは検知されなくなる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−０６６６６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示された技術は、正確に用紙の端を検知することはできるが、正確に用紙の端を検知することができたとしても、穴の空いている領域に印刷をしてしまうことを避けられない。
本発明は、穴あき用紙を使用する際の印刷の利便性を向上させる。
【課題を解決するための手段】
【０００６】
本発明は、用紙幅方向において用紙の有無を検出する用紙有無検出部と、用紙をフィードおよびバックフィードさせる用紙送り機構と、前記用紙送り機構にて用紙をフィードさせ、前記用紙有無検出部にて用紙幅の範囲で用紙が無い位置を検出し、複数の用紙が無い位置を検出して穴の径を判定し、穴を避けて印刷領域を設定する印刷領域設定部と、設定された前記印刷領域内で印刷する印刷部とを具備する構成としてある。
【０００７】
前記構成において、本印刷装置は、用紙有無検出部により用紙幅方向において用紙の有無を検出することができ、用紙送り機構により用紙をフィードおよびバックフィードさせることができる。そして、印刷領域設定部は、前記用紙送り機構にて用紙をフィードさせ、前記用紙有無検出部にて用紙幅の範囲で用紙が無い位置を検出し、複数の用紙が無い位置を検出して穴の径を判定し、穴を避けて印刷領域を設定すると、印刷部は、設定された前記印刷領域内で印刷する。
【０００８】
このように、穴を検出して径を判定し、その結果を用いて穴を避けるように印刷領域を設定するので、穴あき用紙であることを特に意識しないで印刷を行うことが可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明が適用される印刷装置であるインクジェットプリンターの概略ブロック図である。
【図２】穴あき用紙検出と印刷処理を示すフローチャートである。
【図３】穴の空いていない用紙の場合の用紙有無信号の変化を示す図である。
【図４】穴あき用紙の場合の用紙有無信号の変化を示す図である。
【図５】穴あき用紙の場合の用紙有無信号の変化と穴の中心位置特定を示す図である。
【図６】穴あき用紙の穴の中心位置で用紙送りを開始させたときの用紙有無信号の変化を示す図である。
【図７】スキュー確認処理を示すフローチャートである。
【図８】スキューが生じている用紙を示す図である。
【図９】スキューが有るときの大径穴判定処理を示すフローチャートである。
【図１０】反時計回り方向に用紙が傾いている場合の用紙有無信号の変化を示す図である。
【図１１】時計回り方向に用紙が傾いている場合の用紙有無信号の変化を示す図である。
【図１２】印刷領域の設定処理を示すフローチャートである。
【図１３】縁なし印刷の印刷領域を示す図である。
【図１４】縁有り印刷の印刷領域を示す図である。
【図１５】スキューが生じている場合の縁有り印刷の印刷領域を示す図である。
【図１６】レイアウト調整処理を示すフローチャートである。
【図１７】両面印刷処理を示すフローチャートである。
【図１８】両面印刷の場合の印刷領域の設定を示す図である。
【図１９】印刷処理を示すフローチャートである。
【図２０】バックフィードしない印刷を実施できる場合を示す図である。
【発明を実施するための形態】
【００１０】
（第１実施形態）
以下、図面にもとづいて本発明の実施形態を説明する。
図１は、本発明が適用される印刷装置であるインクジェットプリンターの概略ブロック図である。
同図において、印刷ヘッド１０はインクタンクから供給される４色あるいは６色の色インクをノズルから吐出する。印刷ヘッド１０には、光学素子を用いた用紙有無検出センサー１１が備えられている。印刷ヘッド１０は、キャリッジモーター２１にて駆動されるベルト２２によって所定の範囲を往復駆動される。印刷ヘッド１０と共に用紙有無検出センサー１１も所定の範囲を往復駆動され、このとき印刷ヘッド１０が対面する位置に用紙があるか否かを検出する。印刷ヘッド１０の駆動位置は別途判断可能であるため、それぞれの位置での用紙の有無が判定可能となっている。
このように、用紙有無検出部は、用紙幅方向において用紙の有無を検出するものであり、用紙の幅方向に往復動するキャリッジに配設された用紙有無検出素子（用紙有無検出センサー１１）を備え、キャリッジの前記幅方向への移動時に、移動位置と用紙の有無の検出結果とを出力するようにしている。
【００１１】
プラテン２３はプラテンモーター２４にて駆動され、印刷ヘッド１０の往復動に対応して用紙を搬送する。フィードモーター２５は所定の用紙スタッカに収容されている用紙を供給する給紙ローラー２６を駆動する。これらによって用紙をフィードおよびバックフィードさせることができ、用紙送り機構を構成している。
制御回路３０は、専用のＩＣを組み合わせて構成され、機能的にはＣＰＵ、ＲＯＭ、ＲＡＭを備えている。制御回路３０は、印刷ヘッド１０、キャリッジモーター２１、プラテンモーター２４、フィードモーター２５の駆動を制御する。制御回路３０には、操作パネル４１と表示パネル４２が装着されており、操作パネル４１にてユーザーによる所定の操作を受け付け、また、表示パネル４２にて所定の表示を行わせる。
【００１２】
制御回路３０には、カードリーダー５０が接続され、着脱可能なメモリーカードを装着することで、同メモリーカードのデータを読み込んだり、所定のデータを記録することができる。また、制御回路３０には、Ｉ／Ｏ回路６０が接続され、有線あるいは無線を介して他の外部機器と通信により接続可能となっている。制御回路３０は、外部機器やメモリーカードから画像のデータファイルを取得し、同データファイルに基づいて前記機器を制御して印刷を実行する。
【００１３】
図２は、本発明で実施する穴あき用紙検出と印刷処理のフローチャートである。本フローチャートに対応するプログラムを制御回路３０内のＣＰＵが実行する。以下、同フローチャートに沿って印刷処理について説明する。
ＣＰＵは、Ｓ１００にて、キャリッジを中心位置に移動させる。これにより印刷ヘッド１０は用紙幅のほぼ中央位置に移動する。なお、本実施例においては、用紙は用紙スタッカの中央にセットされ、給紙ローラー２６が給紙すると、キャリッジの左右の往復動の範囲内の中心にほぼ一致する位置に用紙が供給されることになる。キャリッジを移動させたら、ＣＰＵは、Ｓ１０４にて、給紙を開始させる。これによりフィードモーター２５が回転し、給紙ローラー２６を回転させるので、用紙スタッカに収容されている用紙を給紙し始める。
【００１４】
ＣＰＵは、給紙を開始させた後、印刷ヘッド１０に搭載されている用紙有無検出センサー１１の出力を監視し始める。用紙有無検出センサー１１は印刷ヘッド１０の側から検出光を発光させており、反射光の光の強度に応じて用紙の有無を検出する。用紙が無い間は出力信号がハイレベルとなっており、用紙がある間は出力信号がローレベルとなる。
用紙が用紙有無検出センサー１１の位置にフィードされてくるまで、用紙有無検出センサー１１の出力信号はハイレベルとなっている。しかし、用紙が用紙有無検出センサー１１の位置にフィードされてくると、用紙有無検出センサー１１の出力信号はローレベルに変化するので、この変化によって用紙端を検出することができる。
【００１５】
ＣＰＵは、Ｓ１０８にて、用紙端を検出するまで待機しており、用紙端を検出した後、ＣＰＵは、Ｓ１１２にて、所定距離だけ用紙送りを開始する。この距離は、想定される穴あき用紙で穴が形成されているであろう位置に至るのに充分な距離である。例えば、ルーズリーフであれば、用紙端から１０ｍｍ以内の範囲から形成され、同様に三穴や二穴の場合も一定位置に形成されている。従って、この形成位置をカバーするに足る距離だけ、ＣＰＵはフィードモーター２５に対して用紙フィードを実行させる。用紙フィードの速度は、充分に遅くし、用紙フィードを実行させながら、ＣＰＵは、Ｓ１１６にて、キャリッジの往復を開始させる。
【００１６】
用紙フィードをさせながら、キャリッジが往復動する間、ＣＰＵは、Ｓ１２０にて、用紙有無検出センサー１１が出力する用紙有無信号を解析する。
図３は、穴の空いていない用紙の場合の用紙有無信号の変化を示す図である。
用紙端を検出した後は、キャリッジが往復動すると、中央の用紙のある位置では用紙有無信号がローレベルとなっているが、左右の用紙のない位置では用紙有無信号がハイレベルとなる。従って、ハイレベルからローレベルへ変化し、あるいは、ローレベルからハイレベルへと変化する位置が通常の用紙ＯＰでの用紙端ＯＰＥ１，ＯＰＥ２となる。
【００１７】
ＣＰＵは、Ｓ１２４にて、用紙端ＯＰＥ１，ＯＰＥ２から紙幅を検出する。
紙幅＝｜ＯＰＥ１−ＯＰＥ２｜
となる。これは、左右の領域で用紙無しであり、中央の領域で用紙ありと検出した場合である。次に、ＣＰＵは、Ｓ１２８にて、セットされた用紙情報を確認する。用紙は所定の規格に基づいており、各規格のサイズと、検出された紙幅とが一致するかを確認している。例えば、Ａ４であれば幅は２１０ｍｍであり、検出された紙幅が概ね２１０ｍｍであれば、Ａ４用紙が供給されているものと判断できる。むろん、所定の誤差は許容される。
【００１８】
図４は、穴あき用紙の場合の用紙有無信号の変化を示す図である。
一方、穴あき用紙ＨＰの場合、用紙有無信号は、左右の領域で用紙無しと判定されるハイレベルとなると共に、用紙の紙幅の範囲内でも穴Ｈの形成されている位置では用紙有無信号はハイレベルとなる。
キャリッジが紙面上で左から右へと移動する場合、用紙有無信号は、最初はハイレベルであり、左の用紙端ＯＰＥ１でローレベルとなり、穴Ｈの左端ＯＰＥ３でハイレベルとなり、穴Ｈの右端ＯＰＥ４でローレベルとなり、右の用紙端ＯＰＥ２でハイレベルとなる。
【００１９】
ＣＰＵは、Ｓ１３２にて、用紙有無信号の変化の回数に基づいて、紙幅内で用紙無しを検出したか否かを判断する。用紙有無信号の解析においては、左右の端から最も近い位置であるＯＰＥ１，ＯＰＥ２を用紙端と判断する。これは、ＣＰＵが、Ｓ１３６にて、最大幅位置を紙幅として検出することで実現できる。この結果、その間の変化は用紙端以外のものと判断することにする。
【００２０】
用紙端以外の用紙有無信号の変化を検出した場合、ＣＰＵは、Ｓ１４０にて、穴の中心位置を特定する。なお、用紙端以外の用紙有無信号の変化を検出しない場合は通常の印刷処理をすればよいので、Ｓ１８８にて、印刷領域を設定する処理へと進む。
図５は、穴あき用紙の場合の用紙有無信号の変化と穴の中心位置特定を示す図である。
穴Ｈの左の端ＯＰＥ３と、右の端ＯＰＥ４との中間位置が穴Ｈの中心位置ＯＰＥ５であるから、
ＯＰＥ５＝｜ＯＰＥ３−ＯＰＥ４｜／２
と特定できる。従って、ＣＰＵは、Ｓ１４４にて、穴Ｈの中心位置ＯＰＥ５にキャリッジ移動させる。キャリッジを穴Ｈの中心位置ＯＰＥ５に移動させたら、ＣＰＵは、Ｓ１４８にて、フィードモーター２５に対して所定距離だけ用紙送りを開始させ、Ｓ１５２にて、用紙有無信号の解析を行なう。ルーズリーフの場合、一種類の大きさの穴だけが形成されている場合と、二穴の規格の位置に大きめの穴が形成されることで合計二種類の大きさの穴が形成されている場合とがある。
【００２１】
図６は、穴あき用紙の穴の中心位置で用紙送りを開始させたときの用紙有無信号の変化を示す図である。
キャリッジの位置を穴Ｈの中心位置ＯＰＥ５として、フィードモーター２５で紙送りを開始させた場合、用紙有無信号は穴Ｈの有無に応じて、ハイレベルとなったりローレベルとなる。図６に示すように、小径の穴ＨＳの上の縁が印刷ヘッド１０の用紙有無検出センサー１１の位置に至ると、用紙有無信号はローレベルからハイレベルへと変化し、小径の穴ＨＳの下の縁が印刷ヘッド１０の用紙有無検出センサー１１の位置に至ると、用紙有無信号はハイレベルからローレベルへと変化する。言い換えると、用紙有無信号がローレベルからハイレベルへと変化した位置が小径の穴ＨＳの上の縁ＯＰＥ６であり、ハイレベルからローレベルへと変化した位置が小径の穴ＨＳの下の縁ＯＰＥ７と判断することができる。小径の穴ＨＳが並んでいる場合は、穴の径ＳＤは、
ＳＤ＝｜ＯＰＥ６−ＯＰＥ７｜
となる。
【００２２】
しかし、図６に示すように、大径の穴ＨＬの場合の穴の径ＬＤは、
ＬＤ＝｜ＯＰＥ８−ＯＰＥ９｜
となり、ＳＤよりも大きいものと判定される。
用紙有無信号の解析において、ＣＰＵは、Ｓ１５６にて、用紙有無信号に基づいて穴の径を検出しつつ、Ｓ１６０にて、複数の穴を検出したときには、Ｓ１６４にて、複数の穴径を記録しておく。
【００２３】
複数の穴の径を記録した上で、異なる径を検出した場合、ＣＰＵは、Ｓ１６８にて、大小有りと判断する。大小有りと判断した場合は、さらに、ＣＰＵは、Ｓ１７２にて、大径穴ＬＨの中心位置ＯＰＥ１０と径ＬＤを特定する。すなわち、
ＯＰＥ１０＝｜ＯＰＥ８−ＯＰＥ９｜／２
ＬＤ＝｜ＯＰＥ８−ＯＰＥ９｜
として、特定できる。なお、複数の穴の径を検出しなかった場合は、Ｓ１８０に進む。
【００２４】
この場合、さらに、中心位置ＯＰＥ１０に用紙フィードを行い、キャリッジを用紙幅方向に移動させて用紙有無信号に基づいて大径の穴ＬＨの径を径ＬＤを求めても良い。用紙幅方向での用紙無信号の変化位置ＯＰＥ８’，ＯＰＥ９’とすると、
ＯＰＥ１０’＝｜ＯＰＥ８’−ＯＰＥ９’｜／２
ＬＤ’＝｜ＯＰＥ８’−ＯＰＥ９’｜
一方、複数の穴の径を記録した上で、穴の径ＳＤのままとなって変わらない場合、ＣＰＵは、Ｓ１７６にて、所定距離進んで穴径変わらない状態であると判断できる。この場合は、ＣＰＵは、Ｓ１８０にて、小径の穴の中心位置と径を特定し、Ｓ１８４にて、大径の穴を小径の穴と一致させる。
【００２５】
すなわち、
ＯＰＥ１０＝｜ＯＰＥ６−ＯＰＥ７｜／２
ＬＤ＝｜ＯＰＥ６−ＯＰＥ７｜
とする。小径の穴の中心位置を大径の穴の中心位置とするのは、印刷領域を指定する際に大径の穴の中心位置と径を使用するからであり、印刷領域を指定する処理に応じて適宜変更可能である。
このように、用紙幅方向で穴を検出したときに、用紙有無検出素子（用紙有無検出センサー１１）を穴の中心位置に移動させ、用紙をフィードして用紙の有無の検出結果に基づいて穴の径を測定している（Ｓ１４４〜Ｓ１８４）。
【００２６】
大径の穴の中心位置ＯＰＥ１０と径ＬＤを特定した後、ＣＰＵは、Ｓ１８８にて、印刷領域を設定し、Ｓ１９２にて、用紙をバックフィードして、用紙の開始位置を印刷ヘッド１０の手前位置までに移動させ、Ｓ１９６にて、印刷を開始する。
印刷領域等の説明の前に、斜行（スキュー）の場合について説明する。
図７は、スキュー確認処理を示すフローチャートであり、図８は、スキューが生じている用紙を示す図である。
用紙スタッカから用紙が給紙されるときに給紙ローラー２６と用紙端とが平行に供給されれば斜行は生じないが、微妙なずれが生じることで、用紙の端部が給紙ローラー２６に対して斜めに接したまま給紙されることがある。
斜行が生じていなければ、用紙端ＯＰＥ１，ＯＰＥ２として検出される位置は一定のままであるが、斜行が生じていれば、用紙をフィードするにつれて用紙端ＯＰＥ１，ＯＰＥ２の位置が変化する。通常、変化度合いは同じである。
【００２７】
上述したとおり、ＣＰＵは、用紙端を検出した後、用紙フィードを開始し、所定距離だけ移動させた時点で大径の穴の中心位置を特定している。用紙フィードを開始する前の用紙端ＯＰＥ１の位置を記憶しておき、所定距離を用紙送りの距離ａとして、同距離ａだけ用紙送りした時点での用紙端ＯＰＥ１の位置を確認する。用紙端ＯＰＥ１の位置が一定であれば斜行はなく、距離ｂだけずれていることが分かれば斜行があるものと判断できる。
【００２８】
この状況は、ＣＰＵによる以下の判断で検出可能である。ＣＰＵは、Ｓ２００にて、用紙端ＯＰＥ１の位置に変化があるか判断する。ＣＰＵは、Ｓ２０４にて、用紙送り後に用紙端がずれた距離ｂを特定し、Ｓ２０８にて、用紙送りの距離ａを特定し、Ｓ２１２にて、スキュー角度を算出する。この例の場合、スキュー角度θとすると、
ｔａｎθ＝ａ／ｂ
となる。
【００２９】
スキューが生じていると、用紙フィードの方向と穴の並ぶ方向とがずれているので、最初に検出した穴の中心位置ＯＰＥ５にキャリッジを移動させて用紙フィードを行なったときに、徐々に穴がずれていく。このため、図２に示す処理のままでは、必ずしも大径の穴ＬＤの中心位置を特定できなくなる。
【００３０】
図９は、スキューが有るときの大径穴判定処理を示すフローチャートである。
また、図１０は、反時計回り方向に用紙が傾いている場合の用紙有無信号の変化を示す図であり、図１１は、時計回り方向に用紙が傾いている場合の用紙有無信号の変化を示す図である。
図１０と図１１に示すように、斜行が生じている場合、穴が左右にずれていく。従って、用紙有無信号に基づいて穴の径を判断すると、一般的には同穴の径は小さくなっていく。図１０に示す例では、穴の径は、５ｍｍ、４．９ｍｍ、４．８ｍｍと小さくなっていき、図１１に示す例でも、穴の径は、５ｍｍ、４．９ｍｍ、４．８ｍｍと小さくなっていく。しかし、大径の穴の位置では、穴の径が大きくなる。図１０に示す例では、穴の径は、４．８ｍｍとなった後で７ｍｍ、２ｍｍと変化しており、図１１に示す例でも、穴の径は、４．８ｍｍとなった後で６．２ｍｍ、４ｍｍと変化している。変化の傾向がやや異なるのは、大径の穴の中心位置と小径の穴の並び位置が左右に少しずれているためである。
【００３１】
ＣＰＵは、スキューが生じている場合の用紙有無信号の解析において、以下のようにする。
ＣＰＵは、Ｓ３００にて、記録した複数の穴径に減少傾向があると認められる場合、Ｓ３０４にて、減少傾向に変化が有る部位を探す。すなわち、穴径が小から大へ逆行する部位である。この部位があれば、ＣＰＵは、Ｓ３０８にて、大径の穴と判定する。大径の穴の径をより正確に計測するため、ＣＰＵは、Ｓ３１２にて、大径の穴の用紙フィード方向の中心へ用紙フィードし、同位置にて、ＣＰＵは、Ｓ３１６にてキャリッジを左右に移動させて径を測定する。すなわち、用紙有無信号の変化を観測し、ローレベルからハイレベルへ、また、ハイレベルからローレベルへ変化する地点間を大径の穴ＬＨの径ＬＤとする。
【００３２】
図２に示すフローチャートに戻ると、ＣＰＵは、Ｓ１８８にて、印刷領域を設定する。
図１２は、印刷領域の設定処理を示すフローチャートである。
図１３は、縁なし印刷の印刷領域を示す図であり、図１４は、縁有り印刷の印刷領域を示す図である。
印刷領域の設定では、ＣＰＵは、Ｓ４０４にて、大径の穴を基準として利用する。大径の穴ＬＨは、キャリッジをＯＰＥ５に移動させた位置を中心として径ＬＤとして特定しても良いし、算出した位置ＯＰＥ１０’を中心として径ＬＤ’として特定しても良い。なお、先のＳ１８４の処理で、大径の穴を小径の穴と一致させているので、実際には、大径の穴と小径の穴とが一致しているでも可能である。
【００３３】
印刷領域は、縁なし印刷の場合と縁有り印刷の場合とで異なる領域としている。
ＣＰＵは、Ｓ４０８にて、縁なし印刷と判断すると、Ｓ４１２にて、大径の穴ＬＨの内側の縁までを印刷領域とする。図１３に示すように、この場合は、用紙の左の端ＯＰＥ１の位置から、大径の穴ＬＨの左の端（ＯＰＥ５−ＬＤ／２）あるいは（ＯＰＥ１０’−ＬＤ’／２）の位置が左右の境界である。上下の境界は用紙端の位置から、規格に基づく用紙の長さまでの位置の間である。
【００３４】
一方、ＣＰＵが、Ｓ４１６にて、縁有り印刷と判断した場合は、Ｓ４２０にて、大径の穴の端から縁の分だけ内側までを印刷領域とする。図１４に示すように、この場合は、用紙の左の端ＯＰＥ１から右側に３ｍｍの位置から、大径の穴ＬＨの左の端（ＯＰＥ５−ＬＤ／２）あるいは（ＯＰＥ１０’−ＬＤ’／２）から左側に３ｍｍの位置が左右の境界である。上下の境界は用紙端から３ｍｍ用紙フィードした位置から、規格に基づく用紙の長さから３ｍｍだけ手前へ用紙フィードするまでの位置の間である。
このように、複数の穴の径に基づいて、大径の穴ＨＬと小径の穴ＨＳとを判別し、大径の穴ＨＬよりも用紙の中心側の領域を印刷領域と設定している。
さらに、大径の穴ＨＬを検出した場合、あるいは同視できるように処理した場合、縁有り印刷の設定では、大径の穴ＨＬの縁部から用紙の中心側に向けて所定の余白を付けた印刷領域を設定（Ｓ４２０）し、縁無し印刷の設定では、大径の穴ＨＬの縁部から用紙の中心側に向けた領域を印刷領域と設定（Ｓ４１２）している。
【００３５】
上述したようにスキューが生じていると判断されている場合は、ＣＰＵは、Ｓ４２４にて、スキュー調整が必要と判断し、Ｓ４２８にて、スキュー情報に基づいて印刷領域を設定する。
図１５は、スキューが生じている場合の縁有り印刷の印刷領域を示す図である。
この場合は一律には設定できず、ＣＰＵは、Ｓ４３２にて、ヘッド幅分だけ用紙フィードしたらスキュー方向に合わせて印刷開始位置をずらすという処理を実行する。スキューが生じているときは、用紙を距離ａだけフィードするに従って、用紙端ＯＰＥ１が距離ｂだけずれるので、印刷ヘッド１０の用紙フィード方向のヘッド幅ｃにｂ／ａを乗じた距離だけ用紙端ＯＰＥ１をずらす。むろん、用紙フィードの距離は印刷手法によって異なるので、印刷手法に応じてずらすタイミングを変えればよい。
このように、用紙をフィードしたときに前記用紙有無検出部にて用紙の端部の位置が変化したら（Ｓ２００〜Ｓ２０８）、斜行に対応した印刷領域を設定する（Ｓ４２４〜Ｓ４３２）。
上述したように、本実施形態では、用紙送り機構にて用紙をフィードさせ（Ｓ１１２）、前記用紙有無検出部にて用紙幅の範囲で用紙が無い位置を検出し（Ｓ１３２）、複数の用紙が無い位置を検出（Ｓ１６０）して穴の径を判定し（Ｓ１６８，Ｓ１７６）、穴を避けて印刷領域を設定する（Ｓ４０４〜Ｓ４２０）。そして、設定された前記印刷領域内で印刷する（Ｓ１９６）。これらの処理は、印刷領域設定部と、印刷部とに相当する。
【００３６】
（第２実施形態）
上述した実施形態では、穴を避けて印刷するために印刷領域を設定しているだけにとどめた。しかし、本実施形態では、印刷内容も調整する。この処理をレイアウト調整処理とする。
図１６は、レイアウト調整処理を示すフローチャートである。
ＣＰＵは、Ｓ５００にて、穴を発見したと判断すると、Ｓ５０４にて、印刷領域を設定し、この印刷領域に基づいて以下のレイアウト調整を行う。レイアウト調整は、両端をカットするものと、縮小するものとのいずれのオプションを選択可能としておく。また、文字については、さらに改行位置の調整も可能である。
【００３７】
ＣＰＵは、Ｓ５０８にて、文字以外の画像と判断すると、先に選択されているオプションに基づいて、処理を選択する。Ｓ５１２では、両端カットを選択された場合であり、Ｓ５１６にて、印刷領域に合わせて両端をカットする。一方、Ｓ５２０では、縮小を選択された場合であり、Ｓ５２４にて、印刷領域に合わせて縦横方向に縮小する。このようにすることで、印刷領域が穴を避けるために縮小されている場合でも、穴を避けて印刷することが可能となり、利便性が向上する。
このように、穴を避ける印刷領域が設定される（Ｓ５０４）と、印刷画像の幅方向の両端をカット（Ｓ５１２）あるいは同印刷画像を縮小（Ｓ５２４）して印刷する。
【００３８】
また、文字の場合は改行位置の調整も可能である。ＣＰＵは、Ｓ５２８にて、印刷対象が文字であると判断すると、文字送りで調整するか、縮小で調整するかを判断する。これらについても先に選択されており、Ｓ５３２では、文字送りを選択された場合であり、Ｓ５３６にて、印刷領域に合わせて改行位置を調整する。また、Ｓ５４０では、縮小を選択された場合であり、Ｓ５４４にて、印刷領域に合わせて縦横方向に縮小する。このようにすることで、同様に、穴を避けて印刷することが可能となるし、文字については、文字送りも選択可能とすることで、縮小することなく印刷領域の縮小に対応できる。
【００３９】
（第３実施形態）
図１７は、両面印刷処理を示すフローチャートであり、図１８は、両面印刷の場合の印刷領域の設定を示す図である。
両面印刷の場合、ＣＰＵは、Ｓ６００にて、表面印刷前に穴を発見したとすると、Ｓ６０４にて、表面印刷時の穴位置を記憶しておく。そして、裏面印刷を開始するときには、ＣＰＵは、Ｓ６０８にて、裏面印刷であると判断すると、印刷開始前に、Ｓ６１２にて、穴位置を用紙の幅方向で反転させて印刷領域を設定する。
【００４０】
図１８に示すように、表面印刷の際に、右端の領域に穴を発見していた場合、裏面印刷をするときには、左端の領域を避けるようにして印刷領域を設定すればよい。表面印刷の時に、左端から右寄りに距離ｄだけずれた位置から印刷領域が開始し、右端から左寄りに距離ｅだけずれた位置までで印刷領域が終了しているとする。裏面印刷の時には、左端から右寄りに距離ｅだけずれた位置から印刷領域が開始し、右端から左寄りに距離ｄだけずれた位置までで印刷領域が終了するように設定する。
このように、両面印刷の場合、表面印刷の際に判定した穴の情報を記憶し（Ｓ６０４）、裏面印刷の際に同記憶されている穴の情報を幅方向で反転させて印刷領域を設定する（Ｓ６１２）。
【００４１】
（第４実施形態）
図２に示すＳ１９２では、用紙の開始端まで用紙をバックフィードしている。しかし、例外的に、バックフィードしない印刷を実施できる場合もある。
図１９は、印刷処理を示すフローチャートである。
まず、ＣＰＵは、Ｓ７００にて、印刷開始位置を特定し、Ｓ７０４にて、現在の用紙フィード位置を特定する。次に、Ｓ７０８にて、印刷開始位置＞現在の用紙フィード位置となっているかを判断する。すなわち、印刷開始位置の方が、現在の用紙フィード位置よりも先であるかを判断している。
【００４２】
印刷開始位置の方が、現在の用紙フィード位置よりも先である場合は、ＣＰＵは、Ｓ７１２にて、バックフィードせず、印刷開始位置へ用紙フィードする。一方、逆に、現在の用紙フィード位置の方が、印刷開始位置よりも先に送られてしまっている場合は、ＣＰＵは、Ｓ７１６にて、印刷開始位置までバックフィードする。
その後、ＣＰＵは、Ｓ７２０にて、印刷を開始する。
【００４３】
図２０は、バックフィードしない印刷を実施できる場合を示す図である。
同図に示すように、印刷開始位置ｆは、現在の用紙フィード位置ｇよりも先である場合は、さらに（ｇ−ｆ）だけ用紙フィードして印刷を開始する。逆転しているとすれば、（ｆ−ｇ）だけ用紙をバックフィードして印刷を開始すればよい。
このように、印刷開始位置が現在の用紙のフィード位置よりも用紙のフィード側に位置するとき（Ｓ７０４））に用紙をバックフィードさせずに印刷を開始する（Ｓ７１２，Ｓ７２０）。
【００４４】
なお、本発明は前記実施例に限られるものでないことは言うまでもない。当業者であれば言うまでもないことであるが、
・前記実施例の中で開示した相互に置換可能な部材および構成等を適宜その組み合わせを変更して適用すること
・前記実施例の中で開示されていないが、公知技術であって前記実施例の中で開示した部材および構成等と相互に置換可能な部材および構成等を適宜置換し、またその組み合わせを変更して適用すること
・前記実施例の中で開示されていないが、公知技術等に基づいて当業者が前記実施例の中で開示した部材および構成等の代用として想定し得る部材および構成等と適宜置換し、またその組み合わせを変更して適用すること
は本発明の一実施例として開示されるものである。
【符号の説明】
【００４５】
１０…印刷ヘッド、１１…用紙有無検出センサー（用紙有無検出素子）、２１…キャリッジモーター、２２…ベルト、２３…プラテン、２４…プラテンモーター、２５…フィードモーター、２６…給紙ローラー、３０…制御回路、４１…操作パネル、４２…表示パネル、５０…カードリーダー、６０…Ｉ／Ｏ回路。
【図１】
2017149095.tif 000003
【図２】
2017149095.tif 000004
【図３】
2017149095.tif 000005
【図４】
2017149095.tif 000006
【図５】
2017149095.tif 000007
【図６】
2017149095.tif 000008
【図７】
2017149095.tif 000009
【図８】
2017149095.tif 000010
【図９】
2017149095.tif 000011
【図１０】
2017149095.tif 000012
【図１１】
2017149095.tif 000013
【図１２】
2017149095.tif 000014
【図１３】
2017149095.tif 000015
【図１４】
2017149095.tif 000016
【図１５】
2017149095.tif 000017
【図１６】
2017149095.tif 000018
【図１７】
2017149095.tif 000019
【図１８】
2017149095.tif 000020
【図１９】
2017149095.tif 000021
【図２０】
2017149095.tif 000022