(57)【要約】【課題】      フィルタプログラムによる置換処理が印刷ジョブデータに施されたことを識別すること。【解決手段】  入力された印刷ジョブデータに、置換処理すべきデータが含まれているか判定し、判定に従い、印刷ジョブデータに前記置換処理が施されたことを識別するための識別情報の更新を制御する。情報が更新された場合、置換処理が印刷ジョブデータに施されたことを報知する。【選択図】  図７
2008001076.tif 000002
【特許請求の範囲】
【請求項１】
入力された印刷ジョブデータに、置換処理すべきデータが含まれているか判定する判定手段と、
前記判定手段の判定に従い、前記印刷ジョブデータに前記置換処理が施されたことを識別するための識別情報の更新を制御する処理検出手段と、
前記処理検出手段により前記識別情報が更新された場合、前記置換処理が前記印刷ジョブデータに施されたことを報知する報知制御手段と
を備えることを特徴とする画像形成装置。
【請求項２】
前記判定手段は、前記入力された印刷ジョブデータの中から前記置換処理すべきデータが含まれているかをパターンマッチングにより検出することを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記判定手段の判定により前記印刷ジョブデータに前記置換処理すべきデータが含まれていると判定された場合、
前記処理検出手段は、前記識別情報を更新することを特徴とする請求項１または２に記載の画像形成装置。
【請求項４】
前記処理検出手段により前記識別情報が更新された場合、前記報知制御手段は、前記印刷ジョブデータに前記置換処理が施されたことを報知するためのメッセージ情報を生成することを特徴とする請求項１乃至３のいずれか１項に記載の画像形成装置。
【請求項５】
前記報知制御手段は、前記メッセージ情報を表示手段に表示させることを特徴とする請求項１乃至４のいずれか１項に記載の画像形成装置。
【請求項６】
前記報知制御手段は、前記メッセージ情報を前記置換処理が施された印刷ジョブデータの印刷出力に付加して画像形成手段に出力させることを特徴とする請求項１乃至４のいずれか１項に記載の画像形成装置。
【請求項７】
入力された印刷ジョブデータに、置換処理すべきデータが含まれているか判定する判定工程と、
前記判定工程の判定に従い、前記印刷ジョブデータに前記置換処理が施されたことを識別するための識別情報の更新を制御する処理検出工程と、
前記処理検出工程により前記識別情報が更新された場合、前記置換処理が前記印刷ジョブデータに施されたことを報知する報知制御工程と
を備えることを特徴とする画像形成装置の制御方法。
【請求項８】
前記判定工程は、前記入力された印刷ジョブデータの中から前記置換処理すべきデータが含まれているかをパターンマッチングにより検出することを特徴とする請求項７に記載の画像形成装置の制御方法。
【請求項９】
前記判定工程の判定により前記印刷ジョブデータに前記置換処理すべきデータが含まれていると判定された場合、
前記処理検出工程は、前記識別情報を更新することを特徴とする請求項７または８に記載の画像形成装置の制御方法。
【請求項１０】
前記処理検出工程により前記識別情報が更新された場合、前記報知制御工程は、前記印刷ジョブデータに前記置換処理が施されたことを報知するためのメッセージ情報を生成することを特徴とする請求項７乃至９のいずれか１項に記載の画像形成装置の制御方法。
【請求項１１】
前記報知制御工程は、前記メッセージ情報を表示手段に表示させることを特徴とする請求項７乃至１０のいずれか１項に記載の画像形成装置の制御方法。
【請求項１２】
前記報知制御工程は、前記メッセージ情報を前記置換処理が施された印刷ジョブデータの印刷出力に付加して画像形成手段に出力させることを特徴とする請求項７乃至１０のいずれか１項に記載の画像形成装置の制御方法。
【請求項１３】
請求項７乃至１２のいずれか１項に記載の画像形成装置の制御方法をコンピュータに実行させることを特徴とするプログラム。
【請求項１４】
請求項１３に記載のプログラムを格納したことを特徴とするコンピュータ可読の記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像形成技術に関するものである。
【背景技術】
【０００２】
従来、画像形成装置のソフトウェアはリアルタイムオペレーティングシステム（OS）の上に静的かつ固定的ないわゆるファームウェアとして構築されることが主流であった。このようなファームウェアは内部的に複数のモジュールから構成されている場合でも全体が単一のロードモジュールに静的にリンクされた状態で装置の不揮発性メモリに記憶される。そして、ファームウェアはシステムの起動時にハードディスクなどの不揮発性メモリからＲＡＭにロードされ実行されるか、または、ＲＯＭなどの不揮発性メモリ上で直接実行される。
【０００３】
画像形成装置が受信したＰＤＬデータストリームに対する解釈前の前処理を行うＰＤＬフィルタ部を柔軟かつ拡張可能なソフトウェアとして実装する。そして、安定性が求められるプリンタファームウェアその他の部分の実装と明確に分離する構成をとることにより画像形成装置をカスタマイズする内容は特許文献１に開示されている。
【特許文献１】特願２００４−０９３２１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記の従来例のＰＤＬフィルタはＰＤＬコマンド置換技術により印刷出力をカスタマイズ可能にし、オフィスにおける印刷ポリシーのカスタマイズを容易に実現したいという市場ニーズに応えるものである。一例としては印刷部数が増加する時期には印刷を強制的に両面印刷や2in1等のＮ-ＵＰ印刷にすることが挙げられる。
【０００５】
しかしながら印刷出力のカスタマイズがＰＤＬコマンド置換技術により行われたものか、ユーザの印刷操作時のプリンタドライバ設定により行われたものかを印刷出力から区別することはできないという問題がある。
【０００６】
本発明は上記の問題を解決するためになされたもので、フィルタプログラムによる置換処理が印刷ジョブデータに施されたことを識別可能にする画像形成技術の提供を目的する。
【課題を解決するための手段】
【０００７】
上記目的を達成するべく、本発明にかかる画像形成装置は、入力された印刷ジョブデータに、置換処理すべきデータが含まれているか判定する判定手段と、
前記判定手段の判定に従い、前記印刷ジョブデータに前記置換処理が施されたことを識別するための識別情報の更新を制御する処理検出手段と、
前記処理検出手段により前記識別情報が更新された場合、前記置換処理が前記印刷ジョブデータに施されたことを報知する報知制御手段と
を備えることを特徴とする。
【０００８】
あるいは、上記目的を達成するべく、本発明に係る画像形成装置の制御方法は、入力された印刷ジョブデータに、置換処理すべきデータが含まれているか判定する判定工程と、
前記判定工程の判定に従い、前記印刷ジョブデータに前記置換処理が施されたことを識別するための識別情報の更新を制御する処理検出工程と、
前記処理検出工程により前記識別情報が更新された場合、前記置換処理が前記印刷ジョブデータに施されたことを報知する報知制御工程と
を備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、フィルタプログラムによる置換処理が印刷ジョブデータに施されたことを識別することが可能になる。
【発明を実施するための最良の形態】
【００１０】
以下に、図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。ただし、この実施の形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。
【００１１】
（第１実施形態）
図１は、本発明の実施形態に係る画像形成装置１００の構成を示すブロック図である。制御部１０２は画像形成装置１００の動作を全体的に制御し、ワークエリアとして機能するメモリ１１０と、制御の実行を司るＣＰＵ１１１を備える。操作パネル１０３は画像形成装置１００に対する種々の操作、設定を受け付け、更に、画像形成に関する処理結果をオペレーターに報知するインターフェースとして機能することが可能である。操作パネル１０３を介してオペレーターは画像形成装置１００の動作モードや各種設定を指示することが可能である。また本発明の実施形態においてはフィルタ効果による処理を表示することも可能である。
【００１２】
ホストインターフェースコントローラ１０４はイーサネット（登録商標）等のネットワーク３００を介してホストコンピュータ２００と接続し、ホストコンピュータ２００との間でデータの送受信を行うことが可能である。ホストインターフェースコントローラ１０４が受信した印刷ジョブデータはフィルタ部１０５に転送される。フィルタ部１０５は本発明の実施形態において、特徴的な置換処理を実行する構成要素として機能することが可能である。フィルタ部１０５は、受信したPage  Description  Language(ＰＤＬ)形式の印刷ジョブデータに対して特定のデータパターンマッチングなどの方法でデータの置換処理（フィルタ処理ともいう）を行う。フィルタ部１０５は、複数のデータの置換を行うことが可能なように、複数のフィルタ（フィルタプログラム）を連結して構成することが可能である。フィルタ部１０５により置換処理されたＰＤＬ形式の印刷ジョブデータはトランスレータ１０６へ転送される。フィルタ部１０５の詳細な説明は図２の参照により後述する。
【００１３】
トランスレータ１０６は、フィルタ部１０５のフィルタプログラムにより置換処理が施されたPDL形式の印刷ジョブデータを解釈して、レンダリング処理に適した印刷用中間言語の記述に変換する。レンダリング処理に適した印刷用中間言語によるプリントデータの記述を「ディスプレイリスト」と呼ぶ。トランスレータ１０６は各種のＰＤＬ仕様毎にそれぞれ異なる固有の実装を持ち、どのトランスレータもそれぞれのＰＤＬをディスプレイリスト生成部に固有のディスプレイリストへと変換することが可能である。
【００１４】
トランスレータ１０６により変換されたディスプレイリストはディスプレイリスト生成部（以下、「レンダラー」ともいう）１０７へ転送される。レンダラー１０７はディスプレイリストをラスタ画像に展開し、展開メモリ１０８に格納する。展開メモリ１０８は、レンダラー１０７により展開されたラスタ画像を格納するためのメモリとして利用することが可能な記憶領域である。プリンタエンジン１０９は、展開されたラスタ画像に基づいて記録紙等に可視像を形成することが可能である。これらの各要素は、内部メインバス１０１により接続され、相互にデータの送受信が可能である。
【００１５】
（フィルタ部１０５の構成）
図２はフィルタ部１０５の具体的な構成を示すブロック図である。フィルタ部１０５は前述のとおり1つ以上、複数のフィルタプログラムを連結することが可能な構成となっている。図２においては、フィルタプログラムの連結の例として、３つのフィルタ（フィルタプログラム１１１０〜１１１２）を連結した構成を例示しているが、本発明の趣旨は、この例に限定されるものではない。フィルタプログラムの連結数は本例に限定されるものではなくフィルタプログラムであれば何個でも連結してフィルタ部１０５を構成することは可能である。
【００１６】
フィルタバスインターフェース（ＩＦ）１０００は、内部メインバス１０１を介して画像形成装置１００の他の構成要素との間でデータの送受信を行うことが可能である。
【００１７】
フィルタ部１０５はホストインターフェースコントローラ１０４が受信したＰＤＬ形式の印刷ジョブデータをフィルタバスＩＦ１０００を介して受信する。フィルタ部１０５は、受信したＰＤＬ形式の印刷ジョブデータにフィルタ処理（フィルタプログラムによる置換処理）をし、フィルタ処理をしたＰＤＬ形式の印刷ジョブデータをフィルタバスIF１０００を介してトランスレータ１０６へ出力する。
【００１８】
フィルタ処理部１１００は、複数のフィルタプログラム（１１１０、１１１１、１１１２）が登録（連結）された構成を備える。各フィルタプログラムは入力されたＰＤＬ形式の印刷ジョブデータに対して特定のデータパターンマッチングなどの方法でデータの置換処理（フィルタ処理）を行うことが可能である。フィルタ内部（フィルタプログラム）の処理に関してはフローチャート（図７、図８）を用いて後述する。
【００１９】
フィルタ設定保持部１２００は、各フィルタプログラムが有効であるか無効であるかを示すフィルタ設定情報を保持する。ここで、フィルタプログラムが有効な状態とは、特定のデータパターンマッチングなどにより、置換すべきデータ部分を入力された印刷ジョブデータの中から検出し、検出結果に基づく置換処理の実行が可能な状態にあることをいう。フィルタ設定保持部１２００の設定に基づいて、全てのフィルタプログラムが無効な状態にされると、データパターンマッチングは行われず、置換処理が実行されないＰＤＬ形式の印刷ジョブデータがトランスレータ１０６へ出力される。
【００２０】
フィルタ処理検出フラグ部１２０１は、フィルタプログラムにおいて置換処理が行われたか否かを識別することが可能なフラグ情報を保持する。例えば、フィルタプログラム（１１１０、１１１１、１１１２）が置換処理を実行する場合、フィルタプログラムは、フィルタ処理検出フラグ部１２０１に通知する。フィルタ処理検出フラグ部１２０１は、その通知に基づいて、保持するフラグ情報を更新する。例えば、置換処理に先立ちフィルタ処理検出フラグ部１２０１に初期値「false」がセットされている場合、フィルタプログラムからの通知に従い、フィルタ処理検出フラグ部１２０１は、フラグ情報を「true」に更新する。フィルタ処理検出フラグ部１２０１は、フラグ情報を「true」に更新したことを、フィルタ効果メッセージ出力部１３００に通知する。
【００２１】
フィルタ効果メッセージ出力部１３００は、フィルタ処理検出フラグ部１２０１からの通知に基づいて、操作パネル１０３に対して、フィルタプログラムにより置換処理がされたことを報知するためのメッセージを生成する。
【００２２】
フィルタ効果メッセージ出力部１３００は、フィルタプログラム（１１００、１１１１、１１１２）の各置換処理に対応した個別のメッセージを生成することが可能である。
【００２３】
フィルタ効果メッセージ出力部１３００が生成したメッセージに基づいて、制御部１０２は、操作パネル１０３にフィルタプログラムにより置換処理がされたことを報知するためのメッセージを表示させることが可能である。このメッセージに基づいて、一般ユーザは、どのような置換処理が印刷ジョブデータに施されたかを識別することが可能になる。
【００２４】
図３は、フィルタ設定保持部１２００の設定手順を説明する図であり、図３の設定画面３０１は、制御部１０２の制御の下、操作パネル１０３上に表示される。リスト表示４０１は、画像形成装置１００にインストールされているフィルタプログラム（以下、単に「フィルタ」ともいう）の一覧を示す。リスト表示４０１中には、フィルタＡ〜フィルタＦまで、６種類のフィルタ（フィルタプログラム）がインストールされている状態が例示されている。画面３０１のうち、ボタン（４０３、４０４）の操作により、リスト表示４０１をスクロールさせることができる。矢印４０２は、設定対象となるフィルタプログラムを指示する。図３においては、矢印４０２に指示されているフィルタＢが有効、または無効の設定の対象になっている。
【００２５】
有効／無効ボタン４０５の押下により、矢印４０２で指示されているフィルタ（フィルタプログラム）が有効なフィルタプログラムとして、フィルタ設定保持部１２００に設定される。リスト表示４１０の表示が「有効」と設定されている状態で、再度、有効／無効ボタン４０５が押下されると、矢印４０２で指示されているフィルタプログラムの設定は無効とされる。ここで、有効と設定されたフィルタプログラムは、図２のフィルタ処理部１１００に登録される。
【００２６】
図４乃至図６は、フィルタプログラムによる置換処理（フィルタ処理の効果）を説明する図である。図４は、フィルタプログラムによる置換処理が印刷ジョブデータに施されたことの報知がない場合の画像形成の例を示す図である。画像形成装置１００の管理者により設定された印刷ポリシーは、この例では、２ｉｎ１（２ページのデータを1ページにまとめる印刷）である。画像形成装置１００には２ｉｎ１フィルタプログラムがインストールされており、２ｉｎ１フィルタプログラムは有効な状態（ＯＮ）に設定されている。この状態で一般ユーザが印刷ジョブデータをホストコンピュータ２００から送信すると、２ｉｎ１フィルタの処理により２ページデータ（４００、４０１）が１ページ（４０２）にまとめられて印刷出力される。印刷出力（４０２）からフィルタプログラムによる置換処理が施されたか否かは、この場合、判別不可能である。
【００２７】
一般ユーザが画像形成装置１００に設定されている有効なフィルタプログラム（２ｉｎ１フィルタプログラム）を認識していない場合、意図した印刷ジョブデータ(４００、４０１)に対応する２ページ出力と異なる出力と判断する。
【００２８】
一方、図５は、フィルタプログラムによる置換処理の結果が一般ユーザに対して操作部１０３の表示を介して報知される場合の画像形成の例を示す図である。図４の場合と同様に、画像形成装置１００の管理者により設定された印刷ポリシーは２ｉｎ１である。画像形成装置１００には２ｉｎ１フィルタプログラムがインストールされており、２ｉｎ１フィルタプログラムは有効な状態（ＯＮ）に設定された状態になっている。
【００２９】
一般ユーザが２ページ（５００、５０１）から構成される印刷ジョブデータをホストコンピュータ２００から画像形成装置１００に送信すると、フィルタ部１０５はフィルタプログラムによる２ｉｎ１置換処理（フィルタ処理）を行う。２ｉｎ１フィルタの置換処理により２ページデータ（５００、５０１）が１ページ（５０２）にまとめられて印刷出力される。そして、フィルタ処理が実行されると、制御部１０２の表示制御の下、操作パネル１０３に、「フィルタ処理:２ｉｎ１」というメッセージが操作パネル１０３に表示される。
【００３０】
一般ユーザは、操作パネル１０３上に表示されたメッセージ表示により、画像形成装置１００に設定されている有効なフィルタプログラムにより２ｉｎ１置換処理が実行されたことを認識することができる。
【００３１】
図６は、図５に示す構成で入力される印刷ジョブデータが２ページデータではなく、２ｉｎ１データである場合の処理を例示する図である。
【００３２】
ホストコンピュータ２００から送信された２in１の設定がされた印刷ジョブデータを画像形成装置１００が受信すると、フィルタプログラムによる２ｉｎ１置換処理（フィルタ処理）は実行されない。この場合、画像形成装置１００においてフィルタ処理は行われないため、操作パネル１０３にはフィルタ処理が実行されたことを報知するためのメッセージは表示されない。通常の印刷処理終了時に表示される「印刷可能」状態を示す表示が操作パネル１０３に表示される。
【００３３】
次に、フィルタプログラムの処理の流れを図７のフローチャートを参照して説明する。図７のフローチャートは、図２で説明したフィルタプログラム（１１１０、１１１１、１１１２）の内部処理を説明するものであり、制御部１０２の全体的な制御の下に実行される。
【００３４】
画像形成装置１００は、解析可能なＰＤＬ形式の印刷ジョブデータ（（これを「入力ストリーム」ともいう）を受信し、順次パターンマッチングを行う。そして、画像形成装置１００は、パターンが合致した箇所のデータを予め決められた方法（例えば、ページレイアウトやデータの属性の変換を含む方法）で置換し、出力データ（「出力ストリーム」ともいう）を形成し、出力する。
【００３５】
本処理の特徴はフィルタプログラムの置換処理が実行される場合にフィルタ処理検出フラグ部１２０１のフラグ情報を更新し、係るフラグ情報の更新に基づき置換処理が印刷ジョブデータに施されたことを識別可能にすることである。
【００３６】
ステップＳ７００において、制御部１０２の制御に基づくフィルタプログラムは、必要な前処理を行う。前処理には、例えば、フィルタが内部的に利用する属性の初期化や、パターンマッチングに使用するパターン記述に対する前処理などが含まれる。
【００３７】
ステップＳ７０１において、制御部１０２の制御に基づきフィルタプログラムは、入力された印刷ジョブからパターンマッチング処理に必要な量のデータを読み出す。
【００３８】
ステップＳ７０２において、制御部１０２の制御に基づきフィルタプログラムは、フィルタプログラムの設定が有効（ＯＮ）であるか判定し、有効であれば（Ｓ７０２−Ｙｅｓ）、処理をステップＳ７０３に進める。一方、ステップＳ７０２の判定で、フィルタプログラムの設定が有効でない場合（Ｓ７０２−Ｎｏ）、処理をステップＳ７０７に進める。
【００３９】
ステップＳ７０３において、制御部１０２の制御に基づきフィルタプログラムは、入力された印刷ジョブデータの中からフィルタプログラムが置換処理すべきデータ（データパターン）を検出するためにパターンマッチングを行う。
【００４０】
フィルタプログラムが置換処理すべきデータパターンとしては、例えば、データパターン中に含まれる特定のデータ列そのものを照合してもよいし、正規表現（regular expression）などの形式言語による記述でもよい。形式言語による記述としては、例えば、文字列とメタキャラクタと呼ばれる特別な意味を持った記号を組み合わせて検索対象や検索範囲を指定することが可能である。正規表現に拠れば、データパターン中に含まれる特徴（パターン）を指定することができるため、文字列を直接指定する場合に比べて、表記の揺れを吸収したパターンの検出が可能になる。パターン記述に合致するデータを検出する各種の実装としては、例えば、grep、sed、AWK、Perlなどのコマンドやスクリプト環境を用いることができる。
【００４１】
ステップＳ７０４において、制御部１０２の制御に基づきフィルタプログラムは、パターンマッチングの結果を判定する。パターン記述に合致するデータを印刷ジョブデータの中から検出した場合（Ｓ７０４−Ｙｅｓ）、処理をステップＳ７０５に進める。
【００４２】
例えば、２ｉｎ１フィルタプログラムが有効に設定されている場合に、２ｉｎ１以外の２ページデータ（図５の５００、５０１）をパターンマッチングにより検出した場合、処理はステップＳ７０５に進められる。
【００４３】
一方、ステップＳ７０４の判定で、フィルタプログラムがパターン記述に合致するデータを印刷ジョブデータの中から検出できない場合（Ｓ７０４−Ｎｏ）、処理をステップＳ７０７に進める。
【００４４】
ステップＳ７０５において、制御部１０２の制御に基づくフィルタプログラムは、パターン記述に合致するデータに対して置換処理を実行する旨を、フィルタ処理検出フラグ部１２０１に通知する。フィルタ処理検出フラグ部１２０１（図２）は、フィルタプログラムから通知を受けると、初期値として設定されている「false」から「true」にフラグ情報を更新する。フィルタ処理検出フラグ部１２０１が保持するフラグ情報（「false」または「true」）に基づいて、フィルタプログラムにおいて置換処理が行われたか否かを識別することが可能である。フラグ情報の更新は、フィルタ処理検出フラグ部１２０１からフィルタ効果メッセージ出力部１３００に通知される。フィルタ効果メッセージ出力部１３００は係る通知を受けると、フィルタプログラムにより置換処理がされたことを報知するためのメッセージを生成する。フィルタ効果メッセージ出力部１３００は、各フィルタプログラム（１１００、１１１１、１１１２）が置換処理を実行した場合、各置換処理に対応した個別のメッセージを生成する。そして、フィルタ効果メッセージ出力部１３００が生成したメッセージに基づいて、制御部１０２は、操作パネル１０３にフィルタプログラムにより置換処理がされたことを報知するためのメッセージを表示させる。
【００４５】
ステップＳ７０６において、フィルタプログラムはパターン記述に合致したデータ部分に対して、フィルタプログラムの目的に応じた置換処理を実行する。
【００４６】
ステップＳ７０７で、フィルタプログラムは処理済のデータ（パターンに合致しなかった部分及びパターンに合致して置換処理が実行された部分のデータを含む）を、ＰＤＬ形式の印刷ジョブデータとして、出力データに書き込む。
【００４７】
尚、フィルタプログラムが有効に設定されていない場合（Ｓ７０７−Ｎｏ）、パターンに合致するデータが検出されない場合（Ｓ７０３−Ｎｏ）、入力された印刷ジョブデータが出力データに書き込まれる。この場合、フラグ情報は更新されないことになるので、置換処理を報知する識別表示は操作パネル１０３に表示されない。
【００４８】
パターンに合致するデータが検出されない場合とは、例えば、フィルタプログラムで実行するページレイアウトと入力される印刷ジョブデータのページレイアウトとが一致する場合（図６）が該当する。
【００４９】
ステップＳ７０８において、フィルタプログラムは、入力された印刷ジョブデータに対する全ての処理が終了したか判定し、印刷ジョブデータの全ての処理が終了した場合、フィルタプログラムは処理を終了する。一方、ステップＳ７０８の判定で、印刷ジョブデータの全ての処理が終了していない場合（Ｓ７０８−Ｎｏ）、処理をステップＳ７０１に戻し、同様の処理を繰り返す。
【００５０】
本処理に拠れば、フィルタプログラムが置換処理を実行する場合、フィルタ処理検出フラグ部１２０１はフラグ情報を「false」から「true」に更新する。このフラグ情報の更新に基づいて、フィルタ効果メッセージ出力部１３００はフィルタプログラムにより置換処理がされたことを報知するためのメッセージを生成する。かかるメッセージは、制御部１０２の表示制御の下、操作パネル１０３上に表示される。メッセージ表示により、フィルタプログラムによる置換処理が印刷ジョブデータに施されたことをユーザに識別可能にすることが可能になる。
【００５１】
次に、画像形成装置１００における印刷ジョブデータの受信から出力までの処理の流れを図８のフローチャートの参照により説明する。本処置は、図５、図６で説明した一般ユーザの印刷手順と対応した画像形成装置１００における内部処理である。本処理は、制御部１０２の制御の下に実行される。
【００５２】
ホストコンピュータ２００で作成された印刷ジョブデータは、ネットワーク３００を介して画像形成装置１００に送信される。
【００５３】
ステップＳ８００において、画像形成装置１００が印刷ジョブデータを受信すると、処理はステップＳ８０１に進められる。印刷ジョブデータには、ＰＤＬ形式の印刷ジョブデータが含まれる。
【００５４】
ステップＳ８０１において、制御部１０２は、フィルタ処理検出フラグ部１２０１が保持するフラグ情報を「false」に初期化し、処理をステップＳ８０２に進める。
【００５５】
ステップＳ８０２において、制御部１０２は、フィルタ部１０５に受信したＰＤＬ形式の印刷ジョブデータを入力し、フィルタプログラムによる置換処理の実行を制御する。フィルタプログラムの実行により、図７で説明した置換処理が実行される。この置換処理は、フィルタプログラムのパターンマッチング処理に基づくものである。パターンに合致するデータが印刷ジョブデータに含まれる場合、フィルタプログラムは置換処理を実行する旨を決定する。この置換処理を実行する旨の結果は、フィルタプログラムからフィルタ処理検出フラグ部１２０１に通知される。フィルタ処理検出フラグ部１２０１はフィルタプログラムからの通知に基づいてフラグ情報を更新する。
【００５６】
ステップＳ８０３において、制御部１０２は、フィルタ処理検出フラグ部１２０１が保持するフラグ情報が「false」であるか「true」であるかを判定する。フラグ情報が「false」であれば（Ｓ８０３−Ｎｏ）、処理をステップＳ８０５に進め、受信した印刷ジョブデータに置換処理を施さずに印刷出力する。この場合、フィルタプログラムによる置換処理は、印刷ジョブデータに施されていないため、置換処理がされたことを報知するためのメッセージは操作部１０３に表示されない。
【００５７】
一方、ステップＳ８０３の判定において、フラグ情報が「true」の場合、制御部１０２は、フィルタ効果メッセージ出力部１３００が生成した置換処理がされたことを報知するためのメッセージを操作部１０３に表示させる。そして、ステップＳ８０５において、置換処理が施された出力データ（図７のステップＳ７０９）に基づいて、印刷処理を実行し、処理を終了する。
【００５８】
本実施形態によれば、フィルタプログラムによる置換処理が印刷ジョブデータに施されたことを識別することが可能になる。
【００５９】
（第２実施形態）
第１実施形態では、置換処理が印刷ジョブデータに施されたことを操作パネル１０３に表示して、一般ユーザに置換処理が実行されたことを報知する構成を説明した。本実施形態では、報知の態様として置換処理が印刷ジョブデータに施されたことを識別するためのメッセージを記録紙に直接印刷することにより報知する構成を説明する。
【００６０】
図９は、フィルタプログラムによる置換処理が印刷ジョブデータに施されたことを識別するためのメッセージを直接記録紙に印刷することで報知する例を示す図である。図５の場合と同様に、画像形成装置１００の管理者により設定された印刷ポリシーは２ｉｎ１である。画像形成装置１００には２ｉｎ１フィルタプログラムがインストールされており、２ｉｎ１フィルタプログラムは有効な状態（ＯＮ）に設定されている。
【００６１】
一般ユーザが２ページ（９００、９０１）から構成される印刷ジョブデータをホストコンピュータ２００から画像形成装置１００に送信すると、フィルタ部１０５はフィルタプログラムによる２ｉｎ１置換処理を行う。２ｉｎ１フィルタプログラムの置換処理により２ページデータ（９００、９０１）が１ページ（９０２または９０３）にまとめられて印刷出力される。そして、フィルタプログラムによる置換処理が実行されると、制御部１０２の印刷制御の下、記録紙中に「フィルタ処理:２ｉｎ１」という記載が付加される。
【００６２】
図９の９０２は、２ｉｎ１で印刷出力される記録紙の右下部に「フィルタ処理:２ｉｎ１」という記載が付加された例を示す図である。また、図９の９０３は、２ｉｎ１で印刷出力される記録紙の裏面側に「フィルタ処理:２ｉｎ１」という記載が付加された例を示す図である。
【００６３】
図１０は、第２実施形態にかかるフィルタ部１０５の具体的な構成を示すブロック図である。フィルタ部１０５は前述のとおり1つ以上、複数のフィルタプログラムを連結することが可能な構成となっている。第１実施形態における図２の構成と同一の構成に関しては、同一の参照番号を付し、重複した説明を避けるため、同一参照番号の構成要素の説明は省略する。
【００６４】
置換処理に先立ちフィルタ処理検出フラグ部１２０１に初期値「false」がセットされている場合、フィルタプログラムからの通知に従い、フィルタ処理検出フラグ部１２０１は、フラグ情報を「true」に更新する。フィルタ処理検出フラグ部１２０１は、フラグ情報を「true」に更新したことを、フィルタ効果付加部１４００に通知する。
【００６５】
フィルタ効果付加部１４００は、フィルタ処理検出フラグ部１２０１からの通知に基づいて、フィルタプログラムにより置換処理がされたことを明示する記載を印刷出力に付加するためのメッセージデータを生成する。
【００６６】
そして、フィルタ効果付加部１４００は、生成したメッセージデータを、フィルタプログラムのよる置換処理が施された出力データに付加する（このデータを「メッセージ付き出力データ」ともいう）。メッセージ付き出力データは、フィルタバスＩＦ１０００、内部メインバス１０１を介して、トランスレータ１０６へ出力される。画像形成部（トランスレータ１０６、レンダラー１０７、展開メモリ１０８、プリンタエンジン１０９）により、メッセージ付き出力データは処理される。制御部１０２は、置換処理が施されたことを識別可能にするメッセージ（記載）を、置換処理が施された印刷ジョブデータ（出力データ）の印刷出力に付加して画像形成部に印刷出力させることが可能である。
【００６７】
尚、第１及び第２実施形態の変形例として、フィルタ部１０５は、フィルタ効果メッセージ出力部１３００とフィルタ効果付加部１４００とを組み合わせた構成（図１１）によっても実現可能である。この場合、メッセージ表示は操作パネル１０３に表示されると共に、メッセージ（記載）が印刷出力に印刷される。
【００６８】
本実施形態の処理は、第１実施形態で説明した図８のステップＳ８０４の処理に対応し、操作パネル１０３への表示の代わりに、置換処理が施されたことを識別可能にする記載を印刷出力へ付加するものである。
【００６９】
本実施形態によれば、フィルタプログラムによる置換処理が印刷ジョブデータに施されたことを識別することが可能になる。
【００７０】
（他の実施形態）
なお、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給することによっても、達成されることは言うまでもない。また、システムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【００７１】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００７２】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【００７３】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される。また、プログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００７４】
【図１】本発明の実施形態に係る画像形成装置の構成を示すブロック図である。
【図２】本発明の第１実施形態にかかるフィルタ部の具体的な構成を示すブロック図である。
【図３】本発明の実施形態にかかるフィルタ設定保持部１２００の設定手順を説明する図である。
【図４】フィルタプログラムによる置換処理を説明する図である。
【図５】本発明の第１実施形態にかかるフィルタプログラムによる置換処理を説明する図である。
【図６】本発明の第１実施形態にかかるフィルタプログラムによる置換処理を説明する図である。
【図７】本発明の第１実施形態にかかるフィルタプログラムの処理の流れを説明する図である。
【図８】本発明の実施形態にかかる画像形成装置における印刷ジョブデータの受信から出力までの処理の流れを説明する図である。
【図９】本発明の第２実施形態にかかるフィルタプログラムによる置換処理が印刷ジョブデータに施されたことを識別するためのメッセージを直接記録紙に印刷することで報知する例を示す図である。
【図１０】第２実施形態にかかるフィルタ部の具体的な構成を示すブロック図である。
【図１１】第１及び第２実施形態にかかるフィルタ部の変形例を示す図である。
【図１】
2008001076.tif 000003
【図２】
2008001076.tif 000004
【図３】
2008001076.tif 000005
【図４】
2008001076.tif 000006
【図５】
2008001076.tif 000007
【図６】
2008001076.tif 000008
【図７】
2008001076.tif 000009
【図８】
2008001076.tif 000010
【図９】
2008001076.tif 000011
【図１０】
2008001076.tif 000012
【図１１】
2008001076.tif 000013