以下、本発明の実施の形態を図面に基づいて説明する。
本発明の一実施例に係る画像処理装置は、プリンタ、FAX、コピー等の複数の異なる画像形成機能の少なくともプリンタ及びコピーの機能を有すると共に、複数のWebアプリケーションによって画像形成に関する情報を提供することが可能な装置である。
図1は、本発明の一実施例に係る画像処理装置のハードウェア構成を示すブロック図である。図1において、画像処理装置100は、コンピュータによって制御される装置であって、CPU(中央処理装置)11と、ROM(Read-Only Memory)12と、RAM(Random Access Memory)13と、不揮発性RAM14と、通信制御装置23と、ハードディスクI/F24と、エンジンI/F25と、RS−232C I/F26と、ドライバ27とで構成され、システムバスBに接続される。
CPU11は、ROM12に格納されたプログラムに従って画像処理装置100を制御する。RAM13には、例えば、各インターフェース21から26に接続される資源に領域が割り当てられる。不揮発性RAM14には、画像処理装置100を制御するためにCPU11による処理で必要な情報が格納される。
通信制御装置23は、ネットワーク2を介してPC(Personal Computer)10との間の通信制御を行う。ハードディスクI/F24には、ハードディスク34が接続され、ネットワークを介して送信された印刷すべき文書の文書データ、又は、印刷処理後の画像データがハードディスクI/F24を介してハードディスク34に格納される。
エンジンI/F25には、文書データに基づいて所定媒体に印刷を行うプロッタ35−1及び画像データを取り込むスキャナ35−2等が接続される。RS−232C I/F26には、オペレーションパネル36が接続され、ユーザーへの情報の表示及びユーザーから入力情報又は設定情報の取得が行われる。
本発明に係る画像処理装置100は、図2に示すような構造を有する。図2は、本発明に係る画像処理装置の機能構成を示す図である。図2において、画像処理装置100は、UI(User Interface)制御部102と、コンポーネント管理部104と、実行順判定部106と、制御部110と、文書入力部112、文書解析部113、文書出力部114と、情報入力部115と、文書加工部116と、情報出力部117と、データ管理部130とを有する。
UI制御部102は、オペレーションパネル36及びPC10に対して、ユーザーが自由に画像処理装置100の機能をショートカットを用いて組み合わせるための画面表示を制御し、実行可能な順番となった機能の組み合わせを制御部110を介して実行する要求を行う処理部である。
コンポーネント管理部104は、画像処理装置100が提供する機能(コンポーネント)に関する情報を管理する処理部である。実行順判定部106は、画像処理装置100が提供する機能の実行順が実現可能であるか否かを判断する処理部である。
制御部110は、画像処理装置100が提供する機能に対する要求を受け付けて、機能の実行状態を管理する処理部である。
文書入力部112は、文書データを入力するためにエンジンI/F25を介してスキャナ35−2を制御する処理部である。文書出力部113は、文書データを出力するためにエンジンI/F25を介してプロッタ35−1を制御する処理部である。文書加工部114は、文書データを加工する処理部である。
文書解析部115は、文書データを解析する処理部である。情報入力部116は、画像処理装置100が扱う情報の入力を制御する処理部である。情報出力部117は、画像処理装置100が扱う情報の出力を制御する処理部である。データ管理部130は、画像処理装置100が保管する種々のデータを管理する。
先ず、画像処理装置100によってPC10に提供される画面例を参照しつつ、ユーザーが自由に画像処理装置100の機能をショートカットを用いて組み合わせる方法について説明する。
以下、画面例を示す図3から図7において、ショートカットのオリジナルは参照符号の末尾に「a」を付加して示される。ユーザーが機能部品を示すショートカットをドラッグしている状態と、機能部品を示すショートカットをドロップして挿入位置を確定した状態と、挿入位置を確定した後にドラッグしている状態とがある。
ドラッグしている状態では、参照符号の末尾に「b」を付加してある。挿入位置を確定した状態では、参照符号の末尾に「d」を付加してある。挿入位置を確定した場合に、ショートカットが複製される。また、挿入位置を確定した後にドラッグしている状態では、参照符号の末尾に「f」を付加してある。
また、ショートカットではないが、挿入位置候補には参照符号の末尾に「c」が付加され示される。複数の挿入位置候補が存在する場合は、参照符号の末尾に「c―n」(nは自然数)が付加され示される。更に、ユーザーが挿入位置を確定した後にドラッグしている状態では、その挿入位置には参照符号の末尾に「e」が付加され示される。
図3は、スキャン機能のショートカットを作成する場合のPC画面例を示す図である。図3において、PC10に表示されたPC画面G300で、ユーザーはマウスを用いて入力タブ301を選択し、更に画像処理装置100のスキャン機能を示すスキャン部品301aを選択してドラッグすると、スキャン部品301bとして表示される。
ユーザーがスキャン部品301aをドラッグした時点で、編集エリア305に挿入位置の候補として挿入位置候補301cがハイライトされる。この場合、最初の機能部品の挿入であるので、一つの挿入位置候補301cがハイライトされる。
その後、ユーザーがスキャン部品301bをドロップした時点で、挿入位置が確定し、確定スキャン部品301dとして編集エリア305の挿入位置候補301cに表示される。一方、ユーザーが入力タブ301内でスキャン部品301bをドロップした場合、このドラッグ&ドロップは、無効な操作として認識され、編集エリア305には変更が何も加えられない。
次に、印刷機能のショートカットの作成について図4(A)及び図4(B)で説明する。図4(A)は、スキャン機能のショートカットが作成された後に印刷機能のショートカットを作成する場合のPC画面例を示す図である。
図4(A)において、PC10に表示されたPC画面G310で、ユーザーはマウスを用いて出力タブ302を選択し、更に画像処理装置100の印刷機能を示す印刷部品302aを選択して、確定スキャン部品301dが表示されている編集エリア305にドラッグすると、印刷部品302bとして表示される。
ユーザーが印刷部品302aをドラッグした時点で、編集エリア305に挿入位置の候補として挿入位置候補302cがハイライトされる。この場合、既に、確定スキャン部品301dが表示されているため、確定スキャン部品301dから挿入位置候補302cへの実行順番を示す矢印も挿入位置候補302cと共に表示される。スキャン機能の前に印刷機能が実行されることはないので、1つの挿入位置候補302cのみがハイライトされる。
その後、ユーザーが印刷部品302bをドロップした時点で、挿入位置が確定し、確定印刷部品302dとして編集エリア305の挿入位置候補302cに表示される。
一方、出力が先に確定し、入力が後から確定する場合、つまり、印刷機能のショートカットが作成された後にスキャン機能のショートカットを作成する場合、図4(B)のような画面表示となる。
図4(B)は、印刷機能のショートカットが作成された後にスキャン機能のショートカットを作成する場合のPC画面例を示す図である。
図4(B)において、PC10に表示されたPC画面G312で、ユーザーはマウスを用いて入力タブ301を選択し、更に画像処理装置100のスキャン部品301aを選択して、確定印刷部品302dが表示されている編集エリア305にドラッグすると、スキャン部品301bとして表示される。
ユーザーがスキャン部品301aをドラッグした時点で、編集エリア305に挿入位置の候補として挿入位置候補301cがハイライトされる。
この場合、既に、確定印刷部品302dが表示されているため、確定印刷部品301dから挿入位置候補301cへの実行順番を示す矢印も挿入位置候補301cと共に表示される。印刷機能の後にスキャン機能が実行されることはないので、1つの挿入位置候補301cのみがハイライトされる。
その後、ユーザーがスキャン部品301bをドロップした時点で、挿入位置が確定し、確定印刷部品301dとして編集エリア305の挿入位置候補301cに表示される。
次に、オプション機能のショートカットの作成について図5(A)及び図5(B)で説明する。図5(A)は、オプション機能のショートカットを作成する場合のPC画面の第一の例を示す図である。
図5(A)において、PC10に表示されたPC画面G320で、ユーザーはマウスを用いてオプションタブ303を選択し、更に画像処理装置100のオプション機能としてのスタンプを示すスタンプ部品303aを選択して、確定スキャン部品301d及び確定印刷部品302dが表示されている編集エリア305にドラッグすると、スタンプ部品303bとして表示される。
ユーザーがスタンプ部品303aをドラッグした時点で、編集エリア305に挿入位置の候補として挿入位置候補303cがハイライトされる。この場合、既に、確定スキャン部品301dと確定印刷部品302dとが表示されているため、確定スキャン部品301dの後(右側)で、かつ、確定印刷部品302dの後(左側)に挿入位置候補303cがハイライトされる。
スタンプ機能がスキャン機能の前や印刷機能の後に実行されることはないため、1つの挿入位置候補303cのみがハイライトされる。そして、確定スキャン部品301d、挿入位置候補303c、そして確定印刷部品302dの実行順番となるように、適宜矢印も挿入位置候補302cと共に表示される。
その後、ユーザーがスタンプ部品303bをドロップした時点で、挿入位置が確定し、確定スタンプ部品303dとして編集エリア305の挿入位置候補303cに表示される。
スタンプ機能のショートカットが作成された後に、続けて集約機能のショートカットを作成する場合について図5(B)で説明する。図5(B)は、オプション機能のショートカットを作成する場合のPC画面の第二の例を示す図である。
図5(B)において、PC10に表示されたPC画面G322で、ユーザーはマウスを用いてオプションタブ303を選択し、更に画像処理装置100の集約部品313aを選択して、確定スタンプ部品303dが表示されている編集エリア305にドラッグすると、集約部品313bとして表示される。
ユーザーが集約部品313aをドラッグした時点で、編集エリア305に挿入位置の候補として挿入位置候補313c−1と313c−2とがハイライトされる。
挿入位置候補313c−1は、確定スキャン部品301dの後(右側)で、かつ、確定スタンプ部品303dの前(左側)にハイライトされる。挿入位置候補313c−2は、確定スタンプ部品303dの後(右側)で、かつ、確定印刷部品302dの前(左側)にハイライトされる。
そして、確定スキャン部品301d、挿入位置候補313c−1、確定スタンプ部品303d、挿入位置候補313c−2、そして確定印刷部品302dの実行順番となるように、適宜矢印も挿入位置候補313c−1及び313c−2と共に表示される。
その後、ユーザーが集約部品313bをドロップした時点で、挿入位置が確定し、確定集約部品313dとして編集エリア305に表示される。複数の挿入位置候補がある場合、ユーザーのマウスによって操作されるポインタpに最も近い挿入位置候補が選択される。図5(B)に示す例では、挿入位置候補313c−1が、ユーザーが集約部品313bドロップしたポインタpに最も近い位置であるため、確定集約部品dは、確定スタンプ03dの前(左側)に位置する挿入位置候補313c−1に表示される。
挿入位置が確定済みのショートカットの位置を変更する場合について図6で説明する。図6は、挿入位置が確定済みのショートカットの位置を変更する場合のPC画面例を示す図である。
図6において、PC10に表示されたPC画面G330で、ユーザーは、マウスを用いて図5(B)に示す確定集約部品313dをドラッグすると、図5(B)に示す確定集約部品313dは、図6に示すように元の挿入位置313eとして表示され、集約部品313fがマウスによってドラッグされる。
ユーザーが確定集約部品313dをドラッグした時点で、編集エリア305に挿入位置の候補として挿入位置候補313c−2がハイライトされる。この場合、既に、確定スタンプ部品303dと確定印刷部品302dとが表示されているため、挿入位置候補としは、元の挿入位置313eと、確定スタンプ部品303dの後(右側)で、かつ、確定印刷部品302dの後(左側)に挿入位置候補313c−2とがハイライトされる。
そして、確定スキャン部品301d、元の挿入位置313e、確定スタンプ部品303d、挿入位置候補313c−2、そして確定印刷部品302dの実行順番となるように、適宜矢印も元の挿入位置候補313e及び313c−2と共に表示される。
その後、ユーザーが集約部品313fを挿入位置候補313c−2の辺りでドロップした時点で、挿入位置が挿入位置候補313c−2に確定し、確定集約部品313dとして編集エリア305に表示される。
ユーザーが集約部品313fを編集エリア305以外でドロップした場合、編集エリア305から削除される。
出力先として印刷機能のショートカットに加えてFAX機能のショートカットを追加する場合について図7(A)及び図7(B)で説明する。図7(A)は、印刷機能のショートカットが作成された後に出力先として更にFAX機能のショートカットを作成する場合のPC画面例を示す図である。
図7(A)において、PC10に表示されたPC画面G340で、ユーザーはマウスを用いて出力タブ301を選択し、更に画像処理装置100のFAX部322aを選択して、確定印刷部品302dが表示されている編集エリア305にドラッグすると、FAX部品322bとして表示される。
ユーザーがFAX部品322aをドラッグした時点で、編集エリア305に挿入位置の候補として挿入位置候補322c−1、322c−2、そして322c−3がハイライトされる。
この場合、既に、確定スキャン部品301dと、確定スタンプ部品303dと、確定印刷部品302dとが表示されているため、
挿入位置候補322c−1は、確定スキャン部品301dの後(右側)であるが、確定スタンプ部品303dと平行する位置にハイライトされる。また、挿入位置候補322c−2は、確定スタンプ部品303dの後(右側)であるが、確定印刷部品302dと平行する位置にハイライトされる。更に、挿入位置候補322c−3は、確定印刷部品302dの後(右側)にハイライトされる。
そして、確定スキャン部品301dから確定スタンプ部品303dと、挿入位置候補322c−1hとに分岐して矢印が表示され、確定スタンプ部品303dから確定印刷部品302dと挿入位置候補322c−2とに分岐して矢印が表示され、確定印刷部品302dから挿入位置候補322c−3へと矢印が表示される。
その後、ユーザーがFAX部品322bをドロップした時点で、挿入位置が確定し、確定FAX部品322dとして編集エリア305の挿入位置候補322c−2に表示される。
一方、ユーザーがFAX部品322bを挿入位置候補322c−3の周辺でドロップすると、図7(B)に示すように、挿入位置候補322c−3の位置に確定FAX部品322dとして表示される。図7(B)での操作は、図7(A)とほぼ同様であるのでその説明を省略する。
次に、画像処理装置100のオペレーションパネル36に表示される画面例参照しつつ、ユーザーが自由に画像処理装置100の機能をショートカットを用いて組み合わせる方法について説明する。
ユーザーが画像処理装置100のオペレーションパネル36で、新規にドキュメントボックスから印刷するためのショートカットを作成する方法について図8で説明する。図8は、画像処理装置100で印刷するショートカットを作成する画面例を示す図である。
図8において、画面G400は、画面位置表示域401と、作成ボタン402aと、キャンセルボタン402bと、新規作成ボタン403と、テンプレート404とを有する。画面位置表示域401は、現在の画面位置を示す。
作成ボタン402aは、ユーザーによる選択又は入力に基づいてショートカットを作成するためのボタンである。キャンセルボタン402bは、表示されている画面での操作をキャンセルするためのボタンである。画面G400は、画面位置表示域401からメニュー画面に位置することが分かる。
新規作成ボタン403は、ユーザーの所望の選択及び入力によって新規にショートカットを作成するためのボタンである。テンプレート404は、予め用意された機能毎のテンプレートを選択、或いは、目的に応じたテンプレートを選択することによってショーとカットを作成するための支援するための領域である。
ユーザーが新規作成ボタン403を選択すると、画面G410が画像処理装置100に表示される。画面G410は、画面位置表示域401から入出力画面に位置することが分かる。画面G410は、作成ボタン402aに替わって、ユーザーによる入出力の設定を確定するためのOKボタン402cが表示される。
画面G410では、入力域414と、出力域415とが表示される。ユーザーが、入力域414からドキュメントボックス(D.Box)414bを選択し、出力域415から印刷415aを選択すると、画面G420が画像処理装置100に表示される。
画面G420は、画面位置表示域401から確認画面に位置することが分かる。画面G410は、OKボタン402cに替わって、ユーザーによる設定に基づくショートカットの作成を完了するための完了ボタン402dが表示される。
画面G420では、設定内容426と、マクロ名称入力域427と、順序変更429aと、設定変更429bと、ボタン編集429cとが表示される。ユーザーが、設定域426で作成されたショートカットによって実行される機能内容を確認し、マクロ名称入力域427に名称が入力され、完了ボタン402dを選択すると、ユーザーに入力された名称で設定内容426がドキュメントボックスから印刷するためのショートカットとして、画像処理装置100に保存される。
設定内容426には、入力機能としてドキュメントボックス(D.Box)、出力機能として印刷が指定されている。この設定内容426の名称は、「Macro001」となる。
ユーザーが画像処理装置100のオペレーションパネル36で、オプション機能を設定後に機能の実行順序を入れ替える方法について図9で説明する。図9は、画像処理装置100でオプション機能を設定後に機能の実行順序を入れ替えるための画面例を示す図である。図9中、図8の同一部分には同一符号を付し、その説明を省略する。
図9において、図8と同様の画面G420にてユーザーが順序変更429aを選択すると、画面G430が画像処理装置100に表示される。画面G430は、機能を実行順序で一覧するショートカット表示域432と、機能の実行順序を変更するための操作域434とを有する。
例えば、ユーザーがショートカット表示域432の「プレビュー」の横の、操作域434に表示される上矢印又は下矢印を選択することによって、画面G440に示すように「プレビュー」を入力機能の次に実行するように変更できる。
ユーザーが画像処理装置100のオペレーションパネル36で、2以上の機能を平行処理するショートカットを作成する方法について図10で説明する。図10は、画像処理装置100で2以上の機能を平行処理するショートカットを作成する画面例を示す図である。図10中、図8及び図9の同一部分には同一符号を付し、その説明を省略する。図10では、複数の出力先が設定され、平行処理を行う場合が示される。
図10において、画面G450は、機能を実行順序で一覧するショートカット表示域432と、機能の実行順序を変更するための操作域434と、平行して処理する機能が存在することを示す分岐アイコン457とを有する。
画面G450において、ユーザーが画面位置表示域432内の「プレビュー」の後に出力機能として設定される「印刷」の横に表示される分岐アイコン457を選択すると、画面G460に示されるように、画面位置表示域432内には「プレビュー」の後に出力機能として「FAX」が設定されているのが分かる。また、「FAX」の横に分岐アイコン457が表示される。
つまり、プレビュー後に「印刷」と「FAX」とを平行して処理するように設定されている。画面G450に示される「印刷」後に「ダイアログ」が表示される処理と平行して、画面G460に示される「FAX」後に「レポート」が表示される処理が平行して行われる。
例えば、ユーザーがショートカット表示域432の「FAX」の横の、操作域434に表示される上矢印又は下矢印を選択することによって、画面G470に示すように加工機能として設定される「スタンプ」の後(「プレビュー」の前)に、「FAX」と「レポート」とを実行するように変更できる。この場合、分岐アイコン457は、「FAX」と共に上へ移動する。
画面G470に示される分岐アイコン457を選択すると、画面G480に示されるように、分岐アイコン457は「プレビュー」の横に表示されているのが分かる。「プレビュー」、「印刷」、「ダイアログ」の順番の処理が、「FAX」、「レポート」の順番の処理と平行して行われる。
以下、上述した画面表示を行うためのデータ構成と、シーケンスフローについて説明する。
コンポーネント管理部104によって管理される機能部品に関するコンポーネント情報について図11で説明する。図11は、コンポーネント情報を管理するコンポーネント情報テーブルの例を示す図である。図11において、コンポーネント情報テーブル500は、カテゴリ、選択肢、実行順を決定するための優先順、インプット、アウトプットなどの項目を有する。
カテゴリとして、例えば、文書入力、文書出力、文書加工、文書解析、文書プレビュー、情報入力、情報出力などが設定されている。
カテゴリ「文書入力」には、選択肢として「スキャン」、「D.Box」、「PC」、「メディア」などが設定され、優先順は「1」、アウトプットとして「文書」、「入力結果」が設定されている。
カテゴリ「文書出力」には、選択肢として「印刷」、「D.Box」、「FAX」、「PCフォルダ」、「e−mail」、「メディア」などが設定され、優先順は「9」、インプットとして「文書」、アウトプットとして「文書」、「入力結果」が設定されている。
カテゴリ「文書加工」には、選択肢として「回転」、「変倍」、「スタンプ」、「集約」、「トリミング」などが設定され、優先順は「5」、インプットとして「文書」、アウトプットとして「加工後の文書」、「加工結果」が設定されている。
カテゴリ「文書解析」には、選択肢として「OCR」、「ACS」、「白紙検知」、「バーコード認識」などが設定され、優先順は「2」、インプットとして「文書」、アウトプットとして「解析結果」が設定されている。
カテゴリ「文書プレビュー」には、「実画像」、「サムネイル」などが設定され、優先順は「2」、インプットとして「文書」が設定されている。
カテゴリ「情報入力」には、「データ参照」、「入力ダイアログ」などが設定され、アウトプットとして「情報」、「入力結果」が設定されている。
カテゴリ「情報出力」には、「データ追加/変更」、「結果通知」、「確認ダイアログ」などが設定され、インプットとして「情報又は結果」、アウトプットとして「出力結果」が設定されている。
図11に示すコンポーネント情報テーブル500のXML記述例を図12で説明する。図12は、コンポーネント記述例を示す図である。図12において、コンポーネント記述502は、<category>タグで図11の1レコードを記述する。
<component-list>510aから</component-list>510bでコンポーネント記述510の内容の開始と最後とが示される。<title>511によってコンポーネント記述510の名称が示される。例えば、「<title>コンポーネントリスト</title>」のように記述される。
<category>512aから</category>512bで図11のコンポーネント情報テーブル500の1レコードが記述される。複数の<category>タグによって図11の複数のレコードを記述する。
<c-name>513によってカテゴリが示される。例えば、「<c-name>文書入力</c-name>」のように記述される。次に、<c-priority>514によって優先順が示される。例えば、「<c-priority>1</c-priority>」のように記述される。更に、<c-input>515によってインプットが示される。例えば、「<c-input>non</c-input>」のように記述される。
<c-output>516a及び516bによってアウトプットの一覧が示される。例えば、「<c-output>文書</c-output>」及び「<c-output>入力結果</c-output>」のように記述される。
<function>517a、517b、517c及び517dによってアウトプットの機能の一覧が示される。例えば、「<function>スキャン</function>」、「<function>D.Box</function>」、「<function>PC</function>」及び「<function>メディア</function>」のように記述される。
図11に示すコンポーネント情報テーブル500の他のカテゴリについても同様の方法で記述されるため説明を省略する。
次に、カテゴリ毎に設定可能なオプション機能の優先順の設定例について図13で説明する。図13は、カテゴリ内優先順の例を示す図である。図13では、カテゴリが文書加工の場合の優先順の例を示している。
図13において、カテゴリ内優先順520は、カテゴリ、選択肢、優先順の項目を有する。カテゴリ「文書加工」の選択肢として、「回転」、「変倍」、「スタンプ」、「集約」、「トリミング」などが設定され、夫々の優先順は、「5」、「3」、「9」、「7」、「1」などと設定されている。
画像処理装置100のCPU11が、上述したような図11、図12、図13による優先順を参照することによって、ユーザーによってショートカットが作成される際に、予め実行可能なように各機能の実行順を決めることができる。
ユーザーによって作成され、設定された名称に対応させて登録されショートカットのテーブル例について図14で説明する。図14は、登録済ショートカットテーブルの例を示す図である。
図14において、登録済ショートカットテーブル530は、名称、実行順、コンポーネント、パラメータの項目を有する。名称は、ショートカット作成時にユーザーが設定した名称である。実行順は、コンポーネントに設定される機能の実行順を示す。パラメータは、各コンポーネントに対して設定される機能などである。
名称「コピー5部」は、実行順「1」のコンポーネント「文書入力:スキャン」と、実行順「2」のコンポーネント「文書出力:印刷」を指定するショートカットであって、印刷時には「5部」印刷されることがパラメータで指定されている。
名称「コピー+FAX+スタンプ」は、実行順「1」のコンポーネント「文書入力:スキャン」と、実行順「2」のコンポーネント「文書加工:スタンプ」と、実行順「3」のコンポーネント「文書出力:印刷」及び「文書出力:FAX」を指定するショートカットである。このショートカットでは、実行順「3」に2つのコンポーネントが設定されているため、平行処理が行われる。
実行順「2」のコンポーネント「文書加工:スタンプ」では、「印字種別:日付」によるスタンプが行われることがパラメータで指定されている。また、実行順「3」のコンポーネント「文書出力:印刷」では、「1部」印刷されることがパラメータで指定されている。
図14に示す登録済ショートカットテーブル540のXML記述例を図15で説明する。図15は、ショートカット記述例を示す図である。図15において、<shortcut-list>540aから</shortcut-list>540bでショートカット記述540の内容の開始と最後とが示される。<title>541によってショートカット記述540の名称が示される例えば、「<title>登録済みショートカットリスト</title>」のように記述される。
<s-name>タグから次の<s-name>タグまでで一連の処理を実行するショートカットが記述される。また、<component>タグから</component>までで図14に示す各コンポーネントの実行順と、コンポーネントと、パラメータとが、夫々<order>タグ、<category>タグ、<function>タグによって記述される。
例えば、<s-name>タグから</s-name>タグまでの記述550では、「<s-name>コピー5部</s-name>」によって名称「コピー5部」が設定される。最初の<component>タグから</component>までの記述552において、「<order>1</order>」が実行順「1」であることを示している。「<category>文書入力</category>」と「<function>スキャン</function>」とがコンポーネント「文書入力:スキャン」であることを示している。
次の<component>タグから</component>までの記述554において、「<order>2</order>」が実行順「2」であることを示している。「<category>文書出力</category>」と「<function>印刷</function>」とがコンポーネント「文書出力:印刷」であることを示している。また、「<parameter>5</parameter>」が「5部」の印刷であることを示している。
また、<s-name>タグから</s-name>タグまでの記述560では、「<s-name>コピー+FAX+スタンプ</s-name>」によって名称「コピー+FAX+スタンプ」が設定される。最初の<component>タグから</component>までの記述562において、「<order>1</order>」が実行順「1」であることを示している。「<category>文書出力</category>」と「<function>印刷</function>」とがコンポーネント「文書出力:印刷」であることを示している。
次の<component>タグから</component>までの記述564において、「<order>2</order>」が実行順「2」であることを示している。「<category>文書加工</category>」と「<function>スタンプ</function>」とがコンポーネント「文書加工:スタンプ」であることを示している。また、「<parameter>日付</parameter>」が「印字種別:日付」であることを示している。
更に、<component>タグから</component>までの記述566において、「<order>3</order>」が実行順「3」であることを示している。「<category>文書出力</category>」と「<function>印刷</function>」とがコンポーネント「文書出力:印刷」であることを示している。また、「<parameter>1</parameter>」が「1部」の印刷であることを示している。
また、<component>タグから</component>までの記述568において、「<order>3</order>」が実行順「3」であることを示している。「<category>文書出力</category>」と「<function>FAX</function>」とがコンポーネント「文書出力:FAX」であることを示している。
コンポーネント「文書出力:印刷」とコンポーネント「文書出力:FAX」とは、実行順が同一であるので平行して処理される。
図16は、ショートカット作成処理を説明するためのシーケンスフローを示す図である。図16中、ユーザー1とは、画像処理装置100のオペレーションパネル36又はPC10の表示ユニットに表示される画面の操作による情報の送信及び受信を含んでいる。
図16において、画像処理装置100のUI制御部102は、ユーザー1からショートカットの編集を開始するためのショートカット編集開始要求を受信すると(ステップS121)、コンポーネント管理部102へコンポーネント取得要求を送信する(ステップS122)。
コンポーネント管理部102は、コンポーネント情報テーブル500を参照して、コンポーネント一覧を示すコンポーネント情報を作成し、UI制御部102へコンポーネント情報通知として送信する(ステップS123)。カテゴリと選択肢の全てがコンポーネント情報によってUI制御102へ送信される。
UI制御部102は、ユーザー1へコンポーネント情報通知をコンポーネント一覧通知として送信する(ステップS124)。
ユーザー1は、画面に表示されたコンポーネント一覧から所望するコンポーネントを選択して、選択されたコンポーネントを示すコンポーネント選択通知がUI制御部102へ送信される(ステップS125)。UI制御部102は、受信したコンポーネント選択通知をコンポーネント管理部104へ送信する(ステップS126)。
コンポーネント管理部104は、コンポーネント情報テーブル500及びカテゴリ内優先順520を参照して、デフォルト優先順通知をUI制御部102に送信する(ステップS127)。ユーザー1が複数のコンポーネントを選択している場合、選択された全てのコンポーネントの優先順を示すデフォルト優先順通知がUI制御部102に送信する。
UI制御部102は、ユーザーが選択したコンポーネントの実行順の判定を要求する実行順判定要求を実行順判定部106へ送信する(ステップS128)。実行順判定部106は、実行順判定処理を行い(ステップS129)、その判定結果を示す実行順判定結果通知をUI制御部102へ送信する(ステップS130)。ユーザー1が複数のコンポーネントを選択している場合、選択された全てのコンポーネントの優先順について実行順判定処理が行われる。実行順判定結果通知によって、選択された全てのコンポーネントの優先順が通知される。
UI制御部102は、実行判定部106から受信した実行判定結果通知をコンポーネント実行順通知としてユーザー1へ送信する(ステップS131)。ユーザー1がコンポーネントの実行順を変更すると、実行順変更要求をUI制御部102へ送信する(ステップS132)。
UI制御部102は、実行順変更要求に基づいて実行順判定要求を実行順判定部106に送信する(ステップS133)。実行順判定部106は、実行順判定処理を行い(ステップS134)、その判定結果を示す実行順判定結果通知をUI制御部102へ送信する(ステップS135)。変更された実行順が実行可能であれば、その実行順を示す実行判定結果通知が送信される。変更された実行順が実行可能でなければ、変更前の実行順を示す実行判定結果通知が送信される。
UI制御部102は、実行判定部106から受信した実行判定結果通知をコンポーネント実行順通知としてユーザー1へ送信する(ステップS136)。このようにステップS125からステップS136を適宜繰り返し、ユーザー1がコンポーネントの実行順を確定すると、ショートカットを登録するためのショートカット登録要求がUI制御部102へ送信される(ステップS137)。
UI制御部102は、ショートカット登録要求に応じて、実行順判定要求を実行順判定部106に送信する(ステップS138)。実行順判定部106は、実行順判定処理を行い(ステップS139)、その判定結果を示す実行順判定結果通知をUI制御部102へ送信する(ステップS140)。
UI制御部102は、実行順判定部106から受信した実行順判定結果通知に基づいて、ショートカット登録要求を実行順判定部106に送信する(ステップS141)。実行判定部106は、ショートカット登録要求を制御部110に送信し(ステップS142)、制御部110は、ショートカット登録要求をデータ管理部130に送信する(ステップS143)。
データ管理部130は、制御部110から受信したショートカット登録要求に基づいて、登録済ショートカットテーブル530にショートカットを格納するショートカット登録処理を行う(ステップS144)。そして、データ管理部130は、登録が完了したことを示す登録完了通知を制御部110に送信する(ステップS145)。
制御部110は、登録完了通知を実行順判定部106に送信し(ステップS146)、実行順判定部106は、ショートカットの登録が完了したことを示す完了通知をUI制御部102へ送信する(ステップS147)。そして、UI制御部102は、登録完了通知をユーザー1へ送信する(ステップS148)。
次に、登録したショートカットを実行するためのシーケンスフローについて図17で説明する。図17は、ショートカット実行処理を説明するためのシーケンスフローを示す図である。図17中、ユーザー1とは、画像処理装置100のオペレーションパネル36又はPC10の表示ユニットに表示される画面の操作による情報の送信及び受信を含んでいる。
図17において、画像処理装置100のUI制御部102は、ユーザー1からショートカット一覧を取得するためのショートカット一覧要求を受信すると(ステップS161)、制御部104に対してショートカット情報を取得するためのショートカット情報取得要求を送信する(ステップS162)。続いて、制御部104は、ショートカット情報取得要求をデータ管理部130へ送信する。
データ管理部130は、登録済ショートカットテーブル530から名称と、実行順と、コンポーネントと、パラメータとを読み出してショートカット情報を作成し、そのショートカット情報を示すショートカット情報通知を制御部104へ送信する(ステップS164)。そして、制御部104は、ショートカット情報通知をUI制御部102へ送信する(ステップS165)。
UI制御部102は、制御部104から受信したショートカット情報通知に基づいてショートカット一覧を作成して、そのショートカット一覧を示すショートカット一覧通知をユーザー1へ送信する(ステップS166)。
ユーザー1がショートカット一覧から所望のショートカットを選択すると、選択したショートカットを示すショートカット選択通知がUI制御部102へ送信される(ステップS167)。UI制御部102は、ユーザー1から受信したショートカット選択通知に基づいて、ショートカット実行要求を制御部104へ送信する(ステップS168)。
制御部104は、UI制御部102からのショートカット実行要求に応じて、ショートカット実行要求によって要求されるショートカットを解析するショートカット解析処理を実行する(ステップS169)。
制御部104は、ショートカット実行要求によって指定されたコンポーネントを実行順に従って、先ず、文書入力部112に対して、文書入力のためのコンポーネントを示す文書入力実行要求を送信する(ステップS170)。文書入力部112は、コンポーネントによって文書入力を行った後、完了通知を制御部104に送信する(ステップS171)。
制御部104は、次に、文書加工部114に対して、文書加工のためのコンポーネントを示す文書加工実行要求を送信する(ステップS172)。文書加工部114は、コンポーネントによって文書加工を行った後、完了通知を制御部104に送信する(ステップS173)。
制御部104は、更に、文書出力部113に対して、文書出力のためのコンポーネントを示す文書出力実行要求を送信する(ステップS174)。文書出力部113は、コンポーネントによって文書出力を行った後、完了通知を制御部104に送信する(ステップS175)。
制御部104は、全てのコンポーネントの実行が完了すると、UI制御部102へ実行完了通知を送信し(ステップS176)、また、UI制御部102は、ユーザー1へ実行完了通知を送信する(ステップS177)。
次に、実行順判定部106によって行われる実行順判定処理について図18で説明する。図18は、実行順判定処理を説明するためのフローチャート図である。
図18において、実行順判定部106は、確定済みの全てのコンポーネントと、新たに挿入したいコンポーネントに関する情報をUI制御部102から受け取る(ステップS201)。
そして、実行順判定部106は、確定済みのコンポーネントがあるか否かを判断する(ステップS202)。確定済みのコンポーネントがない場合、挿入位置として先頭位置をUI制御部102へ返して(ステップS202−2)、実行順判定処理を終了する。
一方、ステップS202にて確定済みのコンポーネントがあると判断した場合、実行順判定部106は、挿入するコンポーネントと確定済みのコンポーネントのデフォルト優先順を比較する(ステップS203)。実行順判定部106は、挿入するコンポーネントの方が優先されるか否かを判断する(ステップS204)。
挿入するコンポーネントの方が優先される場合、確定済みのコンポーネントの前に挿入するコンポーネントが実行されるように挿入位置候補をRAM13などの記憶領域に記憶して(ステップS204−2)、ステップS209へと進む。
一方、ステップS204にて挿入するコンポーネントの方が優先しないと判断した場合、実行順判定部106は、確定済みのコンポーネントが定義するアウトプットと挿入するコンポーネントが定義するインプットとを比較する(ステップS205)。実行順判定部106は、挿入するコンポーネントが必要とするインプットが確定済みのコンポーネントが定義するアウトプットに定義されているか否かを判断する(ステップS206)。
挿入するコンポーネントが必要とするインプットが定義されている場合、実行順判定部106は、確定済みのコンポーネントの後に挿入するコンポーネントが実行されるように挿入位置候補をRAM13などの記憶領域に記憶して(ステップS204−2)、ステップS209へと進む。
一方、ステップS206にて挿入するコンポーネントが必要とするインプットが確定済みのコンポーネントが定義するアウトプットに定義されていないと判断する場合、実行順判定部106は、挿入するコンポーネントが定義するアウトプットと確定済みコンポーネントが定義するインプットとを比較する(ステップS207)。そして、実行順判定部106は、比較対象のコンポーネントが挿入するコンポーネントのアウトプットを必要としているか否かを判断する(ステップS208)。
比較対象のコンポーネントが挿入するコンポーネントのアウトプットを必要としている場合、実行順判定部106は、比較対象のコンポーネントの後に挿入するコンポーネントが実行されるように挿入位置候補をRAM13などの記憶領域に記憶して(ステップS204−2)、ステップS209へと進む。
一方、ステップS208にて比較対象のコンポーネントが挿入するコンポーネントのアウトプットを必要としていないと判断した場合、実行順判定部106は、全ての確定済みコンポーネントについて検証済み(ステップS209)。全ての確定済みコンポーネントに対する検証が完了していない場合、ステップS203へ戻り、上記同様の処理を繰り返す。
一方、全ての確定済みコンポーネントに対する検証が完了している場合、実行順判定部106は、記憶領域から全ての挿入位置候補を読み出してUI制御部102へ返して(ステップS210)、実行順判定処理を終了する。
上述したように、ユーザーが画像処理装置100の複数の機能を自由に組み合わせてショートカットを作成する際に、組み合わせた機能の実行順を画像処理装置100が実行可能な最適な実行順になるように制御する。従って、ユーザーは、実際に作成したショートカットを実行することによってショートカットの実行順を確認する必要がない。
また、画像処理装置100が決めた実行順をユーザーが変更した場合には、画像処理装置100は、ユーザーが変更を指示した実行順が適切な実行順であるか否かを判断する。変更された実行順が不適切である場合、実行順の変更は抑止される。
よって、本発明に係る画像処理装置100では、適切な実行順となるようにショートカットの作成を制御することによって、ユーザーによる実行順の決定又は変更時に実行可能であることを予め保証することができる。
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。