(57)【特許請求の範囲】
【請求項１】
一の言語で記述されたソースファイルの表示レイアウト情報を他の言語で記述されたターゲットファイルの表示レイアウト情報に変換する表示レイアウト情報変換プログラムにおいて、
前記一の言語で記述されたソースファイルの表示レイアウト情報は、表示領域における表示対象の相対的な位置関係、または表示対象の配置規則の情報であり、
前記他の言語で記述されたターゲットファイルの表示レイアウト情報は、表示領域における表示対象の絶対的な位置関係の情報であり、
コンピュータを、
前記ソースファイルに基づいて実行されるアプリケーションの起動を制御する起動制御手段、
前記アプリケーションと通信をおこなう通信手段、
前記通信により、前記アプリケーションが実行される実行環境において前記アプリケーションが表示する項目の表示レイアウト情報を取得する情報取得手段、
前記情報取得手段により取得した前記表示レイアウト情報から前記ターゲットファイルが表示する前記項目のターゲット用表示レイアウト情報を生成する情報生成手段、
前記情報生成手段が生成した前記ターゲット用表示レイアウト情報を含むターゲットファイルを生成するターゲット生成手段、
として機能させることを特徴とする表示レイアウト情報変換プログラム。
【請求項２】
コンピュータを、
さらに、前記アプリケーションが表示する前記項目を含むウインドウを指定するパラメータ指定手段、
として機能させることを特徴とする請求項１記載の表示レイアウト情報変換プログラム。
【請求項３】
コンピュータを、
さらに、前記アプリケーションが表示する前記項目を含むウインドウのサイズを指定するパラメータ指定手段、
として機能させることを特徴とする請求項１記載の表示レイアウト情報変換プログラム。
【請求項４】
前記パラメータ指定手段は、
前記アプリケーションが表示する前記項目を含む一のウインドウについて、複数の異なるサイズを指定し、
前記情報取得手段は、前記一のウインドウについて、複数の異なるサイズごとの表示レイアウト情報を取得することを特徴とする請求項３記載の表示レイアウト情報変換プログラム。
【請求項５】
一の言語で記述されたソースファイルの表示レイアウト情報を他の言語で記述されたターゲットファイルの表示レイアウト情報に変換する表示レイアウト情報変換方法であって、
前記一の言語で記述されたソースファイルの表示レイアウト情報は、表示領域における表示対象の相対的な位置関係、または表示対象の配置規則の情報であり、
前記他の言語で記述されたターゲットファイルの表示レイアウト情報は、表示領域における表示対象の絶対的な位置関係の情報であり、
コンピュータが、
前記ソースファイルに基づいて実行されるアプリケーションの起動を制御し、
前記アプリケーションと通信をおこない、
前記通信により、前記アプリケーションが実行される実行環境において前記アプリケーションが表示する項目の表示レイアウト情報を取得し、
取得した前記表示レイアウト情報から前記ターゲットファイルが表示する前記項目のターゲット用表示レイアウト情報を生成し、
生成した前記ターゲット用表示レイアウト情報を含むターゲットファイルを生成する、
ことを特徴とする表示レイアウト情報変換方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソースファイルの表示レイアウト情報をターゲットファイルの表示レイアウト情報に変換する表示レイアウト情報変換プログラムおよび表示レイアウト情報変換方法に関する。
【背景技術】
【０００２】
既存のアプリケーションプログラム（ソースプログラム）を異なるプログラム言語で記述されたアプリケーションプログラム（ターゲットプログラム）にリプレースする場合、画面定義ファイルを新たに作成する必要がある場合がある。たとえば、既存のＪａｖａ（登録商標）クライアントアプリケーション（Ａｐｐｌｅｔ、ＪａｖａＧＵＩ）をＷｅｂアプリケーションにリプレースする場合、画面定義ファイル（たとえば、ＨＴＭＬファイル）を新たに作成する必要がある。こうしたリプレース作業において、画面定義ファイルを新たに作成する場合、ターゲットプログラムの画面定義ファイルを実行環境に適応するように入力または修正を要することがあった。
【０００３】
そこで、たとえば、キャラクタユーザインタフェース形式の画面を、効率的にマークアップ言語で定義される画面に変換する技術の提案がある（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−９４４９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、キャラクタユーザインタフェース形式の画面を構成するための定義情報を入力元の情報としてグラフィックユーザインタフェース形式の画面に変換する要求だけではなく、グラフィックユーザインタフェース形式間での画面定義を変換する要求もある。そして、このような画面定義の変換をおこなった場合、表示位置にずれが生じるなど変換後の画面の表示レイアウトが変換前の画面の表示レイアウトと異なることがあり、変換前の表示レイアウトを反映した表示レイアウトを得ることができない場合がある。そして、その場合には、作業者が変換後の表示レイアウトを修正する作業を要していた。特に、アプリケーションの実行環境上にてウインドウサイズが動的に変化する場合には、ソースプログラム中に具体的な情報を持たないことがあり、ターゲットプログラムの生成をいっそう困難にしている。
【０００６】
そこで、アプリケーションの実行環境上にて動的に変化するウインドウサイズに対応して、画面定義ファイルを新たに作成することが可能な表示レイアウト情報変換プログラムの提供を目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、一の言語で記述されたソースファイルの表示レイアウト情報を他の言語で記述されたターゲットファイルの表示レイアウト情報に変換する表示レイアウト情報変換プログラムにおいて、前記一の言語で記述されたソースファイルの表示レイアウト情報は、表示領域における表示対象の相対的な位置関係、または表示対象の配置規則の情報であり、前記他の言語で記述されたターゲットファイルの表示レイアウト情報は、表示領域における表示対象の絶対的な位置関係の情報であり、コンピュータを、前記ソースファイルに基づいて実行されるアプリケーションの起動を制御する起動制御手段、前記アプリケーションと通信をおこなう通信手段、前記通信により、前記アプリケーションが実行される実行環境において前記アプリケーションが表示する項目の表示レイアウト情報を取得する情報取得手段、前記情報取得手段により取得した前記表示レイアウト情報から前記ターゲットファイルが表示する前記項目のターゲット用表示レイアウト情報を生成する情報生成手段、前記情報生成手段が生成した前記ターゲット用表示レイアウト情報を含むターゲットファイルを生成するターゲット生成手段、として機能させることを特徴とする表示レイアウト情報変換プログラムが提供される。
【発明の効果】
【０００９】
上記の表示レイアウト情報変換プログラムによれば、アプリケーションの実行環境上にて動的に変化するウインドウサイズに対応して、画面定義ファイルを新たに作成することを可能とすることができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態のレイアウト情報変換ツールの機能ブロック図である。
【図２】表示レイアウト情報変換技術を用いる場合のシステム構成を示す図である。
【図３】Ｊａｖａアプリケーションを、ＨＴＭＬに変換する際の、表示レイアウト情報変換技術を用いる場合のシステム構成例である。
【図４】Ｊａｖａアプリケーションの表示例と、ＨＴＭＬに変換後の表示例である。
【図５】実施形態のＪａｖａアプリケーションを、ＨＴＭＬに変換する際の、表示レイアウト情報変換技術を用いる場合のシステム構成例である。
【図６】実施形態のＪａｖａアプリケーションの表示例と、ＨＴＭＬに変換後の表示例である。
【図７】実施形態の項目情報テーブルである。
【図８】実施形態のＨＴＭＬファイルの出力例である。
【図９】実施形態の表示レイアウト情報変換装置のハードウェア構成例を示す図である。
【図１０】第二の実施形態のレイアウト情報変換ツールの機能ブロック図である。
【図１１】第二の実施形態のアプリケーション変換部のメインフローチャートである。
【図１２】第二の実施形態の画面情報取得処理のフローチャートである。
【図１３】第二の実施形態のＨＴＭＬファイルの出力処理のフローチャートである。
【図１４】第二の実施形態のＨＴＭＬタグ変換ルールの一例を示す図である。
【図１５】第二の実施形態のＨＴＭＬタグ変換ルールの一例を示す図である。
【図１６】第二の実施形態の項目情報テーブルの生成例を示す図である。
【図１７】第二の実施形態のＨＴＭＬファイルの出力例を示す図である。
【図１８】第二の実施形態の表示レイアウト情報の取得例を示す図である。
【図１９】第二の実施形態の一のウインドウサイズにおける表示レイアウト情報の取得例を示す図である。
【図２０】第二の実施形態の他のウインドウサイズにおける表示レイアウト情報の取得例を示す図である。
【発明を実施するための形態】
【００１１】
以下、実施形態を図面を参照して説明する。
図１は、実施形態のレイアウト情報変換ツールの機能ブロック図である。レイアウト情報変換ツール１は、コンピュータ上のプロセスであるアプリケーション変換部１０とアプリケーションプロセス２０とから構成される。アプリケーションプロセス２０は、アプリケーション２０ａと、デバッガ２０ｂとから構成される。アプリケーション２０ａは、既存のアプリケーションプログラム（ソースプログラム）を実行形式に変換した後、実行されるものである。デバッガ２０ｂは、アプリケーション２０ａの実行中の変数（表示する項目の表示レイアウト情報）を参照する。
【００１２】
アプリケーション変換部１０は、情報取得手段１０ａと、情報生成手段１０ｂとを備え、ターゲット用表示レイアウト情報１０ｃを生成する。情報取得手段１０ａは、デバッガ２０ｂと通信をし、デバッガ２０ｂを介してアプリケーション２０ａの実行中の変数（表示する項目の表示レイアウト情報）を取得する。情報生成手段１０ｂは、情報取得手段１０ａが取得したアプリケーション２０ａの実行中の変数（表示する項目の表示レイアウト情報）に基づいて、ターゲット用表示レイアウト情報１０ｃを生成する。
【００１３】
アプリケーション変換部１０は、コンピュータにて表示レイアウト情報変換プログラムが実行されることで、アプリケーション変換部１０が備える各種機能が実現される。
このようにすることで、アプリケーション２０ａの実行中の動的に変化する表示から項目の表示レイアウト情報（項目名、種別、表示位置、サイズ、フォント、値等）を取得して、ターゲットプログラムが必要とする画面定義ファイルを新たに作成することができる。
【００１４】
まず、表示レイアウト情報変換技術を用いる場合のシステム構成の１例について図２を用いて説明する。図２は、表示レイアウト情報変換技術を用いる場合のシステム構成を示す図である。
【００１５】
一般に、一の言語で記述されたソースプログラムの一部または全部を他の言語で記述されたターゲットプログラムの一部または全部に変換する場合、レイアウト情報変換ツール９００は、ソースファイル９０１または、ソースファイル９０１を実行形式に変換したバイナリファイル９０２を入力する。そして、レイアウト情報変換ツール９００は、たとえば、ターゲットプログラムとしてＷｅｂアプリ画面ファイル９０３を出力する。
【００１６】
ここで、より具体的に説明するために、Ｊａｖａアプリケーションを、ＨＴＭＬ（HyperText Markup Language）に変換する例を図３、図４を用いて説明する。図３は、Ｊａｖａアプリケーションを、ＨＴＭＬに変換する際の、表示レイアウト情報変換技術を用いる場合のシステム構成例である。図４は、Ｊａｖａアプリケーションの表示例と、ＨＴＭＬに変換後の表示例である。
【００１７】
ソースファイル９０１ａは、Ｊａｖａで記述されたプログラムであり、オペレーティングシステム（OS）やハードウェアから独立するために、ソースファイル中に各部品単位（表示項目）の絶対的（表示位置を特定する具体的）な表示レイアウト情報を持たない。表示レイアウト情報は、レイアウトマネージャにより相対的な表示レイアウト情報または表示規則による表示レイアウト情報を持つ。つまり、テキスト部品についてセンター配置、ボタン部品について右寄せのように、表示装置における具体的表示位置を示すものではなく、相対的、あるいは表示規則として表示レイアウト情報を持つ。したがって、レイアウト情報変換ツール９００ａにより、ソースファイル９０１ａを変換したときに、Ｗｅｂアプリ画面ファイル（ターゲットファイル）９０３ａを得ても、具体的表示位置についての表示レイアウトに係る情報が欠けたものとなる。つまり、テキスト部品の表示位置が「不定」、ボタンの表示位置が「不定」となる。
【００１８】
ソースファイル９０１ａの実行により得られるウインドウ表示例９１０では、各項目であるラベル９１１、９１３、テキスト９１２、９１４、ボタン９１５が整然と配置されている。しかし、Ｗｅｂアプリ画面ファイル９０３ａの実行により得られるウインドウ表示例９２０では、各項目であるラベル９２１、９２３、テキスト９２２、９２４、ボタン９２５が雑然と配置されている。ウインドウ表示例９２０のような雑然とした配置は、レイアウト情報変換ツール９００ａによる変換過程でＷｅｂアプリ画面ファイル９０３ａの具体的な表示レイアウト情報が生成されなかったことによる。ウインドウ表示例９２０のような雑然とした配置を解決するためには、表示内容を確認して具体的数値情報を入力する作業が別途必要になる。
【００１９】
これは、既存のＪａｖａクライアントアプリケーションの画面をＷｅｂアプリケーションにリプレースする際、画面定義を変換する場合に、変換元となる画面情報として実装ソース、もしくはコンパイル済みの資産（バイナリデータ）を利用していたことによる。Ｊａｖａアプリケーションの画面レイアウト作成に、レイアウトマネージャを利用している場合にも、入力となる実装ソース（又はコンパイル済み資産）中には、画面項目単位での具体的な表示レイアウト情報（配置位置、サイズ情報など）を持たないため、出力結果中に具体的な表示レイアウト情報（配置位置、サイズ情報など）を出力することが出来ず、出力結果にずれが発生することによる。
【００２０】
なお、レイアウトマネージャが提供する項目の配置機能は、Ｊａｖａアプリケーションの実行環境に存在する。しかし、Ｗｅｂアプリケーション（たとえば、ＨＴＭＬなど）には、該当する機能が存在しないため、ＨＴＭＬタグを駆使してレイアウトを作成（または修正）する作業が別途必要になっている。
【００２１】
次に、表示レイアウト情報変換技術を用いる場合のシステム構成の別の一例について図５、図６、図７、図８を用いて説明する。図５は、実施形態のＪａｖａアプリケーションを、ＨＴＭＬに変換する際の、表示レイアウト情報変換技術を用いる場合のシステム構成例である。図６は、実施形態のＪａｖａアプリケーションの表示例と、ＨＴＭＬに変換後の表示例である。図７は、実施形態の項目情報テーブルである。図８は、実施形態のＨＴＭＬファイルの出力例である。
【００２２】
ソースアプリケーション実行環境９０１ｂは、Ｊａｖａで記述されたプログラムの実行環境であり、Ｊａｖａで記述されたプログラムをコンパイルしたアプリケーション（Ｊａｖａのバイトコード）９０４、レイアウトマネージャ９０５、ヴァーチャルマシン（ＪａｖａＶＭ）９０６とにより構成される。ソースアプリケーション実行環境９０１ｂは、アプリケーション９０４の実行状況下で表示画面について具体的な表示レイアウト情報を持つ。
【００２３】
レイアウト情報変換ツール９００ｂは、ソースアプリケーション実行環境９０１ｂから表示画面について具体的な表示レイアウト情報を取得する。具体的な表示レイアウト情報は、ソースアプリケーション実行環境９０１ｂのワークエリアにある変数情報を参照することにより取得する。たとえば、ソースアプリケーション実行環境９０１ｂのワークエリアには、アプリケーションウインドウ、パネル、画面項目などを表示画面にレイアウトするための変数情報（たとえば、表示位置、サイズ、フォントなど）が格納されている。これらワークエリアに格納されている変数情報は、デバッガなどのアプリケーションにより取得することができる。
【００２４】
そして、レイアウト情報変換ツール９００ｂは、ソースアプリケーション実行環境９０１ｂから取得した具体的な表示レイアウト情報から、ターゲット用の表示レイアウト情報として項目情報テーブル２００を生成する。項目情報テーブル２００は、複数の項目についての具体的な表示レイアウト情報を表形式（テーブル）にまとめたものである。項目情報テーブル２００の具体的な表示レイアウト情報は、項目名２１０、種別２２０、表示位置２３０（ｘ座標２３０ａ、ｙ座標２３０ｂ）、サイズ２４０（ｗｉｄｔｈ（幅）２４０ａ、ｖｅｒｔｉｃａｌ（高さ）２４０ｂ）、フォント２５０（サイズ２５０ａ、種類２５０ｂ）、項目名（表示文字）２６０がある。項目名２１０は、項目のキーとなる情報であり識別性のある名前が付けられる。種別２２０は、項目のコンポーネントの種類を特定する情報である。表示位置２３０は、項目の表示位置を特定する情報であり、ｘ座標２３０ａとｙ座標２３０ｂとを含む。サイズ２４０は、項目の表示サイズを特定する情報であり、ｗｉｄｔｈ２４０ａとｖｅｒｔｉｃａｌ２４０ｂとを含む。フォント２５０は、項目の表示フォントを特定する情報であり、サイズ２５０ａ、種類２５０ｂとを含む。項目名（表示文字）２６０は、項目の名目として表示する文字である。なお、これら項目についての具体的な表示レイアウト情報のうちすべての情報が必須というわけではなく、たとえば、ターゲットファイルでフォントが固定されている場合などに、フォント２５０などは含めないとすることもできる。
【００２５】
レイアウト情報変換ツール９００ｂは、生成した項目情報テーブル２００を用いて、Ｗｅｂアプリ画面ファイル（ターゲットファイル）９０３ｂを得る。Ｗｅｂアプリ画面ファイル９０３ｂは、たとえば、ＨＴＭＬファイル３００である。ＨＴＭＬファイル３００中のプログラムリスト中のパラメータは、項目情報テーブル２００を参照して決定される。レイアウト情報変換ツール９００ｂは、プログラムリスト中の項目名（ｌａｂｅｌ＿ａ）３１１をキーにして、項目情報テーブル２００を参照し、項目名（ｌａｂｅｌ＿ａ）２１１を見つける。そして、レイアウト情報変換ツール９００ｂは、表示位置２３０のｘ座標（１０）２３１ａ、ｙ座標（１０）２３１ｂから、プログラムリスト中のパラメータとして、ｘ座標（１０）３３１ａ、ｙ座標（１０）３３１ｂを決定する。同様にして、レイアウト情報変換ツール９００ｂは、サイズ２４０のｗｉｄｔｈ（８０）２４１ａ、ｖｅｒｔｉｃａｌ（４０）２４１ｂから、プログラムリスト中のパラメータとして、ｗｉｄｔｈ（８０）３４１ａ、ｖｅｒｔｉｃａｌ（４０）３４１ｂを決定する。同様にして、レイアウト情報変換ツール９００ｂは、フォント２５０のサイズ（１０）２５１ａ、種類（ゴシック）２５１ｂから、プログラムリスト中のパラメータとして、サイズ（１０）３５１ａ、種類（ゴシック）３５１ｂを決定する。同様にして、レイアウト情報変換ツール９００ｂは、項目名（項目Ａ）２６１から、プログラムリスト中のパラメータとして、項目名（項目Ａ）３６１を決定する。なお、例示した、表示位置２３０、サイズ２４０の単位は、画素（ｐｉｘｅｌ）であり、フォントサイズ２５０ａの単位は、ポイント（ｐｔ）である。
【００２６】
したがって、Ｗｅｂアプリ画面ファイル９０３ａは、テキスト部品の表示位置、ボタンの表示位置について、具体的な配置位置、サイズの表示レイアウトに係る情報を含んだものとなる。つまり、ソースアプリケーション実行環境９０１ｂにおいて表示されるウインドウ表示例９１０では、各項目であるラベル９１１、９１３、テキスト９１２、９１４、ボタン９１５が整然と配置されている。そして、Ｗｅｂアプリ画面ファイル９０３ｂの実行により得られるウインドウ表示例９３０においても、各項目であるラベル９３１、９３３、テキスト９３２、９３４、ボタン９３５が整然と配置されている。ウインドウ表示例９３０のような整然とした配置は、レイアウト情報変換ツール９００ｂによる変換過程でソースアプリケーション実行環境９０１ｂから具体的な表示レイアウト情報が取得されたことによる。これにより、表示内容を確認して具体的数値情報を入力する作業が不要となる。
【００２７】
次に、本実施形態の表示レイアウト情報変換装置のハードウェア構成例を説明する。図９は、実施形態の表示レイアウト情報変換装置のハードウェア構成例を示す図である。表示レイアウト情報変換装置１００は、ＣＰＵ（Central Processing Unit）１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０７を介してＲＡＭ（Random Access Memory）１０２、ハードディスクドライブ（ＨＤＤ）１０３、通信インタフェース１０４、グラフィック処理装置１０５、および入出力インタフェース１０６が接続されている。
【００２８】
ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳ（Operating System）のプログラムや表示レイアウト情報変換プログラム、ソースアプリケーション実行環境９０１ｂで実行されるアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に必要な各種データ、ソースアプリケーション実行環境９０１ｂでの各種変数が格納される。ＨＤＤ１０３には、ＯＳやアプリケーションプログラムが格納される。
【００２９】
通信インタフェース１０４は、ネットワーク１１１に接続されている。通信インタフェース１０４は、ネットワーク１１１を介して、他のコンピュータとの間でデータの送受信をおこなう。
【００３０】
グラフィック処理装置１０５には、モニタ１１０が接続されている。グラフィック処理装置１０５は、ＣＰＵ１０１からの命令に従って、画像をモニタ１１０の画面に表示させる。
【００３１】
入出力インタフェース１０６には、キーボード１０８とマウス１０９とが接続されている。入出力インタフェース１０６は、キーボード１０８やマウス１０９から送られてくる信号を、バス１０７を介してＣＰＵ１０１に送信する。
【００３２】
以上のようなハードウェア構成によって、本実施形態の処理機能を実現することができる。なお、ネットワーク１１１を介して接続する他のコンピュータも同様のハードウェア構成で実現できる。
【００３３】
次に、第二の実施形態のレイアウト情報変換ツールについて図１０を用いて説明する。図１０は、第二の実施形態のレイアウト情報変換ツールの機能ブロック図である。
レイアウト情報変換ツール２は、コンピュータ上のプロセスであるアプリケーション変換部１１とアプリケーションプロセス２１とから構成される。アプリケーションプロセス２１は、アプリケーション２１ａと、デバッガ２１ｂとから構成される。アプリケーション２１ａは、既存のアプリケーションプログラム（ソースプログラム）を実行形式に変換した後、実行されるものである。デバッガ２１ｂは、アプリケーション２１ａの実行中の変数（表示する項目の表示レイアウト情報）を参照する。
【００３４】
アプリケーション変換部１１は、通信手段１１ａと、起動制御手段１１ｂと、パラメータ指定手段１１ｃと、情報取得手段１１ｅと、情報生成手段１１ｆと、ターゲット生成手段１１ｈとを備える。通信手段１１ａは、デバッガ２１ｂと通信をおこなう。起動制御手段１１ｂは、通信手段１１ａを介してデバッガ２１ｂに指示をすることで、アプリケーション２１ａの起動、実行状態の制御をする。パラメータ指定手段１１ｃは、外部（ネットワーク１１１を介して接続した他のコンピュータ、パラメータ指定ファイル、キーボード１０８やマウス１０９などの入力手段など）からパラメータ指定１１ｄを取得する。パラメータ指定１１ｄは、変換対象となるアプリケーションの指定、出力するＨＴＭＬファイルのファイル名、格納先、表示レイアウト情報を取得するウインドウの指定、表示レイアウト情報を取得するウインドウのサイズ指定の情報が含まれる。起動制御手段１１ｂは、パラメータ指定１１ｄに基づいて、アプリケーション２１ａの起動、実行状態の制御をデバッガ２１ｂに指示する。情報取得手段１１ｅは、通信手段１１ａを介してデバッガ２１ｂから、アプリケーション２１ａの実行中の変数を取得する。情報生成手段１１ｆは、情報取得手段１１ｅが取得したアプリケーション２１ａの実行中の変数に基づいて、ターゲット用表示レイアウト情報１１ｇを生成する。ターゲット用表示レイアウト情報１１ｇは、たとえば、項目情報テーブル２００のように表形式で生成される。ターゲット生成手段１１ｈは、ターゲット用表示レイアウト情報１１ｇを用いて、ターゲットファイル１１ｉを生成する。
【００３５】
このようにすることで、アプリケーション２１ａの実行中の動的に変化する表示から項目の表示レイアウト情報（項目名、種別、表示位置、サイズ、フォント、値等）を取得して、ターゲットファイル１１ｉを作成することができる。
【００３６】
なお、アプリケーション変換部１１は、コンピュータにて表示レイアウト情報変換プログラムが実行されることで、アプリケーション変換部１１が備える各種機能が実現される。
【００３７】
次に、第二の実施形態のアプリケーション変換部１１における処理の流れについて図１１を用いて説明する。図１１は、第二の実施形態のアプリケーション変換部のメインフローチャートである。ここでは、対象アプリケーションの表示内容からＨＴＭＬファイルを出力する場合について説明する。
【００３８】
［ステップＳ１１］アプリケーション変換部１１は、パラメータ指定手段１１ｃにより対象アプリケーションの指定を受け付ける。このとき、パラメータ指定１１ｄは、対象アプリケーションのファイル名、ファイルパスが指定される。なお、対象アプリケーションの指定を含む、パラメータ指定１１ｄの受け付けは、起動時のパラメータ指定によりするようにしてもよい。
【００３９】
［ステップＳ１２］アプリケーション変換部１１は、起動制御手段１１ｂにより対象アプリケーションとして指定されたアプリケーション２１ａを起動する。
［ステップＳ１３］アプリケーション変換部１１は、起動制御手段１１ｂにより表示レイアウト情報の取得対象となる画面をアプリケーション２１ａに表示させる。そして、起動制御手段１１ｂは、画面に表示されるウインドウサイズを、ＨＴＭＬファイルに基づいて画面に表示されるウインドウサイズに合わせる。この操作は、パラメータ指定１１ｄに基づいて実行される。ここで、パラメータ指定手段１１ｃによるパラメータ指定１１ｄの取得は、予め設定した画面の表示設定に基づいて取得することもできる。たとえば、表示する画面、ウインドウの種類、サイズ、表示タイミングをリスト化しておくことにより順次にパラメータ指定１１ｄを取得することができる。また、キーボード１０８やマウス１０９などの入力手段からパラメータ指定１１ｄの入力を受け付けるようにしてもよい。
【００４０】
［ステップＳ１４］アプリケーション変換部１１は、起動制御手段１１ｂにより、アプリケーション２１ａが表示している画面（ウインドウ）を表示レイアウト情報の変換対象として決定する。併せて、アプリケーション変換部１１は、パラメータ指定手段１１ｃによりＨＴＭＬファイルのファイル名、ファイルパスの指定を受け付ける。なお、ファイル名は、所定の規則に従い自動生成するものであってもよい。
【００４１】
［ステップＳ１５］アプリケーション変換部１１は、情報取得手段１１ｅにより、通信手段１１ａを介してデバッガ２１ｂから、アプリケーション２１ａが表示している画面（ウインドウ）の表示レイアウト情報を取得する。そして、アプリケーション変換部１１は、情報生成手段１１ｆにより、ターゲット用表示レイアウト情報１１ｇ（たとえば、項目情報テーブル２００）を生成し、取得した表示レイアウト情報を加える。
【００４２】
［ステップＳ１６］アプリケーション変換部１１は、ターゲット生成手段１１ｈにより、ターゲット用表示レイアウト情報１１ｇを用いて、ＨＴＭＬファイル（ターゲットファイル１１ｉ）を生成して出力する。
【００４３】
［ステップＳ１７］アプリケーション変換部１１は、すべての画面について変換が完了したかを判断する。アプリケーション変換部１１は、すべての画面について変換が完了していない場合、ステップＳ１３にすすみ、すべての画面について変換が完了している場合、処理を終了する。
【００４４】
処理の完了により表示レイアウト情報変換プログラムの実行を終了するようにしてもよい。また、起動したアプリケーション２１ａ、デバッガ２１ｂを終了させるようにしてもよい。
【００４５】
次に、第二の実施形態の画面情報取得処理（ステップＳ１５）の詳細な処理の流れについて図１２を用いて説明する。図１２は、第二の実施形態の画面情報取得処理のフローチャートである。
【００４６】
［ステップＳ２１］情報取得手段１１ｅは、アプリケーションプロセス２１に接続する。具体的には、通信手段１１ａを介してデバッガ２１ｂのインタフェースにアクセスし、アプリケーションプロセス２１のワークエリアにアクセス可能にする。
【００４７】
［ステップＳ２２］情報取得手段１１ｅは、アプリケーション２１ａが表示している画面（ウインドウ）を構成する項目を取得（ラベル、ボタン、テキスト等）する。詳細については、後で図１８を用いた具体例を挙げて詳述する。
【００４８】
［ステップＳ２３］情報取得手段１１ｅは、全項目の表示レイアウト情報を取得したか否かを判定し、取得していなければステップＳ２４にすすみ、取得していればステップＳ２６にすすむ。
【００４９】
［ステップＳ２４］情報取得手段１１ｅは、一つの項目についての具体的な表示レイアウト情報を表形式（テーブル）にまとめる。たとえば、一つの項目について、項目名２１０、種別２２０、表示位置２３０（ｘ座標２３０ａ、ｙ座標２３０ｂ）、サイズ２４０（ｗｉｄｔｈ（幅）２４０ａ、ｖｅｒｔｉｃａｌ（高さ）２４０ｂ）、フォント２５０（サイズ２５０ａ、種類２５０ｂ）、項目名（表示文字）２６０を取得する。
【００５０】
［ステップＳ２５］情報生成手段１１ｆは、情報取得手段１１ｅが取得した一つの項目についての具体的な表示レイアウト情報から項目情報テーブル２００（ターゲット用表示レイアウト情報１１ｇ）を作成する。項目情報テーブル２００は、一つの項目についての具体的な表示レイアウト情報が取得されるごとに、一行のデータが追加されていく。
【００５１】
［ステップＳ２６］情報生成手段１１ｆは、項目情報テーブル２００を出力し、ターゲット生成手段１１ｈが利用可能にする。
以上の処理により、アプリケーション２１ａが表示している画面（ウインドウ）を構成する各項目の表示レイアウト情報が項目情報テーブル２００としてまとめられ、ターゲット生成手段１１ｈにより利用可能となる。
【００５２】
次に、第二の実施形態のＨＴＭＬファイルの出力処理（ステップＳ１６）の詳細な処理の流れについて図１３から図１７を用いて説明する。図１３は、第二の実施形態のＨＴＭＬファイルの出力処理のフローチャートである。図１４は、第二の実施形態のＨＴＭＬタグ変換ルールの一例を示す図である。図１５は、第二の実施形態のＨＴＭＬタグ変換ルールの一例を示す図である。図１６は、第二の実施形態の項目情報テーブルの生成例を示す図である。図１７は、第二の実施形態のＨＴＭＬファイルの出力例を示す図である。
【００５３】
［ステップＳ３１］ターゲット生成手段１１ｈは、パラメータ指定１１ｄを参照して指定されたファイル名、ファイルパスで出力用のＨＴＭＬファイルをオープンする。
［ステップＳ３２］ターゲット生成手段１１ｈは、生成した項目表示テーブルのすべてのデータ（項目）について、処理が完了したか否かを判断し、完了していれば、ステップＳ３５にすすみ、完了していなければステップＳ３３にすすむ。ここでは、項目情報テーブル２０１（図１６）が生成されているとする。項目は、ｌａｂｅｌ＿ａ２１２、ｔｘｔ＿ａ２１３の２つがある。
【００５４】
［ステップＳ３３］ターゲット生成手段１１ｈは、項目情報テーブル２０１の１つの項目について、１レコード（一行分）のデータをＨＴＭＬタグに変換する。
ここで、ターゲット生成手段１１ｈは、１レコードのデータをＨＴＭＬタグに変換する際に、項目の種別ごとに変換ルールを用意している。変換ルールとは、出力するＨＴＭＬの雛形という形式で用意される。ターゲット生成手段１１ｈは、取得した１レコードのデータを該当する雛形にあてはめることでＨＴＭＬタグを生成できる。たとえば、ｌａｂｅｌ＿ａ２１２については、種別２２０がラベル２２２であるため、ラベルの変換ルール４００を適用する。変換ルール中の「＄｛｝」で記載されている箇所を項目情報テーブル２０１中のデータで置換することでターゲットとするＨＴＭＬタグを生成することができる。
【００５５】
たとえば、ターゲット生成手段１１ｈは、ラベルの変換ルール４００の「＄｛英項目名｝」４１１をｌａｂｅｌ＿ａ２１２で置換する。同様にして、ターゲット生成手段１１ｈは、ラベルの変換ルール４００の「＄｛表示位置−ｘ｝」４３１ａ、「＄｛表示位置−ｙ｝」４３１ｂをｘ座標（１０）２３２ａ、ｙ座標（１０）２３２ｂで置換する。同様にして、ターゲット生成手段１１ｈは、ラベルの変換ルール４００の「＄｛サイズ−幅｝」４４１ａ、「＄｛サイズ−高さ｝」４４１ｂをｗｉｄｔｈ（８０）２４２ａ、ｖｅｒｔｉｃａｌ（４０）２４２ｂで置換する。同様にして、ターゲット生成手段１１ｈは、ラベルの変換ルール４００の「＄｛フォント−種類｝」４５１ｂ、「＄｛フォント−サイズ｝」４５１ａを種類（ゴシック）２５２ｂ、サイズ（１０）２５２ａで置換する。同様にして、ターゲット生成手段１１ｈは、ラベルの変換ルール４００の「＄｛表示文字｝」４６１を値（ユーザＩＤ）２６２で置換する。
【００５６】
なお、別の項目である、ｔｘｔ＿ａ２１３については、種別２２０がテキスト２２３であるため、ラベルの変換ルール４０１を適用する。この場合、ターゲット生成手段１１ｈは、ラベルの変換ルール４０１の「＄｛英項目名｝」４１２をｔｘｔ＿ａ２１３で置換する。同様にして、ターゲット生成手段１１ｈは、ラベルの変換ルール４０１の「＄｛表示位置−ｘ｝」４３２ａ、「＄｛表示位置−ｙ｝」４３２ｂをｘ座標（１００）２３３ａ、ｙ座標（１０）２３３ｂで置換する。同様にして、ターゲット生成手段１１ｈは、ラベルの変換ルール４０１の「＄｛サイズ−幅｝」４４２ａ、「＄｛サイズ−高さ｝」４４２ｂをｗｉｄｔｈ（２８０）２４３ａ、ｖｅｒｔｉｃａｌ（４０）２４３ｂで置換する。同様にして、ターゲット生成手段１１ｈは、ラベルの変換ルール４０１の「＄｛フォント−種類｝」４５２ｂ、「＄｛フォント−サイズ｝」４５２ａを種類（ゴシック）２５３ｂ、サイズ（１０）２５３ａで置換する。同様にして、ターゲット生成手段１１ｈは、ラベルの変換ルール４０１の「＄｛表示文字｝」４６２を値（１２３４５６）２６３で置換する。
【００５７】
［ステップＳ３４］ターゲット生成手段１１ｈは、変換したＨＴＭＬタグ情報をオープンしているＨＴＭＬファイルに出力する。たとえば、ｌａｂｅｌ＿ａ２１２に対応するＨＴＭＬタグ情報は、ターゲット生成手段１１ｈにより、ＨＴＭＬファイル５００にＨＴＭＬタグ５０１として出力される。同様にして、ｔｘｔ＿ａ２１３に対応するＨＴＭＬタグ情報は、ターゲット生成手段１１ｈにより、ＨＴＭＬファイル５００にＨＴＭＬタグ５０２として出力される。
【００５８】
［ステップＳ３５］ターゲット生成手段１１ｈは、ＨＴＭＬファイル５００をクローズして終了する。
次に、ステップＳ２２における表示中の画面情報の取得について、具体例を挙げて説明する。図１８は、第二の実施形態の表示レイアウト情報の取得例を示す図である。
【００５９】
表示画面６００は、アプリケーション２１ａの実行により表示される。表示画面の選択、ウインドウサイズの選択は、パラメータ指定手段１１ｃが受け付けたパラメータ指定１１ｄに基づいて起動制御手段１１ｂから通信手段１１ａ、デバッガ２１ｂを介してアプリケーション２１ａに指示される。表示画面６００に係る表示レイアウト情報は、デバッガ２１ｂによりアプリケーション２１ａのワークエリア（たとえば、ＲＡＭ１０２上）から取得される。表示画面６００は、複数の項目（アプリケーションウインドウ６０１、パネル６０２、画面項目６０３、画面項目６０４）から構成される。これら各項目について、表示レイアウト情報がアプリケーション２１ａのワークエリアに格納されている。アプリケーション２１ａのワークエリアに格納されている表示レイアウト情報をデバッガ２１ｂにより読み出すことで、各項目についての具体的な表示レイアウト情報を把握できる。
【００６０】
たとえば、アプリケーションウインドウ６０１の表示に対応する記憶領域であるアプリケーションウインドウ６１０には、高さ情報６１１として「６００ｐｘ」、幅情報６１２として「４００ｐｘ」、タイトル情報６１３として「ｘｘｘシステム」、表示パネル情報６１４とし「（ｐａｎｅｌ）」が記憶されている。
【００６１】
パネル６０２の表示に対応する記憶領域であるパネル６２０には、開始位置（ｘ）６２１として「０ｐｘ」、開始位置（ｙ）６２２として「０ｐｘ」、表示有無６２３として「表示中」、画面項目６２４として「（Ｃｏｍｐｏｎｅｎｔ）×ｎ」が記憶されている。
【００６２】
画面項目６０３の表示に対応する記憶領域である画面項目６３０には、種別６３１として「ラベル」、項目名６３２として「ｌａｂｅｌ＿ａ」、開始位置（ｘ）６３３として「１０ｐｘ」、開始位置（ｙ）６３４として「１０ｐｘ」、表示文字６３５として「項目Ａ」が記憶されている。
【００６３】
画面項目６０４の表示に対応する記憶領域である画面項目６４０には、種別６４１として「テキスト」、項目名６４２として「ｔｘｔ＿ａ」、開始位置（ｘ）６４３として「１００ｐｘ」、開始位置（ｙ）６４４として「１０ｐｘ」、表示文字６４５として「１２３４５６」が記憶されている。
【００６４】
なお、表示パネル情報６１４「（ｐａｎｅｌ）」は、パネル６０２の表示に対応する記憶領域であるパネル６２０へのリンク情報である。同様にして、「（Ｃｏｍｐｏｎｅｎｔ）」、「ｎ」についてリンク情報をたどることで、起動制御手段１１ｂは、表示中の必要な画面項目にアクセスを指示することができる。そして、情報取得手段１１ｅは、必要な表示レイアウト情報を取得できる。
【００６５】
次に、ワークエリアに記憶されるメモリの値は、ウインドウサイズの変更に連動して変化することから、一つの画面について、ウインドウサイズを変更して複数の表示レイアウト情報を取得する例を示す。図１９は、第二の実施形態の一のウインドウサイズにおける表示レイアウト情報の取得例を示す図である。図２０は、第二の実施形態の他のウインドウサイズにおける表示レイアウト情報の取得例を示す図である。
【００６６】
たとえば、表示画面７００は、画面項目７０１を含んで構成される。画面項目７０１の表示に対応する記憶領域である画面項目７１０には、種別７１１として「テキスト」、項目名７１２として「ｔｘｔ＿ａ」、開始位置（ｘ）７１３として「１００ｐｘ」、開始位置（ｙ）７１４として「１０ｐｘ」、幅７１５として「２００ｐｘ」、高さ７１６として「４０ｐｘ」、表示文字７１７として「１２３４５６」が記憶されている。
【００６７】
そして、パラメータ指定手段１１ｃが受け付けたパラメータ指定１１ｄにより異なるウインドウサイズを指定して、アプリケーション２１ａが表示したのが、表示画面７２０である。なお、ここでは、ウインドウサイズを拡大変更しているが、縮小する変更や、縦横比を異ならせた拡大、縮小の変更をすることもできる。
【００６８】
なお、表示画面７２０は、画面項目７２１を含んで構成される。ウインドウサイズの拡大により、画面項目７２１の表示に対応する記憶領域である画面項目７３０には、種別７３１として「テキスト」、項目名７３２として「ｔｘｔ＿ａ」、開始位置（ｘ）７３３として「１００ｐｘ」、開始位置（ｙ）７３４として「１０ｐｘ」、幅７３５として「２００ｐｘ」、高さ７３６として「４０ｐｘ」、表示文字７３７として「１２３４５６」が記憶されている。
【００６９】
これによれば、デスクトップ型のコンピュータ、ノート型のコンピュータ、携帯電話などの携帯機器でモニタのサイズが異なる場合があっても、それぞれのモニタのサイズに対応する表示レイアウト情報を容易に取得可能になる。
【００７０】
なお、ソースファイルをＪａｖａ言語で記述したプログラムとして説明したが、これに限るものではない。ソースファイル中に表示画面の具体的情報を含まず実行環境において具体的情報が決定されるソースファイルへの適用が有効である。また、ソースファイル中に表示画面の具体的情報を含む場合であっても、実行環境において具体的情報を変更可能なソースファイルへの適用も有効である。
【００７１】
なお、ターゲットファイルをＨＴＭＬとして説明したがこれに限るものではない。特に、タグに注目してデータの変換をおこなう場合には、タグを用いて記述されるＳＧＭＬ（Standard Generalized Markup Language）、ＴｅＸなどのマークアップ言語に向く。
【００７２】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、レイアウト情報変換ツールが有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）などがある。
【００７３】
プログラムを流通させる場合には、たとえば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【００７４】
プログラムを実行するコンピュータは、たとえば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムにしたがった処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムにしたがった処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムにしたがった処理を実行することもできる。
【００７５】
なお、上述の実施形態は、実施形態の要旨を逸脱しない範囲内において種々の変更を加えることができる。
さらに、上述の実施形態は、多数の変形、変更が当業者にとって可能であり、説明した正確な構成および応用例に限定されるものではない。
【符号の説明】
【００７６】
１  レイアウト情報変換ツール
１０  アプリケーション変換部
１０ａ  情報取得手段
１０ｂ  情報生成手段
１０ｃ  ターゲット用表示レイアウト情報
２０  アプリケーションプロセス
２０ａ  アプリケーション
２０ｂ  デバッガ
【図１】
0005396183.tif 000002
【図２】
0005396183.tif 000003
【図３】
0005396183.tif 000004
【図４】
0005396183.tif 000005
【図５】
0005396183.tif 000006
【図６】
0005396183.tif 000007
【図７】
0005396183.tif 000008
【図８】
0005396183.tif 000009
【図９】
0005396183.tif 000010
【図１０】
0005396183.tif 000011
【図１１】
0005396183.tif 000012
【図１２】
0005396183.tif 000013
【図１３】
0005396183.tif 000014
【図１４】
0005396183.tif 000015
【図１５】
0005396183.tif 000016
【図１６】
0005396183.tif 000017
【図１７】
0005396183.tif 000018
【図１８】
0005396183.tif 000019
【図１９】
0005396183.tif 000020
【図２０】
0005396183.tif 000021