(57)【要約】【課題】本発明は、他の文字コード体系に存在する拡張文字を外字として印字する場合であっても、プリンタが備えるフォントによらずに外字の印字を容易に行うことができるサーバ装置を提供する。【解決手段】サーバ装置では、出力先として指定されたプリンタに拡張フォントが存在するか否かを判断し、拡張フォントが存在する場合は、図７に示すような外字変換テーブルに基づいて、出力時に使用する出力用文字セット及び出力用文字コードを決定してプリンタに送信する。出力先として指定されたプリンタに拡張フォントが存在しない場合は、図７に示すような外字変換テーブルに基づいてＴｒｕｅＴｙｐｅフォント及び文字コードのイメージデータを抽出してプリンタに送信する。【選択図】図４
2008137210.tif 000002
【特許請求の範囲】
【請求項１】
出力装置に接続されたサーバ装置であって、
入力フォント名及び入力文字コードに対応する出力用フォント名及び出力用文字コードを指定するための文字コード変換テーブルと、
前記出力装置に拡張フォントが存在するか否かを判断する判断手段と、
前記判断手段により前記出力装置に拡張フォントが存在すると判断された場合は、前記文字コード変換テーブルに基づいて、出力時に使用する出力用フォント名及び出力用文字コードを決定して前記出力装置に送信する第１の処理手段と、
前記判断手段により前記出力装置に拡張フォントが存在しないと判断された場合は、前記文字コード変換テーブルに基づいてＴｒｕｅＴｙｐｅフォント及び文字コードを決定して前記出力装置に送信する第２の処理手段とを備えることを特徴とするサーバ装置。
【請求項２】
前記文字コード変換テーブルは、入力フォント名と入力文字コードに対応する出力用フォント名と出力用文字コードを指定するための第１の変換テーブルと、入力文字フォント名と入力文字コードに対応する出力用文字フォントとして所定の文字コード体系を示す抽象的な出力用フォント名と前記所定の文字コード体系での文字コードを指定するための第２の変換テーブルが含まれることを特徴とする請求項１記載のサーバ装置。
【請求項３】
前記第１の処理手段は、予め設定された第１のコード変換ルールに従って前記出力用フォント名と前記出力用文字コードを決定することを特徴とする請求項２記載のサーバ装置。
【請求項４】
前記第１のコード変換ルールは、前記第２の変換テーブルに指定された所定の文字コード体系での文字コードが含まれるコード範囲に対応する出力用フォント名を決定し、当該コード範囲に対応する算出方法により出力用文字コードを決定することを特徴とする請求項３記載のサーバ装置。
【請求項５】
前記第２の処理手段は、予め設定された第２のコード変換ルールに従って前記ＴｒｕｅＴｙｐｅフォント及び文字コードを決定することを特徴とする請求項２記載のサーバ装置。
【請求項６】
前記第２のコード変換ルールは、前記第２の変換テーブルに指定された所定の文字コード体系での文字コードが含まれるコード範囲に対応するＴｒｕｅＴｙｐｅフォントを決定し、当該コード範囲に対応する算出方法により文字コードを決定することを特徴とする請求項５記載のサーバ装置。
【請求項７】
前記判断手段は、前記出力装置の固有の情報に予め設定された拡張文字存在フラグを参照して判断することを特徴とする請求項１乃至６のいずれか１項に記載のサーバ装置。
【請求項８】
出力装置に接続されたサーバ装置の制御方法であって、
前記出力装置に拡張フォントが存在するか否かを判断する判断工程と、
前記判断工程にて前記出力装置に拡張フォントが存在すると判断された場合は、入力フォント名及び入力文字コードに対応する出力用フォント名及び出力用文字コードを指定するための文字コード変換テーブルに基づいて、出力時に使用する出力用フォント名及び出力用文字コードを決定して前記出力装置に送信する第１の処理工程と、
前記判断工程にて前記出力装置に拡張フォントが存在しないと判断された場合は、前記文字コード変換テーブルに基づいてＴｒｕｅＴｙｐｅフォント及び文字コードを決定して前記出力装置に送信する第２の処理工程とを備えることを特徴とする制御方法。
【請求項９】
前記文字コード変換テーブルは、入力フォント名と入力文字コードに対応する出力用フォント名と出力用文字コードを指定するための第１の変換テーブルと、入力フォント名と入力文字コードに対応する出力用文字フォントとして所定の文字コード体系を示す抽象的な出力用フォント名と前記所定の文字コード体系での文字コードを指定するための第２の変換テーブルが含まれることを特徴とする請求項８記載の制御方法。
【請求項１０】
前記第１の処理工程は、予め設定された第１のコード変換ルールに従って前記出力用フォント名と前記出力用文字コードを決定することを特徴とする請求項９記載の制御方法。
【請求項１１】
前記第１のコード変換ルールは、前記第２の変換テーブルに指定された所定の文字コード体系での文字コードが含まれるコード範囲に対応する出力用フォント名を決定し、当該コード範囲に対応する算出方法により出力用文字コードを決定することを特徴とする請求項１０記載の制御方法。
【請求項１２】
前記第２の処理工程は、予め設定された第２のコード変換ルールに従って前記ＴｒｕｅＴｙｐｅフォント及び文字コードを決定することを特徴とする請求項９記載の制御方法。
【請求項１３】
前記第２のコード変換ルールは、前記第２の変換テーブルに指定された所定の文字コード体系での文字コードが含まれるコード範囲に対応するＴｒｕｅＴｙｐｅフォントを決定し、当該コード範囲に対応する算出方法により文字コードを決定することを特徴とする請求項１２記載の制御方法。
【請求項１４】
前記判断手段は、前記出力装置の固有の情報に予め設定された拡張文字存在フラグを参照して判断することを特徴とする請求項８乃至１３のいずれか１項に記載の制御方法。
【請求項１５】
請求項８乃至１４のいずれか１項に記載の制御方法をコンピュータに実行させるためのコンピュータに読み取り可能なプログラム。
【請求項１６】
少なくとも１つの印刷装置と、当該印刷装置にネットワークを介して接続されたサーバとで構成される印刷システムであって、
前記サーバは、入力フォント名及び入力文字コードに対応する出力用フォント名及び出力用文字コードを指定するための文字コード変換テーブルと、
前記印刷装置に拡張文字が存在するか否かを判断する判断手段と、
前記判断手段により前記出力装置に拡張文字が存在すると判断された場合は、前記文字コード変換テーブルに基づいて、出力時に使用する出力用フォント名及び出力用文字コードを決定して前記印刷装置に送信する第１の処理手段と、
前記判断手段により前記出力装置に拡張フォントが存在しないと判断された場合は、前記文字コード変換テーブルに基づいてＴｒｕｅＴｙｐｅフォント及び文字コードを決定して前記印刷装置に送信する第２の処理手段とを備えることを特徴とする印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部から受信した印刷データに存在する外字を印字するサーバ装置及びその制御方法、プログラム、並びに印刷システムに関する。
【背景技術】
【０００２】
従来、ホストコンピュータ（メインフレーム）で作成された印刷データをプリンタで出力する場合、当該ホストコンピュータが備える文字コードをＪＩＳ（Japanese Industrial Standards）形式に変換している。ホストコンピュータが備える文字コードとしては、ＫＥＩＳ（Kanji processing Extended Information System）、ＪＥＦ（Japanese processing Extended Feature）、ＩＢＭ、及びＪＩＰＳ（Japanese Information Processing System）が代表的なものである。一方、ＪＩＳには存在しない拡張文字の提供も行われている。拡張文字では、専用のフォントがプリンタフォントやＴｒｕｅＴｙｐｅとして用意される。
【０００３】
近年、印刷データの出力を行うホストコンピュータにとっては、拡張文字の他に外字と呼ばれる標準では用意されていない文字を印字可能であることが必須となっている。外字を印字する場合は、ユーザが個別に文字をデザインしてビットマップフォントとしてプリントサーバに登録したり、新規文字セットとしてプリンタに登録したりする必要がある。
【０００４】
ところで、ＫＥＩＳコードを使用しているユーザがＪＥＦコードの拡張文字にしかない文字を使うなど、ビットマップ形式による印字とは別に、他のホストコンピュータ用の拡張文字を使う場合がある。これは、ビットマップ形式による印字では印字品位が落ちること、文字のデザインを行う手間が省けること、既成のものであるために印字結果が綺麗であること等に理由によるものである。
【０００５】
他のホストコンピュータ用の拡張文字を使って印刷データを印刷出力する場合、プリントサーバ側で文字セット及び文字コードの変換を行う必要があることから、例えば、図１１に示すような外字変換テーブルを用いて、入力フォント名、入力文字コード、出力用フォント名、及び出力用文字コードを指定する。例えば、ＫＥＩＳ用の入力フォント名（文字セット）Ｋ２４ＭＫＳ１で５８Ａ１という文字コードがあった場合、ＪＥＦ用の拡張文字（Ｍｉｎｃｈｏ−Ｍｅｄｉｕｍ．ＪＥＦ）の４５７３で印字するという例である。ここで例示したＫ２４ＭＫＳ１は、２バイト文字の２４ドットサイズ、ＫＥＩＳ用文字セットでマッピングされているフォントという意味を示すが、これに限定されるものではない。
【０００６】
コードの異なる外字を制御する仕組みとして、文字コード体系の異なる複数のプラットフォームで外字を使用できるシステムが提供されている（例えば、特許文献１参照）。
【特許文献１】特開平１０−５５３５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した外字変換テーブルを使用する場合、以下の問題がある。
【０００８】
１．プリンタによってはホストコンピュータ用の拡張文字を持っていないため、プリントサーバ側にＴｒｕｅＴｙｐｅフォントを用意させてフォントを展開させる必要がある場合がある。
【０００９】
２．ＴｒｕｅＴｙｐｅフォントを使用して印字する場合、展開した文字のビットマップデータは、解像度及び文字の大きさにもよるが一般的にデータ量が増大する。そのため、フォントを持っているプリンタではフォントの指定と文字コードの選択のみを行うほうが効率的である。
【００１０】
３．ホストコンピュータ用のＴｒｕｅＴｙｐｅフォントとプリンタフォントでは、管理する文字のマッピングが異なる場合があり、文字コード変換テーブルを別に用意する必要がある。
【００１１】
４．使用したい拡張文字のＴｒｕｅＴｙｐｅフォントやプリンタフォント中の文字コードは公開されていない場合もあり、それを知ることは困難である。
【００１２】
また、上記特許文献１に記載されたシステムは、ビットマップフォントを複数のプラットフォーム間で受け渡しが行えるシステムであって、すべてのプラットフォームにおいて外字として扱う必要があり、同一の文字をシステムとして保持していても外字として扱う必要がある。また、用意されている同一文字がスケーラブルフォントで用意されていても、外字用のビットマップフォントが使用される場合がある。そのため、上記問題を解決するものではない。
【００１３】
本発明は、上記問題に鑑みて成されたものであり、他の文字コード体系に存在する拡張文字を外字として印字する場合であっても、プリンタが備えるフォントによらずに外字の印字を容易に行うことができるサーバ装置及びその制御方法、プログラム、並びに印刷システムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記目的を達成するために、請求項１記載のサーバ装置は、出力装置に接続されたサーバ装置であって、入力フォント名及び入力文字コードに対応する出力用フォント名及び出力用文字コードを指定するための文字コード変換テーブルと、前記出力装置に拡張フォントが存在するか否かを判断する判断手段と、前記判断手段により前記出力装置に拡張フォントが存在すると判断された場合は、前記文字コード変換テーブルに基づいて、出力時に使用する出力用フォント名及び出力用文字コードを決定して前記出力装置に送信する第１の処理手段と、前記判断手段により前記出力装置に拡張フォントが存在しないと判断された場合は、前記文字コード変換テーブルに基づいてＴｒｕｅＴｙｐｅフォント及び文字コードを決定して前記出力装置に送信する第２の処理手段とを備えることを特徴とする。
【００１５】
上記目的を達成するために、請求項８記載のサーバ装置の制御方法は、出力装置に接続されたサーバ装置の制御方法であって、前記出力装置に拡張フォントが存在するか否かを判断する判断工程と、前記判断工程にて前記出力装置に拡張フォントが存在すると判断された場合は、入力フォント名及び入力文字コードに対応する出力用フォント名及び出力用文字コードを指定するための文字コード変換テーブルに基づいて、出力時に使用する出力用フォント名及び出力用文字コードを決定して前記出力装置に送信する第１の処理工程と、前記判断工程にて前記出力装置に拡張フォントが存在しないと判断された場合は、前記文字コード変換テーブルに基づいてＴｒｕｅＴｙｐｅフォント及び文字コードを決定して前記出力装置に送信する第２の処理工程とを備えることを特徴とする。
【００１６】
上記目的を達成するために、請求項１６記載の印刷システムは、少なくとも１つの印刷装置と、当該印刷装置にネットワークを介して接続されたサーバとで構成される印刷システムであって、前記サーバは、入力フォント名及び入力文字コードに対応する出力用フォント名及び出力用文字コードを指定するための文字コード変換テーブルと、前記印刷装置に拡張文字が存在するか否かを判断する判断手段と、前記判断手段により前記出力装置に拡張文字が存在すると判断された場合は、前記文字コード変換テーブルに基づいて、出力時に使用する出力用フォント名及び出力用文字コードを決定して前記印刷装置に送信する第１の処理手段と、前記判断手段により前記出力装置に拡張フォントが存在しないと判断された場合は、前記文字コード変換テーブルに基づいてＴｒｕｅＴｙｐｅフォント及び文字コードを決定して前記印刷装置に送信する第２の処理手段とを備えることを特徴とする。
【発明の効果】
【００１７】
本発明によれば、他の文字コード体系に存在する拡張文字を外字として印字する場合であっても、プリンタが備えるフォントによらずに外字の印字を容易に行うことができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【００１９】
図１は、本発明の実施の形態に係る印刷システムの概略構成を示すブロック図である。同図に示す如く、本実施の形態に係る印刷システムは、ホストコンピュータ１０１と、ＵＮＩＸ(登録商標)サーバ１０２と、プリントサーバ１０３と、プリンタＡ１０４，プリンタＢ１０５と、クライアントＰＣ１０６と、これらを互いに接続するネットワーク１０７とにより構成されている。
【００２０】
ホストコンピュータ１０１及びＵＮＩＸ(登録商標)サーバ１０２は、一般のＰＣ（Personal Computer）やＷＳ（work station）等により構成されており、印刷対象のデータ（印刷ジョブ）を作成するためのアプリケーションを保持している。ホストコンピュータ１０１（若しくはＵＮＩＸ(登録商標)サーバ１０２）の操作者がこのアプリケーションを用いて印刷対象のデータを作成する。その後、この印刷対象のデータに基づく印刷をプリンタＡ１０４又はプリンタＢ１０５によって印刷させる旨の指示が入力された場合には、当該印刷対象のデータは、ネットワーク１０７を介してプリントサーバ１０３に送出される。
【００２１】
なお、印刷対象のデータを作成し、プリントサーバ１０３に対して当該データを送出可能な装置であれば、ホストコンピュータ１０１、ＵＮＩＸ(登録商標)サーバ１０２以外の装置を用いてもよく、その台数や装置の種類などについて限定するものではない。
【００２２】
プリントサーバ１０３は、外部（本実施の形態ではホストコンピュータ１０１やＵＮＩＸ(登録商標)サーバ１０２）から印刷対象データを受信し、これをプリンタＡ１０４（又はプリンタＢ１０５）に適したデータ形式に変換し、プリンタ１０４Ａ（又はプリンタＢ１０５）に送出する処理を行うものである。プリントサーバ１０３が行う処理については後述する。
【００２３】
プリンタＡ１０４及びプリンタＢ１０５は、それぞれプリンタ又は複合機などの出力装置により構成されており、プリントサーバ１０３から受信したデータに基づいて、紙やＯＨＰなどの記録媒体上に画像や文字の記録（印刷）処理を行う。記録方法については特に限定するものではなく、インクジェット方式、レーザビーム方式、熱転写方式等、各種の記録方式のいずれを用いてもよい。なお、プリンタＡ１０４及びプリンタＢ１０５の動作状況などについては、プリントサーバ１０３が適宜監視している。
【００２４】
クライアントＰＣ１０６は、プリントサーバ１０３の状況を監視し、クライアントＰＣ１０６が有する表示装置（不図示）の表示画面上にその監視した状況が適宜表示される。プリントサーバ１０３における処理状況や印刷結果などについては、当該プリントサーバ１０３が適宜クライアントＰＣ１０６に対して送信しているので、クライアントＰＣ１０６は受信した処理状況や印刷結果などを表示装置の表示画面上に表示する処理を行う。また、クライアントＰＣ１０６は、ホストコンピュータ１０１やＵＮＩＸ(登録商標)サーバ１０２と同様に、印刷対象データを作成してプリントサーバ１０３に対して送出してもよい。
【００２５】
ネットワーク１０７は、インターネット、ＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）、電話回線、専用デジタル回線、ＡＴＭやフレームリレー回線、通信衛星回線、ケーブルテレビ回線、データ放送用無線回線等のいずれか、若しくはその組み合わせにより構成されているものであり、上述した各装置間におけるデータ通信を実現するものである。ネットワーク１０７は無線、有線は特には問わない。
【００２６】
図２は、図１のプリントサーバ１０３のハードウェア構成を示すブロック図である。本実施の形態において、ホストコンピュータ１０１、ＵＮＩＸ(登録商標)サーバ１０２、及びクライアントＰＣ１０６は、プリントサーバ１０３と同様の構成を有しているものとする。なお、以下説明する各処理が実現可能で有れば、これに限定されるものではない。
【００２７】
図２において、ＣＰＵ２１は、ＲＡＭ２２やＲＯＭ２３に格納されているプログラムやデータを用いて、プリントサーバ１０３全体の制御を行うと共に、本コンピュータが行う後述の各処理を実行する。
【００２８】
ＲＡＭ２２は、ハードディスク２８やＣＤ−ＲＯＭドライブ２９からロードされたプログラムやデータ、ＮＩＣ（Network Interface Card）２４を介して外部から入力されたプログラムやデータを一時的に記憶するためのエリア、ＣＰＵ２１が各種の処理を実行する際に用いるワークエリア等のエリアを適宜提供することができる。ＲＯＭ２３は、プリントサーバ１０３の設定データやブートプログラムなどを格納する。
【００２９】
ＮＩＣ２４は、プリントサーバ１０３をネットワーク１０７に接続するためのインターフェースとして機能するものである。プリントサーバ１０３は、ＮＩＣ２４を介してネットワーク１０７に接続されている各種装置とのデータ通信を行うことができる。
【００３０】
入力部２６はキーボードであり、入力部２７はマウスである。これらはプリントサーバ１０３の操作者が操作することで各種の指示をＣＰＵ２１に対して行うことができる。なお、図示の構成をホストコンピュータ１０１、ＵＮＩＸ(登録商標)サーバ１０２、及びクライアントＰＣ１０６等に適用した場合、操作者は入力部２６，２７を用いてアプリケーションを操作し、印刷対象データを作成することになる。
【００３１】
ハードディスク２８は、ＯＳ（Operating System）やプリントサーバ１０３等が行うべき後述の各処理をＣＰＵ２１に実行させるためのプログラムやデータが保存されている。これらのプログラムやデータは、ＣＰＵ２１による制御に従って適宜ＲＡＭ２２にロードされる。
【００３２】
ＣＤ−ＲＯＭドライブ２９は、ＣＤ−ＲＯＭに記録されているプログラムやデータを読み出し、ハードディスク２８やＲＡＭ２２等に出力する。なお、ハードディスク２８に保存されている各種プログラムやデータの一部をＣＤ−ＲＯＭに記録しておき、記録されたプログラムやデータをＣＤ−ＲＯＭドライブ２９によって適宜ＲＡＭ２２にロードするようにしてもよい。また、本実施の形態では、記憶媒体の一例としてＣＤ−ＲＯＭを用いているが、これに限定されず、本実施の形態に適用可能な記憶媒体であればよい。
【００３３】
システムバス２０は、例えば、ＰＣＩバス、ＡＧＰバス、メモリバス等により構成されている。なお、同図では、各バス間の接続用チップやキーボードインタフェース、いわゆるＳＣＳＩやＡＴＡＰＩのような入出力用インターフェースは省略されている。
【００３４】
図３は、プリントサーバ１０３の機能的構成を示すブロック図である。
【００３５】
図３において、データ受信フォルダ３０１は、ホストコンピュータ１０１から転送された印刷データを受信して格納する。
【００３６】
データ監視手段３０２は、データ受信フォルダ３０１を監視して印刷データの受信が終了したと判断した場合、印刷データをデータ受信フォルダ３０１からデータ保存フォルダ３０４へ移し、データ管理手段３０３へ新規に印刷データを受信したことを通知する。
【００３７】
データ管理手段３０３は、データ保存フォルダ３０４中の印刷データを管理し、ユーザから指示があった場合にはデータ変換手段３０５へ印刷データの変換指示を行う。
【００３８】
データ変換手段３０５は、データ管理手段３０３から変換指示を受け取ると、外字変換テーブル３０８、プリンタ情報ファイル３０９を参照し、印刷データをプリンタＡ１０４又はプリンタＢ１０５で出力できる形式に変換して印刷処理を行う。外字変換テーブル３０８とは、外字として扱う文字コードと、その文字をどのようにして出力するかを示す情報である。プリンタ情報ファイル３０９は各プリンタの固有の情報である。
【００３９】
図４及び図５は、図３のデータ変換手段３０５により実行される外字出力処理のフローチャートである。
【００４０】
図４において、データ変換手段３０５は、データ管理手段３０３から印刷データの変換指示を受け取ると、データ保存フォルダ３０４中の印刷データの解析を開始する。データの解析を行っている最中で文字の印字が指定される（ステップＳ４０１）。
【００４１】
次に、文字の印字が指定されると、データ変換手段３０５は、その文字のフォント名と文字コードの組が外字変換テーブル３０８（図７に示す外字変換テーブル）に存在するか否かを判断する（ステップＳ４０２）。ここでは、図７の外字変換テーブルが参照され、フォント名とコードの組があるか否かが判断される。この判断の結果、外字変換テーブル３０８に文字のフォント名と文字コードの組が存在する場合は、ステップＳ４０３へ進み、存在しない場合は、図５のステップ４１３へ進む。
【００４２】
ステップＳ４０３では、データ変換手段３０５は、外字変換テーブル３０８（図７に示す外字変換テーブル）の出力用抽象フォント名に抽象フォント名（出力用フォント名として通常は存在しないフォント名である。本実施の形態では、例えば、％ＪＥＦ％等で表す）が指定されているか否かを判断する。この判断の結果、抽象フォント名が指定されていた場合は、ステップＳ４０４へ進み、抽象フォント名が指定されていない場合は、ステップ４１９へ進む。
【００４３】
ステップＳ４０４では、データ変換手段３０５は、出力先として指定されたプリンタに拡張文字用フォント（以下、「拡張フォント」と略す。）が存在するか否かを判断する。ここでは、データ変換手段３０５がプリンタ情報ファイル３０９の一部である拡張文字存在フラグを参照して拡張フォントの有無を判断する。これにより、プリンタが拡張文字を備えているか否かを容易に把握することができる。拡張文字存在フラグの一例を図６に示す。
【００４４】
図６において、拡張文字存在フラグは、プリンタが拡張フォントを装備していれば「ＭＦＦＯＮＴＳ＝Ｙ」、装備していなければ「ＭＦＦＯＮＴＳ＝Ｎ」に設定される。拡張文字存在フラグの設定は、ユーザがプリンタをシステムに追加時に同時に行ってもよいし、システムが自動的に起動時にプリンタから取得してもよい。図示では、プリンタのＬＸＰ−１８２０というモデルは拡張フォントを装備しており、ＬＸＰ−３９５０というモデルは拡張フォントを装備していないことを示す。
【００４５】
ステップＳ４０４の判断の結果、出力先として指定されたプリンタに拡張フォントが存在する場合は、ステップＳ４０５へ進み、拡張フォントが存在しない場合は、ステップＳ４０７へ進む。すなわち、外字変換テーブルの出力用抽象フォント名に抽象フォント名が指定され且つ出力先のプリンタに拡張フォントが装備されている場合は、ステップＳ４０５へ進む。一方、外字変換テーブルの出力用抽象フォント名に抽象フォント名が指定され且つ出力先のプリンタに拡張フォントが装備されていない場合は、ステップＳ４０７へ進む。
【００４６】
ステップＳ４０５では、データ変換手段３０５は、抽象フォント名と出力用文字コードからプリンタ上の実フォント名（出力用フォント名）を決定する。ここでは、図７に示す外字変換テーブルに指定された出力用抽象フォント名に対応する出力用抽象フォント名の中での文字コードが含まれるコード範囲に対応する出力用文字セットを決定する。
【００４７】
そして、ステップＳ４０６では、データ変換手段３０５は、出力先の文字コードとして指定された文字コードから実際に使用する文字コードを算出し、ステップＳ４０９へ進む。出力用フォント名及び文字コードは、図８に示すコード変換ルールにより決定及び算出される。
【００４８】
図８において、図７の外字変換テーブルに指定された抽象フォント名がＪＥＦである場合は、ＪＥＦ用のコード変換ルールが適用され、抽象フォント名がＫＥＩＳである場合は、ＫＥＩＳ用のコード変換ルールが適用される。図７の外字変換テーブルにおいて、入力フォント名がＫ２４ＭＫＳ１で入力文字コードが５７Ａ１である場合、出力用抽象フォント名がＪＥＦ（％ＪＥＦ％）であることからＪＥＦ用のコード変換ルールが適用される。そして、入力文字コードが５７Ａ１であるので、出力用抽象フォント名（文字コード体系名）の中での文字コードが７６Ｃ７となる。
【００４９】
図８のＪＥＦ用のコード変換ルールでは、７６Ｃ７はコード範囲６３Ａ１〜７ＥＦＥに入ることから、出力用フォント名はＭｉｎｃｈｏ−Ｍｅｄｉｕｍ．ＪＥＦ＿２に決定され、出力用文字コードは指定コード（＝７６Ｃ７）−０ｘ４０８０（＝予め設定されたコード）で算出される。なお、図示例では、抽象フォント名がＪＥＦ又はＫＥＩＳである場合のコード変換ルールを例示しているが、これらに限定されるものではない。
【００５０】
本実施の形態では、外字として使用したい拡張文字の文字コード体系とその文字コード体系での文字コードを指定するための図７の外字変換テーブルを使用する。この例では、「％文字コード体系名％」と表記された場合、これは使用する文字コードを示す抽象的な記述として扱い、次に続くコードはここで記述された文字コード体系（出力用抽象フォント名）で規定されている文字コードということを示す。このようにして指定したフォント名を抽象フォント名と呼ぶこととする。この場合、入力データ（印刷データ）において、Ｋ２４ＭＫＳ１という入力フォント名（文字セット）が選択され、５７Ａ１という文字コードの印字が指定された場合、ＪＥＦという文字コード体系（出力用抽象フォント名）における７６Ｃ７に相当する文字を印字するという意味を持つ。
【００５１】
また、Ｋ２４ＭＫＳ１という入力フォント名（文字セット）が選択され、５７Ｂ１という文字コードの印字が指定された場合、ＫＥＩＳという文字コード体系（出力用抽象フォント名）におけるＣ７Ｄ５に相当する文字を印字するという意味を持つ。なお、「％文字コード体系名％」という表記を使用したが、この表記形式に限定するものではない。
【００５２】
次に、ステップＳ４０９では、データ変換手段３０５は、印刷出力を行うプリンタに対応したページ記述言語を用いて、ステップＳ４０５で決定した出力用実フォント名の選択命令をプリンタへ送る。そして、ステップＳ４１０では、データ変換手段３０５は、印刷出力を行うプリンタに対応したページ記述言語を用いて、ステップＳ４０６で決定した文字コードをプリンタへ送って印字させる。
【００５３】
一方、ステップＳ４０７では、データ変換手段３０５は、抽象フォント名と出力用文字コードからＴｒｕｅＴｙｐｅの実フォント名（使用するＴｒｕｅＴｙｐｅフォント名）を決定する。ここでは、図７に示す外字変換テーブルに指定された出力用抽象フォント名に対応する出力用抽象フォント名の中での文字コードが含まれるコード範囲に対応するＴｒｕｅＴｙｐｅフォントを決定する。
【００５４】
そして、ステップＳ４０８では、データ変換手段３０５は、出力先の文字コードとして指定された文字コードから実際に使用する文字コードを算出し、ステップＳ４１１へ進む。使用するＴｒｕｅＴｙｐｅフォント名及び文字コードは、図９に示すコード変換ルールにより決定及び算出される。
【００５５】
図９において、図７の外字変換テーブルに指定された抽象フォント名がＪＥＦである場合は、ＪＥＦ用のコード変換ルールが適用され、抽象フォント名がＫＥＩＳである場合は、ＫＥＩＳ用のコード変換ルールが適用される。図７の外字変換テーブルにおいて、入力フォント名がＫ２４ＭＫＳ１で入力文字コードが５７Ａ１である場合、出力用抽象フォント名がＪＥＦ（％ＪＥＦ％）であることからＪＥＦ用のコード変換ルールが適用される。そして、入力文字コードが５７Ａ１であるので、出力用抽象フォント名（文字コード体系名）の中での文字コードが７６Ｃ７となる。
【００５６】
図９のＪＥＦ用のコード変換ルールでは、７６Ｃ７はコード範囲６３Ａ１〜７ＥＦＥに入ることから、使用するＴｒｕｅＴｙｐｅフォントはＪＥＦ明朝１に決定され、文字コード（ＴｒｕｅＴｙｐｅからイメージを抽出する文字の文字コード）は指定コード（＝７６Ｃ７）−０ｘ４０８０で算出される。なお、図示例では、抽象フォント名がＪＥＦ又はＫＥＩＳである場合のコード変換ルールを例示しているが、これらに限定されるものではない。
【００５７】
ステップＳ４１１では、データ変換手段３０５は、ステップＳ４０７，Ｓ４０８で決定及び算出した実フォント名及び文字コードに対応するイメージデータをＷｉｎｄｏｗｓ（登録商標）等のＯＳ（Operating System）から抽出する。そして、ステップＳ４１２では、データ変換手段３０５は、ステップＳ４１１で抽出したイメージデータの出力を行うプリンタに対応したページ記述言語を用いて、イメージデータをプリンタへ送って描画させる。
【００５８】
ステップＳ４１９では、外字変換テーブル３０８で指定されたフォント名の選択命令をプリンタへ送り、当該外字変換テーブル３０８で指定された文字コードをプリンタへ送って印字させる（ステップＳ４２０）。
【００５９】
図５において、ステップＳ４１３では、データ変換手段３０５は、ステップＳ４０１における指定でホスト拡張領域に指定されたか否かを判断する。この判断の結果、ホスト拡張領域に指定されていると判断した場合は、ステップＳ４１４へ進み、ホスト拡張領域に指定されていないと判断した場合はステップＳ４２１へ進む。
【００６０】
ステップＳ４１４では、データ変換手段３０５は、出力先として指定されたプリンタに拡張フォントがあるか否かを判断する。ここではステップＳ４０４と同様の判断処理を行う。この判断の結果、出力先として指定されたプリンタに拡張フォントがある場合は、ステップＳ４１５へ進み、拡張フォントが無い場合は、ステップＳ４１７へ進む。
【００６１】
ステップＳ４１５では、データ変換手段３０５は、現在の文字コード体系用のプリンタ内での拡張フォント名を取得する。次に、データ変換手段３０５は、入力文字コードから出力用の文字コードを算出し（ステップＳ４１６）、図４のステップＳ４０９へ進む。
【００６２】
一方、ステップＳ４１７では、データ変換手段３０５は、現在の文字コード体系用のＴｒｕｅＴｙｐｅでの拡張フォント名を取得する。次に、データ変換手段３０５は、入力文字コードから出力用の文字コードを算出し（ステップＳ４１８）、図４のステップＳ４１１へ進む。
【００６３】
ステップＳ４２１では、データ変換手段３０５は、プリンタへ図１０に示す文字セット変換テーブルで指定されたフォント名の選択命令を送る。次に、データ変換手段３０５は、入力文字コードから出力用の文字コードを算出し（ステップＳ４２２）、ステップＳ４０９へ進む。
【００６４】
上記実施の形態では、出力先として指定されたプリンタに拡張フォントが存在するか否かを判断し、拡張フォントが存在する場合は、図７に示す外字変換テーブルに基づいて、出力時に使用する出力用フォント名及び出力用文字コードを決定してプリンタに送信する。すなわち、予め設定された図８に示すコード変換ルールに従って出力用フォント名と出力用文字コードを決定する。コード変換ルールは、外字変換テーブルに指定された出力用抽象フォント名の中での文字コードが含まれるコード範囲に対応する出力用フォント名を決定し（図４のステップＳ４０５）、当該コード範囲に対応する算出方法により実際に使用する出力用文字コードを決定する（図４のステップＳ４０６）。
【００６５】
また、出力先として指定されたプリンタに拡張フォントが存在しない場合は、図７に示す外字変換テーブルに基づいて、使用するＴｒｕｅＴｙｐｅフォント名及び出力用文字コードを決定し、文字コードのイメージデータを抽出してプリンタに送信する。すなわち、予め設定された図９に示すコード変換ルールに従ってＴｒｕｅＴｙｐｅフォント名及び文字コードを決定する。コード変換ルールは、外字変換テーブルに指定された出力用抽象フォント名の中での文字コードが含まれるコード範囲に対応するＴｒｕｅＴｙｐｅフォント名を決定し（図４のステップＳ４０７）、当該コード範囲に対応する算出方法により実施に使用する文字コードを決定する（図４のステップＳ４０７）。
【００６６】
以上により本実施の形態によれば、他の文字コード体系に存在する拡張文字を外字として印字する場合であっても、プリンタが備えるフォントによらずに外字の印字を容易に行うことができる。
【００６７】
なお、上記実施の形態では、図４のステップＳ４０４で出力先に拡張フォントが存在するか否かを判断しているが、拡張文字が存在するか否かに応じて判断してもよい。
【００６８】
本発明の目的は、以下の処理を実行することによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００６９】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【００７０】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００７１】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は部を行う場合である。
【００７２】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現する場合も含まれる。この場合、上記プログラムは、該プログラムを記憶した記憶媒体から直接、又はインターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続された不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【００７３】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【図面の簡単な説明】
【００７４】
【図１】本発明の実施の形態に係る印刷システムの概略構成を示すブロック図である。
【図２】図１のプリントサーバ１０３のハードウェア構成を示すブロック図である。
【図３】プリントサーバ１０３の機能的構成を示すブロック図である。
【図４】図３のデータ変換手段３０５により実行される外字出力処理のフローチャート（その１）である。
【図５】図３のデータ変換手段３０５により実行される外字出力処理のフローチャート（その２）である。
【図６】プリンタ情報ファイルにおける拡張文字存在フラグの一例を示す図である。
【図７】抽象フォント名を用いた外字変換テーブルの一例を示す図である。
【図８】プリンタに拡張フォントがある場合のコード変換ルールの一例を示す図である。
【図９】プリンタに拡張フォントが無い場合にＴｒｕｅＴｙｐｅフォントから文字のイメージデータを抽出する際のコード変換ルールの一例である。
【図１０】文字セット変換テーブルの一例を示す図である。
【図１１】標準的な外字変換テーブルの一例を示す図である。
【符号の説明】
【００７５】
１０１  ホストコンピュータ
１０３  プリントサーバ
１０４  プリンタＡ
１０５  プリンタＢ
３０１  データ受信フォルダ
３０２  データ監視手段
３０３  データ管理手段
３０４  データ保存フォルダ
３０５  データ変換手段
３０８  外字変換テーブル
３０９  プリンタ情報ファイル
【図１】
2008137210.tif 000003
【図２】
2008137210.tif 000004
【図３】
2008137210.tif 000005
【図４】
2008137210.tif 000006
【図５】
2008137210.tif 000007
【図６】
2008137210.tif 000008
【図７】
2008137210.tif 000009
【図８】
2008137210.tif 000010
【図９】
2008137210.tif 000011
【図１０】
2008137210.tif 000012
【図１１】
2008137210.tif 000013