(57)【要約】【課題】どのようなフィルタでも利用できる画像形成装置及びプログラムを提供する。【解決手段】フィルタが格納された外部メディアを着脱可能な画像形成装置であって、フィルタは、実行形式のオブジェクトであり、かつ、予め定められた仕様の入出力用インターフェースを持ち、外部メディアと接続された場合にフィルタを検知する手段と、ユーザに設定されたフィルタに関するフィルタ設定情報が付記された、印刷対象である印刷データを受信した場合、フィルタ設定情報から、設定されたフィルタを特定可能なフィルタ識別情報を取得する手段と、フィルタ識別情報に基づいて、入出力用インターフェースを介して印刷データを、設定されたフィルタに出力する手段と、設定されたフィルタで処理が行われた印刷データを、入出力用インターフェースを介して入力する手段と、設定されたフィルタで処理が行われた印刷データをＰＤＬに出力する手段と、を備える。【選択図】図２
2011034554.tif 000002
【特許請求の範囲】
【請求項１】
フィルタが格納された外部メディアを着脱自在とする画像形成装置であって、
前記フィルタは、実行形式のオブジェクトであり、かつ、予め定められた仕様に準じた入出力用インターフェースを有しており、
前記外部メディアと接続された場合に前記フィルタを検知する手段と、
ユーザに設定されたフィルタに関するフィルタ設定情報が付記された、印刷対象である印刷データを受信した場合に、前記フィルタ設定情報から、前記ユーザに設定されたフィルタを特定可能なフィルタ識別情報を取得する手段と、
前記フィルタ識別情報に基づいて、前記入出力用インターフェースを介して前記印刷データを前記ユーザに設定されたフィルタに出力する手段と、
前記ユーザに設定されたフィルタで所定の処理が行われた印刷データを、前記入出力用インターフェースを介して入力する手段と、
前記ユーザに設定されたフィルタで所定の処理が行われた印刷データをＰＤＬに出力する手段と、
を備えることを特徴とする画像形成装置。
【請求項２】
前記フィルタ設定情報は、
前記ユーザに設定されたフィルタのプログラム名を含み、
前記ユーザに設定されたフィルタが複数有る場合、前記フィルタのプログラム名毎に、利用される順番を含むことを特徴とする請求項１記載の画像形成装置。
【請求項３】
前記フィルタ設定情報は、
前記画像形成装置のユーザインターフェース及び前記画像形成装置と通信可能な情報処理装置のユーザインターフェースのうち少なくとも一方にて設定されることを特徴とする請求項１又は２記載の画像形成装置。
【請求項４】
前記画像形成装置と通信可能な情報処理装置と双方向通信を行う手段を有し、
前記双方向通信により、前記外部メディアに格納されているフィルタのプログラム名は、前記情報処理装置へ送信され、前記情報処理装置のユーザインターフェースに表示されることを特徴とする請求項１から３のいずれか１項に記載の画像形成装置。
【請求項５】
前記フィルタ設定情報は、
ＰＪＬ（Printer Job Language）を用いて前記印刷データに付記されていることを特徴とする請求項１から４のいずれか１項に記載の画像形成装置。
【請求項６】
前記所定の処理は、前記印刷データ内に含まれる文字の文字属性を変更する処理であることを特徴とする請求項１から５のいずれか１項に記載の画像形成装置。
【請求項７】
前記所定の処理は、前記印刷データ内に含まれる文字を所定の文字に変更する処理であることを特徴とする請求項１から５のいずれか１項に記載の画像形成装置。
【請求項８】
前記フィルタ設定情報は、ユーザに設定された印刷条件を含み、
前記所定の処理は、前記印刷条件内に含まれる給紙元又は排紙先を、前記ユーザ毎に応じて変更する処理であることを特徴とする請求項１から５のいずれか１項に記載の画像形成装置。
【請求項９】
実行形式のオブジェクトであり、かつ、予め定められた仕様に準じた入出力用インターフェースを有するフィルタが格納された外部メディアを着脱自在とする画像形成装置に、
前記外部メディアと接続された場合に前記フィルタを検知する手段と、
ユーザに設定されたフィルタに関するフィルタ設定情報が付記された、印刷対象である印刷データを受信した場合に、前記フィルタ設定情報から、前記ユーザに設定されたフィルタを特定可能なフィルタ識別情報を取得する手段と、
前記フィルタ識別情報に基づいて、前記入出力用インターフェースを介して前記印刷データを前記ユーザに設定されたフィルタに出力する手段と、
前記ユーザに設定されたフィルタで所定の処理が行われた印刷データを、前記入出力用インターフェースを介して入力する手段と、
前記ユーザに設定されたフィルタで所定の処理が行われた印刷データをＰＤＬに出力する手段と、
して実行させるためのプログラム。
【請求項１０】
前記フィルタ設定情報は、
前記ユーザに設定されたフィルタのプログラム名を含み、
前記ユーザに設定されたフィルタが複数有る場合、前記フィルタのプログラム名毎に、利用される順番を含むことを特徴とする請求項９記載のプログラム。
【請求項１１】
前記フィルタ設定情報は、
前記画像形成装置のユーザインターフェース及び前記画像形成装置と通信可能な情報処理装置のユーザインターフェースのうち少なくとも一方にて設定されることを特徴とする請求項９又は１０記載の画像形成装置。
【請求項１２】
前記画像形成装置に、
前記画像形成装置と通信可能な情報処理装置と双方向通信を行う手段として実行させ、
前記双方向通信により、前記外部メディアに格納されているフィルタのプログラム名は、前記情報処理装置へ送信され、前記情報処理装置のユーザインターフェースに表示されることを特徴とする請求項９から１１のいずれか１項に記載のプログラム。
【請求項１３】
前記フィルタ設定情報は、
ＰＪＬ（Printer Job Language）を用いて前記印刷データに付記されていることを特徴とする請求項９から４のいずれか１２項に記載のプログラム。
【請求項１４】
前記所定の処理は、前記印刷データ内に含まれる文字の文字属性を変更する処理であることを特徴とする請求項９から１３のいずれか１項に記載のプログラム。
【請求項１５】
前記所定の処理は、前記印刷データ内に含まれる文字を所定の文字に変更する処理であることを特徴とする請求項９から１３のいずれか１項に記載のプログラム。
【請求項１６】
前記フィルタ設定情報は、ユーザに設定された印刷条件を含み、
前記所定の処理は、前記印刷条件内に含まれる給紙元又は排紙先を、前記ユーザ毎に応じて変更する処理であることを特徴とする請求項９から１３のいずれか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理対象のデータをカスタマイズしたり、処理の各種条件を設定したりするためのフィルタを利用可能な画像形成装置及びプログラムに関する。
【背景技術】
【０００２】
例えば特許文献１には、本発明に関連する技術が開示されている。特許文献１の発明では、ファームウェアとして静的に実装されたプリント要求受信サーバで受信したデータストリームを、組み込みJava（登録商標）環境上に実装した、動的ロードや動的リンク可能なフィルタソフトウェア（以下、フィルタという）に引き渡すインターフェースを設けている。フィルタとは、与えられたデータに対して、一定の規則で内容を変換するなどの機能を実現するコンピュータプログラムである。以上のような構成により、特許文献１の発明は、以下に示すことを可能としている。
・安定部分と動的部分とを、明確に分離できる。
・装置ファームウェア全体を、動的で冗長なソフトウェアに置き換える、非効率を避けることができる。
・「プリント要求受信サーバ機能を、Java 環境側に再実装して二重に持つ」という非効率も避けることができる。装置コスト、開発負荷的に、合理的なフィルタフレームワークを実現できる。
【０００３】
つまり、特許文献１の発明では、以下のことが実現可能となる。
・印刷データを、所定の画像に変換して出力する。
・ＰＤＬ（Page Description Language）による印刷データ解釈後の処理（例えば、集約、製本、両面などの印刷条件）を設定する。
【０００４】
ところで、この特許文献１の発明では、下記のように各モジュールの使用言語が決まっている。
【０００５】
・プリンタのジョブ制御モジュール：Native
・インタプリタ（フィルタとの接合部分）：OSGi，JAVA、JNI
・フィルタ：インタプリンタ言語
フィルタの抜き差しは、OSGiの仕組みを利用していると思われる。そのため、フィルタをインタプリンタ言語以外で組むことができないという問題があった。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、上記問題を解決するためになされたものであり、どのようなフィルタでも利用できる画像形成装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
かかる目的を達成するために、本発明の画像形成装置は、フィルタが格納された外部メディアを着脱自在とする画像形成装置であって、フィルタは、実行形式のオブジェクトであり、かつ、予め定められた仕様に準じた入出力用インターフェースを有しており、外部メディアと接続された場合にフィルタを検知する手段と、ユーザに設定されたフィルタに関するフィルタ設定情報が付記された、印刷対象である印刷データを受信した場合に、フィルタ設定情報から、ユーザに設定されたフィルタを特定可能なフィルタ識別情報を取得する手段と、フィルタ識別情報に基づいて、入出力用インターフェースを介して印刷データをユーザに設定されたフィルタに出力する手段と、ユーザに設定されたフィルタで所定の処理が行われた印刷データを、入出力用インターフェースを介して入力する手段と、ユーザに設定されたフィルタで所定の処理が行われた印刷データをＰＤＬに出力する手段と、を備えることを特徴とする。
【０００８】
また、本発明の画像形成装置において、フィルタ設定情報は、ユーザに設定されたフィルタのプログラム名を含み、ユーザに設定されたフィルタが複数有る場合、フィルタのプログラム名毎に、利用される順番を含むことを特徴とする。
【０００９】
また、本発明の画像形成装置において、フィルタ設定情報は、画像形成装置のユーザインターフェース及び画像形成装置と通信可能な情報処理装置のユーザインターフェースのうち少なくとも一方にて設定されることを特徴とする。
【００１０】
また、本発明の画像形成装置において、画像形成装置と通信可能な情報処理装置と双方向通信を行う手段を有し、双方向通信により、外部メディアに格納されているフィルタのプログラム名は、情報処理装置へ送信され、情報処理装置のユーザインターフェースに表示されることを特徴とする。
【００１１】
また、本発明の画像形成装置において、フィルタ設定情報は、ＰＪＬ（Printer Job Language）を用いて印刷データに付記されていることを特徴とする。
【００１２】
また、本発明の画像形成装置において、所定の処理は、前記印刷データ内に含まれる文字の文字属性を変更する処理であることを特徴とする。
【００１３】
また、本発明の画像形成装置において、所定の処理は、前記印刷データ内に含まれる文字を所定の文字に変更する処理であることを特徴とする。
【００１４】
また、本発明の画像形成装置において、フィルタ設定情報は、ユーザに設定された印刷条件を含み、所定の処理は、印刷条件内に含まれる給紙元又は排紙先を、ユーザ毎に応じて変更する処理であることを特徴とする。
【００１５】
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、などに適用したものも本発明の態様として有効である。
【発明の効果】
【００１６】
本発明によれば、どのようなフィルタでも利用できる画像形成装置及びプログラムを提供することが可能となる。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施形態に係る画像形成装置の基本構成の一例を示すブロック図である。
【図２】本発明の一実施形態に係る画像形成装置のソフトウェアにおけるコンポーネント構成の一例を示す図である。
【図３】本発明の一実施形態に係る画像形成装置におけるフィルタ設定画面の一例を示す図である。
【図４】本発明の一実施形態に係る画像形成装置における印刷データに付記されるＰＪＬの一例を示す図である。
【図５】本発明の一実施形態に係る画像形成装置の動作の一例を示すフローチャートである
【図６】本発明の一実施形態に係る画像形成装置の動作の一例を示すフローチャートである。
【図７】本発明の一実施形態に係る画像形成装置における印刷データの一例を示す図である。
【図８】本発明の一実施形態に係る画像形成装置における印刷データ内の特定の言葉を太字・色字に変換するフィルタ機能の処理例を示すフローチャートである。
【図９】本発明の一実施形態に係る画像形成装置におけるユーザ毎に使用する給紙トレイ及び排紙先を変更するフィルタ機能の処理例を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、本発明を実施するための形態（実施形態）について詳細に説明する。まず本実施形態の画像形成装置の概要について説明するが、その説明にあたり、一般的な画像形成装置（例えばプリンタ）における印刷処理の流れを、以下に説明する。
【００１９】
１）プリンタにおいて、例えばネットワークを介して印刷データ（印刷対象のデータ）が受信される。
【００２０】
２）プリンタに内蔵されているジョブ制御モジュールにて、受信した印刷データに付いているＰＪＬ（Printer Job Language：ジョブ制御言語）が解釈され、要求されたジョブ（印刷処理）の印刷条件が認識される。
【００２１】
３）ＰＤＬ（Page Description Language）モジュール（印刷データ解釈・描画モジュール）により、印刷データが解釈される。
【００２２】
４）解釈された印刷データの画像が、メモリに描画される。
【００２３】
５）メモリに描画された画像が、紙などの媒体に描画（印刷）される。
【００２４】
本実施形態の画像形成装置では、上記処理の流れの２）と３）の間で、任意の数のフィルタと呼ばれる実行形式のオブジェクトの処理を行う。使用されるフィルタは、ジョブ毎に変更することができる。本実施形態の特徴は、印刷処理の過程で、画像形成装置に対して取り外し可能なフィルタを任意の数だけ使用して印刷処理を行うことである。フィルタの種類に応じて、印刷処理の過程でできることは変わる。
【００２５】
本実施形態におけるフィルタの仕様は下記（１）、（２）を満たすものである。下記の仕様に従っていれば、どのようなフィルタでも利用可能である。
【００２６】
＜フィルタの仕様＞
（１）実行形式のオブジェクトである（実行形式ならば、言語は不問）。
【００２７】
（２）画像形成装置内のジョブ制御モジュールで決められたＩＦ（InterFace）仕様に準じた入出力用ＩＦを持つ。
【００２８】
ここで、本実施形態の画像形成装置において、フィルタを使って印刷処理の過程でできることの例を説明する。本実施形態では例えば、印刷データを、フィルタに規定された所定の変換をして出力すること、及び、ＰＤＬによる印刷データ解釈前の処理（集約、製本、両面などの印刷条件）を、フィルタに規定された処理に設定し直して出力することの２つが可能になる。以下、それぞれ順に説明する。
【００２９】
〔印刷データを、フィルタに規定された所定の変換をして出力する〕
具体的には、以下のことができる。
【００３０】
・印刷データにおける特定の文字や言葉について、その属性を変更できる。より具体的に、印刷データにおける特定の言葉だけを、太字・色字にでき、例えば、黒色・細字の「RICOH」という文字列を、赤色・太字の「RICOH」という文字列に変換できる。
【００３１】
・特定の文字や言葉を、別の言葉に置換できる。例えば、「RICOH」という文字列を、別の文字列である「株式会社リコー」に変換できる。また、「ABC」などの社内だけで用いている製品コードを、実際の製品名である「imagio Neo xxxxxx」等に変換できる。この場合、印刷出力の際、オリジナルの文書の変更をするといった手間を要しない。
【００３２】
・印刷される各ページのフッタ、ヘッダに所定の画像や文字列を設定（追加）できる。例えば、毎ページのフッタ、ヘッダに株式会社リコーの文字列やRICOHのロゴを出力できる。
【００３３】
〔ＰＤＬによる印刷データ解釈前の処理（集約、製本、両面、給紙トレイ、排紙先などの印刷条件）を、フィルタに規定された処理に設定し直して出力する〕
具体的には以下のことができる。
【００３４】
・両面、2in1集約にできる。例えば、８ページものの印刷データが画像形成装置に送られた場合、自動的に両面印刷、2in1集約で排紙される（ユーザは、ドライバで「両面、2in1集約」を指定しなくてもよい）。
【００３５】
・ユーザ毎に、使用する給紙トレイ、排紙先を変更して出力できる。例えば、ユーザ毎に、例えば、ユーザ名がＡ〜Ｎから始まる場合は、給紙トレイ１を使用し、かつ、排紙トレイとして本体排紙を使用し、その一方で、ユーザ名がＯ〜Ｚから始まる場合は、大量給紙トレイを使用し、かつ、排紙トレイとしてフィニッシャー上トレイを使用する。この場合、ユーザＡは「給紙トレイ：トレイ１、排紙先：本体排紙（排紙トレイ１）」を使って印刷でき、ユーザＯは「給紙トレイ：大量給紙トレイ、排紙先：フィニッシャー上トレイ」を使って印刷できる。
【００３６】
ユーザ毎に給紙トレイをフィルタで変更することにより、給紙トレイに入れられている記録紙の使用量を把握でき、「@PJL SET HOSTPORTNAME」を用いることで更なる調査をすることができる。また、ユーザ毎に排紙トレイをフィルタで変更することにより、排紙トレイへの出力が多い場合には画像形成装置の動作が停止しないように、ユーザ毎の排紙先を変更することができる。なお、「@PJL SET LOGINNAME」と関連づけて取得される「@PJL SET HOSTPORTNAME」と共に、ユーザ毎に、使用する給紙トレイ、排紙先を変更して出力してもよい。
【００３７】
以上のことから、例えば「特定の文字列の強調」、「ヘッダ、フッタの記載」、「印刷の後処理系の項目（集約、製本、両面などの印刷条件）の設定」などについて、従来では文書編集のアプリケーションやドライバなどにおいてユーザが手入力で設定していたが、本実施形態ではユーザが手入力で設定しなくても、フィルタの利用により画像形成装置側で自動的に行える（ユーザによる手入力の手間が省ける）。
【００３８】
本実施形態の画像形成装置における印刷処理の大まかな流れの一例を以下に示す。
【００３９】
１）前提として、画像形成装置（例えばプリンタ）と情報処理装置（例えばＰＣ）とが接続されている場合とする。また、フィルタは、例えばＳＤ（Secure Digital）メモリカードやＵＳＢ（Universal Serial Bus）などの外部メディアに格納されているとする。ユーザは、その外部メディアをプリンタの外部接続インターフェース（外部Ｉ／Ｆ）に挿入する。プリンタの表示部には、外部メディアに格納されているフィルタの一覧が表示される。
【００４０】
２）ユーザは、表示されたフィルタ一覧を見て、どのフィルタを使用するか（使用したい所望のフィルタ）を選択する操作を行う。このとき、複数のフィルタの選択を可とする。
【００４１】
３）ユーザは、ＰＣにおいて、例えば文書アプリケーションから印刷対象となる印刷データ（例えば文書データ）の印刷を実行する操作を行う。このとき、プリンタとＰＣの双方向通信により、ＰＣの表示部には、選択されたフィルタ（フィルタ一覧でもよく、フィルタの再選択も可とする）が表示される。また、印刷処理の依頼をＯＳ（Operating System）から受けたプリンタドライバ（単にドライバともいう）は、印刷データに対し、印刷データの印刷条件（ＰＪＬ）として、選択されたフィルタのプログラム名等を付記（付加）した後、プリンタへ送信する。
【００４２】
４）プリンタは、印刷データを受信すると、付記されているＰＪＬを解釈し、解釈されたフィルタのプログラム名から、そのフィルタが存在するパス名（フィルタを特定可能な情報）を取得する。
【００４３】
５）取得されたパス名に基づいて、フィルタに印刷データが渡される。
【００４４】
６）フィルタは、渡された印刷データに対して所定の処理を行う。複数のフィルタが選択されている場合は、処理が終わったフィルタから次のフィルタへ印刷データが渡される。すなわち、印刷データは、選択された各フィルタを順に渡っていくことになる。
【００４５】
７）印刷データはＰＤＬに渡され、解釈される。そして、解釈された印刷データの画像がメモリ（記憶手段・記憶媒体）に描画される。
【００４６】
８）メモリに描画された画像は、紙などの媒体に描画される。
【００４７】
これら一連の動作については詳細に後述する。
【００４８】
以上が本実施形態の画像形成装置の概要である。以下、上述した本実施形態の画像形成装置の具体的な構成及び動作の一例について説明する。
【００４９】
図１は、本実施形態の画像形成装置の基本構成の一例を示すブロック図である。図１に示す各符号は、以下の通りである。１は、例えばＰＣ（Personal Computer）などの外部装置や例えばＳＤカードやＵＳＢメモリ等の外部メディアと通信する外部ＩＦ（InterFace）である。２は、ユーザが画像形成装置の各種機能を設定する操作を行ったり、ユーザに対して状態や情報などの表示を行ったりするための操作部（操作・表示部）である。３は、送信元から送られてくる識別情報を格納するための識別情報記憶部である。４は、識別情報をファイル管理制御するためのファイル管理部である。５は、画データ等を展開、格納するためのメモリである。６は、設定された機能を管理制御するための設定管理部である。７は、画データを一連のプロセスによって用紙上に印刷出力するための出力部である。８は、受信した画データを出力部７によって画像形成するためのデータ処理、制御を行う出力制御部である（請求項に列挙した各手段は、全て「図１の８」に搭載されている）。９は、画像形成装置全体の制御を行うためのシステム制御部である。１０は、時計やカレンダー機能を有したリアルタイムクロックである。
【００５０】
図２は、本実施形態の画像形成装置のソフトウェアにおけるコンポーネント構成の一例を示す図である。図２において、楕円の枠は、コンポーネント単位を表わしている。プリンタアクティビティはアクティビティコンポーネントである。ＰＣ文書受信、編集、印刷はフィルタコンポーネントである。アクティビティとフィルタ間は、メッセージのやり取りが行われる。フィルタ間は、画像の送受信が行われる。画像の流れは左から右である。アクティビティは、ジョブの管理を行う。プリンタアクティビティは、プリンタジョブの管理を行う。ＰＣ文書受信は、ネットワークを介してＰＣ（外部装置の一例）から受信した印刷データを解析し、画像描画を行う。プリンタのジョブ制御モジュールは、ＰＣ文書受信の中にある１つのモジュールであり、プリンタ印刷（印刷処理）のジョブ制御を行う。ＰＪＬ解釈モジュールは、印刷データに含まれるジョブ制御言語の解釈を行う。ＰＤＬ解釈モジュールは、印刷データに含まれるインタプリタ言語を解釈し、画像を描画する。各フィルタは、印刷データに対して所定の処理を行う。画像加工は、メモリ管理やメモリに描かれた画像をエンジンに伝える処理を行う。プラグイン管理は、インストール、アンインストール、更新などを管理する。編集は、回転や画像の合成を行う。印刷は、プロッタから画像を印刷する。
【００５１】
なお、図２と図１との対応は、以下の通りである。図２のプリンタアクティビティは、図１のシステム制御部９である。図２の画像加工は、図１のメモリ５、出力制御８である。図２のプラグイン管理は、図１の外部Ｉ／Ｆ１、システム制御部８である。図２のフィルタは、図１の外部Ｉ／Ｆ１である。図２のＰＣ文書受信は、出力制御部８、設定管理部６である。図２の編集は、図１の出力制御部８である。図２の印刷は、図１の出力制御部８である。
【００５２】
以上のように構成された本実施形態の画像形成装置の動作例について、図５及び図６を用いて説明する。図５及び図６は、本実施形態の画像形成装置の動作の一例を示すフローチャートである。
【００５３】
ユーザが画像形成装置に外部メディアを接続すると（Ｓ１）、プラグイン管理は、外部メディアに格納されているフィルタを検知する（Ｓ２）。なお、本実施形態におけるフィルタの仕様は、上述したように下記（１）、（２）を満たすものとする。
【００５４】
（１）実行形式のオブジェクトである（実行形式ならば、言語は不問）。
【００５５】
（２）画像形成装置内のジョブ制御モジュールで決められたＩＦ（InterFace）仕様に準じた入出力用ＩＦを持つ。
【００５６】
画像形成装置のＵＩ（User Interface：図１では操作部２）においてフィルタ設定画面が開かれる（Ｓ３）。このフィルタ設定画面では、外部メディアに格納されているフィルタの一覧が表示される。このときの表示例を図３に示す。図３に示すように、フィルタ毎に、利用の有無や利用順をユーザが設定できるようになっている。なお、表示例は図３に示すものに限定されるものではない。
【００５７】
ユーザは、フィルタ設定画面において、各フィルタの利用の有無と利用順を設定する（Ｓ４）。
【００５８】
設定が終了すると、画像形成装置のＵＩは、プリンタアクティビティを介して、ＰＣ文書受信に対し、設定された各フィルタの利用の有無と利用順（フィルタ設定情報）を渡す（Ｓ５）。
【００５９】
ＰＣ文書受信は、渡された各フィルタの利用の有無と利用順を保持する（Ｓ６）。
【００６０】
プリンタのジョブ制御モジュールは、各フィルタの利用の有無から、利用するフィルタの総数（FILTER_NUM）を算出し、保持する（Ｓ７）。
【００６１】
ユーザは、本実施形態の画像形成装置で印刷を行うために、ＰＣ等の情報処理装置においてドライバの印刷画面を開く（Ｓ８）。この情報処理装置は、本画像形成装置と接続されており、データ通信を可能とする。
【００６２】
ドライバは、双方向通信機能により、フィルタ設定画面で設定された各フィルタの利用の有無と利用順をドライバ画面上に表示する（Ｓ９）。この画面は、例えば図３と同じ画面でもよいし、あるいは、図３の表示内容と同じ内容で表示形式をアレンジした画面でもよい。ユーザは、表示された画面を見て、設定（選択）されている各フィルタの利用の有無と利用順を確認する。なお、ユーザが、この画面において、既に設定されている内容を変更、再設定することも可能である。
【００６３】
ユーザは、例えば文書作成・編集アプリケーションから所望の印刷データを指定する操作を行う。このとき、ドライバは、指定された印刷データに対して、印刷条件（ＰＪＬ）すなわち各フィルタの利用の有無と利用順（フィルタ設定情報）を付記し、画像形成装置に送信する（Ｓ１０）。このときの印刷データに付記されるＰＪＬの一例を図４に示す。図４に示すように、指定された印刷データには、設定されたフィルタの数（＝利用の有無）が付記され、かつ、フィルタのプログラム名が利用順序通りに付記される。また、図４に示すＰＪＬコマンドに加え、図７に示すＰＪＬコマンドが付記されるようにしてもよい。
【００６４】
ＰＣ文書受信は、ＰＪＬが付記された印刷データを受信する（Ｓ１１）。
【００６５】
プリンタ（画像形成装置）のジョブ制御モジュールは、ＰＪＬ解釈モジュールに印刷データを渡す（Ｓ１２）。
【００６６】
ＰＪＬ解釈モジュールは、印刷データを解釈する（Ｓ１３）。
【００６７】
ＰＪＬ解釈モジュールは、プリンタのジョブ制御モジュールにＰＪＬの解釈結果を渡す（Ｓ１４）。
【００６８】
解釈の結果、選択されているフィルタの数（FILTER_NUM）が１以上である場合（Ｓ１５〜Ｓ１６／ＹＥＳ）、プリンタのジョブ制御モジュールは、プラグイン管理に、１番目のフィルタのプログラム名（FILTER）を渡す（Ｓ１７）。
【００６９】
プラグイン管理は、ＰＣ文書受信に「プログラム名（FILTER）のフィルタの置かれている場所へのパス」を渡す（Ｓ１８）。ここでいう「パス」とは、フィルタを特定可能な情報（フィルタ識別情報）の一例であり、上記内容に限定されるものではない。
【００７０】
プリンタのジョブ制御モジュールは、取得したパスに置かれているフィルタに、所定の入力ＩＦを使って印刷データを渡す（Ｓ１９）。
【００７１】
印刷データを渡されたフィルタは、印刷データに対して所定の処理を行う（Ｓ２０）。
【００７２】
フィルタは、プリンタのジョブ制御モジュールに、所定の出力ＩＦを使って印刷データを渡す（Ｓ２１）。
【００７３】
ユーザにより設定（選択）されたフィルタがまだ存在する場合には、２番目以降のフィルタについても上記Ｓ１７〜Ｓ２２の処理を行う（Ｓ２２〜Ｓ１６／ＹＥＳ）。
【００７４】
ユーザにより設定（選択）されたフィルタがない場合には（Ｓ１６／ＮＯ）、プリンタのジョブ制御モジュールは、ＰＤＬ解釈モジュールに、フィルタでの処理がなされた印刷データを渡す（Ｓ２３）。ＰＤＬ解釈モジュールは、ＰＤＬ解釈が終わると、ＰＤＬ解釈がなされた印刷データをプリンタのジョブ制御モジュールに渡す。
【００７５】
プリンタのジョブ制御モジュールは、編集に、印刷データを渡す（Ｓ２４）。
【００７６】
プリンタのジョブ制御モジュールは、印刷に、印刷データを渡す（Ｓ２５）。以上で、印刷が完了する。
【００７７】
ここで、図８及び図９を参照して、図６に記載した「印刷データを渡されたフィルタ内の処理」の動作例を説明する。「印刷データを渡されたフィルタ内の処理」の例を説明するにあたり、ドライバにより生成され出力される印刷データの一例を図７に示す。図７に示すように、本実施形態の印刷データは、例として、印刷データの上にＰＪＬコマンドが記載された形式となっている。
【００７８】
まず図８の動作例について説明する。図８は、印刷データ内の特定の言葉を、太字・色字に変換するフィルタ機能の処理についてである。ここでは、例として、印刷データ内の黒色で細字の「RICOH」という文字列を、赤色で太字の「RICOH」という文字列に変換する場合である。
【００７９】
フィルタに印刷データが渡ると（Ｓ５１）、その印刷データは先頭から読み出され（Ｓ５２）、ＰＪＬコマンドの解釈が行われる（Ｓ５３）。なお、印刷データの解釈は、印刷データを作成したドライバに合わせた解釈モジュールを使用する。
【００８０】
次に、データモードがグレイスケールか否か、すなわちカラーモードは白黒かどうかが判断される（Ｓ５４）。ここでは、「RICOH」という文字列が２色（赤・黒）のいずれかで印刷されるものと判断し、カラーモードが２色（赤・黒）に設定される（Ｓ５５）。
【００８１】
次に、「ENTER LANGUAGE」を基に、使用されているドライバが判断される（Ｓ５６）。
【００８２】
次に、使用されているドライバに応じた、フィルタ内のプリンタが選択される（Ｓ５７）。フィルタ内には、各ドライバに応じたインタプリンタが存在する。
【００８３】
次に、フィルタ内のインタプリンタが、印刷データを赤字・太字に変換する文字列（この場合、黒色で細字の「RICOH」）があるかどうかを抽出しながら解釈する（Ｓ５８）。
【００８４】
そして、印刷データの解釈が終端までいき（Ｓ５９）、印刷データ内に黒色で細字の「RICOH」という文字列があった場合（Ｓ６０）、その文字列が赤色で太字の「RICOH」という文字列に変換される（Ｓ６１）。
【００８５】
最後に、ＰＤＬ解釈モジュールに印刷データが渡される（Ｓ６２）。このように、フィルタに文字列の色と太さの指定がされると、文字列は当該指定の色と太さに自動変換後に印刷されるので、印刷出力の際、オリジナルの文書の変更をするといった手間を要しない。
【００８６】
図９の動作例について説明する。図９は、ユーザ毎に、使用する給紙トレイ、排紙先を変更するフィルタ機能の処理についてである。ここでは、例として、ユーザ名がＡ〜Ｎから始まる場合は、給紙トレイ１を使用し、かつ、排紙トレイとして本体排紙を使用し、その一方で、ユーザ名がＯ〜Ｚから始まる場合は、大量給紙トレイを使用し、かつ、排紙トレイとしてフィニッシャー上トレイを使用する場合である。
【００８７】
フィルタに印刷データが渡ると（Ｓ７１）、その印刷データは先頭から読み出され（Ｓ７２）、ＰＪＬコマンドの解釈が行われる（Ｓ７３）。なお、印刷データの解釈は、印刷データを作成したドライバに合わせた解釈モジュールを使用する。
【００８８】
次に、ホストログインネームすなわちユーザ名がＡ〜Ｎから始まるかが判断される（Ｓ
７４）。
【００８９】
ユーザ名がＡ〜Ｎから始まる場合（Ｓ７４／ＹＥＳ）、給紙トレイがトレイ１に設定され、排紙トレイが本体排紙に設定される（Ｓ７５）。一方、ユーザ名がＡ〜Ｎから始まらない場合すなわちユーザ名がＯ〜Ｚから始まる場合（Ｓ７４／ＮＯ）、給紙トレイが大量給紙トレイに設定され、排紙トレイがフィニッシャー上トレイに設定される（Ｓ７６）。
【００９０】
最後に、ＰＤＬ解釈モジュールに印刷データが渡される（Ｓ７７）。
【００９１】
以上説明したように、本実施形態によれば、印刷データを所定の画像に変換して出力したり、印刷データのＰＤＬ解釈後の処理（集約、製本、両面などの印刷条件）を設定したりといったことが可能なフィルタを利用する場合において、利用するフィルタが以下の仕様を満たしていれば、どんなフィルタでも利用できるようになる。
【００９２】
＜フィルタの仕様＞
（１）実行形式のオブジェクトであること（実行形式ならば、言語は不問）。
【００９３】
（２）プリンタのジョブ制御モジュールで決められたＩＦ仕様に準じた入出力用ＩＦを
持つこと。
【００９４】
以上、本発明の実施形態について説明したが、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変形が可能である。
【００９５】
例えば、上述した実施形態における動作は、ハードウェア、または、ソフトウェア、あるいは、両者の複合構成によって実行することも可能である。
【００９６】
ソフトウェアによる処理を実行する場合には、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれているコンピュータ内のメモリにインストールして実行させてもよい。あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させてもよい。
【００９７】
例えば、プログラムは、記録媒体としてのハードディスクやＲＯＭ（Read Only Memory）に予め記録しておくことが可能である。あるいは、プログラムは、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory），ＭＯ（Magneto optical）ディスク，ＤＶＤ（Digital Versatile Disc）、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的、あるいは、永続的に格納（記録）しておくことが可能である。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することが可能である。
【００９８】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送してもよい。または、ＬＡＮ（Local Area Network）、インターネットといったネットワークを介して、コンピュータに有線で転送してもよい。コンピュータでは、転送されてきたプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることが可能である。
【００９９】
また、上記実施形態で説明した処理動作に従って時系列的に実行されるのみならず、処理を実行する装置の処理能力、あるいは、必要に応じて並列的にあるいは個別に実行するように構築することも可能である。
【０１００】
また、上記実施形態で説明したシステムは、複数の装置の論理的集合構成にしたり、各装置の機能を混在させたりするように構築することも可能である。
【産業上の利用可能性】
【０１０１】
本発明は、フィルタを利用して画像処理を行う装置・機器、システム、方法、プログラム等に適用できる。
【符号の説明】
【０１０２】
１    外部Ｉ／Ｆ
２    操作部
３    識別情報記憶部
４    ファイル管理部
５    メモリ
６    設定管理部
７    出力部
８    出力制御部
９    システム制御部
１０    ＲＴＣ（Real Time Clock）
【先行技術文献】
【特許文献】
【０１０３】
【特許文献１】特開２００５−２８４３８４号公報
【図１】
2011034554.tif 000003
【図２】
2011034554.tif 000004
【図３】
2011034554.tif 000005
【図４】
2011034554.tif 000006
【図５】
2011034554.tif 000007
【図６】
2011034554.tif 000008
【図７】
2011034554.tif 000009
【図８】
2011034554.tif 000010
【図９】
2011034554.tif 000011