(57)【要約】【課題】  複数の文字列描画領域がある場合に、関連する文字列描画領域に対して、デザイン上の違和感を少なくして、描画可能にすることを目的とする。【解決手段】  文字列描画領域毎に、予め定められた文字サイズと、文字列描画領域の大きさと、文字列描画領域に描画する文字列の情報とに基づいて、第１の文字サイズを決定し、文字列描画領域のレイアウト情報に基づいて、関連する複数の文字列描画領域のグループを抽出する。抽出されたグループにおける複数の文字列描画領域の複数の第１の文字サイズから、文字列描画領域毎に、文字列描画領域の第２の文字サイズを決定し、第２の文字サイズを用いて、文字の描画を行う。【選択図】  図２
2014063439.tif 000002
【特許請求の範囲】
【請求項１】
文字列描画領域毎に、予め定められた文字サイズと、前記文字列描画領域の大きさと、前記文字列描画領域に描画する文字列の情報とに基づいて、第１の文字サイズを決定する第１文字サイズ決定手段と、
前記文字列描画領域のレイアウト情報に基づいて、関連する複数の文字列描画領域のグループを抽出するグループ抽出手段と、
前記抽出されたグループにおける複数の文字列描画領域の複数の第１の文字サイズから、前記文字列描画領域毎に、前記文字列描画領域の第２の文字サイズを決定する第２文字サイズ決定手段と、
前記決定された第２の文字サイズを用いて、文字の描画を行う描画手段を有することを特徴とする描画処理装置。
【請求項２】
前記第１の文字サイズは、前記文字列描画領域に前記文字列が収まるような文字サイズであることを特徴とする請求項１に記載の描画処理装置。
【請求項３】
前記文字列描画領域が、いずれかのグループに属しているかを判定する判定手段を有することを特徴とする請求項１又は請求項２に記載の描画処理装置。
【請求項４】
前記判定手段が、前記文字列描画領域がいずれかのグループに属していると判定された場合は、前記第２文字サイズ決定手段は、前記グループにおける複数の文字列描画領域の複数の第１の文字サイズのいずれかを、前記第２の文字サイズと決定することを特徴とする請求項３に記載の描画処理装置。
【請求項５】
前記第２文字サイズ決定手段は、前記グループにおける複数の文字列描画領域の複数の第１の文字サイズのうち、最小の第１の文字サイズを、前記第２の文字サイズと決定することを特徴とする請求項４に記載の描画処理装置。
【請求項６】
前記判定手段が、前記文字列描画領域がいずれかのグループに属していないと判定された場合は、前記第２文字サイズ決定手段は、前記文字列描画領域の第１の文字サイズを、前記第２の文字サイズと決定することを特徴とする請求項３に記載の描画処理装置。
【請求項７】
前記判定手段が、前記文字列描画領域がいずれかのグループに属していると判定された場合、前記文字列描画領域の第１文字サイズが、予め定められた値以上かを判定し、
前記文字列描画領域の第１文字サイズが、予め定められた値より小さいと判定された場合は、前記第２文字サイズ決定手段は、前記文字列描画領域の第１文字サイズを、前記第２の文字サイズと決定することを特徴とする請求項３に記載の描画処理装置。
【請求項８】
前記判定手段が、前記文字列描画領域がいずれかのグループに属していると判定された場合、前記文字列描画領域の第１文字サイズが、予め定められた値以上かを判定し、
前記文字列描画領域の第１文字サイズが、予め定められた値以上であると判定された場合は、前記グループにおける複数の文字列描画領域の複数の第１の文字サイズのうち、最小の第１の文字サイズが、予め定められた値以上かを判定し、
前記グループにおける複数の文字列描画領域の複数の第１の文字サイズのうち、最小の第１の文字サイズが、予め定められた値より小さいと判定された場合、前記前記第２文字サイズ決定手段は、前記予め定められた値を、前記第２の文字サイズと決定することを特徴とする請求項３に記載の描画処理装置。
【請求項９】
描画処理装置の制御方法であって、
第１文字サイズ決定手段が、文字列描画領域毎に、予め定められた文字サイズと、前記文字列描画領域の大きさと、前記文字列描画領域に描画する文字列の情報とに基づいて、第１の文字サイズを決定する第１文字サイズ決定工程と、
グループ抽出手段が、前記文字列描画領域のレイアウト情報に基づいて、関連する複数の文字列描画領域のグループを抽出するグループ抽出工程と、
第２文字サイズ決定手段が、前記抽出されたグループにおける複数の文字列描画領域の複数の第１の文字サイズから、前記文字列描画領域毎に、前記文字列描画領域の第２の文字サイズを決定する第２文字サイズ決定工程と、
描画手段が、前記決定された第２の文字サイズを用いて、文字の描画を行う描画工程を有することを特徴とする描画処理装置の制御方法。
【請求項１０】
前記第１の文字サイズは、前記文字列描画領域に前記文字列が収まるような文字サイズであることを特徴とする請求項９に記載の描画処理装置の制御方法。
【請求項１１】
判定手段が、前記文字列描画領域が、いずれかのグループに属しているかを判定する判定工程を有することを特徴とする請求項９又は請求項１０に記載の描画処理装置の制御方法。
【請求項１２】
前記判定工程で、前記文字列描画領域がいずれかのグループに属していると判定された場合は、前記第２文字サイズ決定工程は、前記グループにおける複数の文字列描画領域の複数の第１の文字サイズのいずれかを、前記第２の文字サイズと決定することを特徴とする請求項１１に記載の描画処理装置の制御方法。
【請求項１３】
前記第２文字サイズ決定工程は、前記グループにおける複数の文字列描画領域の複数の第１の文字サイズのうち、最小の第１の文字サイズを、前記第２の文字サイズと決定することを特徴とする請求項１２に記載の描画処理装置の制御方法。
【請求項１４】
前記判定工程で、前記文字列描画領域がいずれかのグループに属していないと判定された場合は、前記第２文字サイズ決定工程は、前記文字列描画領域の第１の文字サイズを、前記第２の文字サイズと決定することを特徴とする請求項１１に記載の描画処理装置の制御方法。
【請求項１５】
前記判定工程で、前記文字列描画領域がいずれかのグループに属していると判定された場合、前記文字列描画領域の第１文字サイズが、予め定められた値以上かを判定し、
前記文字列描画領域の第１文字サイズが、予め定められた値より小さいと判定された場合は、前記第２文字サイズ決定工程は、前記文字列描画領域の第１文字サイズを、前記第２の文字サイズと決定することを特徴とする請求項１１に記載の描画処理装置の制御方法。
【請求項１６】
前記判定工程で、前記文字列描画領域がいずれかのグループに属していると判定された場合、前記文字列描画領域の第１文字サイズが、予め定められた値以上かを判定し、
前記文字列描画領域の第１文字サイズが、予め定められた値以上であると判定された場合は、前記グループにおける複数の文字列描画領域の複数の第１の文字サイズのうち、最小の第１の文字サイズが、予め定められた値以上かを判定し、
前記グループにおける複数の文字列描画領域の複数の第１の文字サイズのうち、最小の第１の文字サイズが、予め定められた値より小さいと判定された場合、前記前記第２文字サイズ決定工程は、前記予め定められた値を、前記第２の文字サイズと決定することを特徴とする請求項１１に記載の描画処理装置の制御方法。
【請求項１７】
コンピュータを、請求項１乃至８の何れか１項に記載の描画処理装置が有する各手段として機能させるためのプログラム。
【請求項１８】
請求項１７に記載のプログラムを格納した、コンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字列の描画処理に関する。
【背景技術】
【０００２】
従来、機器のグラフィカルユーザインタフェース等において、限られた描画領域に文字列を描画するために、文字のサイズや文字間を調整する方法がある（特許文献１および特許文献２）。これらの方法は、描画領域の幅や高さと、各文字の幅や高さの値から、文字列全体が描画領域に描画されるよう各文字の幅や高さを小さくするものであった。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−４７９４２号公報
【特許文献２】特開平５−１２０２８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術は、複数の文字列描画領域がある場合に、文字列描画領域ごとに文字サイズを決定するため、関連する文字列描画領域であっても、文字サイズが異なることがあった。そのため、例えば、ユーザにどちらか一方を選択させるための二者択一のダイアログ画面において、一方の文字列の文字サイズが大きくなり、あたかもユーザに一方の選択を促すかのような誤解を招く表示になる場合があった。
そこで本発明では、複数の文字列描画領域がある場合に、関連する文字列描画領域に対して、デザイン上の違和感を少なくして、描画可能にすることを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明に係る描画処理装置は、文字列描画領域毎に、予め定められた文字サイズと、前記文字列描画領域の大きさと、前記文字列描画領域に描画する文字列の情報とに基づいて、第１の文字サイズを決定する第１文字サイズ決定手段と、前記文字列描画領域のレイアウト情報に基づいて、関連する複数の文字列描画領域のグループを抽出するグループ抽出手段と、前記抽出されたグループにおける複数の文字列描画領域の複数の第１の文字サイズから、前記文字列描画領域毎に、前記文字列描画領域の第２の文字サイズを決定する第２文字サイズ決定手段と、前記決定された第２の文字サイズを用いて、文字の描画を行う描画手段を有することを特徴とする。
【発明の効果】
【０００６】
本発明により、関連する文字列描画領域に対して、デザイン上の違和感を少なくして、描画可能である。
【図面の簡単な説明】
【０００７】
【図１】本発明の第一および第二の実施形態による描画処理装置の構成を示すブロック図。
【図２】第一および第二の実施形態の描画処理装置における文字描画機能のモジュール構成を示した図。
【図３】描画処理装置の画面に表示されるダイアログ画面の一例。
【図４】第一の実施形態における文字列描画処理の概略を示したフローチャート。
【図５】Ｓ４０１の処理の詳細を示したフローチャート。
【図６】フォントデータのベースライン位置を示した図。
【図７】Ｓ４０２の処理の詳細を示したフローチャート。
【図８】第一の実施形態の描画処理装置の画面に表示されるダイアログ画面の一例。
【図９】描画処理装置の画面に表示されるテキストボックス画面の一例。
【図１０】第二の実施形態における文字列描画処理の概略を示したフローチャート。
【図１１】Ｓ１００３の処理の詳細を示したフローチャート。
【発明を実施するための形態】
【０００８】
＜第一の実施形態＞
以下、本発明の第一の実施形態について、図面を参照して説明する。なお、以下の実施の形態は特許請求の範囲に関る本発明を限定するものではなく、また、本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一な構成については、同じ符号を付して説明する。
【０００９】
図１は本実施形態の描画処理装置の構成を示すブロック図である。
【００１０】
図１において、ＣＰＵ１０１はシステム制御部であり装置全体を制御する。ＲＯＭ１０２は、ＣＰＵ１０１の制御プログラムや各種固定データを格納する読取専用のメモリである。ＲＡＭ１０３は、ＳＲＡＭ、ＤＲＡＭ等で構成された書換え可能なメモリであり、プログラム制御変数等を格納するためのものである。各種設定パラメータ、各種ワーク用バッファ等もＲＡＭ１０３に格納されるものである。表示部１０４は、ＬＣＤ等を用いて文字や画像等のグラフィックスを表示するためのものである。操作部１０５は、キーボードやポインティングデバイス等で構成され、オペレータが各種入力操作を行うためのものである。１０６は１０１〜１０５の各ユニットを通信可能に接続するシステムバスである。
【００１１】
図２は、本実施形態の描画処理装置における文字列描画機能のモジュール構成を示した図である。
【００１２】
保持部２０１は、ＲＯＭ１０２に相当し、画面を表示する際に必要なレイアウト情報を保持している。レイアウト情報は、文字列描画領域の領域情報（幅や高さなどのサイズ）、文字列の文字情報（文字サイズや、文字の数など）、描画文字列の開始座標、文字列の装飾情報、色情報、文字列描画領域の意味情報、フォントデータなどである。文字列の装飾情報とは、ボールド、イタリック、ドロップシャドウといった視覚的な装飾や、右寄せ、左寄せ、回転角度といったレイアウト上の装飾を示す情報である。文字列描画領域の意味情報とは、ボタン、タイトル、メニューといった領域の属性を示す情報である。尚、レイアウト情報は、本実施形態では、ユーザインタフェース（以下、ＵＩ）画面のレイアウト情報であるとする。一般に、ＵＩ画面デザイン定義では、文字描画領域ごとや画面ごとに文字サイズが指定されている。レイアウト情報に含まれる文字サイズとは、ＵＩ画面デザイン定義されている、元々の文字サイズに相当する。また、本実施形態における画面には、複数の文字列描画領域を有するとする。
【００１３】
第１文字サイズ決定部２０３は、文字列描画領域毎に、文字列描画領域の領域情報と、描画する文字列を構成する文字情報に基づいて、文字列描画領域に文字列が収まるような文字サイズ（第１の文字サイズ）を決定する。領域情報は、文字描画領域の幅や高さなどのサイズ情報であり、文字情報は、文字の数と各文字のサイズ情報である。ここでは、予め定められた文字サイズ（レイアウト情報に含まれる文字サイズ）で描画した際に文字列が描画領域をはみ出す場合には、文字描画領域に収まるよう、より小さい文字サイズを決定する。文字サイズの値は、ポイントやピクセルなどの単位を持つ値でも良いし、予め定められた文字サイズに対する文字の縮小率でも良い。また、Ｘ方向（水平方向）のみの縮小やＹ方向（垂直方向）のみの縮小であっても良い。
【００１４】
グループ抽出部２０４は、レイアウト情報に基づいて、関連する文字描画領域をグループとして抽出する。また、グループとして抽出された文字描画領域を示した、関連領域リストを作成する。
【００１５】
第２文字サイズ決定部２０５は、最終的に画面に描画する文字サイズを決定する。ここでは、第１文字サイズ、関連領域リストに基づいて、描画文字サイズ（第２の文字サイズ）を決定する。
【００１６】
描画部２０６は、保持部２０１からフォントデータを取得し、第２文字サイズ決定部２０５で決定された描画文字サイズ（第２の文字サイズ）で文字を描画する。尚、フォントデータは、アウトライン形式またはビットマップ形式のフォントデータである。
【００１７】
表示部２０８は、描画部２０６で描画した文字を表示する。ここでは、描画部２０６で描画した文字とレイアウト情報を用いてＵＩ画面を表示する。
【００１８】
図３は、描画処理装置の画面に表示されるダイアログ画面の一例である。図３は、本発明を適用していない場合の例であり、ボタン３０１とボタン３０２のどちらかを選択可能な二者択一ダイアログの画面である。図３では、ボタン３０２の文字列はボタンの文字列描画領域に収めるためにＸ方向に縮小されている。一方、ボタン３０１の文字列は、文字列描画領域に収まるため、予め定められた文字サイズで描画されている。その結果、ボタン３０１の文字がボタン３０２の文字より大きくなり、二者択一画面デザインのバランスを損なっている。
【００１９】
図４は、本実施形態における文字列描画処理の概略を示したフローチャートである。同図に示した通り、まず、グループ抽出部２０４が、ＵＩ画面中の複数の文字列描画領域の中から、関連する文字列描画領域のグループ（関連領域グループ）を抽出する（Ｓ４０１）。ここでは、一つの描画領域が複数の関連領域グループに属することはない。次に、第２文字サイズ決定部２０５が、関連領域グループごとに各描画領域の描画文字サイズ（第２文字サイズ）を決定する（Ｓ４０２）。そして、描画部２０６が、Ｓ４０２で決定した描画文字サイズに基づいて、各描画領域に文字列を描画する（Ｓ４０３）。Ｓ４０１およびＳ４０２の詳細な処理については後述する。
【００２０】
図５は、Ｓ４０１の処理の詳細を示したフローチャートである。図５の処理は関連領域グループを意味する関連領域リストを作成する際の処理であって、ある文字列描画領域に対して、別の文字列描画領域が関連領域グループに含まれるか否かを判断するときの処理である。図５の処理は各文字列描画領域について実行されるものであるが、すでにいずれかの関連領域リストに属した文字列描画領域に対してはこの処理は実行されない。例えば、画面レイアウト作成時に、文字列描画領域Ａと文字列描画領域Ｂが関連している旨の情報を付与し、その情報に基づいて文字サイズを一致させてもよい。図５の処理は、そのような明示的な情報がなくとも、各文字列描画領域に関する情報に基づいて、領域の関連性を判断するものである。
【００２１】
図５において、まず、複数の文字列描画領域のうち、２つの文字列描画領域を選択する（Ｓ５００）。選択された２つの文字列描画領域における、文字列の描画開始位置のＹ座標値が同一か否かを判断する（Ｓ５０１）。ここで、Ｙ座標値が同一ではないと判断されれば、処理を終了する。Ｓ５０１でＹ座標値が同一と判断されれば、文字列描画領域に予め定められた文字サイズが同一か否かを判断する（Ｓ５０２）。ここで、予め定められた文字サイズが同一ではないと判断されれば、処理を終了する。
【００２２】
Ｓ５０２で予め定められた文字サイズが同一と判断されれば、文字列装飾情報が同一か否かを判断する（Ｓ５０３）。文字列装飾情報とは、前述のとおり、ボールド、イタリック、右寄せなどの情報である。ここで、文字列装飾情報が同一ではないと判断されれば、処理を終了する。Ｓ５０３で文字列装飾情報が同一であると判断されれば、指定されたフォントデータのベースライン位置の相違が所定範囲内か否かを判断する（Ｓ５０４）。フォントデータのベースライン位置については図６で説明する。指定されたフォントデータが同一であれば、当然ベースライン位置も同一である。Ｓ５０４でフォントデータのベースライン位置の相違が所定範囲を超えると判断されれば、同図の処理を終了する。
【００２３】
Ｓ５０４でフォントデータのベースライン位置の相違が所定範囲内と判断されれば、Ｓ５００で選択された２つの文字列描画領域は関連していると判断し、２つの文字列描画領域を関連するグループとして抽出し（Ｓ５０５）、終了する。
【００２４】
図５の処理は、複数の文字列描画領域における全ての組み合わせについて実行され、Ｓ５０５は、関連していると判断された複数の文字列描画領域に対して、グループ抽出を行う。
【００２５】
図５においては、４種類の条件を用いて関連領域か否かを判断しているが、これらの他、描画開始位置のＸ座標、文字列描画領域の幅や高さ、文字列の色情報、日本語や英語といった言語情報が一致するか否かに基づいて判断しても良い。各文字列描画領域に、ボタン、メニュー、タイトル、本文といった意味付けの情報が存在するのであれば、それが一致するか否かを用いて判断しても良い。また、Ｓ５０１やＳ５０２等では同一か否かによって判断を行っているが、差が所定の範囲内か否かによって判断を行っても良い。
【００２６】
図６は、フォントデータのベースライン位置を示した図である。６０１および６０３は文字列描画領域を意味する枠である。破線６０２は日本語フォントのベースライン位置を示しており、破線６０４は英語（ラテン１）フォントのベースライン位置を示している。
【００２７】
一般に、アウトラインフォントデータはベースライン位置を基準にデザインされており、ベースライン位置はフォントによって異なる場合がある。日本語や中国語のフォントはベースライン位置が相対的に低めであり、英語（ラテン１）のフォントは相対的に高めである。組み版などにおいては、複数種類のフォントを用いた文字が同一行に存在する場合に、ベースライン位置を揃えて描画することがある。ＵＩ画面のボタンなど限られた領域に収まるように描画する場合には、図６に示したように、使用フォントによって描画領域に対するベースラインの相対位置を変えることがある。ベースライン位置は、フォントデータに含まれるアセンドやディセンドといったメトリクス情報から判断することができる。
【００２８】
ＵＩ画面においては、ベースライン位置が異なるフォントを用いた文字列については、文字サイズが異なっていても違和感は少ない。一方、ラテン１（英語など）とラテン２（東欧系の言語）はベースライン位置の差が小さく、文字サイズが異なっていると違和感がある。Ｓ５０４においては日本語、英語といった言語名に基づいて判断しても良いが、文字列描画モジュールにおいては、言語名情報が失われ、よりプリミティブなフォント名などの情報しか取得できない場合がある。Ｓ５０４においてベースライン位置に基づいて判断しているのは、デザイン的な合理性とモジュール構成上の利便性を考慮したものである。
【００２９】
図７は、Ｓ４０２の処理の詳細を示したフローチャートである。
【００３０】
まず、ＵＩ画面中の各文字列描画領域の暫定文字サイズを決定する（Ｓ７０１）。暫定文字サイズとは文字列が描画領域に収まるようにした文字サイズのことであり、前述の第１文字サイズに相当する。次に、領域グループごとに最小の暫定文字サイズを判断し取得する（Ｓ７０２）。そして、ＵＩ画面中の最初の文字列描画領域の情報を取得する（Ｓ７０３）。以降は、各文字列描画領域に対して処理が行われるようにするための繰返し処理になっている。
【００３１】
Ｓ７０４では、Ｓ７０３（または後述のＳ７１１）で取得した文字列描画領域がいずれかの領域グループに属しているか否かを判断する。Ｓ７０４において文字列描画領域がいずれかの領域グループに属していると判断されれば、文字列描画領域の暫定文字サイズが所定値以上か否かを判断する（Ｓ７０５）。ここで、所定値とは、あらかじめプログラム上で決められた値であり、文字列描画領域に描画される文字サイズの最大の値に相当する。
【００３２】
Ｓ７０４またはＳ７０５で否と判断されれば、暫定文字サイズを、その文字列描画領域の描画文字サイズとする（Ｓ７０７）。Ｓ７０５で、文字列描画領域の暫定文字サイズが所定値以上と判断されれば、その文字列描画領域が属している領域グループの最小暫定文字サイズが所定値以上か否かを判断する（Ｓ７０６）。ここで所定値はＳ７０５の所定値と同じである。Ｓ７０６で領域グループの最小暫定文字サイズが所定値以上でないと判断されれば、所定値をその文字列描画領域の描画文字サイズとする（Ｓ７０８）。Ｓ７０６において領域グループの最小暫定文字サイズが所定値以上であると判断されれば、領域グループの最小暫定文字サイズを描画文字サイズとする（Ｓ７０９）。ここまでの処理で、最初の文字列描画領域の描画文字サイズが決定されることになる。
【００３３】
続いて、ＵＩ画面中に次の文字列描画領域があるか否かを判断する（Ｓ７１０）。ここで、次の文字列描画領域があると判断されれば、その描画領域の情報を取得し（Ｓ７１１）、Ｓ７０４の処理に戻る。以降、ＵＩ画面中のすべての文字列描画領域の処理を終えるまで、Ｓ７０４からＳ７１０までの処理を繰り返すことになる。Ｓ７１０で次の文字列描画領域がないと判断されれば、画面中のすべての文字列描画領域の処理を終えたことになるので、処理を終了する。
【００３４】
図７の処理によって、同一の領域グループに属している文字列描画領域の文字列は、文字サイズが所定値より小さくなる場合を除いて、同一の文字サイズで描画することができる。文字列を領域に収めるために文字が小さくなることはやむをえないが、領域に余裕があるにも関わらず小さくすることは、逆にデザイン上の違和感を生じる。図７の処理において、文字サイズが所定値より小さくなる場合の処理を区別したのはそのためである。図７の処理では文字サイズが所定値以上かの判断を行い文字が必要以上に小さくなることを防いでいるが、描画領域の幅や高さに基づいて、余白が所定サイズ以上になる場合には、所定サイズの余白となるような文字サイズで描画するようにしても良い。
【００３５】
また、Ｓ７０５、Ｓ７０６において、所定値以上であるかを判定したが、所定値より大きいかどうかを判定してもよい。
【００３６】
図７においては、Ｓ７０１において１種類の暫定文字サイズを決定しているが、例えば、漢字とひらがなで異なるサイズを使用する場合には、漢字用とひらがな用の２種類の暫定文字サイズを決定するようにしても良い。その場合、各々の暫定文字サイズについて、Ｓ７０２の処理を行い、漢字用とひらがな用の２種類の所定値についてＳ７０５、Ｓ７０６の評価を行うことになる。
【００３７】
図８は、本実施形態の描画処理装置の画面に表示されるダイアログ画面の一例である。図８は、本発明の処理を適用した描画結果である。同図に示した通り、ボタン８０１とボタン８０２は文字列描画領域の開始基準位置のＹ座標が一致するため、文字列のＸ方向の縮小率が同一となっている。その結果、二者択一ボタンの文字サイズが同じになり、バランスが取れたデザインになっている。
【００３８】
一方、ボタン８０３、ボタン８０４、ボタン８０５の文字列描画領域のＹ座標は一致するものの、フォントデータのベースライン位置が異なるため、それぞれ別の文字サイズで描画されている。この場合は、文字サイズが違うものの、デザイン上の違和感は少ない。
【００３９】
以上説明したように、本実施形態によれば、関連する文字列描画領域において、デザイン上の違和感を減らすことができる。特に、二者択一などのダイアログ画面において、関連する文字列描画領域のうち、一部の文字列が大きくなりユーザの誤解を招くようなケースを減らすことができる。
【００４０】
図９は、描画処理装置の画面に表示されるテキストボックス画面の一例である。このような複数行のテキストボックスでは、組込み機器ＵＩの場合、１行ずつ別々に文字列をＲＯＭ１０２に格納していたり、あらかじめ改行コードを含んだ文字列をＲＯＭ１０２に格納していたりする。すなわち、図９の例では、各行で文字列描画領域が分かれており、計３つの文字列描画領域が存在することになる。
【００４１】
９０１は非縮小時の描画結果である。９０２は各文字列描画領域に対して、同じ割合で縮小した描画結果である。９０３は各行で領域に収まるよう縮小した第二文字サイズを用いた描画結果である。９０４は、本発明を適用した結果であり、特に、２行目と３行目の文字列は、図７のＳ７０５でＹＥＳと判定され、Ｓ７０６でＮＯと判定された場合の例である。
【００４２】
描画結果のデザイン性については個人差があるが、一般に以下のような傾向にある。９０２は、均一に縮小されているものの、２行目や３行目では文字を不必要に縮小させている印象を受ける。９０３では、３行目の文字列が目立って大きくなっておりバランスがよくない。９０４は、２行目や３行目では所定値を用いた文字サイズで描画しているため、不必要に小さくなっている印象はなく、全体としてバランスのとれた描画結果になっている。
【００４３】
本実施形態では、二者択一ダイアログやテキストボックスを例に示したが、複数の文字列描画領域を有するメニュー画面や表画面等、様々な画面デザインに適用可能である。すなわち、複数の文字列描画領域を有する画面であれば、本実施形態を適用可能である。
【００４４】
＜第二の実施形態＞
以下、本発明の第二の実施形態について、図面を参照して説明する。
【００４５】
本実施形態の描画処理装置の構成は図１と同様である。また、本実施形態の描画処理装置における文字列描画機能のモジュール構成は図２と同様である。
【００４６】
図１０は、本実施形態における文字列描画処理の概略を示したフローチャートである。同図において、Ｓ１００１、Ｓ１００２、Ｓ１００４は、図４のＳ４０１、Ｓ４０２、Ｓ４０３とそれぞれ同じである。本実施形態においては、Ｓ１００２において描画文字サイズを決定したあと、Ｓ１００３で描画文字サイズの補正を行う。この補正は、文字列の大小関係を維持するためのものである。例えば、タイトル文字列はボタン文字列より大きく、氏名の文字列は住所の文字列より大きく、といった画面デザインを維持するためのものである。
【００４７】
図１１は、Ｓ１００３の処理の詳細を示したフローチャートである。
【００４８】
本実施形態では、Ｓ１００１において、指定文字サイズ（予め定められた文字サイズ）に基づいて領域グループを作成している。すなわち、同一の領域グループに属する描画領域の指定文字サイズは同じである。また、本実施形態では、描画領域が一つしか属さない領域グループも存在する。すなわち、すべての文字列描画領域が、いずれかの領域グループに属していることになる。図１１は画面中に２つの領域グループがある場合の処理であり、ここでは、各領域グループをそれぞれグループＡ、グループＢと呼んでいる。図１１においては、描画文字サイズが図７のＳ７０９で決定された描画領域のみを文字サイズ補正の対象とする。Ｓ７０７やＳ７０８で決定された文字サイズはすでに小さいサイズ（所定値）であるため補正の対象としない。
【００４９】
図１１に示したとおり、まず、グループＡの指定文字サイズＭと描画文字サイズＰを取得する（Ｓ１１０１）。次に、グループＢの指定文字サイズＮと描画文字サイズＱを取得する（Ｓ１１０２）。ここで、描画文字サイズＰやＱは、Ｓ７０９で決定された描画文字サイズである。
【００５０】
続いて、グループＡの指定文字サイズＭとグループＢの指定文字サイズＮの大きさを比較する（Ｓ１１０３）。Ｓ１１０３において、ＮがＭより大きいと判断されれば、描画文字サイズＰと描画文字サイズＱの大きさを比較する（Ｓ１１０４）。ＰがＱより大きいと判断されれば、ＰがＱより小さくなるよう描画文字サイズＰを補正し（Ｓ１１０５）、処理を終了する。Ｓ１１０４でＱがＰより大きいと判断されれば、描画文字サイズの大小関係は維持されていることになるため、補正は行わず処理を終了する。
【００５１】
Ｓ１１０３において、ＭがＮより大きいと判断されれば、描画文字サイズＰと描画文字サイズＱの大きさを比較する（Ｓ１１０６）。Ｓ１１０６でＱがＰより大きいと判断されれば、ＱがＰより小さくなるよう描画文字サイズＱを補正し（Ｓ１１０７）、処理を終了する。Ｓ１１０６でＰがＱより大きいと判断されれば、描画文字サイズの大小関係は維持されていることになるため、補正は行わず処理を終了する。
【００５２】
図１１の処理によって、文字サイズが所定値より小さくなる場合を除いて、領域グループ間の文字の大小関係を維持することができる。領域グループが３個以上ある場合にも、図１１の処理を順次行うことにより、領域グループ間の大小関係を維持することが可能となる。本実施形態においては、大小関係を維持する処理を説明したが、文字サイズの比率を維持するようにしても良い。
【００５３】
なお、これらの実施形態では、描画処理装置を例に説明したが、本発明は、印刷装置、デジタルカメラ、複写機、複合機、スキャナ、テレビ等、表示部を有するあらゆる装置に適用可能である。
【００５４】
本発明はソフトウエアにより実現しても良い。すなわち、ソフトウエアのプログラムコードを記録した記録媒体をシステムあるいは装置に供給し、そのシステムあるいは装置のＣＰＵが記録媒体に格納されたプログラムコードを読み出し実行することで実現しても良い。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、磁気テープ、メモリカードなどを用いることができる。また、本発明は、プログラムコードの指示に基づき、コンピュータ上で稼動しているオペレーティングシステムなどが実際の処理の一部または全部を行い、その処理によって機能が実現される場合にも適用され得る。
【図１】
2014063439.tif 000003
【図２】
2014063439.tif 000004
【図３】
2014063439.tif 000005
【図４】
2014063439.tif 000006
【図５】
2014063439.tif 000007
【図６】
2014063439.tif 000008
【図７】
2014063439.tif 000009
【図８】
2014063439.tif 000010
【図９】
2014063439.tif 000011
【図１０】
2014063439.tif 000012
【図１１】
2014063439.tif 000013