(57)【特許請求の範囲】
【請求項１】
少なくとも１つの表示部品に文字列を表示するための第１の表示情報を記憶装置に記憶する表示情報記憶制御手段と、
前記表示部品それぞれに表示する前記文字列に関する文字列情報を所定の種類毎に記憶装置に記憶する文字列情報記憶手段と、
前記表示情報記憶制御手段によって記憶された第１の表示情報と、前記文字列情報記憶手段によって記憶された文字列情報とを用いて、前記表示部品と前記文字列との表示を行う表示制御手段と、
前記表示制御手段に用いられる文字列情報の種類から他の種類への切り替えが指定されたとき、前記切り替えが指定された種類の文字列情報を解析する文字列情報解析手段と、
前記文字列解析手段による前記切り替えが指定された種類の文字列情報の解析に基づいて、該文字列情報を前記表示部品に表示するための第２の表示情報を作成する表示情報作成手段と、
前記表示情報記憶制御手段によって記憶された第１の表示情報を前記表示情報作成手段によって作成された第２の表示情報に変更する表示情報変更手段と、
を備え、
前記表示制御手段は、
前記表示制御手段に用いられる文字列情報の種類から他の種類への切り替えが指定されるまでは、前記表示情報変更手段によって変更された第２の表示情報を用いて、前記表示部品と前記文字列との表示を行うことを特徴とする情報処理装置。
【請求項２】
前記表示制御手段は、前記表示部品と前記文字列とを画面に表示し、
前記表示情報作成手段は、前記表示制御手段によって表示が行われる前記画面に設定された解像度に基づいて前記第２の表示情報を作成することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記文字列情報記憶手段は、外部記憶装置から受け付けた、前記文字列情報記憶手段によって前記記憶装置に記憶した文字列情報とは異なる種類の文字列情報を前記記憶装置に記憶し、
前記文字列解析手段は、前記異なる種類の文字列情報を解析し、
前記表示情報作成手段は、前記文字列解析手段による前記異なる種類の文字列情報の解析に基づいて、該文字列情報を前記表示部品に表示するための第２の表示情報を作成することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記表示制御手段は、前記画面に表示される所定の表示領域に前記少なくとも１つの表示部品を表示し、
前記表示情報作成手段は、前記文字列情報解析手段による解析に基づいて、前記少なくとも１つの表示部品それぞれの表示範囲と、前記表示領域における表示位置を決定することにより前記第２の表示情報を作成することを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記表示情報作成手段は、さらに、決定した前記少なくとも１つの表示部品それぞれの表示範囲と、前記表示領域における表示位置に応じて前記表示領域の大きさを決定することにより前記第２の表示情報を作成することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記文字列情報の所定の種類は言語の種類であることを特徴とする請求項１に記載の情報処理装置。
【請求項７】
前記文字列情報は、前記表示部品それぞれを識別するための識別情報と、前記表示部品それぞれに表示される文字列と、該文字列それぞれの文字列長とを対応付けた情報であることを特徴とする請求項１に記載の情報処理装置。
【請求項８】
コンピュータに、
少なくとも１つの表示部品に文字列を表示するための第１の表示情報を記憶装置に記憶する表示情報記憶制御手順と、
前記表示部品それぞれに表示する前記文字列に関する文字列情報を所定の種類毎に記憶装置に記憶する文字列情報記憶手順と、
前記表示情報記憶制御手順で記憶された第１の表示情報と、前記文字列情報記憶手順で記憶された文字列情報とを用いて、前記表示部品と前記文字列との表示を行う表示制御手順と、
前記表示制御手順で用いられる文字列情報の種類から他の種類への切り替えが指定されたとき、前記切り替えが指定された種類の文字列情報を解析する文字列情報解析手順と、
前記文字列解析手順における前記切り替えが指定された種類の文字列情報の解析に基づいて、該文字列情報を前記表示部品に表示するための第２の表示情報を作成する表示情報作成手順と、
前記表示情報記憶制御手順で記憶された第１の表示情報を前記表示情報作成手順で作成された第２の表示情報に変更する表示情報変更手順と、
を実行させるためのプログラムであって、
前記表示制御手順は、
前記表示制御手順で用いられる文字列情報の種類から他の種類への切り替えが指定されるまでは、前記表示情報変更手順で変更された第２の表示情報を用いて、前記表示部品と前記文字列との表示を行う手順であることを特徴とするプログラム。
【請求項９】
前記表示制御手順は、前記表示部品と前記文字列とを画面に表示する手順を含み、
前記表示情報作成手順は、前記表示制御手順で表示が行われる前記画面に設定された解像度に基づいて前記第２の表示情報を作成する手順を含むことを特徴とする請求項８に記載のプログラム。
【請求項１０】
前記文字列情報記憶手順は、外部記憶装置から受け付けた、前記文字列情報記憶手順によって前記記憶装置に記憶した文字列情報とは異なる種類の文字列情報を前記記憶装置に記憶する手順を含み、
前記文字列解析手順は、前記異なる種類の文字列情報を解析する手順を含み、
前記表示情報作成手順は、前記文字列解析手順における前記異なる種類の文字列情報の解析に基づいて、該文字列情報を前記表示部品に表示するための第２の表示情報を作成する手順を含むことを特徴とする請求項８に記載のプログラム。
【請求項１１】
前記表示制御手順は、前記画面に表示される所定の表示領域に前記少なくとも１つの表示部品を表示する手順を含み、
前記表示情報作成手順は、前記文字列情報解析手順における解析に基づいて、前記少なくとも１つの表示部品それぞれの表示範囲と、前記表示領域における表示位置を決定することにより前記第２の表示情報を作成する手順を含むことを特徴とする請求項８に記載のプログラム。
【請求項１２】
前記表示情報作成手順は、さらに、決定した前記少なくとも１つの表示部品それぞれの表示範囲と、前記表示領域における表示位置に応じて前記表示領域の大きさを決定することにより前記第２の表示情報を作成する手順を含むことを特徴とする請求項１１に記載のプログラム。
【請求項１３】
前記文字列情報の所定の種類は言語の種類であることを特徴とする請求項８に記載のプログラム。
【請求項１４】
前記文字列情報は、前記表示部品それぞれを識別するための識別情報と、前記表示部品それぞれに表示される文字列と、該文字列それぞれの文字列長とを対応付けた情報であることを特徴とする請求項８に記載のプログラム。
【請求項１５】
請求項８乃至１４のいずれか一項に記載のプログラムを記録したコンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ファクシミリ装置，プリンタ，複写機，複合機，コンピュータを含む機器の表示制御装置とプログラムとコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
昨今、世情がグローバル化しており、それに伴い、プリンタ，ファクシミリ装置，複写機，スキャナ，複合機，パーソナルコンピュータ（ＰＣ）を含む情報機器におけるグラフィカルユーザインタフェース（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ：ＧＵＩ）として表示される言語も１種類だけでなく、複数種類を用意する必要が出てきていいる。
また、一台のＰＣに１言語というわけではなく、複数の言語を切り替えて利用するシーンも多くなってきている。
しかし、世界の言語をすべて収録したパッケージを提供しようとすると、容量が肥大化して扱い難いものになってしまう。
ドライバで複数言語のパッケージがある場合、インストールされるパッケージの言語によって、デフォルトで利用されるシステムフォントなどが異なる。
【０００３】
そのため、言語に依存したリソースファイルを用いた場合、言語の種類によってはフォントを表示する領域が大きすぎて、その領域内に表示される文字列との大きさのバランスが悪かったり、あるいは、領域が小さすぎて領域内に表示された文字列の一部の文字が途切れて表示されなくなってしまったりする。
それを解決するため、リソースとフォントを１対１に結びつけて、動的にリソースを生成してインストールを行うことにより、サイズが小さく、また言語によって異なるフォントに最適化されたリソースを用いてインストールを行う技術がすでに知られている。
また、従来、リソースと言語ファイルを独立させてインストール時に言語ファイルからリソースを生成し、言語ファイルにあったリソースを生成してインストールすることにより、複数言語があるドライバをインストールする際の容量を削減する方法（例えば、特許文献１参照）があった。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来のインストール時に言語とリソースを１対１に対応づけてインストールする方法では、インストールされたドライバの言語を切り替えたい場合、インストール時に対応付けられていない種類の言語には切り換えることができない。
そして、所望の種類の言語に切り替えてドライバを利用するためには、その種類の言語のドライバを再度インストールする手間がかかり、利用者の利便性が損なわれるという問題があった。
また、インストール時に言語ファイルからリソースを生成する方法でも、所望の言語をすぐに切り換えることができないという欠点は解消できない。
この発明は上記の点に鑑みてなされたものであり、ドライバのサイズを不必要に大きくせず、表示言語の種類を容易に切り替えられるようにすることを目的とする。
【課題を解決するための手段】
【０００５】
この発明は上記の目的を達成するため、情報処理装置において、少なくとも１つの表示部品に文字列を表示するための第１の表示情報を記憶装置に記憶する表示情報記憶制御手段と、上記表示部品それぞれに表示する上記文字列に関する文字列情報を所定の種類毎に記憶装置に記憶する文字列情報記憶手段と、上記表示情報記憶制御手段によって記憶された第１の表示情報と、上記文字列情報記憶手段によって記憶された文字列情報とを用いて、上記表示部品と上記文字列との表示を行う表示制御手段と、上記表示制御手段に用いられる文字列情報の種類から他の種類への切り替えが指定されたとき、上記切り替えが指定された種類の文字列情報を解析する文字列情報解析手段と、上記文字列解析手段による上記切り替えが指定された種類の文字列情報の解析に基づいて、その文字列情報を上記表示部品に表示するための第２の表示情報を作成する表示情報作成手段と、上記表示情報記憶制御手段によって記憶された第１の表示情報を上記表示情報作成手段によって作成された第２の表示情報に変更する表示情報変更手段と、を設け、上記表示制御手段が、上記表示制御手段に用いられる文字列情報の種類から他の種類への切り替えが指定されるまでは、上記表示情報変更手段によって変更された第２の表示情報を用いて、上記表示部品と上記文字列との表示を行うようにしたものである。
このような情報処理装置において、上記表示制御手段が、上記表示部品と上記文字列とを画面に表示し、上記表示情報作成手段が、上記表示制御手段によって表示が行われる上記画面に設定された解像度に基づいて上記第２の表示情報を作成するようにするとよい。
あるいは、上記文字列情報記憶手段が、外部記憶装置から受け付けた、上記文字列情報記憶手段によって上記記憶装置に記憶した文字列情報とは異なる種類の文字列情報を上記記憶装置に記憶し、上記文字列解析手段が、上記異なる種類の文字列情報を解析し、上記表示情報作成手段は、上記文字列解析手段による上記異なる種類の文字列情報の解析に基づいて、その文字列情報を上記表示部品に表示するための第２の表示情報を作成するようにするとよい。
あるいは、上記表示制御手段が、上記画面に表示される所定の表示領域に上記少なくとも１つの表示部品を表示し、上記表示情報作成手段が、上記文字列情報解析手段による解析に基づいて、上記少なくとも１つの表示部品それぞれの表示範囲と、上記表示領域における表示位置を決定することにより上記第２の表示情報を作成するようにするとよい。
上記表示情報作成手段が、さらに、決定した上記少なくとも１つの表示部品それぞれの表示範囲と、上記表示領域における表示位置に応じて上記表示領域の大きさを決定することにより上記第２の表示情報を作成するようにするとよい。
また、上記文字列情報の所定の種類が言語の種類であるとよい。
あるいは、上記文字列情報が、上記表示部品それぞれを識別するための識別情報と、上記表示部品それぞれに表示される文字列と、その文字列それぞれの文字列長とを対応付けた情報であるとよい。
【０００６】
また、この発明のプログラムは、コンピュータに、少なくとも１つの表示部品に文字列を表示するための第１の表示情報を記憶装置に記憶する表示情報記憶制御手順と、上記表示部品それぞれに表示する上記文字列に関する文字列情報を所定の種類毎に記憶装置に記憶する文字列情報記憶手順と、上記表示情報記憶制御手順で記憶された第１の表示情報と、上記文字列情報記憶手順で記憶された文字列情報とを用いて、上記表示部品と上記文字列との表示を行う表示制御手順と、上記表示制御手順で用いられる文字列情報の種類から他の種類への切り替えが指定されたとき、上記切り替えが指定された種類の文字列情報を解析する文字列情報解析手順と、上記文字列解析手順における上記切り替えが指定された種類の文字列情報の解析に基づいて、その文字列情報を上記表示部品に表示するための第２の表示情報を作成する表示情報作成手順と、上記表示情報記憶制御手順で記憶された第１の表示情報を上記表示情報作成手順で作成された第２の表示情報に変更する表示情報変更手順と、を実行させるためのプログラムにおいて、上記表示制御手順を、上記表示制御手順で用いられる文字列情報の種類から他の種類への切り替えが指定されるまでは、上記表示情報変更手順で変更された第２の表示情報を用いて、上記表示部品と上記文字列との表示を行う手順としたものである。
このようなプログラムにおいて、上記表示制御手順が、上記表示部品と上記文字列とを画面に表示する手順を含み、上記表示情報作成手順は、上記表示制御手順で表示が行われる上記画面に設定された解像度に基づいて上記第２の表示情報を作成する手順を含むとよい。
あるいは、上記文字列情報記憶手順が、外部記憶装置から受け付けた、上記文字列情報記憶手順によって上記記憶装置に記憶した文字列情報とは異なる種類の文字列情報を上記記憶装置に記憶する手順を含み、上記文字列解析手順が、上記異なる種類の文字列情報を解析する手順を含み、上記表示情報作成手順が、上記文字列解析手順における上記異なる種類の文字列情報の解析に基づいて、その文字列情報を上記表示部品に表示するための第２の表示情報を作成する手順を含むとよい。
あるいは、上記表示制御手順が、上記画面に表示される所定の表示領域に上記少なくとも１つの表示部品を表示する手順を含み、上記表示情報作成手順が、上記文字列情報解析手順における解析に基づいて、上記少なくとも１つの表示部品それぞれの表示範囲と、上記表示領域における表示位置を決定することにより上記第２の表示情報を作成する手順を含むとよい。
上記表示情報作成手順が、さらに、決定した上記少なくとも１つの表示部品それぞれの表示範囲と、上記表示領域における表示位置に応じて上記表示領域の大きさを決定することにより上記第２の表示情報を作成する手順を含むとよい。
また、上記文字列情報の所定の種類が言語の種類であるとよい。
あるいは、上記文字列情報が、上記表示部品それぞれを識別するための識別情報と、上記表示部品それぞれに表示される文字列と、その文字列それぞれの文字列長とを対応付けた情報であるとよい。
【０００７】
また、この発明の記録媒体は、上記のいずれかのプログラムを記録したコンピュータ読取可能な記録媒体である。
【発明の効果】
【０００８】
この発明による表示制御装置は、ドライバのサイズを不必要に大きくせず、表示言語の種類を容易に切り替えられるようにすることができる。
また、この発明によるプログラムは、コンピュータにドライバのサイズを不必要に大きくせず、表示言語の種類を容易に切り替えられるようにするための機能を実現させることができる。
さらに、この発明のコンピュータ読み取り可能な記録媒体は、コンピュータに上記プログラムを容易に導入することができる。
【図面の簡単な説明】
【０００９】
【図１】この発明の表示制御装置の実施例の機能構成を示すブロック図である。
【図２】ＵＩクリエイトシステム４に新たに言語パッケージを追加する場合の処理説明の図である。
【図３】ランゲージアナライズモジュールの解析結果である一覧表のデータ例を示す図である。
【図４】文字列表示領域毎の表示内容を記述しているファイルデータの一例を示す図である。
【図５】文字表示領域のサイズを変更する処理例の説明図である。
【００１０】
【図６】言語を切り換える処理を示すフローチャート図である。
【図７】図６に示すステップ２の詳細な処理例を示すフローチャート図である。
【図８】文字列表示領域の再構成の処理の説明図である。
【図９】文字列表示領域とウィンドウのサイズの変更処理例の説明図である。
【発明を実施するための形態】
【００１１】
以下、この発明を実施するための形態を図面に基づいて具体的に説明する。
〔実施例〕
図１は、この発明の表示制御装置の実施例の機能構成を示すブロック図である。
この表示制御装置は、大きく分けて二つのブロックからなる。
１つはドライバパッケージ（Ｄｒｉｖｅｒ  Ｐａｃｋａｇｅ）１であり、ディスプレイ画面にユーザインタフェース（ＵＩ）リソース（Ｒｅｓｏｕｒｃｅ）３のデータに基づく表示制御を行うドライバコア２と、ディスプレイ画面に表示するデータであるＵＩリソース３を保持している。
２つ目はユーザインタフェースクリエイトシステム（ＵＩ  Ｃｒｅａｔｅ  Ｓｙｓｔｅｍ）４であり、ドライバパッケージ１と独立して、ＵＩリソース３を言語の種類毎に作成する機能を持つ部分である。
【００１２】
ランゲージパッケージ（Ｌａｎｇｕａｇｅ  Ｐａｃｋａｇｅ）７〜９は、それぞれ異なる種類の言語パッケージであり、上記文字列の情報が記載されているファイルに相当し、文字列表示領域を判別するための識別子と、文字列表示領域に表示する文字列と、文字列の文字列長とを含む。
また、このパッケージは、表示することができるすべての言語で利用可能である拡張性と、標準パッケージに含まれず、後から追加が可能である拡張性を備えている。
ランゲージアナライズモジュール（Ｌａｎｇｕａｇｅ  Ａｎａｌｙｚｅ  Ｍｏｄｕｌｅ）６は、文字列表示領域に表示する文字列の情報を解析する文字列解析手段の機能を果たす。
【００１３】
ＵＩリクリエイトモジュール（ＵＩ  Ｒｅｃｒｅａｔｅ  Ｍｏｄｕｌｅ）５は、ランゲージアナライズモジュール６による解析結果と文字列表示領域を表示するウィンドウの情報とに基づいて文字列を納めるのに必要な文字列表示領域のサイズとウィンドウ上のレイアウトを変更する文字列表示領域変更手段と、その変更した文字列表示領域のサイズとウィンドウ上のレイアウトに応じて文字列表示領域を含むウィンドウのサイズを変更するウィンドウ変更手段の各機能を果たし、ドライバパッケージ１のＵＩリソース３を再構成する。
【００１４】
図２は、ＵＩクリエイトシステム４に新たに言語パッケージを追加する場合の処理説明の図である。
図１に示したランゲージパッケージ７〜９として、例えば、日本語（Ｊａ）パッケージ７′，英語（Ｅｎ）パッケージ８′，ドイツ語（Ｄｅ）パッケージ９′がそれぞれインストールされている環境に、新たにフランス語（Ｆｒ）パッケージ１０をインストールする場合、ＵＩクリエイトシステム４に、フランス語（Ｆｒ）パッケージ１０のファイルをインストールすることにより、ＵＩクリエイトシステム４がフランス語を認識する。
あとは、どの言語を利用するか選択し、ランゲージアナライズモジュール６が解析を行い、ＵＩリクリエイトモジュール５がランゲージアナライズモジュール６の解析結果に基づいて文字列表示領域，ウィンドウ上のレイアウト，ウィンドウのサイズを最適化する変更処理をドライバパッケージ１のＵＩリソース３に対して行う。
【００１５】
図３は、ランゲージアナライズモジュールの解析結果である一覧表のデータ例を示す図である。
ディスプレイ上に表示するウィンドウの各文字列表示領域にはそれぞれＩＤがついている。そのＩＤに何のキーワードを入れればいいかを、ランゲージアナライズモジュール６が解析して、その一覧表のデータを作成する。
図３に示すように、この解析結果の一覧表のデータは、文字列表示領域を判別するための識別子であるＩＤと、文字列表示領域に表示する文字列であるワード（Ｗｏｒｄ）と、文字列の文字列長であるＮｕｍとの対応リストである。
その一覧表を受け取ったＵＩリクリエイトモジュール６が、一覧表を参照してＵＩリソース３の再構成を行う。その再構成をスムーズに行うために、Ｗｏｒｄの文字数を一覧表に加えている。その他、構成し易くする要素として、例えば、フォントを選んだ際の横幅や縦幅などのデータを一覧表に加えてもよい。
【００１６】
図４は、文字列表示領域毎の表示内容を既述しているファイルデータの一例を示す図である。
ｉｎｉファイルやｄａｔファイル、またはそれに準ずるファイルを用意し、ＩＤを各言語共通にし、キーワードは各言語の言葉を用いたファイルを作成する。
ＵＩクリエイトシステム４がこのファイルを読み込むことにより、図３に示した一覧表のデータを作成することができる。
また、いろいろな機種において、同じ内容の項目のＩＤを共通にすることにより、ひとつの言語ファイルですべての機種に対応が可能になる。
【００１７】
図５は、文字表示領域のサイズを変更する処理例の説明図である。
同図では、文字表示領域のサイズの変更を分かり易くするために、文字表示領域に枠線をつけているが、実際の表示には枠線は表示しなくてもよい。
従来は、日本語と英語が同じ領域の場合、単語の幅と高さの関係で入りきらなくなる可能性があった。例えば、同図の（ａ）に示すように、日本語「標準」が収まるサイズの文字列表示領域でも、英語「Ｓｔａｎｄａｒｄ」では文字列途中で改行される上に文字列表示領域のサイズに収まらない。
そこで、この実施例の表示制御装置のＵＩリクリエイトモジュール５のＵＩリソース３の再構成処理により、同図の（ｂ）に示すように、英語「Ｓｔａｎｄａｒｄ」では、文字列表示領域の横幅を拡大したサイズに変更するので、長い文字列の場合も折り返されたりすることなく表示することが可能になる。
【００１８】
図６は、言語を切り換える処理を示すフローチャート図である。
従来の場合の処理は、新規にインストールする際、言語を選択してインストールパッケージの中からリソースを構築してインストールを行う。
そして、言語を切り替える際は、改めて言語に応じたドライバをインストールする必要がある。
一方、この実施例の表示制御装置の処理では、図６に示すように、ステップ（図中「Ｓ」で示す）１で、ドライバパッケージとＵＩクリエイトシステムを新規にインストールし、ステップ２で、言語ファイルの文字列情報とディスプレイの環境情報とに基づいてドライバのＵＩリソースを再構成し、ステップ３で、言語の種類を切り換えるか否かを判断し、切り換えないなら、ステップ５でドライバコアがＵＩリソースに基づいてドライバを実行する。
【００１９】
一方、ステップ３の判断で言語の種類を切り換えるなら、ステップ４で、ＵＩクリエイトシステムに切り換える言語ファイルをインストールし、ステップ２で、そのインストールした言語ファイルの文字列情報とディスプレイの環境情報とに基づいてドライバのＵＩリソースを再構成し、ステップ３の判断で言語の種類を切り換えないなら、ドライバコアがＵＩリソース（インストールされた言語ファイルに基づいて書き換えられたリソース）に基づいてドライバを実行する。
このようにして、従来と比較してインストールの動作がドライバ本体に比べて言語ファイルのみでよいので、各段に楽になっていることがわかる。
また、言語の種類を切り換える際も、従来は所望の言語のドライバを改めてインストールするため、ドライバパッケージがまるまる必要であるが、この実施例の表示制御装置では、言語ファイルのみでよく、メモリ容量を少なく抑えることができる。
【００２０】
図７は、図６のステップ２の詳細な処理例を示すフローチャート図である。
この処理は、ステップ１１で、言語ファイルの文字列情報の文字列長（Ｎｕｍ）を読み込み、ステップ１２で、ディスプレイの環境情報（解像度）を取得し、ステップ１３で、言語ファイルの文字列情報の文字列長（Ｎｕｍ）に基づいて文字列表示領域を変更し、ディスプレイの環境情報（解像度）と変更後の文字列表示領域に基づいてディスプレイの表示画面のウィンドウサイズを変更し、変更後のウィンドウサイズと文字列表示領域に基づいてドライバのＵＩリソースを再構成し、この処理を終了する。
【００２１】
従来では、言語に対してＵＩリソースを一意に決めていた影響で、言語ファイルを自分で作成して適用することができなかった。
しかし、この実施例の表示制御装置では、ＵＩリソースは一つであり、言語ファイルの中身を解析して再構成をかけるため、従来のような不具合が起きることなく、自分で作成した言語のＵＩリソースで表示させることが可能である。
これにより、例えば、ユーザにとってわかりづらい項目などもカスタマイズが容易にできることになり、利用者の利便性が格段にあがる。
【００２２】
図８は、文字列表示領域の再構成の処理の説明図である。
この実施例の表示制御装置における文字列表示領域の再構成の処理を行わない場合、同図の（ａ）に示すように、本来、「変更を反映する」と文字列表記されなければならないところ、「る」の文字が文字列表示領域のサイズ不足により途切れてしまう。
一方、この実施例の表示制御装置における文字列表示領域の再構成の処理を行った場合、同図の（ｂ）に示すように、文字列表示領域の横幅のサイズを伸ばした場合では、文字列表示領域内に「変更を反映する」と１行で文字列表記される。また、同図の（ｃ）に示すように、文字列表示領域の縦幅のサイズを伸ばした場合では、「変更を反映する」が２行で文字列表記される。
いずれの場合も、本来の文字列である「変更を反映する」という文字列が表示できている。
【００２３】
次に、文字列表示領域の再構成の処理により、文字列表示領域のサイズが広くなるということは、つまり、その文字列表示領域を含むウィンドウ（ダイアログ）の大きさも変更しなければならない。
昨今のディスプレイ画面は、アスペクト比が４：３あるいは１６：９になっているものが多く、ウィンドウも前述した比であると、ディスプレイに収まり易くなる。
したがって、文字列表示領域を変更すると共に、ウィンドウのサイズについても最適化をかけるとき、縦と横のどちらの領域を伸ばすかという基準は、前述した比に基づくようにすることが望ましい。
あるいは、昨今ワイド画面が広まっているため、ウィンドウのサイズを横へ伸ばす割合を多くしてもよい。
いずれの場合も、ユーザが利用しているディスプレイ画面の解像度を取得し、ＵＩリソースを最適な形へ再構成することが望ましい。
なお、この文字列表示領域の再構成の処理は、スタティックエリアやラジオボタンなど、一般的に知られるコントロールＵＩすべてに適用できる。
【００２４】
ウィンドウの最適化の処理は、以下のような例で行うとよい。
もともと、ＵＩリソースを再構成する前の文字列表示領域のサイズを取得し、その縦と横の比率を求め、その比率に応じて、ウィンドウの縦横のサイズを変更することで、もともとの外観を大幅に損ねることなくサイズ変更が可能となる。
例えば、グループボックスの中にいくつかのＵＩが羅列されているとき、元のサイズの比率で伸張を行うとグループボックスとしてのバランスが崩れる可能性がある。
そこで、ＵＩのグルーピングを意識し、グループボックスとして最適化されるように個々のコントロールＵＩ表示領域を変更する方法もある。
【００２５】
次に、文字列表示領域とウィンドウの再構成処理には、既存の技術を用いることができる。例えば、Ｗｉｎｄｏｗｓ（登録商標）であれば、ＯＳ標準セットである「ＷｉｎｄｏｗｓＡＰＩ」の「ＧｅｔＷｉｎｄｏｗＲｅｃｔ（）」や「ＭｏｖｅＷｉｎｄｏｗ（）」などを用いるとよい。
まず、言語ファイルの文字列を読み込み、その文字列長を取得する。また、利用するフォント情報から文字列長（ピクセル数）を取得するようにしてもよい。
次に、ユーザのディスプレイ画面の解像度を取得する。
また、再構成前の全ての文字列表示領域の位置とサイズを取得する。
これらの情報は構造体などでひとまとめにして管理し易いようにするとよい。
【００２６】
また、ウィンドウを検出するたびにそれらを管理しておくメモリ領域を確保することで、予めメモリ領域を確保するより効率よく行うことができる。
次に、ディスプレイの解像度に応じて上記文字列長から上記文字列が収まるように文字列表示領域のサイズを変更する。
これにより、複数の文字列表示領域同士がサイズ変更によって重なったりしないようにし、ウィンドウのサイズの変更が必要になったりする場合は、その都度、サイズを変更した分を加味してその他の影響があるウィンドウについても位置や領域のレイアウトとサイズを変更する。
ここで、ウィンドウの大きさは、元のウィンドウサイズの比率に近い方が望ましい。
【００２７】
この場合、いくつかの表示領域をまとめた「グループボックス」も対象となる。
グループボックスは、各文字列表示領域のＩＤをまとめて管理して同じグループの領域を認識するものであり、グループボックスの大きさが著しく変更されると全体のレイアウトに影響を及ぼす。
そのため、各領域の大きさをグループボックスの比率が元となるべく変わらないように変更し、グループボックスの変更が必要な場合は、できるだけ比率が変わらないように文字列表示領域のサイズも変更するようにする。
各グループボックスの最適化が終わったら、今度はそのグループボックスを束ねるグループボックスの最適化というように再帰的に処理を行い、一番上位のウィンドウまで最適化を行うことができる。
【００２８】
これにより、文字列表示領域とウィンドウのすべての領域のサイズを同時に変更するのではなく、各パーツ毎のサイズを段階的に変更する最適化を図ると同時に全体の最適化も容易に行うことができるため、効率的に処理を進めることができる。
【００２９】
図９は、文字列表示領域とウィンドウのサイズの変更処理例の説明図である。
例えば、同図の（ａ）のウィンドウ上の右上にある文字列表示領域のサイズを大きく変更する場合、ウィンドウ中の各文字列表示領域のサイズと配置位置（レイアウト）の情報を取得しておくことにより、文字列表示領域とウィンドウのサイズの再構成を効率よく行うことができる。
本実施例の場合、文字列表示領域の有無を考慮せず比率のみを考慮して変更する場合、同図の（ｂ）に示すように、右上の文字列表示領域のサイズを矢示１１の方向に伸張し、その伸張後の縦横のサイズと同じ比率になるようにウィンドウも伸張する必要がある。
ここで、予めすべての文字列表示領域のサイズを取得しておくことで、変更したい表示領域の上下左右の状態を知ることができる。そして、ウィンドウのサイズも矢示１２の方向に文字列表示領域の伸張後のサイズと同比になるように伸張する。
【００３０】
これにより、例えば、同図の（ｃ）に示すように、文字列表示領域を矢示１３の方向の下方に延ばしても、他の文字列表示領域と重ならないことがわかる場合、文字列表示領域を下方に延ばすことで、ウィンドウ全体のサイズは変更する必要がなくなる。
ここで、文字列表示領域同士の重なりは、既存技術である、前述したＷｉｎｄｏｗｓＡＰＩなどで知ることができる。
これにより、文字列表示領域の一部だけでなく、ウィンドウ全体の最適化を行うことが可能である。
【００３１】
なお、この実施形態の表示制御装置を構成する各ブロックの機能は、ＣＰＵが実行するプログラムでも実現可能である。また、ＰＣ等の汎用の情報処理装置に本プログラムをインストールすることで本発明を実施することもできる。さらに、本プログラムは、各種記憶媒体（ＣＤ−ＲＯＭ、ＵＳＢメモリ等）に記憶可能であり、また、ネットワークに接続されたサーバ等に保存され、表示制御装置又は情報処理装置がサーバ等にネットワークを介してアクセスすることで、本プログラムを取得することができる。
この実施形態の表示制御装置では、必要な言語パッケージのみをインストールして容量の肥大化を抑え、言語の種類の切り替え時に文字表示領域を変更することにより、最適化されたユーザーインターフェースを提供することができる。
【産業上の利用可能性】
【００３２】
この発明による表示制御装置とプログラムと記録媒体は、ファクシミリ装置，プリンタ，複写機，複合機，コンピュータを含む機器において適用することができる。
【符号の説明】
【００３３】
１：ドライバパッケージ    ２：ドライバコア    ３：ＵＩリソース    ４：ＵＩクリエイトシステム    ５：ＵＩリクリエイトモジュール    ６：ランゲージアナライズモジュール    ７〜９：ランゲージパッケージ    ７′：日本語パッケージ    ８′：英語パッケージ    ９′：ドイツ語パッケージ    １０：フランス語パッケージ
【先行技術文献】
【特許文献】
【００３４】
【特許文献１】特開２０００−１８１６５０号公報
【図１】
0005470860.tif 000002
【図２】
0005470860.tif 000003
【図３】
0005470860.tif 000004
【図４】
0005470860.tif 000005
【図５】
0005470860.tif 000006
【図６】
0005470860.tif 000007
【図７】
0005470860.tif 000008
【図８】
0005470860.tif 000009
【図９】
0005470860.tif 000010