(57)【特許請求の範囲】
【請求項１】
コンテンツの一部を構成する画像の画像ファイルのヘッダ情報を含むサイズ情報を要求する第１のリクエストを出力し、前記第１のリクエストを出力した後に前記画像の前記画像ファイルを要求する第２のリクエストを出力する要求出力部と、
前記画像ファイルのファイルフォーマットと、前記画像ファイルのヘッダ情報内において画像サイズが格納されている位置とを対応づける画像サイズ位置情報を記憶する記憶部と、
前記第１のリクエストに対する応答として受信した前記サイズ情報に含まれる前記画像ファイルの前記ヘッダ情報内において、前記画像サイズ位置情報により前記画像ファイルの前記ファイルフォーマットと対応付けられている前記位置から前記画像サイズを取得し、前記画像サイズに基づいて前記コンテンツのレイアウトを決定する決定部と、
前記決定部により決定された前記レイアウトに従って、前記第２のリクエストに対する応答として受信した前記画像ファイルを用いて前記コンテンツを表示するための表示情報を出力する表示情報出力部と、
を含む、情報処理装置。
【請求項２】
コンテンツの一部を構成する画像の画像ファイルのヘッダ情報を含むサイズ情報を要求する第１のリクエストを出力し、
前記画像ファイルのファイルフォーマットと、前記画像ファイルのヘッダ情報内において画像サイズが格納されている位置とを対応づける画像サイズ位置情報を記憶する記憶装置を参照し、前記第１のリクエストに対する応答として受信した前記サイズ情報に含まれる前記画像ファイルの前記ヘッダ情報内において、前記画像サイズ位置情報により前記画像ファイルの前記ファイルフォーマットと対応付けられている前記位置から前記画像サイズを取得し、前記画像サイズに基づいて前記コンテンツのレイアウトを決定し、
前記画像の画像ファイルを要求する第２のリクエストを出力し、
決定された前記レイアウトに従って、前記第２のリクエストに対する応答として受信した前記画像ファイルを用いて前記コンテンツを表示するための表示情報を出力する、
処理をコンピュータに実行させる情報処理プログラム。
【請求項３】
コンテンツの一部を構成する画像の画像ファイルのヘッダ情報を含むサイズ情報を要求する第１のリクエストを出力する工程と、
前記画像ファイルのファイルフォーマットと、前記画像ファイルのヘッダ情報内において画像サイズが格納されている位置とを対応づける画像サイズ位置情報を記憶する記憶装置を参照し、前記第１のリクエストに対する応答として受信した前記サイズ情報に含まれる前記画像ファイルの前記ヘッダ情報内において、前記画像サイズ位置情報により前記画像ファイルの前記ファイルフォーマットと対応付けられている前記位置から前記画像サイズを取得し、前記画像サイズに基づいて前記コンテンツのレイアウトを決定する工程と、
前記画像の画像ファイルを要求する第２のリクエストを出力する工程と、
前記決定する工程により決定された前記レイアウトに従って、前記第２のリクエストに対する応答として受信した前記画像ファイルを用いて前記コンテンツを表示する工程と、
を含む、コンピュータが実行する情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【０００２】
近年、通信速度の高速化に伴い、大容量のデータを含むウェブコンテンツが増えている。それに伴い、例えば、ブラウザがコンテンツの全てのデータを表示する前に、ユーザが既に表示されている項目を選択する指示を情報処理装置に入力することが起きている。
【０００３】
これに関し、ＨＴＭＬから画面サイズに適したレイアウト制御を行う技術が知られている。また、サービスを記述したコンテンツ文書に含まれる画像情報の中継に関する技術が知られている。（例えば、特許文献１及び特許文献２参照）
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−２６７９６７号公報
【特許文献２】特開平１１−１７５４２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述のように、例えば、コンテンツの表示のための全てのデータの読み込みが完了する前に、ユーザが既に表示されている項目を選択する指示を情報処理装置に入力することがある。この場合に、例えば、ユーザが指示を入力する寸前に、新たに読み込まれたデータにより表示のレイアウトが変更されてしまい、その結果、ユーザが意図していない指示を情報処理装置に入力してしまうことがある。そこで、一つの側面では、本発明は、コンテンツの表示中のレイアウト変更によるユーザの誤操作を抑制することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一つの態様は、要求出力部、決定部、及び表示情報出力部を含む情報処理装置を提供する。要求出力部は、コンテンツの一部を構成する画像のサイズ情報を要求する第１のリクエストを出力し、第１のリクエストを出力した後に画像の画像ファイルを要求する第２のリクエストを出力する。決定部は、第１のリクエストに対する応答として受信したサイズ情報が示す画像サイズに基づいてコンテンツのレイアウトを決定する。表示情報出力部は、決定部により決定されたレイアウトに従って、第２のリクエストに対する応答として受信した画像ファイルを用いてコンテンツを表示するための表示情報を出力する。
【発明の効果】
【０００７】
一つの側面によれば、コンテンツの表示中のレイアウト変更によるユーザの誤操作を抑制することができる。
【図面の簡単な説明】
【０００８】
【図１】コンテンツを表示画面にレンダリングする際のレンダリング処理の動作フローを例示する図である。
【図２】ＨＴＴＰのセッションにより、情報処理装置が画像データをサーバからダウンロードする場合を例示する図である。
【図３】ＳＰＤＹのセッションにより、情報処理装置が画像データをサーバからダウンロードする場合を例示する図である。
【図４】実施形態に係るネットワーク構成を例示する図である。
【図５】実施形態に係る情報処理装置の機能ブロック構成を例示する図である。
【図６】実施形態に係る画像サイズ位置情報を例示する図である。
【図７】実施形態に係るコンテンツを表示画面にレンダリングする際のレンダリング処理の動作フローを例示する図である。
【図８】実施形態に係る画像サイズ取得処理の動作フローを例示する図である。
【図９】ＨＴＴＰのセッションにより、情報処理装置が画像データをサーバからダウンロードする場合を例示する図である。
【図１０】ＳＰＤＹのセッションにより、情報処理装置が画像データをサーバからダウンロードする場合を例示する図である。
【図１１】変形例に係る画像サイズ取得処理の動作フローを例示する図である。
【図１２】変形例に係る画像サイズ送信処理の動作フローを例示する図である。
【図１３】実施形態に係る情報処理装置及びサーバを実現するためのコンピュータのハードウェア構成を例示する図である。
【発明を実施するための形態】
【０００９】
以下、図面を参照しながら、本発明のいくつかの実施形態について詳細に説明する。なお、複数の図面において対応する要素には同一の符号を付す。
【００１０】
上述のように、例えば、コンテンツの表示のための全てのデータの読み込みが完了する前に、ユーザが既に表示されている項目を選択する指示を情報処理装置に入力することがしばしば起きている。しかしながら、例えば、ユーザが指示を入力する寸前に、新たに読み込まれたデータによって、コンテンツの表示のレイアウトが変更されてしまうことがある。なお、コンテンツとは、例えば、ウェブ上で提供及び配信されている情報であってよく、文書、及びマルチメディアなどを含んでいてよい。コンテンツは、例えば、ウェブページであってよい。
【００１１】
図１は、ブラウザがコンテンツを表示画面にレンダリングする際のレンダリング処理の動作フローを例示する図である。例えば、情報処理装置の表示画面において、ユーザがブラウザに表示されているリンクを選択するなどして、コンテンツの表示指示を入力すると、図１のレンダリング処理は開始してよい。
【００１２】
ステップ１０１（以降、ステップを“Ｓ”と記載し、例えば、Ｓ１０１と表記する）において情報処理装置の制御部は、例えば、選択されたリンク先のＵＲＬからＨＴＭＬファイルをダウンロードして読み込み、ＨＴＭＬをパース（解析）する。なお、ＵＲＬとは、Uniform Resource Locatorの略称である。また、ＨＴＭＬとは、HyperText Markup Languageの略称である。そして、以降の処理において、情報処理装置の制御部は、ＨＴＭＬに記述される順番に従って、他のコンテンツのダウンロードやスクリプトの実行を行う。例えば、情報処理装置の制御部は、Ｓ１０２においてＣＳＳ（Cascading Style Sheets、カスケーディング・スタイル・シート）をパースする。情報処理装置の制御部は、例えば、ＨＴＭＬファイル内にＣＳＳファイルの保存場所を示すＵＲＬが記述されている場合には、ＣＳＳファイルの保存場所を示すＵＲＬからＣＳＳファイルをダウンロードして読み込み、パースしてよい。或いは、ＨＴＭＬファイル内にＣＳＳが記述されている場合には、情報処理装置の制御部は、ＨＴＭＬファイル内のＣＳＳをパースしてよい。Ｓ１０３において情報処理装置の制御部は、パースしたＨＴＭＬとＣＳＳに基づいて、コンテンツのレイアウトを決定し、決定したレイアウトでコンテンツを表示するための表示情報を出力する。制御部は、例えば、情報処理装置に備えられたディスプレーなどの表示装置に表示情報を出力してよい。表示装置は、表示情報が入力されると、Ｓ１０３で決定されたレイアウトでコンテンツを表示してよい。
【００１３】
また、例えば、ＨＴＭＬファイル内に画像ファイルの保存場所を示すＵＲＬが記述されている場合には、情報処理装置の制御部はＳ１０４の処理を実行してよい。情報処理装置の制御部は、Ｓ１０４において画像ファイルの保存場所を示すＵＲＬから画像ファイルをダウンロードする。なお、ＨＴＭＬファイル内に画像ファイルの保存場所を示すＵＲＬが複数記述されている場合には、情報処理装置の制御部は、複数のＵＲＬのそれぞれから画像ファイルのダウンロードを実行してよい。そして、Ｓ１０５において情報処理装置の制御部は、Ｓ１０３で決定したレイアウトに従ってブラウザ上に表示されているコンテンツに、ダウンロードが完了した画像ファイルを配置するための配置情報を出力する。制御部は、例えば、情報処理装置に備えられたディスプレーなどの表示装置に配置情報を出力してよい。表示装置は、配置情報が入力されると、Ｓ１０３で決定されたレイアウト上の対応する箇所に画像を配置し、表示してよい。また、情報処理装置の制御部が複数の画像ファイルのダウンロードを実行する場合には、Ｓ１０５において情報処理装置の制御部は、例えば、ダウンロードが完了した画像から順に、画像をコンテンツ上に配置するための配置情報を出力してよい。
【００１４】
また更に、例えば、ＨＴＭＬファイルにＪａｖａＳｃｒｉｐｔ（登録商標）（ジャバスクリプト）が記述されている場合に、情報処理装置の制御部はＳ１０６の処理を実行してよい。Ｓ１０６において情報処理装置の制御部は、例えばＨＴＭＬファイルに記述されたＪａｖａＳｃｒｉｐｔを実行し、その実行結果をコンテンツ上に表示するための結果情報を出力してよい。制御部は、例えば、情報処理装置に備えられたディスプレーなどの表示装置に結果情報を出力してよい。表示装置は、結果情報が入力されると、Ｓ１０３で決定されたレイアウト上の対応する箇所にＪａｖａＳｃｒｉｐｔの実行結果を表示してよい。例えば、以上のようにして、情報処理装置の制御部が、ＨＴＭＬに記述される順番に従ってコンテンツのダウンロードやスクリプトの実行を完了すると、コンテンツの表示は完了し、本動作フローは終了する。
【００１５】
図１のコンテンツのレンダリング処理により、情報処理装置の制御部は、コンテンツを例えば表示装置の表示画面に表示することができる。しかしながら、図１のレンダリング処理では、情報処理装置の制御部は、Ｓ１０４における画像のダウンロードを行う前に、Ｓ１０３において表示のレイアウトを決定している。また、例えばＨＴＭＬにおいて画像の指定に用いられる＜ｉｍｇ＞タグにおいて、表示サイズの指定（例えばwidth及びheightなどのサイズ属性による指定）が省略されることがある。この場合、情報処理装置の制御部は、Ｓ１０３では正確な画像の表示サイズを反映していない仮のレイアウトを決定する。そして、情報処理装置の制御部は、Ｓ１０４で画像のダウンロードを完了して読み込みを行った時点で、ダウンロードされた画像の幅及び高さを取得し、取得した画像サイズで画像がブラウザ上に表示されるようにレイアウトを変更する。そのため、画像のダウンロードが完了してコンテンツへと配置する度に、コンテンツのレイアウトは変更されてしまう。
【００１６】
そして、例えば、画像ファイルのダウンロードの完了が遅延する場合、ユーザがコンテンツ上で項目を選択するなどの指示を入力する寸前に、画像がコンテンツに配置されレイアウトが変更されてしまうことがある。その結果、例えば、コンテンツ内のユーザが選択しようとしていた項目の位置へとレイアウトの変更により移動してきた別の項目をユーザが選択してしまうなどのユーザの誤操作を招いている。なお、画像ファイルのダウンロードの完了の遅延は、例えば、弱電界などによる通信速度の低下、サーバからのレスポンスの遅れ、及び画像ファイルのデータ量が大きいことなどによって引き起こされる。
【００１７】
図２及び図３は、以上で述べた、ユーザの誤操作を招く原因となり得るコンテンツのレイアウトの更新タイミングと、ユーザの操作が入力されるタイミングとの関係を例示する図である。なお、図２及び図３は、ＨＴＭＬファイルの＜ｉｍｇ＞タグにおいて表示サイズの指定（例えばwidth及びheightによるサイズ属性の指定）が省略されている場合の例とする。そのため、例えば、画像のダウンロードが完了し、情報処理装置の制御部が、ダウンロードされた画像をコンテンツへと配置すると、コンテンツのレイアウトは変更される。また、図２は、ＨＴＴＰ（Hypertext Transfer Protocol）のセッションにより、情報処理装置が画像データをサーバからダウンロードする場合を例示している。
【００１８】
情報処理装置の制御部は、図１の例で述べたように、ＨＴＭＬファイルのパースと、ＣＳＳのパースを行い、パースしたＨＴＭＬとＣＳＳに基づいて、コンテンツのレイアウトを決定する（図２の（１））。その後、例えば、ＨＴＭＬファイル内に＜ｉｍｇ＞タグが存在する場合、＜ｉｍｇ＞タグに記述されたＵＲＬから画像をダウンロードするために、情報処理装置の制御部はＵＲＬに示されるサーバにＨＴＴＰリクエストを送信する（図２の（２））。サーバは、例えば、クライアントである情報処理装置から画像ファイルを要求するＨＴＴＰリクエストを受信すると、要求された画像ファイルのデータを含むＨＴＴＰレスポンスを情報処理装置へと送信する（図２の（３））。情報処理装置の制御部は、サーバからＨＴＴＰレスポンスを受信し、画像ファイルのダウンロードを完了すると（図２の（４））、画像をレイアウト上に配置し、画像の画像サイズに応じてコンテンツのレイアウトを変更してブラウザに表示する（図２の（５））。ここで、例えば、ＨＴＭＬファイルにおいて指定されている画像ファイルのうちのいずれかにおいてダウンロードの完了が遅延することがある（図２の（６））。また、いずれかの画像ファイルのダウンロードの完了が遅延する場合に、例えば、ユーザが図２の（５）のレイアウトの変更後に表示されたレイアウトでコンテンツを閲覧し、コンテンツ上のリンクなどの項目を選択しようとすることがある。そして、ユーザが項目を選択する指示を情報処理装置に入力するタイミング（図２の（９））の直前で、遅延していた画像のダウンロードが完了し（図２の（７））、コンテンツのレイアウトが変更されてしまうことがある（図２の（８））。この場合、図２の（５）のレイアウトの変更後のレイアウトと、図２の（８）のレイアウトの変更後のレイアウトは異なるため、ウェブブラウザ上でユーザが選択しようとしていた項目が、レイアウトの変更により別の位置に移動してしまうことがある。その結果、ユーザが意図しない操作を情報処理装置に入力してしまう状況を招くことがある。また更に、ＨＴＴＰでは、或るリクエストに対するレスポンスの受信に遅延が発生すると、後続のレスポンスの受信も遅延してしまうという問題がある。そのため、例えば、図２の（９）のユーザが操作を入力するタイミングで、遅延していた後続の画像が次々に受信され、その度にレイアウトが変更されてしまい、ユーザが情報処理装置に指示を入力することがままならない状況が生じ得る。
【００１９】
また、図３は、ＳＰＤＹ（スピーディ）のセッションにより、情報処理装置が画像データをサーバからダウンロードする場合を例示している。情報処理装置の制御部は、ＨＴＭＬファイルのパースと、ＣＳＳのパースを行い、パースしたＨＴＭＬとＣＳＳに基づいて、コンテンツのレイアウトを決定する（図３の（１））。その後、例えば、ＨＴＭＬファイル内に＜ｉｍｇ＞タグが存在する場合、＜ｉｍｇ＞タグに記述されたＵＲＬから画像をダウンロードするために、情報処理装置の制御部はＵＲＬに示されるサーバにＳＰＤＹリクエストを送信する（図３の（２））。サーバは、クライアントである情報処理装置から画像ファイルを要求するＳＰＤＹリクエストを受信すると、例えば、ＳＰＤＹリクエストに対する応答としてリプライを情報処理装置へと送信する（図３の（３））。リプライは、例えば、ＨＴＴＰレスポンスのヘッダ情報を含むコントロールフレーム、及び要求された画像ファイルのデータを含むデータフレームを含んでいてよい。情報処理装置の制御部は、サーバからのリプライを受信し、画像ファイルのダウンロードを完了すると（図３の（４））、画像ファイルの画像サイズに応じて、コンテンツのレイアウトを変更し、ブラウザに表示する（図３の（５））。ここで、例えば、ＨＴＭＬファイルにおいて指定されている画像ファイルのうちのいずれかにおいてダウンロードの完了が遅延することがある（図３の（６））。そして、いずれかの画像ファイルのダウンロードの完了が遅延する場合に、例えば、ユーザが図３の（５）で変更されたレイアウトでコンテンツを閲覧し、コンテンツ上のリンクなどの項目を選択しようとすることがある。そして、ユーザが項目を選択する操作を情報処理装置に入力するタイミング（図３の（９））の直前で、遅延していた画像のダウンロードが完了し（図３の（７））、コンテンツのレイアウトが変更されてしまうことがある（図３の（８））。この場合、図３の（５）で変更されたレイアウトと、図３の（８）で変更されたレイアウトとは異なるため、ウェブブラウザ上でユーザが選択しようとしていた項目が、レイアウトの変更により別の位置に移動してしまうことがある。その結果、図２で述べたＨＴＴＰの場合と同様に、ＳＰＤＹを用いる場合においてもユーザが意図しない操作を情報処理装置に入力してしまう状況を招くことがある。また更に、ＳＰＤＹでは、例えば、１つのストリームで転送されるデータの中にデータサイズの大きな画像が含まれている場合、その大きな画像の受信が遅延すると、ストリーム内に束ねられたその他のデータの取得も遅れてしまうことがある。そのため、例えば、図３の（９）のユーザが操作を入力するタイミングで、遅延していた後続の画像が次々に受信され、その度にレイアウトが変更されてしまい、ユーザが情報処理装置に指示を入力することがままならない状況が生じ得る。従って、この様なユーザの誤操作を抑制することが可能な技術が望まれている。
【００２０】
なお、以上で述べたユーザの誤操作を抑制することに関し、例えば、プログレッシブＪＰＥＧ、及びインターレースＧＩＦなどを利用し、ダウンロード中の画像を読み込まれた部分から徐々に表示することで、レイアウトへの画像の配置を早めることが考えられる。なお、ＪＰＥＧとは、Joint Photographic Experts Groupの略称である。ＧＩＦとは、Graphics Interchange Formatの略称である。しかしながら、プログレッシブＪＰＥＧ、及びインターレースＧＩＦなどを用いても、例えば、弱電界などに起因して通信速度が遅くなっている場合には、レイアウトへの画像の配置が遅れてしまう。また、例えば、プログレッシブＪＰＥＧ、及びインターレースＧＩＦなどを用いる場合、画像ファイルそのものに加工が必要であり、コンテンツの作成者が画像ファイルを加工していないと、これらの技術を利用することは難しい。また、これらの技術を利用した場合に、画像ファイルのファイルサイズが大きくなってしまうこともある。従って、ユーザの誤操作を抑制することのできる更なる技術が望まれている。
【００２１】
そこで、いくつかの実施形態に係る情報処理装置の制御部は、コンテンツのブラウザ上への表示に先だって、コンテンツの一部を構成する画像のサイズ情報を要求する。そして、情報処理装置の制御部は、要求の応答として得られたサイズ情報から取得した画像サイズに基づいてコンテンツのレイアウトを決定する。そのため、その後に画像を配置してもレイアウトが維持され、ユーザの誤操作を抑制することができる。なお、サイズ情報は、例えば、画像ファイルのヘッダ情報であってよい。以下、図４から図１０を参照して、実施形態を説明する。
【００２２】
＜実施形態＞
図４は、実施形態に係るネットワーク構成１００を例示する図である。ネットワーク構成１００は、例えば、情報処理装置１及びサーバ２を含んでいてよく、情報処理装置１及びサーバ２は、例えばネットワーク５を介して接続されていてよい。情報処理装置１は、例えば、携帯電話機、スマートフォン、タブレット端末、パーソナルコンピュータ（ＰＣ）、及びノートＰＣなどのウェブコンテンツを閲覧する機能を備えた装置であってよい。また、サーバ２は、例えば、クライアントとなる装置からのリクエストに応じて、ウェブコンテンツを提供するサーバコンピュータであってよい。例えば、情報処理装置１が、或るＵＲＬのウェブコンテンツを要求するリクエストを、ＵＲＬに対応するサーバ２に送信した場合に、サーバ２は、要求されたコンテンツを含むレスポンスを情報処理装置１へと送信してよい。
【００２３】
図５は、実施形態に係る情報処理装置１の機能ブロック構成を例示する図である。情報処理装置１は、例えば、制御部５００及び記憶部５１０を含んでいる。制御部５００は、例えば要求出力部５１１、決定部５１２、及び表示情報出力部５１３などの機能部を含んでいる。情報処理装置１の記憶部５１０は、例えば、プログラム５２０、並びに後述する画像サイズ位置情報６００などの情報を記憶している。情報処理装置１の制御部５００は、プログラム５２０を読み出して実行することで例えば要求出力部５１１、決定部５１２、及び表示情報出力部５１３などの機能部として機能する。これらの各機能部の詳細及び記憶部５１０に格納されている情報の詳細については後述する。
【００２４】
図６は、実施形態に係る画像サイズ位置情報６００を例示する図である。画像サイズ位置情報６００は、例えば、フォーマット６０１、データ位置６０２、及びデータサイズ６０３を含み、これらは画像サイズ位置情報６００において対応付けられている。フォーマット６０１は、例えば、画像データの種類を示す情報であり、ＪＰＥＧ、ＰＮＧ、及びＧＩＦなどであってよい。ＰＮＧとは、Portable Network Graphicsの略称である。データ位置６０２は、例えば、フォーマット６０１に示されるデータフォーマットの画像ファイルにおいて、画像サイズの情報が格納されている領域の先頭位置を示す情報であってよい。また、データサイズ６０３は、例えば、フォーマット６０１に示されるデータフォーマットの画像ファイルにおいてデータ位置６０２から何バイトの領域に画像サイズの情報が格納されているかを示す情報であってよい。例えば、図５のフォーマット６０１：ＪＰＥＧの例では、ＪＰＥＧファイルの１１バイト目から２バイトに画像データの横方向の画像サイズが格納されており、更にそこから２バイトに縦方向の画像サイズが格納されていることを示している。従って、情報処理装置１の制御部５００は、画像サイズ位置情報６００を参照することで、画像ファイルのフォーマットに対応する画像サイズの格納位置を特定することができる。
【００２５】
図７は、実施形態に係るブラウザがコンテンツを表示画面にレンダリングする際のコンテンツのレンダリング処理の動作フローを例示する図である。例えば、情報処理装置１の表示画面において、ユーザがブラウザに表示されているリンクなどの項目を選択するなどして、コンテンツの表示指示を入力すると図７のレンダリング処理は開始してよい。なお、Ｓ７０１及びＳ７０２は、図１のＳ１０１及びＳ１０２と対応していてよく、例えば、Ｓ７０１及びＳ７０２において、情報処理装置１の制御部５００は、Ｓ１０１及びＳ１０２と同様の処理を実行してよい。
【００２６】
続いて、Ｓ７０３において情報処理装置１の制御部５００は、ＨＴＭＬファイル内に＜ｉｍｇ＞タグがあるか否かを判定する。ＨＴＭＬファイル内に＜ｉｍｇ＞タグが無い場合（Ｓ７０３がＮＯ）、フローはＳ７０８へと進む。一方、ＨＴＭＬファイル内に＜ｉｍｇ＞タグがある場合（Ｓ７０３がＹＥＳ）、フローはＳ７０４へと進む。Ｓ７０４において情報処理装置１の制御部５００は、＜ｉｍｇ＞タグにおいて画像の表示サイズが指定されているか否かを判定する。＜ｉｍｇ＞タグにおいて画像の表示サイズの指定がされている場合（Ｓ７０４がＹＥＳ）、フローはＳ７０６へと進む。この場合、Ｓ７０６において情報処理装置１の制御部５００は、＜ｉｍｇ＞タグにおいて指定されている表示サイズを、画像の表示サイズとして特定する。一方、Ｓ７０４で＜ｉｍｇ＞タグにおいて画像の表示サイズの指定がされていない場合（Ｓ７０４がＮＯ）、フローはＳ７０５へと進む。Ｓ７０５において情報処理装置１の制御部５００は、画像サイズ取得処理を実行する。画像サイズ取得処理では、情報処理装置１の制御部５００は、例えば、画像の画像ファイルのヘッダ情報を要求するリクエストを出力し、＜ｉｍｇ＞タグで指定されたＵＲＬに示されるサーバ２に送信する。そして、情報処理装置１の制御部５００は、送信したリクエストに対する応答として画像ファイルのヘッダ情報を受信し、取得したヘッダ情報から画像サイズを取得する。
【００２７】
なお、Ｓ７０５の画像サイズ取得処理は、例えば、ＨＴＴＰプロトコルのＧＥＴコマンドなどの既存のコマンドを利用して実行されてよい。図８は、ＨＴＴＰプロトコルのＧＥＴコマンドを用いて画像のヘッダ情報を要求する場合の画像サイズ取得処理の動作フローを例示する図である。図８の画像サイズ取得処理の動作フローは、一実施形態においては、図７のＳ７０５に進むと開始してよい。
【００２８】
Ｓ８０１において情報処理装置１の制御部５００は、例えば、ＨＴＴＰプロトコルのＧＥＴコマンドを用いて、＜ｉｍｇ＞タグに記述されたＵＲＬに保存されている画像ファイルを要求するＨＴＴＰリクエストを送信する。サーバ２は、ＨＴＴＰリクエストを受信すると、要求された画像のデータを含むＨＴＴＰレスポンスを情報処理装置１へと送信する。Ｓ８０２において情報処理装置１の制御部５００は、サーバ２からのＨＴＴＰレスポンスを受信し、画像データのダウンロードを開始する。Ｓ８０３において情報処理装置１の制御部５００は、画像データのヘッダ分のデータの受信が完了したか否かを判定する。
【００２９】
なお、Ｓ８０３の判定は、例えば、以下のように実行されてよい。例えば、ＪＰＥＧ、ＰＮＧ、及びＧＩＦなどの既知の画像ファイルのファイルフォーマットのヘッダ領域のデータサイズから、それら全てのファイルフォーマットにおいてヘッダ領域のデータの取得を完了するのに十分なデータサイズを見積もることができる。そのため、見積もられたデータサイズを閾値として用いて、閾値以上のデータのダウンロードが完了した場合に、情報処理装置１の制御部５００は、画像データのヘッダ分のデータの受信が完了したと判定してよい。また、画像データのヘッダ分のデータの受信が完了した場合、情報処理装置１の制御部５００は、例えば、ヘッダ分のデータに後続してサーバ２から受信される残りのデータについては、破棄してもよい。
【００３０】
Ｓ８０３で画像データのヘッダ分のデータの受信が完了していない場合（Ｓ８０３がＮＯ）、フローはＳ８０３の処理を繰り返す。一方、画像データのヘッダ分のデータの受信が完了している場合（Ｓ８０３がＹＥＳ）、フローはＳ８０４へと進む。Ｓ８０４において情報処理装置１の制御部５００は、受信したヘッダ分のデータサイズを有するＨＴＴＰレスポンスのヘッダ領域を参照し、画像ファイルのファイルフォーマットを特定する。例えば、制御部５００は、ＨＴＴＰレスポンスのContent-Typeのヘッダから画像ファイルのファイルフォーマットを特定してよい。Ｓ８０５において情報処理装置１の制御部５００は、特定されたファイルフォーマットにおいて画像サイズが格納されている領域を特定し、特定された領域を参照することで画像サイズを取得する。例えば、制御部５００は、Ｓ８０４で特定されたファイルフォーマットに対応するデータ位置６０２と、データサイズ６０３とを画像サイズ位置情報６００から特定する。そして、制御部５００は、ＨＴＴＰレスポンスのボディ領域に含まれる画像ファイルのヘッダ情報において、特定されたデータ位置６０２及びデータサイズ６０３の領域に格納されているデータから画像サイズを特定してよい。Ｓ８０５において、情報処理装置１の制御部５００が画像サイズを特定すると、本動作フローは終了し、フローは図７のＳ７０６へと進む。
【００３１】
Ｓ７０６において情報処理装置１の制御部５００は、取得した画像サイズをブラウザ上での画像の表示サイズとして特定する。Ｓ７０７において情報処理装置１の制御部５００は、ＨＴＭＬファイル内に他にＳ７０４の判定を行っていない未処理の＜ｉｍｇ＞タグがあるか否かを判定する。未処理の＜ｉｍｇ＞タグがある場合（Ｓ７０７がＹＥＳ）、処理はＳ７０４へと戻り、情報処理装置１の制御部５００は、未処理の＜ｉｍｇ＞タグに対してＳ７０４以降の処理を繰り返す。一方、Ｓ７０７において未処理の＜ｉｍｇ＞タグが無い場合（Ｓ７０７がＮＯ）、フローはＳ７０８へと進む。
【００３２】
Ｓ７０８において情報処理装置１の制御部５００は、レイアウトを決定し、決定したレイアウトでコンテンツを表示するための表示情報を出力する。制御部５００は、例えば、情報処理装置１に備えられたディスプレーなどの表示装置に表示情報を出力してよい。また、表示装置は、表示情報が入力されると、Ｓ７０８で決定されたレイアウトでコンテンツを表示してよい。なお、Ｓ７０８において情報処理装置１の制御部５００は、例えば、ＨＴＭＬファイル内に＜ｉｍｇ＞タグが含まれている場合には、＜ｉｍｇ＞タグに対応する画像の画像サイズに基づいてコンテンツのレイアウトを決定する。例えば、情報処理装置１の制御部５００は、Ｓ７０５の処理でサーバ２から取得した画像サイズで画像がブラウザ上に表示されるように、コンテンツのレイアウトを決定してよい。
【００３３】
続いて、情報処理装置１の制御部５００は、例えば、ＨＴＭＬファイル内に＜ｉｍｇ＞タグが含まれている場合に、Ｓ７０９において画像ファイルの保存場所を示すＵＲＬから画像ファイルをダウンロードしてよい。ＨＴＭＬファイル内に複数の＜ｉｍｇ＞タグが含まれている場合には、情報処理装置１の制御部５００は、複数のＵＲＬのそれぞれから画像ファイルのダウンロードを実行してよい。そして、Ｓ７１０において情報処理装置１の制御部５００は、Ｓ７０８で決定されたレイアウトに従ってブラウザ上に表示されているコンテンツに、ダウンロードが完了した画像を配置するための配置情報を出力する。制御部５００は、例えば、情報処理装置１に備えられたディスプレーなどの表示装置に配置情報を出力してよい。また、表示装置は、配置情報が入力されると、Ｓ７０８で決定されたレイアウト上の対応する箇所に画像を配置し、表示してよい。また、情報処理装置１の制御部５００が複数の画像ファイルのダウンロードを実行する場合には、Ｓ７１０において情報処理装置１の制御部５００は、例えば、ダウンロードが完了した画像から順に、画像をコンテンツ上に配置するための配置情報を出力してよい。
【００３４】
なお、Ｓ７０８で決定されたレイアウトは、上述のＳ７０５〜Ｓ７０８の説明で述べたように、＜ｉｍｇ＞タグにおいて画像の表示サイズの指定が無い場合は、画像サイズに基づいて決定されている。従って、Ｓ７１０において情報処理装置１の制御部５００が配置情報を出力し、表示装置が配置情報に従って画像を表示する場合に、レイアウトの変更は生じない。
【００３５】
また更に、例えば、ＨＴＭＬファイルにＪａｖａＳｃｒｉｐｔが記述されている場合、情報処理装置１の制御部５００はＳ７１１の処理を実行してよい。Ｓ７１１において情報処理装置１の制御部５００は、例えばＨＴＭＬファイルに記述されたＪａｖａＳｃｒｉｐｔを実行し、その実行結果をコンテンツ上に表示するための結果情報を出力してよい。制御部５００は、例えば、情報処理装置１に備えられたディスプレーなどの表示装置に結果情報を出力してよい。また、表示装置は、結果情報が入力されると、Ｓ７０８で決定されたレイアウト上の対応する箇所にＪａｖａＳｃｒｉｐｔの実行結果を表示してよい。例えば、以上のようにして、情報処理装置１の制御部５００がＨＴＭＬに記述される順番に従ってコンテンツのダウンロードやスクリプトの実行を完了すると、コンテンツの表示は完了し、本動作フローは終了する。
【００３６】
なお、以上の図７の動作フローにおいて、Ｓ７０１からＳ７０４、Ｓ７０９の処理では、情報処理装置１の制御部５００は、例えば、要求出力部５１１として機能してよい。また、Ｓ７０５の処理では、情報処理装置１の制御部５００は、例えば、要求出力部５１１及び決定部５１２として機能してよい。Ｓ７０６及びＳ７０７の処理では、情報処理装置１の制御部５００は、例えば、決定部５１２として機能してよい。Ｓ７０８の処理では、情報処理装置１の制御部５００は、例えば、決定部５１２及び表示情報出力部５１３として機能してよい。Ｓ７１０及びＳ７１１の処理では、情報処理装置１の制御部５００は、例えば、表示情報出力部５１３として機能してよい。
【００３７】
また、図８の動作フローにおいて、Ｓ８０１の処理では、情報処理装置１の制御部５００は、例えば、要求出力部５１１として機能してよい。また、Ｓ８０２からＳ８０５の処理では、情報処理装置１の制御部５００は、例えば、決定部５１２として機能してよい。
【００３８】
図７の動作フローによれば、情報処理装置１の制御部５００は、コンテンツを表示画面に表示するのに先立って、コンテンツに画像が含まれる場合に画像のヘッダ情報を要求するリクエストを送信する。そして、情報処理装置１の制御部５００は、受信されたヘッダ情報から取得した画像サイズに基づいてコンテンツの表示のレイアウトを決定する（図７のＳ７０５〜Ｓ７０８）。従って、Ｓ７１０において情報処理装置１の制御部５００がダウンロードされた画像をレイアウト上に配置しても、レイアウトの変更は生じない。
【００３９】
図９及び図１０は、実施形態に係るコンテンツのレイアウトの決定タイミングと、ユーザの指示入力のタイミングとの関係を例示する図である。なお、図９及び図１０は、ＨＴＭＬファイルの＜ｉｍｇ＞タグにおいて表示サイズの指定（例えばwidth及びheightによるサイズ属性の指定）が省略されている場合を例とする。また、図９は、ＨＴＴＰのセッションにより、情報処理装置１が画像データをサーバ２からダウンロードする場合を例示している。
【００４０】
情報処理装置１の制御部５００は、ＨＴＭＬ及びＣＳＳのパースを行なった後、図７を参照して述べたように、レイアウトの決定の前にＨＴＭＬファイルに＜ｉｍｇ＞タグがあるか否かを判定する。そして、＜ｉｍｇ＞タグがある場合に、制御部５００は、＜ｉｍｇ＞タグのＵＲＬで指定される画像ファイルのヘッダ情報を要求するＨＴＴＰリクエストをサーバ２に送信する（図９の（１））。サーバ２は、ヘッダ情報を要求するＨＴＴＰリクエストを受信すると、ヘッダ情報を含むＨＴＴＰレスポンスを情報処理装置１へと送信する（図９の（２））。情報処理装置１の制御部５００は、ＨＴＴＰレスポンスを受信すると（図９の（３））、ＨＴＴＰレスポンスに含まれるヘッダ情報から画像サイズを取得し、取得した画像サイズを基に、コンテンツのレイアウトを決定する（図９の（４））。例えば、情報処理装置１の制御部５００は、取得した画像サイズで画像がブラウザ上に表示されるように、コンテンツのレイアウトを決定してよい。
【００４１】
その後、情報処理装置１の制御部５００は、ＨＴＭＬの＜ｉｍｇ＞タグで指定される画像の画像データを要求するＨＴＴＰリクエストをサーバ２に送信する（図９の（５））。サーバ２は、受信したＨＴＴＰリクエストに応じて画像データを含むＨＴＴＰレスポンスを情報処理装置１へと送信する（図９の（６））。情報処理装置１の制御部５００は、サーバ２からのＨＴＴＰレスポンスの受信が完了すると、ＨＴＴＰレスポンスに含まれる画像データを取得し、得られた画像を図９の（４）で決定したレイアウト上に配置する（図９の（７））。なお、図９の（４）で決定したレイアウトは、画像の画像サイズに基づいて決定されているため、図９の（７）の画像の受信後の配置ではレイアウトの変更は生じない。また同様に、ＨＴＴＰレスポンスの受信に遅延が生じ（図９の（８））、ユーザの操作入力のタイミング（図９の（１０））直前に、遅延した画像データの受信と配置が実行されたとしても（図９の（９））、レイアウトの変更は生じない。そのため、ユーザの指示の入力の寸前にコンテンツに読み込まれたデータによって、コンテンツの表示のレイアウトが更新されてしまい、ユーザの誤操作を引き起こすことが抑制される。
【００４２】
また、図１０は、ＳＰＤＹのセッションにより、情報処理装置１が画像データをサーバ２からダウンロードする場合を例示している。図７の説明で述べたように、情報処理装置１の制御部５００は、ＨＴＭＬ及びＣＳＳのパースを行なった後、レイアウトの決定の前にＨＴＭＬファイルに＜ｉｍｇ＞タグがあるか否かを判定する。そして、＜ｉｍｇ＞タグがある場合に、制御部５００は、＜ｉｍｇ＞タグのＵＲＬで指定される画像ファイルのヘッダ情報を要求するＳＰＤＹリクエストをサーバ２に送信する（図１０の（１））。サーバ２は、クライアントである情報処理装置１からヘッダ情報を要求するＳＰＤＹリクエストを受信すると、例えば、ＳＰＤＹリクエストに対する応答としてリプライを情報処理装置１へと送信する（図１０の（２））。なお、リプライは、例えば、ＨＴＴＰレスポンスのヘッダ情報を含むコントロールフレーム、及び要求された画像ファイルのヘッダ情報を含むデータフレームを含んでいてよい。情報処理装置１の制御部５００は、サーバ２からのリプライを受信し、画像ファイルのヘッダ情報を受信すると、サーバ２へと停止要求を送信する（図１０の（３））。そして、情報処理装置１の制御部５００は、受信した画像ファイルのヘッダ情報から取得した画像サイズを基にコンテンツのレイアウトを決定する（図１０の（４））。例えば、情報処理装置１の制御部５００は、取得した画像サイズで画像がブラウザ上に表示されるように、コンテンツのレイアウトを決定してよい。
【００４３】
その後、情報処理装置１の制御部５００は、ＨＴＭＬの＜ｉｍｇ＞タグで指定される画像の画像データを要求するＳＰＤＹリクエストをサーバ２に送信する（図１０の（５））。サーバ２は、受信したＳＰＤＹリクエストに応じてリプライを情報処理装置１へと送信する（図１０の（６））。なお、リプライは、例えば、ＨＴＴＰレスポンスのヘッダ情報を含むコントロールフレーム、及び要求された画像ファイルのデータを含むデータフレームを含んでいてよい。情報処理装置１の制御部５００は、サーバ２からのリプライを受信し、画像ファイルのダウンロードを完了すると、得られた画像を図１０の（４）で決定したレイアウト上に配置する（図１０の（７））。なお、図１０の（４）で決定したレイアウトは、画像の画像サイズに基づいて決定されているため、図１０の（７）の画像の受信後の配置ではレイアウトの変更は生じない。また同様に、リプライの受信に遅延が生じ（図１０の（８））、ユーザの指示入力のタイミング（図１０の（１０））直前に、遅延した画像データの受信と配置が実行されたとしても（図１０の（９））、レイアウトの変更は生じない。そのため、ユーザの指示の入力の寸前にコンテンツに読み込まれたデータによって、コンテンツの表示のレイアウトが更新されてしまい、ユーザの誤操作を引き起こすことが抑制される。
【００４４】
以上で述べたように、本実施形態では情報処理装置１の制御部５００は、コンテンツに画像が含まれる場合に、コンテンツを表示画面に表示するのに先立って、その画像の画像ファイルのサイズ情報（例えば、ヘッダ情報）を要求するリクエストを送信する。そして、情報処理装置１の制御部５００は、リクエストに応じて受信されたサイズ情報から取得した画像サイズを基にレイアウトを決定する。従って、情報処理装置１の制御部５００が、ダウンロードされた画像をレイアウト上に配置しても、レイアウトの変更は生じない。また、図８で述べたように、情報処理装置１は、例えば、ＨＴＴＰプロトコルのＧＥＴコマンドなどの既存のコマンドを利用してサイズ情報をサーバ２から取得することができる。そのため、例えば、サーバ２に新たな機能を追加しなくても、実施形態を実行することができる。しかしながら、実施形態はこれに限定されるものではなく、例えば別の実施形態では、サーバ２に変更が加えられてもよい。以下では、図１１を参照し、変形例に係る画像サイズ取得処理を説明する。
【００４５】
＜変形例＞
図１１は、変形例に係る情報処理装置１の制御部５００が実行する画像サイズ取得処理の動作フローを例示する図である。なお、図１１の画像サイズ取得処理の動作フローは、一実施形態においては、図７のＳ７０５に進むと実行されてよい。
【００４６】
Ｓ１１０１において情報処理装置１の制御部５００は、画像ファイルの画像サイズを示すサイズ情報を要求するＨＴＴＰリクエストを送信する。なお、例えば、ＨＴＴＰプロトコルにおいて、画像ファイルの画像サイズを示すサイズ情報を要求するためのコマンドが用意されてよい。そして、情報処理装置１の制御部５００は、そのコマンドを用いて画像ファイルの画像サイズを示すサイズ情報を要求するＨＴＴＰリクエストを＜ｉｍｇ＞タグに示されるＵＲＬのサーバ２へと送信してよい。Ｓ１１０２において情報処理装置１の制御部５００は、ＨＴＴＰリクエストに対するＨＴＴＰレスポンスをサーバ２から受信し、ＨＴＴＰレスポンスのボディ領域に含まれるサイズ情報から画像サイズを取得してよい。Ｓ１１０２において情報処理装置１の制御部５００が画像の画像サイズを取得すると、本動作フローは終了し、フローは図７のＳ７０６へと進む。
【００４７】
なお、図１１の動作フローにおいて、Ｓ１１０１の処理では、情報処理装置１の制御部５００は、例えば、要求出力部５１１として機能してよい。また、Ｓ１１０２の処理では、情報処理装置１の制御部５００は、例えば、決定部５１２として機能してよい。
【００４８】
また、図１２は、図１１で例示した画像ファイルの画像サイズを示すサイズ情報を要求するためのコマンドを含むＨＴＴＰリクエストを受信した場合のサーバ２の画像サイズ送信処理の動作フローを例示する図である。図１２の画像サイズ送信処理の動作フローは、一実施形態においては、サーバ２が、画像ファイルの画像サイズを示すサイズ情報を要求するためのコマンドを含むＨＴＴＰリクエストを受信した場合に開始してよい。
【００４９】
Ｓ１２０１においてサーバ２は、受信したＨＴＴＰリクエストで画像サイズが要求されている画像ファイルのファイルフォーマットを特定する。例えば、サーバ２は、ＨＴＴＰレスポンスのContent-Typeのヘッダに登録する情報の特定と同様の手順で、画像ファイルのファイルフォーマットを特定してよい。Ｓ１２０２においてサーバ２は、例えば、特定されたファイルフォーマットにおいて画像サイズが格納されているヘッダ領域を参照することで画像サイズを取得する。例えば、サーバ２は記憶装置を備えていてよく、また、記憶装置に画像サイズ位置情報６００を記憶していてよい。そして、サーバ２は、Ｓ１２０１で特定されたファイルフォーマットに対応するデータ位置６０２と、データサイズ６０３とを記憶装置に記憶されている画像サイズ位置情報６００から特定してよい。更に、サーバ２は、画像ファイルのヘッダ情報を参照し、特定されたデータ位置６０２及びデータサイズ６０３の領域に格納されているデータから画像サイズを取得してよい。Ｓ１２０３において、サーバ２は、特定した画像サイズをサイズ情報として含むＨＴＴＰレスポンスを、ＨＴＴＰリクエストを送信してきた情報処理装置１へと送信し、本動作フローは終了する。
【００５０】
例えば、以上のように、ＨＴＴＰプロトコルに、画像サイズを示すサイズ情報を要求するためのコマンドを用意し、そのコマンドを利用できるようにサーバ２及びクライアントである情報処理装置１の双方に変更を加えることで、実施形態が実装されてもよい。画像サイズを示すサイズ情報を要求するためのコマンドを用意することで、例えば、ＧＥＴコマンドを用いる場合と比較して、ＨＴＴＰレスポンスのデータサイズをより小さくすることができ、コンテンツのレイアウトの決定を早めることができる。なお、図１１及び図１２の例では、ＨＴＴＰリクエストとＨＴＴＰレスポンスを用いる場合を例示したが、実施形態はこれに限定されるものではない。例えば、ＳＰＤＹリクエストを用いる場合にも、画像サイズを示すサイズ情報を要求するためのコマンドを用意し、そのコマンドを利用できるようにサーバ２及びクライアントである情報処理装置１の双方に変更を加えることで、実施形態を実装することができる。
【００５１】
以上で述べたように、いくつかの実施形態によれば、コンテンツの表示のための全てのデータの読み込みが完了する前にユーザが情報処理装置１に指示を入力する場合におけるユーザの誤操作を抑制することができる。
【００５２】
なお、以上の例では、コンテンツのレイアウトの決定の前に、画像の画像サイズを取得し、得られた画像サイズを基にレイアウトの決定を行うことで、ユーザの誤操作を抑制する例を述べた。しかしながら、実施形態はこれに限定されるものではない。例えば、ＪａｖａＳｃｒｉｐｔの実行によりコンテンツのレイアウトの変更が生じる可能性がある場合には、Ｓ７０８のレイアウトの決定の前に、ＪａｖａＳｃｒｉｐｔの実行後のサイズを取得するように実施形態を実装してもよい。
【００５３】
また、上述の例えば、図７、図８、図１１、及び図１２の動作フローは例示であり、実施形態はこれに限定されるものではない。例えば、これらの動作フローは、可能な場合には、処理の順番を変更して実行してもよく、別に更なる処理を含んでいてもよく、又は、一部の処理が省略されてもよい。例えば、図７のＳ７０９及びＳ７１０の処理と、Ｓ７１１の処理とは、ＨＴＭＬファイルにおける記述の順序に応じて順番を入れ替えて実行してもよい。
【００５４】
図１３は、実施形態に係る情報処理装置１及びサーバ２を実現するためのコンピュータ１３００のハードウェア構成を例示する図である。図１３のハードウェア構成は、例えば、プロセッサ１３０１、メモリ１３０２、記憶装置１３０３、読取装置１３０４、通信インタフェース１３０６、入出力装置１３０７、及び表示装置１３１０を備える。なお、プロセッサ１３０１、メモリ１３０２、記憶装置１３０３、読取装置１３０４、通信インタフェース１３０６、入出力装置１３０７、及び表示装置１３１０は、例えば、バス１３０８を介して互いに接続されている。
【００５５】
プロセッサ１３０１は、例えば、ＣＰＵ（Central Processing Unit）であってよい。プロセッサ１３０１は、例えば、メモリ１３０２を利用して上述の動作フローの手順を記述したプログラム５２０を実行することにより、上述した各機能部の一部または全部の機能を提供する。例えば、情報処理装置１の制御部５００は、プロセッサ１３０１であり、また、記憶部５１０は、例えばメモリ１３０２、記憶装置１３０３、及び着脱可能記憶媒体１３０５を含んでいる。情報処理装置１のプロセッサ１３０１は、例えば、記憶装置１３０３に格納されているプログラムを読み出して実行することで、要求出力部５１１、決定部５１２、及び表示情報出力部５１３として機能する。情報処理装置１の記憶装置１３０３には、例えば、プログラム５２０及び画像サイズ位置情報６００が記憶されていてよい。
【００５６】
また、サーバ２のプロセッサ１３０１は、例えば、記憶装置１３０３に格納されているプログラムを読み出して実行することで、図１２の動作フローを実行してよい。この場合に、サーバ２の記憶装置１３０３には、例えば、図１２の動作フローの手順を記述したプログラム及び画像サイズ位置情報６００が記憶されていてよい。
【００５７】
メモリ１３０２は、例えば半導体メモリであり、ＲＡＭ領域及びＲＯＭ領域を含んでいてよい。なお、ＲＡＭは、Random Access Memoryの略称である。また、ＲＯＭは、Read Only Memoryの略称である。記憶装置１３０３は、例えばハードディスク、フラッシュメモリ等の半導体メモリ、又は外部記憶装置である。
【００５８】
読取装置１３０４は、プロセッサ１３０１の指示に従って着脱可能記憶媒体１３０５にアクセスする。着脱可能記憶媒体１３０５は、例えば、半導体デバイス（ＵＳＢメモリ等）、磁気的作用により情報が入出力される媒体（磁気ディスク等）、光学的作用により情報が入出力される媒体（ＣＤ−ＲＯＭ、ＤＶＤ等）などにより実現される。なお、ＵＳＢは、Universal Serial Busの略称である。ＣＤは、Compact Discの略称である。ＤＶＤは、Digital Versatile Diskの略称である。
【００５９】
通信インタフェース１３０６は、プロセッサ１３０１の指示に従ってネットワーク１３２０を介してデータを送受信する。入出力装置１３０７は、例えばユーザからの指示を受け付けるキーボードやマウスなどのデバイスなどの入力装置であってよい。或いは、入出力装置１３０７は、例えばスピーカなどの音声装置などの出力装置であってよい。表示装置１３１０は、例えば、ディスプレーなどの表示装置であってよい。情報処理装置１の表示装置１３１０は、例えば、プロセッサ１３０１から入力された表示情報、配置情報、及び結果情報に従って、コンテンツを表示画面に表示してよい。また、サーバ２は、一実施形態においては、表示装置１３１０を含まなくてもよい。
【００６０】
実施形態に係る各プログラムは、例えば、下記の形態で情報処理装置１及びサーバ２に提供されてよい。
（１）記憶装置１３０３に予めインストールされている。
（２）着脱可能記憶媒体１３０５により提供される。
（３）プログラムサーバなどのサーバ１３３０から提供される。 
【００６１】
以上で述べた実施形態を含むいくつかの実施形態は、上述の実施形態の各種変形形態及び代替形態を包含するものとして当業者には理解される。例えば、各種実施形態は、構成要素を変形して具体化されてよい。また、上述した実施形態に開示されている複数の構成要素を適宜組み合わせることにより、種々の実施形態が実施されてよい。更には、実施形態に示される全構成要素からいくつかの構成要素を削除して又は置換して、或いは実施形態に示される構成要素にいくつかの構成要素を追加して種々の実施形態が実施されてよい。
【符号の説明】
【００６２】
１          情報処理装置
２          サーバ
５          ネットワーク
５００      制御部
５１０      記憶部
１３００    コンピュータ
１３０１    プロセッサ
１３０２    メモリ
１３０３    記憶装置
１３０４    読取装置
１３０５    着脱可能記憶媒体
１３０６    通信インタフェース
１３０７    入出力装置
１３０８    バス
１３１０    表示装置
１３２０    ネットワーク
１３３０    サーバ
【図１】
0006442760.tif 000002
【図２】
0006442760.tif 000003
【図３】
0006442760.tif 000004
【図４】
0006442760.tif 000005
【図５】
0006442760.tif 000006
【図６】
0006442760.tif 000007
【図７】
0006442760.tif 000008
【図８】
0006442760.tif 000009
【図９】
0006442760.tif 000010
【図１０】
0006442760.tif 000011
【図１１】
0006442760.tif 000012
【図１２】
0006442760.tif 000013
【図１３】
0006442760.tif 000014