(57)【要約】【課題】安価かつ容易に文字化け印刷の発生を抑制する。【解決手段】プリンター１０は、ネットワーク５０を介して、印刷命令を含む印刷ジョブデータを受信する通信部１２と、印刷ジョブデータを解析し、印刷命令を記述した印刷コード名を取得する印刷コード名取得部２８と、印刷した印刷量を示す印刷情報を印刷コード名に関連付けて記憶する印刷情報記憶部３０と、印刷情報記憶部３０に記憶された印刷コード名毎の印刷情報に対して統計処理を行い、印刷コード名取得部２８が取得した印刷コード名で印刷される頻度を算出し、算出した頻度に応じて印刷ジョブデータの印刷を行うか、否かを判定する印刷判定部２４と、印刷判定部２４の判定結果に基づき、印刷ジョブデータを印刷するプリントエンジン３８と、を備える。【選択図】図１
2012250518.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続された印刷装置であって、
前記ネットワークを介して、印刷命令を含む印刷ジョブデータを受信する受信部と、
前記印刷ジョブデータを解析し、前記印刷命令を記述した印刷コード名を取得する印刷コード名取得部と、
印刷した印刷量を示す印刷情報を前記印刷コード名に関連付けて記憶する印刷情報記憶部と、
前記印刷情報記憶部に記憶された前記印刷コード名毎の前記印刷情報に対して統計処理を行い、前記印刷コード名取得部が取得した前記印刷コード名で印刷される頻度を算出し、算出した前記頻度に応じて前記印刷ジョブデータの印刷を行うか、否かを判定する印刷判定部と、
前記印刷判定部の判定結果に基づき、前記印刷ジョブデータを印刷する印刷部と、を備えることを特徴とする印刷装置。
【請求項２】
請求項１に記載の印刷装置において、
前記印刷判定部が前記印刷ジョブデータの印刷を行なわないと判定した場合、前記印刷ジョブデータの印刷指示を受け付ける印刷指示部を備え、
前記印刷指示部で前記印刷指示を受け付けた場合、前記印刷部は前記印刷ジョブデータを印刷することを特徴とする印刷装置。
【請求項３】
請求項２に記載の印刷装置において、
前記印刷指示部で印刷を指示されない場合、
前記印刷ジョブデータは、印刷されること無く破棄されることを特徴とする印刷装置。
【請求項４】
請求項１乃至３のいずれか１項に記載の印刷装置において、
前記印刷部で印刷した第２の印刷量を取得する印刷枚数取得部を備え、
前記印刷情報記憶部は、前記印刷コード名に関連する前記印刷情報を前記第２の印刷量に基づいて更新することを特徴とする印刷装置。
【請求項５】
請求項１乃至４のいずれか１項に記載の印刷装置において、
前記印刷命令は、ジョブを制御するジョブ制御コマンドと、印刷するページ毎に描画情報が記述されたページ記述コマンドを含み、
前記印刷コード名取得部は、前記ジョブ制御コマンドに記述された前記印刷コード名を抽出して取得することを特徴とする印刷装置。
【請求項６】
請求項５に記載の印刷装置において、
前記印刷コード名取得部は、前記ジョブ制御コマンドに記述された前記印刷コード名を抽出できない場合、前記ページ記述コマンドの中から前記印刷コード名に関する情報を抽出し、抽出した前記情報に基づいて前記印刷コード名を取得することを特徴とする印刷装置。
【請求項７】
接続されたネットワークを介して、印刷命令を含む印刷ジョブデータを受信する第１工程と、
前記印刷ジョブデータを解析し、前記印刷命令を記述した印刷コード名を取得する第２工程と、
印刷した印刷量を示す印刷情報と前記印刷コード名が関連付けて記憶されているデータの中から、前記印刷コード名毎の前記印刷情報に対して統計処理を行い、取得した前記印刷コード名で印刷される頻度を算出する第３工程と、
算出した前記頻度に応じて前記印刷ジョブデータの印刷を行うか、否かを判定する第４工程と、
判定結果に基づき、前記印刷ジョブデータを印刷する第５工程と、を備えることを特徴とする印刷方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置および印刷方法に関する。
【背景技術】
【０００２】
近年、ネットワークの普及に伴い、会社等の組織においてプリンターをネットワークに接続し、複数の人数でプリンターを共用するという利用形態が一般的となっている。このような利用形態では、ユーザーは、使用するプリンターに応じたプリンタードライバーをクライアントコンピューターにインストールしておき、印刷する際には所望のプリンターに応じたプリンタードライバーを指定することで、所望のプリンターで印刷を行うことができる。
周知のように、プリンタードライバーは、対応するプリンターにおいて印刷を制御するコマンド群を含む印刷ジョブデータを生成する機能を有する。これらのコマンド群を包含するコマンド体系は、プリンターのメーカーや印刷方法により異なる。従って、プリンターのＩＰアドレスの設定ミス等により、プリンタードライバーのコマンド体系が異なるプリンターに印刷ジョブデータが送信された場合、印刷ジョブデータを受信したプリンターは、文字化けした情報を印刷用紙に印刷し、印刷用紙を大量に無駄にすることがあった。
このようなことを回避すべく、下記特許文献１に示すように、印刷ジョブデータに基づいて展開したイメージ画像データにおける空白領域をページ毎に監視し、空白領域の占有率から誤印刷を判定する印刷装置が提案されている。
また、下記特許文献２では、印刷制御のコマンド群の先頭に、全てのプリンターが識別可能な情報データ列を付加し、プリンターが情報データ列を識別することで誤印刷を回避する印刷制御装置が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２４７４８０号公報
【特許文献２】特開２００７−１４０６５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、イメージ画像データにおける空白領域の占有率による判定は、空白領域が多いコンテンツの印刷時には、誤判定されることがあった。また、認識可能なコマンド体系の情報をプリンターが予め保持する場合、想定されるコマンド体系の情報をプリンターの工場出荷時に登録させる必要があるため手間とコストを要することに加え、購入後に追加されたコマンド体系をサポートするために、ファームウェア等の書き換えが必要になり、手間とコストを更に要した。
そこで本発明は、前記課題に鑑みてなされたものであり、安価かつ容易に文字化け印刷の発生を抑制することを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００６】
［適用例１］
本適用例にかかる印刷装置は、ネットワークに接続された印刷装置であって、前記ネットワークを介して、印刷命令を含む印刷ジョブデータを受信する受信部と、前記印刷ジョブデータを解析し、前記印刷命令を記述した印刷コード名を取得する印刷コード名取得部と、印刷した印刷量を示す印刷情報を前記印刷コード名に関連付けて記憶する印刷情報記憶部と、前記印刷情報記憶部に記憶された前記印刷コード名毎の前記印刷情報に対して統計処理を行い、前記印刷コード名取得部が取得した前記印刷コード名で印刷される頻度を算出し、算出した前記頻度に応じて前記印刷ジョブデータの印刷を行うか、否かを判定する印刷判定部と、前記印刷判定部の判定結果に基づき、前記印刷ジョブデータを印刷する印刷部と、を備えることを特徴とする。
【０００７】
このような構成によれば、印刷情報記憶部に記憶されている印刷コード名毎の印刷量の情報に基づいて、受信した印刷ジョブデータが記述されている印刷コード名で印刷される頻度が算出され、算出された頻度に応じて受信した印刷ジョブデータを印刷するか、否かが判定され、印刷を行うと判定された場合に印刷部は受信した印刷ジョブデータを印刷する。従って、受信した印刷ジョブデータが記述されている印刷コード名で印刷される頻度に応じて印刷するか、否かが決定されるため、印刷可能な印刷コード名の情報を保持し、最新の情報に更新するような手間やコストが不要で、文字化け印刷を容易に抑制できる。
【０００８】
［適用例２］
上記適用例にかかる印刷装置において、前記印刷判定部が前記印刷ジョブデータの印刷を行なわないと判定した場合、前記印刷ジョブデータの印刷指示を受け付ける印刷指示部を備え、前記印刷指示部で前記印刷指示を受け付けた場合、前記印刷部は前記印刷ジョブデータを印刷することが好ましい。
【０００９】
このような構成によれば、受信した印刷ジョブデータが印刷頻度の少ない印刷コード名で記述されている場合でも、ユーザーの指示に応じて受信した印刷ジョブデータを印刷できる。
【００１０】
［適用例３］
上記適用例にかかる印刷装置において、前記印刷指示部で印刷を指示されない場合、前記印刷ジョブデータは、印刷されること無く破棄されても良い。
【００１１】
［適用例４］
上記適用例にかかる印刷装置において、前記印刷部で印刷した第２の印刷量を取得する印刷枚数取得部を備え、前記印刷情報記憶部は、前記印刷コード名に関連する前記印刷情報を前記第２の印刷量に基づいて更新することが好ましい。
【００１２】
このような構成によれば、印刷情報記憶部には逐次新しい印刷情報が記憶される。
【００１３】
［適用例５］
上記適用例にかかる印刷装置において、前記印刷命令は、ジョブを制御するジョブ制御コマンドと、印刷するページ毎に描画情報が記述されたページ記述コマンドを含み、前記印刷コード名取得部は、前記ジョブ制御コマンドに記述された前記印刷コード名を抽出して取得することが好ましい。
【００１４】
このような構成によれば、信頼性の高い印刷コード名を取得できる。
【００１５】
［適用例６］
上記適用例にかかる印刷装置において、前記印刷コード名取得部は、前記ジョブ制御コマンドに記述された前記印刷コード名を抽出できない場合、前記ページ記述コマンドの中から前記印刷コード名に関する情報を抽出し、抽出した前記情報に基づいて前記印刷コード名を取得することが好ましい。
【００１６】
このような構成によれば、印刷ジョブデータから印刷コード名を確実に取得できる。
【００１７】
［適用例７］
本適用例にかかる印刷方法は、接続されたネットワークを介して、印刷命令を含む印刷ジョブデータを受信する第１工程と、前記印刷ジョブデータを解析し、前記印刷命令を記述した印刷コード名を取得する第２工程と、印刷した印刷量を示す印刷情報と前記印刷コード名が関連付けて記憶されているデータの中から、前記印刷コード名毎の前記印刷情報に対して統計処理を行い、取得した前記印刷コード名で印刷される頻度を算出する第３工程と、算出した前記頻度に応じて前記印刷ジョブデータの印刷を行うか、否かを判定する第４工程と、判定結果に基づき、前記印刷ジョブデータを印刷する第５工程と、を備えることを特徴とする。
【００１８】
このような方法によれば、記憶されている印刷コード名毎の印刷量の情報に基づいて、受信した印刷ジョブデータが記述されている印刷コード名で印刷される頻度が算出され、算出された頻度に応じて受信した印刷ジョブデータを印刷するか、否かが判定され、印刷を行うと判定された場合、受信した印刷ジョブデータは印刷される。従って、受信した印刷ジョブデータが記述されている印刷コード名で印刷される頻度に応じて印刷するか、否かが決定されるため、印刷可能な印刷コード名の情報を保持し、最新の情報に更新するような手間やコストが不要で、文字化け印刷を容易に抑制できる。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施形態に係るプリンターの機能構成を説明する図。
【図２】印刷コード名毎の累積印刷ページの一例を示す図。
【図３】プリンターの印刷処理の流れを示すフローチャート。
【発明を実施するための形態】
【００２０】
以下、イメージ画像を媒体に転写する印刷装置について図面を参照して説明する。
【００２１】
（実施形態）
図１は、印刷装置であるプリンター１０の機能構成を説明する図である。このプリンター１０は、通信部１２、表示部１４、操作部１６、印刷制御部２０、印刷情報記憶部３０、イメージバッファー３４およびプリントエンジン３８を備える。
このプリンター１０は、図示を略したＣＰＵ、ＲＡＭ、ＲＯＭ、表示パネルおよび印刷ユニット等のハードウェアを備える。
プリンター１０の通信部１２は、ネットワーク５０に接続され、このネットワーク５０を介してホストコンピューター４０と通信可能に接続されている。
ホストコンピューター４０は、何れも図示を略したＣＰＵ、ＲＡＭ、ＲＯＭおよび記憶装置等のハードウェアを備える。また、ホストコンピューター４０には、例えば、Ｗｉｎｄｏｗｓ（登録商標）のようなＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が組み込まれ、ＯＳはホストコンピューター４０の各機能を管理している。
【００２２】
また、ホストコンピューター４０には、アプリケーションプログラムがインストールされている。ユーザーは、このアプリケーションプログラムを使って画像や文章等のコンテンツを作成し、作成したコンテンツをプリンター１０で印刷すべく指示できる。また、ホストコンピューター４０には、プリンター１０に対応したプリンタードライバー４５がインストールされている。
本実施形態において、ユーザーがホストコンピューター４０上で印刷を指示した場合、プリンタードライバー４５は、プリンター１０で印刷するための印刷ジョブデータを生成し、ネットワーク５０を介してプリンター１０に送信する。通信部１２は受信部として機能し、ホストコンピューター４０から送信された印刷ジョブデータを受信し、受信した印刷ジョブデータを印刷制御部２０に送る。
【００２３】
印刷制御部２０は、印刷ジョブ解析部２２、印刷判定部２４、印刷枚数取得部２６および印刷コード名取得部２８を備え、印刷ジョブデータに基づいて印刷機能を制御する。これらの機能部は、プリンター１０のハードウェアと、プリンター１０のＲＯＭ等に記憶されたソフトウェアとが協働することで機能を実現する。
印刷ジョブ解析部２２は、印刷コード名取得部２８を備え、印刷ジョブデータを解析する。本実施形態では、印刷ジョブデータは印刷命令を含み、ＪＯＢＩＮＦＯ領域とＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）データ群領域を有する。ＪＯＢＩＮＦＯ領域にはジョブを制御するためのジョブ制御コマンドが記述され、ＰＤＬデータ群領域には、描画命令が所定のページ記述コマンド群に変換された描画コマンドが記述される。
【００２４】
印刷コード名取得部２８は、印刷ジョブデータを解析して描画命令を記述する印刷コード名（例えば、ＥＳＣ／Ｐａｇｅ、ＥＳＣ／Ｃｏｌｏｒ、ＰＳやＰＣＬ等）を取得する。
本実施形態では、印刷コード名取得部２８は、最初に、ＪＯＢＩＮＦＯ領域に記述されているジョブ制御コード（例えば、ＥＪＬ、ＰＪＬ、ＷＳＤやＪＤＦ）のコマンド群の中から、明示的に記述されている印刷コード名を検索する。ここで、印刷コード名が検索された場合、印刷コード名は印刷判定部２４に送られる。
【００２５】
他方で、明示的に記述された印刷コード名を検索できない場合、印刷コード名取得部２８は、ＰＤＬデータ群領域を所定の範囲や所定の時間に渡って読み取り、読み取ったデータの中から印刷コード名に関する記述を抽出する。ここで、印刷コード名に関する記述が抽出できた場合、抽出した印刷コード名の出現頻度等から有意性のある印刷コード名を選定する。他方で、有意性のある印刷コード名を選定できない場合、予め決められた印刷コード名を選定する。このように選定された印刷コード名は、印刷判定部２４に送られる。
また、印刷ジョブ解析部２２は、印刷ジョブデータを解析して所定の形式の中間コードに変換し、変換した中間コードを印刷判定部２４に送る。
【００２６】
印刷情報記憶部３０には、印刷コード名毎に印刷された印刷量の履歴をページ数で示す印刷情報が関連付けて記憶されている。印刷情報記憶部３０に記憶されている印刷情報は、印刷判定部２４から必要に応じて参照される。尚、印刷情報記憶部３０に記憶される印刷情報は、記憶されてから所定の期間が経過後に順次削除される様態でも良い。
印刷判定部２４は、印刷コード名取得部２８から印刷コード名の情報が送られた場合、印刷情報記憶部３０に記憶されている印刷情報を参照して、印刷コード名毎の印刷枚数の累計を算出し、印刷枚数の累計の度数分布を統計処理することで、送られた印刷コード名で印刷される頻度情報を算出し、算出した頻度情報に基づいて、送られた印刷コードはプリンター１０で通常使用されているか、否かを判定する。
【００２７】
図２は、印刷コード名毎の累積印刷ページの一例を示す。図２において、印刷コード名がＥＳＣ／Ｐａｇｅ、ＥＳＣ／ＣｏｌｏｒおよびＥＳＣ／Ｐである場合、累積印刷ページは１００枚から１０００枚以上であるため、印刷判定部２４は、これらの印刷コードは、通常頻繁に使用されると判定する。他方で、印刷コード名が、ＰＳやテキスト（キャラクター印刷）である場合、累積印刷ページは１０枚以下であり、他の印刷コード名の場合と比較して著しく少ないため、印刷判定部２４は、これらの印刷コードは使用頻度が極めて少なく、通常ほとんど使用されないと判定する。このような状況は、印刷ジョブデータがこのプリンター１０に誤送信された場合や、ネットワーク５０の通信処理の不具合等を想定する。
印刷判定部２４は、頻繁に使用される印刷コードであると判定した場合、判定対象の印刷ジョブデータの印刷を決定する。他方で、通常使用されない印刷コードであると判定した場合、判定対象の印刷ジョブデータを印刷しないことを決定する。
【００２８】
印刷ジョブデータの印刷が決定された場合、印刷判定部２４は、印刷部であるプリントエンジン３８の動作に同期して、印刷ジョブデータの中間コードを読み出し、イメージバッファー３４上にイメージデータを展開する。この結果、プリントエンジン３８は、イメージバッファー３４上に展開されたイメージデータに基づいて、用紙上にイメージを印刷する。尚、プリントエンジン３８の印刷方法は限定されるものではなく、インクジェット方式やレーザー方式等の何れの方式でも想定できる。
他方で、印刷ジョブデータの印刷を行わないことが決定された場合、表示部１４と操作部１６で構成される印刷指示部が、ユーザーに対して印刷の実行／非実行を確認する。即ち、印刷制御部２０は、ユーザーに対して印刷の実行／非実行を選択させるユーザーインターフェイス画面（図示は略す。）を生成し、生成したユーザーインターフェイス画面を液晶ディスプレイパネル等の表示部１４に表示する。ここで、ユーザーが操作部１６を操作して印刷の実行を選択した場合、印刷判定部２４は印刷の実行を決定する。また、ユーザーが印刷の非実行を選択した場合、印刷制御部２０は、印刷ジョブデータをプリンター１０で印刷することなく破棄する。
【００２９】
尚、プリンター１０の新規購入時のように、印刷情報記憶部３０に印刷コード名や印刷情報が十分に蓄積されていない場合、印刷判定部２４は、印刷枚数の累計の分布状態に応じて印刷の実行を決定しても良い。例えば、何れの印刷コード名での印刷枚数も有意差が確認できない場合は、何れの印刷コード名であっても印刷を実行しても良い。
また、プリンター１０の工場出荷時に、使用が想定される印刷コード名の情報を印刷情報記憶部３０に予め記憶させておき、記憶された印刷コード名である場合には、印刷枚数の累計に関係なく印刷ジョブデータの印刷の実行を決定しても良い。
【００３０】
更に、プリンター１０の管理者は、使用が想定される印刷コード名や、明示的に使用しない印刷コード名の情報を、ネットワーク５０を介しての遠隔指示、またはプリンター１０の操作部１６から指示できる様態でも良い。
印刷枚数取得部２６は、印刷ジョブデータに関してプリントエンジン３８で印刷されたページ数（第２の印刷量）に関する印刷情報を印刷判定部２４から取得し、印刷コード名取得部２８が取得した印刷コード名と、ページ数に関する印刷情報と、を印刷情報記憶部３０に関連付けて記憶する。ここで、印刷情報記憶部３０に印刷コード名の印刷情報が既に記憶されている場合、印刷枚数取得部２６は、既に記憶されている印刷情報に今回のページ数を加えて印刷情報記憶部３０の印刷情報を更新する。また、印刷コード名の印刷情報が記憶されていない場合、印刷枚数取得部２６は、印刷情報記憶部３０に印刷情報を作成する。
【００３１】
図３は、プリンター１０の印刷処理の流れを示すフローチャートである。プリンター１０が起動されると、プリンター１０のＣＰＵは、印刷ジョブデータを受信したか、否かを判定する（ステップＳ１００）＜第１工程＞。
ここで、ＣＰＵが印刷ジョブデータを受信していないと判定した場合（ステップＳ１００でＮｏ）、ステップＳ１００を繰り返す。
他方で、ＣＰＵが印刷ジョブデータを受信したと判定した場合（ステップＳ１００でＹｅｓ）、受信した印刷ジョブデータから印刷コード名を取得する（ステップＳ１０２）＜第２工程＞。
【００３２】
続いて、ＣＰＵは、記憶されている印刷情報のデータを参照し、取得した印刷コード名の使用頻度を取得する（ステップＳ１０４）＜第３工程＞。
次に、ＣＰＵは、この印刷コードがプリンター１０で通常使用されているか、否かを使用頻度から判定する（ステップＳ１０６）＜第４工程＞。
ここで、この印刷コードは通常使用されていると判定した場合（ステップＳ１０６でＹｅｓ）、ＣＰＵは印刷ジョブデータからイメージデータを展開する（ステップＳ１１０）。
続いて、ＣＰＵは、イメージデータに基づくイメージ画像を用紙に印刷する（ステップＳ１１２）＜第５工程＞。
【００３３】
次に、ＣＰＵは、印刷したページ数を印刷コード名と関連付けて履歴として記憶し（ステップＳ１１４）、一連の処理を終了する。
また、ステップＳ１０６において、通常使用されない印刷コードであると判定した場合（ステップＳ１０６でＮｏ）、ＣＰＵは、ユーザーに対して印刷の続行を問い合わせる（ステップＳ１２０）。
続いて、ＣＰＵは、ユーザーが印刷続行を指示したか、否かを判定する（ステップＳ１２４）。
ここで、ユーザーが印刷続行を指示したと判定した場合（ステップＳ１２４でＹｅｓ）、ステップＳ１１０に進み一連の印刷処理を行う。
他方で、ユーザーが印刷続行を指示しないと判定した場合（ステップＳ１２４でＮｏ）、印刷処理を行うことなく一連の処理を終了する。
【００３４】
以上述べた実施形態によれば、以下のような効果を奏する。
（１）プリンター１０は、通常使用しない印刷コードで記述された印刷ジョブデータを受信した場合、直ちに印刷することなく、ユーザーに印刷の続行を問い合わせ、ユーザーから印刷指示が得られた場合に限り印刷を行うため、文字化け印刷を事前に抑制し、印刷用紙の大量な浪費を防止できる。
（２）印刷情報記憶部３０には、印刷コード名毎に印刷された履歴情報が蓄積されるため、一般的に使用されることが少ない印刷コードであっても多用されるに従い、通常使用される印刷コードとして判断される。従って、プリンター１０が使用される環境に応じて印刷コードが適切に判断されるため、プリンター１０の使用環境に依らず誤印刷を防止できる。
【００３５】
本発明の実施形態について、図面を参照して説明したが、具体的な構成は、この実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。例えば、印刷されずに破棄された印刷ジョブデータに関する情報は、印刷情報記憶部３０等に記憶されても良く、また、表示部１４への表示や、プリントエンジン３８からの印刷出力も想定できる。
また、以上のような手法を実施する装置は、単独の装置によって実現される場合もあれば、複数の装置を組み合わせることによって実現される場合もあり、各種の態様を含むものである。
【符号の説明】
【００３６】
１０…プリンター、１２…通信部、１４…表示部、１６…操作部、２０…印刷制御部、２２…印刷ジョブ解析部、２４…印刷判定部、２６…印刷枚数取得部、２８…印刷コード名取得部、３０…印刷情報記憶部、３４…イメージバッファー、３８…プリントエンジン、４０…ホストコンピューター、４５…プリンタードライバー、５０…ネットワーク。
【図１】
2012250518.tif 000003
【図２】
2012250518.tif 000004
【図３】
2012250518.tif 000005