(57)【要約】【課題】印字品質を確保しつつインク供給部材のインクを効率よく使用してインク供給部材の交換作業の回数を軽減することができる画像読取装置を提供する。【解決手段】複数のドット出力部を駆動して原稿に印字する印字手段１１と、印字手段１１により印字された原稿の画像を読み取る読取手段８と、読取手段８により読み取られた画像データに基づいて印字手段１１の印字不良を検出する検出手段１０６と、検出手段１０６により印字不良が検出された場合に、複数のドット出力部のうち、前記印字不良が検出された位置に対応するドット出力部の駆動回数を増加させる制御手段１０６と、を備える。【選択図】図２
2010253710.tif 000002
【特許請求の範囲】
【請求項１】
複数のドット出力部を駆動して搬送中の原稿に印字する印字手段と、
該印字手段により印字された原稿の画像を読み取る読取手段と、
該読取手段により読み取られた画像データに基づいて前記印字手段の印字不良を検出する検出手段と、
該検出手段により印字不良が検出された場合に、前記ドット出力部の駆動状態を変更することで印字の継続を可能とする制御手段と、を備える
ことを特徴とする画像読取装置。
【請求項２】
前記検出手段により印字不良が検出された場合に、前記制御手段は、前記複数のドット出力部のうち、前記印字不良が検出された位置に対応する前記ドット出力部の駆動回数を増加させる、
ことを特徴とする請求項１に記載の画像読取装置。
【請求項３】
前記制御手段は、前記駆動回数の増加によって前記ドット出力部の駆動回数が閾値に達するとき、前記読取手段による原稿の画像の読取処理を停止する、
ことを特徴とする請求項２に記載の画像読取装置。
【請求項４】
前記駆動回数の増加によって前記ドット出力部の駆動回数が閾値に達するとき、印字不良が発生したことを通知する通知手段を備える
ことを特徴とする請求項２又は３に記載の画像読取装置。
【請求項５】
前記検出手段により印字不良が検出された場合に、前記複数のドット出力部のうち、前記印字不良が検出された位置に対応するドット出力部以外のドット出力部を駆動して印字を継続する、
ことを特徴とする請求項１に記載の画像読取装置。
【請求項６】
前記検出手段により印字不良が検出された場合に、前記複数のドット出力部のうち、前記印字不良が検出された位置に対応するドット出力部以外のドット出力部を駆動して印字を継続するか否かをユーザ操作により選択させる選択手段を備える
ことを特徴とする請求項１に記載の画像読取装置。
【請求項７】
前記選択手段は、ユーザ操作による、前記印字不良が検出された位置に対応するドット出力部を駆動して印字を継続する選択を拒否する、
ことを特徴とする請求項６に記載の画像読取装置。
【請求項８】
前記印字手段は、インクジェット式又はインクリボン式の印字手段である、
ことを特徴とする請求項１〜７のいずれか一項に記載の画像読取装置。
【請求項９】
複数のドット出力部を駆動して搬送中の原稿に印字する印字手段と、該印字手段により印字された原稿の画像を読み取る読取手段と、を備える画像読取装置の制御方法であって、
前記読取手段により読み取られた画像データに基づいて前記印字手段の印字不良を検出する検出ステップと、
該検出ステップで印字不良が検出された場合に、前記ドット出力部の駆動状態を変更することで印字の継続を可能とする制御ステップと、を備える
ことを特徴とする画像読取装置の制御方法。
【請求項１０】
複数のドット出力部を駆動して搬送中の原稿に印字する印字手段と、該印字手段により印字された原稿の画像を読み取る読取手段と、を備える画像読取装置を制御するプログラムであって、
前記読取手段により読み取られた画像データに基づいて前記印字手段の印字不良を検出する検出ステップと、
該検出ステップで印字不良が検出された場合に、前記ドット出力部の駆動状態を変更することで印字の継続を可能とする制御ステップと、をコンピュータに実行させる、
ことを特徴とするプログラム。
【請求項１１】
請求項１０のプログラムを格納した、
ことを特徴とするコンピュータで読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、原稿に印字処理を施す印字手段を備える画像読取装置、画像読取装置の制御方法、プログラム、及び記憶媒体に関する。
【背景技術】
【０００２】
従来のこの種の画像読取装置として、原稿の所定位置に認証のためのナンバリング文字を印字し、印字後の原稿の画像を読み取るものがある。
【０００３】
ナンバリング文字の印字データ（ナンバリングデータ）は、画像読取装置に接続されたホスト装置から取得し、画像読取装置は、このナンバリングデータ（例えば英数字等の文字コード）に基づき印字パターンを生成して、印字装置により原稿に印字する。
【０００４】
画像読取装置の印字装置には、インクカートリッジ（インク供給部材）に貯えられたインクをノズルにより噴射して印字するインクジェット式のものがある。
【０００５】
インクカートリッジに貯えられたインクの量は印字によって徐々に減少し、インク量があるレベルまで減少すると印字がかすれた状態となり、目視にて文字を識別することが困難な状態となる。
【０００６】
また、インクジェット式の印字装置のノズルがインクで目詰まりして正常に印字ができない状態（印字不良）が発生していても、利用者が目視にて印字結果をチェックするまでその状態に気がつかない場合がある。
【０００７】
一方、インク供給部材としてインクカセットリボンを用いる画像読取装置では、印字装置により原稿に印字された文字の濃度をセンサで検出し、その検出濃度を基に印字不良を検出する技術が提案されている（特許文献１）。
【０００８】
また、印字不良を検出する際に、印字装置による印字文字数とセンサによって検出した文字の濃度情報とから印字不良の要因を特定し、利用者に通知する技術が提案されている（特許文献２）。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００２−３７０４３４号公報
【特許文献２】特許第３７４２３９３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上記従来の技術では、印字不良の検出により、インクカートリッジやインクカセットリボン等のインク供給部材の交換時期を把握することができる。
【００１１】
しかし、印字不良が検出されても、インク供給部材のインクを全て使い切っていない場合がある。特に、印字面が大きく、一度に複数行の文字列を印字可能な印字装置では、印字面の一部で印字不良が発生しても、印字不良が発生した以外の部分は、継続して印字が可能な場合がある。
【００１２】
そこで、本発明は、たとえ印字面の一部に印字不良が発生したとしても、印字品質を確保しつつインク供給部材のインクを効率よく使用してインク供給部材の交換作業の回数を低減することができる画像読取装置等を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記目的を達成するために、本発明の画像読取装置は、複数のドット出力部を駆動して搬送中の原稿に印字する印字手段と、該印字手段により印字された原稿の画像を読み取る読取手段と、該読取手段により読み取られた画像データに基づいて前記印字手段の印字不良を検出する検出手段と、該検出手段により印字不良が検出された場合に、前記ドット出力部の駆動状態を変更することで印字の継続を可能とする制御手段と、を備えることを特徴とする。
【００１４】
本発明の画像読取装置の制御方法は、複数のドット出力部を駆動して原稿に印字する印字手段と、該印字手段により印字された原稿の画像を読み取る読取手段と、を備える画像読取装置の制御方法であって、前記読取手段により読み取られた画像データに基づいて前記印字手段の印字不良を検出する検出ステップと、該検出ステップで印字不良が検出された場合に、前記ドット出力部の駆動状態を変更することで印字の継続を可能とする制御ステップと、を備えることを特徴とする。
【００１５】
本発明のプログラムは、複数のドット出力部を駆動して原稿に印字する印字手段と、該印字手段により印字された原稿の画像を読み取る読取手段と、を備える画像読取装置を制御するプログラムであって、前記読取手段により読み取られた画像データに基づいて前記印字手段の印字不良を検出する検出ステップと、該検出ステップで印字不良が検出された場合に、前記ドット出力部の駆動状態を変更することで印字の継続を可能とする制御ステップと、をコンピュータに実行させる、ことを特徴とする。
【００１６】
本発明のコンピュータで読み取り可能な記憶媒体は、前記プログラムを格納した、ことを特徴とする。
【発明の効果】
【００１７】
本発明によれば、たとえ複数のドット出力部のうちの一部のドット出力部に印字不良が発生したとしても、印字品質を確保しつつインク供給部材のインクを効率よく使用してインク供給部材の交換作業の回数を低減することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の第１の実施形態である画像読取装置を説明するための概略断面図である。
【図２】画像読取装置の制御系について説明するためのブロック図である。
【図３】印字装置の一例を示す概略図である。
【図４】画像読取装置の動作例について説明するためのフローチャート図である。
【図５】記憶部に記憶された画像データの一例を示す図である。
【図６】エラーメッセージの表示例を示す図である。
【図７】（ａ）は印字装置がドット出力部に供給する電力パターンの一例を示すグラフ図、（ｂ）は（ａ）の電力パターンでの印字装置による印字結果を示す図である。
【図８】記憶部に記憶された駆動パルス数テーブルの一例を示す図である。
【図９】駆動パルス数テーブルの値を参照して文字「８」を印字する場合に、ドット出力部に入力するパルス波形の一例を示すグラフ図である。
【図１０】図４のステップＳ２００８における印字不良の検出処理について説明するためのフローチャート図である。
【図１１】印字範囲にインク滴下エリア座標系を当てはめて複数のインク滴下エリアに区分けする処理を説明するための説明図である。
【図１２】検知ドットマトリクスを説明するための説明図である。
【図１３】インク滴下エリアの拡大図である。
【図１４】インク滴下判定の処理を説明するためのフローチャート図である。
【図１５】検知ドット数テーブルを作成する処理を説明するためのフローチャート図である。
【図１６】印字文字に対応したフォントテーブルの一例を示す図である。
【図１７】出力ドットマトリクスの一例を示す図である。
【図１８】印字不良の判定処理を説明するためのフローチャート図である。
【図１９】図４のステップＳ２００９におけるドット出力部の駆動パルス数（駆動回数）の更新処理について説明するためのフローチャート図である。
【図２０】図４のステップＳ２０１０における、ドット出力部の駆動パルス数が上限値に達しているか否かの判断処理について説明するためのフローチャート図である。
【図２１】本発明の第２の実施形態の画像読取装置における印字装置の構成例を説明するための説明図である。
【図２２】画像読取装置の動作例について説明するためのフローチャート図である。
【図２３】出力部を介して接続されたホストＰＣのディスプレイに表示される印字設定画面の一例を示す図である。
【図２４】印字不良の検出履歴の一例を示す図である。
【図２５】図２３に示す印字設定画面にグレーアウト表示がなされた状態を示す図である。
【図２６】印字不良の検出処理を説明するためのフローチャート図である。
【図２７】出力ドットマトリクスの一例を示す図である。
【図２８】印字不良の判定処理を説明するためのフローチャート図である。
【図２９】エラーメッセージの表示例を示す図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態を図面を参照して説明する。
【００２０】
（第１の実施形態）
図１は、本発明の第１の実施形態である画像読取装置を説明するための概略断面図である。
【００２１】
図１に示すように、本実施形態の画像読取装置１は、給紙トレイ７０に載置された原稿Ｄを給紙するピックアップローラ２、給紙された原稿Ｄを搬送路に給送する給送ローラ３、及び搬送路に給送される原稿Ｄを１枚ずつ分離する分離ローラ４を備える。
【００２２】
給紙トレイ７０には、該給紙トレイ７０に原稿Ｄが載置されているか否かを検知する原稿検知センサ７１が設けられている。
【００２３】
搬送路に給送された原稿Ｄは、搬送ローラ対５により下流側に搬送され、読取ユニット８で画像が読み取られた後、排紙ローラ対７により排紙トレイ７２に排紙される。
【００２４】
読取ユニット８は、原稿Ｄに光を照射する光源２０１と、原稿Ｄからの反射光を受光して画像信号を出力するラインイメージセンサ２００とを備える。
【００２５】
読取ユニット８に対して搬送路を挟んで対向する位置には、例えば白色の対向部材９が配置され、読取ユニット８と搬送ローラ対５との間には、搬送路を搬送される原稿Ｄを検知するレジストセンサ１０が配置されている。
【００２６】
また、読取ユニット８の上流側の搬送ローラ対５と給送ローラ３との間には、原稿Ｄの所定位置に認証のためのナンバリング文字を印字する印字装置１１が配置されている。
【００２７】
ナンバリング文字の印字データ（ナンバリングデータ）は、画像読取装置１に接続された不図示のホストＰＣから取得する。画像読取装置１は、このナンバリングデータ（例えば英数字等の文字コード）に基づき印字パターンを生成して、印字装置１１により原稿Ｄに印字する。
【００２８】
印字装置１１は、例えばインクジェット式の場合、インクカートリッジ１２に蓄えられたインクを噴射することによりドットマトリクス構成の文字を原稿Ｄに印字する。図３に、印字装置１１の一例を示す。図３に示すように、印字装置１１は、例えば８個のドット出力部１１０〜１１７を有している。なお、印字装置１１は、インクリボン式やその他の印字方式で文字を印字するものであっても良い。
【００２９】
画像読取装置１は、上部フレーム８１及び下部フレーム８２から構成され、上部フレーム８１が回動軸８１ａを介して開閉可能に支持されている。搬送路で原稿Ｄの紙詰まり等が発生した際には、上部フレーム８１を開けて搬送路に詰まった原稿を取り除くことができる。
【００３０】
ここで、読取ユニット８の光源２０１から原稿Ｄに光を照射してその反射光をラインイメージセンサ２００で受光することで原稿Ｄの画像を読み取るが、光源２０１及びラインイメージセンサ２００には、それぞれ光量むらや感度むらがある。
【００３１】
このため、ラインイメージセンサ２００で対向部材９を読み取り、光量むらと感度むらをラインイメージセンサ２００の光電変換素子ごとに補正するシェーディング補正を行う。このシェーディング補正では、光源２０１の発光量を適正化する光量調整と、ラインイメージセンサ２００の画像信号出力に対する増幅率を最適化するゲイン調整とを行う。
【００３２】
そして、原稿Ｄの画像を読み取る際には、まず、読取ユニット８のラインイメージセンサ２００により対向部材９を読み取り、シェーディング補正用データを生成して画素ごとに記憶する。
【００３３】
その後、ピックアップローラ２により給紙トレイ７０に載置された原稿Ｄが給紙され、給紙された原稿Ｄは、給送ローラ３及び分離ローラ４によって１枚ずつに分離されて搬送路に給送される。搬送路に給送された原稿Ｄは、搬送ローラ対５によって下流側に搬送され、読取ユニット８のラインイメージセンサ２００で画像が読み取られる。
【００３４】
ここで、前述したシェーディング補正用データを参照して、ラインイメージセンサ２００の画像信号から生成した画像データを画素ごとにシェーディング補正する。画像が読み取られた原稿Ｄは、排紙ローラ対７により下流側に搬送されて排紙トレイ７２に排紙される。
【００３５】
次に、図２を参照して、画像読取装置１の制御系について説明する。
【００３６】
図２において、読取ユニット８は、搬送中の原稿Ｄに光源２０１から光を照射して原稿Ｄから反射した光をラインイメージセンサ２００で光電変換し、不図示のＡ／Ｄ変換部でデジタル化処理を施して所定の色深度の画像データを出力する。
【００３７】
画像処理部１０２は、読取ユニット８から出力された画像データに対してシェーディング処理、色深度変換処理等を行う。
【００３８】
制御部１０６は、不図示のＣＰＵ、ＲＯＭ、及びＲＡＭ等を備え、ＲＯＭには画像読取装置１を制御する各種の処理プログラム、及び各種の処理プログラムを実行するのに必要な各種データが格納される。
【００３９】
出力部１０４は、ＰＣ等の外部装置との通信を行うための通信Ｉ／Ｆ等を備える。記憶部１０５は、ハードディスク、ＲＡＭ、メモリカード等で構成され、制御部１０６の制御により画像データの書き込みおよび読み出しを行う。
【００４０】
操作部１０１は、画像読取装置１に対する指示を入力するためのユーザインタフェイスである。
【００４１】
印字装置１１は、図３に示すドット出力部１１０〜１１７にパルス状の電力を供給して原稿Ｄへ印字を行う。
【００４２】
次に、図４を参照して、本実施形態の画像読取装置１の動作例について説明する。図４の処理は、画像読取装置１のＲＯＭやハードディスク等に記憶されたプログラムがＲＡＭにロードされて、制御部１０６のＣＰＵにより実行されることで遂行される。
【００４３】
図４において、ステップＳ２００１では、ＣＰＵは、不図示のホストＰＣ等によりスキャン開始を指示されたか否かを判断し、スキャン開始が指示された場合は、ステップＳ２００２に進む。
【００４４】
ステップＳ２００２では、ＣＰＵは、原稿検知センサ７１からの信号を基に、給紙トレイ７０に原稿Ｄが存在するか否かを判断し、原稿Ｄが存在する場合は、ステップＳ２００３に進み、原稿Ｄが存在しない場合は、処理を終了する。
【００４５】
ステップＳ２００３で、ＣＰＵは、ピックアップローラ２によって給紙トレイ７０に載置された原稿Ｄを給紙し、ステップＳ２００４に進む。
【００４６】
ステップＳ２００４では、ＣＰＵは、不図示のホストＰＣ等でのユーザ操作により印字装置１１で原稿Ｄに印字を行う設定がなされているか否かを判断する。
【００４７】
そして、ＣＰＵは、印字設定がなされている場合は、ステップＳ２００５に進み、印字設定がなされていない場合は、ステップＳ２００６に進む。
【００４８】
ステップＳ２００５では、ＣＰＵは、印字装置１１により原稿Ｄに印字を行い、ステップＳ２００６に進む。なお、ここでの印字処理の詳細については後述する。
【００４９】
ステップ２００６で、ＣＰＵは、読取ユニット８により原稿Ｄの画像を読み取り、読み取った画像データを記憶部１０５に記憶して、ステップＳ２００７に進む。図５に、記憶部１０５に記憶された画像データ３００の一例を示す。
【００５０】
ステップ２００７では、ＣＰＵは、ステップＳ２００４と同様に、印字装置１１で原稿Ｄに印字を行う設定がなされているか否かを判断し、印字設定がなされている場合は、ステップＳ２００８に進み、印字設定がなされていない場合は、ステップＳ２０１１に進む。なお、ステップＳ２００７では、設定を調べて判断するのではなく、ステップＳ２００５での印字が実行されたか否かによって判断するようにしてもよい。
【００５１】
ステップＳ２００８では、ＣＰＵは、印字不良の検出処理を実行し、ステップＳ２００９に進む。なお、ここでの印字不良の検出処理については後述する。
【００５２】
ステップＳ２００９では、ＣＰＵは、印字装置１１のドット出力部１１０〜１１７の駆動パルス数（駆動回数）を更新し、ステップＳ２０１０に進む。なお、ここでのドット出力部１１０〜１１７の駆動パルス数の更新処理については後述する。
【００５３】
ステップＳ２０１０で、ＣＰＵは、ドット出力部１１０〜１１７の駆動パルス数が閾値である上限値に達しているか否かを判断し、上限値に達している場合は、ステップＳ２０１２に進み、上限値に達していない場合は、ステップＳ２０１１に進む。なお、ドット出力部１１０〜１１７の駆動パルス数が上限値に達しているか否かの判断処理については後述する。
【００５４】
ステップＳ２０１１では、ＣＰＵは、ステップＳ２００６で読み取った原稿Ｄの画像データを出力部１０４を介してホストＰＣ等に転送し、ステップＳ２００２に戻る。
【００５５】
ステップＳ２０１２では、ＣＰＵは、出力部１０４を介して不図示のホストＰＣ等の表示部に例えば図６に示すエラーメッセージを表示して、ユーザに印字不良が発生したことを通知し、読取ユニット８による原稿Ｄの画像の読取処理を停止して、処理を終了する。
【００５６】
次に、図７〜図９を参照して、図４のステップＳ２００５における印字処理について説明する。なお、ここでは、印字装置１１は、５×８ドットで構成される文字を出力可能とするが、印字装置１１が出力可能なドットの数は特に限定されない。
【００５７】
図７（ａ）は印字装置１１がドット出力部１１０〜１１７に供給する電力パターンの一例を示すグラフ図、図７（ｂ）は図７（ａ）の電力パターンでの印字装置１１による印字結果を示す図である。
【００５８】
例えば印字装置１１により文字「８」を印字する場合、図７（ａ）の「ａ」に示すように、文字の縦一行を構成する８個のドットを駆動する為のパルスをそれぞれの位置に対応するドット出力部１１１，１１２，１１４〜１１６に供給する。これにより、文字を構成するドットのうち、図７（ｂ）の「ａ′」の部分が出力される。
【００５９】
本実施形態では、印字装置１１に沿って原稿Ｄが順次搬送されていく構成の為、印字装置１１は、縦方向（主走査方向）の８ドット分のパルス波形を出力した後、原稿Ｄが所定のドット間隔分移動するまで待機し、その後、次の縦方向の８ドット分のパルス波形を出力する。この動作を順次繰り返し行うことで、文字を構成する全ドットを出力する。
【００６０】
通常、ドット出力部で１ドットの出力を行う際には、１つのパルス波形を入力すればよいが、本実施形態では、印字装置１１は、記憶部１０５に記憶された駆動パルス数テーブルＴｐ（図８）を参照し、１ドットを出力する為のパルス数を決定する。
【００６１】
駆動パルス数テーブルＴｐの要素０は、ドット出力部１１０で１ドット出力する際に、印字装置１１がドット出力部１１０に入力するパルス数を表している。同様に、駆動パルス数テーブルＴｐの要素１〜要素７は、それぞれドット出力部１１１〜ドット出力部１１７に入力するパルス数を表している。
【００６２】
図９は、図８の例の駆動パルス数テーブルＴｐの値を参照して文字「８」を印字する場合に、ドット出力部１１０〜１１７に入力するパルス波形の一例を示すグラフ図である。
【００６３】
図８の例の駆動パルス数テーブルＴｐでは、ドット出力部１１２に対応する要素の値が２になっている為、図９の「ａ」の波形は、図７と異なり、１ドットの出力に対して２個の出力パルスが供給される。
【００６４】
このとき、ドット出力部１１２が正常な状態であれば、原稿Ｄには２個のドットが重なり合って出力されるため、他の部分よりも濃い印字となる。
【００６５】
しかし、ドット出力部１１２の一部に詰まり等の不具合が発生して、正常にドットが出力できず、印字濃度が低下している状態であった場合には、ドットを重ねて印字する事によって濃度を補う事ができる。
【００６６】
また、ドットを重ねて印字することによって、ドット出力部１１２のインク流量が増す為、不具合の原因となっている一部の詰まりが解消されることが期待できる。
【００６７】
駆動パルス数テーブルＴｐは、インクカートリッジを交換した際、あるいは利用者の操作によりドット出力部１１２の清掃動作を実行した際に、全ての要素に値１を書き込み、初期化を行う。駆動パルス数テーブルＴｐは、図４のステップＳ２００９で値が更新される。更新処理については後述する。
【００６８】
次に、図１０を参照して、図４のステップＳ２００８における印字不良の検出処理について説明する。
【００６９】
図１０において、印字範囲抽出処理（Ａ）では、読取ユニット８で読み取った印字装置１１による印字部分を含む原稿の画像データ３００（図５）から印字範囲３０１を抽出する。印字範囲３０１は、制御部１０６が印字装置１１を制御する際に設定し、記憶部１０５に保持している座標値を参照して決定する。
【００７０】
マトリクスマッピング処理（Ｂ）では、印字範囲抽出処理（Ａ）で抽出した印字範囲３０１に対して記憶部１０５に保持されているインク滴下エリア座標系５０１を当てはめ、図１１に示すように、複数のインク滴下エリア５０２に区分けする。図１１は、印字装置１１が図３に示すように８個のドット出力部１１０〜１１７を有する場合の一例を示す。
【００７１】
検知ドット数テーブル生成処理（Ｃ）では、マトリクスマッピング処理（Ｂ）で生成した複数のインク滴下エリア５０２の画素を走査し、各インク滴下エリア５０２にインクが滴下されているか否かを判定する。
【００７２】
例えば、印字装置１１が出力するインクが黒であった場合、各インク滴下エリア５０２に、ある輝度値以下の画素が規定数以上あったとき、そのインク滴下エリア５０２にはインクが滴下されていると判定する。そして、その判定結果を記憶部１０５に別途作成した検知ドットマトリクス７００（図１２）に書き込む。
【００７３】
ここで、インク滴下エリア座標系５０１の最も左上の要素、及び検知ドットマトリクス７００の最も左上の要素を原点としてｘ座標、ｙ座標を定義する。また、各インク滴下エリア５０２をＩ［ｙ］［ｘ］と表し、検知ドットマトリクス７００の各要素をＤ［ｙ］［ｘ］と表す。
【００７４】
同様に、各インク滴下エリア５０２に、最も左上の画素を原点としてｉ座標、ｊ座標を定義する。図１３は、インク滴下エリア５０２が縦５画素、横５画素で構成されるときの一例である。ここで、インク滴下エリア５０２の各画素をＡ［ｊ］［ｉ］とし、インク検知のための規定数をＴｈｃ、輝度値をＴｈｂ、画素カウント用の変数をｃｎｔとすると、インク滴下判定の処理は、図１４に示すようになる。
【００７５】
図１４の処理は、画像読取装置１のＲＯＭやハードディスク等に記憶されたプログラムがＲＡＭにロードされて、制御部１０６のＣＰＵにより実行されることで遂行される。
【００７６】
図１４において、ステップＳ８０１では、ＣＰＵは、インク滴下エリア５０２の画素の座標を表す変数ｊ及びインクを検知した画素数を表す変数ｃｎｔを０に初期化してステップＳ８０２に進む。
【００７７】
ステップＳ８０２では、ＣＰＵは、インク滴下エリア５０２の画素の座標を表す変数ｉを０に初期化し、ステップＳ８０３に進む。
【００７８】
ステップＳ８０３では、ＣＰＵは、座標（ｉ，ｊ）で表される、インク滴下エリア５０２の画素Ａ［ｊ］［ｉ］が輝度値Ｔｈｂを超えているか否かを判断する。
【００７９】
そして、ＣＰＵは、画素Ａ［ｊ］［ｉ］が輝度値Ｔｈｂを超えている場合は、画素Ａ［ｊ］［ｉ］にはインクが滴下されていないと判定し、ステップＳ８０６に進む。一方、ＣＰＵは、画素Ａ［ｊ］［ｉ］が輝度値Ｔｈｂ以下の場合は、画素Ａ［ｊ］［ｉ］にはインクが滴下されていると判定し、ステップＳ８０４に進む。
【００８０】
ステップＳ８０４では、ＣＰＵは、変数ｃｎｔの値を１増加させ、ステップＳ８０５に進む。
【００８１】
ステップＳ８０５では、ＣＰＵは、変数ｃｎｔの値がインク検知定数Ｔｈｃを超えているか否かを判断し、超えている場合は、ステップＳ８１１に進み、そうでない場合は、ステップＳ８０６に進む。
【００８２】
ステップＳ８１１では、ＣＰＵは、検知ドットマトリクス７００の要素Ｄ［ｙ］［ｘ］に、インクが滴下されていたことを表す数値１を書き込む。
【００８３】
一方、ステップＳ８０６では、ＣＰＵは、変数ｉの値を１増加させ、ステップＳ８０７に進む。
【００８４】
ステップＳ８０７では、ＣＰＵは、変数ｉの値がインク滴下エリア５０２のｘ軸方向の構成画素数ａｘ未満であるか否かを判断し、変数ｉの値が構成画素数ａｘ未満である場合は、ステップＳ８０３に戻り、そうでない場合は、ステップＳ８０８に進む。
【００８５】
ステップＳ８０８では、ＣＰＵは、変数ｊの値を１増加させ、ステップＳ８０９に進む。
【００８６】
ステップＳ８０９では、ＣＰＵは、変数ｊの値がインク滴下エリア５０２のｙ軸方向の構成画素数ａｙ未満であるか否かを判断し、変数ｊの値が構成画素数ａｙ未満である場合は、ステップＳ８０２に戻り、そうでない場合は、ステップＳ８１０に進む。
【００８７】
ステップＳ８１０では、ＣＰＵは、座標（ｘ，ｙ）で表される検知ドットマトリクス７００の要素Ｄ［ｙ］［ｘ］に、インクが滴下されていなかったことを表す数値０を書き込む。
【００８８】
そして、ＣＰＵは、上記処理を印字範囲３０１に対して適用した全てのインク滴下エリア５０２に対して行い、検知ドットマトリクス７００に結果を書き込む。
【００８９】
次に、ＣＰＵは、検知ドットマトリクス７００を搬送方向に走査し、ｙ座標毎にインクの滴下を検知したエリアの和を求め、記憶部１０５上に作成した検知ドット数テーブル７０１に結果を書き込む。
【００９０】
検知ドット数テーブル７０１の各要素をＴｄ［ｙ］と表すとき、印字装置１１により１文字がｃｘドット×ｃｙドットで表される文字がｓ文字印字された場合、検知ドット数テーブル７０１を作成する処理は図１５に示すようになる。
【００９１】
図１５の処理は、画像読取装置１のＲＯＭやハードディスク等に記憶されたプログラムがＲＡＭにロードされて、制御部１０６のＣＰＵにより実行されることで遂行される。
【００９２】
ステップＳ９００では、ＣＰＵは、検知ドットマトリクス７００内の要素の座標、及び検知ドット数テーブル７０１の要素番号を表す変数ｙに数値０を書き込んで初期化を行い、ステップＳ９０１に進む。
【００９３】
ステップＳ９０１では、ＣＰＵは、検知ドットマトリクス７００内の要素の座標を表す変数ｘ、及び検知ドット数テーブル７０１の要素Ｔｄ［ｙ］に０を書き込んで初期化を行い、ステップＳ９０２に進む。
【００９４】
ステップＳ９０２では、ＣＰＵは、検知ドット数テーブル７０１の要素Ｔｄ［ｙ］の値を検知ドットマトリクス７００の要素Ｄ［ｙ］［ｘ］の値だけ増加させ、ステップＳ９０３に進む。
【００９５】
ステップＳ９０３では、ＣＰＵは、変数ｘの値を１増加させ、ステップＳ９０４に進む。
【００９６】
ステップＳ９０４では、ＣＰＵは、印字装置１１により印字された１文字を構成するｘ方向のドット数ｃｘと印字範囲３０１内に印字装置１１により印字された文字数ｓとの積（ｃｘ×ｓ）を求め、変数ｘの値と比較する。
【００９７】
そして、ＣＰＵは、変数ｘが（ｃｘ×ｓ）未満である場合は、ステップＳ９０２に戻り、変数ｘが（ｃｘ×ｓ）以上の場合は、ステップＳ９０５に進む。
【００９８】
ステップＳ９０５では、ＣＰＵは、変数ｙの値を１増加させ、ステップＳ９０６に進む。
【００９９】
ステップＳ９０６では、ＣＰＵは、変数ｙの値が印字装置１１により印字された１文字を構成するｙ方向のドット数ｃｙ未満か否かを判断する。
【０１００】
そして、ＣＰＵは、変数ｙの値がドット数ｃｙ未満の場合は、ステップＳ９０１に戻り、そうでない場合は、検知ドット数テーブル７０１を作成する処理を終了する。
【０１０１】
次に、図１６及び図１７を参照して、図１０に示す出力ドットマトリクス生成処理（Ｄ）について説明する。
【０１０２】
制御部１０６により印字装置１１に対して文字を印字する制御を行うとき、印字すべき文字列を記憶部１０５に記憶し、保持しておく。出力ドットマトリクス生成処理（Ｄ）では、ＣＰＵは、記憶部１０５に保持されている文字列を取得し、その印字文字列を印字順に走査して、印字文字に対応したフォントテーブル１０００（図１６）を参照する。
【０１０３】
フォントテーブル１０００には、印字装置１１が正常にインクを出力した際に生成されるドットの配置が格納されている。ＣＰＵは、印字装置１１が印字した全ての文字に対してフォントテーブル１０００を参照し、図１７に示すように、記憶部１０５に出力ドットマトリクス１１００を作成する。
【０１０４】
図１０に示す出力ドット数テーブル生成処理（Ｅ）では、出力マトリクス生成処理（Ｄ）で作成した出力ドットマトリクス１１００から検知ドット数テーブル生成処理（Ｃ）と同様に、ｙ座標毎にインクの滴下を検知したエリアの和を求める。そして、その結果を記憶部１０５に作成した出力ドット数テーブル１１０１（図１７）の各要素Ｔｏ［ｙ］に格納する。
【０１０５】
図１０に示す印字不良判定処理（Ｆ）では、図１２に示す検知ドット数テーブル７０１、及び図１７に示す出力ドット数テーブル１１０１について、それぞれのテーブルで番地の等しい要素ごとに数値を比較し、その差が規定値以上の場合、印字不良と判定する。
【０１０６】
検知ドット数テーブル７０１、及び出力ドット数テーブル１１０１の要素数をｃｙ、印字不良判定の為の規定値をＴｈｄとすると、印字不良の判定処理は図１８に示すようになる。
【０１０７】
図１８の処理は、画像読取装置１のＲＯＭやハードディスク等に記憶されたプログラムがＲＡＭにロードされて、制御部１０６のＣＰＵにより実行されることで遂行される。
【０１０８】
ステップＳ１２００では、ＣＰＵは、検知ドット数テーブル７０１、及び出力ドット数テーブル１１０１内のｙ方向の座標をあらわす変数ｙに数値０を書き込んで初期化し、ステップＳ１２０１に進む。
【０１０９】
ステップＳ１２０１では、ＣＰＵは、検知ドット数テーブル７０１の要素Ｔｄ［ｙ］の値と出力ドット数テーブル１１０１の要素Ｔｏ［ｙ］の値との差分（Ｔｏ［ｙ］−Ｔｄ［ｙ］）を計算し規定値Ｔｈｄと比較する。
【０１１０】
そして、ＣＰＵは、差分（Ｔｏ［ｙ］−Ｔｄ［ｙ］）が規定値Ｔｈｄを超える場合は、ステップＳ１２０５に進み、差分（Ｔｏ［ｙ］−Ｔｄ［ｙ］）が規定値Ｔｈｄ以下の場合は、ステップＳ１２０２に進む。
【０１１１】
ステップＳ１２０５では、ＣＰＵは、記憶部１０５に記憶された図１７に示す印字不良検出テーブル１１０２の要素Ｔｉ［ｙ］に、印字不良を検出したことを示す値である１を書き込み、処理を終了する。
【０１１２】
ステップＳ１２０２では、ＣＰＵは、記憶部１０５に記憶された図１７に示す印字不良検出テーブル１１０２の要素Ｔｉ［ｙ］に、印字不良を検出しなかったことを示す値である０を書き込み、ステップＳ１２０３に進む。
【０１１３】
ステップＳ１２０３では、ＣＰＵは、変数ｙの値を１増加させ、ステップＳ１２０４に進む。
【０１１４】
ステップＳ１２０４では、ＣＰＵは、変数ｙの値が印字装置１１により印字された１文字を構成するｙ方向のドット数ｃｙ未満が否かを判断する。
【０１１５】
そして、ＣＰＵは、変数ｙの値がドット数ｃｙ未満の場合は、ステップＳ１２００に戻り、変数ｙの値がドット数ｃｙ以上の場合は、処理を終了する。
【０１１６】
上述した印字不良の判定処理により、印字不良を検出すると共に、印字不良検出テーブル１１０２を作成して、印字不良が発生したドット出力部を特定することができる。
【０１１７】
次に、図１９を参照して、図４のステップＳ２００９におけるドット出力部の駆動パルス数（駆動回数）の更新処理について説明する。ここでは、図１８の印字不良判定処理で作成した印字不良検出テーブル１１０２を基に、図８に示す駆動パルス数テーブルＴｐを更新する処理を説明する。
【０１１８】
ステップＳ１５０１で、ＣＰＵは、演算に使用するための変数ｙを０に初期化し、ステップＳ１５０２に進む。
【０１１９】
ステップＳ１５０２では、ＣＰＵは、記憶部１０５に記憶された印字不良検出テーブル１１０２の要素Ｔｉ［ｙ］の値が１か０かを判断する。
【０１２０】
そして、ＣＰＵは、要素Ｔｉ［ｙ］の値が印字不良が発生したことを表す１である場合は、ステップＳ１５０３に進み、要素Ｔｉ［ｙ］の値が印字不良が発生していないことを表す０である場合は、ステップＳ１５０４に進み。
【０１２１】
ステップＳ１５０３では、ＣＰＵは、駆動パルス数テーブルＴｐの要素Ｔｐ［ｙ］の値を１増加させ、ステップＳ１５０４に進む。
【０１２２】
例えば、インクカートリッジ１２を交換、あるいはドット出力部を清掃した後、初めて駆動パルス数テーブルＴｐの要素Ｔｐ［ｙ］の値を１増加させた際には、要素Ｔｐ［ｙ］は１に初期化されているため、要素Ｔｐ［ｙ］の値を１増加させると、２になる。
【０１２３】
ステップＳ１５０４では、ＣＰＵは、変数ｙの値を１増加させ、ステップＳ１５０５に進む。
【０１２４】
ステップＳ１５０５では、ＣＰＵは、変数ｙの値が印字装置１１のドット出力部１１０〜１１７の数の８未満か否かを判断し、変数ｙの値が８未満の場合は、ステップＳ１５０２に戻り、変数ｙの値が８未満でない場合は、図４のステップＳ２０１０に進む。
【０１２５】
以上の処理により、図１８の印字不良判定処理で作成した印字不良検出テーブル１１０２を基に、印字装置１１の全てのドット出力部１１０〜１１７に対応する駆動パルス数を更新することができる。
【０１２６】
引き続き印字を行う場合、印字装置１１は、図４のステップＳ２００５において、更新された駆動パルス数テーブルＴｐを参照してドット出力部１１０〜１１７の駆動パルス数を決定する。
【０１２７】
次に、図２０を参照して、図４のステップＳ２０１０における、ドット出力部１１０〜１１７の駆動パルス数が上限値に達しているか否かの判断処理について説明する。
【０１２８】
ステップＳ１６０１では、ＣＰＵは、演算に使用するための変数ｙを０に初期化し、ステップＳ１６０２に進む。
【０１２９】
ステップＳ１６０２では、ＣＰＵは、駆動パルス数テーブルＴｐの要素Ｔｐ［ｙ］の値が駆動パルス数の上限値Ｔｐｍａｘを超えているか否かを判断し、超えている場合は、図４のステップＳ２０１２に進み、超えていない場合は、ステップＳ１６０３に進む。
【０１３０】
ここで、駆動パルス数の上限値Ｔｐｍａｘは、固定の値として記憶部１０５等に保持されている。
【０１３１】
例えば、本実施形態では、図９のグラフ図を参照すると、駆動パルス数が４以上になると、文字を構成する隣のドットと重なり合ってしまうことが容易に想定される為、駆動パルス数の上限値Ｔｐｍａｘは３程度が好適である。
【０１３２】
ステップＳ１６０３では、ＣＰＵは、変数ｙの値を１増加させ、ステップＳ１６０４に進む。
【０１３３】
ステップＳ１６０４では、ＣＰＵは、変数ｙの値が印字装置１１のドット出力部１１０〜１１７の数の８未満か否かを判断し、変数ｙの値が８未満の場合は、ステップＳ１６０２に戻り、変数ｙの値が８未満でない場合は、図４のステップＳ２０１１に進む。
【０１３４】
以上説明したように、本実施形態では、印字濃度が低下して印字不良が検出された場合に、ドット出力部の駆動状態を変更、すなわち、印字不良が検出された部位に対応するドット出力部の駆動回数を増加させ、自動的に印字濃度が低下した部分を補う。これにより、印字品質を確保しつつインクカートリッジ１２のインクを効率よく使用して、該インクカートリッジ１２の交換作業の回数を軽減することができる。
【０１３５】
（第２の実施形態）
次に、図２１〜図２９を参照して、本発明の第２の実施形態である画像読取装置について説明する。なお、上記第１の実施形態に対して重複又は相当する部分については図及び符号を流用して説明する。
【０１３６】
図２１は、本発明の第２の実施形態の画像読取装置における印字装置の構成例を説明するための説明図である。
【０１３７】
図２１に示すように、複数（図では２４個）のドット出力部１８００を備え、これらのドット出力部１８００により搬送路を搬送される原稿Ｄに向けてインク滴を塗付し、文字を印字する。
【０１３８】
ここで、本実施形態では、印字装置１１は、複数のドット出力部１８００が複数の区分に分割され、それぞれの区分において、複数の異なる文字列を一括して印字可能に構成されている。
【０１３９】
図２１の例では、２４個のドット出力部１８００が３つの区分１８０１〜１８０３に分割され、それぞれ縦方向の８ドットからなる文字列を３行分一括して印字可能に構成されている。なお、その他の画像読取装置の基本的な装置構成については、上記第１の実施形態と同様であるので、その説明を省略する。
【０１４０】
次に、図２２を参照して、本実施形態の画像読取装置の動作例について説明する。
【０１４１】
図２２の処理は、画像読取装置のＲＯＭやハードディスク等に記憶されたプログラムがＲＡＭにロードされて、制御部１０６のＣＰＵにより実行されることで遂行される。
【０１４２】
まず、図２２の処理を開始する前に、出力部１０４を介して接続されたホストＰＣのディスプレイに図２３に示す印字設定画面を表示して、ユーザ操作により印字装置１１の動作を設定した場合の動作について説明する。
【０１４３】
図２３は、上述したように、印字装置１１のドット出力部１８００を３つの区分１８０１〜１８０３に分割し、縦方向の８ドットの文字列を一括して３行分印字設定可能な印字設定画面の一例を示す図である。
【０１４４】
以降の説明では、区分１８０１を使用して印字される文字列を第１行目、区分１８０２の部分を使用して印字される文字列を第２行目、区分１８０３の部分を用いて印字される文字列を第３行目とする。
【０１４５】
図２３に示す印字設定画面において、チェックボックスａ１は、印字装置１１により第１行目を印字するか否かを選択するためのボックスである。図の例では、チェックボックスａ１は、印字装置１１により第１行目の印字を行う選択がなされている。
【０１４６】
テキストボックスｂ１は、第１行目に印字する文字列を入力するためのボックスである。図の例では、テキストボックスｂ１に文字列「２００８／０９／３０」が入力されている。
【０１４７】
同様に、チェックボックスａ２及びチェックボックスａ３は、それぞれ印字装置１１により第２行目及び第３行目を印字するか否かを選択するためのボックスである。テキストボックスｂ２及びテキストボックスｂ３は、それぞれ第２行目及び第３行目に印字する文字列を入力するためのボックスである。図の例では、上段と中段の２行のみを印字する場合の印字設定画面を示している。
【０１４８】
また、出力部１０４を介して接続されたホストＰＣは、画像読取装置での印字不良の検出履歴を参照して、図２３に示す印字設定画面の表示を切り替える。印字不良の検出履歴は、例えば図２４に示すように、データテーブルで表され、画像読取装置の記憶部１０５に保持されるものとする。
【０１４９】
インクカートリッジ１２を装着、あるいは交換したことを検知するか或いは通知された場合、全ての行の印字不良状態が０にされ、印字不良の検出履歴がリセットされる。そして、印字不良状態が１になっている行は、インクカートリッジ交換後に印字不良が検出された行となる。
【０１５０】
図２４に示すように、例えば第１行目に印字不良を検出した履歴が残っているとき、ホストＰＣのディスプレイに表示される印字設定画面のチェックボックスａ１及びテキストボックスｂ１は、図２５に示すように、グレーアウト表示になる。
【０１５１】
図２５のグレーアウト表示の部分は、ユーザが選択あるいは文字入力のできない状態となっていることを示す。
【０１５２】
以降、本実施形態では、図２３の印字設定画面において上段と中段に印字するように設定した状態で印字装置１１を動作させる場合を例に図２２のフローチャート図に沿って説明する。
【０１５３】
ステップＳ３００１では、ＣＰＵは、ホストＰＣによりスキャン開始を指示されたか否かを判断し、スキャン開始が指示された場合は、ステップＳ３００２に進む。
【０１５４】
ステップＳ３００２では、ＣＰＵは、原稿検知センサ７１からの信号を基に、給紙トレイ７０に原稿Ｄが存在するか否かを判断し、原稿Ｄが存在する場合は、ステップＳ３００３に進み、原稿Ｄが存在しない場合は、処理を終了する。
【０１５５】
ステップＳ３００３で、ＣＰＵは、ピックアップローラ２によって給紙トレイ７０に載置された原稿Ｄを給紙し、ステップＳ３００４に進む。
【０１５６】
ステップＳ３００４では、ＣＰＵは、ホストＰＣでのユーザ操作により印字装置１１で原稿Ｄに印字を行う設定がなされているか否かを判断する。
【０１５７】
具体的には、ＣＰＵは、図２３に示す印字設定画面のチェックボックスａ１，ａ２，ａ３にユーザ操作により入力されて記憶された選択情報を参照する。そして、ＣＰＵは、チェックボックスａ１，ａ２，ａ３のうち少なくとも一つが印字を行う設定と記憶されていた場合は、ステップＳ３００５に進み、全てが非選択のため印字を行わない設定である場合は、ステップＳ３００６に進む。
【０１５８】
ステップＳ３００５では、ＣＰＵは、印字装置１１により原稿Ｄに印字を行い、ステップＳ３００６に進む。ここでは、印字装置１１によって、第１行目に「２００８．０９．３０」の文字列が印字され、第２行目に「ＡＢＣ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｉｎｃ．」の文字列が印字される。
【０１５９】
ステップ３００６で、ＣＰＵは、読取ユニット８により原稿Ｄの画像を読み取り、読み取った画像データ（図５参照）を記憶部１０５に記憶して、ステップＳ３００７に進む。
【０１６０】
ステップ３００７では、ＣＰＵは、ステップＳ３００４と同様に、ホストＰＣでのユーザ操作により印字装置１１で原稿Ｄに印字を行う設定がなされているか否かを記憶された情報を基に判断する。そして、ＣＰＵは、原稿Ｄに印字を行う設定であった場合は、ステップＳ３００８に進み、原稿Ｄに印字を行う設定でなかった場合は、ステップＳ３０１０に進む。
【０１６１】
ステップＳ３００８では、ＣＰＵは、印字を行った行（本実施形態では、上段と中段の２行）の印字結果に対して図２６に示す印字不良の検出処理を実行し、ステップＳ３００９に進む。
【０１６２】
ここで、図２６に示す印字範囲抽出処理（Ａ）、マトリクスマッピング処理（Ｂ）、検知ドット数テーブル生成処理（Ｃ）、出力ドットマトリクス生成処理（Ｄ）及び出力ドット数テーブル生成処理（Ｅ）は、上記第１の実施形態（図１０）と同様である。従って、これらの処理の説明を省略し、ステップＳ３００９での処理である印字不良判定処理（Ｆ）についてのみ説明する。
【０１６３】
図２６に示す印字不良判定処理（Ｆ）では、図１２に示す検知ドット数テーブル７０１、及び図２７に示す出力ドット数テーブル１１０１について、それぞれのテーブルで番地の等しい要素ごとに数値を比較し、その差が規定値以上の場合、印字不良と判定する。
【０１６４】
検知ドット数テーブル７０１、及び出力ドット数テーブル１１０１の要素数をｃｙ、印字不良判定の為の規定値をＴｈｄとすると、印字不良の判定処理は図２８に示すようになる。
【０１６５】
図２８の処理は、画像読取装置のＲＯＭやハードディスク等に記憶されたプログラムがＲＡＭにロードされて、制御部１０６のＣＰＵにより実行されることで遂行される。
【０１６６】
ステップＳ４２００では、ＣＰＵは、検知ドット数テーブル７０１、及び出力ドット数テーブル１１０１内のｙ方向の座標をあらわす変数ｙに数値０を書き込んで初期化し、ステップＳ４２０１に進む。
【０１６７】
ステップＳ４２０１では、ＣＰＵは、検知ドット数テーブル７０１の要素Ｔｄ［ｙ］の値と出力ドット数テーブル１１０１の要素Ｔｏ［ｙ］の値との差分（Ｔｏ［ｙ］−Ｔｄ［ｙ］）を計算し規定値Ｔｈｄと比較する。
【０１６８】
そして、ＣＰＵは、差分（Ｔｏ［ｙ］−Ｔｄ［ｙ］）が規定値Ｔｈｄを超える場合は、印字不良有りと判定し、印字不良を検出したことを示す動作フラグをセットして処理を終了する。また、ＣＰＵは、差分（Ｔｏ［ｙ］−Ｔｄ［ｙ］）が規定値Ｔｈｄ以下の場合は、ステップＳ４２０２に進む。
【０１６９】
ステップＳ４２０２では、ＣＰＵは、変数ｙの値を１増加させ、ステップＳ４２０３に進む。
【０１７０】
ステップＳ４２０３では、ＣＰＵは、変数ｙの値が印字装置１１により印字された１文字を構成するｙ方向のドット数ｃｙ未満が否かを判断する。
【０１７１】
そして、ＣＰＵは、変数ｙの値がドット数ｃｙ未満の場合は、ステップＳ４２００に戻り、変数ｙの値がドット数ｃｙ以上の場合は、印字不良無しと判定し、印字不良が無かったことを表す動作フラグをセットして処理を終了する。
【０１７２】
上述した印字不良の検出処理を行うことにより、印字装置１１の印字不良を検出することができる。なお、複数行に印字した場合は、おのおのの印字をした行について上記処理を行うことになる。
【０１７３】
ステップＳ３００９では、ＣＰＵは、ステップＳ３００８の印字不良の検出処理において、少なくとも１行の印字不良を検出した場合は、ステップＳ３０１１に進み、全ての行で印字不良が発生しなかった場合は、ステップＳ３０１０に進む。
【０１７４】
ステップＳ３０１０では、ＣＰＵは、ステップＳ３００６で読み取った原稿Ｄの画像データを出力部１０４を介してホストＰＣに転送し、ステップＳ３００２に戻る。
【０１７５】
ステップＳ３０１１で、ＣＰＵは、記憶部１０５に保持された印字不良の検出履歴（図２７）において、印字不良を検出した行の印字不良状態に１を書き込み、ステップＳ３０１２に進む。
【０１７６】
ステップＳ３０１２では、ＣＰＵは、出力部１０４を介してホストＰＣのディスプレイに例えば図２９に示すエラーメッセージを表示して、ユーザに印字不良が発生したことを通知し、読取ユニット８による原稿Ｄの画像の読取処理を停止して、処理を終了する。
【０１７７】
以上説明したように、本実施形態では、印字装置１１の印字不良を検出してユーザに通知することで、印字不良に気づかずに画像の読み取り処理を継続してしまうことを防止することができる。また、印字不良を検出した行については、ホストＰＣのディスプレイに表示される印字設定画面の設定項目がグレーアウト表示になるため、ユーザはホストＰＣからの設定の際に印字不良の発生した部分を避けて印字設定を行うことができる。
【０１７８】
例えば、図２１の「ａ」に示すドット出力部１８００にインク詰まり等の不具合が発生して正常に印字が行えなくなったとする。この場合、画像読取装置は、印字装置１１の印字不良を検出するとともに、図２１の「ａ」に示すドット出力部１８００が印字不能部分であると認識し、画像の読取処理を停止する。
【０１７９】
そして、図２５に示すように、ホストＰＣのディスプレイに表示される印字設定画面の設定項目のうち、印字不能部分のドット出力部を使用して文字列を印字しなければならない第１行目（区分１８０１）の項目をグレーアウト表示する。これにより、ユーザ操作による印字設定画面の第１行目（区分１８０１）の項目での印字設定を拒否する。
【０１８０】
ここで、ユーザが印字設定画面において第２行目（区分１８０２）、第３行目（区分１８０３）のドット出力部１８００を使用して印字を継続する選択操作をした場合、引き続き原稿の画像の読取処理、および文字列の印字処理を行うことができる。
【０１８１】
従って、印字装置１１の印字品質を原稿１枚に印字するごとに一々確認する必要がなく、安心して原稿に印字することができると共に、印字不良が発生した後でも、印字不良が発生したドット出力部以外の正常に印字可能なドット出力部１８００を利用して印字処理を継続することができる。これにより、印字品質を確保しつつインクカートリッジ１２のインクを効率よく使用して、該インクカートリッジ１２の交換作業の回数を軽減することができる。
【０１８２】
なお、本実施形態では、印字装置１１が一括で印字可能な行数を３行としたが、２行或いは４行以上であってもよい。
【０１８３】
また、本実施形態では、印字装置１１の出力を文字列としたが、複数のビットで構成される画像データを出力しても良い。
【０１８４】
更に、本実施形態では、印字設定をユーザ操作により選択させる場合を例示したが、固定の印字設定を持つ画像読取装置や、自動的に印字設定を行う画像読取装置等、印字設定手段を持たない画像読取装置に本発明を適用してもよい。
【０１８５】
更に、本実施形態では、印字不良が発生した行をユーザに通知した後、ホストＰＣ側での印字設定画面にその結果を反映させ、印字不能部分の行に対応する設定項目を入力不能な状態としたが、これに限定されない。
【０１８６】
たとえば、ユーザが印字不能部分の行に対応する設定項目に対して何らかの設定操作をしたときに、正常に印字できない可能性がある旨をユーザに通知しても良い。
【０１８７】
また、印字不良が発生した際に、印字する行の変更をユーザに行わせたが、自動的に印字する行を印字不能な行から印字可能な行に変更してもよい。また、印字位置の変更は行単位に行ったが、ドット単位で行ってもよい。
【０１８８】
なお、本発明は、上記各実施形態に例示したものに限定されるものではなく、本発明の要旨を逸脱しない範囲において適宜変更可能である。
【０１８９】
例えば、本発明の処理の一部又は全部を画像読取装置に出力部１０４を介して接続されたホストＰＣ等の外部装置で行ってもよい。この場合、画像読取装置と外部装置とを含むシステムが本発明の画像読取装置に相当する。
【０１９０】
また、上記各実施形態及びその変形例の任意の構成要素を他の実施形態に追加してもよく、本発明に含まれる。
【０１９１】
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。
【０１９２】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１９３】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【０１９４】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１９５】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う場合である。
【符号の説明】
【０１９６】
１        画像読取装置
２        ピックアップローラ
３        給送ローラ
４        分離ローラ
５        搬送ローラ対
７        排紙ローラ対
８        読取ユニット
９        対向部材
１０      レジストセンサ
１１      印字装置
１２      インクカートリッジ
７０      給紙トレイ
７１      原稿検知センサ
７２      排紙トレイ
８１      上部フレーム
８１ａ    回転軸
８２      下部フレーム
１０１    操作部
１０２    画像処理部
１０４    出力部
１０５    記憶部
１０６    制御部
Ｄ        原稿
１１０〜１１７  ドット出力部
１８００  ドット出力部
【図１】
2010253710.tif 000003
【図２】
2010253710.tif 000004
【図３】
2010253710.tif 000005
【図４】
2010253710.tif 000006
【図５】
2010253710.tif 000007
【図６】
2010253710.tif 000008
【図７】
2010253710.tif 000009
【図８】
2010253710.tif 000010
【図９】
2010253710.tif 000011
【図１０】
2010253710.tif 000012
【図１１】
2010253710.tif 000013
【図１２】
2010253710.tif 000014
【図１３】
2010253710.tif 000015
【図１４】
2010253710.tif 000016
【図１５】
2010253710.tif 000017
【図１６】
2010253710.tif 000018
【図１７】
2010253710.tif 000019
【図１８】
2010253710.tif 000020
【図１９】
2010253710.tif 000021
【図２０】
2010253710.tif 000022
【図２１】
2010253710.tif 000023
【図２２】
2010253710.tif 000024
【図２３】
2010253710.tif 000025
【図２４】
2010253710.tif 000026
【図２５】
2010253710.tif 000027
【図２６】
2010253710.tif 000028
【図２７】
2010253710.tif 000029
【図２８】
2010253710.tif 000030
【図２９】
2010253710.tif 000031