以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
図1は、本発明の実施の形態の1つにおける画像形成システムの全体概要の一例を示す図である。図1を参照して、画像形成システム1は、サーバー300,300Aと、ゲートウェイ(G/W)装置200と、複合機であるMFP(Multi Function Peripheral)100,100A,100Bと、を含む。サーバー300,300Aおよびゲートウェイ装置(G/W)200それぞれは、インターネット5に接続されており、インターネット5を介して互いに通信可能である。さらに、サーバー300,300A、およびゲートウェイ装置200それぞれは、インターネット5に接続された他のコンピューターと通信可能である。
ゲートウェイ装置200は、さらに、ローカルエリアネットワーク(LAN)3と接続されており、そのLAN3に、MFP100,100A,100Bが接続されている。ゲートウェイ装置200は、LAN3に接続されたMFP100,100A,100Bと通信可能である。さらに、ゲートウェイ装置200およびMFP100,100A,100Bそれぞれは、LAN3に接続された他のコンピューターと通信可能である。
ゲートウェイ装置200は、LAN3と、インターネット5とを接続する。このため、サーバー300,300Aは、MFP100,100A,100Bとのいずれかと通信が可能である。
ゲートウェイ装置200、サーバー300,300Aのハードウェア構成および機能は周知なので、ここでは説明を繰り返さない。サーバー300,300Aは、Webサーバーとして機能する。
MFP100,100A,100Bのハードウェア構成および機能は、基本的に同じである。したがって、以下の説明では特に言及しない限りMFP100を例に説明する。
図2は、本実施の形態の1つにおけるMFPの外観を示す斜視図である。図3は、本実施の形態におけるMFPのハードウェア構成の概要を示すブロック図である。図2および図3を参照して、画像形成装置として機能するMFP100は、メイン回路110と、原稿を読み取るための原稿読取部130と、原稿を原稿読取部130に搬送するための自動原稿搬送装置120と、原稿読取部130が原稿を読み取って出力する画像データに基づいて用紙等に画像を形成するための画像形成部140と、画像形成部140に用紙を供給するための給紙部150と、ユーザーインターフェースとしての操作パネル160とを含む。また、MFP100は、コインベンダ180と接続されている。
自動原稿搬送装置120は、原稿トレイ125上にセットされた複数枚の原稿を1枚ずつ自動的に原稿読取部130のプラテンガラス上に設定された所定の原稿読み取り位置まで搬送し、原稿読取部130により原稿に形成された画像が読み取られた原稿を原稿排紙トレイ127上に排出する。原稿読取部130は、原稿読取位置に搬送されてきた原稿に光を照射する光源と、原稿で反射した光を受光する光電変換素子とを含み、原稿のサイズに応じた原稿画像を走査する。光電変換素子は、受光した光を電気信号である画像データに変換して、画像形成部140に出力する。給紙部150は、給紙トレイに収納された用紙を画像形成部140に搬送する。
画像形成部140は、周知の電子写真方式により画像を形成するものであって、原稿読取部130から入力される画像データにシェーディング補正などの各種のデータ処理を施した、データ処理後の画像データまたは、外部から受信された画像データに基づいて、給紙部150により搬送される用紙に画像を形成し、画像を形成した用紙を排紙トレイ155に排出する。
メイン回路110は、MFP100の全体を制御するCPU111と、通信インターフェース(I/F)部112と、ROM113と、RAM114と、大容量記憶装置としてのハードディスクドライブ(HDD)115と、ファクシミリ部116と、外部記憶装置117と、を含む。CPU111は、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150、操作パネル160およびコインベンダー180と接続され、MFP100の全体を制御する。
ファクシミリ部116は、公衆交換電話網(PSTN)に接続され、PSTNにファクシミリデータを送信する、またはPSTNからファクシミリデータを受信する。ファクシミリ部116は、受信したファクシミリデータを、HDD115に記憶するとともに、画像形成部140でプリント可能なプリントデータに変換して、画像形成部140に出力する。これにより、画像形成部140は、ファクシミリ部116により受信されたファクシミリデータを用紙に画像を形成する。また、ファクシミリ部116は、HDD115に記憶されたデータをファクシミリデータに変換して、PSTNに接続されたファクシミリ装置に送信する。
通信I/F部112は、LAN3にMFP100を接続するためのインターフェースである。通信I/F部112は、TCP(Transmission Control Protocol)またはFTP(File Transfer Protocol)等の通信プロトコルで、LAN3に接続された他のMFP100A,100B、または、G/W装置200を介して、サーバー300,300Aと通信する。なお、通信I/F部112が接続されるネットワークは、LAN3に限らず、ワイドエリアネットワーク(WAN)、公衆交換電話網(PSTN)、インターネット5等であってもよい。
ROM113は、CPU111が実行するプログラム、またはそのプログラムを実行するために必要なデータを記憶する。RAM114は、CPU111がプログラムを実行する際の作業領域として用いられる。また、RAM114は、原稿読取部130から連続的に送られてくる画像データを一時的に記憶する。
操作パネル160は、MFP100の上面に設けられる。操作パネル160は、表示部161と操作部163とを含む。表示部161は、例えば、液晶表示装置(LCD)であり、ユーザーに対する指示メニューや取得した画像データに関する情報等を表示する。なお、LCD165に代えて、画像を表示する装置であれば、例えば、有機EL(electroluminescence)ディスプレイを用いることができる。
操作部163は、タッチパネル165と、ハードキー部167とを含む。タッチパネル165は、静電容量方式である。なお、タッチパネル165は、静電容量方式に限らず、例えば、抵抗膜方式、表面弾性波方式、赤外線方式、電磁誘導方式等の他の方式を用いることができる。
タッチパネル165は、その検出面が表示部161の上面または下面に表示部161に重畳して設けられる。ここでは、タッチパネル165の検出面のサイズと、表示部161の表示面のサイズとを同じにしている。このため、表示面の座標系と検出面の座標系は同じである。タッチパネル165は、ユーザーが、表示部161の表示面を指示する位置を検出面で検出し、検出した位置の座標をCPU111に出力する。表示面の座標系と検出面の座標系は同じなので、タッチパネル165が出力する座標を、表示面の座標に置き換えることができる。以下、ユーザーが表示部161の表示面を指示することによりタッチパネル165が検出面で検出して出力する座標を、表示面の座標ともいう。
ハードキー部167は、複数のハードキーを含む。ハードキーは、例えば接点スイッチである。ユーザーがMFP100を操作する場合は直立した姿勢となる場合が多いので、表示部161の表示面、タッチパネル165の検出面およびハードキー部167は、上方を向いて配置される。ユーザーが表示部161の表示面を容易に視認することができ、ユーザーが指で操作部163を容易に指示することができるようにするためである。
外部記憶装置117は、CPU111により制御され、CD−ROM(Compact Disk Read Only Memory)118、または半導体メモリが装着される。本実施の形態においては、CPU111は、ROM113に記憶されたプログラムを実行する例を説明するが、CPU111は、外部記憶装置117を制御して、CD−ROM118からCPU111が実行するためのプログラムを読出し、読み出したプログラムをRAM102に記憶し、実行するようにしてもよい。
なお、CPU111が実行するためのプログラムを記憶する記録媒体としては、CD−ROM118に限られず、フレキシブルディスク、カセットテープ、光ディスク(MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、ICカード、光カード、マスクROM、EPROM(Erasable Programmable ROM)、EEPROM(Electrically EPROM)などの半導体メモリ等の媒体でもよい。さらに、CPU111がネットワークに接続されたコンピューターからプログラムをダウンロードしてHDD115に記憶する、または、ネットワークに接続されたコンピューターがプログラムをHDD115に書込みするようにして、HDD115に記憶されたプログラムをRAM114にロードしてCPU111で実行するようにしてもよい。ここでいうプログラムは、CPU111により直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
コインベンダ180は、コイン投入口181と返却ボタン183と、表示部185と、コイン返却口187とを含む。コインベンダ180は、コイン投入口181に投入されるコインを受け付け、投入されるコインで定まる額を残金に加算し、残金を更新する。また、コインベンダ180は、MFP100により制御され、MFP100から料金の徴収指示を受信すると、徴収指示により定まる額を残金から減算し、残金を更新する。コインベンダ180は、表示部185に残金を表示するとともに、MFP100に残金を通知する。また、コインベンダ180は、残金が残っている段階で、返却ボタン183が押下されると、残金に相当する枚数のコインをコイン返却口187に排出する。
図4は、本実施の形態におけるMFPが備えるCPUが有する機能の一例を示すブロック図である。図4に示す機能は、MFP100が備えるCPU111が、ROM113、HDD115またはCD−ROM118に記憶されたブラウザ起動プログラムおよびブラウジングプログラムを実行することにより、CPU111に形成される機能である。図4を参照して、MFP100が備えるCPU111は、起動部51と、第1ブラウジング部53と、第2ブラウジング部55と、中間制御部57と、画像処理制御部59と、広告表示部71と、操作要求部73と、課金部75と、を含む。
画像処理制御部59は、コマンドが入力されることに応じて、画像を処理するハードウェア資源を制御する。画像を処理するためのハードウェア資源は、原稿読取部130、画像形成部140およびファクシミリ部116を、少なくとも含む。また、画像を処理するハードウェア資源は、原稿読取部130またはファクシミリ部116とともに制御される場合のある自動原稿搬送装置120と、画像形成部140またはファクシミリ部116とともに制御される場合がある給紙部150と、を含む。
第1ブラウジング部53および第2ブラウジング部55は、CPU111がブラウジングプログラムを実行するタスクである。第1ブラウジング部53および第2ブラウジング部55は、同時に存在することなく、いずれか一方が存在する。なお、第1ブラウジング部53および第2ブラウジング部55は、同時に存在するようにしてもよいが、この場合には、第1ブラウジング部53および第2ブラウジング部55のいずれか一方が、表示部161に画像を表示可能で、かつ、ユーザーによる操作を受け付け可能なカレント状態となる。
起動部51は、ユーザーによる指示を受け付けることに応じて、ブラウジングプログラムを第1のモードまたは第2のモードで起動する。表示部161に、第1のモードでブラウジングプログラムの起動を指示するための第1ボタンを表示し、操作部163がユーザーによる第1ボタンを指示する操作を受け付けると、ブラウジングプログラムを第1のモードで起動する。起動部51がブラウジングプログラムを第1のモードで起動する場合、CPU111は、ROM113、HDD115またはCD−ROM118に記憶されたブラウジングプログラムをRAM114にロードして第2のモードで実行する。こにより、第1ブラウジング部53がCPU111に形成される。換言すれば、第1ブラウジング部53は、CPU111がブラウジングプログラムを第1のモードで実行するタスクである。
また、起動部51は、表示部161に、第2のモードでブラウジングプログラムの起動を指示するための第2ボタンを表示し、操作部163がユーザーによる第2ボタンを指示する操作を受け付けると、ブラウジングプログラムを第2のモードで起動する。起動部51がブラウジングプログラムを第2のモードで起動する場合、CPU111は、ROM113、HDD115またはCD−ROM118に記憶されたブラウジングプログラムをRAM114にロードして第2のモードで実行する。こにより、第2ブラウジング部55がCPU111に形成される。換言すれば、第2ブラウジング部55は、CPU111がブラウジングプログラムを第2のモードで実行するタスクである。
第1ブラウジング部53は、予め定められたWebサーバーに接続可能である。第1ブラウジング部53が接続可能なWebサーバーは、予め定められた処理を実行するサービスを提供するサーバーとして、管理者によってMFP100に予め登録されたサーバーである。ここでは、第1ブラウジング部53が接続可能なWebサーバーとしてWebサーバー300が登録されている場合を例に説明する。Webサーバー300が提供するサービスは、限定するものではないが、例えば、文字を認識する文字認識処理を実行するサービス、画像を先鋭化する処理、スムージング処理等の画像処理を実行するサービス、文字を翻訳する処理を実行するサービス、を含む。
第1ブラウジング部53は、起動部51によって起動される場合に、接続先のWebサーバー300に記憶されたWebページのURLが渡される。URLは、引数として起動部51から受け取るようにしてもよいし、RAM114またはHDD115の予め定められた領域に起動部51が書き込んだURLを読み出すようにしてもよい。第1ブラウジング部53は、起動部51から第1のボタンに関連付けられたURLが引き渡される場合、通信I/F部112を制御して、URLで特定されるWebサーバー300にURLで特定されるWebページを要求し、通信I/F部112がWebサーバー300により返信されるWebページを受信すると、受信されたWebページを解析して画像を生成し、生成された画像を表示部161に表示する。さらに、第1ブラウジング部53は、表示部161にWebページが表示された状態で、ユーザーが操作部163に入力する操作を受け付ける場合、操作に対応してWebページで定められたコマンドを通信I/F部112を介してWebサーバー300に送信する。
第1ブラウジング部53がWebサーバー300と接続する場合に、表示部161に表示するWebページは、Webサーバー300から取得されるWebページのみであり、表示部161に表示されたWebページで定められたコマンドを出力する先は、Webサーバー300のみである。換言すれば、第1ブラウジング部53がWebサーバー300と接続する場合に、第1ブラウジング部53が表示部161に表示するWebページは、Webサーバー300を制御するためのWebページであり、そのWebページは、Webサーバー300に出力されるコマンドを含む。なお、ここでの、Webサーバー300は、Webサーバー300が送信するWebページが別のWebサーバーのWebページへのリンクを含む場合は、別のWebサーバーをWebサーバー300と同一として取り扱っている。
第1ブラウジング部53は、Webサーバー300から取得されるWebページを解析して生成する画像を表示部161に表示し、Webページの表示に関する操作を受け付けるための画像を表示部161に表示しない。換言すれば、第1ブラウジング部53が表示部161に表示する画像は、Webサーバー300から受信するWebページの画像を含むページ部分のみを含み、Webサーバー300に対する操作のみを受け付け可能な画像である。Webページの表示に関する操作は、例えば、別のWebページのURLを入力する操作、現在表示しているWebページの前または後に表示されていたWebページを表示させる操作、予め登録された1以上のURLを選択する操作、過去に表示されたWebページのURLを選択する操作、現在表示されているWebページをプリントさせる操作、新たなタブまたはウィンドウで別のWebページを表示させる操作、Webページの文字のサイズまたはフォントを変更する操作等を含む。
Webサーバー300は、MFP100から受信するコマンドに基づいて処理を実行した結果得られるデータに対して、MFP100に画像処理を実行させるために、APIコマンドをMFP100に送信する場合がある。Webサーバー300がMFP100に送信するAPIコマンドは、MFP100を製造するメーカーにより予め定められたAPIコマンドのうち公開されたAPIコマンドである。
中間制御部57は、画像処理制御部59にAPIコマンドを出力し、画像を処理するハードウェア資源を画像処理制御部59に制御させる。中間制御部57は、外部制御部63を含む。外部制御部63は、通信I/F部112が外部の装置、例えばWebサーバー300からAPIコマンドを受信する場合、受信されたAPIコマンドを画像処理制御部59に出力する。
第2ブラウジング部55は、任意のWebサーバーに接続可能である。第2ブラウジング部55は、起動部51によって起動される場合に、ユーザーにより指定されたURLで特定されるWebページを要求するコマンドを、URLで特定される外部のWebサーバーに通信I/F部112を介して送信する。第2ブラウジング部55は、Webページの要求に応じて通信I/F部112がWebサーバーから受信するWebページを取得し、取得されるWebページを解析して画像を生成し、生成された画像を表示部161に表示する。第2ブラウジング部55がWebページを要求するWebサーバーは、ユーザーにより指定されたURLで特定される。ここでは、ここでは、Webサーバー300Aが、ユーザーにより指定されたURLで特定される場合を例に説明する。
第2ブラウジング部55がWebページを要求するWebサーバー300Aは、APIコマンドをMFP100に送信しない。第2ブラウジング部55は、Webサーバー300Aから取得されるWebページを解析して生成する画像を表示部161に表示するとともに、表示されたWebページの表示に関する操作を受け付けるための画像を表示部161に表示する。換言すれば、第2のブラウジング部55が表示部161に表示する画像は、Webサーバー300Aから受信するWebページの画像を含むページ部分と、Webページの表示に関する操作を受け付ける画像を含む操作部分と、を含む。このため、第2ブラウジング部55は、表示部161に表示された画像中の操作部分で、例えば、現在表示されているWebページをプリントさせる操作を受け付ける場合、画像処理制御部59に現在表示されているWebページのプリントを指示するコマンドを出力する。このコマンドは、ブラウジングプログラムによって予め定められたコマンドであり、APIコマンドであってもよい。
起動部51は、初期化部61を含む。初期化部61は、第1のモードでブラウジングプログラムを起動する場合に画像処理制御部59を第1の設定値で初期化し、第2のモードでブラウジングプログラムを起動する場合に画像処理制御部59を第2の設定値で初期化する。第1の設定値と第2の設定値とは異なる。例えば、印刷レイアウトの設定値を初期化する場合、第1の設定値は複数ページの画像を1枚の用紙に形成する「Nin1」(Nは2以上の偶数)であり、第2の設定値を1ページの画像を1枚の用紙に形成する「1in1」である。また、画像を形成する色数の設定値を初期化する場合、第1の設定値は単色であり、第2の設定値は複数色である。
起動部51は、第2のモードでブラウジングプログラムを起動する前の段階で、操作要求部73に要求指示を出力する。操作要求部73は、起動部51から要求指示が入力されることに応じて、MFP100を操作するユーザーに所定の操作を要求する。所定の操作は、第2のモードでブラウジングプログラムを起動する場合に対応して予め定められた操作である。ここでは、第2ブラウジング部55は、課金または課金に代わる広告の閲覧を条件に、機能する。このため、操作要求部73は、ユーザーに料金を投入する操作、または広告を閲覧する操作を要求する。操作の要求は、メッセージでユーザーに通知するようにしてもよいし、音声で通知するようにしてもよい。
操作要求部73は、第2ブラウジング部55が課金を条件に機能するように設定されている場合、課金部75に課金指示を出力する。課金部75は、課金指示が入力されることに応じて、コインベンダ180を制御して、残高を取得し、取得した残金が予め定められた額以上の場合に起動部51に許可信号を出力するが、取得した残金が予め定められた額より小さい場合に起動部51に不許可信号を出力する。起動部51は、操作要求部73に要求指示を出力した後に、課金部75から許可信号が入力されることを条件に、第2のモードでブラウジングプログラムを起動し、その後、課金部74から不許可信号が入力されると、第2ブラウジング部55に終了指示を出力する。第2ブラウジング部55は、起動部51に起動された後に、起動部から終了指示が入力されることに応じて、機能を停止し、Webページの表示を終了する。
また、操作要求部73は、第2ブラウジング部55が課金を条件に機能するように設定されている場合、コインベンダ180から取得された残高を、表示部161に表示する。これにより、残高が不足しているか否かをユーザーに通知することができる。また、操作要求部73は、残高に対してWebページを閲覧するために残された時間を表示する。これにより、ユーザーに閲覧可能な時間を通知することができる。ユーザーは、必要に応じてコインベンダ180にコインを投入すればよい。さらに、課金部75が、プリント処理に対して課金する場合には、操作要求部73は、残高に対してプリント可能な枚数を算出し、算出された枚数を、プリント可能枚数として表示部161に表示する。これにより、ユーザーに、プリント可能なWebページのページ数を通知することができる。
操作要求部73は、第2ブラウジング部55が広告の閲覧を条件に機能するように設定されている場合、広告表示部71に広告表示指示を出力する。広告表示部71は、広告表示指示が入力されることに応じて、広告のための画像を取得し、表示部161に取得された画像を表示する。広告のための画像は、HDD115に記憶された画像であってもよいし、インターネット5に接続されたコンピューターからダウンロードした画像またはストリーミング配信される画像であってもよい。画像は、動画像の他、静止画像を含む。広告表示部71は、動画像の再生が終了する場合、または静止画像が予め定められた時間表示される場合に起動部51に許可信号を出力する。起動部51は、操作要求部73に要求指示を出力した後に、広告表示部71から許可信号が入力されることを条件に、第2のモードでブラウジングプログラムを起動する。
図5は、第1のモードで表示される画像の一例を示す図である。図5を参照して、画像500は、Webサーバー300から受信されるWebページに基づいて生成される画像であるページ部分501のみを含む。
図6は、第2のモードで表示される画像の一例を示す第1の図である。図6を参照して、画像510は、Webページの表示に関する操作を受け付ける画像を含む操作部分511と、Webサーバー300から受信されるWebページに基づいて生成される画像であるページ部分513と、を含む。
図7は、第2のモードで表示される画像の一例を示す第2の図である。図7を参照して、画像520は、図6に示した画像510に、料金に関する情報を表示する領域531が重畳して表示した画像である。領域531は「残時間300秒(サービス印刷モノクロ1枚) 額50円(60秒/10円)」の文字列からなるメッセージを含む。これにより、残金が50円であること、60秒間閲覧するための単価が10円であること、閲覧するために残された時間が300秒であり、モノクロで印刷可能な枚数が1枚であることを、ユーザーに通知することができる。
図8は、本実施の形態における操作受付処理の流れの一例を示すフローチャートである。操作受付処理は、MFP100が備えるCPU111が、ROM113、HDD115またはCD−ROM118に記憶された操作受付プログラムを実行することにより、CPU111により実行される処理である。図8を参照して、MFP100が備えるCPU111は、表示部161に操作画面を表示する(ステップS01)。操作画面は、HDD115に予め記憶された画面である。これにより、ユーザーは、操作部163に操作を入力することが可能となる。次のステップS02においては、操作を受け付けたか否かを判断する。操作部163が操作を受け付けるまで待機状態となり(ステップS02でNO)、操作部163が操作を受け付けたならば処理をステップS03に進める(ステップS03)。ここで受け付けるユーザーによる操作は、操作画面中を指示する操作である。ステップS03において、ステップS02において受け付けられた操作が、操作画面中の第1のボタンまたは第2のボタンを指示する操作か否かを判断する。第1のボタンまたは第2のボタンを指示する操作を受け付けたならば処理をステップS04に進めるが、そうでなければ処理をステップS05に進める。ステップS04においては、ブラウザ起動処理を実行し、処理をステップS01に戻す。
ステップS05においては、ステップS02において受け付けられた操作に対応する処理を実行し、処理をステップS01に戻す。ステップS02において受け付ける操作は、設定値を設定する設定操作、操作画面を別の操作画面に切り換える画面遷移操作、処理の実行を指示する実行指示操作としている。なお、ユーザーによる操作は、これらに限定することなく、別の操作を受け付けるようにしてもよい。設定操作を受け付ける場合は、設定値を設定し、処理をステップS01に戻す。画面遷移操作を受け付ける場合は、画面遷移操作で特定される操作画面をHDD115から読み出し、処理をステップS01に戻す。実行指示操作を受け付ける場合は、実行指示操作で特定される処理を、その時点で設定されている設定値に従って実行し、処理をステップS01に戻す。
図9は、本実施の形態におけるブラウザ起動処理の流れの一例を示すフローチャートである。ブラウザ起動処理は、図8のステップS04において実行される処理であり、MFP100が備えるCPU111が、ROM113、HDD115またはCD−ROM118に記憶されたブラウザ起動プログラムを実行することにより、CPU111により実行される処理である。図9を参照して、MFP100が備えるCPU111は、ユーザーにより入力された操作が、第1のボタンを指示する操作か否かを判断する(ステップS11)。第1のボタンを指示する操作ならば処理をステップS12に進めるが、そうでなければ処理をステップS16に進める。ステップS16においては、ユーザーにより入力された操作が、第2のボタンを指示する操作か否かを判断する。第2のボタンを指示する操作ならば処理をステップS17に進めるが、そうでなければ処理を操作受付処理に戻す。
ステップS12においては、ブラウジングプログラムに渡す引数に、第1のボタンに割り当てられたURLを設定し、処理をステップS13に進める。そして、ステップS13においては、第1の設定値を設定し、処理をステップS14に進める。第1の設定値は、画像処理を実行するための設定値として、第1のモードに対して予め定められた値である。
ステップS14においては、第1のモードでブラウジングプログラムを起動し、処理をステップS15に進める。具体的には、ROM113、HDD115またはCD−ROM118に記憶されたブラウジングプログラムを、第1のモードで実行する。CPU111が第1のモードで、ブラウジングプログラムを実行する場合、表示部161に表示される画像は、ステップS12において設定されたURLで特定されるWebサーバーから受信するWebページの画像を含むページ部分のみを含み、Webページの表示に関する操作を受け付ける画像を含む操作部分を含まない。このため、第1のモードでブラウジングプログラムを実行した後は、ユーザーが操作部163に入力する操作は、CPU111がブラウジングプログラムを実行するタスクが、ステップS12において設定されたURLで特定されるWebサーバーに送信するので、CPU111は、ユーザーが操作部163に入力する操作をWebサーバーに対する操作として取り扱い、MFP100に対する操作としては受け付けない。
次のステップS15においては、第1のモードで起動したブラウジングプログラムが終了したか否かを判断する。CPU111がブラウジングプログラムを実行するタスクの状態を監視しておき、そのタスクが終了した場合に、第1のモードで起動したブラウジングプログラムが終了したと判断する。第1のモードで起動したブラウジングプログラムが終了する場合は、例えば、通信I/F部112がWebサーバーとの間の通信を終了する場合、また、第1のモードで起動したブラウジングプログラムがWebサーバーから終了のための信号を受信する場合、また、WebサーバーからAPIコマンドを受信する場合である。第1のモードで起動したブラウジングプログラムが終了するまで待機状態となり(ステップS15でNO)、第1のモードで起動したブラウジングプログラムが終了したならば(ステップS15でYES)、処理を操作受付処理に戻す。
一方、第2のボタンを指示する操作を受け付ける場合、処理はステップS17に進む。ステップS17においては、ブラウジングプログラムに渡す引数に、デフォルトとして定められたURLを設定し、処理をステップS18に進める。
ステップS18においては、課金設定がされているか否かを判断する。課金設定は、所定の料金が支払われることを条件に、第2のモードでブラウジングプログラムを起動する設定である。課金設定がされているならば処理をステップS19に進めるが、そうでなければ処理をステップS28に進める。ステップS19においては、ユーザーに操作を要求する。ここでは、料金の投入をユーザーに要求する。例えば、表示部161にコインベンダ180に料金の投入を促すメッセージを表示する。次のステップS20においては、コインベンダ180の残高がしきい値TH以上か否かを判断する。コインベンダ180の残高がしきい値TH以上ならば処理をステップS21に進めるが、そうでなければ処理を操作受付処理に戻す。
ステップS21においては、第2の設定値を設定し、処理をステップS22に進める。第2の設定値は、画像処理を実行するための設定値として、第2のモードに対して予め定められた値である。ステップS22においては、第2のモードでブラウジングプログラムを起動し、処理をステップS23に進める。具体的には、ROM113、HDD115またはCD−ROM118に記憶されたブラウジングプログラムを、第2のモードで実行する。CPU111が第2のモードで、ブラウジングプログラムを実行する場合、表示部161に表示される画像は、Webサーバーから受信するWebページの画像を含むページ部分と、Webページの表示に関する操作を受け付ける画像を含む操作部分とを含む。このため、ユーザーが操作部163に入力する操作は、ページ部分に対応する操作と、操作部分に対応する操作と、を含む。
CPU111は、第2のモードでブラウジングプログラムを実行した後は、ページ部分に対応する操作を受け付ける場合は、CPU111がブラウジングプログラムを実行するタスクが、Webページを送信してきたWebサーバーに送信するので、CPU111は、ユーザーが操作部163に入力する操作をWebサーバーに対する操作として取り扱い、MFP100に対する操作としては受け付けない。
また、CPU111は、第2のモードでブラウジングプログラムを実行した後は、操作部分に対応する操作を受け付ける場合は、CPU111がブラウジングプログラムを実行するタスクが、Webページの表示に関する操作として受け付け、受け付けられた操作に従った処理を実行する。例えば、Webページの表示に関する操作として、別のWebページのURLを入力する操作を受け付ける場合には、受け付けられたURLで特定されるWebページを取得して、Webページに基づいて画像を生成し、生成された画像を表示部161に表示する。また、現在表示しているWebページの前または後に表示されていたWebページを表示させる操作を受け付ける場合には、現在表示しているWebページの前または後に表示されていたWebページを表示部161に表示する。予め登録された1以上のURLを選択する操作、または過去に表示されたWebページのURLを選択する操作を受け付ける場合には、選択されたURLで特定されるWebページを取得して、Webページに基づいて画像を生成し、生成された画像を表示部161に表示する。また、現在表示されているWebページをプリントさせる操作を受け付ける場合には、Webページの画像を形成するためのプリントコマンドを生成し、出力する。これにより、CPU111がハードウェア資源を制御するためのプログラムを実行するタスクが、プリントコマンドに従って、Webページの画像を形成する処理を実行する。さらに、新たなタブまたはウィンドウで別のWebページを表示させる操作を受け付ける場合には、新たなタブまたはウィンドウを生成し、表示部161に表示する。さらに、Webページの文字のサイズ等の表示フォーマットを変更する操作を受け付ける場合には、Webページに基づいて新たな文字のサイズで生成した画像を表示部161に表示する。
ステップS23においては、所定時間経過したか否かを判断する。ここでは、所定時間ごとに課金するようにしているので、第2のモードでブラウジングプログラムを起動してから、または、課金してから所定時間経過したか否かを判断する。所定時間経過したならば処理をステップS24に進めるが、そうでなければ処理をステップS26に進める。ステップS26においては、第2のモードで起動したブラウジングプログラムを実行するタスクが終了したか否かを判断する。例えば、ユーザーがブラウジングを終了する操作を操作部分に入力する場合に、第2のモードで起動したブラウジングプログラムを実行するタスクが終了したと判断する。第2のモードで起動したブラウジングプログラムを実行するタスクが終了したならば処理を操作受付処理に戻すが、そうでなければ処理をステップS23に戻す。
ステップS24においては、所定の時間に対して予め定められた金額を課金し、処理をステップS25に進める。これにより、コインベンダ180の残高が予め定められた金額だけ減額した値に更新される。次のステップS25においては、コインベンダ180の残高がしきい値TH以上か否かを判断する。コインベンダ180の残高がしきい値TH以上ならば処理をステップS23に戻すが、そうでなければ処理をステップS27に進める。ステップS27においては、第2のモードで起動したブラウジングプログラムを実行するタスクを終了させ、処理を操作受付処理に戻す。
ステップS18において、課金設定がされていない場合は、HDD115に記憶された広告用の動画を表示部161に表示し(ステップS28)、処理をステップS29に進める。ステップS29においては、広告用の動画の再生が終了したか否かを判断する。終了するまで待機状態となり(ステップS28でNO)、広告用の動画の再生が終了したならば処理をステップS30に進める。ステップS30においては、ステップS21と同様に、第2の設定値を設定し、処理をステップS31に進める。ステップS31においては、ステップS22と同様に、第2のモードでブラウジングプログラムを起動し、処理をステップS32に進める。ステップS32においては、ステップS26と同様に、第2のモードで起動したブラウジングプログラムを実行するタスクが終了したか否かを判断する。第2のモードで起動したブラウジングプログラムを実行するタスクが終了するまで待機状態となり(ステップS32でNO)、第2のモードで起動したブラウジングプログラムを実行するタスクが終了したならば(ステップS32でYES)、処理を操作受付処理に戻す。
以上説明したように、本実施の形態におけるMFP100は、画像形成装置として機能し、ユーザーによる操作に基づいて制御コマンドを画像処理制御部59に出力しない第1のモードと、ユーザーによる操作に基づいて制御コマンドを画像処理制御部59に出力する第2のモードとのいずれかで、ブラウジングプログラムを実行し、第1のモードでブラウジングプログラムを実行するタスクである第1ブラウジング部53が、ハードウェア資源を制御するための指示を第1ブラウジング部53がWebページを受信する外部の装置、例えば、Webサーバー300から受信し、受信された指示に基づいて制御コマンドを画像処理制御部59に出力し、第1のモードでブラウジングプログラムを実行する場合に画像処理制御部59に第1の初期値を設定し、第2のモードでブラウジングプログラムを実行する場合に画像処理制御部59に第2の初期値を設定する。このため、画像を処理するハードウェア資源を制御するための値の初期値を、Webサーバー300により制御される場合とWebサーバー300により制御されない場合とで異ならせる。したがって、ブラウジングプログラムを実行してWebサーバー300により制御される場合とWebサーバー300により制御されない場合とで画像処理制御部59の動作を異ならせることができる。
また、第1のモードでブラウジングプログラムを実行する場合は、Webページを表示する領域であるページ部分のみを含む画像を表示し、第2のモードでブラウジングプログラムを実行する場合は、Webページに関係なく、ページ部分とユーザーによる操作を受け付ける領域である操作部分とを含む画像を表示する。このため、第1のモードでブラウジングプログラムを実行する場合は、ページ部分のみを含む画像を表示するので、Webサーバー300を制御することができる。
また、課金設定がされている場合には、ユーザーに料金の投入を要求し、要求に対してユーザーがコインベンダ180に投入した料金の残高がしきい値TH以上の場合に、第2のモードでブラウジングプログラムを実行するので、第1のモードでのブラウジングプログラムの実行を制限することができる。
また、第1のモードでブラウジングプログラムを実行するタスクである第1ブラウジング部53が表示するWebページを送信するWebサーバー300から受信される指示を受け付ける外部制御部63を含むので、Webサーバー300により制御される場合とWebサーバー300により制御されない場合とで動作を異ならせることができる。
<変形例>
変形例における画像形成システム1は、MFP100がIWS(Internal Web Server)機能を有するようにしたものである。以下、変形例における画像形成システム1について、上述した画像形成システムと異なる点を主に説明する。
図10は、変形例におけるMFPが備えるCPUが有する機能の一例を示すブロック図である。図10を参照して、図4に示す機能と異なる点は、中間制御部57が中間制御部57Aに変更された点である。中間制御部57Aは、外部制御部63に加えて、内部制御部65を含む。さらに、内部制御部65が起動部51を含む。
内部制御部65は、IWSであり、MFP100の内部のWebサーバーとして機能する。具体的には、内部制御部65は、Webページを出力する機能と、出力されたWebページに応じたコマンドを受け付ける機能、受け付けられたコマンドに基づいてAPIコマンドを生成する機能を有する。内部制御部65が出力するWebページは、MFP100を操作するための操作画面を表示するためのWebページである。HDD115に複数の操作画面にそれぞれ対応する複数のWebページが予め記憶されており、内部制御部65は、HDD115に記憶された複数のWebページのうちから1つを読み出して、出力する。内部制御部65は、それが出力するWebページに応じて受け付けるコマンドは、先に出力したWebページに埋め込まれており、操作画面を別の操作画面に切り換えを指示する画面遷移コマンド、画像処理に関する設定値の設定を指示する設定コマンド、画像処理の実行を指示する実行指示コマンドと、を含む。内部制御部65は、画面遷移コマンドを受け付ける場合、画面遷移コマンドによって定める操作画面のWebページをHDD115から読み出して、読み出されたWebページを出力する。内部制御部65は、設定コマンドを受け付ける場合、設定コマンドに従って設定値を設定するためのAPIコマンドを生成し、画像処理制御部59に出力する。画像処理制御部59は、内部制御部65から入力されるAPIコマンドにより定まる設定値を設定する。また、内部制御部65は、実行指示コマンドを受け付ける場合、実行指示コマンドに従って画像処理を実行するためのAPIコマンドを生成し、画像処理制御部59に出力する。画像処理制御部59は、内部制御部65から入力されるAPIコマンドにより定まる画像処理を実行する。
第1ブラウジング部53は、起動部51から内部制御部65のためにHDD115に記憶されたWebページのURLが引き渡される。第1ブラウジング部53は、内部制御部65に起動部51から引き渡されたURLで特定されるWebページを要求し、内部制御部65が出力するWebページを取得し、取得されるWebページを解析して画像を生成し、生成された画像を表示部161に表示する。さらに、第1ブラウジング部53は、表示部161にWebページが表示された状態で、ユーザーが操作部163に入力する操作を受け付ける場合、操作に対応してWebページで定められたコマンドを内部制御部65に出力する。
第2のモードでブラウジングプログラムの起動を指示するための第2のボタンは、第1のモードで起動した第1ブラウジング部53が内部制御部65から取得するWebページから生成される操作画面に含まれている。例えば、起動部51は、MFP100に電源が投入した時点で、ブラウジングプログラムを第1のモードで起動し、第1ブラウジング部53に、第2のボタンを含む操作画面のWebページを出力する場合である。第1ブラウジング部53は第2のボタンを指示する操作がユーザーにより受け付けられると、第2のボタンに割り当てられたコマンドを内部制御部65に出力する。内部制御部65が有する起動部51は、第1ブラウジング部53から第2のボタンに割り当てられたコマンドが入力されることに応じて、ブラウジングプログラムを第2のモードで起動する。
第1ブラウジング部53が内部制御部65と接続する場合に、表示部161に表示するWebページは、内部制御部65を制御するためのWebページであり、そのWebページは、内部制御部65に出力されるコマンドを含む。このため、第1ブラウジング部53が内部制御部65と接続する場合に、第1ブラウジング部53が表示部161に表示する画像は、内部制御部65から入力されるWebページの画像を含むページ部分のみを含み、Webページの表示に関する操作を受け付ける画像を含む操作部分を含まない。
図11および図12は、変形例におけるブラウザ起動処理の流れの一例を示すフローチャートである。変形例におけるブラウザ起動処理は、MFP100が備えるCPU111が、ROM113、HDD115またはCD−ROM118に記憶された変形例におけるブラウザ起動プログラムを実行することにより、CPU111により実行される処理である。図11および図12を参照して、図9に示したブラウザ起動処理と異なる点は、ステップS11の前に、ステップS51〜ステップS57が追加された点、ステップS15、ステップS26、ステップS27およびステップS32において処理を操作受付処理に戻すことなく、処理をステップS51に戻す点である。その他の処理は、図9に示した処理と同じなのでここでは説明を繰り返さない。
CPU111は、接続先のURLを内部サーバーに設定する。具体的には、HDD115に記憶されたWebページのうち、最初に表示する操作画面に予め設定された操作画面に対応するWebページのURLを設定する。このURLは、MFP100のIWSとして機能する内部制御部65を特定する情報を含む。
ステップS52においては、第1の設定値を設定し、処理をステップS53に進める。第1の設定値は、画像処理を実行するための設定値として、第1のモードに対して予め定められた値である。
ステップS53においては、第1のモードでブラウジングプログラムを起動し、処理をステップS54に進める。具体的には、ROM113、HDD115またはCD−ROM118に記憶されたブラウジングプログラムを、第1のモードで実行する。CPU111が第1のモードで、ブラウジングプログラムを実行する場合、ブラウジングプログラムを実行するタスクは、ステップS51において設定されたURLで特定されるWebページを要求してくるので、その要求に応じて、ブラウジングプログラムを実行するタスクに、ステップS51において設定されたURLで特定されるWebページを出力する。これにより、ブラウジングプログラムを実行するタスクによって、Webページの画像を含むページ部分のみを含み、Webページの表示に関する操作を受け付ける画像を含む操作部分を含まない画像が表示部161に表示される。このため、第1のモードでブラウジングプログラムを実行した後は、ユーザーが操作部163に入力する操作は、CPU111がブラウジングプログラムを実行するタスクが、ステップS51において設定されたURLで特定される内部制御部65に出力するので、CPU111は、ユーザーが操作部163に入力する操作を内部制御部65に対する操作として取り扱い、画像処理制御部59に対する操作としては受け付けない。
ステップS55においては、ブラウジングプログラムを実行するタスクからコマンドを受け付けたか否かを判断する。内部制御部65がブラウジングプログラムを実行するタスクからコマンドを受け付けるまで待機状態となり(ステップS55でNO)、コマンドを受け付けたならば(ステップS55でYES)、処理をステップS56に進める。コマンドにより特定される操作は、第1のボタンまたは第2のボタンを指示する操作、操作画面を別の操作画面に切り換える画面遷移操作、設定値を設定する設定操作、処理の実行を指示する実行指示操作としている。
次のステップS56においては、コマンドで特定される操作が、ステップS54においてブラウジングプログラムを実行するタスクに出力したWebページに対応する操作画面中の第1のボタンまたは第2のボタンを指示する操作か否かを判断する。第1のボタンまたは第2のボタンを指示する操作ならば処理をステップS11に進めるが、そうでなければ処理をステップS57に進める。
ステップS57においては、コマンドで特定される操作が画面遷移操作か否かを判断する。画面遷移操作が特定されるならば処理をステップS58に進めるが、そうでなければ処理をステップS59に進める。ステップS58においては、画面遷移操作により特定される操作画面に対応するWebページをHDD115から読み出し、ブラウジングプログラムを実行するタスクに出力し、処理をステップS55に戻す。
ステップS59においては、受け付けられたコマンドにより特定される操作に対応するAPIコマンドを生成し、画像処理制御部59に出力し、処理をステップS55に戻す。コマンドにより設定操作が特定される場合は、設定値を設定するAPIコマンド生成し、APIコマンドを画像処理制御部59に出力する。コマンドにより実行指示操作が特定される場合は、実行指示操作で特定される画像処理を実行させるAPIコマンドを生成し、APIコマンドを画像処理制御部59に出力する。
変形例におけるMFP100は、第1のモードでブラウジングプログラムを実行するタスクである第1ブラウジング部53にWebページを出力し、第1ブラウジング部53がWebページに応じて出力する指示を受け付ける内部制御部65を含むので、第1のモードでブラウジングプログラムを実行する場合に、画像処理制御部59を制御することができる。
なお、上述した実施の形態においては、画像形成装置の一例としてMFP100について説明したが、図9、または図11および図12に示したブラウザ起動処理をMFP100に実行させるブラウザ起動方法、または、そのブラウザ起動方法を、MFP100を制御するCPU111に実行させるブラウザ起動プログラムとして発明を捉えることができるのは言うまでもない。
また、ブラウジングプログラムを第2のモードで起動する場合に課金し、第1のモードで起動する場合に課金しない場合を例に説明したが、ブラウジングプログラムを第2のモードで起動する場合に課金することなく、第1のモードで起動する場合に課金するようにしてもよし、ブラウジングプログラムを第2のモードで起動する場合およびにブラウジングプログラムを第1のモードで起動する場合の課金しつつ単価を異ならせるようにしてもよい。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
<付記>
(1)前記ブラウジング手段が前記第2のモードで起動する場合に、課金する課金手段を、さらに備え、
前記起動手段は、前記課金手段による課金が完了することに応じて、前記所定の操作を検出する、請求項3に記載の画像形成装置。
(2)金銭の投入を受け付けるベンダーを、さらに備え、
前記課金手段は、前記ベンダーに投入された金額に基づいて、課金の完了を判断する、(1)に記載の画像形成装置。
(3)前記ベンダーは、投入された金銭の残金を表示する残金表示手段を含む、(2)に記載の画像形成装置。
(4)宣伝または広告の画像を表示する広告表示手段を、さらに備え、
前記起動手段は、前記広告表示手段により前記画像の表示が終了することに応じて、前記所定の動作を検出する、請求項3に記載の画像形成装置。
(5)前記第2のタスクが起動される場合に、課金する課金ステップを、さらに含み、
前記起動ステップは、前記課金ステップにおいて課金が完了することに応じて、前記所定の操作を検出するステップを含む、請求項8に記載のブラウザ起動方法。
(6)前記画像形成装置は、金銭の投入を受け付けるベンダーを、さらに備え、
前記課金ステップは、前記ベンダーに投入された金額に基づいて、課金の完了を判断するステップを含む、(5)に記載のブラウザ起動方法。
(7)前記ベンダーは、投入された金銭の残金を表示する残金表示手段を含む、(6)に記載の画像形成装置。
(8)宣伝または広告の画像を表示する表示制御ステップを、さらに含み、
前記起動ステップは、前記表示制御ステップにおいて前記画像の表示が終了することに応じて、前記所定の動作を検出するステップを含む、請求項8に記載のブラウザ起動方法。