(57)【要約】【課題】汎用的なＨＴＭＬを利用して画像処理装置特有の機能を実現させる。【解決手段】Ｗｅｂブラウザと、所定の画像処理の実行を制御する画像処理サービス部とを有する画像処理装置であって、前記Ｗｅｂブラウザは、前記画像処理装置とネットワークを介して接続されるＷｅｂサーバから取得したコンテンツを解釈する解釈部と、前記解釈部が解釈したコンテンツに基づく画面を表示するＵＩ部と、前記ＵＩ部が表示した前記画面上におけるユーザの入力に応じて、少なくとも前記画像処理サービス部に対する前記画像処理の実行要求を行う制御部と、を有し、前記コンテンツのＨＴＭＬタグが、所定のタグを含む場合、前記制御部は、前記画像処理として、原稿を読み取って生成した画像データを、前記所定のタグが示す送信先に送信することを前記画像処理サービス部に要求する、ことを特徴とする。【選択図】図５
2020096340.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂブラウザと、所定の画像処理の実行を制御する画像処理サービス部とを有する画像処理装置であって、
前記Ｗｅｂブラウザは、
前記画像処理装置とネットワークを介して接続されるＷｅｂサーバから取得したコンテンツを解釈する解釈部と、
前記解釈部が解釈したコンテンツに基づく画面を表示するＵＩ部と、
前記ＵＩ部が表示した前記画面上におけるユーザの入力に応じて、少なくとも前記画像処理サービス部に対する前記画像処理の実行要求を行う制御部と、を有し、
前記コンテンツのＨＴＭＬタグが、所定のタグを含む場合、
前記制御部は、前記画像処理として、原稿を読み取って生成した画像データを、前記所定のタグが示す送信先に送信することを前記画像処理サービス部に要求する、ことを特徴とする画像処理装置。
【請求項２】
前記コンテンツのＨＴＭＬタグが、電子メールアドレスへのメール送信を示す場合、
前記制御部は、前記画像処理として、原稿を読み取って生成した画像データを、前記所定のタグが示す前記電子メールアドレスにメール送信することを前記画像処理サービス部に要求する、ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記Ｗｅｂブラウザは、複数の前記Ｗｅｂサーバのそれぞれと協働して、それぞれ異なる複数のＷｅｂアプリケーションを実現し、
前記制御部は、
前記Ｗｅｂアプリケーションの前記画面上における表示部品に対するユーザの押下操作に応じて、前記表示部品を実現するＨＴＭＬタグに基づいて、前記Ｗｅｂサーバに対する所定の処理の実行要求と、前記画像処理の実行要求とを行う、
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記制御部は、
前記ＨＴＭＬタグが、前記Ｗｅｂサーバに保存されている電子ファイルへのリンクを示すタグである場合、前記電子ファイルのダウンロード要求を前記Ｗｅｂサーバに対して行って、前記ダウンロード要求に応じてダウンロードされた前記電子ファイルの印刷要求を前記画像処理サービス部に対して行う、
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記Ｗｅｂブラウザにおいて、
前記解釈部は、電子ファイルのダウンロードを機器に指示するＨＴＭＬタグに含まれる、前記電子ファイルのファイル形式を示す情報に応じて、前記電子ファイルの前記ダウンロード及び該ダウンロードに続く前記印刷要求と、前記電子ファイルの前記ダウンロード及び該電子ファイルの表示と、前記電子ファイルの前記ダウンロード及び該電子ファイルの表示並びに前記ダウンロードに続く前記印刷要求とのうちの何れかを選択して実行する、
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記制御部は、
前記ＨＴＭＬタグが、前記Ｗｅｂサーバに保存されている電子ファイルへのリンクを示すタグであり、かつ、前記リンク先の電子ファイルのＭＩＭＥタイプが所定のタイプである場合、前記電子ファイルのダウンロード要求を前記Ｗｅｂサーバに対して行って、前記ダウンロード要求に応じてダウンロードされた前記電子ファイルの印刷要求を前記画像処理サービス部に対して行う、
ことを特徴とする請求項４に記載の画像処理装置。
【請求項７】
前記制御部は、
前記ＨＴＭＬタグが、前記画像処理装置に保存されている電子ファイルのうち、前記Ｗｅｂサーバに送信する電子ファイルを選択することを示すタグである場合、原稿を読み取って電子ファイルを生成するためのスキャン要求を前記画像処理サービス部に対して行って、前記スキャン要求に応じて生成された電子ファイルのアップロード要求を前記Ｗｅｂサーバに対して行う、
ことを特徴とする請求項３乃至６の何れか一項に記載の画像処理装置。
【請求項８】
前記Ｗｅｂブラウザにおいて、
前記解釈部は、前記電子ファイルのアップロードを機器に指示する前記ＨＴＭＬタグに含まれるファイル選択を示す情報に応じて、前記スキャン要求及び前記アップロード要求を行う、
ことを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記Ｗｅｂブラウザにおいて、
前記解釈部は、前記電子ファイルのアップロードを機器に指示する前記ＨＴＭＬタグに含まれる、カメラの起動を示す情報に応じて、前記スキャン要求及び前記アップロード要求を行う、
ことを特徴とする請求項７に記載の画像処理装置。
【請求項１０】
前記Ｗｅｂブラウザは、Ｊａｖａアプリケーションプログラムにより実現され、
前記解釈部及び前記ＵＩ部は、前記画像処理装置の操作部に備えるブラウザ機能から構成されると共に、前記Ｊａｖａアプリケーションプログラムが、前記操作部が提供するＡＰＩを介して前記ブラウザ機能を呼び出すことで実現する、
ことを特徴とする請求項２乃至９の何れか一項に記載の画像処理装置。
【請求項１１】
前記画像処理装置には、
ユーザに対するインタフェースを提供する第１のプログラムを有する操作装置と、前記画像処理を実行する制御する第２のプログラム及び前記第１のプログラムが前記第２のプログラムに対して前記画像処理の実行を要求するためのＷｅｂＡＰＩを有する本体装置とが含まれ、
前記画像処理サービス部には、
前記第１のプログラムと、前記第２のプログラムと、前記ＷｅｂＡＰＩとが含まれる、
ことを特徴とする請求項２乃至１０の何れか一項に記載の画像処理装置。
【請求項１２】
前記第１のプログラムは、前記ＷｅｂＡＰＩをラッピングしたＡＰＩ群を提供する、ことを特徴する請求項１１に記載の画像処理装置。
【請求項１３】
前記操作装置及び前記本体装置には、それぞれ異なるＯＳが搭載され、
前記Ｗｅｂブラウザ及び前記第１のプログラムは、前記操作装置に搭載されたＯＳ上で動作する、ことを特徴とする請求項１１又は１２に記載の画像処理装置。
【請求項１４】
前記ＵＩ部は、前記画像処理が完了したことを表示することを特徴とする請求項２乃至１３の何れか一項に記載の画像処理装置。
【請求項１５】
前記送信されるメールは、前記ＨＴＭＬタグで指定された内容に基づいて作成されることを特徴とする請求項２乃至１４の何れか一項に記載の画像処理装置。
【請求項１６】
前記コンテンツのＨＴＭＬタグが、電話番号への発信を示す場合、
前記制御部は、前記画像処理として、原稿を読み取って生成した画像データを、前記所定のタグが示す前記電話番号にファクス送信することを前記画像処理サービス部に要求する、ことを特徴とする請求項１に記載の画像処理装置。
【請求項１７】
前記Ｗｅｂブラウザは、複数の前記Ｗｅｂサーバのそれぞれと協働して、それぞれ異なる複数のＷｅｂアプリケーションを実現し、
前記制御部は、
前記Ｗｅｂアプリケーションの前記画面上における表示部品に対するユーザの押下操作に応じて、前記表示部品を実現するＨＴＭＬタグに基づいて、前記Ｗｅｂサーバに対する所定の処理の実行要求と、前記画像処理の実行要求とを行う、
ことを特徴とする請求項１６に記載の画像処理装置。
【請求項１８】
前記制御部は、
前記ＨＴＭＬタグが、前記Ｗｅｂサーバに保存されている電子ファイルへのリンクを示すタグである場合、前記電子ファイルのダウンロード要求を前記Ｗｅｂサーバに対して行って、前記ダウンロード要求に応じてダウンロードされた前記電子ファイルの印刷要求を前記画像処理サービス部に対して行う、
ことを特徴とする請求項１７に記載の画像処理装置。
【請求項１９】
前記Ｗｅｂブラウザにおいて、
前記解釈部は、電子ファイルのダウンロードを機器に指示するＨＴＭＬタグに含まれる、前記電子ファイルのファイル形式を示す情報に応じて、前記電子ファイルの前記ダウンロード及び該ダウンロードに続く前記印刷要求と、前記電子ファイルの前記ダウンロード及び該電子ファイルの表示と、前記電子ファイルの前記ダウンロード及び該電子ファイルの表示並びに前記ダウンロードに続く前記印刷要求とのうちの何れかを選択して実行する、
ことを特徴とする請求項１８に記載の画像処理装置。
【請求項２０】
前記制御部は、
前記ＨＴＭＬタグが、前記Ｗｅｂサーバに保存されている電子ファイルへのリンクを示すタグであり、かつ、前記リンク先の電子ファイルのＭＩＭＥタイプが所定のタイプである場合、前記電子ファイルのダウンロード要求を前記Ｗｅｂサーバに対して行って、前記ダウンロード要求に応じてダウンロードされた前記電子ファイルの印刷要求を前記画像処理サービス部に対して行う、
ことを特徴とする請求項１８に記載の画像処理装置。
【請求項２１】
前記制御部は、
前記ＨＴＭＬタグが、前記画像処理装置に保存されている電子ファイルのうち、前記Ｗｅｂサーバに送信する電子ファイルを選択することを示すタグである場合、原稿を読み取って電子ファイルを生成するためのスキャン要求を前記画像処理サービス部に対して行って、前記スキャン要求に応じて生成された電子ファイルのアップロード要求を前記Ｗｅｂサーバに対して行う、
ことを特徴とする請求項１７乃至２０の何れか一項に記載の画像処理装置。
【請求項２２】
前記Ｗｅｂブラウザにおいて、
前記解釈部は、前記電子ファイルのアップロードを機器に指示する前記ＨＴＭＬタグに含まれるファイル選択を示す情報に応じて、前記スキャン要求及び前記アップロード要求を行う、
ことを特徴とする請求項２１に記載の画像処理装置。
【請求項２３】
前記Ｗｅｂブラウザにおいて、
前記解釈部は、前記電子ファイルのアップロードを機器に指示する前記ＨＴＭＬタグに含まれる、カメラの起動を示す情報に応じて、前記スキャン要求及び前記アップロード要求を行う、
ことを特徴とする請求項２１に記載の画像処理装置。
【請求項２４】
前記Ｗｅｂブラウザは、Ｊａｖａアプリケーションプログラムにより実現され、
前記解釈部及び前記ＵＩ部は、前記画像処理装置の操作部に備えるブラウザ機能から構成されると共に、前記Ｊａｖａアプリケーションプログラムが、前記操作部が提供するＡＰＩを介して前記ブラウザ機能を呼び出すことで実現する、
ことを特徴とする請求項１６乃至２３の何れか一項に記載の画像処理装置。
【請求項２５】
前記画像処理装置には、
ユーザに対するインタフェースを提供する第１のプログラムを有する操作装置と、前記画像処理を実行する制御する第２のプログラム及び前記第１のプログラムが前記第２のプログラムに対して前記画像処理の実行を要求するためのＷｅｂＡＰＩを有する本体装置とが含まれ、
前記画像処理サービス部には、
前記第１のプログラムと、前記第２のプログラムと、前記ＷｅｂＡＰＩとが含まれる、
ことを特徴とする請求項１６乃至２４の何れか一項に記載の画像処理装置。
【請求項２６】
前記第１のプログラムは、前記ＷｅｂＡＰＩをラッピングしたＡＰＩ群を提供する、ことを特徴する請求項２５に記載の画像処理装置。
【請求項２７】
前記操作装置及び前記本体装置には、それぞれ異なるＯＳが搭載され、
前記Ｗｅｂブラウザ及び前記第１のプログラムは、前記操作装置に搭載されたＯＳ上で動作する、ことを特徴とする請求項２５又は２６に記載の画像処理装置。
【請求項２８】
前記画像処理は、前記ファクス送信の履歴を印刷することをさらに含むことを特徴とする請求項１６乃至２７の何れか一項に記載の画像処理装置。
【請求項２９】
前記ファクス送信のための送信回線は、複数の送信回線の中から選択された送信回線であることを特徴とする請求項１６乃至２８の何れか一項に記載の画像処理装置。
【請求項３０】
前記画像処理装置は、Ｗｅｂサーバである第１サーバからのコンテンツを処理するブラウザを搭載し、
前記ブラウザは、
前記第１サーバから取得したファイル選択を示す第１タグを解釈する解釈部と、
前記解釈部により前記第１タグがファイル選択を示すことが解釈されると、第１画像形成部に対して原稿のスキャン動作を行わせ、前記スキャン動作後に得られた第１画像を、第２サーバにアップロードする制御部と、
を備え、
前記解釈部は、前記第１画像のアップロード後に、前記第２サーバに保存されている情報へのリンクを示す第２タグを解釈し、
前記制御部は、前記解釈部により前記第２タグが前記第２サーバに保存されている情報へのリンクを示すことが解釈されると、前記第２サーバに対するダウンロード要求により前記第１画像に基づく第２画像をダウンロードし、第２画像形成部に対して前記第２画像の印刷動作を行わせる画像処理装置。
【請求項３１】
前記第１サーバから受信した前記コンテンツに基づいて、前記第１画像形成部および前記第２画像形成部の動作に関するパラメータを設定するための設定画面を表示部に表示させる表示制御部を、さらに備え、
前記解釈部は、前記第１タグを解釈するときに前記設定画面で設定された前記第１画像形成部の動作に関する第１パラメータを取得し、前記第２タグを解釈するときに前記設定画面で設定された前記第２画像形成部の動作に関する第２パラメータを取得し、
前記制御部は、前記解釈部により取得された前記第１パラメータに基づいて前記第１画像形成部に前記スキャン動作を行わせ、前記解釈部により取得された前記第２パラメータに基づいて前記第２画像形成部に前記印刷動作を行わせる請求項３０に記載の画像処理装置。
【請求項３２】
前記第２サーバは、前記制御部からアップロードされた前記第１画像に対して所定の画像処理を行うことによって前記第２画像を生成し、
前記制御部は、前記第２サーバに対する前記ダウンロード要求により前記第２画像をダウンロードする請求項３０または３１に記載の画像処理装置。
【請求項３３】
前記第２サーバは、前記制御部からアップロードされた前記第１画像、または、該第１画像に対して前記画像処理を行った前記第２画像を、画像ログとして記憶する請求項３２に記載の画像処理装置。
【請求項３４】
前記解釈部は、前記表示制御部により前記表示部に表示された画面における前記第１タグにより実現される表示部品に対する操作に応じて、該第１タグの解釈を行う請求項３１に記載の画像処理装置。
【請求項３５】
前記表示制御部は、前記制御部が前記第１画像形成部に対して前記原稿の前記スキャン動作を行わせているときに、該スキャン動作中であることを示す旨を前記表示部に表示させる請求項３１に記載の画像処理装置。
【請求項３６】
前記表示制御部は、前記制御部が前記第２画像形成部に対して前記第２画像の前記印刷動作を行わせているときに、該印刷動作中であることを示す旨を前記表示部に表示させる請求項３１または３５に記載の画像処理装置。
【請求項３７】
Ｗｅｂブラウザが搭載された情報処理端末と、所定の画像処理の実行を制御する画像処理装置とを有する画像処理システムであって、
前記Ｗｅｂブラウザは、
前記画像処理システムとネットワークを介して接続されるＷｅｂサーバから取得したコンテンツを解釈する解釈部と、
前記解釈部が解釈したコンテンツに基づく画面を表示するＵＩ部と、
前記ＵＩ部が表示した前記画面上におけるユーザの入力に応じて、少なくとも前記画像処理装置に対する前記画像処理の実行要求を行う制御部と、を有し、
前記コンテンツのＨＴＭＬタグが、所定のタグを含む場合、
前記制御部は、前記画像処理として、原稿を読み取って生成した画像データを、前記所定のタグが示す送信先に送信することを前記画像処理装置に要求する、ことを特徴とする画像処理システム。
【請求項３８】
Ｗｅｂブラウザと、所定の画像処理の実行を制御する画像処理サービス部とを有する画像処理装置が、
前記Ｗｅｂブラウザにより、
前記画像処理装置とネットワークを介して接続されるＷｅｂサーバから取得したコンテンツを解釈する解釈手順と、
前記解釈手順が解釈したコンテンツに基づく画面を表示するＵＩ手順と、
前記ＵＩ手順が表示した前記画面上におけるユーザの入力に応じて、少なくとも前記画像処理サービス部に対する前記画像処理の実行要求を行う制御手順と、を実行し、
前記コンテンツのＨＴＭＬタグが、所定のタグを含む場合、
前記制御手順は、前記画像処理として、原稿を読み取って生成した画像データを、前記所定のタグが示す送信先に送信することを前記画像処理サービス部に要求する、ことを特徴とする画像処理方法。
【請求項３９】
所定の画像処理の実行を制御する画像処理サービス部を有する画像処理装置に、
前記画像処理装置とネットワークを介して接続されるＷｅｂサーバから取得したコンテンツを解釈する解釈手順と、
前記解釈手順が解釈したコンテンツに基づく画面を表示するＵＩ手順と、
前記ＵＩ手順が表示した前記画面上におけるユーザの入力に応じて、少なくとも前記画像処理サービス部に対する前記画像処理の実行要求を行う制御手順と、を実行させ、
前記コンテンツのＨＴＭＬタグが、所定のタグを含む場合、
前記制御手順は、前記画像処理として、原稿を読み取って生成した画像データを、前記所定のタグが示す送信先に送信することを前記画像処理サービス部に要求する、ことを特徴とするＷｅｂブラウザプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理システム、画像処理方法、及びＷｅｂブラウザプログラムに関する。
【背景技術】
【０００２】
複合機（ＭＦＰ：Multifunction Peripheral）等の画像処理装置において、Ｗｅｂブラウザ上で動作するＷｅｂアプリケーションを利用して、印刷やスキャン等の各種画像処理機能を実現する技術が従来から知られている（例えば特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ところで、上述したような印刷やスキャン等の各種画像処理機能は、複合機等の画像処理装置特有の機能である。このような画像処理装置特有の機能を実現させるＷｅｂアプリケーションでは、画像処理装置専用のＪａｖａＳｃｒｉｐｔ（登録商標）を用いてＨＴＭＬ（HyperText Markup Language）が記述されている必要がある。
【０００４】
一方で、スマートフォンやタブレット端末、ＰＣ（パーソナルコンピュータ）等の情報処理装置が利用するＷｅｂアプリケーションでは、汎用的なＨＴＭＬで記述されている。汎用的なＨＴＭＬでは、上述したような印刷やスキャン等の画像処理装置特有の機能を実現させるためのＨＴＭＬタグ等が用意されていない。
【０００５】
このため、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションでは、印刷やスキャン等の画像処理装置特有の機能を実現させることが困難であった。
【０００６】
本発明の実施の形態は、上記の点に鑑みてなされたものであり、汎用的なＨＴＭＬを利用して画像処理装置特有の機能を実現させることを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の実施の形態は、Ｗｅｂブラウザと、所定の画像処理の実行を制御する画像処理サービス部とを有する画像処理装置であって、前記Ｗｅｂブラウザは、前記画像処理装置とネットワークを介して接続されるＷｅｂサーバから取得したコンテンツを解釈する解釈部と、前記解釈部が解釈したコンテンツに基づく画面を表示するＵＩ部と、前記ＵＩ部が表示した前記画面上におけるユーザの入力に応じて、少なくとも前記画像処理サービス部に対する前記画像処理の実行要求を行う制御部と、を有し、前記コンテンツのＨＴＭＬタグが、所定のタグを含む場合、前記制御部は、前記画像処理として、原稿を読み取って生成した画像データを、前記所定のタグが示す送信先に送信することを前記画像処理サービス部に要求する、ことを特徴とする。
【発明の効果】
【０００８】
本発明の実施の形態によれば、汎用的なＨＴＭＬを利用して画像処理装置特有の機能を実現させることができる。
【図面の簡単な説明】
【０００９】
【図１】本実施形態に係る画像処理システムの全体構成の一例を示す図である。
【図２】本実施形態に係る画像処理装置のハードウェア構成の一例を示す図である。
【図３】本実施形態に係る画像処理装置の操作装置及び本体装置に含まれるソフトウェア群の階層構造の一例を示す図である。
【図４】本実施形態に係る情報処理装置のハードウェア構成の一例を示す図である。
【図５】本実施形態に係る画像処理システムのソフトウェア構成の一例を示す図である。
【図６】本実施形態に係る印刷処理の一例を示すシーケンス図である。
【図７】印刷処理における画面遷移の一例を示す図である。
【図８】ａタグの一例を示す図である。
【図９】ＰＨＰコードの一例を示す図である。
【図１０】本実施形態に係る印刷処理の他の例（その１）を示すシーケンス図である。
【図１１】印刷設定画面の一例を示す図である。
【図１２】本実施形態に係る印刷処理の他の例（その２）を示すシーケンス図である。
【図１３】本実施形態に係る印刷処理の他の例（その３）を示すシーケンス図である。
【図１４】印刷処理の実行時におけるＷｅｂブラウザの動作の一例を示すフローチャートである。
【図１５】本実施形態に係るスキャン処理の一例を示すシーケンス図である。
【図１６】スキャン処理における画面遷移の一例を示す図である。
【図１７】ａタグの一例を示す図である。
【図１８】本実施形態に係るスキャン処理の他の例（その１）を示すシーケンス図である。
【図１９】スキャン設定画面の一例を示す図である。
【図２０】本実施形態に係る汎用ＨＴＭＬタグの解釈に基づく画像処理の一例を示すシーケンス図である。
【図２１】スキャン及びメール送信処理の実行時におけるＷｅｂブラウザの動作の一例を示すフローチャートである。
【図２２】本実施形態に係る画像処理システムのソフトウェア構成の他の例を示す図である。
【図２３】本実施形態に係る画像処理システムの全体構成の一例を示す図である。
【図２４】本実施形態に係る画像処理システムのソフトウェア構成の一例を示す図である。
【図２５】本実施形態に係るスキャン処理の一例を示すシーケンス図である。
【図２６】スキャン処理における画面遷移の一例を示す図である。
【図２７】ａタグの一例を示す図である。
【図２８】本実施形態に係るスキャン処理の他の例（その１）を示すシーケンス図である。
【図２９】スキャン設定画面の一例を示す図である。
【図３０】本実施形態に係る汎用ＨＴＭＬタグの解釈に基づく画像処理の一例を示すシーケンス図である。
【図３１】スキャン及びファクス送信処理の実行時におけるＷｅｂブラウザの動作の一例を示すフローチャートである。
【図３２】本実施形態に係る画像処理システムのソフトウェア構成の他の例を示す図である。
【図３３】実施形態に係る画像処理システムの構成の一例を示す図である。
【図３４】実施形態に係るＭＦＰのハードウェア構成の一例を示す図である。
【図３５】実施形態に係るＷｅｂサーバのハードウェア構成の一例を示す図である。
【図３６】実施形態に係るＭＦＰのソフトウェアの階層構造の一例を示す図である。
【図３７】実施形態に係る画像処理システムの機能ブロックの構成の一例を示す図である。
【図３８】実施形態に係る画像処理システムのスキャン・印刷処理の一例を示すシーケンス図である。
【図３９】スキャン・印刷処理における画面遷移の一例を示す図である。
【図４０】スキャン実行タグの一例を示す図である。
【図４１】印刷実行タグの一例を示す図である。
【図４２】実施形態の変形例１に係る画像処理システムの機能ブロックの構成の一例を示す図である。
【図４３】実施形態の変形例１に係る画像処理システムのスキャン・印刷処理の一例を示す図である。
【図４４】実施形態の変形例２に係る画像処理システムの機能ブロックの構成の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００１１】
＜実施形態１＞
＜全体構成例＞
まず、本実施形態に係る画像処理システム１の全体構成について、図１を参照しながら説明する。図１は、本実施形態に係る画像処理システム１の全体構成の一例を示す図である。
【００１２】
図１に示すように、本実施形態に係る画像処理システム１には、１以上の画像処理装置１０と、１以上のＷｅｂサーバ２０と、１以上のメールサーバ３０と、情報処理装置４０とが含まれる。また、画像処理装置１０とＷｅｂサーバ２０とは、例えばインターネット等の広域的なネットワークＮを介して通信可能に接続されている。また、画像処理装置１０とメールサーバ３０とは、例えばインターネット等の広域的なネットワークＮを介して通信可能に接続されている。
【００１３】
画像処理装置１０は、Ｗｅｂブラウザが搭載された複合機等の電子機器である。画像処理装置１０のユーザは、Ｗｅｂサーバ２０が提供するＷｅｂアプリケーションを利用して、例えば、Ｗｅｂサーバ２０からダウンロードした電子データを印刷したり、スキャンにより生成した画像データをメールサーバ３０にメール送信したりすることができる。
【００１４】
Ｗｅｂサーバ２０は、ネットワークＮを介して、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションを提供するコンピュータ又はコンピュータシステムである。汎用的なＨＴＭＬとは、Ｗ３Ｃ（World Wide Web Consortium）で規定されたＨＴＭＬ５やＨＴＭＬ  ５．１等のことである。また、汎用的とは、例えば画像処理装置等の機器でのみ解釈可能や処理可能なように定義されたコンテンツ（拡張ＨＴＭＬや拡張ＪａｖａＳｃｒｉｐｔ等の拡張されたコンテンツ）とは異なり、汎用Ｗｅｂブラウザであれば機器の種類を問わず解釈や処理が可能なコンテンツを指す。汎用ＨＴＭＬは、個人端末であるＰＣや携帯端末、スマートフォン等で利用可能であり、一般的なＷｅｂサーバやＷｅｂアプリケーションに共通して用いられている。
【００１５】
Ｗｅｂサーバ２０によりＷｅｂアプリケーションが提供されることで、種々のＷｅｂサービスが実現される。このようなＷｅｂサービスとしては、例えば、クラウドストレージサービス、ＳＮＳ（Social Networking Service）、クラウドプリントサービス、ブログサービス、掲示板サービス、オンラインゲームサービス、オンラインショッピングサービス等が挙げられる。
【００１６】
メールサーバ３０は、ネットワークＮを介して画像処理装置１０がメール送信した画像データを受信して、指定されたメールアドレス宛に送信するコンピュータ又はコンピュータシステムである。
【００１７】
情報処理装置４０は、Ｗｅｂブラウザが搭載されたＰＣ（パーソナルコンピュータ）やスマートフォン、タブレット端末等である。
【００１８】
なお、図１に示す画像処理システム１の構成は一例であって、他の構成であっても良い。例えば、画像処理装置１０は、複合機に限られず、例えば、デジタルカメラ、印刷装置、スキャナ装置、コピー機、プロジェクタ、ファクシミリ、電子会議用端末、電子黒板装置等であっても良い。すなわち、画像処理装置１０は、Ｗｅｂサーバ２０との間でデータの入力及び出力の少なくとも一方を行う電子機器であれば良い。また、例えば、画像処理システム１には、情報処理装置４０が含まれていなくても良い。
【００１９】
＜画像処理装置１０のハードウェア構成例＞
次に、本実施形態に係る画像処理装置１０のハードウェア構成について、図２を参照しながら説明する。図２は、本実施形態に係る画像処理装置１０のハードウェア構成の一例を示す図である。
【００２０】
図２に示すように、本実施形態に係る画像処理装置１０は、操作装置１１と、本体装置１２とを有している。
【００２１】
操作装置１１は、本体装置１２に実行させる画像処理機能の選択、画像処理機能を実行させるための各種設定値の入力、画像処理機能の実行を開始させるための実行指示の入力、表示画面の切り替え等、ユーザが各種操作を行う際に用いられる。
【００２２】
本体装置１２は、操作装置１１におけるユーザの各種操作に応じて、画像処理機能の実行等の各種の処理を実行する。
【００２３】
図２に示すように、画像処理装置１０の操作装置１１は、ＣＰＵ（Central Processing Unit）１１１と、ＲＯＭ（Read Only Memory）１１２と、ＲＡＭ（Random Access Memory）１１３とを有している。また、操作装置１１は、フラッシュメモリ１１４と、操作パネル１１５と、接続Ｉ／Ｆ１１６と、通信Ｉ／Ｆ１１７とを有している。これら各ハードウェアは、バス１１８を介して相互に接続されている。
【００２４】
ＣＰＵ１１１は、ＲＡＭ１１３をワークエリアとしてＲＯＭ１１２又はフラッシュメモリ１１４に記憶された各種プログラムを実行することで、操作装置１１全体を制御する演算装置である。
【００２５】
ＲＯＭ１１２は、電源を切ってもデータを保持することができる不揮発性の半導体メモリ（記憶装置）である。ＲＡＭ１１３は、プログラムやデータを一時保持する揮発性の半導体メモリ（記憶装置）である。
【００２６】
フラッシュメモリ１１４は、不揮発性の記憶装置であり、ＣＰＵ１１１が実行する各種プログラム（例えば、本実施形態を実現するプログラム等）や各種データを記憶する。
【００２７】
操作パネル１１５は、ユーザが各種操作を行う際に用いられる。また、操作パネル１１５は、ユーザに対して各種画面等を表示する。
【００２８】
接続Ｉ／Ｆ１１６は、通信路１３を介して本体装置１２と通信するためのインタフェースである。接続Ｉ／Ｆ１１６には、例えばＵＳＢ（Universal Serial Bus）規格のインタフェースが用いられる。
【００２９】
通信Ｉ／Ｆ１１７は、他の機器等と通信するためのインタフェースである。通信Ｉ／Ｆ１１７には、例えば、Ｗｉ−Ｆｉ規格の無線ＬＡＮ（Local Area Network）等が用いられる。
【００３０】
同様に、画像処理装置１０の本体装置１２は、ＣＰＵ１２１と、ＲＯＭ１２２と、ＲＡＭ１２３とを有している。また、本体装置１２は、ＨＤＤ（Hard Disk Drive）１２４と、画像処理エンジン１２５と、接続Ｉ／Ｆ１２６と、通信Ｉ／Ｆ１２７とを有している。これら各ハードウェアは、バス１２８を介して相互に接続されている。
【００３１】
ＣＰＵ１２１は、ＲＡＭ１２３をワークエリアとしてＲＯＭ１２２又はＨＤＤ１２４に記憶された各種プログラムを実行することで、本体装置１２全体を制御する演算装置である。
【００３２】
ＲＯＭ１２２は、電源を切ってもデータを保持することができる不揮発性の半導体メモリ（記憶装置）である。ＲＡＭ１２３は、プログラムやデータを一時保持する揮発性の半導体メモリ（記憶装置）である。
【００３３】
ＨＤＤ１２４は、不揮発性の記憶装置であり、ＣＰＵ１２１が実行する各種プログラム（例えば、本実施形態を実現するプログラム等）や各種データを記憶する。
【００３４】
画像処理エンジン１２５は、印刷機能、スキャン機能、コピー機能、及びＦＡＸ機能等の各種の画像処理機能を実現するための画像処理を行うハードウェアである。
【００３５】
画像処理エンジン１２５には、例えば、用紙等のシート材への印刷を行うプロッタ、原稿を光学的に読み取って画像データを生成するスキャナ、及びＦＡＸ通信を行うＦＡＸ通信装置等が含まれる。また、画像処理エンジン１２５には、例えば、印刷済みのシート材を仕分けるフィニッシャや原稿を自動給送するＡＤＦ（自動原稿給送装置）等が含まれていても良い。
【００３６】
接続Ｉ／Ｆ１２６は、通信路１３を介して操作装置１１と通信するためのインタフェースである。接続Ｉ／Ｆ１２６には、例えば、ＵＳＢ規格のインタフェースが用いられる。
【００３７】
通信Ｉ／Ｆ１２７は、他の機器等と通信するためのインタフェースである。通信Ｉ／Ｆ１２７には、例えば、Ｗｉ−Ｆｉ規格の無線ＬＡＮ等が用いられる。
【００３８】
本実施形態に係る画像処理装置１０は、図２に示すハードウェア構成を有することにより、後述する各種処理を実現することができる。
【００３９】
なお、図２では、画像処理装置１０が操作装置１１を有している構成を一例として示したが、これに限られず、例えば、タブレット端末、スマートフォン、携帯電話、ＰＤＡ等の情報処理端末が画像処理装置１０の操作装置として機能しても良い。すなわち、これらの情報処理端末は、操作装置１１の通信Ｉ／Ｆ１１７又は本体装置１２の通信Ｉ／Ｆ１２７を介して画像処理装置１０と通信することにより、当該画像処理装置１０を制御することができても良い。
【００４０】
＜画像処理装置１０のソフトウェア群の階層構造＞
次に、本実施形態に係る画像処理装置１０の操作装置１１及び本体装置１２に含まれるソフトウェア群の階層構造について、図３を参照しながら説明する。図３は、本実施形態に係る画像処理装置１０の操作装置１１及び本体装置１２に含まれるソフトウェア群の階層構造の一例を示す図である。
【００４１】
図３は、操作装置１１に含まれるソフトウェア群の階層構造と、本体装置１２に含まれるソフトウェア群の階層構造とを示している。
【００４２】
まず、本体装置１２に含まれるソフトウェア群（すなわち、本体装置１２のＲＯＭ１２２やＨＤＤ１２４に記憶されているプログラム群）の階層構造について説明する。本体装置１２に含まれるソフトウェア群は、アプリケーション層２２１と、サービス層２２２と、ＯＳ層２２３とに大別することができる。
【００４３】
アプリケーション層２２１に区分されるソフトウェアは、ハードウェア資源を動作させて画像処理機能を実現させるためのソフトウェアである。具体的には、印刷アプリケーション、スキャンアプリケーション、コピーアプリケーション、及びＦＡＸアプリケーション等が挙げられる。
【００４４】
サービス層２２２に区分されるソフトウェアは、アプリケーション層２２１とＯＳ層２２３との間を介在するソフトウェアである。当該ソフトウェアは、本体装置１２が備えるハードウェア資源を、アプリケーション層２２１のソフトウェアが利用したり、本体装置１２が備えるハードウェア資源の状態を通知したりするインタフェースとしての役割を果たす。
【００４５】
具体的には、ハードウェア資源に対する実行要求を受け付けたり、受け付けた実行要求の調停を行ったりする。サービス層２２２が受け付ける実行要求には、例えば、画像処理エンジン１２５による画像処理の実行要求（スキャナによるスキャン実行要求やプロッタによる印刷実行要求等）が含まれる。
【００４６】
なお、サービス層２２２に区分されるソフトウェアが果たす上記インタフェースとしての役割は、操作装置１１のアプリケーション層２１１に対しても同様である。すなわち、操作装置１１のアプリケーション層２１１に区分されるソフトウェアも、サービス層２２２にアクセスすることにより、本体装置１２のハードウェア資源を動作させて、画像処理機能を実現させることができる。
【００４７】
ＯＳ層２２３に区分されるソフトウェアは、基本ソフトウェア（ＯＳ：Operating System）と呼ばれるプログラムであり、本体装置１２が有するハードウェア資源を制御する基本機能を提供する。ＯＳ層２２３に区分されるソフトウェアは、アプリケーション層２２１に区分されるソフトウェアからのハードウェア資源に対する実行要求を、サービス層２２２に区分されるソフトウェアを介して受け付けて、当該実行要求に応じた処理を実行する。
【００４８】
次に、操作装置１１に含まれるソフトウェア群（すなわち、操作装置１１のＲＯＭ１１２やフラッシュメモリ１１４に記憶されているプログラム群）の階層構造について説明する。本体装置１２と同様に、操作装置１１に含まれるソフトウェア群も、アプリケーション層２１１と、サービス層２１２と、ＯＳ層２１３とに大別することができる。
【００４９】
ただし、アプリケーション層２１１に区分されるソフトウェアが提供する機能やサービス層２１２が受け付け可能な実行要求の種類は、本体装置１２とは異なる。操作装置１１のアプリケーション層２１１に区分されるソフトウェアは、主として、各種操作や表示を行うためのユーザインタフェース機能を提供する。
【００５０】
なお、本実施形態では、操作装置１１と本体装置１２とで、ＯＳは独立して動作するものとする。また、操作装置１１と本体装置１２とが相互に通信可能であれば、ＯＳが同じ種類である必要はない。例えば、操作装置１１ではＯＳにＡｎｄｒｏｉｄ（登録商標）を用いる一方で、本体装置１２ではＯＳにＬｉｎｕｘ（登録商標）を用いることも可能である。
【００５１】
このように、本実施形態に係る画像処理装置１０は、操作装置１１と本体装置１２とが異なるＯＳにより制御される。このため、操作装置１１と本体装置１２との間の通信は、一装置内のプロセス間通信ではなく、異なる情報処理装置間の通信として行われる。
【００５２】
ただし、本実施形態に係る画像処理装置１０は、操作装置１１と本体装置１２とで異なる種類のＯＳが動作している場合に限られず、操作装置１１と本体装置１２とで同一種類のＯＳが動作していても良い。また、本実施形態に係る画像処理装置１０は、操作装置１１と本体装置１２とでＯＳが独立して動作している場合に限られず、操作装置１１及び本体装置１２上で一のＯＳが動作していても良い。
【００５３】
＜情報処理装置４０のハードウェア構成例＞
次に、本実施形態に係る情報処理装置４０のハードウェア構成について、図４を参照しながら説明する。図４は、本実施形態に係る情報処理装置４０のハードウェア構成の一例を示す図である。
【００５４】
図４に示すように、情報処理装置４０は、入力装置３１と、表示装置３２と、外部Ｉ／Ｆ３３と、ＲＡＭ３４と、ＲＯＭ３５と、ＣＰＵ３６と、通信Ｉ／Ｆ３７と、補助記憶装置３８とを有する。これら各ハードウェアは、それぞれがバスＢを介して通信可能に接続されている。
【００５５】
入力装置３１は、例えばキーボードやマウス、タッチパネル等であり、ユーザが各種操作を入力するのに用いられる。表示装置３２は、例えばディスプレイ等であり、情報処理装置４０の処理結果を表示する。
【００５６】
外部Ｉ／Ｆ３３は、外部装置とのインタフェースである。外部装置には、記録媒体３３ａ等がある。情報処理装置４０は、外部Ｉ／Ｆ３３を介して、記録媒体３３ａ等の読み取りや書き込みを行うことができる。
【００５７】
記録媒体３３ａには、例えば、フレキシブルディスク、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disk）、ＳＤメモリカード（Secure Digital memory card）、ＵＳＢ（Universal Serial Bus）メモリカード等がある。
【００５８】
ＲＡＭ３４は、プログラムやデータを一時保持する揮発性の半導体メモリである。ＲＯＭ３５は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ＲＯＭ３５には、例えば、ＯＳ設定やネットワーク設定等が格納されている。
【００５９】
ＣＰＵ３６は、ＲＯＭ３５や補助記憶装置３８等からプログラムやデータをＲＡＭ３４上に読み出して処理を実行する演算装置である。
【００６０】
通信Ｉ／Ｆ３７は、情報処理装置４０をネットワークＮに接続するためのインタフェースである。補助記憶装置３８は、例えばＨＤＤやＳＳＤ等であり、プログラムやデータを格納している不揮発性の記憶装置である。補助記憶装置３８に格納されているプログラムやデータには、例えば、ＯＳ、当該ＯＳ上において各種機能を実現するアプリケーションプログラム等がある。
【００６１】
＜ソフトウェア構成例＞
次に、本実施形態に係る画像処理システム１に含まれる画像処理装置１０及び情報処理装置４０のソフトウェア構成について、図５を参照しながら説明する。図５は、本実施形態に係る画像処理システム１のソフトウェア構成の一例を示す図である。
【００６２】
≪画像処理装置１０≫
図５に示すように、本実施形態に係る画像処理装置１０の操作装置１１は、Ｗｅｂブラウザ３１０と、印刷ＵＩアプリケーション３２０と、スキャンＵＩアプリケーション３３０と、メールＵＩアプリケーション３９２とを有する。これらＷｅｂブラウザ３１０、印刷ＵＩアプリケーション３２０、スキャンＵＩアプリケーション３３０、メールＵＩアプリケーション３９２は、ＣＰＵ１１１により実行される。
【００６３】
また、本実施形態に係る画像処理装置１０の本体装置１２は、ＷｅｂＡＰＩ３４０と、印刷アプリケーション３５０と、スキャンアプリケーション３６０と、メール送信アプリケーション３９０とを有する。これらＷｅｂＡＰＩ３４０、印刷アプリケーション３５０、スキャンアプリケーション３６０、メール送信アプリケーション３９０は、ＣＰＵ１２１により実行される。
【００６４】
Ｗｅｂブラウザ３１０は、Ｗｅｂサーバ２０からＷｅｂコンテンツ（例えば、ＨＴＭＬ、ＣＳＳ（Cascading Style Sheets）、ＪａｖａＳｃｒｉｐｔ、各種電子ファイル等）を取得することで、Ｗｅｂアプリケーションを実現する。
【００６５】
例えば、Ｗｅｂブラウザ３１０は、ＳＮＳを提供するＷｅｂサーバ２０からＷｅｂコンテンツを取得することで、ＳＮＳの閲覧やＳＮＳ上でのファイル共有等を行うＷｅｂアプリケーションを実現する。また、例えば、Ｗｅｂブラウザ３１０は、クラウドストレージサービスを提供するＷｅｂサーバ２０からＷｅｂコンテンツを取得することで、ストレージの閲覧やストレージへのファイルのアップロード等を行うＷｅｂアプリケーションを実現する。
【００６６】
なお、Ｗｅｂアプリケーションは、一般に、Ｗｅｂサーバ２０から取得したＪａｖａＳｃｒｉｐｔ等のコンテンツをＷｅｂブラウザ３１０上で動作させて、Ｗｅｂサーバ２０と協働した処理を実行させることで実現される。
【００６７】
Ｗｅｂブラウザ３１０には、ブラウザ機能部３１１と、制御部３１２とが含まれる。なお、以降では、Ｗｅｂコンテンツを単に「コンテンツ」とも表す。
【００６８】
ブラウザ機能部３１１は、コンテンツの解釈及び表示等を行う。ブラウザ機能部３１１には、ＵＩ部３１３と、解釈部３１４とが含まれる。解釈部３１４は、ＵＩ部３１３により表示されたＷｅｂページ上でリンクが押下された場合、当該リンクに対応するＨＴＭＬタグを解釈して、制御部３１２に対して解釈結果に応じた通知を行う。
【００６９】
ＵＩ部３１３は、Ｗｅｂサーバ２０から取得したコンテンツに応じたＷｅｂページ等を表示する。また、ＵＩ部３１３は、Ｗｅｂページ上におけるユーザの各種操作（例えば、リンク押下）等を受け付ける。なお、ブラウザ機能部３１１は、例えば、ＷｅｂＶｉｅｗ等を用いて実現することができる。
【００７０】
制御部３１２は、ブラウザ機能部３１１の解釈部３１４からの通知に応じて、画像処理装置１０の画像処理機能を実行させる制御を行う。例えば、リンク先のコンテンツをＷｅｂサーバ２０からダウンロードすることを示すダウンロード通知を解釈部３１４から受け取った場合、制御部３１２は、当該コンテンツをダウンロードして印刷する制御を行う。また、例えば、リンク先のコンテンツを表示させることを示す表示通知を解釈部３１４から受け取った場合であっても、当該コンテンツが所定の形式（例えば、ＪＰＥＧ形式）である場合、制御部３１２は、当該コンテンツをダウンロードして印刷する制御を行う。
【００７１】
なお、Ｗｅｂブラウザ３１０は、Ｗｅｂアプリケーションを実現するブラウザ機能部３１１と、画像処理装置１０の画像処理機能を制御する制御部３１２とを備えるため、いわゆるハイブリッドアプリケーションと言うこともできる。Ｗｅｂブラウザ３１０は、例えば、Ｊａｖａ（登録商標）等のプログラミング言語で実装される。すなわち、Ｗｅｂブラウザ３１０を構成するブラウザアプリケーションは、その基礎部分がＪａｖａアプリケーションプログラムから構成されている。このＪａｖａアプリケーションが、操作装置１１が提供するＡＰＩを用いて、操作装置１１が備えるブラウザ機能部３１１（例えば、ＷｅｂＶｉｅｗ）を呼び出すことで、解釈部３１４及びＵＩ部３１３を含むＷｅｂブラウザ３１０を構成している。基礎部分であるＪａｖａアプリケーションプログラムは、制御部３１２を含み、この制御部３１２が制御を行うことで、Ｗｅｂコンテンツ解釈後の動作に柔軟性を持たせ、汎用的なＨＴＭＬで可能な動作（ダウンロード及びアップロード）だけでなく、画像処理（プリント、スキャン、メール送信）動作の要求ができるようになっている。
【００７２】
印刷ＵＩアプリケーション３２０は、印刷に関するＵＩ（ユーザインタフェース）を提供するアプリケーションプログラムである。印刷ＵＩアプリケーション３２０は、例えば、印刷実行中であることを示す画面や印刷が完了したことを示す画面等を表示する。
【００７３】
また、印刷ＵＩアプリケーション３２０は、制御部３１２からの要求に応じて、ＷｅｂＡＰＩ３４０を介して、印刷アプリケーション３５０に対して印刷の実行を要求する。
【００７４】
スキャンＵＩアプリケーション３３０は、スキャンに関するＵＩを提供するアプリケーションプログラムである。スキャンＵＩアプリケーション３３０は、例えば、スキャン中であることを示す画面やスキャンが完了したことを示す画面、スキャンにより生成した画像データのメール送信中であることを示す画面やメール送信が完了したことを示す画面等を表示する。
【００７５】
また、スキャンＵＩアプリケーション３３０は、制御部３１２からの要求に応じて、ＷｅｂＡＰＩ３４０を介して、スキャンアプリケーション３６０に対してスキャンの実行及びスキャンにより生成した画像データのメール送信を要求する。
【００７６】
メールＵＩアプリケーション３９２は、メールに関するＵＩを提供するアプリケーションプログラムである。メールＵＩアプリケーション３９２は、例えば、メール送受信中であることを示す画面やメール送受信が完了したことを示す画面等を表示する。
【００７７】
ＷｅｂＡＰＩ３４０は、印刷ＵＩアプリケーション３２０、スキャンＵＩアプリケーション３３０、メールＵＩアプリケーション３９２が画像処理の実行を要求するためのＡＰＩ（Application Programming Interface）である。
【００７８】
印刷アプリケーション３５０は、印刷ＵＩアプリケーション３２０からの要求に応じて、画像処理エンジン１２５を制御して、印刷を実行する。
【００７９】
スキャンアプリケーション３６０は、スキャンＵＩアプリケーション３３０からの要求に応じて、画像処理エンジン１２５を制御して、スキャンを実行する。また、スキャンアプリケーション３６０は、メール送信アプリケーション３９０に対して、スキャンにより生成した画像データのメール送信を要求する。
【００８０】
メール送信アプリケーション３９０は、スキャンアプリケーション３６０からの要求に応じて、画像処理エンジン１２５を制御して、メール送信を実行する。
【００８１】
以降では、印刷ＵＩアプリケーション３２０と、ＷｅｂＡＰＩ３４０と、印刷アプリケーション３５０とを「印刷サービス部３７０」と表す。また、スキャンＵＩアプリケーション３３０と、ＷｅｂＡＰＩ３４０と、スキャンアプリケーション３６０とを「スキャンサービス部３８０」と表す。また、メールＵＩアプリケーション３９２と、ＷｅｂＡＰＩ３４０と、メール送信アプリケーション３９０とを「メールサービス部３９１」と表す。
【００８２】
なお、操作装置１１には、例えば、コピーに関するＵＩを提供するアプリケーションやＦＡＸに関するＵＩを提供するアプリケーション、ＯＣＲ（Optical Character Recognition）に関するＵＩを提供するアプリケーション等が含まれていても良い。また、本体装置１２には、例えば、コピーを実行するアプリケーションやＦＡＸを実行するアプリケーション、ＯＣＲを実現するアプリケーション等が含まれていても良い。したがって、画像処理装置１０には、例えば、コピーサービス部やＦＡＸサービス部、ＯＣＲサービス等の様々な画像処理サービス部が含まれていても良い。
【００８３】
また、画像処理装置１０には、画像処理サービス部以外にも、例えば、画像処理装置１０が保持するアドレス帳に関する処理を実行するアドレス帳サービス部、ユーザが画像処理装置１０を利用するための認証に関する処理を実行する認証サービス部等が含まれる。
【００８４】
≪情報処理装置４０≫
図５に示すように、本実施形態に係る情報処理装置４０は、Ｗｅｂブラウザ４１０を有する。Ｗｅｂブラウザ４１０は、ＣＰＵ３６により実行される。
【００８５】
Ｗｅｂブラウザ４１０には、ＵＩ部４１１と、解釈部４１２とが含まれる。ＵＩ部４１１は、Ｗｅｂサーバ２０から取得したコンテンツに応じたＷｅｂページ等を表示する。また、ＵＩ部４１１は、Ｗｅｂページ上におけるユーザの各種操作（例えば、リンク押下）等を受け付ける。
【００８６】
解釈部４１２は、ＵＩ部４１１により表示されたＷｅｂページ上でリンクが押下された場合、当該リンクに対応するＨＴＭＬを解釈して、ＵＩ部４１１に対して解釈結果に応じた通知を行う。
【００８７】
＜画像処理装置１０及び情報処理装置４０の動作比較＞
情報処理装置４０に搭載されたＷｅｂブラウザ４１０のＵＩ部４１１は、例えば、Ｗｅｂページ上でユーザによりリンク押下操作がなされると、当該リンク押下操作を受け付ける。次に、解釈部４１２は、当該リンク押下操作が行われたリンクのＨＴＭＬタグ（ａタグ（アンカータグ））を解釈して、ＵＩ部４１１に対して解釈結果に応じた通知（表示通知又はダウンロード通知）を行う。例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ４１０で表示可能なファイルである場合（例えば、拡張子がｈｔｍｌやｉｍｇ、ｐｄｆ等である場合）には、表示通知となる。一方で、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ４１０で表示可能でないファイルである場合（例えば、拡張子がｚｉｐ等である場合）には、ダウンロード通知となる。ただし、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルの拡張子がｐｄｆ等のＷｅｂブラウザ４１０で表示可能なファイルの拡張子であっても、属性「ｄｏｗｎｌｏａｄ」が指定されている場合には、ダウンロード通知となる。
【００８８】
そして、Ｗｅｂブラウザ４１０のＵＩ部４１１は、表示通知を受け取った場合、ファイルを表示する。一方で、Ｗｅｂブラウザ４１０のＵＩ部４１１は、ダウンロード通知を受け取った場合、例えば、ファイルをダウンロードするための画面（例えば、ダウンロードの開始又はキャンセルをユーザが選択するための画面）を表示する。
【００８９】
一方で、画像処理装置１０に搭載されたＷｅｂブラウザ３１０のＵＩ部３１３は、例えば、Ｗｅｂページ上でユーザによりリンク押下操作がなされると、当該リンク押下操作を受け付ける。次に、解釈部３１４は、当該リンク押下操作が行われたリンクのＨＴＭＬタグ（ａタグ（アンカータグ））を解釈して、制御部３１２に対して解釈結果に応じた通知（表示通知又はダウンロード）を行う。これは、情報処理装置４０と同様に、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ３１０で表示可能なファイルである場合（例えば、拡張子がｈｔｍｌやｉｍｇ、ｐｄｆ等である場合）には、表示通知となる。一方で、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ３１０で表示可能でないファイルである場合（例えば、拡張子がｚｉｐ等である場合）には、ダウンロード通知となる。
【００９０】
そして、制御部３１２は、ダウンロード通知を受け取った場合、ダウンロード対象のファイルが印刷可能か否かを判定した上で、印刷可能であるとき、当該ファイルをダウンロードし、ダウンロードしたファイルを印刷させるための制御を行う。一方で、制御部３１２は、表示通知を受け取った場合、表示対象のファイルが印刷可能か否かを判定した上で、印刷可能であるとき、当該ファイルをダウンロードし、ダウンロードしたファイルを印刷させるための制御を行う。
【００９１】
このように、画像処理装置１０に搭載されたＷｅｂブラウザ３１０は、情報処理装置４０のＷｅｂブラウザ４１０でダウンロード対象又は表示対象と解釈されるファイルが印刷可能である場合、当該ファイルを印刷させるための制御を行う。これにより、画像処理装置１０では、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションにより、コンテンツのダウンロード及び印刷を行うことができる。
【００９２】
また、情報処理装置４０に搭載されたＷｅｂブラウザ４１０のＵＩ部４１１は、例えば、Ｗｅｂページ上でユーザによりリンク押下操作がなされると、当該リンク押下操作を受け付ける。次に、解釈部４１２は、当該リンク押下操作が行われたリンクのＨＴＭＬタグ（ａタグ（アンカータグ））を解釈して、ＵＩ部４１１に対して解釈結果に応じた通知（メール送信通知）を行う。このメール送信通知は、ａタグの属性「ｈｒｅｆ」においてスキーム「ｍａｉｌ  ｔｏ」で指定された電子メールアドレスにメール送信させる通知である。
【００９３】
そして、Ｗｅｂブラウザ４１０のＵＩ部４１１は、メール送信通知を受け取った場合、メールソフトを起動して、指定された電子メールアドレスが宛先欄に入力された新規メール作成画面を表示する。
【００９４】
一方で、画像処理装置１０に搭載されたＷｅｂブラウザ３１０のＵＩ部３１３は、例えば、Ｗｅｂページ上でユーザによりリンク押下操作がなされると、当該リンク押下操作を受け付ける。次に、解釈部３１４は、当該リンク押下操作が行われたリンクのＨＴＭＬタグ（ａタグ（アンカータグ））を解釈して、制御部３１２に対して解釈結果に応じた通知（メール送信通知）を行う。このメール送信通知は、ａタグの属性「ｈｒｅｆ」においてスキーム「ｍａｉｌ  ｔｏ」で指定された電子メールアドレスへ、スキャンにより生成した画像データをメール送信させる通知である。
【００９５】
そして、制御部３１２は、メール送信通知を受け取った場合、スキャンにより画像データを生成するように制御した上で、生成された画像データを指定された電子メールアドレスにメール送信する。
【００９６】
このように、画像処理装置１０に搭載されたＷｅｂブラウザ３１０は、情報処理装置４０のＷｅｂブラウザ４１０でメールの送信先と解釈される電子メールアドレス宛へ、スキャンにより生成した画像データをメール送信する。これにより、画像処理装置１０では、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションにより、画像データの生成及びメール送信を行うことができる。
【００９７】
＜処理の詳細＞
次に、本実施形態に係る画像処理システム１の処理の詳細について説明する。
【００９８】
（実施例１）
以降では、ユーザが画像処理装置１０を用いて、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションにより、Ｗｅｂサーバ２０からコンテンツをダウンロードして印刷する処理について、図６を参照しながら説明する。図６は、本実施形態に係る印刷処理の一例を示すシーケンス図である。
【００９９】
まず、ブラウザ機能部３１１のＵＩ部３１３は、例えば図７に示すＷｅｂページＧ１１０を表示する（ステップＳ６０１）。図７に示すＷｅｂページＧ１１０は、Ｗｅｂサーバ２０から取得したコンテンツ（ＨＴＭＬやＣＳＳ、ＪａｖａＳｃｒｉｐｔ等）を解釈部３１４が解釈することで表示される。このようなコンテンツの取得は、例えば、ＷｅｂページＧ１１０を表示するためのＵＲＬ（Uniform Resource Locator）を入力したり、当該ＵＲＬへのリンクを押下したりすることで行うことができる。
【０１００】
図７に示すＷｅｂページＧ１１０には、Ｗｅｂサーバ２０に格納されているＰＤＦ（Portable Document Format）ファイルへのリンクＧ１１１が含まれている。ここで、ユーザがリンクＧ１１１を押下したものとする。
【０１０１】
ブラウザ機能部３１１のＵＩ部３１３は、ユーザによるリンクＧ１１１の押下を受け付ける（ステップＳ６０２）。ここで、図７に示すＷｅｂページＧ１１０に含まれるリンクＧ１１１は、例えば、図８に示すように、属性「ｈｒｅｆ」や属性「ｄｏｗｎｌｏａｄ」、属性「ｔｙｐｅ」等が設定されたａタグ（アンカータグ）により実現される。図８に示すａタグの属性「ｈｒｅｆ」には、相対パスにより、ファイル名「ｆｉｌｅ．ｐｄｆ」のＰＤＦファイルの格納先ＵＲＬ（なお、スキームは「ｈｔｔｐ」である）が指定されている。なお、ａタグには、これら以外にも、種々の属性が設定されていても良い。
【０１０２】
ブラウザ機能部３１１のＵＩ部３１３は、ユーザにより押下されたリンクＧ１１１を実現するａタグの解釈要求を解釈部３１４に送信する（ステップＳ６０３）。
【０１０３】
ブラウザ機能部３１１の解釈部３１４は、リンクＧ１１１を実現するａタグを解釈する（ステップＳ６０４）。すなわち、解釈部３１４は、ａタグを解釈することで、当該ａタグの属性「ｈｒｅｆ」に指定されたリンク先のコンテンツが、Ｗｅｂブラウザ３１０上に表示するコンテンツ又はダウンロードするコンテンツのいずれであるかを判定する。
【０１０４】
Ｗｅｂブラウザ３１０上に表示するコンテンツ又はダウンロードするコンテンツのいずれであるかは、例えば、属性「ｈｒｅｆ」に指定されたリンク先のコンテンツの拡張子で判定される。例えば、拡張子が「ｈｔｍｌ」や「ｈｔｍ」、「ｊｐｅｇ」、「ｇｉｆ」等である場合、Ｗｅｂブラウザ３１０上に表示するコンテンツであると判定される。一方で、例えば、拡張子が「ｐｄｆ」や「ｄｏｃ」、「ｘｌｓ」、「ｚｉｐ」等である場合、ダウンロードするコンテンツであると判定される。なお、Ｗｅｂブラウザ３１０上に表示するか又はダウンロードするかは、例えば、拡張子毎に、Ｗｅｂブラウザ３１０の設定ファイル等に定義される。なお、「ｊｐｅｇ」をダウンロード対象にする等、個々の拡張子に対してダウンロードするか表示するかの設定が可能である。
【０１０５】
上記のステップＳ６０４において、ダウンロードするコンテンツであると判定された場合、ブラウザ機能部３１１の解釈部３１４は、ダウンロード通知を制御部３１２に送信する（ステップＳ６０５）。解釈部３１４は、ブラウザが搭載されている機器にダウンロードを実行させるためのダウンロードＡＰＩの一例として、例えば、ｏｎＤｗｏｎｌｏａｄＳｔａｒｔを呼び出すことで、ダウンロード通知を行うことができる。なお、このとき、ｏｎＤｏｗｎｌｏａｄＳｔａｒｔの引数には、属性「ｈｒｅｆ」に指定されたＵＲＬと、属性「ｔｙｐｅ」に指定されたＭＩＭＥタイプとが指定される。ｏｎＤｗｏｎｌｏａｄＳｔａｒｔは、操作装置１１で提供するＡＰＩ（操作部ＡＰＩ、操作装置ＡＰＩ）の１つである。
【０１０６】
制御部３１２は、ダウンロード対象のコンテンツ（すなわち、属性「ｈｒｅｆ」に指定されたリンク先のコンテンツ）が印刷可能であるか否かを確認する（ステップＳ６０６）。
【０１０７】
ダウンロード対象のコンテンツが印刷可能であるか否かは、例えば、属性「ｔｙｐｅ」に指定されているＭＩＭＥタイプや当該コンテンツの拡張子等により判定される。例えば、属性「ｔｙｐｅ」に指定されているＭＩＭＥタイプが「ａｐｐｌｉｃａｔｉｏｎ／ｐｄｆ」や「ａｐｐｌｉｃａｔｉｏｎ／ｍｓｗｏｒｄ」、「ａｐｐｌｉｃａｔｉｏｎ／ｍｓｅｘｃｅｌ」等である場合、印刷可能であると判定される。一方で、例えば、属性「ｔｙｐｅ」に指定されているＭＩＭＥタイプが「ａｐｐｌｉｃａｔｉｏｎ／ｚｉｐ」等である場合（すなわち、コンテンツが圧縮されている場合）には、印刷可能でないと判定される。これ以外にも、例えば、ダウンロード対象のコンテンツが暗号化されている場合等には、印刷可能でないと判定される。
【０１０８】
ただし、例えば、コンテンツが圧縮されている場合、当該コンテンツをダウンロード及び解凍した上で、解凍後のコンテンツが印刷可能であるか否かを確認しても良い。このとき、解凍後のコンテンツが印刷可能でない場合は、例えば、エラー画面等をＷｅｂブラウザ３１０上に表示すれば良い。解凍後のコンテンツが印刷可能でない場合には、例えば、解凍後のコンテンツが暗号化されている、動画ファイル（例えば、拡張子「．ｍｐ４」等）や音声ファイル（例えば、拡張子「．ｍｐ３」等）等が挙げられる。
【０１０９】
なお、ＭＩＭＥタイプは、例えば、ｏｎＤｏｗｎｌｏａｄＳｔａｒｔの引数に指定される。また、コンテンツの拡張子は、例えば、ｏｎＤｏｗｎｌｏａｄＳｔａｒｔの引数に指定されるＵＲＬから特定することができる。
【０１１０】
以降では、上記のステップＳ６０６において、ダウンロード対象のコンテンツが印刷可能であると判定されたものとして説明する。なお、上記のステップＳ６０６において、ダウンロード対象のコンテンツが印刷可能でないと判定された場合、制御部３１２は、例えば、ダウンロード許可通知を解釈部３１４に返信する。これにより、例えば、ユーザに対して保存先を指定させるためのダイアログが表示された上で、ブラウザ機能部３１１により、当該コンテンツがＷｅｂサーバ２０からダウンロードされる。
【０１１１】
ただし、ダウンロード対象のコンテンツが圧縮や暗号化されていることで印刷可能でないと判定された場合には、解凍後のコンテンツや復号後のコンテンツが印刷可能であるか否かを判定しても良い。このとき、コンテンツの解凍や復号は、制御部３１２が行っても良いし、外部のサーバ等に依頼しても良い。なお、コンテンツの解凍を開始するための開始操作や復号に用いられるパスワードの入力操作等がユーザにより行われても良い。
【０１１２】
これにより、解凍後のコンテンツや復号後のコンテンツが印刷可能である場合には、後述するステップＳ６０７〜ステップＳ６１９が実行される。
【０１１３】
制御部３１２は、ダウンロード対象のコンテンツが印刷可能であると判定された場合、ダウンロード中画面の表示要求をＵＩ部３１３に送信する（ステップＳ６０７）。
【０１１４】
ブラウザ機能部３１１のＵＩ部３１３は、ダウンロード中画面の表示要求を受信すると、例えば図７に示すダウンロード中画面Ｇ１２０を表示する（ステップＳ６０８）。図７に示すダウンロード中画面Ｇ１２０が表示されることで、ユーザは、コンテンツがダウンロード中であることを知ることができる。
【０１１５】
制御部３１２は、ダウンロード対象のコンテンツ（すなわち、ａタグの属性「ｈｒｅｆ」に指定されたリンク先のコンテンツ）のダウンロード要求をＷｅｂサーバ２０に送信する（ステップＳ６０９）。これにより、当該コンテンツがＷｅｂサーバ２０からダウンロードされる。Ｗｅｂサーバ２０からダウンロードされたコンテンツは、例えばフラッシュメモリ１１４内の予め指定された記憶領域に保存される。
【０１１６】
なお、制御部３１２は、ダウンロードしたコンテンツに対して、例えば、画像処理装置１０のユーザを識別するユーザＩＤ等を付加しても良い。また、制御部３１２は、ダウンロードしたコンテンツに対して、例えば、印刷設定を示す情報を付加しても良い。
【０１１７】
制御部３１２は、Ｗｅｂサーバ２０からコンテンツをダウンロードすると、ダウンロード完了画面の表示要求をＵＩ部３１３に送信する（ステップＳ６１０）。
【０１１８】
ブラウザ機能部３１１のＵＩ部３１３は、ダウンロード完了画面の表示要求を受信すると、例えば図７に示すダウンロード完了画面Ｇ１３０を表示する（ステップＳ６１１）。図７に示すダウンロード完了画面Ｇ１３０が表示されることで、ユーザは、コンテンツのダウンロードが完了したことを知ることができる。
【０１１９】
また、図７に示すダウンロード完了画面Ｇ１３０には、印刷実行ボタンＧ１３１が含まれている。ユーザは、印刷実行ボタンＧ１３１を押下することで、ダウンロードしたコンテンツの印刷を開始することができる。ここで、ユーザにより印刷実行ボタンＧ１３１が押下されたものとする。
【０１２０】
ブラウザ機能部３１１のＵＩ部３１３は、ユーザによる印刷実行ボタンＧ１３１の押下を受け付ける（ステップＳ６１２）。なお、印刷実行ボタンＧ１３１が押下されなかった場合（又は後述するキャンセルボタンＧ１４１が押下された場合）、ダウンロードされたコンテンツは削除されても良いし、画像処理装置１０に保存されても良い。
【０１２１】
ブラウザ機能部３１１のＵＩ部３１３は、ダウンロードされたコンテンツの印刷実行要求を制御部３１２に送信する（ステップＳ６１３）。
【０１２２】
制御部３１２は、ブラウザ機能部３１１から印刷実行要求を受信すると、当該印刷実行要求を印刷サービス部３７０に送信する（ステップＳ６１４）。当該印刷実行要求には、上記のステップＳ６０９でダウンロードされたコンテンツの保存先を示す情報が含まれる。当該印刷実行要求には、これ以外にも、例えば、予め決められた印刷設定を示す情報（すなわち、デフォルトの印刷設定を示す情報や制御部３１２により決定された印刷設定を示す情報等）が含まれていても良い。
【０１２３】
なお、制御部３１２は、例えば、機器の他のアプリケーションを呼び出すためのアプリ連携ＡＰＩの一例として、ｉｎｔｅｎｔを用いて、印刷サービス部３７０の印刷ＵＩアプリケーション３２０を呼び出すことができる。ｉｎｔｅｎｔは、操作装置１１で提供するＡＰＩ（操作部ＡＰＩ、操作装置ＡＰＩ）の１つである。呼び出された印刷ＵＩアプリケーション３２０を用いて、例えば、画像処理機能を実行するための印刷設定、印刷実行ボタン、印刷中、印刷キャンセル等の表示を行っても良い。
【０１２４】
印刷サービス部３７０は、制御部３１２から印刷実行要求を受信すると、例えば図７に示す印刷実行中画面Ｇ１４０を表示する（ステップＳ６１５）。図７に示す印刷実行中画面Ｇ１４０は、印刷ＵＩアプリケーション３２０により表示される。図７に示す印刷実行中画面Ｇ１４０が表示されることで、ユーザは、ダウンロードしたコンテンツが印刷中であることを知ることができる。
【０１２５】
次に、印刷サービス部３７０は、上記のステップＳ６０９でダウンロードされたコンテンツの印刷を実行する（ステップＳ６１６）。印刷の実行は、印刷ＵＩアプリケーション３２０が、ＷｅｂＡＰＩ３４０を介して、印刷アプリケーション３５０に対して印刷要求を送信することで行うことができる。これにより、Ｗｅｂサーバ２０からダウンロードされたコンテンツが印刷される。
【０１２６】
なお、図７に示す印刷実行中画面Ｇ１４０には、キャンセルボタンＧ１４１が含まれる。ユーザによりキャンセルボタンＧ１４１が押下された場合、印刷ＵＩアプリケーション３２０は、ＷｅｂＡＰＩ３４０を介して、印刷中止要求を印刷アプリケーション３５０に送信する。これにより、ダウンロードしたコンテンツの印刷が中止される。
【０１２７】
印刷が完了すると、印刷アプリケーション３５０は、当該印刷要求に対する応答を印刷ＵＩアプリケーション３２０に送信する。一方で、例えば、印刷中にエラーが発生した場合、印刷アプリケーション３５０は、エラーが発生したことを示す通知を印刷ＵＩアプリケーション３２０に送信する。印刷ＵＩアプリケーション３２０は、エラーが発生したことを示す通知を受信すると、例えば、エラーが発生したことを示す画面を表示する。
【０１２８】
次に、印刷サービス部３７０は、上記のステップＳ６１６で実行された印刷が完了すると、印刷完了通知を制御部３１２に送信する（ステップＳ６１７）。印刷完了通知は、印刷ＵＩアプリケーション３２０により送信される。
【０１２９】
制御部３１２は、印刷完了通知を印刷サービス部３７０から受信すると、当該印刷完了通知をＵＩ部３１３に送信する（ステップＳ６１８）。
【０１３０】
ブラウザ機能部３１１のＵＩ部３１３は、印刷完了通知を受信すると、例えば図７に示す印刷完了画面Ｇ１５０を表示する（ステップＳ６１９）。図７に示す印刷完了画面Ｇ１５０が表示されることで、ユーザは、コンテンツの印刷が完了したことを知ることができる。
【０１３１】
以上のステップＳ６０５〜ステップＳ６１９により、ステップＳ６０４でリンク先のコンテンツが、ダウンロードするコンテンツであると判定された場合に、当該コンテンツが印刷される。
【０１３２】
一方で、上記のステップＳ６０４において、Ｗｅｂブラウザ３１０上に表示するコンテンツであると判定された場合、ブラウザ機能部３１１の解釈部３１４は、表示通知を制御部３１２に送信する（ステップＳ６２０）。解釈部３１４は、例えば、ブラウザのＵＩで表示している画面を更新するための画面更新ＡＰＩの一例として、ｓｈｏｕｌｄＯｖｅｒｒｉｄｅＵｒｌＬｏａｄｉｎｇを呼び出すことで、表示通知を行うことができる。なお、このとき、ｓｈｏｕｌｄＯｖｅｒｒｉｄｅＵｒｌＬｏａｄｉｎｇの引数には、属性「ｈｒｅｆ」に指定されたＵＲＬが指定される。ｓｈｏｕｌｄＯｖｅｒｒｉｄｅＵｒｌＬｏａｄｉｎｇは、操作装置１１で提供するＡＰＩ（操作部ＡＰＩ、操作装置ＡＰＩ）の１つである。
【０１３３】
制御部３１２は、表示対象のコンテンツ（すなわち、属性「ｈｒｅｆ」に指定されたリンク先のコンテンツ）が印刷可能であるか否かを確認する（ステップＳ６２１）。
【０１３４】
表示対象のコンテンツが印刷可能であるか否かは、例えば、当該コンテンツの拡張子等により判定される。例えば、当該コンテンツの拡張子が「ｊｐｇ」や「ｊｐｅｇ」、「ｔｉｆｆ」等である場合、印刷可能であると判定される。一方、例えば、当該コンテンツの拡張子が「ｈｔｍｌ」や「ｈｔｍ」等である場合には、印刷可能でないと判定される。
【０１３５】
ただし、例えば、当該コンテンツの拡張子が「ｈｔｍｌ」や「ｈｔｍ」等である場合には、当該コンテンツをＷｅｂブラウザ３１０上に表示すると共に、印刷実行ボタンを表示させても良い。これにより、ユーザは、当該印刷実行ボタンを押下することで、Ｗｅｂブラウザ３１０上に表示されているコンテンツ（Ｗｅｂページ）を印刷することができる。
【０１３６】
なお、コンテンツの拡張子は、例えば、ｓｈｏｕｌｄＯｖｅｒｒｉｄｅＵｒｌＬｏａｄｉｎｇの引数に指定されるＵＲＬから特定することができる。
【０１３７】
ただし、表示対象のコンテンツが印刷対象であるか否を、例えば、属性「ｔｙｐｅ」に指定されているＭＩＭＥタイプから判定しても良い。この場合、属性「ｔｙｐｅ」に指定されているＭＩＭＥタイプが「ｉｍａｇｅ／ｊｐｅｇ」や「ｉｍａｇｅ／ｇｉｆ」、「ｉｍａｇｅ／ｐｎｇ」等である場合、印刷可能である判定される。一方で、例えば、属性「ｔｙｐｅ」に指定されているＭＩＭＥタイプが「ｔｅｘｔ／ｈｔｍｌ」等である場合には、印刷可能でないと判定される。
【０１３８】
以降では、上記のステップＳ６２１において、表示対象のコンテンツが印刷可能であると判定されたものとして説明する。なお、上記のステップＳ６２１において、表示対象のコンテンツが印刷可能でないと判定された場合、制御部３１２は、例えば、表示許可通知を解釈部３１４に返信する。これにより、例えば、ブラウザ機能部３１１により、当該コンテンツがＷｅｂサーバ２０から取得された上で、Ｗｅｂブラウザ３１０上に表示される。
【０１３９】
制御部３１２は、表示対象のコンテンツが印刷可能であると判定された場合、印刷実行通知を解釈部３１４に送信する（ステップＳ６２２）。そして、画像処理装置１０は、ステップＳ６０７〜ステップＳ６１９を実行する。このように、ユーザにより押下されたリンクのリンク先コンテンツが表示対象のコンテンツである場合であっても、例えば、当該コンテンツがＪＰＥＧ形式の画像データ等であるときには、当該コンテンツが印刷される。
【０１４０】
以上のように、本実施形態に係る画像処理装置１０は、汎用的なＨＴＭＬタグであるａタグで実現されるリンクがユーザにより押下された場合に、リンク先のコンテンツの種別に応じて、当該コンテンツをダウンロード及び印刷することができる。このように、本実施形態に係る画像処理装置１０では、印刷機能を実現するための専用のＨＴＭＬタグを用いずに、当該印刷機能が実現される。
【０１４１】
したがって、例えば、Ｗｅｂサーバ２０が提供するＷｅｂアプリケーションの開発者等は、専用のＪａｖａＳｃｒｉｐｔやＨＴＭＬ等の知識を必要とすることなく、画像処理装置１０特有の画像処理機能を実現させるＷｅｂアプリケーションを開発することができる。
【０１４２】
なお、図６で説明した印刷処理は、ＪａｖａＳｃｒｉｐｔ等を用いる場合の他に、例えば、ＰＨＰを用いて実現することもできる。例えば、図９に示すようなＰＨＰコードを作成し、「ｄｌ．ｐｈｐ」という名称でＷｅｂサーバ２０側に保存しておくと共に、Ｗｅｂブラウザ３１０が受け取るＨＴＭＬ中に、例えば、＜ａ  ｈｒｅｆ＝"．／ｄｌ．ｐｈｐ"＞ダウンロード＜／ａ＞と定義しておく。これにより、このＨＴＭＬ中に定義されたダウンロードリンクをユーザが押下した場合、Ｗｅｂサーバ２０上で「ｄｌ．ｐｈｐ」が実行され、Ｗｅｂサーバ２０からＷｅｂブラウザ３１０に対してダウンロード指示を示すＨＴＴＰヘッダが送信される。
【０１４３】
ここで、図９に示すＰＨＰコードの場合、ダウンロード指示を示すＨＴＴＰヘッダには、「Ｃｏｎｔｅｎｔ−Ｔｙｐｅ：ａｐｐｌｉｃａｔｉｏｎ／ｆｏｒｃｅ−ｄｏｗｎｌｏａｄ」と、「Ｃｏｎｔｅｎｔ−ｄｉｓｐｏｓｉｔｉｏｎ：ａｔｔａｃｈｍｅｎｔ；ｆｉｌｅｎａｍｅ＝"ｍｙｆｉｌｅ．ｐｄｆ"」とが含まれる。これより、上記のステップＳ６０４において、Ｗｅｂブラウザ３１０の解釈部３１４により、「ｍｙｆｉｌｅ．ｐｄｆ」がダウンロードするコンテンツであると判定される。
【０１４４】
（実施例１の他の例（その１））
次に、印刷処理の他の例（その１）について、図１０を参照しながら説明する。図１０は、本実施形態に係る印刷処理の他の例（その１）を示すシーケンス図である。なお、図１０におけるステップＳ６０１〜ステップＳ６２２は、図６と同様であるため、その説明を省略する。
【０１４５】
ステップＳ６１４に続いて、印刷サービス部３７０は、ブラウザ機能部３１１から印刷実行要求を受信すると、例えば図１１に示す印刷設定画面Ｇ２１０を表示する（ステップＳ１００１）。図１１に示す印刷設定画面Ｇ２１０は、印刷ＵＩアプリケーション３２０により表示される。
【０１４６】
図１１に示す印刷設定画面Ｇ２１０には、印刷設定欄Ｇ２１１と、印刷実行ボタンＧ２１２とが含まれる。ユーザは、印刷設定欄Ｇ２１１において、例えば、「部数」、「カラー」、「印刷面」、「用紙サイズ」等の種々の印刷設定を指定することができる。ここで、ユーザが印刷設定欄Ｇ２１１において印刷設定を指定する操作（印刷設定操作）を行った上で、印刷実行ボタンＧ２１２を押下したものとする。
【０１４７】
印刷サービス部３７０は、ユーザによる印刷設定操作及び印刷実行ボタンＧ２１２の押下を受け付ける（ステップＳ１００２）。印刷設定操作及び印刷実行ボタンＧ２１２の押下は、印刷ＵＩアプリケーション３２０により受け付けられる。これにより、ステップＳ６１６において、ユーザにより指定された印刷設定でコンテンツが印刷される。
【０１４８】
（実施例１の他の例（その２））
次に、印刷処理の他の例（その２）について、図１２を参照しながら説明する。図１２は、本実施形態に係る印刷処理の他の例（その２）を示すシーケンス図である。
【０１４９】
図１２に示す印刷処理では、図６のステップＳ６１０〜ステップＳ６１３が実行されない。すなわち、図１２に示す印刷処理では、ａタグで実現されるリンクがユーザにより押下された場合、ユーザによる印刷実行ボタンの押下が行われることなく、リンク先のコンテンツのダウンロード及び印刷が行われる。これにより、ユーザは、一度の操作（ａタグで実現されるリンクの押下操作）を行うことで、リンク先のコンテンツを印刷することができるようになる。
【０１５０】
また、図１２に示す印刷処理では、ステップＳ６０９に続いて、制御部３１２は、ダウンロード中画面の消去要求をＵＩ部３１３に送信する（ステップＳ１２０１）。そして、ＵＩ部３１３は、ダウンロード中画面の消去要求を受信すると、ダウンロード中画面Ｇ１２０を消去する（ステップＳ１２０２）。
【０１５１】
（実施例１の他の例（その３））
次に、印刷処理の他の例（その３）について、図１３を参照しながら説明する。図１３は、本実施形態に係る印刷処理の他の例（その３）を示すシーケンス図である。なお、図１３におけるステップＳ６０１〜ステップＳ６２２は、図６と同様であるため、その説明を省略する。
【０１５２】
ステップＳ６１４に続いて、印刷サービス部３７０は、ステップＳ６０９でダウンロードしたコンテンツに対して所定の画像処理を実行する（ステップＳ１３０１）。ここで、印刷サービス部３７０により実行される画像処理としては、例えば、コンテンツに対して所定の情報（例えばダウンロード先のＵＲＬや時刻等）を付加する処理、データ形式の変換処理等が挙げられる。これにより、ステップＳ６１６において、画像処理が行われた後のコンテンツが印刷される。
【０１５３】
次に、印刷処理の実行時におけるＷｅｂブラウザ３１０の動作の一例について、図１４を参照しながら説明する。図１４は、印刷処理の実行時におけるＷｅｂブラウザ３１０の動作の一例を示すフローチャートである。
【０１５４】
まず、Ｗｅｂブラウザ３１０は、図６のステップＳ６０１で説明したように、Ｗｅｂサーバ２０からコンテンツ（Ｗｅｂページ）を取得し、リンクを含む画面を表示する（ステップＳ１４０１）。
【０１５５】
次に、Ｗｅｂブラウザ３１０は、図６のステップＳ６０２で説明したように、ユーザによるリンクの押下を受け付ける（ステップＳ１４０２）。Ｗｅｂブラウザ３１０は、リンクの押下を受け付けると、ダウンロードを示す所定のタグ名（ａタグ）を検出する（ステップＳ１４０３）。
【０１５６】
次に、Ｗｅｂブラウザ３１０は、図６のステップＳ６０４で説明したように、リンク先のコンテンツ（ファイル）のファイル形式（拡張子）が、ダウンロードする形式又はＷｅｂブラウザ３１０上に表示する形式のいずれであるかを判定する（ステップＳ１４０４）。ここで、ダウンロードする形式としては、例えば、「ＰＤＦ」、「ＪＰＥＧ」、「ｄｏｃ」、「ｘｌｓ」、「ｚｉｐ」、「ｍｐ３」、「ｍｐ４」等の拡張子のファイル形式が挙げられる。また、Ｗｅｂブラウザ３１０上に表示する形式としては、例えば、「ｈｔｍｌ」、「ｇｉｆ」、「ｐｎｇ」等の拡張子のファイル形式が挙げられる。
【０１５７】
ステップＳ１４０４において、ファイル形式がダウンロードする形式であると判定された場合、Ｗｅｂブラウザ３１０は、図６のステップＳ６０６で説明したように、当該ファイル形式が、ダウンロード後に印刷できる形式又は印刷できない形式のいずれであるかを判定する（ステップＳ１４０５）。ここで、ダウンロード後に印刷できる形式としては、例えば、「ＰＤＦ」、「ＪＰＥＧ」、「ｄｏｃ」、「ｘｌｓ」等の拡張子のファイル形式が挙げられる。また、ダウンロード後に印刷できない形式としては、例えば、「ｚｉｐ」、「ｍｐ３」、「ｍｐ４」等の拡張子のファイル形式が挙げられる。
【０１５８】
ステップＳ１４０５において、ファイル形式がダウンロード後に印刷できる形式であると判定された場合、Ｗｅｂブラウザ３１０は、図６のステップＳ６０９で説明したように、コンテンツ（ファイル）をダウンロードする（ステップＳ１４０６）。すなわち、このとき、Ｗｅｂブラウザ３１０は、コンテンツを表示しない。ただし、例えば、ビューワアプリ等の別のアプリケーションにより、当該コンテンツを表示しても良い。この場合、後述するステップＳ１４０８で印刷実行ボタンが押下された後に、当該別のアプリケーションにより当該コンテンツを表示しても良い。
【０１５９】
次に、Ｗｅｂブラウザ３１０は、図６のステップＳ６１１で説明したように、印刷実行ボタンが含まれる画面（例えばダウンロード完了画面）を表示する（ステップＳ１４０７）。
【０１６０】
次に、Ｗｅｂブラウザ３１０は、上記のステップＳ１４０７で表示された画面に含まれる印刷実行ボタンの押下を受け付けたか否かを判定する（ステップＳ１４０８）。なお、このとき、Ｗｅｂブラウザ３１０は、印刷設定を行うための印刷設定画面上における印刷実行ボタンの押下を受け付けても良い。
【０１６１】
ステップＳ１４０８において、印刷実行ボタンの押下を受け付けたと判定された場合、Ｗｅｂブラウザ３１０は、図６のステップＳ６１３で説明したように、コンテンツの印刷を実行する（ステップＳ１４０９）。
【０１６２】
ステップＳ１４０８において、印刷実行ボタンの押下を受け付けたと判定されなかった場合（例えば、印刷がキャンセルされた場合等）、Ｗｅｂブラウザ３１０は、コンテンツの印刷は実行しない（ステップＳ１４１０）。この場合、Ｗｅｂブラウザ３１０は、当該コンテンツを消去する。なお、Ｗｅｂブラウザ３１０は、印刷がキャンセルされた場合以外である場合、例えば、エラー画面等を表示しても良い。
【０１６３】
ステップＳ１４０５において、ファイル形式がダウンロード後に印刷できない形式であると判定された場合、Ｗｅｂブラウザ３１０は、ダウンロードして所定の処理を行ってから印刷を実行する（ステップＳ１４１１）。例えば、拡張子が「ｚｉｐ」である場合、コンテンツ（ファイル）を解凍して、解凍後のファイルの印刷を実行する。ただし、例えば、解凍後のファイルも印刷できない形式である場合（例えば、解凍後のファイルの拡張子が「ｍｐ３」や「ｍｐ４」等である場合）、Ｗｅｂブラウザ３１０は、印刷を行わない。
【０１６４】
ステップＳ１４０４において、ファイル形式がＷｅｂブラウザ３１０に表示する形式であると判定された場合、Ｗｅｂブラウザ３１０は、当該ファイル形式が、印刷する形式又は印刷しない形式のいずれであるかを判定する（ステップＳ１４１２）。ここで、印刷する形式としては、例えば、「ｇｉｆ」、「ｐｎｇ」等の拡張子のファイル形式が挙げられる。また、印刷しない形式としては、例えば、「ｈｔｍｌ」等の拡張子のファイル形式が挙げられる。
【０１６５】
ステップＳ１４１２において、ファイル形式が印刷する形式であると判定された場合、Ｗｅｂブラウザ３１０は、当該コンテンツ（ファイル）をダウンロードして表示する（ステップＳ１４１３）。このとき、Ｗｅｂブラウザ３１０は、表示したコンテンツを印刷するための印刷実行ボタンも画面上に表示する。
【０１６６】
次に、Ｗｅｂブラウザ３１０は、上記のステップＳ１４１３で表示された画面に含まれる印刷実行ボタンの押下を受け付けたか否かを判定する（ステップＳ１４１４）。なお、このとき、Ｗｅｂブラウザ３１０は、印刷設定を行うための印刷設定画面上における印刷実行ボタンの押下を受け付けても良い。
【０１６７】
ステップＳ１４１４において、印刷実行ボタンの押下を受け付けたと判定された場合、Ｗｅｂブラウザ３１０は、コンテンツの印刷を実行する（ステップＳ１４１５）。
【０１６８】
ステップＳ１４１４において、印刷実行ボタンの押下を受け付けたと判定されなかった場合（例えば、印刷がキャンセルされた場合等）、Ｗｅｂブラウザ３１０は、コンテンツの印刷は実行しない（ステップＳ１４１６）。この場合、Ｗｅｂブラウザ３１０は、当該コンテンツを消去する。なお、Ｗｅｂブラウザ３１０は、印刷がキャンセルされた場合以外である場合、例えば、エラー画面等を表示しても良い。
【０１６９】
ステップＳ１４１２において、ファイル形式が印刷しない形式であると判定された場合、Ｗｅｂブラウザ３１０は、当該コンテンツ（ファイル）をダウンロードして表示する（ステップＳ１４１７）。このとき、Ｗｅｂブラウザ３１０は、上記のステップＳ１４１３と異なり、表示したコンテンツを印刷するための印刷実行ボタンは画面上に表示しない。
【０１７０】
（実施例２）
以降では、ユーザが画像処理装置１０を用いて、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションにより、スキャンにより生成した画像データをメールサーバ３０に送信する処理について、図１５を参照しながら説明する。図１５は、本実施形態に係るスキャン及びメール送信処理の一例を示すシーケンス図である。
【０１７１】
まず、ブラウザ機能部３１１のＵＩ部３１３は、例えば図１６に示すＷｅｂページＧ５１０を表示する（ステップＳ２１０１）。図１６に示すＷｅｂページＧ５１０は、Ｗｅｂサーバ２０から取得したコンテンツ（ＨＴＭＬやＣＳＳ、ＪａｖａＳｃｒｉｐｔ等）を解釈部３１４が解釈することで表示される。このようなコンテンツの取得は、例えば、ＷｅｂページＧ５１０を表示するためのＵＲＬを入力したり、当該ＵＲＬへのリンクを押下したりすることで行うことができる。
【０１７２】
図１６に示すＷｅｂページＧ５１０には、リンク先として指定された電子メールアドレス宛にメールを送信するためのリンクＧ５１１が含まれている。ここで、ユーザがリンクＧ５１１を押下したものとする。なお、画像処理装置１０のスキャナには、スキャン対象の原稿がセットされているものとする。
【０１７３】
ブラウザ機能部３１１のＵＩ部３１３は、ユーザによるリンクＧ５１１の押下を受け付ける（ステップＳ２１０２）。ここで、図１６に示すＷｅｂページＧ５１０に含まれるリンクＧ５１１は、例えば、図１７に示すように、属性「ｈｒｅｆ」が設定されたａタグにより実現される。図１７に示すａタグの属性「ｈｒｅｆ」には、スキーム「ｍａｉｌ  ｔｏ」で、電子メールアドレスが指定されている。なお、ａタグには、これ以外にも、種々の属性が設定されていても良い。
【０１７４】
ブラウザ機能部３１１のＵＩ部３１３は、ユーザにより押下されたリンクＧ５１１を実現するａタグの解釈要求を解釈部３１４に送信する（ステップＳ２１０３）。
【０１７５】
ブラウザ機能部３１１の解釈部３１４は、リンクＧ５１１を実現するａタグを解釈する（ステップＳ２１０４）。すなわち、解釈部３１４は、ａタグを解釈することで、当該ａタグの属性「ｈｒｅｆ」に指定されたスキーム「ｍａｉｌ  ｔｏ」からスキャン及びメール送信を特定する。
【０１７６】
次に、ブラウザ機能部３１１の解釈部３１４は、メール送信通知を制御部３１２に送信する（ステップＳ２１０５）。解釈部３１４は、例えば、操作装置１１のＷｅｂブラウザ３１０又はアプリケーションの内部に保持されているメール送信ライブラリのＡＰＩをコールすることで、メール送信通知を行うことができる。又は、解釈部３１４は、例えば、本体装置１２が保持されているメール送信プログラム（又はメール送信モジュール等）を、ＷｅｂＡＰＩを介してコールすることで、メール送信通知を行っても良い。なお、このとき、コールされるＡＰＩの引数には、属性「ｈｒｅｆ」に指定された電子メールアドレスが指定される。
【０１７７】
制御部３１２は、メール送信通知を受信すると、スキャン実行及び指定された電子メールアドレスへのメール送信要求をスキャンサービス部３８０に送信する（ステップＳ２１０６）。なお、制御部３１２は、例えば、ｉｎｔｅｎｔを用いて、スキャンサービス部３８０のスキャンＵＩアプリケーション３３０を呼び出すことができる。
【０１７８】
スキャンサービス部３８０は、制御部３１２からスキャン実行及びメール送信要求を受信すると、例えば図１６に示すスキャン中画面Ｇ３２０を表示する（ステップＳ１５０７）。図１６に示すスキャン中画面Ｇ３２０は、スキャンＵＩアプリケーション３３０により表示される。図１６に示すスキャン中画面Ｇ３２０が表示されることで、ユーザは、原稿がスキャン中であることを知ることができる。
【０１７９】
次に、スキャンサービス部３８０は、スキャナにセットされた原稿のスキャンを実行して画像データを生成する（ステップＳ１５０８）。スキャンの実行は、スキャンＵＩアプリケーション３３０が、ＷｅｂＡＰＩ３４０を介して、スキャンアプリケーション３６０に対してスキャン要求を送信することで行うことができる。これにより、スキャナにセットされた原稿から画像データが生成される。スキャンにより生成された画像データは、例えばフラッシュメモリ１１４内の予め指定された記憶領域に保存される。
【０１８０】
スキャン中にエラーが発生した場合、スキャンアプリケーション３６０は、エラーが発生したことを示す通知をスキャンＵＩアプリケーション３３０に送信する。スキャンＵＩアプリケーション３３０は、エラーが発生したことを示す通知を受信すると、例えば、エラーが発生したことを示す画面を表示する。
【０１８１】
なお、図１６に示すスキャン中画面Ｇ３２０には、キャンセルボタンＧ３２１が含まれる。ユーザによりキャンセルボタンＧ３２１が押下された場合、スキャンＵＩアプリケーション３３０は、ＷｅｂＡＰＩ３４０を介して、スキャン要求をスキャンアプリケーション３６０に送信する。これにより、原稿のスキャンが中止される。
【０１８２】
ステップＳ１５０８に続いて、スキャンサービス部３８０は、例えば図１６に示すスキャン完了及びメール送信中画面Ｇ５２０を表示する（ステップＳ２１０７）。そして、スキャンサービス部３８０のスキャンアプリケーション３６０は、スキャン結果（例えば、スキャンにより生成された画像データ又は当該画像データの保存先を示す情報）をメールサービス部３９１のメール送信アプリケーション３９０に送信する。
【０１８３】
メールサービス部３９１のメール送信アプリケーション３９０は、スキャン結果を受信すると、スキャンにより生成された画像データを、ａタグの属性「ｈｒｅｆ」に指定された電子メールアドレス宛にメール送信する（ステップＳ２１０８）。これにより、スキャンにより生成された画像データが指定された電子メールアドレス宛にメール送信される。
【０１８４】
なお、図１６に示すスキャン完了及びメール送信中画面Ｇ５２０には、キャンセルボタンＧ５２１が含まれる。ユーザによりキャンセルボタンＧ５２１が押下された場合、スキャンＵＩアプリケーション３３０は、メール送信中止要求をメール送信アプリケーション３９０に送信する。これにより、画像データのメール送信が中止される。
【０１８５】
スキャンアプリケーション３６０は、メール送信アプリケーション３９０にスキャン結果を送信後、メール送信完了通知をＵＩ部３１３に送信する（ステップＳ２１０９）。なお、スキャンアプリケーション３６０は、メール送信アプリケーション３９０からメール送信完了通知を受信後、ＵＩ部３１３にメール送信完了通知を送信するようにしてもよい（この場合、Ｗｅｂアプリケーション側では、メール送信完了を前提として動作することが可能となる）。
【０１８６】
ブラウザ機能部３１１のＵＩ部３１３は、メール送信完了通知を受信すると、例えば図１６に示すメール送信完了画面Ｇ５３０を表示する（ステップＳ２１１０）。図１６に示すメール送信完了画面Ｇ５３０が表示されることで、ユーザは、原稿のスキャン及びスキャンにより生成された画像データのメール送信が完了したことを知ることができる。
【０１８７】
以上のように、本実施形態に係る画像処理装置１０は、汎用的なＨＴＭＬタグであるａタグで実現されるリンクがユーザにより押下された場合に、スキャナにより原稿を読み取って画像データを生成し、生成した画像データをメール送信することができる。このように、本実施形態に係る画像処理装置１０では、スキャン機能を実現するための専用のＨＴＭＬタグを用いずに、当該スキャン機能が実現される。
【０１８８】
したがって、例えば、Ｗｅｂサーバ２０が提供するＷｅｂアプリケーションの開発者等は、専用のＪａｖａＳｃｒｉｐｔやＨＴＭＬ等の知識を必要とすることなく、画像処理装置１０特有の画像処理機能を実現させるＷｅｂアプリケーションを開発することができる。
【０１８９】
（実施例２の他の例（その１））
次に、スキャン処理の他の例（その１）について、図１８を参照しながら説明する。図１８は、本実施形態に係るスキャン処理の他の例（その１）を示すシーケンス図である。以下、図１５の実施例２と異なる点を説明する。
【０１９０】
ステップＳ２１０６に続いて、スキャンサービス部３８０は、制御部３１２からスキャン実行及びメール送信要求を受信すると、例えば図１９に示すスキャン設定画面Ｇ４１０を表示する（ステップＳ１８０１）。図１９に示すスキャン設定画面Ｇ４１０は、スキャンＵＩアプリケーション３３０により表示される。
【０１９１】
図１９に示すスキャン設定画面Ｇ４１０には、スキャン設定欄Ｇ４１１と、スキャン実行ボタンＧ４１２とが含まれる。ユーザは、スキャン設定欄Ｇ４１１において、例えば、「原稿種類」、「解像度」、「原稿セット方向」、「原稿面」、「読み取りサイズ」、「ファイル形式」等の種々のスキャン設定を指定することができる。ここで、ユーザがスキャン設定欄Ｇ４１１においてスキャン設定を指定する操作（スキャン設定操作）を行った上で、スキャン実行ボタンＧ４１２を押下したものとする。
【０１９２】
スキャンサービス部３８０は、ユーザによるスキャン設定操作及びスキャン実行ボタンＧ４１２の押下を受け付ける（ステップＳ１８０２）。スキャン設定操作及びスキャン実行ボタンＧ４１２の押下は、スキャンＵＩアプリケーション３３０により受け付けられる。これにより、ステップＳ１５０８において、ユーザにより指定されたスキャン設定で原稿がスキャンされる。
【０１９３】
図２０は、本実施形態に係る汎用ＨＴＭＬタグの解釈に基づく画像処理の一例を示すシーケンス図である。
【０１９４】
ステップＳ１において、ＵＩ部３１３は、ユーザによるＷｅｂページ上のリンクの押下を受け付ける。
【０１９５】
ステップＳ２において、ＵＩ部３１３は、解釈部３１４に、Ｓ１で押下されたリンクに対応するＨＴＭＬタグの解釈を要求する。
【０１９６】
ステップＳ３において、解釈部３１４は、Ｓ２で要求されたＨＴＭＬタグを解釈する。具体的には、解釈部３１４は、アンカータグ（ａタグ）の属性「ｈｒｅｆ」が「ｍａｉｌ  ｔｏ」で開始しているか否かを判断する。
【０１９７】
ステップＳ４において、解釈部３１４は、Ｓ３でアンカータグ（ａタグ）の属性「ｈｒｅｆ」が「ｍａｉｌ  ｔｏ」で開始している場合、「ｍａｉｌ  ｔｏ」以降の文字列（つまり、電子メールアドレス）を抽出する。
【０１９８】
ステップＳ５において、解釈部３１４は、上述したメール送信通知を制御部３１２に通知する。
【０１９９】
ステップＳ６において、制御部３１２は、スキャン実行及びメール送信をスキャンＵＩアプリケーション３３０に要求する。この際、制御部３１２は、パラメータとしてＳ３で抽出した電子メールアドレスを付与する。
【０２００】
ステップＳ７において、スキャンＵＩアプリケーション３３０は、スキャンの実行をスキャンアプリケーション３６０に要求する。この際、制御部３１２は、パラメータとしてＳ３で抽出した電子メールアドレスを付与する。
【０２０１】
ステップＳ８において、スキャンアプリケーション３６０は、Ｓ７で要求されたスキャンを実行して、画像データを生成する。
【０２０２】
ステップＳ９において、スキャンアプリケーション３６０は、Ｓ８でスキャンにより生成した画像データのメール送信をメール送信アプリケーション３９０に要求する。
【０２０３】
ステップＳ１０において、メール送信アプリケーション３９０は、Ｓ９で要求されたメール送信を行う。つまり、メール送信アプリケーション３９０は、Ｓ８でスキャンにより生成した画像のデータを、Ｓ６でパラメータとして付与された電子メールアドレス宛にメール送信する。
【０２０４】
なお、ステップＳ３においてアンカータグ（ａタグ）の属性「ｈｒｅｆ」が「ｍａｉｌ  ｔｏ」で開始しない場合、（実施例１）で説明した処理が実行されうる。例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ４１０で表示可能なファイルである場合（例えば、拡張子がｈｔｍｌやｉｍｇ、ｐｄｆ等である場合）には、表示通知となる。一方で、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ４１０で表示可能でないファイルである場合（例えば、拡張子がｚｉｐ等である場合）には、ダウンロード通知となる。そして、制御部３１２は、ダウンロード通知を受け取った場合、ダウンロード対象のファイルが印刷可能か否かを判定した上で、印刷可能であるとき、当該ファイルをダウンロードし、ダウンロードしたファイルを印刷させるための制御を行う。一方で、制御部３１２は、表示通知を受け取った場合、表示対象のファイルが印刷可能か否かを判定した上で、印刷可能であるとき、当該ファイルをダウンロードし、ダウンロードしたファイルを印刷させるための制御を行う。
【０２０５】
次に、スキャン及びメール送信処理の実行時におけるＷｅｂブラウザ３１０の動作の一例について、図２１を参照しながら説明する。図２１は、スキャン及びメール送信処理の実行時におけるＷｅｂブラウザ３１０の動作の一例を示すフローチャートである。
【０２０６】
まず、Ｗｅｂブラウザ３１０は、図１５のステップＳ２１０１で説明したように、Ｗｅｂサーバ２０からコンテンツ（Ｗｅｂページ）を取得し、リンクを含む画面を表示する（ステップＳ２４０１）。
【０２０７】
次に、Ｗｅｂブラウザ３１０は、図１５のステップＳ２１０２で説明したように、ユーザによるリンクの押下を受け付ける（ステップＳ２４０２）。Ｗｅｂブラウザ３１０は、リンクの押下を受け付けると、メール送信に関する所定のタグ（ａタグ）を検出する（ステップＳ２４０３）。Ｗｅｂブラウザ３１０は、ａタグを検出すると、図１５のステップＳ２１０５で説明したように、メール送信通知を行う（ステップＳ２４０４）。
【０２０８】
次に、Ｗｅｂブラウザ３１０は、図１５のステップＳ２１０６で説明したように、スキャン実行及びメール送信要求を行う（ステップＳ２４０５）。
【０２０９】
その後、図１５のステップＳ１５０８で説明したように、スキャンアプリケーション３６０が、スキャンを実行して画像データを生成する。そして、図１５のステップＳ２１０８で説明したように、メール送信アプリケーション３９０が、スキャンにより生成した画像データをメール送信する（ステップＳ２４０６）。
【０２１０】
＜アンカータグの例＞
以下、スキャン及びメール送信処理において用いられうるアンカータグ（ａタグ）の例である。
【０２１１】
例１＜a href="mailto:aaa@bb.cc?subject=test title"＞メール<／a>
例２＜a href="mailto:aaa@bb.cc?cc=ddd@ee.ff"＞メール<／a>
例３＜a href="mailto:aaa@bb.cc?bcc=ggg@hh.ii"＞メール<／a>
例４＜a href="mailto:aaa@bb.cc?body=test body"＞メール<／a>
本発明の一実施形態では、メールに件名を設定したり（例１の場合）、ｃｃ（カーボンコピー）の電子メールアドレスを設定したり（例２の場合）、ｂｃｃ（ブラインドカーボンコピー）の電子メールアドレスを設定したり（例３の場合）、本文を設定（例４の場合）したりするアンカータグ（ａタグ）が用いられてもよい。例１〜例４は、単独で用いられてもよいし、組み合わされて用いられてもよい。
【０２１２】
＜他のソフトウェア構成例＞
次に、本実施形態に係る画像処理システム１に含まれる画像処理装置１０及び情報処理装置４０のソフトウェア構成の他の例について、図２２を参照しながら説明する。図２２は、本実施形態に係る画像処理システム１のソフトウェア構成の他の例を示す図である。
【０２１３】
図２２に示すように、本実施形態に係る画像処理装置１０の操作装置１１は、印刷ＵＩアプリケーション３２０、スキャンＵＩアプリケーション３３０、メールＵＩアプリケーション３９２の代わりに、操作部ＡＰＩアプリケーション４００を有していても良い。
【０２１４】
操作部ＡＰＩアプリケーション４００は、印刷やスキャン等の画像処理に関するＵＩを提供するアプリケーションプログラムである。操作部ＡＰＩアプリケーション４００は、印刷ＵＩアプリケーション３２０、スキャンＵＩアプリケーション３３０、メールＵＩアプリケーション３９２等の画像処理に関するＵＩを提供するアプリケーションと同様の機能を有する。
【０２１５】
したがって、図２２に示すソフトウェア構成の場合、上記で説明した実施例１及び実施例２において、印刷ＵＩアプリケーション３２０、スキャンＵＩアプリケーション３３０、メールＵＩアプリケーション３９２を操作部ＡＰＩアプリケーション４００と読み替えれば良い。操作部ＡＰＩアプリケーション４００を用いることで、印刷やスキャン等の種々の画像処理に関するＵＩを統一的に提供することができる。
【０２１６】
また、操作部ＡＰＩアプリケーション４００は、画像処理に関するＵＩを提供するアプリケーションをサードベンダ等が開発するためのＡＰＩ群を備えている。サードベンダ等は、操作部ＡＰＩアプリケーション４００のＡＰＩ群を利用することで、ＷｅｂＡＰＩ３４０の仕様に関する知識を必要とすることなく、画像に関するＵＩを提供するアプリケーションを容易に開発することができるようになる。すなわち、操作部ＡＰＩアプリケーション４００は、ＷｅｂＡＰＩ３４０をラッピングしたＡＰＩ群をサードベンダ等に提供するアプリケーションプログラムとも言うことができる。
【０２１７】
なお、図２２に示すソフトウェア構成では、操作装置１１が、印刷ＵＩアプリケーション３２０、スキャンＵＩアプリケーション３３０、メールＵＩアプリケーション３９２の代わりに、操作部ＡＰＩアプリケーション４００を有している構成を示したが、これに限られない。操作装置１１は、印刷ＵＩアプリケーション３２０、スキャンＵＩアプリケーション３３０、メールＵＩアプリケーション３９２に加えて、操作部ＡＰＩアプリケーション４００を有していても良い。
【０２１８】
本発明の一実施形態は、例えば、店舗のホームページ等で顧客からメールにて問い合わせを受ける場合に利用可能である。問い合わせにおいて手書きの情報を載せたい場合、従来であればその手書きの情報を写真等で電子化のうえメールに添付する必要があったが、本発明の一実施形態であれば、手書きの情報をスキャンしてメールに添付することができる。
【０２１９】
＜実施形態２＞
複合機（ＭＦＰ：Multifunction Peripheral）等の画像処理装置において、Ｗｅｂブラウザ上で動作するＷｅｂアプリケーションを利用して、印刷やスキャン等の各種画像処理機能を実現する技術が従来から知られている（例えば特許文献１参照）。
【０２２０】
ところで、上述したような印刷やスキャン等の各種画像処理機能は、複合機等の画像処理装置特有の機能である。このような画像処理装置特有の機能を実現させるＷｅｂアプリケーションでは、画像処理装置専用のＪａｖａＳｃｒｉｐｔ（登録商標）を用いてＨＴＭＬ（HyperText Markup Language）が記述されている必要がある。
【０２２１】
一方で、スマートフォンやタブレット端末、ＰＣ（パーソナルコンピュータ）等の情報処理装置が利用するＷｅｂアプリケーションでは、汎用的なＨＴＭＬで記述されている。汎用的なＨＴＭＬでは、上述したような印刷やスキャン等の画像処理装置特有の機能を実現させるためのＨＴＭＬタグ等が用意されていない。
【０２２２】
このため、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションでは、印刷やスキャン等の画像処理装置特有の機能を実現させることが困難であった。
【０２２３】
本発明の実施の形態は、上記の点に鑑みてなされたものであり、汎用的なＨＴＭＬを利用して画像処理装置特有の機能を実現させることを目的とする。
【０２２４】
本発明の実施の形態によれば、汎用的なＨＴＭＬを利用して画像処理装置特有の機能を実現させることができる。
【０２２５】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【０２２６】
＜全体構成例＞
まず、本実施形態に係る画像処理システム１の全体構成について、図２３を参照しながら説明する。図２３は、本実施形態に係る画像処理システム１の全体構成の一例を示す図である。
【０２２７】
図２３に示すように、本実施形態に係る画像処理システム１には、１以上の画像処理装置１０と、１以上のＷｅｂサーバ２０と、１以上のファクス受信機３０と、情報処理装置４０とが含まれる。また、画像処理装置１０とＷｅｂサーバ２０とは、例えばインターネット等の広域的なネットワークＮを介して通信可能に接続されている。また、画像処理装置１０とファクス受信機３０とは、例えば電話回線やインターネット等のネットワークＮを介して通信可能に接続されている。
【０２２８】
画像処理装置１０は、Ｗｅｂブラウザが搭載された複合機等の電子機器である。画像処理装置１０のユーザは、Ｗｅｂサーバ２０が提供するＷｅｂアプリケーションを利用して、例えば、Ｗｅｂサーバ２０からダウンロードした電子データを印刷したり、スキャンにより生成した画像データをファクス受信機３０にファクス送信したりすることができる。
【０２２９】
Ｗｅｂサーバ２０は、ネットワークＮを介して、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションを提供するコンピュータ又はコンピュータシステムである。汎用的なＨＴＭＬとは、Ｗ３Ｃ（World Wide Web Consortium）で規定されたＨＴＭＬ５やＨＴＭＬ  ５．１等のことである。また、汎用的とは、例えば画像処理装置等の機器でのみ解釈可能や処理可能なように定義されたコンテンツ（拡張ＨＴＭＬや拡張ＪａｖａＳｃｒｉｐｔ等の拡張されたコンテンツ）とは異なり、汎用Ｗｅｂブラウザであれば機器の種類を問わず解釈や処理が可能なコンテンツを指す。汎用ＨＴＭＬは、個人端末であるＰＣや携帯端末、スマートフォン等で利用可能であり、一般的なＷｅｂサーバやＷｅｂアプリケーションに共通して用いられている。
【０２３０】
Ｗｅｂサーバ２０によりＷｅｂアプリケーションが提供されることで、種々のＷｅｂサービスが実現される。このようなＷｅｂサービスとしては、例えば、クラウドストレージサービス、ＳＮＳ（Social Networking Service）、クラウドプリントサービス、ブログサービス、掲示板サービス、オンラインゲームサービス、オンラインショッピングサービス等が挙げられる。
【０２３１】
ファクス受信機３０は、電話回線やインターネット等のネットワークＮを介して、画像処理装置１０がファクス送信した画像データを受信する機器（ファクシミリ、ＦＡＸとも呼ばれる）である。なお、ファクス受信機３０は、電話回線を用いるファクスに限られず、インターネットを用いるインターネットファクスであっても良い。
【０２３２】
情報処理装置４０は、Ｗｅｂブラウザが搭載されたＰＣ（パーソナルコンピュータ）やスマートフォン、タブレット端末等である。
【０２３３】
なお、図２３に示す画像処理システム１の構成は一例であって、他の構成であっても良い。例えば、画像処理装置１０は、複合機に限られず、例えば、デジタルカメラ、印刷装置、スキャナ装置、コピー機、プロジェクタ、ファクシミリ、電子会議用端末、電子黒板装置等であっても良い。すなわち、画像処理装置１０は、Ｗｅｂサーバ２０との間でデータの入力及び出力の少なくとも一方を行う電子機器であれば良い。また、例えば、画像処理システム１には、情報処理装置４０が含まれていなくても良い。
【０２３４】
＜画像処理装置１０のハードウェア構成例＞
本実施形態に係る画像処理装置１０のハードウェア構成については＜実施形態１＞と同様であるので説明を省略する。
【０２３５】
＜画像処理装置１０のソフトウェア群の階層構造＞
本実施形態に係る画像処理装置１０の操作装置１１及び本体装置１２に含まれるソフトウェア群の階層構造については＜実施形態１＞と同様であるので説明を省略する。
【０２３６】
＜情報処理装置４０のハードウェア構成例＞
本実施形態に係る情報処理装置４０のハードウェア構成については＜実施形態１＞と同様であるので説明を省略する。
【０２３７】
＜ソフトウェア構成例＞
次に、本実施形態に係る画像処理システム１に含まれる画像処理装置１０及び情報処理装置４０のソフトウェア構成について、図２４を参照しながら説明する。図２４は、本実施形態に係る画像処理システム１のソフトウェア構成の一例を示す図である。
【０２３８】
≪画像処理装置１０≫
図２４に示すように、本実施形態に係る画像処理装置１０の操作装置１１は、Ｗｅｂブラウザ３１０と、印刷ＵＩアプリケーション３２０と、スキャンＵＩアプリケーション３３０とを有する。これらＷｅｂブラウザ３１０、印刷ＵＩアプリケーション３２０及びスキャンＵＩアプリケーション３３０は、ＣＰＵ１１１により実行される。
【０２３９】
また、本実施形態に係る画像処理装置１０の本体装置１２は、ＷｅｂＡＰＩ３４０と、印刷アプリケーション３５０と、スキャンアプリケーション３６０と、ファクス送信アプリケーション３９０とを有する。これらＷｅｂＡＰＩ３４０、印刷アプリケーション３５０、スキャンアプリケーション３６０、ファクス送信アプリケーション３９０は、ＣＰＵ１２１により実行される。
【０２４０】
Ｗｅｂブラウザ３１０は、Ｗｅｂサーバ２０からＷｅｂコンテンツ（例えば、ＨＴＭＬ、ＣＳＳ（Cascading Style Sheets）、ＪａｖａＳｃｒｉｐｔ、各種電子ファイル等）を取得することで、Ｗｅｂアプリケーションを実現する。
【０２４１】
例えば、Ｗｅｂブラウザ３１０は、ＳＮＳを提供するＷｅｂサーバ２０からＷｅｂコンテンツを取得することで、ＳＮＳの閲覧やＳＮＳ上でのファイル共有等を行うＷｅｂアプリケーションを実現する。また、例えば、Ｗｅｂブラウザ３１０は、クラウドストレージサービスを提供するＷｅｂサーバ２０からＷｅｂコンテンツを取得することで、ストレージの閲覧やストレージへのファイルのアップロード等を行うＷｅｂアプリケーションを実現する。
【０２４２】
なお、Ｗｅｂアプリケーションは、一般に、Ｗｅｂサーバ２０から取得したＪａｖａＳｃｒｉｐｔ等のコンテンツをＷｅｂブラウザ３１０上で動作させて、Ｗｅｂサーバ２０と協働した処理を実行させることで実現される。
【０２４３】
Ｗｅｂブラウザ３１０には、ブラウザ機能部３１１と、制御部３１２とが含まれる。なお、以降では、Ｗｅｂコンテンツを単に「コンテンツ」とも表す。
【０２４４】
ブラウザ機能部３１１は、コンテンツの解釈及び表示等を行う。ブラウザ機能部３１１には、ＵＩ部３１３と、解釈部３１４とが含まれる。解釈部３１４は、ＵＩ部３１３により表示されたＷｅｂページ上でリンクが押下された場合、当該リンクに対応するＨＴＭＬタグを解釈して、制御部３１２に対して解釈結果に応じた通知を行う。
【０２４５】
ＵＩ部３１３は、Ｗｅｂサーバ２０から取得したコンテンツに応じたＷｅｂページ等を表示する。また、ＵＩ部３１３は、Ｗｅｂページ上におけるユーザの各種操作（例えば、リンク押下）等を受け付ける。なお、ブラウザ機能部３１１は、例えば、ＷｅｂＶｉｅｗ等を用いて実現することができる。
【０２４６】
制御部３１２は、ブラウザ機能部３１１の解釈部３１４からの通知に応じて、画像処理装置１０の画像処理機能を実行させる制御を行う。例えば、リンク先のコンテンツをＷｅｂサーバ２０からダウンロードすることを示すダウンロード通知を解釈部３１４から受け取った場合、制御部３１２は、当該コンテンツをダウンロードして印刷する制御を行う。また、例えば、リンク先のコンテンツを表示させることを示す表示通知を解釈部３１４から受け取った場合であっても、当該コンテンツが所定の形式（例えば、ＪＰＥＧ形式）である場合、制御部３１２は、当該コンテンツをダウンロードして印刷する制御を行う。
【０２４７】
なお、Ｗｅｂブラウザ３１０は、Ｗｅｂアプリケーションを実現するブラウザ機能部３１１と、画像処理装置１０の画像処理機能を制御する制御部３１２とを備えるため、いわゆるハイブリッドアプリケーションと言うこともできる。Ｗｅｂブラウザ３１０は、例えば、Ｊａｖａ（登録商標）等のプログラミング言語で実装される。すなわち、Ｗｅｂブラウザ３１０を構成するブラウザアプリケーションは、その基礎部分がＪａｖａアプリケーションプログラムから構成されている。このＪａｖａアプリケーションが、操作装置１１が提供するＡＰＩを用いて、操作装置１１が備えるブラウザ機能部３１１（例えば、ＷｅｂＶｉｅｗ）を呼び出すことで、解釈部３１４及びＵＩ部３１３を含むＷｅｂブラウザ３１０を構成している。基礎部分であるＪａｖａアプリケーションプログラムは、制御部３１２を含み、この制御部３１２が制御を行うことで、Ｗｅｂコンテンツ解釈後の動作に柔軟性を持たせ、汎用的なＨＴＭＬで可能な動作（ダウンロード及びアップロード）だけでなく、画像処理（プリント、スキャン、ファクス送信）動作の要求ができるようになっている。
【０２４８】
印刷ＵＩアプリケーション３２０は、印刷に関するＵＩ（ユーザインタフェース）を提供するアプリケーションプログラムである。印刷ＵＩアプリケーション３２０は、例えば、印刷実行中であることを示す画面や印刷が完了したことを示す画面等を表示する。
【０２４９】
また、印刷ＵＩアプリケーション３２０は、制御部３１２からの要求に応じて、ＷｅｂＡＰＩ３４０を介して、印刷アプリケーション３５０に対して印刷の実行を要求する。
【０２５０】
スキャンＵＩアプリケーション３３０は、スキャンに関するＵＩを提供するアプリケーションプログラムである。スキャンＵＩアプリケーション３３０は、例えば、スキャン中であることを示す画面やスキャンが完了したことを示す画面、スキャンにより生成した画像データのファクス送信中であることを示す画面やファクス送信が完了したことを示す画面等を表示する。
【０２５１】
また、スキャンＵＩアプリケーション３３０は、制御部３１２からの要求に応じて、ＷｅｂＡＰＩ３４０を介して、スキャンアプリケーション３６０に対してスキャンの実行及びスキャンにより生成した画像データのファクス送信を要求する。
【０２５２】
ＷｅｂＡＰＩ３４０は、印刷ＵＩアプリケーション３２０やスキャンＵＩアプリケーション３３０が画像処理の実行を要求するためのＡＰＩ（Application Programming Interface）である。
【０２５３】
印刷アプリケーション３５０は、印刷ＵＩアプリケーション３２０からの要求に応じて、画像処理エンジン１２５を制御して、印刷を実行する。
【０２５４】
スキャンアプリケーション３６０は、スキャンＵＩアプリケーション３３０からの要求に応じて、画像処理エンジン１２５を制御して、スキャンを実行する。また、スキャンアプリケーション３６０は、ファクス送信アプリケーション３９０に対して、スキャンにより生成した画像データのファクス送信を要求する。
【０２５５】
ファクス送信アプリケーション３９０は、スキャンアプリケーション３６０からの要求に応じて、画像処理エンジン１２５を制御して、ファクス送信を実行する。
【０２５６】
以降では、印刷ＵＩアプリケーション３２０と、ＷｅｂＡＰＩ３４０と、印刷アプリケーション３５０とを「印刷サービス部３７０」と表す。また、スキャンＵＩアプリケーション３３０と、ＷｅｂＡＰＩ３４０と、スキャンアプリケーション３６０と、ファクス送信アプリケーション３９０とを「スキャンサービス部３８０」と表す。
【０２５７】
なお、操作装置１１には、例えば、コピーに関するＵＩを提供するアプリケーションやＦＡＸに関するＵＩを提供するアプリケーション、ＯＣＲ（Optical Character Recognition）に関するＵＩを提供するアプリケーション等が含まれていても良い。また、本体装置１２には、例えば、コピーを実行するアプリケーションやＦＡＸを実行するアプリケーション、ＯＣＲを実現するアプリケーション等が含まれていても良い。したがって、画像処理装置１０には、例えば、コピーサービス部やＦＡＸサービス部、ＯＣＲサービス等の様々な画像処理サービス部が含まれていても良い。
【０２５８】
また、画像処理装置１０には、画像処理サービス部以外にも、例えば、画像処理装置１０が保持するアドレス帳に関する処理を実行するアドレス帳サービス部、ユーザが画像処理装置１０を利用するための認証に関する処理を実行する認証サービス部等が含まれる。
【０２５９】
≪情報処理装置４０≫
図２４に示すように、本実施形態に係る情報処理装置４０は、Ｗｅｂブラウザ４１０を有する。Ｗｅｂブラウザ４１０は、ＣＰＵ３６により実行される。
【０２６０】
Ｗｅｂブラウザ４１０には、ＵＩ部４１１と、解釈部４１２とが含まれる。ＵＩ部４１１は、Ｗｅｂサーバ２０から取得したコンテンツに応じたＷｅｂページ等を表示する。また、ＵＩ部４１１は、Ｗｅｂページ上におけるユーザの各種操作（例えば、リンク押下）等を受け付ける。
【０２６１】
解釈部４１２は、ＵＩ部４１１により表示されたＷｅｂページ上でリンクが押下された場合、当該リンクに対応するＨＴＭＬを解釈して、ＵＩ部４１１に対して解釈結果に応じた通知を行う。
【０２６２】
＜画像処理装置１０及び情報処理装置４０の動作比較＞
情報処理装置４０に搭載されたＷｅｂブラウザ４１０のＵＩ部４１１は、例えば、Ｗｅｂページ上でユーザによりリンク押下操作がなされると、当該リンク押下操作を受け付ける。次に、解釈部４１２は、当該リンク押下操作が行われたリンクのＨＴＭＬタグ（ａタグ（アンカータグ））を解釈して、ＵＩ部４１１に対して解釈結果に応じた通知（表示通知又はダウンロード通知）を行う。例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ４１０で表示可能なファイルである場合（例えば、拡張子がｈｔｍｌやｉｍｇ、ｐｄｆ等である場合）には、表示通知となる。一方で、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ４１０で表示可能でないファイルである場合（例えば、拡張子がｚｉｐ等である場合）には、ダウンロード通知となる。ただし、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルの拡張子がｐｄｆ等のＷｅｂブラウザ４１０で表示可能なファイルの拡張子であっても、属性「ｄｏｗｎｌｏａｄ」が指定されている場合には、ダウンロード通知となる。
【０２６３】
そして、Ｗｅｂブラウザ４１０のＵＩ部４１１は、表示通知を受け取った場合、ファイルを表示する。一方で、Ｗｅｂブラウザ４１０のＵＩ部４１１は、ダウンロード通知を受け取った場合、例えば、ファイルをダウンロードするための画面（例えば、ダウンロードの開始又はキャンセルをユーザが選択するための画面）を表示する。
【０２６４】
一方で、画像処理装置１０に搭載されたＷｅｂブラウザ３１０のＵＩ部３１３は、例えば、Ｗｅｂページ上でユーザによりリンク押下操作がなされると、当該リンク押下操作を受け付ける。次に、解釈部３１４は、当該リンク押下操作が行われたリンクのＨＴＭＬタグ（ａタグ（アンカータグ））を解釈して、制御部３１２に対して解釈結果に応じた通知（表示通知又はダウンロード）を行う。これは、情報処理装置４０と同様に、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ３１０で表示可能なファイルである場合（例えば、拡張子がｈｔｍｌやｉｍｇ、ｐｄｆ等である場合）には、表示通知となる。一方で、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ３１０で表示可能でないファイルである場合（例えば、拡張子がｚｉｐ等である場合）には、ダウンロード通知となる。
【０２６５】
そして、制御部３１２は、ダウンロード通知を受け取った場合、ダウンロード対象のファイルが印刷可能か否かを判定した上で、印刷可能であるとき、当該ファイルをダウンロードし、ダウンロードしたファイルを印刷させるための制御を行う。一方で、制御部３１２は、表示通知を受け取った場合、表示対象のファイルが印刷可能か否かを判定した上で、印刷可能であるとき、当該ファイルをダウンロードし、ダウンロードしたファイルを印刷させるための制御を行う。
【０２６６】
このように、画像処理装置１０に搭載されたＷｅｂブラウザ３１０は、情報処理装置４０のＷｅｂブラウザ４１０でダウンロード対象又は表示対象と解釈されるファイルが印刷可能である場合、当該ファイルを印刷させるための制御を行う。これにより、画像処理装置１０では、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションにより、コンテンツのダウンロード及び印刷を行うことができる。
【０２６７】
また、情報処理装置４０に搭載されたＷｅｂブラウザ４１０のＵＩ部４１１は、例えば、Ｗｅｂページ上でユーザによりリンク押下操作がなされると、当該リンク押下操作を受け付ける。次に、解釈部４１２は、当該リンク押下操作が行われたリンクのＨＴＭＬタグ（ａタグ（アンカータグ））を解釈して、ＵＩ部４１１に対して解釈結果に応じた通知（電話発信通知）を行う。この電話発信通知は、ａタグの属性「ｈｒｅｆ」においてスキーム「ｔｅｌ」で指定された電話番号に架電させる通知である。
【０２６８】
そして、Ｗｅｂブラウザ４１０のＵＩ部４１１は、電話発信通知を受け取った場合、指定された電話番号に架電するよう処理を実行する。
【０２６９】
一方で、画像処理装置１０に搭載されたＷｅｂブラウザ３１０のＵＩ部３１３は、例えば、Ｗｅｂページ上でユーザによりリンク押下操作がなされると、当該リンク押下操作を受け付ける。次に、解釈部３１４は、当該リンク押下操作が行われたリンクのＨＴＭＬタグ（ａタグ（アンカータグ））を解釈して、制御部３１２に対して解釈結果に応じた通知（ファクス送信通知）を行う。このファクス送信通知は、ａタグの属性「ｈｒｅｆ」においてスキーム「ｔｅｌ」で指定された電話番号へ、スキャンにより生成した画像データをファクス送信させる通知である。
【０２７０】
そして、制御部３１２は、ファクス送信通知を受け取った場合、スキャンにより画像データを生成するように制御した上で、生成された画像データを指定された電話番号にファクス送信する。
【０２７１】
このように、画像処理装置１０に搭載されたＷｅｂブラウザ３１０は、情報処理装置４０のＷｅｂブラウザ４１０で電話の発信先と解釈される電話番号宛へ、スキャンにより生成した画像データをファクス送信する。これにより、画像処理装置１０では、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションにより、画像データの生成及びファクス送信を行うことができる。
【０２７２】
＜処理の詳細＞
次に、本実施形態に係る画像処理システム１の処理の詳細について説明する。
【０２７３】
（実施例１）
実施例１については＜実施形態１＞と同様であるので説明を省略する。
【０２７４】
（実施例２）
以降では、ユーザが画像処理装置１０を用いて、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションにより、スキャンにより生成した画像データをファクス受信機３０に送信する処理について、図２５を参照しながら説明する。図２５は、本実施形態に係るスキャン及びファクス送信処理の一例を示すシーケンス図である。
【０２７５】
まず、ブラウザ機能部３１１のＵＩ部３１３は、例えば図２６に示すＷｅｂページＧ５１０を表示する（ステップＳ２１０１）。図２６に示すＷｅｂページＧ５１０は、Ｗｅｂサーバ２０から取得したコンテンツ（ＨＴＭＬやＣＳＳ、ＪａｖａＳｃｒｉｐｔ等）を解釈部３１４が解釈することで表示される。このようなコンテンツの取得は、例えば、ＷｅｂページＧ５１０を表示するためのＵＲＬを入力したり、当該ＵＲＬへのリンクを押下したりすることで行うことができる。
【０２７６】
図２６に示すＷｅｂページＧ５１０には、リンク先として指定された電話番号宛にファクスを送信するためのリンクＧ５１１が含まれている。ここで、ユーザがリンクＧ５１１を押下したものとする。なお、画像処理装置１０のスキャナには、スキャン対象の原稿がセットされているものとする。
【０２７７】
ブラウザ機能部３１１のＵＩ部３１３は、ユーザによるリンクＧ５１１の押下を受け付ける（ステップＳ２１０２）。ここで、図２６に示すＷｅｂページＧ５１０に含まれるリンクＧ５１１は、例えば、図２７に示すように、属性「ｈｒｅｆ」が設定されたａタグにより実現される。図２７に示すａタグの属性「ｈｒｅｆ」には、スキーム「ｔｅｌ」で、電話番号が指定されている。なお、ａタグには、これ以外にも、種々の属性が設定されていても良い。
【０２７８】
ブラウザ機能部３１１のＵＩ部３１３は、ユーザにより押下されたリンクＧ５１１を実現するａタグの解釈要求を解釈部３１４に送信する（ステップＳ２１０３）。
【０２７９】
ブラウザ機能部３１１の解釈部３１４は、リンクＧ５１１を実現するａタグを解釈する（ステップＳ２１０４）。すなわち、解釈部３１４は、ａタグを解釈することで、当該ａタグの属性「ｈｒｅｆ」に指定されたスキーム「ｔｅｌ」からスキャン及びファクス送信を特定する。
【０２８０】
次に、ブラウザ機能部３１１の解釈部３１４は、ファクス送信通知を制御部３１２に送信する（ステップＳ２１０５）。解釈部３１４は、例えば、操作装置１１のＷｅｂブラウザ３１０又はアプリケーションの内部に保持されているファクス送信ライブラリのＡＰＩをコールすることで、ファクス送信通知を行うことができる。又は、解釈部３１４は、例えば、本体装置１２が保持されているファクス送信プログラム（又はファクス送信モジュール等）を、ＷｅｂＡＰＩを介してコールすることで、ファクス送信通知を行っても良い。なお、このとき、コールされるＡＰＩの引数には、属性「ｈｒｅｆ」に指定された電話番号が指定される。
【０２８１】
制御部３１２は、ファクス送信通知を受信すると、スキャン実行及び指定された電話番号へのファクス送信要求をスキャンサービス部３８０に送信する（ステップＳ２１０６）。なお、制御部３１２は、例えば、ｉｎｔｅｎｔを用いて、スキャンサービス部３８０のスキャンＵＩアプリケーション３３０を呼び出すことができる。
【０２８２】
スキャンサービス部３８０は、制御部３１２からスキャン実行及びファクス送信要求を受信すると、例えば図２６に示すスキャン中画面Ｇ３２０を表示する（ステップＳ１５０７）。図２６に示すスキャン中画面Ｇ３２０は、スキャンＵＩアプリケーション３３０により表示される。図２６に示すスキャン中画面Ｇ３２０が表示されることで、ユーザは、原稿がスキャン中であることを知ることができる。
【０２８３】
次に、スキャンサービス部３８０は、スキャナにセットされた原稿のスキャンを実行して画像データを生成する（ステップＳ１５０８）。スキャンの実行は、スキャンＵＩアプリケーション３３０が、ＷｅｂＡＰＩ３４０を介して、スキャンアプリケーション３６０に対してスキャン要求を送信することで行うことができる。これにより、スキャナにセットされた原稿から画像データが生成される。スキャンにより生成された画像データは、例えばフラッシュメモリ１１４内の予め指定された記憶領域に保存される。
【０２８４】
スキャン中にエラーが発生した場合、スキャンアプリケーション３６０は、エラーが発生したことを示す通知をスキャンＵＩアプリケーション３３０に送信する。スキャンＵＩアプリケーション３３０は、エラーが発生したことを示す通知を受信すると、例えば、エラーが発生したことを示す画面を表示する。
【０２８５】
なお、図２６に示すスキャン中画面Ｇ３２０には、キャンセルボタンＧ３２１が含まれる。ユーザによりキャンセルボタンＧ３２１が押下された場合、スキャンＵＩアプリケーション３３０は、ＷｅｂＡＰＩ３４０を介して、スキャン要求をスキャンアプリケーション３６０に送信する。これにより、原稿のスキャンが中止される。
【０２８６】
ステップＳ１５０８に続いて、スキャンサービス部３８０は、例えば図２６に示すスキャン完了及びファクス送信中画面Ｇ５２０を表示する（ステップＳ２１０７）。そして、スキャンサービス部３８０のスキャンアプリケーション３６０は、スキャン結果（例えば、スキャンにより生成された画像データ又は当該画像データの保存先を示す情報）をファクス送信アプリケーション３９０に送信する。
【０２８７】
ファクス送信アプリケーション３９０は、スキャン結果を受信すると、スキャンにより生成された画像データを、ａタグの属性「ｈｒｅｆ」に指定された電話番号宛にファクス送信する（ステップＳ２１０８）。これにより、スキャンにより生成された画像データが指定された電話番号宛にファクス送信される。なお、ファクス送信アプリケーション３９０は、ファクス送信のための複数の送信回線（例えば、電話回線、インターネットなど）の中から選択した送信回線を用いるようにしてもよい。
【０２８８】
なお、図２６に示すスキャン完了及びファクス送信中画面Ｇ５２０には、キャンセルボタンＧ５２１が含まれる。ユーザによりキャンセルボタンＧ５２１が押下された場合、スキャンＵＩアプリケーション３３０は、ファクス送信中止要求をファクス送信アプリケーション３９０に送信する。これにより、画像データのファクス送信が中止される。
【０２８９】
ファクス送信アプリケーション３９０は、ファクス送信が完了すると、ファクス送信完了通知をＵＩ部３１３に送信する（ステップＳ２１０９）。
【０２９０】
ブラウザ機能部３１１のＵＩ部３１３は、ファクス送信完了通知を受信すると、例えば図２６に示すファクス送信完了画面Ｇ５３０を表示する（ステップＳ２１１０）。図２６に示すファクス送信完了画面Ｇ５３０が表示されることで、ユーザは、原稿のスキャン及びスキャンにより生成された画像データのファクス送信が完了したことを知ることができる。なお、画像処理装置１０は、スキャンにより生成された画像データのファクス送信の履歴を記録して用紙に印刷することもできる。
【０２９１】
以上のように、本実施形態に係る画像処理装置１０は、汎用的なＨＴＭＬタグであるａタグで実現されるリンクがユーザにより押下された場合に、スキャナにより原稿を読み取って画像データを生成し、生成した画像データをファクス送信することができる。このように、本実施形態に係る画像処理装置１０では、スキャン機能を実現するための専用のＨＴＭＬタグを用いずに、当該スキャン機能が実現される。
【０２９２】
したがって、例えば、Ｗｅｂサーバ２０が提供するＷｅｂアプリケーションの開発者等は、専用のＪａｖａＳｃｒｉｐｔやＨＴＭＬ等の知識を必要とすることなく、画像処理装置１０特有の画像処理機能を実現させるＷｅｂアプリケーションを開発することができる。
【０２９３】
（実施例２の他の例（その１））
次に、スキャン処理の他の例（その１）について、図２８を参照しながら説明する。図２８は、本実施形態に係るスキャン処理の他の例（その１）を示すシーケンス図である。以下、図２５の実施例２と異なる点を説明する。
【０２９４】
ステップＳ２１０６に続いて、スキャンサービス部３８０は、ブラウザ機能部３１１からスキャン実行及びファクス送信要求を受信すると、例えば図２９に示すスキャン設定画面Ｇ４１０を表示する（ステップＳ１８０１）。図２９に示すスキャン設定画面Ｇ４１０は、スキャンＵＩアプリケーション３３０により表示される。
【０２９５】
図２９に示すスキャン設定画面Ｇ４１０には、スキャン設定欄Ｇ４１１と、スキャン実行ボタンＧ４１２とが含まれる。ユーザは、スキャン設定欄Ｇ４１１において、例えば、「原稿種類」、「解像度」、「原稿セット方向」、「原稿面」、「読み取りサイズ」、「ファイル形式」等の種々のスキャン設定を指定することができる。ここで、ユーザがスキャン設定欄Ｇ４１１においてスキャン設定を指定する操作（スキャン設定操作）を行った上で、スキャン実行ボタンＧ４１２を押下したものとする。
【０２９６】
スキャンサービス部３８０は、ユーザによるスキャン設定操作及びスキャン実行ボタンＧ４１２の押下を受け付ける（ステップＳ１８０２）。スキャン設定操作及びスキャン実行ボタンＧ４１２の押下は、スキャンＵＩアプリケーション３３０により受け付けられる。これにより、ステップＳ１５０８において、ユーザにより指定されたスキャン設定で原稿がスキャンされる。
【０２９７】
図３０は、本実施形態に係る汎用ＨＴＭＬタグの解釈に基づく画像処理の一例を示すシーケンス図である。
【０２９８】
ステップＳ１において、ＵＩ部３１３は、ユーザによるＷｅｂページ上のリンクの押下を受け付ける。
【０２９９】
ステップＳ２において、ＵＩ部３１３は、解釈部３１４に、Ｓ１で押下されたリンクに対応するＨＴＭＬタグの解釈を要求する。
【０３００】
ステップＳ３において、解釈部３１４は、Ｓ２で要求されたＨＴＭＬタグを解釈する。具体的には、解釈部３１４は、アンカータグ（ａタグ）の属性「ｈｒｅｆ」が「ｔｅｌ」で開始しているか否かを判断する。
【０３０１】
ステップＳ４において、解釈部３１４は、Ｓ３でアンカータグ（ａタグ）の属性「ｈｒｅｆ」が「ｔｅｌ」で開始している場合、「ｔｅｌ」以降の文字列（つまり、電話番号）を抽出する。
【０３０２】
ステップＳ５において、解釈部３１４は、上述したファクス送信通知を制御部３１２に通知する。
【０３０３】
ステップＳ６において、制御部３１２は、スキャン実行及びファクス送信をスキャンＵＩアプリケーション３３０に要求する。この際、制御部３１２は、パラメータとしてＳ３で抽出した電話番号を付与する。
【０３０４】
ステップＳ７において、スキャンＵＩアプリケーション３３０は、スキャンの実行をスキャンアプリケーション３６０に要求する。この際、制御部３１２は、パラメータとしてＳ３で抽出した電話番号を付与する。
【０３０５】
ステップＳ８において、スキャンアプリケーション３６０は、Ｓ７で要求されたスキャンを実行して、画像データを生成する。
【０３０６】
ステップＳ９において、スキャンアプリケーション３６０は、Ｓ８でスキャンにより生成した画像データのファクス送信をファクス送信アプリケーション３９０に要求する。
【０３０７】
ステップＳ１０において、ファクス送信アプリケーション３９０は、Ｓ９で要求されたファクス送信を行う。つまり、ファクス送信アプリケーション３９０は、Ｓ８でスキャンにより生成した画像のデータを、Ｓ６でパラメータとして付与された電話番号宛にファクス送信する。
【０３０８】
なお、ステップＳ３においてアンカータグ（ａタグ）の属性「ｈｒｅｆ」が「ｔｅｌ」で開始しない場合、（実施例１）で説明した処理が実行されうる。例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ４１０で表示可能なファイルである場合（例えば、拡張子がｈｔｍｌやｉｍｇ、ｐｄｆ等である場合）には、表示通知となる。一方で、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ４１０で表示可能でないファイルである場合（例えば、拡張子がｚｉｐ等である場合）には、ダウンロード通知となる。そして、制御部３１２は、ダウンロード通知を受け取った場合、ダウンロード対象のファイルが印刷可能か否かを判定した上で、印刷可能であるとき、当該ファイルをダウンロードし、ダウンロードしたファイルを印刷させるための制御を行う。一方で、制御部３１２は、表示通知を受け取った場合、表示対象のファイルが印刷可能か否かを判定した上で、印刷可能であるとき、当該ファイルをダウンロードし、ダウンロードしたファイルを印刷させるための制御を行う。
【０３０９】
次に、スキャン及びファクス送信処理の実行時におけるＷｅｂブラウザ３１０の動作の一例について、図３１を参照しながら説明する。図３１は、スキャン及びファクス送信処理の実行時におけるＷｅｂブラウザ３１０の動作の一例を示すフローチャートである。
【０３１０】
まず、Ｗｅｂブラウザ３１０は、図２５のステップＳ２１０１で説明したように、Ｗｅｂサーバ２０からコンテンツ（Ｗｅｂページ）を取得し、リンクを含む画面を表示する（ステップＳ２４０１）。
【０３１１】
次に、Ｗｅｂブラウザ３１０は、図２５のステップＳ２１０２で説明したように、ユーザによるリンクの押下を受け付ける（ステップＳ２４０２）。Ｗｅｂブラウザ３１０は、リンクの押下を受け付けると、電話発信に関する所定のタグ（ａタグ）を検出する（ステップＳ２４０３）。Ｗｅｂブラウザ３１０は、ａタグを検出すると、図２５のステップＳ２１０５で説明したように、ファクス送信通知を行う（ステップＳ２４０４）。
【０３１２】
次に、Ｗｅｂブラウザ３１０は、図２５のステップＳ２１０６で説明したように、スキャン実行及びファクス送信要求を行う（ステップＳ２４０５）。
【０３１３】
その後、図２５のステップＳ１５０８で説明したように、スキャンアプリケーション３６０が、スキャンを実行して画像データを生成する。そして、図２５のステップＳ２１０８で説明したように、ファクス送信アプリケーション３９０が、スキャンにより生成した画像データをファクス送信する（ステップＳ２４０６）。
【０３１４】
＜他のソフトウェア構成例＞
次に、本実施形態に係る画像処理システム１に含まれる画像処理装置１０及び情報処理装置４０のソフトウェア構成の他の例について、図３２を参照しながら説明する。図３２は、本実施形態に係る画像処理システム１のソフトウェア構成の他の例を示す図である。
【０３１５】
図３２に示すように、本実施形態に係る画像処理装置１０の操作装置１１は、印刷ＵＩアプリケーション３２０及びスキャンＵＩアプリケーション３３０の代わりに、操作部ＡＰＩアプリケーション４００を有していても良い。
【０３１６】
操作部ＡＰＩアプリケーション４００は、印刷やスキャン等の画像処理に関するＵＩを提供するアプリケーションプログラムである。操作部ＡＰＩアプリケーション４００は、印刷ＵＩアプリケーション３２０やスキャンＵＩアプリケーション３３０等の画像処理に関するＵＩを提供するアプリケーションと同様の機能を有する。
【０３１７】
したがって、図３２に示すソフトウェア構成の場合、上記で説明した実施例１及び実施例２において、印刷ＵＩアプリケーション３２０及びスキャンＵＩアプリケーション３３０を操作部ＡＰＩアプリケーション４００と読み替えれば良い。操作部ＡＰＩアプリケーション４００を用いることで、印刷やスキャン等の種々の画像処理に関するＵＩを統一的に提供することができる。
【０３１８】
また、操作部ＡＰＩアプリケーション４００は、画像処理に関するＵＩを提供するアプリケーションをサードベンダ等が開発するためのＡＰＩ群を備えている。サードベンダ等は、操作部ＡＰＩアプリケーション４００のＡＰＩ群を利用することで、ＷｅｂＡＰＩ３４０の仕様に関する知識を必要とすることなく、画像に関するＵＩを提供するアプリケーションを容易に開発することができるようになる。すなわち、操作部ＡＰＩアプリケーション４００は、ＷｅｂＡＰＩ３４０をラッピングしたＡＰＩ群をサードベンダ等に提供するアプリケーションプログラムとも言うことができる。
【０３１９】
なお、図３２に示すソフトウェア構成では、操作装置１１が、印刷ＵＩアプリケーション３２０及びスキャンＵＩアプリケーション３３０の代わりに、操作部ＡＰＩアプリケーション４００を有している構成を示したが、これに限られない。操作装置１１は、印刷ＵＩアプリケーション３２０及びスキャンＵＩアプリケーション３３０に加えて、操作部ＡＰＩアプリケーション４００を有していても良い。
【０３２０】
本発明の一実施形態は、例えば、次のようなシーンで利用可能である。店舗サイト等のＷｅｂアプリケーションをＭＦＰ等の画像処理装置１０の操作装置１１のＷｅｂブラウザ３１０で開いた際に掲載されているファクス番号へ、画像処理装置１０の操作装置１１から簡単にスキャン及びファクス送信することができる。また、取引先のＷｅｂページに掲載されているファクス番号に見積書をファクス送信するなどの作業が簡単になる。これによって、例えば、ＭＦＰなどの画像処理装置１０でのジョブ実行を意識せずに作成されたＷｅｂページを画像処理装置１０の操作装置１１のＷｅｂブラウザ３１０に表示したときでも、ユーザは簡単にジョブの実行を指示可能になる。また、Ｗｅｂページの開発者は、ＭＦＰ等の画像処理装置１０にジョブ実行させる専用のＷｅｂページを作成しなくても、画像処理装置１０とＷｅｂページ（Ｗｅｂアプリケーション）とが連携することができる。
【０３２１】
＜実施形態３＞
近年、ＭＦＰ（Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ：複合機）等の画像形成装置において、操作パネルにＷｅｂブラウザがインストールされ、Ｗｅｂサーバから受信したコンテンツ等を表示する技術が知られている。ここで、ＭＦＰとは、コピー機能、プリンタ機能、スキャナ機能、およびファックス機能のうち少なくとも２つの機能を有する複合機である。
【０３２２】
このような、操作パネルにＷｅｂブラウザがインストールされたＭＦＰとして、Ｗｅｂブラウザ上で動作するＷｅｂアプリケーションを利用して、印刷およびスキャン等の各種画像形成機能を実現する技術が開示されている。
【０３２３】
しかしながら、Ｗｅｂブラウザ上で動作するＷｅｂアプリケーションを利用して、印刷およびスキャン等の各種画像形成機能を実現するためには、画像形成機能特有のＪａｖａＳｃｒｉｐｔ（登録商標）等を用いてＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）を記述する必要がある。この場合、Ｗｅｂアプリケーションにおいて上述の画像形成機能特有のＨＴＭＬを記述することなく、スキャンおよび印刷の機能を呼び出すようにすると、スキャンおよび印刷のＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）が個々に起動することになる。したがって、個々のＵＩにおいてスキャンおよび印刷の設定を行わなければならず、かつ、スキャン動作および印刷動作を連続して実行させることができないという問題があった。
【０３２４】
本発明は、上記に鑑みてなされたものであって、ジョブの設定を１回のみとしてスキャン動作および印刷動作を一連の動作で実行することができる画像形成装置、画像処理システム、画像処理方法およびプログラムを提供することを目的とする。
【０３２５】
本発明によれば、ジョブの設定を１回のみとしてスキャン動作および印刷動作を一連の動作で実行することができる。
【０３２６】
以下に、図面を参照しながら、本発明に係る画像形成装置、画像処理システム、画像処理方法およびプログラムの実施形態を詳細に説明する。また、以下の実施形態によって本発明が限定されるものではなく、以下の実施形態における構成要素には、当業者が容易に想到できるもの、実質的に同一のもの、およびいわゆる均等の範囲のものが含まれる。さらに、以下の実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換、変更および組み合わせを行うことができる。
【０３２７】
（画像処理システムの構成）
図３３は、実施形態に係る画像処理システムの構成の一例を示す図である。図３３を参照しながら、本実施形態に係る画像処理システム１の構成について説明する。
【０３２８】
図３３に示すように、本実施形態に係る画像処理システム１は、１以上のＭＦＰ（ＭＦＰ１０ａ、１０ｂ、・・・）と、Ｗｅｂサーバ２０（第１サーバ、第２サーバの一例）と、を含む。なお、図３３では、ＭＦＰ１０ａ、１０ｂ、・・・が示されているが、これらのうち任意の通信端末を示す場合または総称する場合、単に「ＭＦＰ１０」と称する。また、ＭＦＰ１０とＷｅｂサーバ２０とは、例えば、インターネット等の広域的なネットワークＮを介して互いに通信可能となっている。なお、ネットワークＮは、有線だけなく無線によるネットワークが含まれるものとしてもよい。
【０３２９】
ＭＦＰ１０は、Ｗｅｂブラウザがインストールされた画像形成装置である。ＭＦＰ１０のユーザは、Ｗｅｂサーバ２０から提供されるＷｅｂアプリケーションを利用して、例えば、スキャンにより生成したが画像データをＷｅｂサーバ２０へアップロードし、Ｗｅｂサーバ２０からダウンロードした画像データを印刷したりすることができる。
【０３３０】
Ｗｅｂサーバ２０は、ネットワークＮを介して、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションをＭＦＰ１０へ提供する情報処理装置または情報処理システムである。ここで、汎用的なＨＴＭＬとは、Ｗ３Ｃ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ  Ｃｏｎｓｏｒｔｉｕｍ）で規定されたＨＴＭＬ５またはＨＴＭＬ  ５．１等である。また、汎用的とは、例えば、画像形成装置等の機器でのみ解釈可能なように定義されたコンテンツ（拡張ＨＴＭＬ、拡張ＪａｖａＳｃｒｉｐｔ（登録商標）等の拡張されたコンテンツ）とは異なり、汎用のＷｅｂブラウザであれば機器の種類を問わず、解釈可能なコンテンツであることを示す。
【０３３１】
Ｗｅｂサーバ２０によりＷｅｂアプリケーションが提供されることで、種々のＷｅｂサービスが実現される。このようなＷｅｂサービスとしては、例えば、クラウドストレージサービス、ＳＮＳ（Ｓｏｃｉａｌ  Ｎｅｔｗｏｒｋｉｎｇ  Ｓｅｒｖｉｃｅ）、クラウドプリントサービス、ブログサービス、掲示板サービス、オンラインゲームサービス、オンラインショッピングサービス等が挙げられる。
【０３３２】
なお、図３３に示す画像処理システム１の構成は一例であって、他の構成であってもよい。例えば、画像処理システム１には、ＭＦＰ１０以外の画像処理装置が含まれるものとしてもよい。また、Ｗｅｂサーバ２０は、ＭＦＰ１０にＷｅｂアプリケーションを提供すると共に、後述するように、ＭＦＰ１０から送信されたスキャナで読み取られた画像に対して画像処理を行う機能を有しているが、当該画像処理は、Ｗｅｂサーバ２０（第１サーバ）とは異なるサーバ（第２サーバの一例）が行うものとしてもよい。
【０３３３】
（ＭＦＰのハードウェア構成）
図３４は、実施形態に係るＭＦＰのハードウェア構成の一例を示す図である。図３４を参照しながら、本実施形態に係るＭＦＰ１０のハードウェア構成について説明する。
【０３３４】
図３４に示すように、ＭＦＰ１０は、ユーザの操作を受け付ける操作部１１と、スキャナ機能およびプリンタ機能等の各種の画像形成機能を実現する本体１２と、を備える。ここで、ユーザの操作を受け付けるとは、ユーザの操作に応じて入力される情報（画面の座標値を示す信号等を含む）を受け付けることを含む概念である。
【０３３５】
操作部１１および本体１２は、専用の通信路１３を介して、相互に通信可能に接続されている。通信路１３は、例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）規格のものを用いることができるが、これに限定されるものではなく、有線か無線かを問わず任意の規格のものであってよい。本体１２は、操作部１１で受け付けた操作に応じた動作を行う。また、本体１２は、外部装置とも通信可能であり、外部装置から受信した指示に応じた動作を行うこともできる。
【０３３６】
＜操作部のハードウェア構成＞
図３４に示すように、操作部１１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１１２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１３と、フラッシュメモリ１１４と、操作パネル１１５と、接続Ｉ／Ｆ１１６と、通信Ｉ／Ｆ１１７と、バス１１８と、を備えている。
【０３３７】
ＣＰＵ１１１は、操作部１１の動作を統括的に制御する演算装置である。ＣＰＵ１１１は、ＲＡＭ１１３をワークエリア（作業領域）としてＲＯＭ１１２またはフラッシュメモリ１１４等に格納されたプログラムを実行することにより、操作部１１全体の動作を制御する。例えば、ＣＰＵ１１１は、ユーザから受け付けた入力に応じた情報（画像）を操作パネル１１５に表示させる等の各種機能を実現する。
【０３３８】
ＲＯＭ１１２は、例えば、操作部１１１の起動時に実行されるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、および各種の設定等を記憶する不揮発性のメモリである。ＲＡＭ１１３は、ＣＰＵ１１１のワークエリア等として用いられる揮発性のメモリである。フラッシュメモリ１１４は、例えば、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、アプリケーションプログラム、および各種データ等を記憶する不揮発性の記憶装置である。
【０３３９】
操作パネル１１５は、ユーザの操作に応じた各種の入力を受け付けると共に、各種の情報（例えば、受け付けた操作に応じた情報、ＭＦＰ１０の動作状況を示す情報、および設定情報等）を表示する、入力機能および表示機能を有する装置である。操作パネル１１５は、例えば、タッチパネル機能を搭載した液晶表示装置（ＬＣＤ：Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）で構成される。なお、操作パネル１１５は、液晶表示装置に限定されるものではなく、例えば、タッチパネル機能が搭載された有機ＥＬ（Ｅｌｅｃｔｒｏ−Ｌｕｍｉｎｅｓｃｅｎｃｅ）の表示装置で構成されていてもよい。また、操作パネル１１５は、タッチパネル機能に加えてまたはこれに代えて、ハードウェアキー等の操作部、またはランプ等の表示部を設けることもできる。
【０３４０】
接続Ｉ／Ｆ１１６は、通信路１３を介して、本体１２と通信するためのインターフェースである。
【０３４１】
通信Ｉ／Ｆ１１７は、操作部１１をネットワークＮに接続し、ネットワークＮに接続された外部装置との通信を行うためのネットワークインターフェースである。通信Ｉ／Ｆ１１７は、例えば、イーサネット（登録商標）に対応し、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）／ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）等に準拠した通信が可能なインターフェースである。
【０３４２】
バス１１８は、上述の各構成要素を互いに接続し、アドレス信号、データ信号、および各種制御信号等を伝送する伝送路である。
【０３４３】
なお、図３４に示した操作部１１のハードウェア構成は一例を示すものであり、図３４に示した構成要素以外の構成要素を含むものとしてもよい。
【０３４４】
＜本体のハードウェア構成＞
図３４に示すように、本体１２は、ＣＰＵ１２１と、ＲＯＭ１２２と、ＲＡＭ１２３と、ストレージ１２４と、スキャナエンジン１２５と、プリンタエンジン１２６と、接続Ｉ／Ｆ１２７と、通信Ｉ／Ｆ１２８と、バス１２９と、を備えている。
【０３４５】
ＣＰＵ１２１は、本体１２の動作を統括的に制御する演算装置である。ＣＰＵ１２１は、ＲＡＭ１２３をワークエリア（作業領域）としてＲＯＭ１２２またはストレージ１２４等に格納されたプログラムを実行することにより、本体１２全体の動作を制御する。例えば、ＣＰＵ１２１は、コピー機能、スキャナ機能、ファックス機能、およびプリンタ機能等の各種機能を実現する。
【０３４６】
ＲＯＭ１２２は、例えば、本体１２の起動時に実行されるＢＩＯＳ、および各種の設定等を記憶する不揮発性のメモリである。ＲＡＭ１２３は、ＣＰＵ１２１のワークエリア等として用いられる揮発性のメモリである。ストレージ１２４は、例えば、ＯＳ、アプリケーションプログラム、および各種データ等を記憶する不揮発性の記憶装置である。ストレージ１２４は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）またはＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等で構成される。
【０３４７】
スキャナエンジン１２５は、画像形成機能のうち、原稿をスキャンして画像として読み取るスキャナ機能を実現させるための、汎用的な情報処理および通信以外の処理を行うハードウェアである。プリンタエンジン１２６は、画像形成機能のうち、用紙等の印刷媒体への印刷を行うプリンタ機能を実現させるための、汎用的な情報処理および通信以外の処理を行うハードウェアである。
【０３４８】
接続Ｉ／Ｆ１２７は、通信路１３を介して、操作部１１と通信するためのインターフェースである。
【０３４９】
通信Ｉ／Ｆ１２８は、本体１２をネットワークＮに接続し、ネットワークＮに接続された外部装置との通信を行うためのネットワークインターフェースである。通信Ｉ／Ｆ１２８は、例えば、イーサネットに対応し、ＴＣＰ／ＩＰ等に準拠した通信が可能なインターフェースである。
【０３５０】
バス１２９は、上述の各構成要素を互いに接続し、アドレス信号、データ信号、および各種制御信号等を伝送する伝送路である。
【０３５１】
なお、図３４に示した本体１２のハードウェア構成は一例を示すものであり、図３４に示した構成要素以外の構成要素を含むものとしてもよい。例えば、印刷済みの印刷媒体を仕分けるフィニッシャ、または原稿を自動給送するＡＤＦ（Ａｕｔｏ  Ｄｏｃｕｍｅｎｔ  Ｆｅｅｄｅｒ：自動原稿給送装置）のような特定のオプションが含まれていてもよい。
【０３５２】
（Ｗｅｂサーバのハードウェア構成）
図３５は、実施形態に係るＷｅｂサーバのハードウェア構成の一例を示す図である。図３５を参照しながら、本実施形態に係るＷｅｂサーバ２０のハードウェア構成について説明する。
【０３５３】
図３５に示すように、Ｗｅｂサーバ２０は、ＣＰＵ２０１と、ＲＯＭ２０２と、ＲＡＭ２０３と、補助記憶装置２０５と、メディアドライブ２０７と、ディスプレイ２０８と、ネットワークＩ／Ｆ２０９と、キーボード２１１と、マウス２１２と、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）ドライブ２１４と、を備えている。
【０３５４】
ＣＰＵ２０１は、Ｗｅｂサーバ２０全体の動作を制御する演算装置である。ＲＯＭ２０２は、Ｗｅｂサーバ２０用のプログラムを記憶している不揮発性記憶装置である。ＲＡＭ２０３は、ＣＰＵ２０１のワークエリアとして使用される揮発性記憶装置である。
【０３５５】
補助記憶装置２０５は、ＭＦＰ１０によりスキャン機能で読み取られた画像等を記憶するＨＤＤまたはＳＳＤ等の記憶装置である。メディアドライブ２０７は、ＣＰＵ２０１の制御に従って、フラッシュメモリ等の記録メディア２０６に対するデータの読み出しおよび書き込みを制御する装置である。
【０３５６】
ディスプレイ２０８は、カーソル、メニュー、ウィンドウ、文字または画像等の各種情報を表示する液晶または有機ＥＬ等によって構成された表示装置である。
【０３５７】
ネットワークＩ／Ｆ２０９は、ネットワークＮを利用してＭＦＰ１０等の外部装置とデータを通信するためのインターフェースである。ネットワークＩ／Ｆ２０９は、例えば、イーサネットに対応し、ＴＣＰ／ＩＰ等に準拠した通信が可能なＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）等である。
【０３５８】
キーボード２１１は、文字、数字、各種指示の選択、およびカーソルの移動等を行う入力装置である。マウス２１２は、各種指示の選択および実行、処理対象の選択、ならびにカーソルの移動等を行うための入力装置である。
【０３５９】
ＤＶＤドライブ２１４は、着脱自在な記憶媒体の一例としてのＤＶＤ−ＲＯＭまたはＤＶＤ−Ｒ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ  Ｒｅｃｏｒｄａｂｌｅ）等のＤＶＤ２１３に対するデータの読み出しおよび書き込みを制御する装置である。
【０３６０】
上述のＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３、補助記憶装置２０５、メディアドライブ２０７、ディスプレイ２０８、ネットワークＩ／Ｆ２０９、キーボード２１１、マウス２１２およびＤＶＤドライブ２１４は、アドレスバスおよびデータバス等のバスライン２１０によって互いに通信可能に接続されている。
【０３６１】
なお、図３５に示したＷｅｂサーバ２０のハードウェア構成は一例を示すものであり、図３５に示した構成要素を全て含む必要はなく、または、その他の構成要素を含むものとしてもよい。
【０３６２】
（ＭＦＰのソフトウェアの階層構造）
図３６は、実施形態に係るＭＦＰのソフトウェアの階層構造の一例を示す図である。図３６を参照しながら、本実施形態に係るＭＦＰ１０のソフトウェアの階層構造について説明する。
【０３６３】
図３６に示すように、ＭＦＰ１０の本体１２は、アプリ層３２１と、サービス層３２２と、ＯＳ層３２３と、を含む。アプリ層３２１、サービス層３２２、およびＯＳ層３２３の実体は、ＲＯＭ１２２またはストレージ１２４等に格納されている各種ソフトウェアである。ＣＰＵ１２１が、これらのソフトウェア（プログラム）を実行することにより、本体１２の各種の機能が提供される。
【０３６４】
アプリ層３２１は、ハードウェア資源を動作させて所定の機能を提供するためのアプリケーションソフトウェア（以下、単に「アプリ」という場合がある）である。アプリとしては、例えば、コピー機能を提供するためのコピーアプリ、スキャナ機能を提供するためのスキャナアプリ、ファクス機能を提供するためのファクスアプリ、プリンタ機能を提供するためのプリンタアプリなどが挙げられる。
【０３６５】
サービス層３２２は、アプリ層３２１とＯＳ層３２３との間に介在し、アプリ層３２１のアプリに対し、本体１２が備えるハードウェア資源を利用するためのインターフェースを提供するソフトウェアである。具体的には、サービス層３２２は、ハードウェア資源に対する動作要求を受け付け、動作要求の調停を行う機能を提供する。サービス層３２２が受け付ける動作要求としては、スキャナによる読み取りおよびプロッタによる印刷等の要求が挙げられる。なお、サービス層３２２によるインターフェースの機能は、本体１２のアプリ層３２１だけではなく、操作部１１のアプリ層３１１に対しても提供される。すなわち、操作部１１のアプリ層３１１も、本体１２のサービス層３２２のインターフェース機能を介して、本体１２のハードウェア資源（例えば、スキャナエンジン１２５およびプリンタエンジン１２６等）を利用した機能を実現することができる。
【０３６６】
ＯＳ層３２３は、本体１２が備えるハードウェアを制御する基本機能を提供するための基本ソフトウェア（オペレーティングシステム）である。サービス層３２２は、各種アプリからのハードウェア資源の利用要求を、ＯＳ層３２３が解釈可能なコマンドに変換してＯＳ層３２３に渡す。そして、ＯＳ層３２３によりコマンドが実行されることにより、ハードウェア資源は、アプリの要求に従った動作を行う。
【０３６７】
図３６に示すように、ＭＦＰ１０の操作部１１は、アプリ層３１１と、サービス層３１２と、ＯＳ層３１３と、を含む。操作部１１が含むアプリ層３１１、サービス層３１２、およびＯＳ層３１３も、階層構造については本体１２側と同様である。ただし、アプリ層３１１のアプリにより提供される機能や、サービス層３１２が受け付け可能な動作要求の種類は、本体１２側とは異なる。
【０３６８】
アプリ層３１１のアプリは、操作部１１が備えるハードウェア資源を動作させて所定の機能を提供するためのソフトウェアであってもよいが、主として本体１２が備える機能に関する操作および表示を行うためのＵＩの機能を提供する。
【０３６９】
なお、本実施形態では、機能の独立性を保つために、本体１２側のＯＳ層３２３のソフトウェアと、操作部１１側のＯＳ層３１３のソフトウェアとが互いに異なる。つまり、本体１２および操作部１１は、別々のオペレーティングシステムにより互いに独立して動作する。例えば、本体１２側のＯＳ層３２３のソフトウェアとしてＬｉｎｕｘ（登録商標）を用い、操作部１１側のＯＳ層３１３のソフトウェアとしてＡｎｄｒｏｉｄ（登録商標）を用いることも可能である。
【０３７０】
以上のように、本実施形態のＭＦＰ１０において、本体１２および操作部１１は、別々のオペレーティングシステムで動作するため、本体１２と操作部１１との間の通信は、共通の装置内のプロセス間通信ではなく、異なる装置間の通信として行われる。操作部１１が受け付けた情報（ユーザからの操作指示内容）を本体１２へ送信する動作（コマンド通信）、および、本体１２が操作部１１へ情報を送信する動作等がこれに該当する。ここでは、操作部１１が本体１２へコマンド通信を行うことにより、本体１２の機能を使用することができる。また、本体１２から操作部１１に送信する情報には、例えば、本体１２における動作の実行状況、および本体１２側で設定された内容等が含まれる。
【０３７１】
（画像処理システムの機能ブロック構成）
図３７は、実施形態に係る画像処理システムの機能ブロックの構成の一例を示す図である。図３７を参照しながら、本実施形態に係る画像処理システム１の機能ブロックの構成について説明する。
【０３７２】
＜ＭＦＰの機能ブロック構成＞
図３７に示すように、本実施形態に係るＭＦＰ１０の操作部１１は、Ｗｅｂブラウザ４１０と、通信部４１５と、入力部４１６と、表示部４１７と、スキャンＵＩアプリケーション４２０と、印刷ＵＩアプリケーション４３０と、を有する。このうち、Ｗｅｂブラウザ４１０、スキャンＵＩアプリケーション４２０および印刷ＵＩアプリケーション４３０は、ＣＰＵ１１１により実行される。
【０３７３】
また、本実施形態に係るＭＦＰ１０の本体１２は、ＷｅｂＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）４４０と、スキャンアプリケーション４５０と、印刷アプリケーション４６０と、を有する。ＷｅｂＡＰＩ４４０、スキャンアプリケーション４５０および印刷アプリケーション４６０は、ＣＰＵ１２１により実行される。
【０３７４】
Ｗｅｂブラウザ４１０は、Ｗｅｂサーバ２０からＷｅｂコンテンツ（例えば、ＨＴＭＬ、ＣＳＳ（Ｃａｓｃａｄｉｎｇ  Ｓｔｙｌｅ  Ｓｈｅｅｔｓ）、ＪａｖａＳｃｒｉｐｔ、各種電子ファイル等）を取得することで、Ｗｅｂアプリケーションの機能を実現する。
【０３７５】
例えば、Ｗｅｂブラウザ４１０は、ＳＮＳを提供するＷｅｂサーバ２０からＷｅｂコンテンツを取得することで、ＳＮＳの閲覧やＳＮＳ上でのファイル共有等を行うＷｅｂアプリケーションの機能を実現する。また、例えば、Ｗｅｂブラウザ４１０は、クラウドストレージサービスを提供するＷｅｂサーバ２０からＷｅｂコンテンツを取得することで、ストレージの閲覧またはストレージへのファイルのアップロード等を行うＷｅｂアプリケーションの機能を実現する。
【０３７６】
なお、Ｗｅｂアプリケーションは、一般に、Ｗｅｂサーバ２０から取得したＪａｖａＳｃｒｉｐｔ等のコンテンツをＷｅｂブラウザ４１０上で動作させて、Ｗｅｂサーバ２０と協働した処理を実行させることで実現される。
【０３７７】
Ｗｅｂブラウザ４１０は、ブラウザ機能部４１１と、制御部４１２と、を含む。なお、以降では、Ｗｅｂコンテンツを、単に「コンテンツ」と称する場合がある。
【０３７８】
ブラウザ機能部４１１は、コンテンツの解釈および表示等を行う。ブラウザ機能部４１１は、ＵＩ部４１３（表示制御部）と、解釈部４１４と、を含む。
【０３７９】
ＵＩ部４１３は、Ｗｅｂサーバ２０から取得したコンテンツに応じたＷｅｂページ等、すなわちＷｅｂアプリケーションが提供するＷｅｂページ等を、表示部４１７に表示する。また、ＵＩ部４１３は、入力部４１６へのユーザの操作入力により、Ｗｅｂページ上において各種操作（例えば、リンク押下）等を受け付ける。
【０３８０】
解釈部４１４は、Ｗｅｂページに含まれるＨＴＭＬタグを解釈して、制御部４１２に対して解釈結果に応じた通知を行う。
【０３８１】
制御部４１２は、ブラウザ機能部４１１の解釈部４１４からの通知に応じて、ＭＦＰ１０の画像形成機能を実行させる制御を行う。例えば、制御部４１２は、解釈部４１４から、ファイルを選択することを示すファイル選択通知を受け取った場合、ＭＦＰ１０にセットされた原稿をスキャンし、その読み取り画像をＷｅｂサーバ２０へアップロードする制御を行う。また、例えば、制御部４１２は、解釈部４１４から、リンク先のコンテンツを表示することを示す表示通知を受け取った場合であって、当該コンテンツが所定の形式（例えば、ＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）形式等）である場合、当該コンテンツをダウンロードして印刷する制御を行う。
【０３８２】
なお、Ｗｅｂブラウザ４１０は、Ｗｅｂアプリケーションの機能を実現するブラウザ機能部４１１と、ＭＦＰ１０の画像形成機能を制御する制御部４１２とを有するため、いわゆるハイブリッドアプリケーションと言うこともできる。Ｗｅｂブラウザ４１０は、例えば、Ｊａｖａ（登録商標）等のプログラミング言語で実装される。すなわち、Ｗｅｂブラウザ４１０を構成するブラウザアプリケーションは、その基礎部分がＪａｖａアプリケーションプログラムから構成されている。このＪａｖａアプリケーションが、操作部１１が提供するＡＰＩを用いて、操作部１１が有するブラウザ機能部４１１を呼び出すことにより、解釈部４１４およびＵＩ部４１３を含むＷｅｂブラウザ４１０を構成している。基礎部分であるＪａｖａアプリケーションプログラムは、制御部４１２を含み、この制御部４１２が制御を行うことで、Ｗｅｂコンテンツのタグの解釈後の動作に柔軟性を持たせ、汎用的なＨＴＭＬで可能な動作（ダウンロードおよびアップロード）だけでなく、画像形成（スキャンおよびプリント）動作の要求ができるようになっている。
【０３８３】
通信部４１５は、Ｗｅｂブラウザ４１０の制御に従って、ネットワークＮを介してＷｅｂサーバ２０とデータ通信を行う。通信部４１５は、図３４に示す通信Ｉ／Ｆ１１７によって実現される。
【０３８４】
入力部４１６は、ユーザからの操作入力を受け付ける。入力部４１６は、図３４に示す操作パネル１１５の入力機能によって実現される。
【０３８５】
表示部４１７は、ＵＩ部４１３、スキャンＵＩアプリケーション４２０および印刷ＵＩアプリケーション４３０の指令に従って、各種情報を表示する。表示部４１７は、図３４に示す操作パネル１１５の表示機能によって実現される。
【０３８６】
スキャンＵＩアプリケーション４２０は、スキャンに関するＵＩを提供するアプリケーションプログラムである。スキャンＵＩアプリケーション４２０は、例えば、スキャン中であることを示す画面、およびスキャンが完了したことを示す画面等を、表示部４１７に表示させる。
【０３８７】
また、スキャンＵＩアプリケーション４２０は、制御部４１２からの要求に応じて、ＷｅｂＡＰＩ４４０を介して、スキャンアプリケーション４５０に対してスキャンの実行を要求する。
【０３８８】
印刷ＵＩアプリケーション４３０は、印刷に関するＵＩを提供するアプリケーションプログラムである。印刷ＵＩアプリケーション４３０は、例えば、印刷実行中であることを示す画面、および印刷が完了したことを示す画面等を、表示部４１７に表示させる。
【０３８９】
また、印刷ＵＩアプリケーション４３０は、制御部４１２からの要求に応じて、ＷｅｂＡＰＩ４４０を介して、印刷アプリケーション４６０に対して印刷の実行を要求する。
【０３９０】
ＷｅｂＡＰＩ４４０は、スキャンＵＩアプリケーション４２０および印刷ＵＩアプリケーション４３０が画像形成の実行を要求するためのＡＰＩである。
【０３９１】
スキャンアプリケーション４５０は、スキャンＵＩアプリケーション４２０からの要求に応じて、スキャナエンジン１２５を制御して、スキャンを実行する。
【０３９２】
印刷アプリケーション４６０は、印刷ＵＩアプリケーション４３０からの要求に応じて、プリンタエンジン１２６を制御して、印刷を実行する。
【０３９３】
以下、スキャンＵＩアプリケーション４２０と、ＷｅｂＡＰＩ４４０と、スキャンアプリケーション４５０とを「スキャンサービス部４７０」（第１画像形成部）と表す。また、印刷ＵＩアプリケーション４３０と、ＷｅｂＡＰＩ４４０と、印刷アプリケーション４６０とを「印刷サービス部４８０」（第２画像形成部）と表す。
【０３９４】
なお、操作部１１には、例えば、コピーに関するＵＩを提供するアプリケーション、ファックスに関するＵＩを提供するアプリケーション、またはＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅｃｏｇｎｉｔｉｏｎ）に関するＵＩを提供するアプリケーション等が含まれていてもよい。また、本体１２には、例えば、コピーを実行するアプリケーション、ファックスを実行するアプリケーション、またはＯＣＲを実現するアプリケーション等が含まれていてもよい。したがって、ＭＦＰ１０には、例えば、コピーサービス部、ＦＡＸサービス部、ＯＣＲサービス等の様々な画像形成（画像処理）サービス部が含まれていてもよい。
【０３９５】
また、ＭＦＰ１０には、画像形成（画像処理）サービス部以外にも、例えば、ＭＦＰ１０が保持するアドレス帳に関する処理を実行するアドレス帳サービス部、ユーザがＭＦＰ１０を利用するための認証に関する処理を実行する認証サービス部等が含まれる。
【０３９６】
＜Ｗｅｂサーバの機能ブロック構成＞
図３７に示すように、本実施形態に係るＷｅｂサーバ２０は、通信部５１１と、記憶部５１２と、画像処理部５１３と、を有する。
【０３９７】
通信部５１１は、画像処理部５１３の制御に従って、ネットワークＮを介してＭＦＰ１０とデータ通信を行う。通信部５１１は、図３５に示すネットワークＩ／Ｆ２０９によって実現される。
【０３９８】
記憶部５１２は、ＭＦＰ１０からアップロードされた画像等を記憶する。記憶部５１２は、図３５に示すＲＡＭ２０３または補助記憶装置２０５によって実現される。
【０３９９】
画像処理部５１３は、ＭＦＰ１０からアップロードされた画像に対して、広告を挿入したり、または、ロゴマーク等のウォーターマークを付加する等の画像処理を実行する機能部である。例えば、画像処理部５１３は、画像に対して広告を挿入する場合、後でＭＦＰ１０で印刷される場合に裏面に当該広告が印刷されるように、各画像間に挿入するようにするものとしてもよい。画像処理部５１３は、図３５に示すＣＰＵ２０１がプログラムを実行することによって実現される。
【０４００】
＜ＭＦＰおよび汎用的な情報処理装置の動作比較＞
汎用的な情報処理装置としては、例えば、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等が想定される。以下、汎用的な情報処理装置、単に「情報処理装置」と称する。
【０４０１】
情報処理装置にインストールされたＷｅｂブラウザは、例えば、Ｗｅｂページ上でユーザによりファイルの選択操作がなされると、当該操作が行われたボタンのＨＴＭＬタグ（ｉｎｐｕｔタグ）を解釈して、解釈結果に応じた通知（ファイル選択通知）を行う。そして、Ｗｅｂブラウザは、例えば、選択されたファイルを指定されたサーバ等にアップロードする。
【０４０２】
一方で、ＭＦＰ１０にインストールされたＷｅｂブラウザ４１０のＵＩ部４１３は、例えば、Ｗｅｂページ上でユーザによりファイルの選択操作がなされると、当該操作を受け付ける。次に、解釈部４１４は、当該操作が行われたボタンのＨＴＭＬタグ（ｉｎｐｕｔタグ）を解釈して、制御部４１２に対して解釈結果に応じた通知（ファイル選択通知）を行う。
【０４０３】
そして、制御部４１２は、解釈部４１４から、ファイル選択通知を受け取った場合、ＭＦＰ１０にセットされた原稿をスキャンして、その読み取り画像をＷｅｂサーバ２０へアップロードする。
【０４０４】
このように、ＭＦＰ１０に搭載されたＷｅｂブラウザ４１０は、情報処理装置のＷｅｂブラウザでファイル選択対象と解釈されるファイルを、スキャンにより読み取り画像として生成する制御を行って、生成されたファイルをアップロードする。これにより、ＭＦＰ１０では、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションにより、画像形成機能を実現するための専用のＨＴＭＬタグを用いることなく、一定の規則に沿って設定のパラメータを付与するのみで、画像形成機能を追加してコンテンツの生成およびアップロードを行うことができる。
【０４０５】
また、情報処理装置にインストールされたＷｅｂブラウザは、例えば、Ｗｅｂページ上でユーザによりリンク押下操作がなされると、当該リンク押下操作が行われたリンクのＨＴＭＬタグ（ａタグ（アンカータグ））を解釈して、解釈結果に応じた通知（表示通知またはダウンロード通知）を行う。
【０４０６】
例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザで表示可能なファイルである場合（例えば、拡張子が「ｈｔｍｌ」、「ｉｍｇ」または「ｐｄｆ」等である場合）には、表示通知となる。一方で、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザで表示可能でないファイルである場合（例えば、拡張子が「ｚｉｐ」等である場合）には、ダウンロード通知となる。ただし、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルの拡張子が「ｐｄｆ」等のＷｅｂブラウザで表示可能なファイルの拡張子であっても、属性「ｄｏｗｎｌｏａｄ」が指定されている場合には、ダウンロード通知となる。
【０４０７】
そして、Ｗｅｂブラウザは、表示通知を受け取った場合、ファイルを表示する。一方、Ｗｅｂブラウザは、ダウンロード通知を受け取った場合、例えば、ファイルをダウンロードするための画面（例えば、ダウンロードの開始またはキャンセルをユーザが選択するための画面）を表示する。
【０４０８】
一方で、ＭＦＰ１０にインストールされたＷｅｂブラウザ４１０の解釈部４１４は、リンク押下操作が行われた場合に相当するＨＴＭＬタグ（ａタグ（アンカータグ））を解釈すると、制御部４１２に対して解釈結果に応じた通知（表示通知またはダウンロード通知）を行う。これは、ＭＦＰ１０と同様に、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ４１０で表示可能なファイルである場合（例えば、拡張子が「ｈｔｍｌ」、「ｉｍｇ」または「ｐｄｆ」等である場合）には、表示通知となる。一方で、例えば、ａタグの属性「ｈｒｅｆ」に指定されているファイルがＷｅｂブラウザ４１０で表示可能でないファイルである場合（例えば、拡張子が「ｚｉｐ」等である場合）には、ダウンロード通知となる。
【０４０９】
そして、制御部４１２は、ダウンロード通知を受け取った場合、ダウンロード対象のファイルが印刷可能か否かを判定した上で、印刷可能であるとき、当該ファイルをダウンロードし、ダウンロードしたファイルを印刷させるための制御を行う。一方で、制御部４１２は、表示通知を受け取った場合、表示対象のファイルが印刷可能か否かを判定した上で、印刷可能であるとき、当該ファイルをダウンロードし、ダウンロードしたファイルを印刷させるための制御を行う。
【０４１０】
このように、ＭＦＰ１０に搭載されたＷｅｂブラウザ４１０は、情報処理装置のＷｅｂブラウザでダウンロード対象または表示対象と解釈されるファイルが印刷可能である場合、当該ファイルを印刷させるための制御を行う。これにより、ＭＦＰ１０では、汎用的なＨＴＭＬを用いたＷｅｂアプリケーションにより、画像形成機能を実現するための専用のＨＴＭＬタグを用いることなく、一定の規則に沿って設定のパラメータを付与するのみで、画像形成機能を追加してコンテンツのダウンロードおよび印刷を行うことができる。
【０４１１】
（画像処理システムのスキャン・印刷処理）
図３８は、実施形態に係る画像処理システムのスキャン・印刷処理の一例を示すシーケンス図である。図３９は、スキャン・印刷処理における画面遷移の一例を示す図である。図４０は、スキャン実行タグの一例を示す図である。図４１は、印刷実行タグの一例を示す図である。図３８〜図４１を参照しながら、本実施形態に係る画像処理システム１のスキャン・印刷処理について説明する。なお、ＭＦＰ１０には予めスキャン・印刷処理の対象となる原稿がセットされているものとする。
【０４１２】
＜ステップＳ１０１＞
まず、ブラウザ機能部４１１のＵＩ部４１３は、例えば図３９に示すＷｅｂアプリケーションが提供する設定画面１００１を、表示部４１７に表示させる。図３９に示す設定画面１００１は、Ｗｅｂサーバ２０から取得したコンテンツ（ＨＴＭＬ、ＣＳＳ、ＪａｖａＳｃｒｉｐｔ等）を、解釈部４１４が解釈することで表示される。このようなコンテンツの通信部４１５を介した解釈部４１４による取得は、例えば、設定画面１００１を表示するためのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を入力したり、当該ＵＲＬへのリンクを押下したりすることで行うことができる。
【０４１３】
＜ステップＳ１０２＞
図３９に示す設定画面１００１には、印刷部数（コピー部数）、スキャナの読み取り面、読み取りの解像度、および印刷面の設定の入力部が含まれる。設定画面１００１において、ユーザは、これらの設定を入力部４１６から入力して、スタートボタンを押下し、当該押下情報がＵＩ部４１３へ送られる。
【０４１４】
＜ステップＳ１０３＞
設定画面１００１のスタートボタンは、例えば、図４０に示すように、属性「ｔｙｐｅ」と、属性「Ｊｏｂ」とが設定されたｉｎｐｕｔタグにより実現される。なお、ｉｎｐｕｔタグには、これら以外にも、種々の属性が設定されていてもよい。ブラウザ機能部４１１のＵＩ部４１３は、ユーザにより押下されたスタートボタンを実現するｉｎｐｕｔタグ（スキャン実行タグ）の解釈要求を解釈部４１４へ送る。
【０４１５】
＜ステップＳ１０４、Ｓ１０５＞
ブラウザ機能部４１１の解釈部４１４は、ＵＩ部４１３から受け取った解釈要求に応じて、ｉｎｐｕｔタグ（スキャン実行タグ）（第１タグの一例）を解釈する。すなわち、解釈部４１４は、ｉｎｐｕｔタグを解釈することで、ファイルを選択することを示すことを解釈し、当該ｉｎｐｕｔタグの属性「Ｊｏｂ」で指定されたスキャナの読み取り面、および読み取りの解像度をスキャンパラメータ（第１パラメータ）として取得する。図４０に示すｉｎｐｕｔタグでは、デフォルトの設定として、スキャナの読み取り面が両面、読み取りの解像度が２００［ｄｐｉ］として指定されている。また、設定画面１００１でスキャナの読み取り面、および読み取りの解像度がユーザによりデフォルトとは異なる値に設定されると、解釈部４１４は、ｉｎｐｕｔタグの属性「Ｊｏｂ」を、設定された値で解釈して、当該値をスキャンパラメータとして取得する。そして、解釈部４１４は、タグの解釈結果としてファイルを選択することを示すファイ選択通知と、取得したスキャンパラメータとを、制御部４１２へ送る。
【０４１６】
＜ステップＳ１０６＞
制御部４１２は、解釈部４１４からファイ選択通知と、スキャンパラメータとを受け取ると、スキャン実行要求をスキャンパラメータと共に、スキャンサービス部４７０へ送信する。
【０４１７】
＜ステップＳ１０７、Ｓ１０８＞
また、制御部４１２は、ユーザにスキャン中であることを通知するために、ブラウザ機能部４１１のＵＩ部４１３へスキャン中画面表示要求を送る。ＵＩ部４１３は、スキャン中画面表示要求を受け取ると、図４０に示すスキャン中画面１００２を表示部４１７に表示させる。これによって、ユーザは、実行中のスキャン・印刷処理のうち、スキャン処理の段階であることを認識することができる。
【０４１８】
なお、このようなスキャン中画面１００２の表示は、Ｗｅｂアプリケーションの機能により実現されるものとしてもよく、または、スキャンＵＩアプリケーション４２０の機能によって実現されるものとしてもよい。
【０４１９】
＜ステップＳ１０９＞
スキャンサービス部４７０は、制御部４１２からスキャン実行要求およびスキャンパラメータを受信すると、図３４に示すスキャナエンジン１２５に、セットされた原稿のスキャンをさせる。スキャンの実行は、スキャンＵＩアプリケーション４２０が、ＷｅｂＡＰＩ４４０を介して、スキャンアプリケーション４５０に対してスキャン要求を送信することで行うことができる。これによって、セットされた原稿から画像データ（読み取り画像）が生成される。スキャンにより生成された読み取り画像は、例えば図３４に示すフラッシュメモリ１１４内の予め指定された記憶領域に記憶される。
【０４２０】
なお、図３９に示すスキャン中画面１００２には、キャンセルボタンが含まれるものとしてもよい。この場合、ユーザによりキャンセルボタンが押下されると、スキャンＵＩアプリケーション４２０は、ＷｅｂＡＰＩ４４０を介して、スキャン停止要求をスキャンアプリケーション４５０へ送信する。これによって、原稿のスキャン処理が中止される。
【０４２１】
＜ステップＳ１１０＞
スキャンサービス部４７０によるスキャン処理中において、例えばスキャナエンジン１２５の動作に異常等のエラーが発生すると、スキャンアプリケーション４５０は、スキャン処理を中断し、スキャンＵＩアプリケーション４２０へエラー通知を送信する。スキャンＵＩアプリケーション４２０は、エラー通知を受信すると、表示部４１７にスキャン処理中にエラーが発生した旨を表示させる。
【０４２２】
＜ステップＳ１１１＞
スキャンサービス部４７０のスキャンアプリケーション４５０は、スキャン処理が完了すると、スキャンした読み取り画像を、スキャンＵＩアプリケーション４２０へ送信する。スキャンＵＩアプリケーション４２０は、受信した読み取り画像（第１画像）を、制御部４１２へ送る。
【０４２３】
＜ステップＳ１１２＞
制御部４１２は、読み取り画像を受け取ると、続いて、通信部４１５を介して、Ｗｅｂサーバ２０へ当該読み取り画像をアップロードする。
【０４２４】
なお、制御部４１２は、読み取り画像のアップロード中に、アップロード中画面の表示要求を、ブラウザ機能部４１１のＵＩ部４１３へ送るものとしてもよい。この場合、ＵＩ部４１３は、アップロード中画面の表示要求を受け取ると、アップロード中画面を表示部４１７に表示させる。これによって、ユーザは、実行中のスキャン・印刷処理のうち、スキャンされた読み取り画像がＷｅｂサーバ２０へアップロード中の段階であることを認識することができる。
【０４２５】
＜ステップＳ１１３＞
Ｗｅｂサーバ２０の画像処理部５１３は、ＭＦＰ１０から通信部５１１を介して読み取り画像を受信すると、当該読み取り画像に対して所定の画像処理を実行する。例えば、画像処理部５１３は、読み取り画像に対して、広告を挿入したり、または、ロゴマーク等のウォーターマークを付加する等の画像処理を実行する。
【０４２６】
＜ステップＳ１１４＞
画像処理部５１３は、読み取り画像に対して画像処理が終了すると、終了した旨を示す処理完了通知を、通信部５１１を介してＭＦＰ１０へ送信する。
【０４２７】
＜ステップＳ１１５＞
制御部４１２は、通信部４１５を介して処理完了通知を受信すると、続いて、印刷実行タグの解釈要求を、ブラウザ機能部４１１の解釈部４１４へ送る。
【０４２８】
＜ステップＳ１１６、Ｓ１１７＞
ブラウザ機能部４１１の解釈部４１４は、印刷実行タグの解釈要求を受け取ると、例えば、図４１に示す属性「ｈｒｅｆ」が設定された印刷実行タグとしてのａタグ（アンカータグ）（第２タグの一例）を解釈する。なお、ａタグには、これら以外にも、種々の属性が設定されていてもよい。図４１に示すように、ａタグ（アンカータグ）は、属性「ｈｒｅｆ」として、相対パスにより、読み取り画像のＰＤＦファイルの格納先ＵＲＬが指定され、さらに、印刷部数（コピー部数）、および印刷面が指定されている。例えば、読み取り画像のＰＤＦファイルの格納先ＵＲＬは、ステップＳ１１４の処理完了通知に含まれているものとし、当該ＵＲＬが、ａタグ（アンカータグ）の属性「ｈｒｅｆ」に設定された態様で、解釈部４１４により解釈されるものとすればよい。すなわち、解釈部４１４は、ａタグ（アンカータグ）を解釈することで、Ｗｅｂサーバ２０に保存されているコンテンツへのリンクを示すことを解釈し、当該ａタグの属性「ｈｒｅｆ」で指定された印刷部数（コピー部数）、および印刷面を印刷パラメータ（第２パラメータ）として取得し、さらに、読み取り画像のファイルの格納先ＵＲＬを取得する。図４１に示すａタグ（アンカータグ）では、デフォルトの設定として、印刷部数（コピー部数）が両面、印刷面が両面として指定されている。
【０４２９】
また、ステップＳ１０２において、設定画面１００１で印刷部数（コピー部数）、および印刷面がユーザによりデフォルトとは異なる値に設定されると、解釈部４１４は、ａタグ（アンカータグ）の属性「ｈｒｅｆ」を、設定された値で解釈して、当該値を印刷パラメータとして取得する。そして、解釈部４１４は、取得した印刷パラメータ、および、読み取り画像のファイルの格納先ＵＲＬを、制御部４１２へ送る。
【０４３０】
＜ステップＳ１１８、Ｓ１１９＞
制御部４１２は、ａタグの属性「ｈｒｅｆ」で指定されたリンク（ＵＲＬ）先のコンテンツ（読み取り画像）のダウンロード要求を、通信部４１５を介して、Ｗｅｂサーバ２０へ送信する。これによって、当該コンテンツ（読み取り画像）がＷｅｂサーバ２０から制御部４１２へダウンロードされる。ただし、読み取り画像は、ステップＳ１１３で画像処理がなされているので、この画像処理後の読み取り画像を、以下、「処理後画像」と称する。制御部４１２は、Ｗｅｂサーバ２０からダウンロードした処理後画像（第２画像）を、例えばフラッシュメモリ１１４内の予め指定された記憶領域に記憶させる。
【０４３１】
なお、制御部４１２は、処理後画像のダウンロード中に、ダウンロード中画面の表示要求を、ブラウザ機能部４１１のＵＩ部４１３へ送るものとしてもよい。この場合、ＵＩ部４１３は、ダウンロード中画面の表示要求を受け取ると、ダウンロード中画面を表示部４１７に表示させる。これによって、ユーザは、実行中のスキャン・印刷処理のうち、処理後画像がＷｅｂサーバ２０からダウンロード中の段階であることを認識することができる。
【０４３２】
＜ステップＳ１２０＞
制御部４１２は、Ｗｅｂサーバ２０から処理後画像のダウンロードが完了すると、続いて、印刷実行要求を、処理後画像および印刷パラメータと共に、印刷サービス部４８０へ送信する。
【０４３３】
＜ステップＳ１２１、Ｓ１２２＞
また、制御部４１２は、ユーザに印刷中であることを通知するために、ブラウザ機能部４１１のＵＩ部４１３へ印刷中画面表示要求を送る。ＵＩ部４１３は、印刷中画面表示要求を受け取ると、図３９に示す印刷中画面１００３を表示部４１７に表示させる。これによって、ユーザは、実行中のスキャン・印刷処理のうち、印刷処理の段階であることを認識することができる。
【０４３４】
なお、このような印刷中画面１００３の表示は、Ｗｅｂアプリケーションの機能により実現されるものとしてもよく、または、印刷ＵＩアプリケーション４３０の機能によって実現されるものとしてもよい。
【０４３５】
＜ステップＳ１２３＞
印刷サービス部４８０は、制御部４１２から印刷実行要求、処理後画像および印刷パラメータを受信すると、図３４に示すプリンタエンジン１２６に、印刷パラメータに従って処理後画像の印刷をさせる。印刷の実行は、印刷ＵＩアプリケーション４３０が、ＷｅｂＡＰＩ４４０を介して、印刷アプリケーション４６０に対して印刷要求を送信することで行うことができる。これによって、Ｗｅｂサーバ２０からダウンロードされた処理後画像が印刷される。
【０４３６】
なお、図３９に示す印刷中画面１００３には、キャンセルボタンが含まれるものとしてもよい。この場合、ユーザによりキャンセルボタンが押下されると、印刷ＵＩアプリケーション４３０は、ＷｅｂＡＰＩ４４０を介して、印刷停止要求を印刷アプリケーション４６０へ送信する。これによって、処理後画像の印刷処理が中止される。
【０４３７】
＜ステップＳ１２４＞
印刷サービス部４８０による印刷処理中において、例えばプリンタエンジン１２６の動作に異常等のエラーが発生すると、印刷アプリケーション４６０は、印刷処理を中断し、印刷ＵＩアプリケーション４３０へエラー通知を送信する。印刷ＵＩアプリケーション４３０は、エラー通知を受信すると、表示部４１７に印刷処理中にエラーが発生した旨を表示させる。
【０４３８】
＜ステップＳ１２５＞
印刷サービス部４８０の印刷アプリケーション４６０は、印刷処理が完了すると、印刷処理の結果通知（完了通知）を、制御部４１２へ送る。
【０４３９】
＜ステップＳ１２６、Ｓ１２７＞
また、制御部４１２は、ユーザに印刷処理が完了したことを通知するために、ブラウザ機能部４１１のＵＩ部４１３へ設定画面表示要求を送る。ＵＩ部４１３は、設定画面表示要求を受け取ると、図３９に示す設定画面１００１を表示部４１７に表示させる。このように元の設定画面１００１が表示されることによって、ユーザは、スキャン・印刷処理が終了したことを認識することができる。なお、設定画面１００１を再表示するのではなく、所定の完了画面を表示させるものとしてもよい。
【０４４０】
以上のように、本実施形態に係るＭＦＰ１０では、スキャン動作および印刷動作のジョブの設定を、例えば、図３９に示す設定画面１００１にて１回行うのみで、原稿のスキャン動作、および当該スキャン動作で得られた画像に基づいた印刷動作を一連の動作で実行することができる。すなわち、スキャン動作および印刷動作の処理毎に設定画面が起動して、ユーザが処理毎に設定をする必要がないので、利便性が向上する。
【０４４１】
また、本実施形態に係るＭＦＰ１０では、汎用的なＨＴＭＬタグであるｉｎｐｕｔタグが解釈された場合に、スキャナにより原稿を読み取って読み取り画像を生成し、Ｗｅｂサーバ２０にアップロードすることができる。したがって、スキャン機能を実現するための専用のＨＴＭＬタグ等を用いずに、一定の規則に沿って設定のパラメータを付与するのみで、当該スキャン機能が実現される。また、汎用的なＨＴＭＬタグであるａタグが解釈された場合に、リンク先のコンテンツ（処理後画像）をダウンロードして印刷することができる。したがって、印刷機能を実現するための専用のＨＴＭＬタグ等を用いずに、一定の規則に沿って設定のパラメータを付与するのみで、当該印刷機能が実現される。すなわち、Ｗｅｂサーバ２０が提供するＷｅｂアプリケーションの開発者等は、専用のＪａｖａＳｃｒｉｐｔおよびＨＴＭＬ等の知識を必要とすることなく、ＭＦＰ１０特有の画像形成機能を利用したＷｅｂアプリケーションを開発することができる。
【０４４２】
また、本実施形態に係る画像処理システム１では、スキャン処理により読み取られた読み取り画像に対して、Ｗｅｂサーバ２０において所定の画像処理が施された上で、当該が画像処理後の画像を印刷出力することができる。すなわち、スキャン動作および印刷動作の一連の動作内に、読み取り画像に対して所定の画像処理を組み込むことができるので、原稿の単なるコピー処理ではなく、付加価値のある画像形成機能を発揮させることができる。また、上述と同様に、このような画像処理を行わせるための専用のＨＴＭＬタグ等を用いずに実現することができる。
【０４４３】
（変形例１）
以下、図４２および図４３を参照しながら、本実施形態の変形例１に係る画像処理システムについて、本実施形態に係る画像処理システム１と相違する点を中心に説明する。本変形例では、Ｗｅｂサーバへアップロードされた画像の画像ログを記憶する動作について説明する。なお、本変形例に係るＭＦＰ１０のハードウェア構成および機能ブロックの構成、ならびにＷｅｂサーバのハードウェア構成は、上述の実施形態で説明したそれぞれの構成と同様である。
【０４４４】
＜画像処理システムの機能ブロックの構成＞
図４２は、実施形態の変形例１に係る画像処理システムの機能ブロックの構成の一例を示す図である。図４２を参照しながら、本変形例に係る画像処理システム１ａの機能ブロックの構成について説明する。なお、図４２に示すように、ＭＦＰ１０の機能ブロックの構成は、上述の図３７に示す構成と同様である。
【０４４５】
図４２に示すように、本変形例に係る画像処理システム１ａのＷｅｂサーバ２０ａは、通信部５１１と、記憶部５１２と、画像処理部５１３と、画像管理部５１４と、を有する。なお、通信部５１１、記憶部５１２および画像処理部５１３の動作は、図３７で上述した通りである。
【０４４６】
画像管理部５１４は、ＭＦＰ１０からアップロードされた画像を、記憶部５１２に画像ログとして記憶させる機能部である。なお、画像管理部５１４は、画像ログとして、画像処理部５１３により画像処理が行われた画像（処理後画像）を記憶部５１２に記憶させるものとしてもよい。画像管理部５１４は、図３５に示すＣＰＵ２０１がプログラムを実行することによって実現される。
【０４４７】
＜画像処理システムのスキャン・印刷処理＞
図４３は、実施形態の変形例１に係る画像処理システムのスキャン・印刷処理の一例を示す図である。図４３を参照しながら、本変形例に係る画像処理システム１ａのスキャン・印刷処理について説明する。
【０４４８】
＜＜ステップＳ１０１〜Ｓ１１２＞＞
図４３におけるステップＳ１０１〜Ｓ１１２の処理は、それぞれ図３８におけるステップＳ１０１〜Ｓ１１２の処理と同様である。
【０４４９】
＜＜ステップＳ１１２ａ＞＞
Ｗｅｂサーバ２０ａの画像管理部５１４は、ＭＦＰ１０から通信部５１１を介して読み取り画像を受信すると、当該読み取り画像を記憶部５１２に画像ログとして記憶させる。
【０４５０】
＜＜ステップＳ１１３〜Ｓ１２７＞＞
図４３におけるステップＳ１１３〜Ｓ１２７の処理は、それぞれ図３８におけるステップＳ１１３〜Ｓ１２７の処理と同様である。
【０４５１】
このように、スキャン動作、画像処理および印刷動作の一連の動作において、Ｗｅｂサーバ２０ａ側で画像ログを記憶しておくことができるので、どのような画像が取り扱われたのかを一括で管理することができ、情報漏洩に対するセキュリティを強化することが可能になる。また、上述のように、処理後画像を画像ログとして記憶してもよく、この場合は、実際に印刷媒体に印刷出力される画像が画像ログとして残せることになる。
【０４５２】
（変形例２）
以下、図４４を参照しながら、本実施形態の変形例２に係る画像処理システムについて、本実施形態に係る画像処理システム１と相違する点を中心に説明する。なお、本変形例に係るＭＦＰ１０のハードウェア構成の構成、ならびにＷｅｂサーバのハードウェア構成および機能ブロックは、上述の実施形態で説明したそれぞれの構成と同様である。
【０４５３】
図４４は、実施形態の変形例２に係る画像処理システムの機能ブロックの構成の一例を示す図である。
【０４５４】
図４４に示すように、本変形例に係るＭＦＰ１０の操作部１１は、スキャンＵＩアプリケーション４２０および印刷ＵＩアプリケーション４３０の代わりに、操作部ＡＰＩアプリケーション４９０を有するものとしてもよい。
【０４５５】
操作部ＡＰＩアプリケーション４９０は、印刷およびスキャン等の画像形成機能に関するＵＩを提供するアプリケーションプログラムである。操作部ＡＰＩアプリケーション４９０は、スキャンＵＩアプリケーション４２０および印刷ＵＩアプリケーション４３０等の画像形成機能に関するＵＩを提供するアプリケーションと同様の機能を有する。
【０４５６】
したがって、図４４に示す構成の場合、上述の実施形態および変形例１において、スキャンＵＩアプリケーション４２０および印刷ＵＩアプリケーション４３０を操作部ＡＰＩアプリケーション４９０と読み替えればよい。操作部ＡＰＩアプリケーション４９０を用いることで、印刷およびスキャン等の種々の画像形成機能に関するＵＩを統一的に提供することができる。
【０４５７】
また、操作部ＡＰＩアプリケーション４９０は、画像形成に関するＵＩを提供するアプリケーションをサードベンダ等が開発するためのＡＰＩ群を備えている。サードベンダ等は、操作部ＡＰＩアプリケーション４９０のＡＰＩ群を利用することで、ＷｅｂＡＰＩ４４０の仕様に関する知識を必要とすることなく、画像形成に関するＵＩを提供するアプリケーションを容易に開発することができるようになる。すなわち、操作部ＡＰＩアプリケーション４９０は、ＷｅｂＡＰＩ４４０をラッピングしたＡＰＩ群をサードベンダ等に提供するアプリケーションプログラムとも言うことができる。
【０４５８】
なお、図４４に示す構成では、操作部１１が、スキャンＵＩアプリケーション４２０および印刷ＵＩアプリケーション４３０の代わりに、操作部ＡＰＩアプリケーション４９０を有している構成を示したが、これに限られない。すなわち、操作部１１は、スキャンＵＩアプリケーション４２０および印刷ＵＩアプリケーション４３０に加えて、操作部ＡＰＩアプリケーション４９０を有していてもよい。
【０４５９】
なお、上述の実施形態および各変形例では、操作部１１と本体１２とは、別々のオペレーティングシステムで、互いに独立して動作しているが、これに限定されるものではなく、例えば、同じオペレーティングシステムで動作する形態であってもよい。
【０４６０】
また、上述の実施形態および各変形例において、ＭＦＰ１０およびＷｅｂサーバ２０（２０ａ）の各機能部の少なくともいずれかがプログラムの実行によって実現される場合、そのプログラムは、ＲＯＭ等に予め組み込まれて提供される。また、上述の実施形態および各変形例に係るＭＦＰ１０およびＷｅｂサーバ２０（２０ａ）で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ−Ｒｅｃｏｒｄａｂｌｅ）、またはＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。また、上述の実施形態および各変形例に係るＭＦＰ１０およびＷｅｂサーバ２０（２０ａ）で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上述の実施形態および各変形例に係るＭＦＰ１０およびＷｅｂサーバ２０（２０ａ）で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、上述の実施形態および各変形例に係るＭＦＰ１０およびＷｅｂサーバ２０（２０ａ）で実行されるプログラムは、上述した各機能部のうち少なくともいずれかを含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵが上述の記憶装置からプログラムを読み出して実行することにより、上述の各機能部が主記憶装置上にロードされて生成されるようになっている。
【０４６１】
また、上述の実施形態および各変形例に係るＭＦＰ１０は、通信機能を備えた装置であれば、画像形成装置に限られない。すなわち、ＭＦＰ１０の代わりに、例えば、ＰＪ（Ｐｒｏｊｅｃｔｏｒ：プロジェクタ）、ＩＷＢ（Ｉｎｔｅｒａｃｔｉｖｅ  Ｗｈｉｔｅ  Ｂｏａｒｄ：相互通信が可能な電子式の黒板機能を有する白板）、デジタルサイネージ等の出力装置、ＨＵＤ（Ｈｅａｄ  Ｕｐ  Ｄｉｓｐｌａｙ）装置、産業機械、製造装置、撮像装置、集音装置、医療機器、ネットワーク家電、ノートＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、携帯電話、スマートフォン、タブレット端末、ゲーム機、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、デジタルカメラ、ウェアラブルＰＣまたはデスクトップＰＣ等であってもよい。
【０４６２】
また、上述の実施形態および各変形例での各機能は、一または複数の処理回路によって実現することが可能である。ここで、「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上述した各機能を実行するよう設計されたＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や従来の回路モジュール等のデバイスを含むものとする。
【０４６３】
なお、ＭＦＰ等を操作する操作装置としてユーザのＰＣ端末、携帯端末、スマートフォン等の情報処理端末にブラウザアプリを搭載するようにしてもよい。また、サーバ装置は、機能ごとに１台の装置、または、複数のサーバ装置を用いたサーバシステムによって、クラウドサービスやＷｅｂサービスを提供してもよい。
【０４６４】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【０４６５】
１        画像処理システム
１０      画像処理装置
２０      Ｗｅｂサーバ
３０      メールサーバ
４０      情報処理装置
３１０    Ｗｅｂブラウザ
３１１    ブラウザ機能部
３１２    制御部
３１３    ＵＩ部
３１４    解釈部
３２０    印刷ＵＩアプリケーション
３３０    スキャンＵＩアプリケーション
３４０    ＷｅｂＡＰＩ
３５０    印刷アプリケーション
３６０    スキャンアプリケーション
３７０    印刷サービス部
３８０    スキャンサービス部
３９０    メール送信アプリケーション
３９１    メールサービス部
３９２    メールＵＩアプリケーション
１        画像処理システム
１０      画像処理装置
２０      Ｗｅｂサーバ
３０      ファクス受信機
４０      情報処理装置
３１０    Ｗｅｂブラウザ
３１１    ブラウザ機能部
３１２    制御部
３１３    ＵＩ部
３１４    解釈部
３２０    印刷ＵＩアプリケーション
３３０    スキャンＵＩアプリケーション
３４０    ＷｅｂＡＰＩ
３５０    印刷アプリケーション
３６０    スキャンアプリケーション
３７０    印刷サービス部
３８０    スキャンサービス部
３９０    ファクス送信アプリケーション
１、１ａ  画像処理システム
１０、１０ａ、１０ｂ  ＭＦＰ
１１  操作部
１２  本体
１３  通信路
２０、２０ａ  Ｗｅｂサーバ
１１１  ＣＰＵ
１１２  ＲＯＭ
１１３  ＲＡＭ
１１４  フラッシュメモリ
１１５  操作パネル
１１６  接続Ｉ／Ｆ
１１７  通信Ｉ／Ｆ
１１８  バス
１２１  ＣＰＵ
１２２  ＲＯＭ
１２３  ＲＡＭ
１２４  ストレージ
１２５  スキャナエンジン
１２６  プリンタエンジン
１２７  接続Ｉ／Ｆ
１２８  通信Ｉ／Ｆ
１２９  バス
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０５  補助記憶装置
２０６  記録メディア
２０７  メディアドライブ
２０８  ディスプレイ
２０９  ネットワークＩ／Ｆ
２１０  バスライン
２１１  キーボード
２１２  マウス
２１３  ＤＶＤ
２１４  ＤＶＤドライブ
３１１  アプリ層
３１２  サービス層
３１３  ＯＳ層
３２１  アプリ層
３２２  サービス層
３２３  ＯＳ層
４１０  Ｗｅｂブラウザ
４１１  ブラウザ機能部
４１２  制御部
４１３  ＵＩ部
４１４  解釈部
４１５  通信部
４１６  入力部
４１７  表示部
４２０  スキャンＵＩアプリケーション
４３０  印刷ＵＩアプリケーション
４４０  ＷｅｂＡＰＩ
４５０  スキャンアプリケーション
４６０  印刷アプリケーション
４７０  スキャンサービス部
４８０  印刷サービス部
４９０  操作部ＡＰＩアプリケーション
５１１  通信部
５１２  記憶部
５１３  画像処理部
５１４  画像管理部
１００１  設定画面
１００２  スキャン中画面
１００３  印刷中画面
Ｎ  ネットワーク
【先行技術文献】
【特許文献】
【０４６６】
【特許文献１】特開２０１１−２５９４６４号公報
【図１】
2020096340.tif 000003
【図２】
2020096340.tif 000004
【図３】
2020096340.tif 000005
【図４】
2020096340.tif 000006
【図５】
2020096340.tif 000007
【図６】
2020096340.tif 000008
【図７】
2020096340.tif 000009
【図８】
2020096340.tif 000010
【図９】
2020096340.tif 000011
【図１０】
2020096340.tif 000012
【図１１】
2020096340.tif 000013
【図１２】
2020096340.tif 000014
【図１３】
2020096340.tif 000015
【図１４】
2020096340.tif 000016
【図１５】
2020096340.tif 000017
【図１６】
2020096340.tif 000018
【図１７】
2020096340.tif 000019
【図１８】
2020096340.tif 000020
【図１９】
2020096340.tif 000021
【図２０】
2020096340.tif 000022
【図２１】
2020096340.tif 000023
【図２２】
2020096340.tif 000024
【図２３】
2020096340.tif 000025
【図２４】
2020096340.tif 000026
【図２５】
2020096340.tif 000027
【図２６】
2020096340.tif 000028
【図２７】
2020096340.tif 000029
【図２８】
2020096340.tif 000030
【図２９】
2020096340.tif 000031
【図３０】
2020096340.tif 000032
【図３１】
2020096340.tif 000033
【図３２】
2020096340.tif 000034
【図３３】
2020096340.tif 000035
【図３４】
2020096340.tif 000036
【図３５】
2020096340.tif 000037
【図３６】
2020096340.tif 000038
【図３７】
2020096340.tif 000039
【図３８】
2020096340.tif 000040
【図３９】
2020096340.tif 000041
【図４０】
2020096340.tif 000042
【図４１】
2020096340.tif 000043
【図４２】
2020096340.tif 000044
【図４３】
2020096340.tif 000045
【図４４】
2020096340.tif 000046