(57)【特許請求の範囲】
【請求項１】
画面に表示される複数の列のそれぞれの上端から配置された１以上の画像の高さの合計値を、列を識別する識別子と関連付けて格納するデータ構造を記憶する記憶部と、
追加配置するべき画像の高さを表す情報をネットワークにより接続されているサーバ装置より受信する画像情報受信部と、
前記データ構造に格納されている複数の合計値の中の最小値に関連付けられている識別子を前記記憶部に記憶されている前記データ構造を読出して取得する読出部と、
前記取得された識別子により識別される列に、前記追加配置するべき画像を配置するときの列の上端からの距離を、前記取得された識別子と関連付けて前記データ構造に格納されている合計値を用いて決定する位置決定部と、
前記データ構造において、前記取得された識別子と関連付けられる合計値を、前記追加配置するべき画像が前記取得された識別子により識別される列に配置された後のその列の上端から配置された１以上の画像の高さの合計値に更新する更新部と
を有する画像表示装置。
【請求項２】
前記読出部は、前記データ構造に格納されている合計値の中の最小値に関連付けられている識別子が複数ある場合には、その複数の識別子から、画面上に左端に表示される列であるか前記左端の列に最も近い列の識別子を取得することを特徴とする請求項１に記載の画像表示装置。
【請求項３】
画面に表示される複数の列のそれぞれの上端から配置された１以上の画像の高さの合計値を、それぞれの列を識別する識別子と関連付けて格納するデータ構造と、画像情報の表す画像を配置する列を識別する識別子を格納する変数と、を記憶する記憶部と、
追加配置するべき画像の高さを表す情報をネットワークにより接続されているサーバ装置より受信する画像情報受信部と、
前記変数に格納されている識別子と関連付けて前記データ構造に格納されている合計値を読み出す読出部と、
前記変数に格納されている識別子により識別される列に、前記追加配置するべき画像を配置するときの列の上端からの距離を、前記読出部により読み出された合計値を用いて決定する位置決定部と、
前記データ構造において、前記取得された識別子と関連付けられる合計値を、前記追加配置するべき画像が前記取得された識別子により識別される列に配置された後のその列の上端から配置された１以上の画像の高さの合計値に更新し、更新された合計値が所定の列の識別子と関連付けられて前記データ構造に格納されている値以上であれば、前記変数に格納されている識別子を、前記変数により識別される列の隣の列の識別子に更新する更新部と
を有する画像表示装置。
【請求項４】
前記所定の列の識別子は、画面上の左端の列を識別し、前記隣の列は、右隣の列であり、右端の列の隣の列は、左端の列であることを特徴とする請求項３に記載の画像表示装置。
【請求項５】
前記合計値は、画像情報の表す画像を配置する際の余白の大きさを含むことを特徴とする請求項１または３に記載の画像表示装置。
【請求項６】
画像の幅は等しく、前記複数の列は等間隔で画面に表示されることを特徴とする請求項１または３に記載の画像表示装置。
【請求項７】
前記複数の列が表示される幅は、前記画面の幅以下であることを特徴とする請求項６に記載の画像表示装置。
【請求項８】
前記複数の列の数は３であることを特徴とする請求項６または７に記載の画像表示装置。
【請求項９】
画面に表示される複数の列のそれぞれの上端から配置された１以上の画像の高さの合計値を、それぞれの列を識別する識別子と関連付けて格納するデータ構造をメモリに記憶し、
追加配置するべき画像の高さを表す情報をネットワークにより接続されているサーバ装置よりネットワークインターフェースを介して受信し、
前記データ構造に格納されている合計値の中の最小値に関連付けられている識別子を前記メモリに記憶されている前記データ構造を読出して取得し、
前記取得された識別子により識別される列に、前記追加配置するべき画像を配置するときの列の上端からの距離を、前記取得された識別子と関連付けて前記データ構造に格納されている合計値を用いて決定し、
前記データ構造において、前記取得された識別子に関連付けられる合計値を、前記追加配置するべき画像が前記取得された識別子により識別される列に配置された後のその列の上端から配置された１以上の画像の高さの合計値に更新する
ことを計算機に実行させるための画像表示プログラム。
【請求項１０】
前記データ構造に格納されている合計値の中の最小値と関連付けられている識別子が複数ある場合には、その複数の識別子から、画面上に左端に表示される列であるか前記左端の列に最も近い列の識別子を取得することを特徴とする請求項９に記載の画像表示プログラム。
【請求項１１】
画面に表示される複数の列のそれぞれの上端から配置された１以上の画像の高さの合計値を、それぞれの列を識別する識別子と関連付けて格納するデータ構造と、画像情報の表す画像を配置する列を識別する識別子を格納する変数と、をメモリに記憶し、
追加配置するべき画像の高さを表す情報をネットワークにより接続されているサーバ装置より受信し、
前記変数に格納されている識別子と関連付けて前記データ構造に格納されている合計値を読み出し、
前記変数に格納されている識別子により識別される列に、前記追加配置するべき画像を配置するときの列の上端からの距離を、前記読み出された合計値を用いて決定し、
前記データ構造において、前記取得された識別子と関連付けられる合計値を、前記追加配置するべき画像が前記取得された識別子により識別される列に配置された後のその列の上端から配置された１以上の画像の高さの合計値に更新し、更新された合計値が所定の列の識別子と関連付けられて前記データ構造に格納されている値以上であれば、前記変数に格納されている識別子を、前記変数により識別される列の隣の列の識別子に更新する
ことを計算機に実行させるための画像表示プログラム。
【請求項１２】
前記所定の列の識別子は、画面上の左端の列を識別し、前記隣の列は、右隣の列であり、右端の列の隣の列は、左端の列であることを特徴とする請求項１１に記載の画像表示プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像表示装置及び画像表示プログラムに関する。特に、ランク付けされた複数の画像を表示する装置およびプログラムに関する。
【背景技術】
【０００２】
デジタルカメラなどの普及により、画像情報を容易に撮影などすることにより生成できるようになった。また、通信技術およびコンピュータ技術の発達により、撮影などにより生成された画像情報がサーバなどにアップロードされ、インターネット上に多数の画像情報が存在するようになった。また、ウェブページに画像情報のＵＲＬを含ませることにより、画像情報を含むウェブページの閲覧が容易となった。
【０００３】
このような状況において、インターネット上に存在する多数の画像情報を検索用の情報と関連付けて格納し、検索条件に応じて検索を行なうシステムが知られている（例えば、特許文献１参照。）。そのようなシステムのサーバでは、画像情報を格納するファイル名や画像情報を参照するウェブページに含まれる単語などを検索用の情報として格納する。クライアントのブラウザなどからキーワードなどの検索条件が入力されると、複数の画像情報の中から、検索条件に適合する画像情報が検索され、ブラウザなどで閲覧が可能となる。このとき、サーバでは、検索された画像情報に、検索条件に適合する順にランク付けが行なわれる。これにより、ブラウザなどにおいて、ランクの順に画像情報を表示することが可能となる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−２４０６９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
インターネット上に存在する画像情報の幅、高さには様々なものがある。このため、単純にランクの順に画像情報の表わす画像をブラウザの画面上に並べると、表示される画像情報の間に大きく空間が生じるなどにより乱雑な印象を看者に与え、また、画像情報の表わす画像が表示されている位置からその画像情報のランクを知ることが困難となる。
【課題を解決するための手段】
【０００６】
本発明の一実施形態として、画面に表示される複数の列のそれぞれの上端から配置された１以上の画像の高さの合計値を、列を識別する識別子と関連付けて格納するデータ構造を記憶する記憶部と、追加配置するべき画像の高さを表す情報をネットワークにより接続されているサーバ装置より受信する画像情報受信部と、前記データ構造に格納されている複数の合計値の中の最小値に関連付けられている識別子を前記記憶部に記憶されている前記データ構造を読出して取得する読出部と、前記取得された識別子により識別される列に、前記追加配置するべき画像を配置するときの列の上端からの距離を、前記取得された識別子と関連付けて前記データ構造に格納されている合計値を用いて決定する位置決定部と、前記データ構造において、前記取得された識別子と関連付けられる合計値を、前記追加配置するべき画像が前記取得された識別子により識別される列に配置された後のその列の上端から配置された１以上の画像の高さの合計値に更新する更新部とを有する画像表示装置を提供する。
【０００７】
本発明の一実施形態として、画面に表示される複数の列のそれぞれの上端から配置された１以上の画像の高さの合計値を、それぞれの列を識別する識別子と関連付けて格納するデータ構造と、画像情報の表す画像を配置する列を識別する識別子を格納する変数と、を記憶する記憶部と、追加配置するべき画像の高さを表す情報をネットワークにより接続されているサーバ装置より受信する画像情報受信部と、前記変数に格納されている識別子と関連付けて前記データ構造に格納されている合計値を読み出す読出部と、前記変数に格納されている識別子により識別される列に、前記追加配置するべき画像を配置するときの列の上端からの距離を、前記読出部により読み出された合計値を用いて決定する位置決定部と、前記データ構造において、前記取得された識別子と関連付けられる合計値を、前記追加配置するべき画像が前記取得された識別子により識別される列に配置された後のその列の上端から配置された１以上の画像の高さの合計値に更新し、更新された合計値が所定の列の識別子と関連付けられて前記データ構造に格納されている値以上であれば、前記変数に格納されている識別子を、前記変数により識別される列の隣の列の識別子に更新する更新部とを有する画像表示装置を提供する。
【０００８】
また、本発明の一実施形態として、計算機を、上記いずれかの実施形態に係る画像表示装置として動作させるためのプログラムを提供する。
【発明の効果】
【０００９】
本発明により、画像情報の表わす画像が表示された位置からその画像情報のランクを容易に知ることができる画像表示装置及び画像表示プログラムが提供される。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態に係るシステムの概略構成図である。
【図２】本発明の一実施形態に係る画像表示装置の機能ブロック図である。
【図３】本発明の一実施形態に係る画像表示装置の管理するデータ構造を説明する図である。
【図４】本発明の一実施形態に係る画像表示装置における処理のフローチャートである。
【図５】計算機の機能ブロック図の一例図である。
【図６】本発明の一実施形態に係る画像表示装置における処理のフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態を、図面を参照しながら説明する。なお、本発明は以下の形態に限定されることはなく、種々の変形を行なって実施することが可能である。
【００１２】
（実施形態１）
図１は、本発明の一実施形態に係る画像表示装置を含むシステム１００の概略構成図である。システム１００は、サーバ１０１と画像表示装置１０２とを備え、サーバ１０１と画像表示装置１０２とは、インターネットなどの通信網１０３を介して相互に通信が可能である。図１において、画像表示装置１０２が１台のみ示されているが、画像表示装置は複数存在し、それらが通信網１０３に接続されていてもよい。同様にサーバ１０１も複数存在し、それらが通信網１０３に接続されていてもよい。
【００１３】
サーバ１０１は、画像情報に対してキーワードなどの検索情報を関連付け、画像表示装置１０２に対して画像の検索サービスを提供する。すなわち、画像表示装置１０２に画像情報の検索条件が入力されると、その検索条件がサーバ１０１に送信され、サーバ１０１にて画像情報の検索が行なわれる。その検索の結果は、画像表示装置１０２に返信される。そして、画像表示装置１０１により、検索の結果に含まれる画像情報の表わす画像の表示が行なわれる。（なお、「画像情報」と「画像情報の表わす画像」とは一般には異なる概念であるが、以下では、「画像情報の表わす画像」を「画像情報」と略記する場合がある。文脈より、「画像情報」が、情報としての「画像情報」を意味するのか、「画像情報の表わす画像」のか、区別することが可能であるからである）
【００１４】
サーバ１０１にて行なわれる画像情報の検索の結果においては、画像情報にランク（順序）が付けられている。例えば、サーバ１０１に入力された検索結果に適合する順に順序が付けられていたり、検索の結果に含まれる頻度や画像に対するクリックの数の順に順序が付けられていたりするのが好ましい。
【００１５】
また、サーバ１０１は検索のためのサーバである必要はない。例えば、サーバ１０１は、複数の画像情報を一つのコンテンツとして提供する機能を提供してもよい。このようなコンテンツは、複数の画像情報をＵＲＬなどにより参照するウェブページとして提供することができる。この場合には、画像表示装置１０２からコンテンツの識別情報がサーバ１０１に送信されると、その識別情報により識別されるコンテンツがサーバ１０１から画像表示装置１０２へ送信されるようになっていてもよい。また、サーバ１０１から一方的に、時間の経過に応じて種々のコンテンツが画像表示装置１０２へ送信されるようになっていてもよい。
【００１６】
本発明では、後に説明されるように、画像表示装置１０１により、検索の結果に含まれる画像情報の表示が行なわれるときには、検索の結果における画像情報に付されたランク（順序）が加味して表示が行なわれる。
【００１７】
図２は、本発明の一実施形態に係る画像表示装置の機能ブロック図を示す。画像表示装置２００は、画像情報受信部２０１と、画像情報記憶部２０２と、画像配置制御部２０３と、表示部２０４とを有する。
【００１８】
表示部２０４は、画像情報の表す画像を表示する。表示部２０４は、画面上に列に分けて画像を表示する。すなわち、画面の左端から、第１列、第２列、第３列、…、第Ｎ列に分けられた領域に画像が表示される。各列は、垂直方向（あるいは水平方向）に上端（左端）から下方（右方）に向けて延びて表示される領域である。以下では、各列は垂直方向に延びている領域として説明を行なう。
【００１９】
本実施形態においては、複数の画像が、各列の上端から下方に向けて配置される。このとき、列の上端から、その列に配置された画像のうち一番下に配置されている画像の下端までの距離を、その列に配置された１以上の画像の高さの合計値（あるいは、高さの和）ということにする。画像と画像との間が離れて配置されている場合には、画像と画像との間の距離も含めた値が「１以上画像の高さの合計値」となる。このように画像と画像との間が離れて配置される場合、画像と画像との間を余白という場合がある。
【００２０】
画像情報受信部２０１は、画像情報を受信する。画像情報受信部２０１は、一般には、複数の画像情報を受信する。このような画像情報は、上述のように、検索条件に従ってサーバ１０１で検索された画像情報であったり、コンテンツを構成する画像情報であったり、サーバ１０１より一方的に送信される画像情報であったりする。
【００２１】
また、画像情報受信部２０１による受信において、先に画像情報の表す画像のサイズ（高さ、幅）、使用される色情報などの画像情報の属性情報が先に受信され、その後、画像情報そのものが受信されるようになっていてもよい。これにより、例えば画像情報の表す画像の高さが受信されると、その画像をどこに配置して表示するかを計算し、その後に受信される画像情報の表す画像を、その計算に従って配置することができる。また、この場合には、画像情報は、サーバ１０１と非同期の通信によって受信することができる。画面に表示する画像の全ての画像情報を一度に受信する必要がなくなり、スクロールなどが発生し表示することが必要になった画像情報をサーバ１０１が送信可能になった順に送信することができ、画像情報の送信順序に制約がなくなる。
【００２２】
画像情報受信部２０１がランク付けされた画像情報を受信する場合、ランクの順にしたがって画像情報の属性情報を受信するのが好ましい。例えば、サーバ１０１に送信した検索条件に応じて検索結果の画像情報が取得される場合、検索条件に対する適合度の順に、画像情報の表す画像の高さなどが受信するようになっていることが好ましい。このために、サーバ１０１は、適合度の順に、画像情報の表す画像の高さなどを、画像表示装置２００に送信する。
【００２３】
画像情報記憶部２０２は、画像情報受信部２０１により受信された画像情報を記憶する。例えば、後に説明される二次記憶５０４に記憶する。また、画像情報記憶部２０２は、画像情報に、検索条件に対する適合度の順を関連付けて記憶してもよい。
【００２４】
画像配置制御部２０３は、画像情報受信部２０１により受信された画像情報の表す画像を、表示部２０４により表示が行なわれる画面上のどこに配置して表示するかを決定する。本実施形態において、画像配置制御部２０３は、所定の数の列に、画像情報の表す画像を、列の上端から下端に向かって配置する。このために、画像配置制御部２０３は、列に配置された画像の高さの和を、その列の識別子に関連付けて格納するデータ構造を有する。このデータ構造は、例えば、列の数分の要素により構成される配列として構成され、各要素には、対応する列の上端から配置された画像の高さの和の値が格納される。この場合、列の識別子は、列の番号となる。また、距離は、例えばピクセルを単位として測定される。
【００２５】
なお、配列以外にも、連想配列などを用いて、列を識別する識別子として、数値以外である文字列などの任意のデータを用いることもできる。
【００２６】
図３（ａ）は、そのようなデータ構造の一例としての配列の構造を示す。図３において、画像情報の表す画像が配置される列の数がＮであるとすると、その配列はＮ個の要素３０１、３０３、３０３、…、３０Ｎを有する。以下では、要素３０１、３０３、３０３、…、３０Ｎの値をＹ［１］、Ｙ［２］、Ｙ［３］、…、Ｙ［Ｎ］と表す。
【００２７】
図３（ｂ）は、Ｙ［１］、Ｙ［２］、Ｙ［３］、…、Ｙ［Ｎ］の値と、配置された画像との関係を示す。図３（ｂ）に示すように第１列の上方から画像３１１，画像３１２が配置され、第２列の上方から画像３１３，画像３１４が配置され、第３列に画像３１５が配置され、第Ｎ列に画像３１６が配置されているとする。すると、Ｙ［１］は、画像３１１と画像３１２との高さの合計となり、Ｙ［２］は画像３１３と画像３１４との高さの合計となり、Ｙ［３］は画像３１５の高さとなり、Ｙ［Ｎ］は、画像３１６の高さとなる。
【００２８】
１つの画像の高さの合計は、その画像の高さと定義することができる。また、画像が存在しない場合における画像の高さの合計は０と定義することができる。
【００２９】
図３（ｂ）に示すように、例えばＹ［１］には、画像３１１と画像３１２との間の余白の高さも含まれる。すなわち、画像３１１の高さが６００ピクセル、画像３１２の高さが２５０ピクセル、画像と画像の間に１０ピクセルの余白が配置される場合には、Ｙ［１］の値は、６００＋１０＋２５０で計算される値となる。画像３１２の下に、１０ピクセルの余白と別の画像（高さ２００ピクセル）の画像が配置されると、Ｙ［１］の値は、６００＋１０＋２５０＋１０＋２００で計算される値となる。
【００３０】
また、図３（ｂ）において、各列の左右方向の位置（画像が列に配置される方向とは垂直な方向における位置）は、例えば、サーバ１０１より送信される画像情報の表す画像の幅が同一（例えば、３００ピクセル）であれば、画像の幅に（列の番号−１）を乗ずる値を用いて算出することができる。あるいは、画像の幅とその右の余白の幅との和に（列の番号−１）を乗ずる値を用いて算出することができる。この場合、列を等間隔で表示されることになる。また、列の上端からの画像の位置が決定された後に、各列に配置された画像の幅の最大値を求めて、それを加算することにより、各列の左右方向の位置を算出することもできる。
【００３１】
なお、列の数は任意に選択可能である。ただし、列の数が大きくなると、横スクロールしないと画像が見られなくなるので、複数の列が表示される幅は、画面の幅以下であるように、列の数が選択されるのが好ましい。例えば、通常のパーソナルコンピュータに接続されるディスプレイは、横に１２８０ピクセルが表示可能であることが多いので、画像の幅を２５０ピクセルから３５０ピクセルとして、列の数を３ないし４とするのが好ましい。
【００３２】
なお、列の数（Ｎ）は、固定されている必要はない。たとえば、画像情報がウィンドウに配置される場合、ウィンドウの幅の増減に応じて、列の数が増減してもよい。たとえば、画像の幅が３００ピクセルの場合、ウィンドウの幅が１２００ピクセル未満の場合には、列の数を３とし、ウィンドウの幅が１２００ピクセル以上１５００ピクセル未満の場合には、列の数を４とし、ウィンドウの幅が１５００ピクセル以上１８００ピクセル未満の場合には、列の数を５とすることができる。
【００３３】
図４は、主に画像配置制御部２０３による処理を説明するフローチャートである。まず、ステップＳ４０１として、Ｙ［１］、Ｙ［２］、Ｙ［３］、…、Ｙ［Ｎ］それぞれに０を代入する。これは、画像情報が配置されていない状態では、各列において画像情報が占めている領域の高さは０と定義できるからである。
【００３４】
ステップＳ４０２の処理として、画像情報を一つ取得する。取得される画像情報は、すでに配置された画像情報の表す画像に追加して配置する画像を表す。ステップＳ４０２における画像情報の取得は、画像情報受信部２０１により画像情報が取得されるごとに行なわれてもよいし、画像情報受信部２０１によりまとめて受信された複数の画像情報からランクなどの順に従って、画像情報の一つずつに行なうものであってもよい。なお、ステップＳ４０２においては、一つの画像情報の全体を取得する必要はなく、一つの画像情報の表す画像の少なくとも高さが取得できればよい。画像情報が画像情報記憶部２０２に記憶されていなければ、ステップＳ４０３の処理として、ステップＳ４０２において取得された画像情報を画像情報記憶部２０２に記憶する。
【００３５】
ステップＳ４０４の処理として、ｍｉｎ｛ｉ|Ｙ［ｉ］＝ｍｉｎ｛Ｙ［１］、Ｙ［２］、Ｙ［３］、…、Ｙ［Ｎ］｝｝を求めて変数Ｍに代入する。ここに、｛ｉ|ｉに関する条件｝は、「ｉに関する条件」を満たす全てのｉの値の集合を表し、ｍｉｎは、集合の要素の中で最小の値を算出する演算子である。例えば、ｍｉｎ｛ｉ|ｉは５以下の素数｝＝｛２、３、５｝であり、ｍｉｎ｛５、３、６、２、１０｝＝２となる。
【００３６】
したがって、｛ｉ|Ｙ［ｉ］＝ｍｉｎ｛Ｙ［１］、Ｙ［２］、Ｙ［３］、…、Ｙ［Ｎ］｝｝は、第１列から第Ｎ列のうち、その列に配置された画像情報の高さの合計値が最小となる列の番号（列を識別する識別子）の集合となる。また、そのような列の番号のうち、最も小さい列（最も左側の列）の番号が、ｍｉｎ｛ｉ|Ｙ［ｉ］＝ｍｉｎ｛Ｙ［１］、Ｙ［２］、Ｙ［３］、…、Ｙ［Ｎ］｝となる。すなわち、データ構造Ｙに格納されている合計値の中の最小値と関連付けられている識別子が求められる。また、データ構造Ｙに格納されている合計値の中の最小値と関連付けられている識別子が複数あれば、画面上の左端の列であるか、左端の列に最も近い列の識別子が取得される。
【００３７】
ステップＳ４０５の処理として、ステップＳ４０２にて受信した画像情報の表す画像を第Ｍ列に配置する位置を、Ｙ［Ｍ］の値を用いて決定する。例えば、ステップＳ４０２にて受信した画像情報の表す画像を、第Ｍ列の上端からＹ［Ｍ］の距離離れた位置に配置したり、第Ｍ列の上端から［Ｍ］の距離離れた位置に所定の高さの余白を配置し、その余白の下に配置したりする。これを単純に、ステップＳ４０２にて受信した画像情報を第Ｍ列に加えるという場合がある。
【００３８】
ステップＳ４０５の処理により、第Ｍ列に配置された画像情報の高さが増えたので、ステップＳ４０６の処理において、Ｙ［Ｍ］の値を、ステップＳ４０２にて受信した画像情報が第Ｍ列に加えられた後における、第Ｍ列に配置されている画像の高さの合計値とする。例えば、第Ｍ列の上端からＹ［Ｍ］の距離離れた位置に所定の高さの余白を配置し、その余白の下にステップＳ４０２にて受信した画像情報の表す画像を配置した場合には、Ｙ［Ｍ］の値に、余白の高さと、ステップＳ４０２にて受信した画像情報の表す画像の高さとを加えた値をＹ［Ｍ］に代入する。
【００３９】
ステップＳ４０７において、処理を終了するかどうかを判断し、処理を終了しないのであれば、ステップＳ４０２に戻る。
【００４０】
以上の処理によれば、それまでに画像情報が配置された列のうち、画像情報の高さの合計が最小となる列に、次の画像情報が加えられる。したがって、配置された画像情報の看者は、上方に配置された画像情報のランクが、下方に配置された画像情報のランクより高いことを知ることができる。また、それまでに画像情報が配置された列のうち、画像情報の高さの合計が最小となる列が複数ある場合には、列の番号が最小となる列に画像情報が加えられる。したがって、配置された画像情報の看者は、列の番号が小さい列に配置された画像情報のランクが、列の番号が大きい列に配置された画像情報のランクより高いことを知ることができる。
【００４１】
なお、図４に示す処理を実行するために、画像配置制御部２０３は、記憶部２０５と、読出部２０６と、位置決定部２０７と、更新部２０８とを有していてもよい。記憶部２０５は、図３（ａ）に示すデータ構造を記憶する。読出部２０６は、ステップＳ４０４を実行する。すなわち、読出部２０６は、記憶部２０５に記憶されているデータ構造を読み出し、ｍｉｎ｛ｉ|Ｙ［ｉ］＝ｍｉｎ｛Ｙ［１］、Ｙ［２］、Ｙ［３］、…、Ｙ［Ｎ］｝の値を取得する。位置決定部２０７は、ステップＳ４０５を実行する。すなわち、位置決定部２０７は、Ｙ［Ｍ］の値を用いて、第Ｍ列に画像を配置する位置を決定する。更新部２０８は、ステップＳ４０６を実行する。すなわち、更新部２０８は、画像が加えられた後の第Ｍ列に配置された画像の高さの合計値を、Ｙ［Ｍ］の値とする。
【００４２】
また、画像情報がウィンドウ内に配置された後で、ウィンドウの幅が増減した場合、その増減に応じて、列の数を増減させてもよい。列の数が増減される場合には、図４のフローチャートの処理を再度行い、画像情報の配置の位置を決定する。この場合、ステップＳ４０２は、「画像情報記憶部２０２に次のランクと関連づけられて記憶されている画像情報の表わす画像の大きさを取得する」と読み替える。
【００４３】
なお、画像表示装置２００は、計算機を用いて実現することができる。計算機の機能ブロック図の一例は図５に示す通りである。すなわち、計算機５００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）５０１と、主記憶としてのＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）５０２と、電源投入後に実行するプログラムなどを格納するＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）５０３と、二次記憶５０４と、通信Ｉ／Ｆ５０５と、表示Ｉ／Ｆ５０６とがバスにより相互に接続された構成を有する。
【００４４】
計算機５００の電源が投入されると、ＲＯＭ５０３に記憶されたプログラムがＣＰＵ５０１により実行される。このプログラムの実行により、二次記憶５０４に記憶されたオペレーティングシステムなどを構成するプログラムがＲＡＭ５０２にロードされ、ＣＰＵ５０１により実行される。そのようなプログラムに、例えばブラウザなどがある。ブラウザの実行により、通信Ｉ／Ｆ５０５を介してサーバ１０１との通信が開始され、サーバ１０１に検索条件を送信するなどして、サーバ１０１より画像情報の受信が可能となる。そして、ブラウザの一部、あるいはプラグインプログラムによって、図４に示される処理が実行される。画像情報の配置が決定すると、表示Ｉ／Ｆ５０６によりディスプレイに表示が行なわれる。
【００４５】
画像情報受信部２０１は、通信Ｉ／Ｆ５０５に対応し、画像情報記憶部２０２は、二次記憶５０４に対応し、表示部２０４は、表示Ｉ／Ｆに対応する。画像配置制御部２０３は、主にＣＰＵ５０１とＲＡＭ５０２とに対応し、記憶部２０５は、ＲＡＭ５０２に対応し、読出部２０６、位置決定部２０７、更新部２０８は、ＣＰＵ５０１により実行され、主に図４に示されるフローチャートの処理を実行するプログラムに対応する。
【００４６】
図４に示されるフローチャートの処理を実行するプログラムは、サーバ１０１などよりダウンロードされたプログラムによって実行されるようになっていてもよい。そのようなプログラムは、サーバ１０１などより送信されるウェブページにスクリプトして埋め込まれたり、サーバ１０１などにより送信されるウェブページに埋め込まれているＵＲＬにより参照されるスクリプトとなっていたりすることにより、画像表示装置にダウンロード可能となっていてもよい。
【００４７】
（実施形態２）
本発明の実施形態２に係る画像表示装置の構成は、実施形態１に係る画像表示装置の構成と同様である。ただし、画像を配置する処理が異なる。図６は、本実施形態に係る画像表示装置の処理のフローチャートを示す。
【００４８】
ステップＳ６０１は、ステップＳ４０１に対応する。例えば、Ｙ［１］、Ｙ［２］、Ｙ［３］、…、Ｙ［Ｎ］それぞれに０を代入する。
【００４９】
ステップＳ６０２の処理として、変数Ｍに１を代入する。変数Ｍは、次に画像情報を追加する列の識別情報を格納する変数である。本実施形態では、実施形態１と同様に、列の番号が小さい列に配置された画像情報のランクが、列の番号が大きい列に配置された画像情報のランクより高くなるようにするために、Ｍの初期値を１とする。すなわち、１は、画面に表示される左端の列の識別子である。１のかわりに、右端の列の識別子としてもよいし、他の位置の列の識別子としてもよい。
【００５０】
ステップＳ６０３の処理として、ステップＳ４０２と同様に、画像情報を受信し、ステップＳ６０４の処理として、ステップＳ４０３と同じく、画像情報を一つ取得する。
【００５１】
本実施形態では、ステップＳ６０４にて取得された画像情報は、第Ｍ列に追加される。このため、ステップＳ６０５の処理として、Ｙ［Ｍ］の値を、ステップＳ６０３で受信した画像情報の表す画像が第Ｍ列に追加された後において、第Ｍ列に配置されている画像の高さの合計値に更新する。
【００５２】
ステップＳ６０６の処理として、Ｙ［Ｍ］がＹ［１］の値以上であるかどうかを判断する。もし、Ｙ［Ｍ］がＹ［１］の値以上でなければ、ステップＳ６０３へ戻る。もし、Ｙ［Ｍ］がＹ［１］の値以上であれば、ステップＳ６０７へ移行し、Ｍを１だけ増加させる。Ｍの値は列の番号であるので、ステップＳ６０８の処理として、ＭがＮを越えたかどうかを判断し、そうであれば、ステップＳ６０９の処理としてＭを１にする。その後、処理を終了するかどうかを判断し、処理を終了しないのであれば、ステップＳ６０３に戻る。
【００５３】
本実施形態では、変数Ｍの値が１から順に大きくなり、Ｎを越えると１に戻ることが繰り返されるので、言い換えると、変数Ｍの値が順に隣の列を識別する識別子となるので、配置された画像情報の看者は、列の番号が小さい列に配置された画像情報のランクが、列の番号が大きい列に配置された画像情報のランクより高いことを知ることができる。また、各列に配置されている画像情報の高さが第１列に配置される画像の高さを超えるまで、画像情報が加えられるので、配置された画像情報の看者は、上方に配置された画像情報のランクが、下方に配置された画像情報のランクより高いことを知ることができる。
【００５４】
本実施形態においては、記憶部２０５は、データ構造（Ｙ）に加えて変数Ｍを記憶する。読出部２０６は、変数Ｍに格納されている識別子に関連付けてデータ構造に格納されている値（Ｙ［Ｍ］）を読出す。更新部２０８は、Ｙ［Ｍ］の値を更新するとともに、変数Ｍに格納されている識別子を、隣の列を識別する識別子に更新する。隣の列とは、例えば、右隣の列であり、右端の列の隣の列は、左端の列と定義することができる。
【符号の説明】
【００５５】
２００  画像表示装置、２０１  画像情報受信部、２０２  画像情報記憶部、２０３  画像配置制御部、２０５  記憶部、２０６  読出部、２０７  位置決定部、２０８  更新部
【図１】
0005486443.tif 000002
【図２】
0005486443.tif 000003
【図３】
0005486443.tif 000004
【図４】
0005486443.tif 000005
【図５】
0005486443.tif 000006
【図６】
0005486443.tif 000007