"中間形式の印刷ジョブ生成する仮想プリンタードライバーを備える情報処理装置100とプリントサーバー101と前記プリントサーバー101のアドレスを解決する手段を有するアドレス管理サーバー103と印刷装置102とで構成されるプリントシステムであって、前記情報処理装置100は、前記プリントサーバー101で使用可能なフォント情報を取得する手段と1-2、SA602、前記取得したフォント情報に基づきテキストの描画方法を決定する手段1-3、SA603~SA609と、を有することを特徴とするプリントシステム。テキスト描画に使用するフォントがシステムフォントの場合SA601、フォントを埋め込んでSA605、テキストで描画するSA607、ことを特徴とする請求項1に記載のプリントシステム。テキスト描画に使用するフォントがプリントサーバーにインストール済みのフォントと判断した場合SA603、フォントを埋め込まずにテキストで描画するSA607、ことを特徴とする請求項1に記載のプリントシステム。テキスト描画に使用するフォントがプリントサーバーに未インストールのフォントと判断した場合SA603、さらに前記フォントのサイズが既定のサイズより小さい場合SA604、フォントを埋め込んでSA605、テキストで描画するSA607、ことを特徴とする請求項1に記載のプリントシステム。テキスト描画に使用するフォントがプリントサーバーに未インストールのフォントと判断した場合SA603、さらに前記フォントのサイズが既定のサイズ以上の場合SA604、テキストをアウトラインSA608もしくはビットマップSA609で描画する、ことを特徴とする請求項1に記載のプリントシステム。ユーザーがクライアントPC上で印刷実行する際に、クライアントPCにしか存在しないフォントを使用すると、サーバー上にそのフォントが存在しないのでサーバー上でフォントをラスタライズするときユーザーが意図しないフォントが選択されてしまう。即ち、ユーザーが意図しない印刷物が出力される。従来、よく知られる解決方法としては、印刷データに常にフォントを埋め込む方法や、文字をグラフィックスとして描画する方法が知られている。しかしながら、何れの方法も印刷データの肥大化を招き、サーバーのストレージ容量の逼迫や印刷速度性能の劣化が懸念される。本発明に係るプリントシステムの構成は、中間形式の印刷ジョブ生成する仮想プリンタードライバーを備える情報処理装置100とプリントサーバー101と前記プリントサーバー101のアドレスを解決する手段を有するアドレス管理サーバー103と印刷装置102とで構成されるプリントシステムであって、前記情報処理装置100は、前記プリントサーバー101で使用可能なフォント情報を取得する手段と1-2、SA602、前記取得したフォント情報に基づきテキストの描画方法を決定する手段1-3、SA603~SA609と、を有することを特徴とする。本発明のプリントシステムによれば、ユーザーが印刷装置からサーバー上に一時蓄積された印刷データに対して印刷要求を行う際に、ユーザーが意図した正しい印刷物が出力可能となる。しかも、印刷データのサイズが著しく肥大化することが無いので、サーバーのストレージ容量の逼迫や印刷速度性能劣化が生じにくい。以下、本発明を実施するための最良の形態について図面を用いて説明する。図1は、本発明の情報処理装置およびプリントサーバーおよびアドレス管理サーバーおよび印刷装置を適用可能なプリントシステムの構成の一例を示すシステム構成図である。図1の事業所Aに示すように、本実施形態のプリントシステムは、1又は複数のクライアントPC100例えば、ユーザー毎、1又は複数のプリントサーバー101例えば、階毎に設置、1又は複数の複合機102例えば、階毎に設置、アドレス管理サーバー103、1又は複数のログインサービスPC104例えば、階毎に設置、ディレクトリサービスサーバー105がローカルエリアネットワークLAN106を介して接続される構成となっている。クライアントPC100には、仮想プリンタードライバーがインストールされており、このプリンタードライバーは、クライアントアプリケーションから受け取ったデータに基づいて特定の複合機に依存しない中間形式の印刷ジョブを生成し、プリントサーバー101へ送信する。なお、中間形式の印刷ジョブとは、フォーマットに関する仕様が公開されていて、かつ再編集が容易な形式の印刷データを意味する。例えば、EMFSPOOL形式EnhancedMetafileSpoolFormat、XPSXMLPaperSpecificationなどがある。本実施形態においては、EMFSPOOL形式を使って説明するが、XPSやPDFなど他の中間形式の印刷データであってもかまわない。プリントサーバー101は、受信した該印刷ジョブを所定の格納場所に保存する。また、プリントサーバー101は、ジョブ管理データベース以後、ジョブ管理DBと呼ぶを備え、該印刷ジョブに関するメタデータを、ジョブ管理DBにより記憶管理する。プリントサーバー101は、ジョブ管理DBに記録管理しているメタデータから印刷ジョブ一覧データを生成し、複合機102へ転送制御する。プリントサーバー101は、ジョブ管理DBに記録管理しているメタデータと複合機102から受信する印刷設定情報を使って、印刷設定情報の更新を行い、複合機102へ更新した印刷設定を転送制御する。さらに、プリントサーバー101は、上記所定の格納場所に保存している印刷ジョブ及とジョブ管理DBに記録管理しているメタデータからPDLPrinterDescriptionLanguageデータ生成し、複合機102へ転送制御する。アドレス管理サーバー103は、アドレス管理データベース以後、アドレス管理DBと呼ぶを備え、本実施形態のプルプリント実行時に、印刷ジョブを管理するプリントサーバー101のアドレスとユーザー識別子を、アドレス管理DBにより記憶管理する。さらに、アドレス管理サーバー103は、複合機102からの印刷ジョブ一覧要求に応じて、複合機102から受信したユーザー識別子に対応するプリントサーバー101のアドレスを複合機102へ送信する。ログインサービスPC104は、複合機102のログインサービスとして、ディレクトリサービスサーバー105で記憶管理されているクライアントPC100のログインユーザー名、パスワード例えば、マイクロソフト社のWindows登録商標のログインユーザー名、パスワードに基づく認証処理SSOと称する。SingleSign-ONの略を行うものであり、例えば、キヤノン社のセキュリティエージェントSecurityAgentを搭載したパーソナルコンピュータである。ディレクトリサービスサーバー105は、ネットワーク上に存在するサーバー、クライアント、プリンター等のハードウェア資源や、それらを使用するユーザーの属性クライアントPC100のログインユーザー名、パスワード例えば、マイクロソフト社のWindows登録商標のログインユーザー名、パスワードを含む、アクセス権等の情報を一元記憶管理するものであり、例えば、アクティブディレクトリActiveDirectory機能を搭載したサーバーである。また、本実施形態のプリントシステムは、上述した構成の事業所Aと、1又は複数のクライアントPC100,1又は複数のプリントサーバー101,1又は複数の複合機102がLAN106を介して接続される構成の1又は複数の事業所Bとが、WAN107を介して接続される構成であってもよい。図2を用いて、図1に示したクライアントPC100、プリントサーバー101、アドレス管理サーバー103、ログインサービスPC104、ディレクトリサービスサーバー105に適用可能な情報処理装置のハードウェア構成について説明する。図2は、図1に示したクライアントPC100、プリントサーバー101、アドレス管理サーバー103、ログインサービスPC104、ディレクトリサービスサーバー105に適用可能な情報処理装置のハードウェア構成を示すブロック図である。図2において、201はCPUで、システムバス204に接続される各デバイスやコントローラを統括的に制御する。また、ROM202あるいは外部メモリ211には、CPU201の制御プログラムであるBIOSBasicInput/OutputSystemやオペレーティングシステムプログラム以下、OSや、各サーバー或いは各PCの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。203はRAMで、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは外部メモリ211からRAM203にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。また、205は入力コントローラで、キーボード209や不図示のマウス等のポインティングデバイス等からの入力を制御する。206はビデオコントローラで、モニター210への表示を制御する。一般に、モニター210は液晶ディスプレイやCRT等の表示器である。これらは必要に応じて管理者が使用するものである。207はメモリコントローラーで、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザーファイル、編集ファイル、各種データ等を記憶するハードディスクHD、SSDSolidStateDrive、SDメモリーカード等の外部メモリ211へのアクセスを制御する。208は通信I/Fコントローラで、ネットワーク例えば、図1に示したLAN106を介して外部機器と接続通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信等が可能である。なお、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開ラスタライズ処理を実行することにより、モニター210上での表示を可能としている。また、CPU201は、モニター210上の不図示のマウスカーソル等でのユーザー指示を可能とする。本発明を実現するための後述する各種プログラムは、外部メモリ211に記録されており、必要に応じてRAM202にロードされることによりCPU201によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も、外部メモリ211に格納されており、これらについての詳細な説明も後述する。図3を用いて、図1に示した複合機102を制御するコントローラーユニットのハードウェア構成について説明する。図3は、図1に示した複合機102のコントローラーユニットのハードウェア構成の一例を示すブロック図である。図3において、316はコントローラーユニットで、画像入力デバイスとして機能するスキャナー314や、画像出力デバイスとして機能するプリンター312と接続する一方、LAN例えば、図1に示したLAN106や公衆回線WAN例えば、PSTNまたはISDN等と接続することで、画像データやデバイス情報の入出力を行う。コントローラーユニット316において、301はCPUで、システム全体を制御するプロセッサである。302はRAMで、CPU301が動作するためのシステムワークメモリであり、プログラムを記録するためのプログラムメモリや、画像データを一時記録するための画像メモリでもある。303はROMで、システムのブートプログラムや各種制御プログラムが格納されている。304はハードディスクドライブHDDで、システムを制御するための各種プログラム,画像データ等を格納する。307は操作部インターフェース操作部I/Fで、操作部UI308とのインターフェース部であり、操作部308に表示する画像データを操作部308に対して出力する。また、操作部I/F307は、操作部308から本システム使用者が入力した情報例えば、ユーザー情報等をCPU301に伝える役割をする。なお、操作部308はタッチパネルを有する表示部を備え、該表示部に表示されたボタンを、ユーザーが押下指等でタッチすることにより、各種指示を行うことができる。305はネットワークインターフェースNetworkI/Fで、ネットワークLANに接続し、データの入出力を行う。306はモデムMODEMで、公衆回線に接続し、FAXの送受信等のデータの入出力を行う。318は外部インターフェース外部I/Fで、USB、IEEE1394,プリンターポート,RS-232C等の外部入力を受け付けるI/F部であり、本実施形態においては認証で必要となるICカードの読み取り用のカードリーダー319が外部I/F部318に接続されている。そして、CPU301は、この外部I/F318を介してカードリーダー319によるICカードからの情報読み取りを制御し、該ICカードから読み取られた情報を取得可能である。以上のデバイスがシステムバス309上に配置される。320はイメージバスインターフェースIMAGEBUSI/Fであり、システムバス309と画像データを高速で転送する画像バス315とを接続し、データ構造を変換するバスブリッジである。画像バス315は、PCIバスまたはIEEE1394で構成される。画像バス315上には以下のデバイスが配置される。310はラスターイメージプロセッサRIPで、例えば、PDLコード等のベクトルデータをビットマップイメージに展開する。311はプリンタインターフェースプリンターI/Fで、プリンター312とコントローラーユニット316を接続し、画像データの同期系/非同期系の変換を行う。また、313はスキャナーインターフェーススキャナI/Fで、スキャナー314とコントローラーユニット316を接続し、画像データの同期系/非同期系の変換を行う。317は画像処理部で、入力画像データに対し補正、加工、編集を行い、プリント出力画像データに対して、プリンターの補正、解像度変換等を行う。また、これに加えて、画像処理部317は、画像データの回転や、多値画像データに対してはJPEG、2値画像データはJBIG、MMR、MH等の圧縮伸張処理を行う。スキャナー部314は、原稿となる紙上の画像を照明し、CCDラインセンサーで走査することで、ラスターイメージデータとして電気信号に変換する。原稿用紙は原稿フィーダーのトレイにセットし、装置使用者が操作部308から読み取り起動指示することにより、CPU301がスキャナー314に指示を与え、フィーダーは原稿用紙を1枚ずつフィードし原稿画像の読み取り動作を行う。プリンター部312は、ラスターイメージデータを用紙上の画像に変換する部分であり、その方式は感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも構わない。プリント動作の起動は、CPU301からの指示によって開始する。なお、プリンター部312には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセットがある。操作部308は、LCD表示部を有し、LCD上にタッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されるとその位置情報を操作部I/F307を介してCPU301に伝える。また、操作部308は、各種操作キーとして、例えば、スタートキー、ストップキー、IDキー、リセットキー等を備える。ここで、操作部308のスタートキーは、原稿画像の読み取り動作を開始する時などに用いる。スタートキーの中央部には、緑と赤の2色LEDがあり、その色によってスタートキーが使える状態にあるかどうかを示す。また、操作部308のストップキーは、稼働中の動作を止める働きをする。また、操作部308のIDキーは、使用者のユーザーIDを入力する時に用いる。リセットキーは、操作部からの設定を初期化する時に用いる。カードリーダー319は、CPU301からの制御により、ICカード例えば、ソニー社のフェリカFeliCa登録商標内に記憶されている情報を読み取り、該読み取った情報を外部I/F318を介してCPU301へ通知する。以上のような構成によって、複合機102は、スキャナー314から読み込んだ画像データをLAN106上に送信し、LAN106から受信した印刷データをプリンター312により印刷出力することができる。また、スキャナー314から読み込んだ画像データをモデム306により、公衆回線上にFAX送信し、公衆回線からFAX受信した画像データをプリンター312により出力することできる。図4を用いて、本実施形態のプリントシステムにおけるプルプリントの全体の流れについて説明する。その前に、まず、本実施形態のプルプリントを実行するための前提について説明する。本実施形態のプルプリントを実現するための仮想プリンタードライバーをプリントサーバー101に共有プリンターとしてインストールしておく。プリンタードライバーは、アプリケーションから指示された印字や描画命令の出力に基づいて印刷データを生成するだけでなく、プリンタードライバーやプリンターが持つ機能を制御するための印刷設定を行う機能ユーザーインターフェースと、その印刷設定をインストールされた論理プリンター毎に外部記憶装置に記憶する機能等を有する。また、この印刷設定は、米国Microsoft社のWindows登録商標の場合、DEVMODE構造体に格納される。このDEVMODE構造体とは、プリンターが使用可能な機能,レイアウト設定,仕上げ設定,給排紙設定,印字品質設定等の論理プリンターに関するデフォルトの動作条件を含む各種設定を記憶するために、米国Microsoft社が規定したものであり、インストールされた論理プリンター毎に外部記憶装置に記憶される。各クライアントPC100へは、仮想プリンタードライバーを前記プリントサーバー101からポイントプリント等でダウンロードしてインストールして、該仮想プリンタードライバーの論理プリンターを追加しておく。以下、本実施形態のプルプリントの全体の流れについて説明する。図4は、本実施形態のプリントシステムにおけるプルプリントどこでもプリントの全体の流れを説明する模式図である。図4に示すように、まず、ユーザーは、クライアントPC100にログインし、該クライアントPC100で実行されるクライアントアプリケーション400から仮想プリンタードライバー401に対応する論理プリンターへの印刷指示を行う1-1。この印刷指示に応じて、クライアントPC100のクライアントアプリケーション400は、グラフィックエンジンを介して、仮想プリンタードライバー401にデータを送信する。クライアントPC100の仮想プリンタードライバー401は、該クライアントアプリケーションからグラフィックエンジンを介して印刷に必要なデータを受け取る1-1。さらにフォント情報管理サービス409からプリントサーバー101に関するフォント情報を受信する1-2。そして、受信したフォント情報に基づいてデバイスに依存しないEMFSPOOL形式の印刷ジョブを生成する。なお、フォント情報の詳細とフォント情報に基づいたデバイスに依存しないEMFSPOOL形式の印刷ジョブ生成方法については後述する。そして、クライアントPC100は、生成したEMFSPOOL形式の印刷ジョブをプリントサーバー101に送信する1-3。プリントサーバー101にて、プリントプロセッサー402は、仮想プリンタードライバー401から送信されてきたEMFSPOOL形式の印刷ジョブを読み取り、印刷ジョブのメタデータを生成する。そして、ジョブ管理サービス403へメタデータと印刷ジョブを送信する1-4。ジョブ管理サービス403は、プリントサーバー101上の所定の格納場所にEMFSPOOL形式の印刷ジョブを保存し、さらにメタデータをジョブ管理DB404プリントサーバー101の外部記憶装置上に構築されるに登録する1-5。このとき、プリントサーバー101は、上記所定の格納場所に印刷ジョブを保存するだけで、印刷装置への送信は行わない。さらに、プリントサーバー101は、印刷ジョブの識別子とユーザー識別子をアドレス管理サーバー103上のアドレス管理サービス405へ登録するために送信する1-6。アドレス管理サービス405は、ジョブ管理サービス403から、印刷ジョブの識別子とユーザー識別子を受信すると、プリントサーバー101のアドレスも加えてアドレス管理DB406アドレス管理サーバー103の外部記憶装置上に構築されるに登録する1-7。なお、本実施形態では、機器を判別するためのアドレスとしてIPアドレスを使用する。本実施形態では、ジョブ識別子としてGUIDGlobalUniqueIdentifierを使用する。複合機102は、カードリーダー319により読み取り可能なICカードを検知すると、該ICカード内の個人認証情報を読み取り、該読み取った個人認証情報を認証要求として不出図の認証サーバーに送信する。個人認証情報は、認証に用いられる情報であり該ICカードの製造番号でも良い。認証サーバーは、複合機102より個人認証情報を受信すると、該個人認証情報の認証処理を認証サーバーの外部記憶装置上に記憶されるICカード認証用テーブルに基づいて行い、認証結果を複合機102に返信する。なお、認証処理に成功した場合には、認証結果として、クライアントPC100のユーザー識別子を送信するものとする。なお、この認証サーバーの機能はアドレス管理サーバー103にあってもよい。複合機102上のパネルアプリケーション407は、認証に成功した旨の認証結果クライアントPC100のログインユーザー識別子を受信する。本実施形態では、ユーザー識別子としてユーザー名を使用する。もちろん、ユーザーを識別する手段としてICカードの製造番号などでもかまわない。パネルアプリケーション407は、プリントサーバー101に印刷ジョブ一覧を要求するが、その前にプリントサーバー101のIPアドレスを取得する前処理を実施する。アドレス管理サーバー103上のアドレス管理サービス405にユーザー名を送信する2-1。アドレス管理サービス405は、受信したユーザー名に対応するプリントサーバー101のIPアドレスを得る2-2。そして、パネルアプリケーション407へプリントサーバー101のアドレスを返信する2-3。パネルアプリケーション407は、アドレス管理サービス405からプリントサーバー101のIPアドレスを受信すると、プリントサーバー101上のジョブ管理サービス403へ対し印刷ジョブ一覧を要求する2-4。ジョブ管理サービス403は、ジョブ管理DB404を参照して2-5、該ユーザー名に対応する印刷ジョブ一覧を生成し、パネルアプリケーション407へ印刷ジョブ一覧を返信する2-6。パネルアプリケーション407は、ジョブ管理サービス403から印刷ジョブ一覧を受信すると、該印刷データ一覧を操作部308のUI上に表示する。そして、ユーザーにより、印刷ジョブが選択され、印刷設定変更及び印刷指示がなされると、パネルアプリケーション407は、該選択された印刷ジョブの印刷設定をジョブ管理サービス403に送信する3-1。ジョブ管理サービス403は、パネルアプリケーション407から印刷設定を受信すると、ジョブ管理DB404を参照して3-2、印刷設定の変更を行う。そして、パネルアプリケーション407へ変更した印刷設定を返信する3-3。パネルアプリケーション407は送信した印刷設定と受信した印刷設定を比較し、印刷設定変更が正しく機能したかどうか判定する。正しく機能しなかった場合は、操作部308のUI上にその旨のメッセージを表示する。そして、パネルアプリケーション407は、改めてジョブ管理サービス403に対し印刷要求出力指示を行う4-1。ジョブ管理サービス403は、パネルアプリケーション407から印刷指示を受信すると、ジョブ管理DB404を参照して印刷に必要な情報を取得し4-2、該印刷指示に基づいて印刷処理を実行し4-3、複合機102にPDLジョブを送信して複合機102で印刷する4-4。最後に、ユーザーにより、印刷ジョブの削除が指示されると、パネルアプリケーション407は、ジョブ管理サービス403に対し指定された印刷ジョブの削除を指示する。ジョブ管理サービス403は、パネルアプリケーション407から印刷ジョブの削除要求を受信すると、まず、アドレス管理サービス405へ登録した印刷ジョブ識別子の削除を指示する5-2。アドレス管理サービス405は、ジョブ管理サービス403から印刷ジョブ識別子の登録解除要求を受信すると、アドレス管理DB406の該当するレコードを削除する5-3。次に、ジョブ管理サービス403は、ジョブ管理DBの該当するレコードを削除し5-4、EMFSPOOL形式の印刷ジョブファイルも削除する。以上、プリントシステム全体の流れを説明した。図1に示したクライアントPC100上で動作するクライアントアプリケーション400上での印刷指示について説明する。図5は、図1に示したクライアントPC100上で動作するクライアントアプリケーション400の印刷画面の一例を示す模式図であり、クライアントPC100のCPUの制御により表示器に表示される。510は論理プリンター選択部で、クライアントPC100に設定されている論理プリンターから、印刷を行う論理プリンターを選択するためのものである。このプリンター選択部510において、どこでも印刷501は、本実施形態のプルプリント設定された仮想プリンタードライバーに対応する論理プリンターとする。さらに、Cxxxxix3250502,Cxxxxix5051503は、通常のプリンタードライバーに対応する論理プリンターとする。プリンター選択部510で、いずれかの論理プリンターを選択され、OKボタン505をポインティングデバイス等で指示されると、クライアントアプリケーションは、印刷のためのデータを、プリンター選択部510で選択された論理プリンターに対応するプリンタードライバーにグラフィックエンジンを介して送信する。以下、プリンター選択部510でどこでも印刷501が選択されて印刷指示がなされた場合のプリンタードライバーの動作について説明する。図6は、本発明のプリントシステムにおける制御処理手順の一例を示すフローチャートであり、図4に示した1-1から1-3までの処理手順の一部に対応する。ステップSA600~ステップSA610は、図4に示した仮想プリンタードライバー401による印刷ジョブ投入処理におけるテキスト描画処理に対応する。これらフローチャートの処理は、図1に示したクライアントPC100のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。ステップSC600~ステップSC601は、図4に示したフォント情報管理サービス409によるフォント情報送信処理対応する。これらフローチャートの処理は、図1に示したプリントサーバー101のCPUが外部メモリに格納されたプログラムをRAM上にロードして実行することにより実現される。仮想プリンタードライバー401には、図4のクライアントアプリケーション400から入力されたデータをEMFSPOOL形式の印刷ジョブとして出力する。これは図4の1-1~1-3に相当する。米国Microsoft社のWindows登録商標の場合、プリンタードライバーへの入力はDDIDeviceDriverInterfaceと呼ばれるOSOperatingSystemによる関数呼び出しによって実施される。仮想プリンタードライバー401は、DDIの呼び出しと同時に渡されるパラメーターを解釈して、EMFSPOOL形式の印刷ジョブを生成し、OSが管理するスプーラーへ生成したジョブを出力する。一般に、プリンタードライバーの役割は、出力対象のデバイスに依存した印刷ジョブを生成し出力することであるが、本実施形態においては、複合機102に依存しない中間形式の印刷ジョブを生成し出力する。以下、テキストに関するDDIの呼び出しがあった場合、即ち仮想プリンタードライバー401によるテキスト描画処理を説明する。ステップSA600において、仮想プリンタードライバー401のテキスト描画処理が開始する。ステップSA601において、テキスト描画に使用するフォントがOSのシステムフォントかどうかを判断する。システムフォントではない、ということは、アプリケーションが独自に管理するフォントという意味である。システムフォントではないと判断した場合、ステップSA605へ進み、フォントをEMFSPOOL形式の印刷ジョブにフォントを埋め込む。そして、ステップSA607へ進み、テキスト描画に相当するEMFSPOOL形式のレコードを生成し出力する。ステップSA601にて、テキスト描画に使用するフォントがOSのシステムフォントシステムフォントであると判断した場合、ステップSA602へ進み、フォント情報管理サービス409からフォント情報をhttpHypertextTransferProtocolを使って受信する。なお、通信プロトコルはhttpに限定するものではなく、他のプロセス間通信のプロトコルを使用してもかまわない。フォント情報の一例を図7に示す。次にステップSA603にて、テキスト描画に使用するフォントがプリントサーバー101にインストールされているかどうか判断する。即ち、テキスト描画に使用するフォントのファイル名が、図7の701に記述されているかどうか判断する。図7の701に記述されていたら、プリントサーバー101にインストールされているとみなす。プリントサーバー101にインストールされていないと判断した場合、ステップSA607へ進み、テキスト描画に相当するEMFSPOOL形式のレコードを生成し出力する。この場合、ステップSA605を経由していないので、フォントをEMFSPOOL形式の印刷ジョブに埋め込まない。ステップSA603にて、テキスト描画に使用するフォントがプリントサーバー101にインストールされていないと判断した場合、ステップSA604へ進み、フォントのファイルサイズが図7の702に記述されている値バイト数より小さいかどうか判断する。小さいと判断した場合、ステップSA605へ進む。大きいと判断した場合、ステップSA606へ進み、フォントからアウトライン抽出可能かどうか判断する。フォントが、書体のアウトライン情報を保持するOpenTypeやTrueTypeなどのフォント形式の場合、アウトライン抽出可能である。フォントが、書体のアウトライン情報を保持しないラスターフォント形式の場合、アウトライン抽出不可能である。テキスト描画に使用するフォントがアウトライン抽出可能と判断した場合、ステップSA608へ進み、フォントからアウトラインを抽出し、グラフィックス描画に相当するEMFSPOOL形式のレコードを生成し出力する。ステップSA606にて、テキスト描画に使用するフォントがアウトライン抽出不可能と判断した場合、ステップSA609へ進み、フォントからビットマップを抽出し、ラスターイメージ描画に相当するEMFSPOOL形式のレコードを生成し出力する。以上でテキスト描画処理を終了するステップSA610。以上の仕組みより、フォントを埋め込まずにテキストを描画するステップSA603とステップSA607処理が実現する。つまり、EMFSPOOL形式の印刷データが著しく肥大化することはない。次にフォント情報管理サービス409によるフォント情報送信処理を説明する。ステップSC600にて、フォント情報管理サービス409は、Webサーバーとしての機能を開始する。そして、クライアントPC100上の仮想プリンタードライバー401からフォント情報の要求を受け付けると、レスポンスとしてフォント情報を送信するステップSC601。以降、この応答を繰り返す。なお、この実施形態では、仮想プリンタードライバー401がプリントサーバー101で使用可能なフォント情報を得るためにプリントサーバー101とプロセス間通信を行うが、予めフォント情報をファイルとしてクライアントPC100上に保持することで、プロセス間通信を省略してもかまわない。"