(57)【要約】【課題】ユーザが所望する処理の追加を可能とする画像処理装置、及び、プログラムを提供する。【解決手段】ユーザ定義コードを入力する入力部１５と、処理対象の印刷ジョブとユーザ定義コードとを併合するマージ部１７ｅと、を備える。【選択図】図１
2015208968.tif 000002
【特許請求の範囲】
【請求項１】
プログラミング言語であるページ記述言語で記述されている印刷ジョブに対応している画像処理装置であって、
ユーザが所望する処理を実現するためのコマンドであって、処理対象の前記印刷ジョブと同じ前記ページ記述言語で記述されているコマンドであるユーザ定義コードを入力する入力手段と、
処理対象の前記印刷ジョブと前記ユーザ定義コードとを併合する併合手段と、
を備える、
ことを特徴とする画像処理装置。
【請求項２】
前記併合手段は、処理対象の前記印刷ジョブを構成するコードの中に所定のキーワードが存在する場合に、処理対象の前記印刷ジョブと前記ユーザ定義コードとを併合する、
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
入力された前記ユーザ定義コードを保持する保持手段を、更に、備える、
ことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
プログラミング言語であるページ記述言語で記述されている印刷ジョブに対応している画像処理装置のコンピュータに、
ユーザが所望する処理を実現するためのコマンドであって、処理対象の前記印刷ジョブと同じ前記ページ記述言語で記述されているコマンドであるユーザ定義コードを受け付け、
処理対象の前記印刷ジョブと前記ユーザ定義コードとを併合する、
処理を実行させる、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、及び、プログラムに関する。
【背景技術】
【０００２】
従来、ＰＣ（Personal Computer）などの情報処理装置で、文書データや画像データなどの電子データの印刷指示を行うと、プリンタドライバなどを介して、ページ記述言語により記述されている印刷ジョブが生成される。そして、生成された印刷ジョブは印刷装置に出力され、印刷装置は、入力された印刷ジョブに基づいて、印刷処理を行っている。
【０００３】
このように、印刷装置が印刷処理を行う場合、入力された印刷ジョブに基づいて、印刷処理を行うのが通常である。
【０００４】
これに対し、入力された印刷ジョブの印刷設定とは異なる印刷設定に基づいて、印刷処理を行う方法が提案されている（例えば、特許文献１を参照）。
【０００５】
特許文献１で提案されている方法は、ユーザの指定に基づいて、可搬型メモリに保持されている印刷対象のデータをダイレクト印刷する際に設定した印刷設定と印刷対象のデータに含まれる印刷設定とを切り替えるものである。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−１２１１６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１で提案されている方法は、上述したように、ユーザの指定に基づいて、印刷を実行する際に用いる印刷設定を切り替えるのみであるため柔軟性に欠けている。例えば、色空間の設定を例に説明すると、特許文献１で提案されている方法では、色空間の設定が印刷ジョブ単位で固定されてしまう。つまり、オブジェクト単位での細かな印刷設定を行うことができない。また、特許文献１で提案されている方法では、印刷設定を変更できるのみであり、例えば、特定ページの処理時間の計測などの処理を実行させるような設定を行うことはできない。
【０００８】
上記問題点に鑑み、本発明では、ユーザが所望する処理の追加を可能とする画像処理装置、及び、プログラムを提供することを課題とする。
【課題を解決するための手段】
【０００９】
請求項１に係る画像処理装置は、
プログラミング言語であるページ記述言語で記述されている印刷ジョブに対応している画像処理装置であって、
ユーザが所望する処理を実現するためのコマンドであって、処理対象の前記印刷ジョブと同じ前記ページ記述言語で記述されているコマンドであるユーザ定義コードを入力する入力手段と、
処理対象の前記印刷ジョブと前記ユーザ定義コードとを併合する併合手段と、
を備える、
ことを特徴としている。
【００１０】
請求項２に係る画像処理装置は、請求項１に係る画像処理装置において、
前記併合手段は、処理対象の前記印刷ジョブを構成するコードの中に所定のキーワードが存在する場合に、処理対象の前記印刷ジョブと前記ユーザ定義コードとを併合する、
ことを特徴としている。
【００１１】
請求項３に係る画像処理装置は、請求項１又は２に係る画像処理装置において、
入力された前記ユーザ定義コードを保持する保持手段を、更に、備える、
ことを特徴としている。
【００１２】
請求項４に係るプログラムは、
プログラミング言語であるページ記述言語で記述されている印刷ジョブに対応している画像処理装置のコンピュータに、
ユーザが所望する処理を実現するためのコマンドであって、処理対象の前記印刷ジョブと同じ前記ページ記述言語で記述されているコマンドであるユーザ定義コードを受け付け、
処理対象の前記印刷ジョブと前記ユーザ定義コードとを併合する、
処理を実行させる、
ことを特徴としている。
【発明の効果】
【００１３】
請求項１に係る画像処理装置、及び、請求項４に係るプログラムによれば、処理対象の印刷ジョブと入力されたユーザ定義コードとを併合する。このように構成することで、サポートしていない機能であっても、ユーザが所望する機能をユーザ側で追加可能とし、ユーザ側で追加された機能を処理対象の印刷ジョブに適用することが可能となる。処理対象の印刷ジョブとユーザ定義コードとを併合可能とすることで、例えば、ページ毎の処理時間の計測などの印刷設定以外の処理を実行させることも可能となる。これにより、ユーザ側でユーザが所望する機能を追加することが容易となるため、開発期間を短縮させることが可能となる。また、開発リソースを主要な機能に集中することができるため、開発効率を向上させることが可能となる。
【００１４】
請求項２に係る画像処理装置によれば、処理対象の印刷ジョブを構成するコードの中に所定のキーワードが存在する場合に、処理対象の印刷ジョブと入力されたユーザ定義コードとを併合する。このように構成することで、ユーザ定義コードを追加することで実行される処理の対象となる箇所が処理対象の印刷ジョブに存在しない場合には、処理対象の印刷ジョブとユーザ定義コードとを併合しないように構成することが可能となる。これにより、併合時の論理的な誤りの発生を抑制することが可能となる。
【００１５】
請求項３に係る画像処理装置によれば、入力されたユーザ定義コードを保持する。このように構成することで、例えば、メーカーのサービスマンは、ユーザにより追加されたユーザ定義コードを調べることで、ユーザが所望する機能を知ることが可能となり、開発効率を向上させることが可能となる。
【図面の簡単な説明】
【００１６】
【図１】実施形態における印刷システムの構成例、及び、印刷システムを構成する印刷装置の構成例を示す機能ブロック図である。
【図２】実施形態におけるキーワード管理テーブルの構成例を示す図である。
【図３】印刷ジョブとして受信したＰＳコードの例と、ＰＳコードの例における、キーワードの例を示す図である。
【図４】実施形態におけるユーザ定義コード入力処理のフローを説明するためのフローチャートの例である。
【図５】実施形態における併合処理のフローを説明するためのフローチャートの例である。
【発明を実施するための形態】
【００１７】
以下に本発明の実施の形態について図面を参照しながら詳細に説明する。
【００１８】
図１は、本実施形態の印刷システム１００の構成例、及び、印刷システム１００を構成する印刷装置１０の構成例を示す機能ブロック図である。印刷システム１００は、図１に示すように、画像処理装置である一又は複数の印刷装置１０と、一又は複数の情報端末装置２０とを含み、印刷装置１０と情報端末装置２０は、ネットワークＮＷを介して相互に通信可能に接続されている。
【００１９】
なお、以下において、情報端末装置２０により出力される印刷ジョブのデータ形式は、ページ記述言語自体がプログラミング言語となっているページ記述言語、本実施形態においては、ＰＳコードであるものとする。
【００２０】
印刷装置１０は、情報端末装置２０により出力される印刷ジョブを処理して、紙などの印刷媒体上に印刷して出力する装置であり、図１に示すように、通信部１１と、記憶部１２と、表示部１３と、操作部１４と、入力部１５、プリンタ部１６と、制御部１７と、を備えて構成されている。
【００２１】
通信部１１は、通信モジュールなどで構成され、ネットワークＮＷを介して、情報端末装置２０との間で通信を行う。例えば、通信部１１は、情報端末装置２０により出力される印刷ジョブを受信する。
【００２２】
記憶部１２は、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、不揮発性メモリなどで構成され、制御部１７を構成するＣＰＵ（Central Processing Unit）のワークエリア、印刷装置１０全体を制御するための動作プログラムなどの各種プログラムを格納するプログラムエリア、キーワード管理テーブルＴ１などの各種データを格納するデータエリアとして機能する。
【００２３】
また、記憶部１２は、図１に示すように、コマンド格納部１２ａと処理待ちジョブ格納部１２ｂとして機能する。
【００２４】
コマンド格納部１２ａは、入力部１５を介して入力されたユーザ定義コード（詳しくは後述）を格納する。このように構成することで、例えば、メーカーのサービスマンは、ユーザが追加実装している機能が、どのような機能かを知ることが可能となる。そして、多くのユーザが追加している機能を調べることで、開発効率を向上させることが可能となる。
【００２５】
処理待ちジョブ格納部１２ｂは、ＲＩＰ（Raster Image Processor）処理部１７ｈ（詳しくは後述）にＲＩＰ処理させる印刷ジョブを、一時的に、格納する。
【００２６】
ここで、図２を参照して、記憶部１２のデータエリアに格納されているキーワード管理テーブルＴ１について説明する。図２は、本実施形態におけるキーワード管理テーブルＴ１の構成例を示す図である。
【００２７】
キーワード管理テーブルＴ１は、検出部１７ｄ（詳しくは後述）がキーワード検出を行う際に参照されるテーブルであり、図２に示すように、キーワード毎にフラグが対応付けられているテーブルである。
【００２８】
フラグは、検出部１７ｄがキーワード検出を行う際に、検出対象となるキーワードを指定するためのフラグであり、設定部１７ｃ（詳しくは後述）により管理されている。本実施形態においては、フラグ値“１”は、検出対象のキーワードを示し、フラグ値“０”は、検出対象外のキーワードを示しており、フラグ値の初期値は、“０”である。
【００２９】
このように、キーワード毎にフラグを対応付けることで、検出部１７ｄは、キーワード検出を行う際に、検出対象のキーワードを特定することが可能となる。
【００３０】
キーワードは、ユーザ定義コードの挿入先を特定するためのキーワードである。例えば、ユーザ定義コードが、コンポジットＫ防止のコマンドであれば、検出部１７ｄは、受信した印刷ジョブを解析して、図２と図３に示すように、“R G B setrgbcolor”というコマンドを検出する。ここで、図３は、印刷ジョブとして受信したＰＳコードの例と、ＰＳコードの例における、キーワードの例を示す図である。
【００３１】
また、例えば、ユーザ定義コードが、ページ毎にウォーターマークを描画させるコマンドであれば、検出部１７ｄは、受信した印刷ジョブを解析して、図２と図３に示すように、“showpage”というページの終了を示す改ページコマンドを検出する。
【００３２】
また、例えば、ユーザ定義コードが、ページ毎に処理時間の計測を実行させるコマンドであれば、検出部１７ｄは、受信した印刷ジョブを解析して、図２に示すように、“%%Page X”と“showpage”というコマンドを検出する。なお、“%%Page X”の“X”はページ番号である。
【００３３】
ユーザ定義コードは、ユーザにより任意に設定され、入力部１５を介して入力される、印刷設定を含む設定の変更や追加の命令を実行するためのプログラムであり、本実施形態ではＰＳコードである。つまり、ユーザ定義コードは、ユーザが所望する処理を実現するためのコマンドであって、印刷ジョブと同じページ記述言語で記述されているコマンドである。なお、本実施形態においては、ユーザ定義コードと共に、ユーザが選択したキーワードを示すキーワード設定指示が、入力部１５を介して入力されるものとする。
【００３４】
図１に戻り、表示部１３は、ＬＣＤ（Liquid Crystal Display）や有機ＥＬ（Electro-Luminescence）などの表示装置などで構成され、例えば、画像や各種のメッセージや各種機能ボタンなどを表示画面上に表示する。
【００３５】
操作部１４は、テンキ−や表示部１３の表示画面上に表示されるタッチパネルなどで構成され、ユーザは、操作部１４を操作して、印刷装置１０への指示を入力することで、所望の処理を実行させることが可能である。
【００３６】
入力部１５は、ＵＳＢ（Universal Serial Bus）などのインターフェース、あるいは、通信モジュールなどで構成され、ユーザ定義コードとキーワード設定指示を受け付ける。そして、入力部１５は、受け付けたユーザ定義コードを格納処理部１７ｂに出力すると共に、受け付けたキーワード設定指示を設定部１７ｃに出力する。なお、通信部１１が、入力部１５としての機能を兼ねてもよい。
【００３７】
プリンタ部１６は、プリンタエンジンなどで構成され、ＲＩＰ処理部１７ｈによりラスタデータが生成されると、プリンタ部１６は、ページ毎にレイアウト処理を実行し、レイアウト処理後のページデータに対して、例えば、キャリブレーションなどの画像処理を施した後に、印刷媒体に印刷し出力する。
【００３８】
制御部１７は、ＣＰＵなどで構成され、記憶部１２のプログラムエリアに格納されている動作プログラムを実行して、図１に示すように、判定部１７ａと、格納処理部１７ｂと、設定部１７ｃと、検出部１７ｄと、マージ部１７ｅと、解析部１７ｆと、通知生成部１７ｇと、ＲＩＰ処理部１７ｈとしての機能を実現すると共に、印刷装置１０全体を制御する制御処理や詳しくは後述の併合処理などの処理を実行する。
【００３９】
判定部１７ａは、各種の判定処理を行う。例えば、判定部１７ａは、印刷ジョブを受信したか否かを判定する。また、判定部１７ａは、ユーザ定義コードが入力されたか否かを判定する。
【００４０】
また、判定部１７ａは、設定部１７ｃにより特定されたキーワードが、キーワード管理テーブルＴ１に登録されているか否かを判定する。また、判定部１７ａは、検出部１７ｄにより検出対象のキーワードが検出されたか否かを判定する。また、判定部１７ａは、解析部１７ｆによる検証の結果に基づいて、問題が発生するか否かを判定する。
【００４１】
格納処理部１７ｂは、ユーザ定義コードが入力されると、入力されたユーザ定義コードを記憶部１２のデータエリアとコマンド格納部１２ａに、ぞれぞれ、格納する。また、格納処理部１７ｂは、受信した印刷ジョブ、あるいは、マージ部１７ｅによりユーザ定義コードが併合された後の印刷ジョブを、処理待ちジョブ格納部１２ｂに格納する。
【００４２】
設定部１７ｃは、検出対象のキーワードの設定を行う。より具体的には、設定部１７ｃは、入力されたキーワード設定指示に基づいて、キーワードを特定し、特定したキーワードがキーワード管理テーブルＴ１に登録されている場合には、特定したキーワードに対応するフラグを“１”にセットする。一方、特定したキーワードがキーワード管理テーブルＴ１に登録されていない場合には、設定部１７ｃは、エントリを追加して、追加したエントリに特定したキーワードを格納すると共に、追加したエントリのフラグを“１”にセットする。
【００４３】
検出部１７ｄは、受信した印刷ジョブを解析して、検出対象のキーワードを検出する。より具体的には、検出部１７ｄは、キーワード管理テーブルＴ１のフラグ欄を検索して、フラグ値が“１”のキーワードを特定する。そして、検出部１７ｄは、受信した印刷ジョブを解析して、特定したキーワードを検出する。
【００４４】
マージ部１７ｅは、検出部１７ｄによりキーワードが検出された場合に、受信した印刷ジョブと入力されたユーザ定義コードとを併合する。
【００４５】
この際、マージ部１７ｅは、通常であれば、ユーザ定義コードを、検出したキーワードの後ろに挿入する。しかし、例えば、ユーザ定義コードの処理が特定ページの処理時間の計測などの処理の場合には、マージ部１７ｅは、検出したキーワードの前にユーザ定義コードを挿入して、処理時間の計測などの処理を実行可能とする。また、例えば、ユーザ定義コードの処理が登録したフォーム実行用コマンドを無効にする処理の場合には、マージ部１７ｅは、検出したキーワードをユーザ定義コードで置き換える。なお、ユーザ定義コードの挿入位置や置き換えの指示などは、例えば、キーワード設定指示に含めるようにすればよい。
【００４６】
例えば、ユーザ定義コードが、コンポジットＫ防止のコマンドであれば、マージ部１７ｅは、検出部１７ｄにより検出されたコマンド“R G B setrgbcolor”に基づいて、Ｒ＝Ｇ＝Ｂか否かを判定し、Ｒ＝Ｇ＝Ｂであれば、コンポジットＫ防止（つまり、グレースケールに変換）の処理を実行するコマンド（ユーザ定義コード）を挿入する。
【００４７】
また、例えば、ユーザ定義コードが、ページ毎にウォーターマークを描画させるコマンドであれば、マージ部１７ｅは、検出部１７ｄにより検出されたコマンド“showpage”の例えば直前に、ウォーターマークの描画処理のコマンド（ユーザ定義コード）を挿入する。
【００４８】
また、例えば、ユーザ定義コードが、ページ毎に処理時間の計測を実行させるコマンドであれば、マージ部１７ｅは、検出部１７ｄにより検出されたコマンド“%%Page X”の直後と、コマンド“showpage”の直前に時間計測用のコマンド（ユーザ定義コード）を挿入する。
【００４９】
また、例えば、ユーザ定義コードが、表紙の裏に白紙を挿入するコマンドであれば、マージ部１７ｅは、検出部１７ｄにより検出されたコマンド“showpage”の内で、表紙ページにおけるコマンド“showpage”の直後に、白紙を挿入するコマンド（ユーザ定義コード）を挿入する。
【００５０】
また、例えば、ユーザ定義コードが、登録したフォーム実行用コマンドを無効にするコマンドであれば、マージ部１７ｅは、検出部１７ｄにより検出されたコマンド“execform”を、”execform{pop}def”で置き換える。ここで、“execform”は、バリアブル印刷で使用する固定オブジェクトの描画を実行するコマンドである。
【００５１】
解析部１７ｆは、マージ部１７ｅにより併合された後の印刷ジョブを解析し、ユーザ定義コマンドとの併合により論理的な誤りが生じていないかを検証する。つまり、解析部１７ｆは、併合後の印刷ジョブの印刷処理を実行した場合に、エラーが発生しないかを検証する。
【００５２】
通知生成部１７ｇは、解析部１７ｆの検証の結果、エラーが発生すると判定された場合に、例えば、エラーの内容を示すエラー通知を生成する。そして、通知生成部１７ｇは、生成したエラー通知を、通信部１１を介して、処理対象の印刷ジョブを出力した情報端末装置２０に送信する。これにより、エラー通知を受信した情報端末装置２０は、例えば、表示画面上にエラーの内容を表示し、ユーザにエラーが発生したことを報知することが可能となる。
【００５３】
ＲＩＰ処理部１７ｈは、処理待ちジョブ格納部１２ｂから、例えば、格納された順番が早い順に印刷ジョブを取得し、取得した印刷ジョブをＲＩＰ処理し、ラスタデータを生成する。
【００５４】
次に、図４を参照して、本実施形態におけるユーザ定義コード入力処理について説明する。図４は、本実施形態におけるユーザ定義コード入力処理のフローを説明するためのフローチャートの例である。本ユーザ定義コード入力処理は、ユーザ定義コードの入力をトリガとして開始される。
【００５５】
判定部１７ａは、ユーザ定義コードが入力されたか否かを判定する（ステップＳ００１）。判定部１７ａにより、ユーザ定義コードは入力されていないと判定された場合には（ステップＳ００１；ＮＯ）、処理はステップＳ００１の処理を繰り返し、ユーザ定義コードが入力されるのを待つ。
【００５６】
一方、判定部１７ａにより、ユーザ定義コードが入力されたと判定された場合には（ステップＳ００１；ＹＥＳ）、格納処理部１７ｂは、入力されたユーザ定義コードを記憶部１２のデータエリアに格納すると共に（ステップＳ００２）、例えば、複製をコマンド格納部１２ａに格納する（ステップＳ００３）。
【００５７】
そして、設定部１７ｃは、キーワード管理テーブルＴ１のフラグをリセットし（ステップＳ００４）、入力されたキーワード設定指示に基づいて、キーワードを特定する（ステップＳ００５）。
【００５８】
そして、判定部１７ａは、キーワード管理テーブルＴ１を参照して、特定されたキーワードの登録が有るか否かを判定する（ステップＳ００６）。
【００５９】
判定部１７ａにより、登録が無いと判定された場合には（ステップＳ００６；ＮＯ）、設定部１７ｃは、キーワード管理テーブルＴ１にエントリを追加し、特定したキーワードを登録する（ステップＳ００７）。そして、設定部１７ｃは、特定したキーワードに対応するフラグを“１”にセットする（ステップＳ００８）。そして、本処理は終了する。
【００６０】
一方、判定部１７ａにより、登録が有ると判定された場合には（ステップＳ００６；ＹＥＳ）、処理は、ステップＳ００７の処理をスキップして、設定部１７ｃは、特定したキーワードに対応するフラグを“１”にセットする（ステップＳ００８）。そして、本処理は終了する。
【００６１】
次に、図５を参照して、本実施形態における併合処理について説明する。図５は、本実施形態における併合処理のフローを説明するためのフローチャートの例である。本併合処理は、印刷ジョブの受信をトリガとして開始される。
【００６２】
判定部１７ａは、印刷ジョブを受信したか否かを判定する（ステップＳ１０１）。判定部１７ａにより、印刷ジョブを受信していないと判定された場合には（ステップＳ１０１；ＮＯ）、処理はステップＳ１０１の処理を繰り返し、印刷ジョブの受信を待つ。
【００６３】
一方、印刷ジョブを受信したと判定した場合には（ステップＳ１０１；ＹＥＳ）、判定部１７ａは、更に、ユーザ定義コードが入力されたか否かを判定する（ステップＳ１０２）。判定部１７ａにより、ユーザ定義コードは入力されていないと判定された場合には（ステップＳ１０２；ＮＯ）、格納処理部１７ｂは、受信した印刷ジョブを処理待ちジョブ格納部１２ｂに格納する（ステップＳ１１０）。そして、処理は後述のステップＳ１１１の処理へと進む。
【００６４】
一方、判定部１７ａにより、ユーザ定義コードが入力されたと判定された場合には（ステップＳ１０２；ＹＥＳ）、検出部１７ｄは、キーワード管理テーブルＴ１のフラグ欄を検索して、フラグ値が“１”のキーワードを特定する（ステップＳ１０３）。そして、検出部１７ｄは、受信した印刷ジョブを解析して、特定したキーワードを検出する（ステップＳ１０４）。
【００６５】
そして、判定部１７ａは、検出部１７ｄによりキーワードが検出されたか否かを判定する（ステップＳ１０５）。判定部１７ａにより、キーワードは検出されなかったと判定された場合には（ステップＳ１０５；ＮＯ）、格納処理部１７ｂは、受信した印刷ジョブを処理待ちジョブ格納部１２ｂに格納する（ステップＳ１１０）。そして、処理は後述のステップＳ１１１の処理へと進む。
【００６６】
一方、判定部１７ａにより、キーワードが検出されたと判定された場合には（ステップＳ１０５；ＹＥＳ）、マージ部１７ｅは、受信した印刷ジョブと入力されたユーザ定義コードとを併合する（ステップＳ１０６）。この際、マージ部１７ｅは、通常であれば、ユーザ定義コードを、検出したキーワードの後ろに挿入する。しかし、例えば、ユーザ定義コードの処理が特定ページの処理時間の計測などの処理の場合には、マージ部１７ｅは、検出したキーワードの前にユーザ定義コードを挿入して、処理時間の計測などの処理を実行可能とする。また、例えば、ユーザ定義コードの処理が登録したフォーム実行用コマンドを無効にする処理の場合には、マージ部１７ｅは、検出したキーワードをユーザ定義コードで置き換える。
【００６７】
そして、解析部１７ｆは、マージ部１７ｅにより併合された後の印刷ジョブを解析し、印刷処理を実行した場合に、エラーが発生しないかを検証する（ステップＳ１０７）。そして、判定部１７ａは、解析部１７ｆによる検証の結果に基づいて、エラーが発生するか否かを判定する（ステップＳ１０８）。
【００６８】
判定部１７ａにより、エラーが発生すると判定された場合には（ステップＳ１０８；ＹＥＳ）、通知生成部１７ｇは、エラー通知を生成し、通信部１１を介して、生成したエラー通知を、処理対象の印刷ジョブを出力した情報端末装置２０に送信する（ステップＳ１０９）。そして、本処理は終了する。
【００６９】
一方、判定部１７ａにより、エラーは発生しないと判定された場合には（ステップＳ１０８；ＮＯ）、格納処理部１７ｂは、併合された後の印刷ジョブを処理待ちジョブ格納部１２ｂに格納する（ステップＳ１１０）。
【００７０】
そして、ＲＩＰ処理部１７ｈは、処理待ちジョブ格納部１２ｂから、例えば、格納された順番が早い順に印刷ジョブを取得し、取得した印刷ジョブをＲＩＰ処理し、ラスタデータを生成する（ステップＳ１１１）。そして、プリンタ部１６は、生成されたラスタデータを印刷処理する（ステップＳ１１２）。そして本処理は終了する。
【００７１】
上記実施形態によれば、印刷装置１０は、処理対象の印刷ジョブと入力されたユーザ定義コードとを併合する。このように構成することで、印刷装置１０がサポートしていない機能であっても、ユーザが所望する機能をユーザ側で追加可能とし、ユーザ側で追加された機能を処理対象の印刷ジョブに適用することが可能となる。処理対象の印刷ジョブとユーザ定義コードとを併合可能とすることで、例えば、ページ毎の処理時間の計測などの印刷設定以外の処理を実行させることも可能となる。これにより、ユーザが所望する機能を追加することが容易となるため、開発期間を短縮させることが可能となる。また、開発リソースを主要な機能に集中することができるため、開発効率を向上させることが可能となる。
【００７２】
また、上記実施形態によれば、印刷装置１０は、処理対象の印刷ジョブを構成するコードを検索し、所定のキーワードを含む場合に、処理対象の印刷ジョブと入力されたユーザ定義コードとを併合する。このように構成することで、処理対象の印刷ジョブにユーザ定義コードを追加することで実行される処理の対象となる箇所が存在しない場合には、処理対象の印刷ジョブとユーザ定義コードとを併合しないように構成することが可能となる。これにより、併合時の論理的な誤りの発生を抑制することが可能となる。
【００７３】
また、上記実施形態によれば、印刷装置１０は、併合した後の印刷ジョブを解析し、印刷処理した場合にエラーが発生するかを検証し、検証の結果、エラーが発生すると判定した場合に、印刷処理を実行しない。このように構成することで、印刷処理時にエラーが発生するのを未然に防止することが可能となる。
【００７４】
また、上記実施形態によれば、印刷装置１０は、検証の結果、エラーが発生すると判定した場合に、ユーザにエラーを報知する。このように構成することで、印刷装置１０の設置場所に行くことなくエラーの発生を知ることができるので、ユーザの利便性を向上させることが可能となる。
【００７５】
また、上記実施形態によれば、印刷装置１０は、入力されたユーザ定義コードをコマンド格納部１２ｂに格納して保持する。このように構成することで、例えば、メーカーのサービスマンは、ユーザにより追加されたユーザ定義コードを調べることで、ユーザが所望する機能を知ることが可能となり、開発効率を向上させることが可能となる。
【００７６】
なお、上記実施形態において、印刷装置１０側で上述のユーザ定義コード入力処理と併合処理を行うと説明したが、これに限定されるものではなく、情報端末装置２０側で、ユーザ定義コード入力処理と併合処理の主要部分を実行するように構成し、ユーザ定義コードを併合した後の印刷ジョブを印刷装置１０に出力するように構成してもよい。
【００７７】
また、上記実施形態において、ＰＳコードを例に説明したが、これに限定されるものではなく、ページ記述言語自体がプログラミング言語となっているページ記述言語であれば、上記実施形態において説明した構成を適用することが可能である。
【００７８】
また、上記実施形態において、キーワード設定指示がユーザ定義コードと共に入力されると説明したが、これに限定されるものではなく、入力されたユーザ定義コードに基づいて、検出対象とするキーワードを自動で設定するように構成してもよい。
【００７９】
また、上記実施形態において、コマンド格納部１２ｂに保持されているユーザ定義コードを、所定のタイミング（例えば、定期的に）で、メーカーが管理するサーバに送信させるように構成してもよい。また、この場合、印刷装置１０は、ユーザ定義コードを送信後に削除するように構成してもよい。このように構成することで、メーカーのサービスマンは、印刷装置１０が設置されている場所を訪問することなく、ユーザが追加している機能の情報を収集することが可能となる。
【００８０】
なお、上記動作を実行するための動作プログラムを、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disk-Read Only Memory）、ＤＶＤ（Digital Versatile Disk）、ＭＯ（Magneto Optical disk）などのコンピュータで読み取り可能な記録媒体に記憶して配布し、これを印刷装置１０（又は、情報端末装置２０）のコンピュータにインストールすることにより、上述の処理を実行するように構成してもよい。さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを記憶しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
【００８１】
以上本発明の実施形態について説明したが、本発明は、以上に述べた実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成又は実施形態を取ることができる。
【符号の説明】
【００８２】
１００    印刷システム
１０      印刷装置
１１      通信部
１２      記憶部
１２ａ    コマンド格納部
１２ｂ    処理待ちジョブ格納部
Ｔ１      キーワード管理テーブル
１３      表示部
１４      操作部
１５      入力部
１６      プリンタ部
１７      制御部
１７ａ    判定部
１７ｂ    格納処理部
１７ｃ    設定部
１７ｄ    検出部
１７ｅ    マージ部
１７ｆ    解析部
１７ｇ    通知生成部
１７ｈ    ＲＩＰ処理部
２０      情報端末装置
ＮＷ      ネットワーク
【図１】
2015208968.tif 000003
【図２】
2015208968.tif 000004
【図３】
2015208968.tif 000005
【図４】
2015208968.tif 000006
【図５】
2015208968.tif 000007