(57)【要約】【課題】  フォント設定に係る処理を効率的に実行することができる情報処理装置及びその制御方法、プログラムを提供できる。【解決手段】  入力文字の位置の前後に存在する第１文字及び前記第２文字それぞれのフォント情報を取得する。取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が同一である場合、前記フォント種を、前記入力文字に使用するフォント種情報として設定する。取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が異なる場合、前記入力文字を含む文字列に対して構文解析を実行し、その構文解析結果に基づいて、前記入力文字に使用するフォント種情報を設定する。【選択図】  図５Ｂ
2007220042.tif 000002
【特許請求の範囲】
【請求項１】
各文字にフォント情報が設定されている文字列中に、新たに文字を入力する場合に、その入力文字に使用するフォント情報を設定する情報処理装置であって、
前記入力文字の位置の前後に存在する第１文字及び前記第２文字それぞれのフォント情報を取得する取得手段と、
前記取得手段で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が同一である場合、前記フォント種を、前記入力文字に使用するフォント種情報として設定する第１設定手段と、
前記取得手段で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が異なる場合、前記入力文字を含む文字列に対して構文解析を実行し、その構文解析結果に基づいて、前記入力文字に使用するフォント種情報を設定する第２設定手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記取得手段で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれる、埋め込みフォントの設定の有無を示すフラグの状態を判定する判定手段と、
前記判定手段の判定結果に基づいて、前記入力文字に対する前記フラグをＯＮあるいはＯＦＦに設定するとともに、前記第１設定手段及び前記第２設定手段のどちらかを実行する実行手段と
を更に備えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記実行手段は、前記判定手段の判定の結果、前記取得手段で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフラグの状態の少なくとも一方がＯＮである場合に、前記入力文字に対する前記フラグをＯＮに設定する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記入力文字に対する前記フラグがＯＮに設定されている場合に実行するフォント設定処理の処理内容を設定する処理設定手段と、
前記処理設定手段で設定された処理設定情報を記憶媒体に記憶する記憶手段とを更に備え、
前記処理設定手段は、設定項目として、
前記入力文字に設定されているフォント種情報を含むフォント情報を検索するための第１設定項目と、
前記入力文字に設定されているフォント種情報を含むフォント情報を搭載する印刷デバイスを検索するための第２設定項目と、
フォント種情報の代替フォント種情報を有する代替フォント情報を検索するための第３設定項目と、
前記第１設定項目から前記第３設定項目のいずれか、あるいはそれらを任意に組み合わせた設定項目を実行するための第４設定項目と
を有する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項５】
前記入力文字に対する前記フラグがＯＮに設定されている場合、前記記憶手段に記憶される処理設定情報に基づいて、前記フォント設定処理を実行するフォント設定処理手段を更に備える
ことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記フォント設定処理手段は、前記処理設定情報に前記第１設定項目が設定されている場合、その設定内容に基づいて、
前記文字列を含む同一ページデータ内から、前記入力文字に設定されているフォント種情報を含むフォント情報を検索する第１検索処理と、
前記文字列を含む同一ファイルデータ内から、前記入力文字に設定されているフォント種情報を含むフォント情報を検索する第２検索処理と、
前記文字列を含むファイルデータと同一の属性のファイルデータから、前記入力文字に設定されているフォント種情報を含むフォント情報を検索する第３検索処理と
の少なくとも１つを実行し、それによって得られるフォント情報を前記入力文字に対するフォント情報として確定する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記フォント設定処理手段は、前記処理設定情報に前記第２設定項目が設定されている場合、その設定内容に基づいて、
当該情報処理装置が使用可能な印刷デバイスの印刷デバイス情報を取得する印刷デバイス取得処理と、
前記印刷デバイス取得処理で取得した印刷デバイス情報の内、前記入力文字に設定されているフォント種情報を含むフォント情報を有する印刷デバイス情報が存在するか否かを判定する判定処理と、
前記判定処理の判定結果に基づいて、前記入力文字の印刷を行う印刷デバイスを設定する印刷デバイス設定処理と
を実行する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項８】
前記フォント設定処理手段は、前記処理設定情報に前記第３設定項目が設定されている場合、その設定内容に基づいて、
前記入力文字の位置の前後に存在する第１文字及び前記第２文字それぞれのフォント情報に基づいて、フォント種とそれの代替とする代替フォント種を含む代替フォント情報を管理するフォントテーブルを参照する参照処理と、
前記参照処理で参照した代替フォント情報から、前記フォント情報に対応する前記代替フォント情報を選択する選択処理と、
前記選択処理によって選択された代替フォント情報を使用する文字を特定する特定処理と
を実行し、前記選択処理で選択した代替フォント情報を前記特定処理で特定した文字のフォント情報として確定する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項９】
前記フォント設定処理手段によって、前記代替フォント情報を検索する場合に、その検索された代替フォント情報を使用する対象を設定する代替設定手段を更に備える
ことを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
各文字にフォント情報が設定されている文字列中に、新たに文字を入力する場合に、その入力文字に使用するフォント情報を設定する情報処理装置の制御方法であって、
前記入力文字の位置の前後に存在する第１文字及び前記第２文字それぞれのフォント情報を取得する取得工程と、
前記取得工程で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が同一である場合、前記フォント種を、前記入力文字に使用するフォント種情報として設定する第１設定工程と、
前記取得工程で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が異なる場合、前記入力文字を含む文字列に対して構文解析を実行し、その構文解析結果に基づいて、前記入力文字に使用するフォント種情報を設定する第２設定工程と
を備えることを特徴とする情報処理装置の制御方法。
【請求項１１】
各文字にフォント情報が設定されている文字列中に、新たに文字を入力する場合に、その入力文字に使用するフォント情報を設定する情報処理装置の制御をコンピュータに実行させるためのプログラムであって、
前記入力文字の位置の前後に存在する第１文字及び前記第２文字それぞれのフォント情報を取得する取得工程と、
前記取得工程で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が同一である場合、前記フォント種を、前記入力文字に使用するフォント種情報として設定する第１設定工程と、
前記取得工程で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が異なる場合、前記入力文字を含む文字列に対して構文解析を実行し、その構文解析結果に基づいて、前記入力文字に使用するフォント種情報を設定する第２設定工程と
をコンピュータに実行させることを特徴とするプログラム。
【請求項１２】
文字列中に文字を挿入する際、挿入される文字の隣接する文字のフォントが存在しない場合、隣接する文字のフォントの類似フォントを選択する選択手段と、
挿入される文字のフォント及び隣接する文字のフォントを前記選択手段により選択されたフォントに設定する設定手段と
を備えることを特徴とする文字処理装置。
【請求項１３】
前記設定手段は、文字列中に文字を挿入する際、挿入される文字の隣接する文字のフォントが存在する場合、隣接する文字のフォントを挿入される文字のフォントに設定する
ことを特徴とする請求項１２に記載の文字処理装置。
【請求項１４】
文字列中に文字を挿入する際、挿入される文字の隣接する文字のフォントが存在しない場合、隣接する文字のフォントの類似フォントを選択する選択工程と、
挿入される文字のフォント及び隣接する文字のフォントを前記選択ステップにより選択されたフォントに設定する設定工程と
を備えることを特徴とする文字処理方法。
【請求項１５】
前記設定工程は、文字列中に文字を挿入する際、挿入される文字の隣接する文字のフォントが存在する場合、隣接する文字のフォントを挿入される文字のフォントに設定する
ことを特徴とする請求項１４に記載の文字処理方法。
【請求項１６】
文字列中に文字を挿入する際、挿入される文字の隣接する文字のフォントが存在しない場合、隣接する文字のフォントの類似フォントを選択する選択工程と、
挿入される文字のフォント及び隣接する文字のフォントを前記選択ステップにより選択されたフォントに設定する設定工程と
をコンピュータに実行させることを特徴とするプログラム。
【請求項１７】
前記設定工程は、文字列中に文字を挿入する際、挿入される文字の隣接する文字のフォントが存在する場合、隣接する文字のフォントを挿入される文字のフォントに設定する
ことを特徴とする請求項１６に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、各文字にフォント情報が設定されている文字列中に、新たに文字を入力する場合に、その入力文字に使用するフォントを設定する情報処理装置及びその制御方法、プログラムに関するものである。
【背景技術】
【０００２】
従来より、個人ユーザや企業等の顧客からの依頼により、印刷物を生成する印刷業者が存在している。こうした印刷業者では、顧客からの印刷用データ（原本）の提供と、印刷体裁や部数、納期等の指示を受けて印刷物を作成し、顧客に対して納入する業務を行っている。また、こうした印刷業者では、古くから知られているオフセット製版印刷機等の大規模な印刷装置を用いて業務を行っている。
【０００３】
また、昨今では、電子写真方式の印刷装置（以降、プリンタ）やインクジェット方式のプリンタの高速化、高画質化が実現されている。そして、これに伴い、短時間で出力・納品が可能な「コピーサービス」、「プリンティングサービス」、「Ｐｒｉｎｔ  Ｏｎ  Ｄｅｍａｎｄ（ＰＯＤ）センター」等と称されるような商業印刷の業態（印刷サービス）も存在している。
【０００４】
これらの印刷業に対する印刷の依頼は、ユーザから、上記のような印刷サービスを提供する印刷業者に対して行うことになる。具体的には、紙あるいは電子媒体（ＦＤ、ＭＯ、ＣＤ−ＲＯＭ等）に記録した原稿と、当該原稿の印刷部数や製本方法、納品期日等を記載した印刷指示書（オーダー指示書）とを郵送または直接印刷会社に持ち込むことにより行う（入稿）。
【０００５】
また、インターネットまたはイントラネットを介してオンラインで印刷を発注／受注、入稿できる印刷システムも実用化されている。印刷業者側では、ユーザからの依頼を受け付けて印刷指示書を作成する。そして、その印刷指示書に従い作業コンピュータに接続されたプリンタにより印刷や製本作業を行い、作成された印刷物を顧客に納品して業務が完了する。
【０００６】
このような、ユーザから委託された印刷処理を実行する印刷業者においては、安定した品質で指定された納品期日までに確実に印刷を完了させなければならない。このため、印刷業者は、複数のオペレータが多種多様なプリンタやホストを用いて、並列的に多数の印刷依頼（オーダー）を逐次処理する。
【０００７】
そして、各作業工程を円滑かつ確実に処理すること、人（作業を行うオペレータ）や装置等の資源を可能な限り効率的に活用することが求められる。その結果、納品期日、コストを踏まえていかに作業効率性の良い計画（スケジュール）を立て運用するかが重要になる。
【０００８】
従来の技術では、分業化により原稿レイアウト、印刷設定等の前工程においてフォントの種類の指定のみ行い、フォントの埋込処理を行なわず、印刷実行等の後工程にてフォントの埋込、印刷用データ作成を実行する作業フローが存在する。
【０００９】
この場合、前工程を行う作業ＰＣ（例えば、前工程担当オペレータのＰＣ）と後工程を行う作業ＰＣ（例えば、後工程担当オペレータのＰＣ）が別であり、搭載されているフォントが異なる状況が多くある。例えば、後工程を行う作業ＰＣに搭載されているフォントを考慮せず前工程の作業ＰＣにて文字に対してフォント設定、印刷設定した場合、後工程を行う作業ＰＣでは、該当するフォントが存在しないことになる。そのため、後工程におけるフォントの埋込、印刷用データ作成時には、処理を続行できずエラーが発生する。そして、このエラーが発生した場合、前工程に戻りフォント設定変更等の作業を再度行う必要があり、作業効率が悪いと言う課題があった。
【００１０】
昨今では、この課題を解決するため、前工程にて印刷設定（フォント設定等）を行う場合、前工程の作業ＰＣのシステムが後工程の作業ＰＣに搭載されて埋め込み可能なフォント情報を取得する構成を設けている。そして、前工程の作業ＰＣにて、後工程の作業ＰＣに搭載されていて、かつ埋込可能なフォントのみの情報を表示、選択し、埋込処理を完了させて、後工程にてエラーを発生させないシステムが提案されている（特許文献１を参照）。
【特許文献１】特開２００２−９１９５７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
従来のシステム、作業フローにおいて、印刷業者が原稿において誤字、脱字を発見した場合、編集（追加）すべき文字及び文字列に使用するフォントがシステムに搭載されていれば、印刷業者にて対応（編集、フォント埋込）が可能である。
【００１２】
尚、編集（追加）すべき文字及び文字列については、以降では、単に文字と表現する場合もある。
【００１３】
ここで、この文字を追加する場合の操作例について、図２３を用いて説明する。
【００１４】
図２３（Ａ）〜（Ｃ）はそれぞれ、「メ」が脱字し「カラ」となっている例である。システムに該当するフォントが搭載されている場合、本来の文字「カメラ」と修正するために「メ」を挿入（追加）する。そして、その文字として統一したフォント（「カラ」と同一のフォント）を適切に埋め込み印刷を行うことが可能である。
【００１５】
しかし、システムに搭載されていないフォントの場合、印刷品位を保つ形態で印刷業者が修正（フォント埋込）することは不可能である。ここで、図２４（Ａ）〜（Ｃ）はそれぞれ、図２３と同様に「メ」が脱字し「カラ」となっている例である。図２４はシステムに該当するフォントが搭載されていない場合の例である。本来の文字「カメラ」と修正するために「メ」を挿入（追加）することは可能である。しかしながら、その文字の該当する適切なフォント（「カ」及び「ラ」と同一のフォント）を埋め込むことができない。
【００１６】
そこで、図２４では、挿入（追加）する文字については、その前／後の文字のフォントに類似するフォントを埋め込む処理を採用している。この場合、フォントが不統一な形態で印刷を行うことになる。例えば、図２４（Ａ）の例の場合、「カ」及び「ラ」のフォントが「ポップ体」であるのに対し、挿入対象の「メ」については、「ポップ体」に類似するフォントである「角ゴシック」を採用している。
【００１７】
このような場合、印刷業者は印刷品位を保つために依頼元へ原稿の修正、再送付を依頼することになる。その結果、原稿の再入稿までに予定外の多くの時間を費やすことになり、印刷業者における関係する他のジョブを含めて計画（スケジュール）を変更、調整する必要性が発生する。また、オペレータの作業を中断することにもなる。
【００１８】
以上から、全体的な作業効率が大幅に低下し、最悪、納期を守ることができなくなると言う課題があった。
【００１９】
また、フォントの不統一性を解決するために、任意の範囲の文字のフォントを代替フォントに再設定する場合がある。具体的には、図２４の文字「カメラ」において「メ」のみが異なるフォントの場合、オペレータが手動で文字「カメラ」を選択し、図２５に示すダイアログにより、この「カメラ」全体を同一のフォントに設定し直して埋め込むことになる。
【００２０】
これにより、図２６（Ａ）〜（Ｃ）に示すように、文字「カメラ」が統一したフォントに設定される。しかし、この場合、オペレータが手動で変更対象の文字範囲の指定、変更するフォントの指定を行う必要があるため、新たな作業が発生してしまう。また、変更箇所が複数存在する場合には、一層作業効率が低下する。
【００２１】
また、変更対象の文字範囲の指定（対象文字の適正）、変更するフォントの指定（フォントの類似性）の判断をオペレータが一定の知識を持って行うため、複数のオペレータ間での代替フォントの指定に関して統一性を保つことが困難な状況となっている。
【００２２】
以上から、オペレータの作業効率が低下し、各オペレータに知識、スキルが求められる課題もあった。
【００２３】
本発明は上記の課題を解決するためになされたものであり、フォント設定に係る処理を効率的に実行することができる情報処理装置及びその制御方法、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００２４】
上記の目的を達成するための本発明による情報処理装置は以下の構成を備える。即ち、
各文字にフォント情報が設定されている文字列中に、新たに文字を入力する場合に、その入力文字に使用するフォント情報を設定する情報処理装置であって、
前記入力文字の位置の前後に存在する第１文字及び前記第２文字それぞれのフォント情報を取得する取得手段と、
前記取得手段で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が同一である場合、前記フォント種を、前記入力文字に使用するフォント種情報として設定する第１設定手段と、
前記取得手段で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が異なる場合、前記入力文字を含む文字列に対して構文解析を実行し、その構文解析結果に基づいて、前記入力文字に使用するフォント種情報を設定する第２設定手段と
を備える。
【００２５】
また、好ましくは、前記取得手段で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれる、埋め込みフォントの設定の有無を示すフラグの状態を判定する判定手段と、
前記判定手段の判定結果に基づいて、前記入力文字に対する前記フラグをＯＮあるいはＯＦＦに設定するとともに、前記第１設定手段及び前記第２設定手段のどちらかを実行する実行手段と
を更に備える。
【００２６】
また、好ましくは、前記実行手段は、前記判定手段の判定の結果、前記取得手段で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフラグの状態の少なくとも一方がＯＮである場合に、前記入力文字に対する前記フラグをＯＮに設定する。
【００２７】
また、好ましくは、前記入力文字に対する前記フラグがＯＮに設定されている場合に実行するフォント設定処理の処理内容を設定する処理設定手段と、
前記処理設定手段で設定された処理設定情報を記憶媒体に記憶する記憶手段とを更に備え、
前記処理設定手段は、設定項目として、
前記入力文字に設定されているフォント種情報を含むフォント情報を検索するための第１設定項目と、
前記入力文字に設定されているフォント種情報を含むフォント情報を搭載する印刷デバイスを検索するための第２設定項目と、
フォント種情報の代替フォント種情報を有する代替フォント情報を検索するための第３設定項目と、
前記第１設定項目から前記第３設定項目のいずれか、あるいはそれらを任意に組み合わせた設定項目を実行するための第４設定項目と
を有する。
【００２８】
また、好ましくは、前記入力文字に対する前記フラグがＯＮに設定されている場合、前記記憶手段に記憶される処理設定情報に基づいて、前記フォント設定処理を実行するフォント設定処理手段を更に備える。
【００２９】
また、好ましくは、前記フォント設定処理手段は、前記処理設定情報に前記第１設定項目が設定されている場合、その設定内容に基づいて、
前記文字列を含む同一ページデータ内から、前記入力文字に設定されているフォント種情報を含むフォント情報を検索する第１検索処理と、
前記文字列を含む同一ファイルデータ内から、前記入力文字に設定されているフォント種情報を含むフォント情報を検索する第２検索処理と、
前記文字列を含むファイルデータと同一の属性のファイルデータから、前記入力文字に設定されているフォント種情報を含むフォント情報を検索する第３検索処理と
の少なくとも１つを実行し、それによって得られるフォント情報を前記入力文字に対するフォント情報として確定する。
【００３０】
また、好ましくは、前記フォント設定処理手段は、前記処理設定情報に前記第２設定項目が設定されている場合、その設定内容に基づいて、
当該情報処理装置が使用可能な印刷デバイスの印刷デバイス情報を取得する印刷デバイス取得処理と、
前記印刷デバイス取得処理で取得した印刷デバイス情報の内、前記入力文字に設定されているフォント種情報を含むフォント情報を有する印刷デバイス情報が存在するか否かを判定する判定処理と、
前記判定処理の判定結果に基づいて、前記入力文字の印刷を行う印刷デバイスを設定する印刷デバイス設定処理と
を実行する。
【００３１】
また、好ましくは、前記フォント設定処理手段は、前記処理設定情報に前記第３設定項目が設定されている場合、その設定内容に基づいて、
前記入力文字の位置の前後に存在する第１文字及び前記第２文字それぞれのフォント情報に基づいて、フォント種とそれの代替とする代替フォント種を含む代替フォント情報を管理するフォントテーブルを参照する参照処理と、
前記参照処理で参照した代替フォント情報から、前記フォント情報に対応する前記代替フォント情報を選択する選択処理と、
前記選択処理によって選択された代替フォント情報を使用する文字を特定する特定処理と
を実行し、前記選択処理で選択した代替フォント情報を前記特定処理で特定した文字のフォント情報として確定する。
【００３２】
また、好ましくは、前記フォント設定処理手段によって、前記代替フォント情報を検索する場合に、その検索された代替フォント情報を使用する対象を設定する代替設定手段を更に備える。
【００３３】
上記の目的を達成するための本発明による情報処理装置の制御方法は以下の構成を備える。即ち、
各文字にフォント情報が設定されている文字列中に、新たに文字を入力する場合に、その入力文字に使用するフォント情報を設定する情報処理装置の制御方法であって、
前記入力文字の位置の前後に存在する第１文字及び前記第２文字それぞれのフォント情報を取得する取得工程と、
前記取得工程で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が同一である場合、前記フォント種を、前記入力文字に使用するフォント種情報として設定する第１設定工程と、
前記取得工程で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が異なる場合、前記入力文字を含む文字列に対して構文解析を実行し、その構文解析結果に基づいて、前記入力文字に使用するフォント種情報を設定する第２設定工程と
を備える。
【００３４】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
各文字にフォント情報が設定されている文字列中に、新たに文字を入力する場合に、その入力文字に使用するフォント情報を設定する情報処理装置の制御をコンピュータに実行させるためのプログラムであって、
前記入力文字の位置の前後に存在する第１文字及び前記第２文字それぞれのフォント情報を取得する取得工程と、
前記取得工程で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が同一である場合、前記フォント種を、前記入力文字に使用するフォント種情報として設定する第１設定工程と、
前記取得工程で取得した前記第１文字及び前記第２文字それぞれのフォント情報に含まれるフォント種が異なる場合、前記入力文字を含む文字列に対して構文解析を実行し、その構文解析結果に基づいて、前記入力文字に使用するフォント種情報を設定する第２設定工程と
をコンピュータに実行させる。
【発明の効果】
【００３５】
本発明によれば、フォント設定に係る処理を効率的に実行することができる情報処理装置及びその制御方法、プログラムを提供できる。
【発明を実施するための最良の形態】
【００３６】
以下、本発明の実施の形態について図面を用いて詳細に説明する。
【００３７】
図１は本発明の実施形態の印刷システムの全体構成を示す図の一例である。
【００３８】
尚、以下の説明における印刷システム全体の環境は、本発明の説明を理解し易くするためのものであり、本発明はこれらの環境に限定されるものではない。
【００３９】
図１において、クライアント１５１には、自宅でネットワーク接続されたノートＰＣ（パーソナルコンピュータ）１０２や、社内イントラネットに接続された業務用ＰＣ１０１がある。また、クライアント１５１にある業務用ＰＣ１０１やノートＰＣ１０２は、ＬＡＮ１２１を介してネットワーク１３１に接続されている。
【００４０】
サーバ１５２には、クライアント１５１から印刷依頼データを受信する情報処理装置がある。サーバ１５２は、原稿データの入稿を受け付けたり、入稿コンテンツを提供するＷＥＢサーバ１０３や、入稿された印刷依頼データを注文書データ（オーダー票）として格納したり、電子入稿された原稿データを格納しておくＤＢサーバ１０４で構成される。
【００４１】
ここで、ＷＥＢサーバ１０３とＤＢサーバ１０４は１つの筐体に混在させることも可能であるが、本発明においては、便宜上２つの筐体に分けて説明する。また、サーバ１５２にあるＷＥＢサーバ１０３やＤＢサーバ１０４は、ＬＡＮ１２２を介して、ネットワーク１３１に接続されている。
【００４２】
印刷センター１５３は、サーバ１５２に対して複数存在することができる。尚、サーバ１５２の情報処理装置は、印刷センター１５３に設置されている各種印刷装置のデバイス情報を振り分けて管理している。印刷センター１５３では、サーバ１５２に蓄積された注文書データと原稿データをＤＢサーバ１０４から定期的に収集する。
【００４３】
これに加えて、印刷センター１５３には、本発明の印刷システム自体が動作するサーバ１０５や、サーバ１０５が提供する各種のサービスをＧＵＩを使って操作する作業ＰＣ１０６が構成されている。更に、印刷センサー１５３には、実際の出力先となるモノクロプリンタ１１１、カラープリンタ１１２、更には印刷後に使用される後工程デバイス（くるみ製本機能）及び１４２（パンチャ機能）が構成されている。また、印刷センター１５３に設置されている各種機器は、ＬＡＮ１２３を介して相互に接続され、かつこのＬＡＮ１２３を介してネットワーク１３２に接続されている。
【００４４】
尚、印刷センター１５３の構成や環境は、一例であり、図１で示す構成に限定されるものではない。
【００４５】
本実施形態では、クライアント１５１とサーバ１５２、また、サーバ１５２と印刷センター１５３間は、ネットワーク（例えば、Ｉｎｔｅｒｎｅｔ／Ｉｎｔｒａｎｅｔ）１３１を介して接続されている。通常、クライアント１５１とサーバ１５２間は、Ｉｎｔｅｒｎｅｔ接続されることが多く、サーバ１５２と印刷センター１５３は専用回線を用いたＩｎｔｒａｎｅｔ接続されることが多い。しかしながら、本発明はこの構成に限定されるものではなく、印刷センター１５３内にサーバ１５２が存在する構成であっても適用可能なものである。
【００４６】
クライアント１５１にあるノートＰＣ１０２や業務用ＰＣ１０１には、ＷＥＢサーバ１０３が提供する入稿コンテンツを閲覧するためのブラウザが搭載される。このブラウザは、一般的には、Ｍｉｃｒｏｓｏｆｔ社製のＩｎｔｅｒｎｅｔＥｘｐｌｏｒｅｒであるが、ＮｅｔＳｃａｐｅ社製のＮｅｔＳｃａｐｅ等でもよい。また、当該入稿コンテンツを使って原稿データをアップロードすることが可能である。
【００４７】
ＷＥＢサーバ１０３は、入稿コンテンツを提供するＷＥＢサーバである。当該入稿コンテンツには、製本等の印刷体裁や、部数、用紙サイズ等の印刷設定、および納品期日、依頼者情報、配送先等の情報を付加することができる。ＷＥＢサーバ１０３には、これらの情報を付加するためのエディットコントロール、原稿データをアップロードするためのファイル指定コントロール等の印刷依頼を行うための各種コントロールが装備されている。
【００４８】
ここで、入力された依頼内容に応じて料金計算（印刷料金を課金する場合）及び入力事項の確定処理等の処理は、ＷＥＢサーバ１０３上で動作するサービスモジュールで実現される。しかしながら、これらの処理は、一般的なロジックであり、本発明では直接関係しないため割愛する。更に、ＷＥＢサーバ１０３では、確定した印刷依頼に対応する注文書データ（ここには、印刷依頼内容と原稿データのファイル名が記入されている）と原稿データをＤＢサーバ１０４に格納する。
【００４９】
ＤＢサーバ１０４には、例えば、Ｏｒａｃｌｅ社製のＯｒａｃｌｅＤａｔａｂａｓｅのような一般的なデータベースがインストールされている。そして、ＤＢサーバ１０４は、後述するサーバ１０５からのデータ取得要求に応じて、所望の注文書データと原稿データを送信することができる。
【００５０】
ＤＢスキーマ（不図示）は、主として、印刷センターマスタテーブル、デバイスマスタテーブル、製本機マスタテーブルで構成されている。
【００５１】
ここで、印刷センターマスタは、例えば、場所、連絡先等の情報と、デバイスマスタ、製本機マスタをメンバに持っている。また、デバイスマスタは、例えば、カラー／モノクロ、印刷枚数、オプション等のデバイス構成情報である。製本機マスタは、例えば、リング製本機、くるみ製本機等の情報である。
【００５２】
そして、これらのマスタテーブルを参照することで、印刷センター１５３にあるサーバ１０５は、自センターに割り当てられた注文書データを受信することができる。
【００５３】
サーバ１０５は、ＷＥＢサーバ１０３からの注文確定の通知を受け、ＤＢサーバ１０４から注文書データと原稿データを収集する。これに加えて、サーバ１０５は、収集した注文書データに従い、後述するオーダーマネージャ、ワークフローマネージャ、ジョブマネージャ、デバイスマネージャ、デバイススケジューラで構成される印刷システムを稼動する。
【００５４】
作業ＰＣ１０６は、サーバ１０５で提供される各種のサービスを、操作画面（ＧＵＩ）を介して制御するコンソールを実現する。作業ＰＣ１０６は、このコンソールを介して、サーバ１０５に格納されている原稿データを取り出すことができる。さらに、作業ＰＣ１０６は、所定のアプリケーションを起動して、取得した原稿データの印刷体裁を整えるともに、指定された印刷設定に基づいて印刷指示を入力する作業用の情報処理装置（コンピュータ）である。
【００５５】
モノクロプリンタ１１１、カラープリンタ１１２は、印刷センター１５３によって、設置構成が異なるが、一般的には、高速なモノクロプリンタと、高品位なカラープリンタの組み合わせで構成されることが多い。これらは、すべてサーバ１０５のデバイススケジューラで印刷に係るスケジューリングがなされることになる。
【００５６】
後工程デバイス１４１及び後工程デバイス１４２は、モノクロプリンタ１１１やカラープリンタ１１２より出力された印刷用紙を後処理するためのデバイスである。このデバイスには、例えば、ステイプラ、パンチャ、くるみ製本機、リング製本機がある。また、ネットワークに接続することで、状況ステータスをサーバ１０５が収集可能である。また、プリンタと同様に、印刷センター１５３によって設置構成が異なる。もちろん、これらがネットワーク接続されていない環境であっても本発明を適用することは可能であり、この環境に限定されるものではない。
【００５７】
次に、業務用ＰＣ１０１、ノートＰＣ１０２、ＷＥＢサーバ１０３、ＤＢサーバ１０４、サーバ１０５、作業ＰＣ１０６の各種端末の基本ハードウェア構成について、図２を用いて説明する。
【００５８】
図２は本発明の実施形態の端末の基本ハードウェア構成を示すブロック図である。
【００５９】
ＣＰＵ２００は、ＨＤ（ハードディスク）２０５に格納されているアプリケーションプログラム、プリンタドライバプログラム、ＯＳやネットワークプリンタ制御プログラム等の各種プログラムを実行する。また、ＣＰＵ２００は、ＲＡＭ２０２にプログラムの実行に必要な情報、ファイル等のデータを一時的に格納する制御を行う。
【００６０】
ＲＯＭ２０１は、基本Ｉ／Ｏプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。ＲＡＭ２０２は、ＣＰＵ２００の主メモリ、ワークエリア等として機能する。外部記憶ドライブ２０３は、記憶メディア２０４に記憶されたプログラム等のデータを、本コンピュータシステムにロードすることができる。
【００６１】
記憶メディア２０４は、本実施形態で説明するプログラム及び関連データを格納しており、その記憶されている内容については、図４で後述する。また、記憶メディア２０４としては、例えば、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ／ＲＡＭ／Ｒ／ＲＷ、ＭＯ、ＩＣメモリカード等の各種記憶媒体を利用することができる。
【００６２】
ＨＤ２０５は、アプリケーションプログラム、プリンタドライバプログラム、ＯＳ、制御プログラム、関連プログラム等の各種プログラムを格納している。キーボード２０６は、ユーザが端末に対して、デバイスの制御コマンドの命令等を入力指示するものである。また、これに加えて、マウス等のポインティングデバイスが装備されていても良い。
【００６３】
ディスプレイ２０７は、ＣＲＴや液晶等で構成され、キーボード２０６やポインティングデバイス（不図示）から入力したコマンドや、プリンタの状態等の各種情報を表示するものである。２０８はシステムバスであり、端末内の各種構成要素を相互に接続し、データの送受信経路となる。ネットワークインターフェイス（Ｉ／Ｆ）２０９は、ローカルエリアネットワーク（ＬＡＮ）、あるいはインターネットに接続するための通信インターフェイスである。
【００６４】
次に、本発明を実現するプログラムがＲＡＭ２０２にロードされ実行可能となった状態のメモリマップについて、図３を用いて説明する。
【００６５】
図３は本発明の実施形態のＲＡＭのメモリマップの一例を示す図である。
【００６６】
本実施形態では、ＣＰＵ２００が、記憶メディア２０４からプログラム及び関連データを直接ＲＡＭ２０２にロードして実行する例を示す。しかしながら、これ以外にも、記憶メディア２０４から本発明のプログラムを動作させる度に、ＨＤ２０５からＲＡＭ２０２にロードするようにしても良い。また、本発明のプログラムを、ＲＯＭ２０１に記録しておき、これをメモリマップの一部となるように構成し、直接ＣＰＵ２００で実行することも可能である。
【００６７】
図３において、３０１は基本Ｉ／Ｏプログラムを格納する領域である。この基本Ｉ／Ｏプログラムは、端末の電源がＯＮされたときに、ＨＤ２０５からＯＳがＲＡＭ２０２に読み込まれ、ＯＳの動作を開始させるＩＰＬ（イニシャルプログラムローティング）機能等を有している。３０２はＯＳを格納する領域、３０３は制御プログラムを格納する領域、３０４は制御プログラム等の各種プログラムに関連する関連データ（パラメータ、固定データ等）を格納する領域である。また、３０５はＣＰＵ２００が本プログラムを実行するワークエリアを構成する領域である。
【００６８】
次に、記憶メディア２０４のメモリマップについて、図４を用いて説明する。
【００６９】
図４は本発明の実施形態の記憶メディアのメモリマップの一例を示す図である。
【００７０】
図４において、４００は記憶メディア２０４のデータ内容であり、４０１はデータの情報を示すボリューム情報、４０２はディレクトリ情報、４０３は本実施形態を実現するためのプログラム、４０４はその関連データである。ここで、プログラム４０３は、図５に示されるフローチャートを実現するためのプログラムである。
【００７１】
次に、本実施形態の印刷システムにおける文字編集処理及び、その処理例について説明する。
【００７２】
図５Ａ〜図５Ｅは本発明の実施形態の印刷システムにおける文字編集処理を示すフローチャートである。
【００７３】
以下では、図６に示す文字あるいは文字編集作業の状態とフォント情報の一例に従って、本処理を説明する。
【００７４】
また、本処理は、ホストコンピュータに処理対象のコード情報に対して埋め込むべきフォント情報が存在しない状況を前提とするものである。そして、このような状況で、文字の編集作業を行う場合でも、該当するフォントの埋込処理、該当するフォントの利用設定、最適な代替フォントの選択、埋込処理を自動的に行う。これにより、原稿の編集作業、や編集後の文字の印刷作業を効率的に行うことが可能となる。
【００７５】
さらに、複数オペレータ間での代替フォントの指定に関して統一性を保つことが可能となり、各オペレータに特別な知識、スキルを求める必要がなくなるため、役割担当の自由度を向上させることが可能となる。
【００７６】
尚、ここで、フォントの埋込とは、入力された文字（コード情報）にフォント情報（フォント種（字体）、サイズ、フォント画像）を埋め込む（割り当てる（設定する））ことを意味するものである。そして、このフォントの埋め込みによって生成されたフォントを埋め込みフォント（Ｅｍｂｅｄ  Ｆｏｎｔｓ）と呼ぶ。そして、この埋め込みフォントで構成されるファイルやデータは、ユーザが使用するシステムのフォント環境に左右されずに、そのファイル中に含まれるフォント情報によって、ファイル作成者が意図する字体及びサイズで文字を再現することが可能となる。
【００７７】
以下に示す具体例では、例えば、作業ＰＣ１０６（図１）において、文字編集作業を行う場合を例に挙げて説明する。また、この文字編集作業は、作業ＰＣ１０６のディスプレイ２０７に表示される編集対象文字に対して、キーボード２０６やポインティングデバイス等の周辺装置を用いて行う。また、作業ＰＣ１０６には、文字編集作業用のアプリケーションプログラムがインストールされている。オペレータは、このアプリケーションプログラムを起動することによって表示されるグラフィックユーザインタフェース（例えば、ダイアログ等）を介して、各種文字編集作業を行うことができる。
【００７８】
まず、文字編集作業における作業内容の判定及び文字追加位置情報の判定に関して、図６（Ａ）の例を用いて説明する。
【００７９】
図６（Ａ）では、編集対象の文字列である「タカラーメン」において、「カ」と「ラ」の間に「ナ」が脱字している例を示している。この例では、全ての文字に埋め込み設定がなされており、全ての文字に同一のフォント種情報として「ポップ体」が設定されている。
【００８０】
作業ＰＣ１０６（図１）は、処理の実行にあたっては、編集対象の文字列を含む編集ファイルの各種文書情報をＲＡＭ２０２に読み込み、これに従って編集対象の文字列をディスプレイに２０７に表示する。そして、周辺装置を用いて、編集対象の文字の編集作業を行うことになる。この編集作業に伴う編集情報は、ＲＡＭ２０２に逐次保存する。
【００８１】
ＣＰＵ２００は、ＲＡＭ２０２から取得した編集情報より、文字が編集されたか否かを判定する（ステップＳ２７０１）。ＣＰＵ２００は、文字が編集されていないと判定した場合（ステップＳ２７０１でＮＯ）、処理を終了する。一方、ＣＰＵ２００は、文字が編集されたと判定した場合（ステップＳ２７０１でＹＥＳ）、ＲＡＭ２０２から取得した編集情報より文字が削除されたか否かを判定する（ステップＳ２７０２）。ＣＰＵ２００は、文字が削除されたと判定した場合（ステップＳ２７０２でＹＥＳ）、処理を終了する。
【００８２】
一方、ＣＰＵ２００は、文字が削除されていないと判定した場合（ステップＳ２７０２でＮＯ）、編集作業により文字が追加されたと判定する。そして、入力された文字のコード情報をＲＡＭ２０２から取得して、入力文字情報テーブル７００（図７）に保存する（ステップＳ２７０３）。次に、ＣＰＵ２００は、入力された文字の位置情報をＲＡＭ２０２から取得し、入力文字情報テーブル７００に保存する（ステップＳ２７０４）。
【００８３】
ここで、入力文字情報テーブル７００について、図７を用いて説明する。
【００８４】
図７は本発明の実施形態の入力文字情報テーブルの一例を示す図である。
【００８５】
入力文字情報テーブル７００は、入力された文字に関する情報を管理するテーブルであり、例えば、ＨＤ２０５上に保存されている。ここでは、図７に示されるように、入力文字コード、入力文字位置情報、入力文字の前後それぞれに存在する文字のフォント情報、フォント埋め込みフラグの状態、入力文字のフォント種情報が管理されている。
【００８６】
尚、入力文字位置情報は、例えば、作業用ＰＣ１０６上の文字編集画面内の文字編集領域上で表示される文字の位置座標である。また、フォント情報は、その文字に設定されているフォント埋め込みフラグの状態、フォント種、更には、コード情報、サイズ、フォント画像等の情報で構成される。
【００８７】
また、フォント埋め込みフラグとは、設定済のものに対しては、埋め込みフォントの有無を示すフラグであり、ＯＮである場合は埋め込みフォントが存在していて、ＯＦＦである場合は埋め込みフォントが存在していない状態を示す。また、入力文字に埋め込みフラグを設定した場合には、そのフラグは、埋め込みフォント処理（フォント設定処理）の実行の有無を示すフラグとしても機能する。ここで、フラグがＯＮである場合には、入力した文字に対して埋め込むフォントの選定等の埋め込みフォント処理を実行する。一方、フラグがＯＦＦである場合は、埋め込みフォント処理を実行しない。
【００８８】
更に、入力文字の前後それぞれに存在する文字とは、縦方向／横方向の文字列に対して入力した文字の前後にある文字であることを意味するものである。
【００８９】
次に、図５Ｂの説明に進む。
【００９０】
ＣＰＵ２００は、文字が入力された位置の前後の文字のフォント情報をＲＡＭ２０２から取得し、入力文字情報テーブル７００に保存する（ステップＳ２８０１）。ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、入力された文字の前後の文字はどちらも埋め込みフォントが設定されているか否かを判定する（ステップＳ２８０２）。図６（Ａ）の例では、ＣＰＵ２００は、前後の文字はどちらも埋め込みフォントが設定されていると判定する。
【００９１】
ＣＰＵ２００は、前後の文字はどちらも埋め込みフォントが設定されていると判定した場合（ステップＳ２８０２でＹＥＳ）、入力文字情報テーブル７００のフォント埋め込みフラグをＯＮに設定する（ステップＳ２８０３）。
【００９２】
ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、前後の文字は同一フォント種か否かを判定する（ステップＳ２８０４）。図６（Ａ）の例では、ＣＰＵ２００は、前後の文字は同一のフォント種であると判定する。
【００９３】
ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、前後の文字のフォント種情報を取得する。そして、これを入力文字のフォント種情報として、入力文字情報テーブル７００の入力文字フォント種情報に保存する（ステップＳ２８０５）。図６（Ａ）の例では、「ポップ体」を入力文字情報テーブル７００の入力文字フォント種情報に設定する。
【００９４】
以上の処理によって、図６（Ａ）の例に対して、入力文字情報テーブル７００におけるＮｏ．１のレコードが作成されることになる。
【００９５】
次に、文字編集作業における作業内容の判定及び文字追加位置情報の判定に関して、図６（Ｂ）の例を用いて説明する。
【００９６】
図６（Ｂ）では、編集対象の文字列である「タカラーメン」の文字において、「カ」と「ラ」の間に「ナ」が脱字している例を示している。この例では、全ての文字に埋め込み設定がなされており、「タカ」の文字のフォント種情報として「明朝体」が、「ラーメン」の文字のフォント種情報として「ポップ体」が設定されている。
【００９７】
まず、図６（Ｂ）の例の場合において、ステップＳ２７０１からステップＳ２７０４の処理は、図６（Ａ）の例の場合と同様であり、入力文字情報テーブル７００に保存されるデータのみが異なるため説明を省略する。
【００９８】
ＣＰＵ２００は、文字が入力された位置の前後の文字のフォント情報をＲＡＭ２０２から取得し、入力文字情報テーブル７００に保存する（ステップＳ２８０１）。ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、入力された文字の前後の文字はどちらも埋め込みフォントが設定されているか否かを判定する（ステップＳ２８０２）。図６（Ｂ）の例では、ＣＰＵ２００は、前後の文字はどちらも埋め込みフォントが設定されていると判定する。
【００９９】
ＣＰＵ２００は、前後の文字はどちらも埋め込みフォントが設定されていると判定した場合（ステップＳ２８０２でＹＥＳ）、入力文字情報テーブル７００のフォント埋め込みフラグをＯＮに設定する（ステップＳ２８０３）。
【０１００】
ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、前後の文字は同一フォント種か否かを判定する（ステップＳ２８０４）。図６（Ｂ）の例では、ＣＰＵ２００は、前後の文字は同一のフォント種でないと判定する。
【０１０１】
ＣＰＵ２００は、既存する一般的な構文解析技術により、入力文字に設定するフォント種情報を取得し、入力文字情報テーブル７００の入力文字フォント種情報に保存する（ステップＳ２８１１）。具体的には、「タカナラーメン」の文字を構文解析し「タカナ」と「ラーメン」に分離する。入力した文字「ナ」が「タカナ」の一部であることを解析し、入力文字前の「カ」のフォント種情報を入力文字情報テーブル７００より取得し、入力した文字「ナ」の入力文字フォント種情報として、「明朝体」を入力文字情報テーブル７００に設定する。
【０１０２】
以上の処理によって、図６（Ｂ）の例に対して、入力文字情報テーブル７００におけるＮｏ．２のレコードが作成されることになる。
【０１０３】
次に、文字編集作業における作業内容の判定及び文字追加位置情報の判定に関して、図６（Ｃ）の例を用いて説明する。
【０１０４】
図６（Ｃ）では、編集対象の文字列である「トンカランチ」の文字において、「カ」と「ラ」の間に「ツ」が脱字している例を示している。この例では、「トンカ」の文字に埋め込み設定が、「ランチ」の文字に非埋め込み設定がなされており、全ての文字にフォント種情報として「ポップ体」が設定されている。
【０１０５】
まず、図６（Ｃ）の例の場合において、ステップＳ２７０１からステップＳ２７０４の処理は、図６（Ａ）の例の場合と同様であり、入力文字情報テーブル７００に保存されるデータのみが異なるため説明を省略する。
【０１０６】
ＣＰＵ２００は、文字が入力された位置の前後の文字のフォント情報をＲＡＭ２０２から取得し、入力文字情報テーブル７００に保存する（ステップＳ２８０１）。ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、入力された文字の前後の文字はどちらも埋め込みフォントが設定されているか否かを判定する（ステップＳ２８０２）。図６（Ｃ）の例では、ＣＰＵ２００は、前後の文字はどちらも埋め込みフォントが設定されていないと判定する。
【０１０７】
ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、前後の文字はどちらか一方に埋め込みフォントが設定されているか否かを判定する（ステップＳ２８０６）。図６（Ｃ）の例では、ＣＰＵ２００は、前後の文字はどちらか一方に埋め込みフォントが設定されていると判定する。
【０１０８】
ＣＰＵ２００は、既存する一般的な構文解析技術により、入力文字にフォント埋め込みフラグを設定する（ステップＳ２８０７）。具体的には、「トンカツランチ」の文字を構文解析し「トンカツ」と「ランチ」に分離する。入力した文字「ツ」が「トンカツ」の一部であることを解析し、入力文字前の「カ」のフォント種情報を入力文字情報テーブル７００より取得する。そして、このフォント種情報中の埋め込みフラグ「ＯＮ」を、入力した文字「ツ」の埋め込み情報として、入力文字情報テーブル７００のフォント埋め込みフラグに設定する。
【０１０９】
ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、前後の文字は同一フォント種か否かを判定する（ステップＳ２８０８）。図６（Ｃ）の例では、ＣＰＵ２００は、前後の文字は同一のフォント種であると判定する。ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、前後の文字のフォント種情報を取得する。そして、これを入力文字のフォント種情報として、入力文字情報テーブル７００の入力文字フォント種情報に保存する（ステップＳ２８０５）。図６（Ｃ）の例では、「ポップ体」を入力文字情報テーブル７００の入力文字フォント種情報に設定する。
【０１１０】
以上の処理によって、図６（Ｃ）の例に対して、入力文字情報テーブル７００におけるＮｏ．３のレコードが作成されることになる。
【０１１１】
次に、文字編集作業における作業内容の判定及び文字追加位置情報の判定に関して、図６（Ｄ）の例を用いて説明する。
【０１１２】
図６（Ｄ）では、編集対象の文字列である「ゴウカラレバ」の文字において、「カ」と「ラ」の間に「ニ」が脱字している例を示している。この例では、「ゴウカ」の文字に埋め込み設定が、「ラレバ」の文字に非埋め込み設定がなされており、「ゴウカ」の文字のフォント種情報として「ポップ体」が、「ラレバ」の文字のフォント種情報として「明朝体」が設定されている。
【０１１３】
まず、図６（Ｄ）の例の場合において、ステップＳ２７０１からステップＳ２７０４の処理は、図６（Ａ）の例の場合と同様であり、入力文字情報テーブル７００に保存されるデータのみが異なるため説明を省略する。
【０１１４】
ＣＰＵ２００は、文字が入力された位置の前後の文字のフォント情報をＲＡＭ２０２から取得し、入力文字情報テーブル７００に保存する（ステップＳ２８０１）。ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、入力された文字の前後の文字はどちらも埋め込みフォントが設定されているか否かを判定する（ステップＳ２８０２）。図６（Ｄ）の例では、ＣＰＵ２００は、前後の文字はどちらも埋め込みフォントが設定されていないと判定する。
【０１１５】
ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、前後の文字はどちらか一方に埋め込みフォントが設定されているか否かを判定する（ステップＳ２８０６）。図６（Ｄ）の例では、ＣＰＵ２００は、前後の文字はどちらか一方に埋め込みフォントが設定されていると判定する。
【０１１６】
ＣＰＵ２００は、既存する一般的な構文解析技術により、入力文字にフォント埋め込みフラグを設定する（ステップＳ２８０７）。具体的には、「ゴウカニラレバ」の文字を構文解析し「ゴウカ」と「ニラレバ」に分離する。入力した文字「ニ」が「ニラレバ」の一部であることを解析し、入力文字後の「ラ」のフォント種情報を入力文字情報テーブル７００より取得する。そして、このフォント種情報中の埋め込みフラグ「ＯＦＦ」を、入力した文字「ニ」の埋め込み情報として、入力文字情報テーブル７００へフォント埋め込みフラグに設定する。
【０１１７】
ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、前後の文字は同一フォント種か否かを判定する（ステップＳ２８０８）。図６（Ｄ）の例では、ＣＰＵ２００は、前後の文字は同一のフォント種でないと判定する。
【０１１８】
ＣＰＵ２００は、既存する一般的な構文解析技術により、入力文字に設定するフォント種情報を取得し、入力文字情報テーブル７００の入力文字フォント種情報に保存する（ステップＳ２８１１）。具体的には、「ゴウカニラレバ」の文字を構文解析し「ゴウカ」と「ニラレバ」に分離する。入力した文字「ニ」が「ニラレバ」の一部であることを解析し、入力文字後の「ラ」のフォント種情報を入力文字情報テーブル７００より取得し、入力した文字「ニ」の入力文字フォント種情報として、「明朝体」を入力文字情報テーブル７００に設定する。
【０１１９】
以上の処理によって、図６（Ｄ）の例に対して、入力文字情報テーブル７００におけるＮｏ．４のレコードが作成されることになる。
【０１２０】
次に、文字編集作業における作業内容の判定及び文字追加位置情報の判定に関して、図６（Ｅ）の例を用いて説明する。
【０１２１】
図６（Ｅ）では、編集対象の文字列である「トンカランチ」の文字において、「カ」と「ラ」の間に「ツ」が脱字している例を示している。この例では、全ての文字に非埋め込み設定がなされており、全ての文字に同一のフォント種情報として「ポップ体」が設定されている。
【０１２２】
まず、図６（Ｅ）の例の場合において、ステップＳ２７０１からステップＳ２７０４の処理は、図６（Ａ）の例の場合と同様であり、入力文字情報テーブル７００に保存されるデータのみが異なるため説明を省略する。
【０１２３】
ＣＰＵ２００は、文字が入力された位置の前後の文字のフォント情報をＲＡＭ２０２から取得し、入力文字情報テーブル７００に保存する（ステップＳ２８０１）。ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、入力された文字の前後の文字はどちらも埋め込みフォントが設定されているか否かを判定する（ステップＳ２８０２）。図６（Ｅ）の例では、ＣＰＵ２００は、前後の文字はどちらも埋め込みフォントが設定されていないと判定する。
【０１２４】
ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、前後の文字はどちらか一方に埋め込みフォントが設定されているか否かを判定する（ステップＳ２８０６）。図６（Ｅ）の例では、ＣＰＵ２００は、前後の文字はどちらか一方に埋め込みフォントが設定されていないと判定する。
【０１２５】
ＣＰＵ２００は、前後の文字はどちらも埋め込みフォントが設定されていないと判定した場合、入力文字に対するフォント埋め込みフラグをＯＦＦに設定する（ステップＳ２８０９）。具体的には、入力文字情報テーブル７００のフォント埋め込みフラグを「ＯＦＦ」に設定する。
【０１２６】
ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、前後の文字は同一フォント種か否かを判定する（ステップＳ２８１０）。図６（Ｅ）の例では、ＣＰＵ２００は、前後の文字は同一のフォント種であると判定する。ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、前後の文字のフォント種情報を取得する。そして、これを入力文字のフォント種情報として、入力文字情報テーブル７００の入力文字フォント種情報に保存する（ステップＳ２８０５）。図６（Ｅ）の例では、「ポップ体」を入力文字情報テーブル７００の入力文字フォント種情報に設定する。
【０１２７】
以上の処理によって、図６（Ｅ）の例に対して、入力文字情報テーブル７００におけるＮｏ．５のレコードが作成されることになる。
【０１２８】
次に、文字編集作業における作業内容の判定及び文字追加位置情報の判定に関して、図６（Ｆ）の例を用いて説明する。
【０１２９】
図６（Ｆ）では、編集対象の文字列である「ゴウカラレバ」の文字において、「カ」と「ラ」の間に「ニ」が脱字している例を示している。この例では、全ての文字に非埋め込み設定がなされており、「ゴウカ」の文字のフォント種情報として「ポップ体」が、「ラレバ」の文字のフォント種情報として「明朝体」が設定されている。
【０１３０】
まず、図６（Ｆ）の例の場合において、ステップＳ２７０１からステップＳ２７０４の処理は、図６（Ａ）の例の場合と同様であり、入力文字情報テーブル７００に保存されるデータのみが異なるため説明を省略する。
【０１３１】
ＣＰＵ２００は、文字が入力された位置の前後の文字のフォント情報をＲＡＭ２０２から取得し、入力文字情報テーブル７００に保存する（ステップＳ２８０１）。ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、入力された文字の前後の文字はどちらも埋め込みフォントが設定されているか否かを判定する（ステップＳ２８０２）。図６（Ｆ）の例では、ＣＰＵ２００は前後の文字はどちらも埋め込みフォントが設定されていないと判定する。
【０１３２】
ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、前後の文字はどちらか一方に埋め込みフォントが設定されているか否かを判定する（ステップＳ２８０６）。図６（Ｆ）の例では、ＣＰＵ２００は、前後の文字はどちらか一方に埋め込みフォントが設定されていないと判定する。
【０１３３】
ＣＰＵ２００は、前後の文字はどちらも埋め込みフォントが設定されていないと判定した場合、フォント埋め込みフラグをＯＦＦに設定する（ステップＳ２８０９）。具体的には、入力文字情報テーブル７００のフォント埋め込みフラグを「ＯＦＦ」に設定する。
【０１３４】
ＣＰＵ２００は、入力文字情報テーブル７００の入力文字前のフォント情報及び入力文字後のフォント情報より、前後の文字は同一フォント種か否かを判定する（ステップＳ２８１０）。図６（Ｆ）の例では、ＣＰＵ２００は、前後の文字は同一のフォント種でないと判定する。
【０１３５】
ＣＰＵ２００は、既存する一般的な構文解析技術により、入力文字に設定するフォント種情報を取得し、入力文字情報テーブル７００の入力文字フォント種情報に保存する（ステップＳ２８１１）。具体的には、「ゴウカニラレバ」の文字を構文解析し「ゴウカ」と「ニラレバ」に分離する。入力した文字「ニ」が「ニラレバ」の一部であることを解析し、入力文字後の「ラ」のフォント種情報を入力文字情報テーブル７００より取得し、入力した文字「ニ」の入力文字フォント種情報として、「明朝体」を入力文字情報テーブル７００に設定する。
【０１３６】
以上の処理によって、図６（Ｆ）の例に対して、図７の入力文字情報テーブル７００におけるＮｏ．６のレコードが作成されることになる。
【０１３７】
次に、ＣＰＵ２００は、入力文字情報テーブル７００のフォント埋め込みフラグの情報を取得する（ステップＳ２８１２）。
【０１３８】
ＣＰＵ２００は、取得したフォント埋め込みフラグがＯＮであるか否かを判定する（ステップＳ２８１３）。図６（Ｄ）、（Ｅ）、（Ｆ）の例は、入力文字情報テーブル７００のフォント埋め込みフラグがＯＦＦとなっている。この場合、ＣＰＵ２００は、フォント埋め込みフラグはＯＮでないと判定する。そして、埋め込みフォントの処理を行なわない形態でフォント情報を設定する（ステップＳ２８１４）。その後、処理を終了する。
【０１３９】
一方、図６（Ａ）、（Ｂ）、（Ｃ）の例は、入力文字情報テーブル７００におけるフォント埋め込みフラグの情報がＯＮとなっている。この場合、ＣＰＵ２００は、ステップＳ２８１３においてフォント埋め込みフラグはＯＮであると判定する。
【０１４０】
次に、ＣＰＵ２００は、処理設定ダイアログ８００（図８）によりオペレータが予め設定している、埋め込みフォントが存在しない場合の処理設定の情報をＲＡＭ２０２から取得する（ステップＳ２８１５）。
【０１４１】
ここで、埋め込みフォントが存在しない場合の処理設定を行うための処理設定ダイアログについて、図８を用いて説明する。
【０１４２】
図８は本発明の実施形態の処理設定ダイアログの一例を示す図である。
【０１４３】
処理設定ダイアログ８００では、埋め込みフォントが存在しない場合に実行するフォント設定処理の処理設定（処理内容の設定）を行うための設定項目が構成されている。これらの設定項目は、プルダウンメニュー、ラジオボタン、チェックボックス等の各種コントロールで構成されている。
【０１４４】
項目８０１〜８０４はラジオボタンで構成されていて、これらのいずれか１つを選択することが可能となる。
【０１４５】
項目８０１は、プルダウンメニュー８０１ａ〜８０１ｃで指定されている設定内容の順序で、埋め込みフォントが存在しない場合の処理を自動的に実行するための項目である。このプルダウンメニュー８０１ａ〜８０１ｃには、それぞれ、以下の項目８０２〜８０４が登録されていて、そのいずれかを選択することが可能である。
【０１４６】
項目８０２は、埋め込みフォントを検索／設定するための項目である。ここでは、更に、この検索／設定対象の範囲を指定するための項目８０２ａ〜８０２ｃが、チェックボックスで構成されている。つまり、項目８０２ａ〜８０２ｃから１つ以上の項目を選択することが可能である。
【０１４７】
項目８０２ａは、検索／設定対象の範囲を、処理対象の文字が含まれるページの同一ページ内に指定するための項目である。項目８０２ｂは、検索／設定対象の範囲を、処理対象の文字が含まれるファイルの同一ファイル内に指定するための項目である。項目８０２ｃは、検索／設定対象の範囲を、処理対象の文字が含まれるファイル以外の他のファイルに指定するための項目である。
【０１４８】
項目８０３は、フォント搭載プリンタを検索／設定するための項目である。ここでは、更に、この検索／設定対象の範囲を指定するための項目８０３ａ及び８０３ｂが、チェックボックスで構成されている。つまり、項目８０３ａ及び８０３ｂから１つ以上の項目を選択することが可能である。
【０１４９】
項目８０３ａは、検索／設定対象の範囲を、モノクロプリンタに指定するための項目である。項目８０３ｂは、検索／設定対象の範囲を、カラープリンタに指定するための項目である。
【０１５０】
項目８０４は、埋め込み可能な代替フォントを検索／設定するための項目である。ここでは、更に、この検索／設定対象の範囲を指定するための項目８０４ａ及び８０４ｂが、チェックボックスで構成されている。つまり、項目８０４ａ及び８０４ｂから１つ以上の項目を選択することが可能である。
【０１５１】
項目８０４ａは、検索／設定対象の範囲を、ローカルホストに指定するための項目である。項目８０４ｂは、検索／設定対象の範囲を、フォントサーバに指定するための項目である。
【０１５２】
設定ボタン８０５は、処理設定ダイアログ８００上の設定を確定するためのボタンである。このボタン８０５を操作すると、処理設定ダイアログ８００上の設定が処理設定の情報として、ＲＡＭ２０２に保存されることになる。キャンセルボタン８０６は、処理設定ダイアログ８００上の設定をキャンセルするためのボタンである。
【０１５３】
処理設定ダイアログ８００において、項目８０２の「埋め込みフォントを検索／設定する」が設定されている場合、図５ＣのステップＳ２９０１からステップＳ２９０８までのみを実行する。ここでは、上述のように、オペレータの設定により検索／設定対象として「同一ページ内」、「同一ファイル内」、「他のファイル」を個別に選択することを可能としている。
【０１５４】
また、処理設定ダイアログ８００において、項目８０３の「フォント搭載プリンタを検索／設定する」が設定されている場合、図５ＤのステップＳ３００１からステップＳ３００７までのみを実行する。ここでは、上述のように、オペレータの設定により検索／設定対象として「モノクロプリンタ」、「カラープリンタ」を個別に選択することを可能としている。
【０１５５】
また、処理設定ダイアログ８００において、項目８０４の「埋め込み可能な代替フォントを検索／設定する」が設定されている場合、図５ＥのステップＳ３１０１からステップＳ３１０７までのみを実行する。ここでは、上述のように、オペレータの設定により検索／設定対象として「ローカルホスト」、「フォントサーバ」（各種のファイルサーバを含む）を個別に選択することを可能としている。
【０１５６】
ここでは、処理設定ダイアログ８００の設定状態で、項目８０１の「以下の順序で自動的に処理する」が設定されている場合の処理について説明する。この場合、ステップＳ２９０１からステップＳ２９０８（図５Ｃ）を実行し、続けてステップＳ３００１からステップＳ３００７（図５Ｄ）を実行し、続けてステップＳ３１０１からステップＳ３１０７（図５Ｅ）を実行することになる。
【０１５７】
尚、ステップＳ２９０１以降の処理は図６（Ａ）、（Ｂ）、（Ｃ）の例にて共通であるため、図６（Ａ）の例を用いて説明する。
【０１５８】
ＣＰＵ２００は、ＲＡＭ２０２にロードされ実行している機能モジュールである、図９のフォント情報取得部９０１により、ＲＡＭ２０２に保存されている編集ファイルの各種文書情報を取得する。フォント情報解析部９０２により、入力した文字と同一ページ内における文字の埋め込みフォント情報を解析する（ステップＳ２９０１）。
【０１５９】
ＣＰＵ２００は、入力した文字と同一の埋め込みフォント情報が存在するか否かを判定する（ステップＳ２９０２）。図６（Ａ）及び図９の例では、フォント種がポップ体の「ナ」の文字が同一ページ内に存在するか否かを判定する。ＣＰＵ２００は、入力した文字と同一の埋め込みフォント情報が存在すると判定した場合（ステップＳ２９０２でＹＥＳ）、フォント情報取得部９０２により該当する文字の埋め込みフォント情報を取得する。そして、フォント情報埋め込み部９０３により、その取得したフォント情報を入力された文字のフォント情報として編集ファイルの各種文書情報に埋め込む（ステップＳ２９０８）。そして、処理を終了する。
【０１６０】
この場合、入力された文字にのみ対して適正なフォントが埋め込まれたことになる。
【０１６１】
一方、ＣＰＵ２００は、入力した文字と同一の埋め込みフォント情報が存在しないと判定した場合（ステップＳ２９０２でＮＯ）、フォント情報取得部９０１により、ＲＡＭ２０２に保存されている編集ファイルの各種文書情報を取得する。そして、フォント情報解析部９０２により、入力した文字と同一ファイル内における文字の埋め込みフォント情報を解析する（ステップＳ２９０３）。
【０１６２】
ＣＰＵ２００は、入力した文字と同一の埋め込みフォント情報が存在するか否かを判定する（ステップＳ２９０４）。図６（Ａ）及び図９の例では、フォント種がポップ体の「ナ」の文字が同一ファイル内に存在するか判定する。ＣＰＵ２００は、入力した文字と同一の埋め込みフォント情報が存在すると判定した場合（ステップＳ２９０４でＹＥＳ）、フォント情報取得部９０２により該当する文字の埋め込みフォント情報を取得する。そして、フォント情報埋め込み部９０３により、その取得したフォント情報を入力された文字の情報として編集ファイルの各種文書情報に埋め込む（ステップＳ２９０８）。そして、処理を終了する。
【０１６３】
この場合も、入力された文字のみに対して適正なフォントが埋め込まれたことになる。
【０１６４】
尚、ステップＳ２９０４において、入力した文字と同一の埋め込みフォント情報がホストに存在するか否かを判定する際、フォント種が同一であった場合でもフォントフォーマットが異なる場合は同一の埋め込みフォント情報が存在しないと判定する。例えば、ファイルにＭａｃｉｎｔｏｓｈのフォントフォーマットのポップ体が埋め込まれており、ホストのＯＳがＷｉｎｄｏｗｓ（登録商標）であり、Ｗｉｎｄｏｗｓ（登録商標）のフォントフォーマットのポップ体のみが存在する場合である。
【０１６５】
ステップＳ２９０４で、ＣＰＵ２００は、入力した文字と同一の埋め込みフォント情報が存在しないと判定した場合（ステップＳ２９０４でＮＯ）、ファイルを検索する。具体的には、フォント情報取得部９０１により、ファイル格納部（例えば、ＨＤ２０５）で編集するファイルと同一の属性を持つファイルを検索する（ステップＳ２９０５）。より具体的には、ＨＤ２０５に格納されているファイル属性テーブル１０００（図１０）を参照し、編集ファイルの属性とファイル格納部に存在する図９に示す参照ファイル群のファイル属性を取得する。そして、同一の属性の有無を解析する。
【０１６６】
ここで、ファイル属性テーブル１０００について、図１０を用いて説明する。
【０１６７】
図１０は本発明の実施形態のファイル属性テーブルの一例を示す図である。
【０１６８】
ファイル属性テーブル１０００は、ファイルに関する情報を管理するテーブルであり、例えば、ＨＤ２０５上に保存されている。ここでは、図１０に示されるように、ファイル名、ファイルの作成者であるユーザ名、そのユーザの所属部門、所属会社名、文書タイプがファイル属性として管理されている。
【０１６９】
図５Ｃの説明に戻る。
【０１７０】
ＣＰＵ２００は、フォント情報取得部９０１により同一の属性の項目が多い順番でファイル内における文字の埋め込みフォント情報を解析する（ステップＳ２９０６）。
【０１７１】
ＣＰＵ２００は、入力した文字と同一の埋め込みフォント情報が存在するか否かを判定する（ステップＳ２９０７）。図６（Ａ）及び図９の例では、フォント種がポップ体の「ナ」の文字が参照ファイル内に存在するか判定する。ＣＰＵ２００は、入力した文字と同一の埋め込みフォント情報が存在すると判定した場合（ステップＳ２９０７でＹＥＳ）、フォント情報取得部９０１により該当する文字の埋め込みフォント情報を取得する。そして、フォント情報埋め込み部９０３により、その取得したフォント情報を入力された文字の情報として編集ファイルの各種文書情報に埋め込み（ステップＳ２９０８）。そして、処理を終了する。
【０１７２】
この場合も、入力された文字のみに対して適正なフォントが埋め込まれたことになる。
【０１７３】
尚、ステップＳ２９０７において、入力した文字と同一の埋め込みフォント情報がホストに存在するか否かを判定する際、フォント種が同一であった場合でもフォントフォーマットが異なる場合は同一の埋め込みフォント情報が存在しないと判定する。例えば、ファイルにＭａｃｉｎｔｏｓｈのフォントフォーマットのポップ体が埋め込まれており、ホストのＯＳがＷｉｎｄｏｗｓ（登録商標）であり、Ｗｉｎｄｏｗｓ（登録商標）のフォントフォーマットのポップ体のみが存在する場合である。
【０１７４】
ステップＳ２９０７において、ＣＰＵ２００は、入力した文字と同一の埋め込みフォント情報が存在しないと判定した場合（ステップＳ２９０７でＮＯ）、入力された文字のみの埋め込みができないため、図５ＤのステップＳ３００１以降の処理を実行する。
【０１７５】
ＣＰＵ２００は、ＲＡＭ２０２にロードされ実行している機能モジュールである、図１１のプリンタ情報取得部１１０１により、ネットワークＩ／Ｆ２０９で接続されている使用可能な印刷デバイスの印刷デバイス情報を取得する（ステップＳ３００１）。具体的には、ＨＤ２０５に格納されている印刷デバイス情報テーブル１２００（図１２）を参照し、必要な情報を印刷デバイス情報を取得する。この取得した印刷デバイス情報中のフォント情報を、フォント情報保存部１１０２により、印刷デバイス情報テーブル１２００に保存する。
【０１７６】
その後、ＣＰＵ２００は、印刷デバイス情報テーブル１２００に基づいて、各印刷デバイスから搭載フォント情報を取得する（ステップＳ３００２）。
【０１７７】
ここで、印刷デバイス情報テーブル１２００について、図１２を用いて説明する。
【０１７８】
図１２は本発明の実施形態の印刷デバイス情報テーブルの一例を示す図である。
【０１７９】
印刷デバイス情報テーブル１２００は、印刷デバイスに関する情報を管理するテーブルであり、例えば、ＨＤ２０５上に保存されている。ここでは、例えば、各種プリンタのプリンタ名、ＩＰアドレス、処理能力、対応用紙サイズ、フィニッシング機能（両面、コレート、ステイプル等）、給紙ユニット、フォント情報が印刷デバイス情報として管理されている。
【０１８０】
図５Ｄの説明に戻る。
【０１８１】
ＣＰＵ２００は、入力された文字と同一のフォントを搭載しているデバイスが存在するか否かを判定する（ステップＳ３００３）。図６（Ａ）の例では、ポップ体のフォントが印刷デバイスに搭載されているか否かを判定する。ＣＰＵ２００は、入力した文字と同一のフォントが印刷デバイスに搭載されていると判定した場合、プリンタ選択ダイアログ１３００（図１３）で、該当フォントを搭載している印刷デバイス情報を表示する（ステップＳ３００４）。
【０１８２】
ここで、プリンタ選択ダイアログ１３００について、図１３を用いて説明する。
【０１８３】
図１３は本発明の実施形態のプリンタ選択ダイアログの一例を示す図である。
【０１８４】
プリンタ選択ダイアログ１３００では、印刷デバイス情報によって特定されるプリンタに関する情報と、処理対象のプリンタに対する設定を行うためのボタンが構成されている。
【０１８５】
プリンタリスト１３０１は、印刷デバイス情報によって特定される各種プリンタの情報を表示する。オペレータは、このプリンタリスト１３０１から、所望のプリンタを選択することが可能である。
【０１８６】
「代替フォントの利用」ボタン１３０１は、処理対象の文字のフォントとして、代替フォントを利用する場合に押下する。
【０１８７】
「プリンタフォントの使用」ボタン１３０２は、処理対象の文字のフォントとして、プリンタリスト１３０１上で選択したプリンタのプリンタフォントを利用する場合に押下する。
【０１８８】
キャンセルボタン１３０４は、プリンタ選択ダイアログ１３００の表示を終了する場合に押下する。
【０１８９】
図５Ｄの説明に戻る。
【０１９０】
ＣＰＵ２００は、オペレータが、周辺装置を用いて条件を満たす印刷デバイスを使用することを選択したか否かを判定する（ステップＳ３００５）。この判定は、オペレータによるプリンタ選択ダイアログ１３００（図１３）に対する操作に基づいて判定する。特に、プリンタ選択ダイアログ１３００において、任意のプリンタを選択して「プリンタフォントの使用」ボタン１３０３を押下した場合は、条件を満たす印刷デバイスを使用することを選択したと判定する。そして、この場合は、ＣＰＵ２００は、入力された文字に対してフォント埋め込みの処理は行わず印刷デバイスのフォントを使用する設定を実行する（ステップＳ３００６）。そして、処理を終了する。
【０１９１】
一方、ステップＳ３００５において、「プリンタフォントの使用」ボタン１３０３が押下されない場合、ＣＰＵ２００は、オペレータが、周辺装置を用いて代替フォントの処理を行うことを選択したか否かを判定する（ステップＳ３００７）。この判定は、オペレータによる、プリンタ選択ダイアログ１３００（図１３）に対する操作に基づいて判定する。ここで、オペレータが、プリンタ選択ダイアログ１３００において、「キャンセル」ボタン１３０４を押下した場合は、処理を終了する。
【０１９２】
一方、ステップＳ３００７において、「代替フォントの利用」ボタン１３０２が押下された場合、図５ＥのステップＳ３１０１以降の処理を実行する。
【０１９３】
ＣＰＵ２００は、ＲＡＭ２０２にロードされ実行している機能モジュールである、図１４のフォント情報取得部１４０１により、入力文字情報テーブル７００を参照して、文字が入力された位置の前後の文字のフォント情報を取得する（ステップＳ３１０１）。フォント情報解析部１４０２により、ＨＤ２０５に格納されている、フォント類似テーブル１５００（図１５）を参照して解析する（ステップＳ３１０２）。
【０１９４】
ここで、フォント類似テーブル１５００について、図１５を用いて説明する。
【０１９５】
図１５は本発明の実施形態のフォント類似テーブルの一例を示す図である。
【０１９６】
フォント類似テーブル１５００は、フォント種とそれの代替とする代替フォント種の情報を管理するテーブルであり、例えば、ＨＤ２０５上に保存されている。ここでは、図１５に示されるように、代替を行う対象となるフォント種（対象フォント）と、実際の代替フォント（通常は、対象フォントに類似するフォント種となる）が管理されている。また、これに加えて、代替フォントに対するフォント埋め込みフラグの状態が管理されている。
【０１９７】
ステップＳ３１０２の処理の具体例としては、文字が入力された位置の前後の文字のフォント情報として「ポップ体」を取得し、「ポップ体」の類似フォントとして「ＡＢＣポップ体」が代替フォントとして埋め込み可能であるとの解析結果が得られる。そして、ＣＰＵ２００は、ＲＡＭ２０２上の入力文字代替フォントテーブル１６００（図１６）に、代替フォントとして「ＡＢＣポップ体」の情報を保存する。
【０１９８】
ここで、入力文字代替フォントテーブル１６００について、図１６を用いて説明する。
【０１９９】
図１６は本発明の実施形態の入力文字代替フォントテーブルの一例を示す図である。
【０２００】
入力文字代替フォントテーブル１６００は、ステップＳ３１０２の解析によって特定される代替フォント情報と、後述するフォント代替設定ダイアログ１７００（図１７）で設定されるフォント代替設定情報を管理するものである。この入力文字代替フォントテーブル１６００は、例えば、ＨＤ２０５上に保存されている。
【０２０１】
ここでは、図１６に示されるように、代替フォントのフォント種、代替対象となる対象文字、対象文字についての情報が管理されている。
【０２０２】
図５Ｅの説明に戻る。
【０２０３】
ＣＰＵ２００は、代替埋め込み対象となるフォントが存在するか否かを判定する（ステップＳ３１０３）。代替埋め込み対象となるフォントが存在しないと判定した場合（ステップＳ３１０３でＮＯ）、ＣＰＵ２００は、埋め込みフォントの処理を行わずフォント情報を設定する（ステップＳ３１０７）。そして、処理を終了する。
【０２０４】
ここでは、ステップＳ３１０２の解析結果から、入力文字代替フォントテーブル１６００に保存している「ＡＢＣポップ体」が代替埋め込み可能との結果が得られている。そのため、ＣＰＵ２００は、代替埋め込みを行うフォントとして「ＡＢＣポップ体」を選択する（ステップＳ３１０４）。
【０２０５】
ＣＰＵ２００は、フォント代替設定ダイアログ１７００（図１７）により、オペレータが予め設定したフォント代替設定の情報をＲＡＭ２０２から取得する。そして、そのフォント代替設定の情報に従い、一般的な構文解析技術により代替埋め込みを行う文字を特定する（ステップＳ３１０５）。
【０２０６】
ここで、フォント代替設定ダイアログ１７００について、図１７を用いて説明する。
【０２０７】
図１７は本発明の実施形態のフォント代替設定ダイアログの一例を示す図である。
【０２０８】
フォント代替設定ダイアログ１７００では、処理対象の文字に対するフォント代替設定を行うための設定項目が構成されている。
【０２０９】
項目１７０１は、複数種類のラジオボタンで構成されていて、これらのいずれか１つを選択することが可能となる。特に、この項目１７０１には、複数種類のフォント代替設定項目１７０１ａ〜１７０１ｆが構成されている。
【０２１０】
フォント代替設定項目１７０１ａは、処理対象の文字（追加文字）のみを、印刷デバイスに搭載されているフォントに代替するための項目である。
【０２１１】
フォント代替設定項目１７０１ｂは、処理対象の文字（追加文字）を含む単語と同一の文字列を対象ページ内で、印刷デバイスに搭載されているフォントに全て代替するための項目である。
【０２１２】
フォント代替設定項目１７０１ｃは、処理対象の文字（追加文字）を含む単語と同一の文字列を全ページ（ファイル内）内で、印刷デバイスに搭載されているフォントに全て代替するための項目である。
【０２１３】
フォント代替設定項目１７０１ｄは、処理対象の文字（追加文字）を含む単語と同一の文字列を対象ページ内で、印刷デバイスに搭載されているフォントに全て代替するための項目である。
【０２１４】
フォント代替設定項目１７０１ｅは、処理対象の文字（追加文字）を含む単語のテキストオブジェクトを、印刷デバイスに搭載されているフォントに全て代替するための項目である。
【０２１５】
フォント代替設定項目１７０１ｆは、対象とする文字列を選択して、その文字列を、印刷デバイスに搭載されているフォントに代替するための項目である。
【０２１６】
設定ボタン１７０２は、フォント代替設定ダイアログ１７００上の設定を確定するためのボタンである。このボタン１７０２を操作すると、フォント代替設定ダイアログ１７００上の設定がフォント代替設定の情報として、ＲＡＭ２０２に保存されることになる。キャンセルボタン１７０３は、フォント代替設定ダイアログ１７００上の設定をキャンセルするためのボタンである。
【０２１７】
以下、具体例を説明する。例えば、フォント代替設定ダイアログ１７００では、フォント代替設定項目１７０１ｃの「（Ｃ）追加文字を含む単語と同一の文字列を対象ページ内で全て代替する」が選択されている。ここで、図６（Ａ）の例では、構文解析により文字を入力した箇所の「ナ」の文字と同一のページ内の全ての「タカナ」の文字を代替埋め込みの対象とする。そして、ＲＡＭ２０２上の入力文字代替フォントテーブル１６００に対象文字として「タカナ」の情報を保存する。
【０２１８】
ここで、ステップＳ３１０５における構文解析及びフォント代替設定に関して、任意の文字を用いて補足説明する。
【０２１９】
例えば、図１８（Ａ）の文字列を構文解析した場合、文字を入力した「メ」を含めて「カメラ」を単語として判定する。また、図１８（Ｂ）の文字列を構文解析した場合、文字を入力した「ナ」を含めて「タカナ」と「ラーメン」を単語として判定する。図１８（Ｃ）の文字列を構文解析した場合、文字を入力した「ニ」を含めて「ゴウカ」と「ニラレバ」を単語として判定する。
【０２２０】
また、図１８（Ａ）、及びフォント代替設定ダイアログ１７００で、フォント代替設定項目１７０１ａの「（Ａ）追加文字のみを代替する」が選択されている場合、図１９（Ａ）〜（Ｃ）それぞれに示すように、「メ」の文字のみ代替埋め込みの対象とする。また、文字を入力した箇所の「メ」の文字のみ代替埋め込みの対象とする。
【０２２１】
また、図１８（Ａ）、及びフォント代替設定ダイアログ１７００で、フォント代替設定項目１７０１ｂの「（Ｂ）追加文字を含む単語のみを代替する」が選択されている場合、図２０（Ａ）〜（Ｃ）それぞれに示すように、「カメラ」を１つの単語と認識する。そして、「カメラ」の文字を代替埋め込みの対象とする。そして、文字を入力した箇所の「メ」の文字を含む「カメラ」のみ代替埋め込みの対象とする。
【０２２２】
また、図１８（Ａ）、及びフォント代替設定ダイアログ１７００で、フォント代替設定項目１７０１ｃの「（Ｃ）追加文字を含む単語と同一の文字列を対象ページ内で全て代替する」が選択されている場合、次のように処理する。つまり、図２０（Ａ）〜（Ｃ）それぞれに示すように、「カメラ」を１つの単語と認識し「カメラ」の文字を代替埋め込みの対象とする。そして、図２１（Ａ）に示すように、文字を入力した箇所の「メ」の文字を含む「カメラ」だけではなく、文字を入力した箇所の「メ」の文字と同一のページ内の「カメラ」も代替埋め込みの対象とする。
【０２２３】
また、図１８（Ａ）、及びフォント代替設定ダイアログ１７００で、フォント代替設定項目１７０１ｄの「（Ｄ）追加文字を含む単語と同一の文字列を全ページ（ファイル内）で全て代替する」が選択されている場合、次のように処理する。つまり、図２０（Ａ）〜（Ｃ）それぞれに示すように、「カメラ」を１つの単語と認識し「カメラ」の文字を代替埋め込みの対象とする。そして、図２１（Ｂ）に示すように、文字を入力した箇所の「メ」の文字を含む「カメラ」だけではなく、文字を入力した箇所の「メ」の文字と同一のファイル内（全ページ）の「カメラ」も代替埋め込みの対象とする。
【０２２４】
図１８（Ａ）、及びフォント代替設定ダイアログ１７００で、フォント代替設定項目１７０１ｅの「（Ｅ）追加文字を含む単語のテキストオブジェクトの文字列を全て代替する」が選択されている場合、次のように処理する。図２０（Ａ）〜（Ｃ）それぞれに示すように、「カメラ」を１つの単語と認識し「カメラ」の文字を代替埋め込みの対象とする。そして、図２２（Ａ）に示すように、文字を入力した箇所の「メ」の文字を含む「カメラ」だけではなく、文字を入力した箇所の「メ」の文字と同一のテキストオブジェクト内の全テキストも代替埋め込みの対象とする。
【０２２５】
図１８（Ａ）、及びフォント代替設定ダイアログ１７００で、フォント代替設定項目１７０１ｆの「（Ｆ）対象とする文字列を選択し代替する」が選択されている場合、次のように処理する。オペレータが周辺装置を用いて、図２２（Ｂ）のように任意の文字列を選択した場合、選択した文字を１つの単位と認識しその文字を代替埋め込みの対象とする。
【０２２６】
図５Ｅの説明に戻る。
【０２２７】
ＣＰＵ２００は、ＲＡＭ２０２に保存している入力文字代替フォントテーブル１６００（図１６）を参照し、フォント情報埋め込み部１５０３により対象とする文字に対する代替フォントを埋め込む（ステップＳ３１０６）。そして、処理を終了する。
【０２２８】
以上説明したように、本実施形態によれば、ホストに埋め込むべきフォントが存在しないあるいは存在の有無が不明な状況で文字編集作業を行った場合でも、該当するフォントの埋め込み処理を自動的に行うことができる。また、この埋め込み処理に加えて、該当するプリンタフォントの利用設定、最適な代替フォントの選択、埋め込み処理を自動的に行う。これにより、原稿の編集作業、印刷作業を効率的に行うことが可能となる。
【０２２９】
また、複数オペレータ間での代替フォントの指定に関して統一性を保つことが可能となるため、各オペレータに特別な知識、スキルを求める必要がなくなる。その結果、役割担当の自由度を向上させることが可能となる。
【０２３０】
尚、上記実施形態において、フォント設定処理を実行する（入力文字のフォント埋め込みフラグがＯＮである）場合には、最終的に実行された処理の処理結果をユーザに通知するダイアログを適宜表示することが、ユーザビリティの観点から好ましい。
【０２３１】
例えば、入力文字に対する埋め込みフォントを検索した場合には、その検索結果を示すダイアログを表示したり、代替フォントを検索した場合には、その検索結果を示すダイアログを表示することが好ましい。
【０２３２】
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０２３３】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【０２３４】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０２３５】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【０２３６】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスクがある。また、更に、記録媒体としては、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【０２３７】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、その接続先のホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０２３８】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０２３９】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。また、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【０２４０】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０２４１】
【図１】本発明の実施形態の印刷システムの全体構成を示す図である。
【図２】本発明の実施形態の端末の基本ハードウェア構成を示すブロック図である。
【図３】本発明の実施形態のＲＡＭのメモリマップの一例を示す図である。
【図４】本発明の実施形態の記憶メディアのメモリマップの一例を示す図である。
【図５Ａ】本発明の実施形態の印刷システムにおける文字編集処理を示すフローチャートである。
【図５Ｂ】本発明の実施形態の印刷システムにおける文字編集処理を示すフローチャートである。
【図５Ｃ】本発明の実施形態の印刷システムにおける文字編集処理を示すフローチャートである。
【図５Ｄ】本発明の実施形態の印刷システムにおける文字編集処理を示すフローチャートである。
【図５Ｅ】本発明の実施形態の印刷システムにおける文字編集処理を示すフローチャートである。
【図６】本発明の実施形態の文字編集例を説明するための図である。
【図７】本発明の実施形態の入力文字情報テーブルの一例を示す図である。
【図８】本発明の実施形態の処理設定ダイアログの一例を示す図である。
【図９】本発明の実施形態のシステムの機能構成を示す図である。
【図１０】本発明の実施形態のファイル属性テーブルの一例を示す図である。
【図１１】本発明の実施形態のシステムの機能構成を示す図である。
【図１２】本発明の実施形態の印刷デバイス情報テーブルの一例を示す図である。
【図１３】本発明の実施形態のプリンタ選択ダイアログの一例を示す図である。
【図１４】本発明の実施形態のシステムの機能構成を示す図である。
【図１５】本発明の実施形態のフォント類似テーブルの一例を示す図である。
【図１６】本発明の実施形態の入力文字代替フォントテーブルの一例を示す図である。
【図１７】本発明の実施形態のフォント代替設定ダイアログの一例を示す図である。
【図１８】本発明の実施形態の文字編集例を説明するための図である。
【図１９】本発明の実施形態の文字編集例を説明するための図である。
【図２０】本発明の実施形態の文字編集例を説明するための図である。
【図２１】本発明の実施形態の処理内容の概念を説明するための図である。
【図２２】本発明の実施形態の処理内容の概念を説明するための図である。
【図２３】文字編集例を説明するための図である。
【図２４】文字編集例を説明するための図である。
【図２５】文字編集に係るダイアログの一例を示す図である。
【図２６】文字編集例を説明するための図である。
【符号の説明】
【０２４２】
１０１  業務用ＰＣ
１０２  ノートＰＣ
１０３  ＷＥＢサーバ
１０４  ＤＢサーバ
１０５  サーバ
１０６  作業ＰＣ
１１１  モノクロプリンタ
１１２  カラープリンタ
１２１〜１２３  ＬＡＮ
１３１  ネットワーク
１４１、１４２  後工程デバイス
１５１  クライアント
１５２  サーバ
【図１】
2007220042.tif 000003
【図２】
2007220042.tif 000004
【図３】
2007220042.tif 000005
【図４】
2007220042.tif 000006
【図５Ａ】
2007220042.tif 000007
【図５Ｂ】
2007220042.tif 000008
【図５Ｃ】
2007220042.tif 000009
【図５Ｄ】
2007220042.tif 000010
【図５Ｅ】
2007220042.tif 000011
【図６】
2007220042.tif 000012
【図７】
2007220042.tif 000013
【図８】
2007220042.tif 000014
【図９】
2007220042.tif 000015
【図１０】
2007220042.tif 000016
【図１１】
2007220042.tif 000017
【図１２】
2007220042.tif 000018
【図１３】
2007220042.tif 000019
【図１４】
2007220042.tif 000020
【図１５】
2007220042.tif 000021
【図１６】
2007220042.tif 000022
【図１７】
2007220042.tif 000023
【図１８】
2007220042.tif 000024
【図１９】
2007220042.tif 000025
【図２０】
2007220042.tif 000026
【図２１】
2007220042.tif 000027
【図２２】
2007220042.tif 000028
【図２３】
2007220042.tif 000029
【図２４】
2007220042.tif 000030
【図２５】
2007220042.tif 000031
【図２６】
2007220042.tif 000032