(57)【要約】【課題】  全てのフォントをフォントファイル単位で列挙すると、ユーザが行う設定に手間がかかり望ましくない。【解決手段】  各フォントファミリ内に含まれるフォントファイルがライセンスフォントか非ライセンスフォントであるかどうかを調べる。ファミリフォント内にあるフォントファイルが全てライセンスフォントである、もしくは非ライセンスフォントである場合は、フォントファミリ単位で埋め込み設定可能なリスト、もしくは埋め込み設定不可能リストに列挙する。逆にフォントファミリ内にライセンスフォント、非ライセンスフォントが混在する場合、フォントファミリ単位ではなく、フォントファイル単位でそれぞれ埋め込み設定可能リスト、もしくは埋め込み設定不可能リストに列挙する。【選択図】  図２
2011227765.tif 000002
【特許請求の範囲】
【請求項１】
文書にフォントファイルを埋め込む際、フォントファミリ内のフォントファイルのライセンスポリシーを取得し、フォントファミリ内でライセンスポリシーが異なるものがあるかどうか判断する判断手段と、
異なるものがなければフォントファミリ名を、異なるものがあればフォントファイル名を、それぞれのライセンスポリシーに応じて、埋め込み可能フォントリスト、埋め込み不可能フォントリストに列挙する手段とを有することを特徴とする情報処理装置。
【請求項２】
文字描画コマンドを生成する際、文字描画に指定されたフォントがライセンスフォントであるか否か判断し、ライセンスフォントであれば更に描画属性が特殊であるか判断し、特殊な描画属性であれば、同一フォントファミリ内の通常字体のフォントファイルを特定する手段と、
前記通常字体がライセンスフォントでなければ通常字体フォントファイルを加工し特殊なフォントファイルを生成する手段と、
前記特殊なフォントファイルを文書に埋め込む手段を有することを特徴とする情報処理装置。
【請求項３】
前記特殊な描画属性が太字体、斜体字体、もしくは太斜体字体であることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
文書にフォントファイルを埋め込む際、フォントファミリ内のフォントファイルのライセンスポリシーを取得し、フォントファミリ内でライセンスポリシーが異なるものがあるかどうか判断する判断ステップと、
異なるものがなければフォントファミリ名を、異なるものがあればフォントファイル名を、それぞれのライセンスポリシーに応じて、埋め込み可能フォントリスト、埋め込み不可能フォントリストに列挙するステップとを有することを特徴とする情報処理方法。
【請求項５】
文書にフォントファイルを埋め込む際、フォントファミリ内のフォントファイルのライセンスポリシーを取得し、フォントファミリ内でライセンスポリシーが異なるものがあるかどうか判断する判断ステップと、
異なるものがなければフォントファミリ名を、異なるものがあればフォントファイル名を、それぞれのライセンスポリシーに応じて、埋め込み可能フォントリスト、埋め込み不可能フォントリストに列挙するステップとをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書に使用される埋め込みフォントに関するものである。
【背景技術】
【０００２】
ホストコンピュータ等の汎用情報処理装置上で動作する一般的なアプリケーションでは、ユーザが用途に応じて文字描画方法を指定することができる。例えば、ユーザは、フォントの種類（明朝体、ゴシック体等）や描画属性（「通常字体」、字体を太らせる「太字体」、字体を斜めにする「斜体字体」等）、フォントサイズ等を選択することができる。
【０００３】
通常のホストコンピュータには複数のフォントファイル（それぞれ文字コードに対応した文字形状等、文字描画に必要な情報を保持している）が存在しており、ホストコンピュータにはこれらフォントファイルを管理するフォント管理部が備わっている。フォント管理部は、例えば描画属性を変更させるための機能を備えている。例えば、通常自体のフォントファイルに含まれる文字形状を太らせることで太字化したり、斜めにすることで斜体字化したりすることができる。つまり、フォントファイルは通常字体のフォントのみであるが、フォント管理部によって太字や斜体に加工することができるのである。一方で「通常字体」、「太字体」、「斜体字体」の３種類のフォントファイルを予め用意することもできる。このような場合、フォント管理部は通常字体を加工するのではなく、フォントファイルを「通常字体」から「太字体」や「斜体字体」に変更することで描画属性を切り替えることができる。つまり、例えばアプリケーションは、ある文字を「通常字体」から「太字体」に変更したい場合、フォント管理部内に「太字体」のフォントファイルがあればフォントファイルを「太字体」に変更する。もし、「太字体」がなければ通常字体を加工する処理をフォント管理部で行うことで太字化するのである。また、「該当フォントの太字体フォントファイルが存在するか否か」を判断するために、フォント管理部は、書体に応じて同じ種類のものを「フォントファミリ」として管理している。例えば、「Ｆｏｎｔ  Ａ  Ｒｅｇｕｌａｒ」というフォントがあるとする。そして「Ｆｏｎｔ  Ａ  Ｒｅｇｕｌａｒ」の太字体が「Ｆｏｎｔ  Ａ  Ｂｏｌｄ」、斜体字体が「Ｆｏｎｔ  Ａ  Ｉｔａｌｉｃ」であったとすると、フォント管理部は上記３つのフォントファイルを「Ｆｏｎｔ  Ａ」というフォントファミリとして管理している。フォントファミリ内に描画属性が太字体であるフォントがあれば太字体フォントファイルが存在する、なければ存在しないと判断できるのである。
【０００４】
また、アプリケーションは、ユーザがフォント種類を変えることができるようにフォント選択を行えるユーザインターフェースを持つのが一般的である。この際、フォントファイルを全て列挙してしまうと、ユーザビリティが低下するため、フォントファミリ名のみを列挙し、フォント属性を指定させるユーザインターフェースは別に設けることが一般的である。
【０００５】
一方で、各アプリケーションファイルを、ＰＤＦに代表される構造化文書に変換するドライバ（以下、構造化文書変換ドライバ）が知られている。また、構造化文書の仕様上、構造文書内にフォントを埋め込むことが可能である（特許文献１）。この仕様により、構造化文書を受け取る側のホストコンピュータにそれらのフォントがなくても、オリジナル通りにフォントを表示・印刷することができるのである。但し、ライセンスフォント等、使用権を持ったユーザしか扱えないフォントに関しては、構造化文書内に埋め込むことはできない（禁止されている）。また、構造化文書変換ドライバでは、フォントを文書内に埋め込むかどうかをフォントファミリ毎に指定することができるユーザインターフェースを持つのが一般的である。通常、ライセンスフォントはこのユーザインターフェースにて「埋め込み不可能フォント」として、埋め込み設定をできないようにする等の対応がなされている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−１５０５８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
同一フォントファミリ内にライセンスフォントとそうではないフォントが混在する場合がある。前述した「Ｆｏｎｔ  Ａ」というフォントファミリを例にすると、例えば、「Ｆｏｎｔ  Ａ  Ｒｅｇｕｌａｒ」は非ライセンスフォントであるが、「Ｆｏｎｔ  Ａ  Ｂｏｌｄ」、「Ｆｏｎｔ  Ａ  Ｉｔａｌｉｃ」はライセンスフォントである、といった場合である。
【０００８】
このような場合、構造化文書変換ドライバの、埋め込むフォントを選択するユーザインターフェースにおいて、フォントファミリ単位で列挙する場合、埋め込んでよいのか埋め込んではいけないのかを判断することができない。この問題を解決するには、フォントファミリ単位ではなく、フォントファイル単位でユーザインターフェース上に列挙する必要がある。しかしながら全てのフォントをフォントファイル単位で列挙すると、ユーザが行う設定に手間がかかり望ましくない。
【課題を解決するための手段】
【０００９】
文書にフォントファイルを埋め込む際、フォントファミリ内のフォントファイルのライセンスポリシーを取得し、フォントファミリ内でライセンスポリシーが異なるものがあるかどうか判断する判断手段と、
異なるものがなければフォントファミリ名を、異なるものがあればフォントファイル名を、それぞれのライセンスポリシーに応じて、埋め込み可能フォントリスト、埋め込み不可能フォントリストに列挙する手段とを有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、フォントファミリ内のフォントファイルにライセンスフォント／非ライセンスフォントが混在する場合、フォントファイル単位でフォント埋め込み設定を可能とさせることができる。また、それ以外はフォントファミリ単位でフォント埋め込み設定を可能とさせることができる。これにより、ユーザビリティを損なうことなく適切なフォント埋め込み設定を行うことが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態における情報処理装置の構成を説明するブロック図
【図２】本発明の実施形態における。構造化文書変換ドライバの変換設定ユーザインターフェース上に、「埋め込みフォント」「非埋め込みフォント」をリストする処理を説明するためのフローチャート
【図３】フォントファミリとその中に含まれるフォントファイルの情報を模式的に示した図
【図４】構造化文書変換ドライバの変換設定ユーザインターフェースを示した図
【図５】本発明の実施例における、構造化文書を生成する構造化文書変換ドライバの処理全体を説明するためのフローチャート
【図６】本発明の実施例における、構造化文書変換ドライバの処理のうち、文字描画コマンドを生成する処理を説明するためのフローチャート
【発明を実施するための形態】
【００１２】
以下に、図面を参照して、本発明の好適な実施形態を例示的に詳しく説明する。ただし、この実施の形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。
【００１３】
（第１実施形態）
＜＜図１（Ａ）：ホストコンピュータ（情報処理装置）の内部システム構成＞＞
図１（Ａ）は一般的なコンピュータであるホストコンピュータ１００の内部システムを表すブロック構成図である。ＣＰＵ１０１はＲＯＭ１０２あるいはＲＡＭ１０３あるいは外部記憶装置１０５に格納されたプログラムに従って装置全体の制御を行う。ＲＡＭ１０３はＣＰＵ１０１が各種処理を行う際のワークエリアとして使用される。外部記憶装置１０５はオペレーティングシステム（ＯＳ）やアプリケーションソフト、プリンタドライバソフト等を記録する。キーボード１０４もしくは図示していないマウスなどの入力機器は、ユーザが各種指示を与えるためのデバイスである。ネットワークＩ／Ｆ１０６およびプリンタＩ／Ｆ１０７はイーサネット（登録商標）または専用インターフェースを介してプリンタ２０と接続し、データの授受を行うためのインターフェースである。モニタＩ／Ｆ１０８はモニタに接続し表示データの転送を行うためのインターフェースである。また、１１０は共通データバスである。
【００１４】
図１（Ｂ）はアプリケーション２０１から構造化文書変換ドライバ２０３に対して変換処理を行うためのシステム構成図であり、外部記憶装置１０５に含まれるものである。アプリケーション２０１、グラフィックエンジン２０２、構造化文書変換ドライバ２０３は、外部記憶装置１０５に保存されたファイルとして存在する。本実施例において、構造化文書変換ドライバはプリンタドライバの一種であるものとする。そして、これらは、ＯＳやそのモジュールを利用するモジュールによってＲＡＭ１０３にロードされて実行されるプログラムモジュールである。また、アプリケーション２０１および構造化文書変換ドライバ２０３は、外部記憶装置１０５のＦＤや不図示のＣＤ−ＲＯＭ、あるいは不図示のネットワークを経由して外部記憶装置１０５のＨＤに追加することが可能となっている。
【００１５】
次にアプリケーション２０１が電子文書を構造化文書に変換する際の処理の流れについて説明する。アプリケーション２０１は、アプリケーションデータを解析して、ＯＳ（基本ソフト）が提供するグラフィックエンジン２０２をコールする。グラフィックエンジン２０２は、例えば、Ｗｉｎｄｏｗｓ（米国マイクロソフト社の登録商標）では、ＧＤＩ（Ｇｒａｐｈｉｃ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）と呼ばれておりディスプレイやプリンタに対する画像情報の処理を司っている。グラフィックエンジン２０２は、プリンタの種類に合わせて用意されたプリンタドライバをロードし、アプリケーション２０１の出力をプリンタドライバに受け渡す。本実施例ではこのプリンタドライバとして、構造化文書変換ドライバをロードするものとする。アプリケーション２０１から受け取るＧＤＩ（Ｇｒａｐｈｉｃ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）関数からＤＤＩ（Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ  Ｉｎｔｅｒｆａｃｅ）関数に変換して、構造化文書変換ドライバ２０３へＤＤＩ関数を出力する。
【００１６】
構造化文書変換ドライバ２０３は、グラフィックエンジン２０２から受け取ったＤＤＩ関数に基づいて、構造化文書（例えばＰＤＦ）に変換する。この構造化文書は外部記憶装置１０５上等に記録され、解釈可能な特定のアプリケーションによりホストコンピュータ上で表示できる。また、ユーザの指示により再びグラフィックエンジン２０２を介して印刷装置に印刷を行うことが可能である。
【００１７】
＜＜図２：本実施形態の詳細＞＞
次に本実施形態において、構造化文書変換ドライバ２０３の変換設定ユーザインターフェースにおいて、「埋め込みフォント」「非埋め込みフォント」をリストする方法について述べる。図２に示したフローチャートを用いて詳しく述べる。
【００１８】
まず、ユーザが構造化文書変換ドライバ２０３の設定ユーザインターフェースを開くところから処理は始まる。Ｓ３０１〜Ｓ３１１までの処理は、すべて構造化文書変換ドライバ上での処理である。
【００１９】
まずＳ３０１において、構造化文書変換ドライバ２０３は、ＯＳが保持しているファミリフォントリストを要求し取得する。この要求は例えばＯＳがＷｉｎｄｏｗｓ（米国マイクロソフト社の登録商標）であれば標準の機能として予め用意されている一般的なものである。
【００２０】
次にＳ３０２において、同一フォントファミリ内に含まれるフォントファイルを全て取得し、Ｓ３０３において、その各フォントファイルのライセンス情報を取得する。ライセンス情報とは、各フォントファイルのライセンスの有無を示す情報であり、各フォンフォントファイル内に保持されている。フォントの使用権を持ったユーザしか扱えないフォントであればライセンスフォント、そうでなければ非ライセンスフォントである。構造化文書ではライセンスフォントを構造化文書内に埋め込むことはできない（禁止されている）。
【００２１】
次にＳ３０４において、Ｓ３０３の結果から同一フォントファミリ内に異なるライセンスポリシーが存在するか否かを判定し、存在しなければＳ３０５へ、存在すればＳ３０８へ移行する。
【００２２】
次にＳ３０５において、フォントファミリ内に含まれるフォントファイルの中から一つのフォントファイルを選択しライセンスフォントであるか否かを判定する。そして、ライセンスフォントであればＳ３０６において「埋め込み不可能フォントリスト」に「フォントファミリ名」をリストする。逆に非ライセンスフォントであれば、Ｓ３０７において「埋め込み可能フォントリスト」に「フォントファミリ名」をリストする。
【００２３】
一方、Ｓ３０４において、同一フォントファミリ内に異なるライセンスポリシーが存在すると判定された場合、Ｓ３０８にてフォントファミリの各フォントファイルについてそれぞれライセンスフォントであるか否かを判定する。そして、ライセンスフォントであればＳ３０９において「埋め込み不可能フォントリスト」に「フォントファイル名」をリストする。逆に非ライセンスフォントであれば、Ｓ３１０において「埋め込み可能フォントリスト」に「フォントファイル名」をリストする。Ｓ３０６、Ｓ３０７とＳ３０９、Ｓ３１０の違いはフォントファミリ単位で処理するか、フォントファイル単位で処理するかが異なるのである。
【００２４】
Ｓ３０１で取得したフォントファミリ全てに対して処理を施すまでＳ３０２〜Ｓ３１０の処理を繰り返す。
【００２５】
本実施例を適用する前と、本実施例を適用した後の結果の違いを図３、図４（Ａ）、図４（Ｂ）を用いて説明する。
【００２６】
図３は各フォントファミリとその中に含まれるフォントファイルの情報を模式的に図示したものである。フォントファミリ「Ｆｏｎｔ  Ａ」は、「Ｆｏｎｔ  Ａ  Ｒｅｇｕｌａｒ」、「Ｆｏｎｔ  Ａ  Ｂｏｌｄ」、「Ｆｏｎｔ  Ａ  Ｉｔａｌｉｃ」という３つのフォントファイルから構成されている。「Ｆｏｎｔ  Ａ  Ｒｅｇｕｌａｒ」は通常字体、太字体が「Ｆｏｎｔ  Ａ  Ｂｏｌｄ」、斜体字体が「Ｆｏｎｔ  Ａ  Ｉｔａｌｉｃ」であり、「Ｆｏｎｔ  Ａ  Ｂｏｌｄ」、「Ｆｏｎｔ  Ａ  Ｉｔａｌｉｃ」はライセンスフォントであることを表している。
【００２７】
また、図４（Ａ）、図４（Ｂ）は構造化文書変換ドライバ２０３において、フォント埋め込み設定を行うためのユーザインターフェースである。図４（Ａ）は本発明を適用する前のものであり、図４（Ｂ）は本発明を適用したものである。また図４（Ａ）、図４（Ｂ）内に含まれるフォントリストは、図３に示したフォントだけがシステムに存在している場合の例である。ここでは説明のために簡略化しているが、実際は数多くのフォントがここにリストされる。
【００２８】
図４（Ａ）、図４（Ｂ）の埋め込み可能フォントリスト５０１（６０１）及び埋め込むフォントリスト５０２（６０２）は、システムにあるフォントのうち、ライセンスが不要である非ライセンスフォントを列挙するリストボックスである。そして、ユーザは構造化文書内に埋め込みたいフォントを選んで埋め込みフォントリスト５０２（６０２）に移動することができる。また埋め込みたくないフォントについては、埋め込み可能フォントリスト５０１（６０１）に移動することできる。これによりユーザはフォントを構造化文書に埋め込むか否かをフォント毎に設定することができるのである。一方、埋め込み不可能フォントリスト５０３（６０３）は、システムにあるフォントのうち、ライセンスが必要であるライセンスフォントを列挙するリストボックスである。ライセンスフォントは構造化文書に埋め込むことが禁止されているため、埋め込み可能フォントリスト５０１（６０１）、埋め込むフォントリスト５０２（６０２）のように、埋め込むかどうかをユーザが決めることはできないようになっている。図４（Ａ）の例でわかるとおり、「Ｆｏｎｔ  Ａ  Ｂｏｌｄ」、「Ｆｏｎｔ  Ａ  Ｉｔａｌｉｃ」はライセンスフォントであるため、埋め込むフォントリスト５０２ではなく、埋め込み不可能フォントリスト５０３にリストされるべきである。しかしながら、従来の単純なフォントファミリ単位での処理では、図４（Ａ）のように、埋め込みフォントリスト５０２に「Ｆｏｎｔ  Ａ」と「Ｆｏｎｔ  Ｂ」が列挙され、埋め込み不可能フォントリスト５０３に「Ｆｏｎｔ  Ｃ」が列挙される。つまりユーザは「Ｆｏｎｔ  Ａ」を埋め込むつもりで設定しているにもかかわらず、太字体や斜体字の場合は構造化文書内にフォントが埋め込まれない結果となり、ユーザに混乱を招いてしまう。一方で、本実施例を適用すれば、図４（Ｂ）のように「Ｆｏｎｔ  Ａ  Ｒｅｇｕｌａｒ」は埋め込みフォントリスト６０２に列挙され、「Ｆｏｎｔ  Ａ  Ｂｏｌｄ」、「Ｆｏｎｔ  Ａ  Ｉｔａｌｉｃ」は埋め込み不可能フォントリスト５０３に列挙される。これによりユーザに対して混乱を招くことがなくなる。また、別の解決方法として、フォントファミリ単位ではなくフォントファイル単位でユーザインターフェース上に列挙する方法があるが、この方法は、全てのフォントをフォントファイル単位で列挙するため、ユーザが行う設定に手間がかかり望ましくない。これに対して本実施例の方法では、フォントファミリ内のフォントファイルにライセンスフォント／非ライセンスフォントが混在する場合のみ、フォントファイル単位でフォント埋め込み設定を可能とさせる。それ以外はフォントファミリ単位でフォント埋め込み設定を可能とさせることができる。これにより、ユーザビリティを損なうことなく適切なフォント埋め込み設定を行うことが可能となるのである。
【００２９】
一方、例えば同一フォントファミリ内の通常字体のフォントファイルが非ライセンスフォントであり、太字体のフォントファイルがライセンスフォントであった場合、従来の構造化文書変換ドライバでは太字体を構造化文書に埋め込むことができなかった。
【００３０】
この課題を解決するための手段について説明する。図５、図６に示したフローチャートを用いて詳しく述べる。
【００３１】
まず、本実施形態における、構造化文書生成処理についての図５に示したフローチャートを用いて詳しく述べる。
【００３２】
まず、ユーザから変換指示を受け付けたアプリケーション２０１は、グラフィックエンジン２０２を介してプリンタドライバ（構造化文書変換ドライバ）２０３に、印刷対象ファイルを構造化文書へ変換する要求を出すことによって処理が開始される（Ｓ７００）。
【００３３】
アプリケーション２０１は変換ジョブが開始することを、ＧＤＩ関数を介してグラフィックエンジン２０２に通知する。グラフィックエンジン２０２は通知されたＧＤＩ関数をＤＤＩ関数に変換して構造化文書変換ドライバ２０３へ引き渡す（Ｓ７０１）。  構造化文書変換ドライバ２０３は、ジョブ開始コマンドを生成する（Ｓ７０２）。アプリケーション２０１はページが開始することを、ＧＤＩ関数を介してグラフィックエンジン２０２に通知する。グラフィックエンジン２０２は通知されたＧＤＩ関数をＤＤＩ関数に変換して構造化文書変換ドライバ２０３へ引き渡す（Ｓ７０３）。構造化文書変換ドライバ２０３は、ページ開始コマンドを生成する（Ｓ７０４）。
【００３４】
アプリケーション２０１は論理描画要求を、ＧＤＩ関数を介してグラフィックエンジン２０２に通知する。グラフィックエンジン２０２は通知されたＧＤＩ関数をＤＤＩ関数に変換して構造化文書変換ドライバ２０３へ引き渡す（Ｓ７０５）。構造化文書変換ドライバ２０３は、論理描画コマンドを生成する（Ｓ７０６）。ステップＳ７０５、Ｓ７０６は、アプリケーション２０１からのページの終了要求が通知されるまで繰り返される。
【００３５】
アプリケーション２０１が、ページが終了することを、ＧＤＩ関数を介してグラフィックエンジン２０２に通知する。そして、グラフィックエンジン２０２が通知されたＧＤＩ関数をＤＤＩ関数に変換して構造化文書変換ドライバ２０３へ引き渡すと、構造化文書変換ドライバ２０３は、ページ終了コマンドを生成する（Ｓ７０８）。
【００３６】
また、ステップＳ７０５〜Ｓ７０８は、アプリケーション２０１からのジョブ終了要求が通知されるまで繰り返される。アプリケーション２０１が、ジョブが終了することを、ＧＤＩ関数を介してグラフィックエンジンに通知する。そして、グラフィックエンジン２０２が通知されたＧＤＩ関数をＤＤＩ関数に変換して構造化文書変換ドライバ２０３へ引き渡すと、構造化文書変換ドライバ２０３は、ジョブ終了コマンドを生成する（Ｓ７１０）。
【００３７】
次にステップＳ７０５における論理描画処理の内、文字描画コマンドの生成方法について図６に示したフローチャートを用いて説明する。Ｓ７０１〜Ｓ７１０までの処理は、すべて構造化文書変換ドライバ２０３上での処理である。グラフィックスやイメージについても同様に描画処理が行われるが、図６ではそれらは省略した。
【００３８】
まず、構造化文書変換ドライバ２０３は、アプリケーション２０１から指定されたフォントの文字描画要求を受信することで文字描画コマンド生成処理を開始する（Ｓ８０１）。
【００３９】
次にＳ８０１で受信した文字描画要求に含まれるフォントファイル名から、システムの該当フォントファイルを特定し、ライセンスポリシー情報を取得する（Ｓ８０２）。
【００４０】
次にＳ８０２で取得したライセンス情報から「ライセンスフォント」であった場合、Ｓ８０５に移行し、「非ライセンスフォント」であった場合、Ｓ８０９に移行する（Ｓ８０３）。
【００４１】
「ライセンスフォント」であった場合、Ｓ８０１で受信した文字描画要求に含まれる「描画属性」を解析し、太字体もしくは斜体字体の特殊な描画命令であるか否かを判断する。そして太字体もしくは斜体字体の描画属性であればＳ８０５へ移行し、それ以外の場合はＳ８１０に移行する（Ｓ８０４）。
【００４２】
太字体もしくは斜体字体の描画属性であれば、システムに保持されている同一フォントファミリ内に含まれるフォントファイルの中から通常字体フォントファイルを特定する（Ｓ８０５）。
【００４３】
次にＳ８０５で特定した通常字体フォントファイルのライセンスポリシー情報を取得する（Ｓ８０６）。
【００４４】
次にＳ８０６で取得したライセンス情報から「ライセンスフォント」であった場合、Ｓ８１０に移行し、「非ライセンスフォント」であった場合、Ｓ８０８に移行する（Ｓ８０７）。
【００４５】
通常字体が「ライセンスフォント」であった場合、Ｓ８０１で受信した文字描画要求に含まれる文字サイズ等の描画属性を利用し、通常字体を太字化（もしくは斜体字化）する処理を行う（Ｓ８０８）。太字化（斜体字化）する具体的なアルゴリズムは一般的に知られている方法でよいためここでは説明を省略する。
【００４６】
次に、文書内にＳ８０８で太字化（もしくは斜体字化）されたフォントを、フォント埋め込みとして文字描画コマンドを生成する処理を行う（Ｓ８０９）。
【００４７】
また、Ｓ８０４において、「描画属性」が太字体もしくは斜体字体の描画命令ではないと判断された場合と、Ｓ８０７の処理においてライセンスフォントであると判断された場合は、フォント非埋め込みとして文字描画コマンドを生成する処理を行う（Ｓ８１０）。
【００４８】
これにより、通常字体が非ライセンスフォントであれば、例え太字体が非ライセンスフォントであったとしても、構造化文書変換ドライバにて通常字体を太字化することで、太字体を構造化文書内に埋め込むことができる。また、斜体字化も同様である。尚、本実施形態では描画属性として「太字体」、「斜体字体」だけを例に説明してきたが、通常字体を加工して生成することができる描画属性であれば、例えば、「太字体」と「斜体字体」を組合わせた「太斜体字体」等にも本発明を適用できる。
【図１】
2011227765.tif 000003
【図２】
2011227765.tif 000004
【図３】
2011227765.tif 000005
【図４】
2011227765.tif 000006
【図５】
2011227765.tif 000007
【図６】
2011227765.tif 000008