(57)【要約】【課題】本発明の目的は、スペースが挿入され文字列の検索が難しい文書ファイルにおける検索を容易する仕組みを提供することである。【解決手段】文字列を含むデータから文書ファイル（例えば、ＰＤＦファイル）を生成する情報処理装置であって、前記データを描画するための文字幅を含む描画定義情報を記憶する記憶手段と、前記文書ファイルを表示した際に、文字間にスペースが挿入されない文字幅を設定する設定手段と、文字列を検索可能にすべく、前記設定手段により設定された文字幅で前記文字列を描画する第１の描画手段と、前記データを描画するために予め決定されている前記描画定義情報に含まれる文字幅で生成した文字列のイメージデータを描画する第２の描画手段と、前記第１の描画手段と、前記第２の描画手段とにより描画された文書ファイルを出力する出力手段とを備えることを特徴とする。【選択図】図１１
2018036908.tif 000002
【特許請求の範囲】
【請求項１】
文字列を含むデータから文書ファイルを生成する情報処理装置であって、
前記データを描画するための文字幅を含む描画定義情報を記憶する記憶手段と、
前記文書ファイルを表示した際に、文字間にスペースが挿入されない文字幅を設定する設定手段と、
文字列を検索可能にすべく、前記設定手段により設定された文字幅で前記文字列を描画する第１の描画手段と、
前記データを描画するために予め決定されている前記描画定義情報に含まれる文字幅で生成した文字列のイメージデータを描画する第２の描画手段と、
前記第１の描画手段と、前記第２の描画手段とにより描画された文書ファイルを出力する出力手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記描画定義情報は、文字ピッチを含み、
前記設定手段は、前記文字ピッチに基づいて決定された文字幅を設定することを特徴とする請求項１の情報処理装置。
【請求項３】
前記第１の描画手段は、描画した文字列をユーザが認識しづらくするように、白又は白に近似した色情報を用いて描画し、
前記第２の描画手段は、前記描画定義情報に含まれる色情報を用いて描画することを特徴とする請求項１又は請求項２に記載の情報処理装置。
【請求項４】
フォームを用いた描画する第３の描画手段を更に備え、
前記第１の描画手段による描画、前記第３の描画手段による描画、前記第２の描画手段による描画の順に描画を実行することを特徴とする請求項１乃至請求項３のいずれか１項に記載の情報処理装置。
【請求項５】
前記第１の描画手段と、前記第２の描画手段とにより描画された文書ファイルはＰＤＦファイルであることを特徴とする請求項１乃至請求項４のいずれか１項に記載の情報処理装置。
【請求項６】
文字列を含むデータから文書ファイルを生成する、前記データを描画するための文字幅を含む描画定義情報を記憶する記憶手段を備える情報処理装置の処理方法であって、
前記文書ファイルを表示した際に、文字間にスペースが挿入されない文字幅を設定する設定ステップと、
文字列を検索可能にすべく、前記設定ステップにより設定された文字幅で前記文字列を描画する第１の描画ステップと、
前記データを描画するために予め決定されている前記描画定義情報に含まれる文字幅で生成した文字列のイメージデータを描画する第２の描画ステップと、
前記第１の描画ステップと、前記第２の描画ステップとにより描画された文書ファイルを出力する出力ステップと
を含むことを特徴とする処理方法。
【請求項７】
文字列を含むデータから文書ファイルを生成する、前記データを描画するための文字幅を含む描画定義情報を記憶する記憶手段を備える情報処理装置のプログラムであって、
前記情報処理装置を
前記文書ファイルを表示した際に、文字間にスペースが挿入されない文字幅を設定する設定手段と、
文字列を検索可能にすべく、前記設定手段により設定された文字幅で前記文字列を描画する第１の描画手段と、
前記データを描画するために予め決定されている前記描画定義情報に含まれる文字幅で生成した文字列のイメージデータを描画する第２の描画手段と、
前記第１の描画手段と、前記第２の描画手段とにより描画された文書ファイルを出力する出力手段
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
文書ファイルを出力する情報処理装置とその処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、文書ファイルには、ＰＤＦファイルを用いることが多くなっている。
【０００３】
このＰＤＦファイルは、例えば、メインフレームで生成される印刷データ（ホストデータ）をフォームと合成してＰＤＦファイルとして帳票出力することが行われるようになっている。
【０００４】
ＰＤＦファイルは、例えば、Ａｄｏｂｅ（登録商標）社製Ａｄｏｂｅ  Ｒｅａｄｅｒ等のビューアを利用して表示でき、このビューアを用いてＰＤＦファイルを閲覧することが一般的となっている。
ビューアにおいて、検索時にユーザが入力した文字列がヒットしないことがあるため、適切にヒットするような技術が開示されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−１７１４００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１のようにスペースを挿入することで逆にヒットしないことや、スペースを入れることによって体裁が変わることが発生するため、望ましい形態とならない場合がある。
【０００７】
また、検索の結果ヒットしない理由として、データ自体にスペースが入っていないものの、ビューアがＰＤＦファイルを表示する際に、体裁を整えて表示するため、文字と文字（特に半角）の間に自動でスペースを入れて表示してしまうことがある。
【０００８】
このため、検索文字としてスペースを入れずに検索を実行してしまうと、ビューア上ではスペースが入っているため、検索にヒットしないという問題が発生する。
【０００９】
そこで、本発明の目的は、スペースが挿入され文字列の検索が難しい文書ファイルにおける検索を容易する仕組みを提供することである。
【課題を解決するための手段】
【００１０】
本発明の目的を達成するための文字列を含むデータから文書ファイルを生成する情報処理装置であって、前記データを描画するための文字幅を含む描画定義情報を記憶する記憶手段と、前記文書ファイルを表示した際に、文字間にスペースが挿入されない文字幅を設定する設定手段と、文字列を検索可能にすべく、前記設定手段により設定された文字幅で前記文字列を描画する第１の描画手段と、前記データを描画するために予め決定されている前記描画定義情報に含まれる文字幅で生成した文字列のイメージデータを描画する第２の描画手段と、前記第１の描画手段と、前記第２の描画手段とにより描画された文書ファイルを出力する出力手段とを備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、スペースが挿入され文字列の検索が難しい文書ファイルにおける検索を容易することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態に係るＰＤＦ生成システムの構成の一例を示すブロック図である。
【図２】ＰＤＦ生成サーバー１０３のハードウェア構成の一例を示すブロック図である。
【図３】ＰＤＦ生成サーバー１０３の機能構成の一例を示すブロック図である。
【図４】出力処理に係る全体の流れを示すフローチャートの一例を示す図である。
【図５】文字列印字処理を示すフローチャートの一例を示す図である。
【図６】ページ描画処理を示すフローチャートの一例を示す図である
【図７】印刷定義３０６の一例を示す図である。
【図８】フォーム定義３０７の一例を示す図である。
【図９】ＰＤＦファイルを生成する元となる入力データの一例を示す図である。
【図１０】フォームオーバレイ印刷された結果（ＰＤＦファイル）のイメージを示す図である。
【図１１】図５の処理の一例を示すイメージ図である。
【図１２】図６の処理の一例を示すイメージ図である。
【図１３】印字属性の一例を示す図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
【００１４】
図１は、本発明の実施の形態に係るＰＤＦ生成システムの概略構成を示すブロック図である。同図に示す如く、本実施の形態に係るＰＤＦ生成システムは、ホストコンピューター１０１と、ＵＮＩＸ（登録商標）サーバー１０２と、ＰＤＦ生成サーバー１０３と、クライアントＰＣ１０４と、これらを互いに接続するネットワーク１０５とにより構成されている。
【００１５】
ホストコンピューター１０１及びＵＮＩＸ（登録商標）サーバー１０２は、メインフレームやサーバー等により構成されており、ＰＤＦ生成対象のデータ（ＰＤＦ生成ジョブ）を作成するためのアプリケーションを保持している。ホストコンピューター１０１（若しくはＵＮＩＸ（登録商標）サーバー１０２）の操作者がこのアプリケーションを用いてＰＤＦ生成対象のデータを作成する。その後、このＰＤＦ生成対象のデータをＰＤＦに変換する旨の指示が入力された場合には、当該印刷対象のデータは、ネットワーク１０５を介してＰＤＦ生成サーバー１０３に送出される。
【００１６】
なお、印刷対象のデータを作成し、ＰＤＦ生成サーバー１０３に対して当該データを送出可能な装置であれば、ホストコンピューター１０１、ＵＮＩＸ（登録商標）サーバー１０２以外の装置を用いてもよく、その台数や装置の種類などについて限定するものではない。
【００１７】
ＰＤＦ生成サーバー１０３は、外部（本実施の形態ではホストコンピューター１０１やＵＮＩＸ（登録商標）サーバー１０２）から印刷対象データを受信し、これをＰＤＦに変換する処理を行うものである。ＰＤＦ生成サーバー１０３が行う処理については後述する。なお、ＰＤＦ生成サーバー１０３は、文字列を含むデータから文書ファイルを生成する情報処理装置と言い換えることが可能である。
【００１８】
クライアントＰＣ１０４は、ＰＤＦ生成サーバー１０３の状況を監視し、クライアントＰＣ１０４が有する表示装置（不図示）の表示画面上にその監視した状況が適宜表示される。ＰＤＦ生成サーバー１０３における処理状況やＰＤＦ生成結果などについては、当該ＰＤＦ生成サーバー１０３が適宜クライアントＰＣ１０４に対して送信しているので、クライアントＰＣ１０４は受信した処理状況やＰＤＦ生成結果などを表示装置の表示画面上に表示する処理を行う。また、クライアントＰＣ１０４は、ホストコンピューター１０１やＵＮＩＸサーバー１０２と同様に、ＰＤＦ生成対象データを作成してＰＤＦ生成サーバー１０３に対して送出してもよい。
【００１９】
ネットワーク１０５は、インターネット、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、電話回線、専用デジタル回線、ＡＴＭやフレームリレー回線、通信衛星回線、ケーブルテレビ回線、データ放送用無線回線等のいずれか、若しくはその組み合わせにより構成されているものであり、上述した各装置間におけるデータ通信を実現するものである。ネットワーク１０５は無線、有線は特には問わない。
【００２０】
図２は、図１のＰＤＦ生成サーバー１０３のハードウェア構成を示すブロック図である。本実施の形態において、ホストコンピューター１０１、ＵＮＩＸ（登録商標）サーバー１０２、及びクライアントＰＣ１０４は、ＰＤＦ生成サーバー１０３と同様の構成を有しているものとする。なお、以下説明する各処理が実現可能で有れば、これに限定されるものではない。
【００２１】
図２において、ＣＰＵ２１は、ＲＡＭ２２やＲＯＭ２３に格納されているプログラムやデータを用いて、ＰＤＦ生成サーバー１０３全体の制御を行うと共に、本コンピューターが行う後述の各処理を実行する。
【００２２】
ＲＡＭ２２は、ハードディスク２８やＣＤ−ＲＯＭドライブ２９からロードされたプログラムやデータ、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）２４を介して外部から入力されたプログラムやデータを一時的に記憶するためのエリア、ＣＰＵ２１が各種の処理を実行する際に用いるワークエリア等のエリアを適宜提供することができる。ＲＯＭ２３は、ＰＤＦ生成サーバー１０３の設定データやブートプログラムなどを格納する。
【００２３】
ＮＩＣ２４は、ＰＤＦ生成サーバー１０３をネットワーク１０５に接続するためのインターフェースとして機能するものである。ＰＤＦ生成サーバー１０３は、ＮＩＣ２４を介してネットワーク１０５に接続されている各種装置とのデータ通信を行うことができる。
【００２４】
入力部２６はキーボードであり、入力部２７はマウスである。これらはＰＤＦ生成サーバー１０３の操作者が操作することで各種の指示をＣＰＵ２１に対して行うことができる。なお、図示の構成をホストコンピューター１０１、ＵＮＩＸ（登録商標）サーバー１０２、及びクライアントＰＣ１０４等に適用した場合、操作者は入力部２６，２７を用いてアプリケーションを操作し、印刷対象データを作成することになる。
【００２５】
ハードディスク２８は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）やＰＤＦ生成サーバー１０３等が行うべき後述の各処理をＣＰＵ２１に実行させるためのプログラムやデータが保存されている。これらのプログラムやデータは、ＣＰＵ２１による制御に従って適宜ＲＡＭ２２にロードされる。
【００２６】
ＣＤ−ＲＯＭドライブ２９は、ＣＤ−ＲＯＭに記録されているプログラムやデータを読み出し、ハードディスク２８やＲＡＭ２２等に出力する。なお、ハードディスク２８に保存されている各種プログラムやデータの一部をＣＤ−ＲＯＭに記録しておき、記録されたプログラムやデータをＣＤ−ＲＯＭドライブ２９によって適宜ＲＡＭ２２にロードするようにしてもよい。また、本実施の形態では、記憶媒体の一例としてＣＤ−ＲＯＭを用いているが、これに限定されず、本実施の形態に適用可能な記憶媒体であればよい。
【００２７】
システムバス２０は、例えば、ＰＣＩバス、ＡＧＰバス、メモリバス等により構成されている。なお、同図では、各バス間の接続用チップやキーボードインタフェース、いわゆるＳＣＳＩやＡＴＡＰＩのような入出力用インターフェースは省略されている。
【００２８】
図３は、ＰＤＦ生成サーバー１０３の機能構成を示すブロック図である。
図３において、データ受信フォルダ３０１は、ホストコンピューター１０１から転送された印刷データを受信して格納する。
【００２９】
データ監視手段３０２は、データ受信フォルダ３０１を監視して印刷データの受信が終了したと判断した場合、印刷データをデータ受信フォルダ３０１からデータ保存フォルダ３０４へ移し、データ管理手段３０３へ新規に印刷データを受信したことを通知する。
【００３０】
データ管理手段３０３は、データ保存フォルダ３０４中の印刷データを管理し、ユーザから指示があった場合にはデータ変換手段３０５へ印刷データの変換指示を行う。
【００３１】
データ変換手段３０５は、データ管理手段３０３から変換指示を受け取ると、印刷定義３０６、フォーム定義３０７を参照し、ＰＤＦ変換プリンタードライバーを経由しＰＤＦファイルへの変換処理を行う。印刷定義３０６とは、印刷を行う際に使用する用紙のサイズ・向きと印刷データ中に指定された文字列を印字する際の文字ピッチや行ピッチ、フォントを定義した情報であり、図７に示す情報（印刷定義情報）を保持する。また、図７の印刷定義情報と、印刷データに含まれる描画情報（文字色など）に基づいて、図１３の印字属性が決定される。図７のフォント７０６に対応してフォント高さ、フォント幅が決定される。不図示のフォントごとに高さ、幅が決定されるテーブルを有している。文字ピッチも図７や図９のデータから取得し決定できるものとする。
【００３２】
この印字属性に基づいて、本実施形態の特徴的な処理が実現できる。印字属性はデータを描画するための文字幅を含む描画定義情報と言い換えることが可能である。またこの描画定義情報は、記憶手段としてのハードディスク２８やＲＡＭ２２に記憶されている。
フォーム定義３０７とは、印刷データと重ね合わせを行う表における罫線やロゴ等を定義したフォームオーバーレイ情報であり、図８に示す情報を持つ。
【００３３】
次に、本実施形態における処理の詳細な説明を行う。
図４、図５、図６は、図３のデータ変換手段３０５により実行される文字の出力処理のフローチャートの一例を示す図である。
【００３４】
まず、図４のフローチャートについて説明する。なお、図４は、出力処理に係る全体の流れを示すフローチャートであり、各ステップは、ＣＰＵ２１が実行するものとして説明する。
【００３５】
ステップＳ４０１において、データ変換手段３０５は、データ管理手段３０３から印刷データの変換指示を受け取ると、データ保存フォルダ３０４中の印刷データの解析を開始するためファイルをオープンする。
【００３６】
ステップＳ４０２において、データ変換手段３０５は、ＰＤＦの生成を行うために、ＰＤＦプリンタドライバーを選択しデバイスコンテキスト（以降プリンタドライバＤＣと呼ぶ）の取得処理を行う。
【００３７】
ステップＳ４０３において、データ変換手段３０５は、入力ファイルから１バイトデータを読み込み、ステップＳ４０４で入力ファイルがファイルの終端（ＥＯＦ）かどうかを判定する。ＥＯＦでない場合、ステップＳ４０３からステップＳ４１４まで処理が繰り返し実行される。
【００３８】
ステップＳ４０５において、データ変換手段３０５は、ステップＳ４０３で読み込んだデータの内容によって処理の分岐を行う。制御命令の先頭コード（例えば、図９の９０１）であればステップＳ４０６に遷移し、文字データ（例えば、図９の９０２）であればステップＳ４１３に遷移する。
ステップＳ４０６では入力ファイルから制御命令の末端までデータ（例えば、図９の９０３）の読み込みを行う。
【００３９】
ステップＳ４０７において、データ変換手段３０５は、読み込まれた制御命令が改ページが必要かどうかを判定し、改ページが必要であればステップＳ４０８に遷移し、改ページが不要であればステップＳ４０９に遷移する。
ステップＳ４０８において、データ変換手段３０５は、改ページの処理を行う。具体的な処理は図６のフローチャートで後述する。
【００４０】
ステップＳ４０９において、データ変換手段３０５は、命令の種別を判定する。印刷定義を指示する命令であればステップＳ４１０に、フォーム定義を指示する命令（どのフォーム定義を使用するかの指示）であればＳ４１１に、その他の命令であればＳ４１２に遷移する。
ステップＳ４１０において、データ変換手段３０５は、プログラム内部で管理している印字に関する属性テーブル（図１３）を更新する処理を行う。
ステップＳ４１１において、データ変換手段３０５は、指定されたフォームをフォーム定義３０７から読み込み、フォーム用ＥＭＦに描画する。
【００４１】
ステップＳ４１２において、データ変換手段３０５は、印字制御に関する命令、フォーム指示命令以外の命令の場合の処理で、それぞれの命令に応じた処理を実施する。
【００４２】
ステップＳ４１３において、データ変換手段３０５は、ステップＳ４０３で読み込んだデータが文字データの場合の処理で、文字列を生成する処理である。入力ファイルから制御命令の先頭コードや空白文字が現れるまで読み込みを継続し印字する文字列を決定する。本処理において空白文字も文字列として扱っても良い。
ステップＳ４１４ではステップＳ４１３で読み込んだ文字列を印字する処理である。具体的な処理は図５のフローチャートで後述する。
【００４３】
ステップＳ４１５は入力ファイルの読み込みが完了した場合にループから抜けて呼び出される処理であり、描画されたデータを出力する。具体的には、ＰＤＦドライバーに対して描画されるジョブの完了（出力）を指示することにより、ＰＤＦファイルが出力される処理である。すなわち、第１の描画手段と、第２の描画手段とにより描画された文書ファイルを出力する出力手段の一例を示すものである。
ＰＤＦファイルの生成の詳細は既知の技術であるため説明を省略する。
ステップＳ４１６では処理の最後に入力ファイルをクローズする処理を行う。
【００４４】
次に、図５のフローチャートを用いて、図４のステップＳ４１４の詳細な説明を行う。図５は、文字列印字処理の一例を示すフローチャートである。
【００４５】
図５の処理を行うことで、表示用の文字と、検索用の文字を作成して、ＰＤＦファイル内の内容として埋め込まれるように描画できるため、体裁を変えることなく、文字列の検索を行えるようになる。
【００４６】
ステップＳ５０１では、印字する属性を取得する処理であり、印字属性は図１３に記載した内容を保持している。印字属性としては、書体名、フォント高さ、フォント幅、文字色、文字ピッチ、印字位置の情報を有している。この印字属性に基づき、文字列を描画する制御を行う。
【００４７】
ステップＳ５０２では、文字列検索用のテキストを印字するために使用するフォントを作成する。ここでは印刷属性のフォント幅を文字ピッチと同じ値にセットする。これにより、ビューアで表示した際にスペースが挿入されないため、検索文字列にスペースを入れなくても、検索によるヒットが可能となる。
【００４８】
本実施形態では、ビューアでＰＤＦファイルを表示した際にスペースが挿入されないようにするため、フォント幅を文字ピッチと同じ値に設定したが、同じ値でなくても近い値であればスペースは挿入されないため、同じ値に限定することはない。すなわち文字間にスペースが挿入されない値であれば何れの値でもよい。例えば、文字ピッチを文字と文字の間隔を示す情報であれば、「２０（幅）＋４０（ピッチ）」の値をフォント幅に設定するようにする。すなわち、文書ファイルを表示した際に、文字間にスペースが挿入されない文字幅を設定する設定手段の一例を示すものである。
【００４９】
また、実際に見えるテキストが表示される位置に描画されるため、検索のヒット結果の表示（ハイライト表示）も適切な位置に表示されるため、検索時の違和感も低減することができる。
ステップＳ５０３では、ＰＤＦファイル生成後に、ビューアで表示した場合、文字が見えないようにするため、文字色を白又は白に近似する色にセットする。
【００５０】
ステップＳ５０４では、セットした印刷属性に従って、文字列を検索文字列用ＥＭＦに文字列として描画する。文字列として描画するＡＰＩとしてはＥｘｔＴｅｘｔＯｕｔやＴｅｘｔＯｕｔなどが存在する。すなわち、文字列を検索可能にすべく、設定された文字幅で文字列を描画する第１の描画手段の一例を示すものである。また、描画した文字列をユーザが認識しづらくするように、白又は白に近似した色情報を用いて描画するものである。
【００５１】
ステップＳ５０５では、ＰＤＦファイルで実際に目に見えるテキストを印字するためのフォントを作成する。ここでは、文字幅は印字属性で定義された通りの幅でフォントを作成する。フォントは印刷定義（図７）で指定されたフォントを用いるものとする。
【００５２】
ステップＳ５０６では、文字色をセットする処理を行う。ここでは予め決定されている印字属性（図１３）で指定された色にセットする。なお、フォント情報は図９の入力ファイルのデータ内に記憶されている構成であってもよい。また、入力ファイルから印字属性の文字色を取得し、セットしてもよい。
【００５３】
ステップＳ５０７では、データ用ＥＭＦに文字列をイメージで描画する処理である。描画する文字列は検索対象としない（ビューアで２重で検索されないようにする）ためにイメージで描画する。なお、２重で検索されないようにするためイメージ描画することが望ましいが、表示用のデータについても文字列として描画するようにしてもよい。すなわち、データを描画するために予め決定されている描画定義情報に含まれる文字幅で生成した文字列のイメージデータを描画する第２の描画手段の一例を示すものである。また、描画定義情報に含まれる色情報を用いて描画するものである。
【００５４】
ここで、図１１を用いて、検索文字列の描画（第１の描画）と、表示用文字列の描画（第２の描画）について説明する。図１１は、図５の処理の一例を示すイメージ図である。
【００５５】
例えば、文字間隔の空いている「112345」（半角）という文字列を、フォント幅を印字属性で指定された文字ピッチと同じ値にセット、文字色を白にセットして描画する。（１１０１の処理：ステップＳ５０２〜ステップＳ５０４の処理）
【００５６】
１１１０に示す文字列が、１１１１で示す文字列で描画される。すなわち、文字幅を倍に伸ばした形で（全角のように）描画される。この場合、文字間隔が空かないため、ビューアが自動でスペースを入れることがなくなり、ユーザが検索キーワードとして設定した通りに検索が可能となる。
本来、本処理では文字を白にしているためここで描画した文字列はユーザには見えないが、説明上、文字を薄く表示している。
【００５７】
その後、体裁を変更しないようにするため、フォント幅を印字属性で指定されたままの幅を使用し、文字色も印字属性で指定された色にセットして描画する。（１１０２の処理：ステップＳ５０５〜ステップＳ５０７の処理）
【００５８】
次に、図６のフローチャートを用いて、図４のステップＳ４０８の詳細な説明を行う。図６は、ページ描画処理の一例を示すフローチャートである。
【００５９】
ステップＳ６０１では、図５のステップＳ５０４で文字列を描画した文字列検索用ＥＭＦを、図４のステップＳ４０２で取得したプリンタドライバＤＣに描画する処理を行う。
【００６０】
ステップＳ６０２では、該当ページにフォームオーバレイが指示されているかどうかを判別し、フォームオーバレイがあればステップＳ６０３に、フォームオーバレイがなければステップＳ６０４に遷移する。なお、フォームオーバレイが指定されていることは、図９のフォーム定義指定９０３があるか否かで判定する。
【００６１】
ステップＳ６０３では図４のステップＳ４１１で生成されたフォーム用ＥＭＦ（図８）を取得し、プリンタドライバＤＣに描画する処理を行う。フォームを用いた描画する第３の描画手段の一例を示すものである。
【００６２】
ステップＳ６０４では、図５のステップＳ５０７で文字をイメージで描画したデータ用ＥＭＦをプリンタドライバＤＣに描画する処理を行う。図９の印刷データ（入力データ）と図８のフォームデータを用いてフォームオーバレイ印刷された結果（ＰＤＦファイルのイメージ）を示す図が図１０である。
【００６３】
なお、ステップＳ６０１、ステップＳ６０３、ステップＳ６０４の順に描画することで、検索用の文字列が前面に表示されないようになるため、ＰＤＦファイルをビューアで表示した場合に、ユーザにとって体裁に変更がないように見える。
すなわち、第１の描画手段による描画、第３の描画手段による描画、第２の描画手段による描画の順に描画を実行するものである。
【００６４】
ここで、図１２を用いて、フォームオーバレイ印刷処理について説明する。図１２は、図６の処理の一例を示すイメージ図である。
文字列検索用ＥＭＦ１２０１と、フォーム用ＥＭＦ１２０２と、データ用ＥＭＦ１２０３を描画する処理を示している。
【００６５】
まず、文字列検索用ＥＭＦ１２０１の描画（第１の描画）を行い、次にフォーム用ＥＭＦ１２０２の描画（第３の描画）を行う。最後に、データ用ＥＭＦ１２０３の描画（第２の描画）を行う。１２０１．文字列検索用ＥＭＦ、１２０２．フォーム用ＥＭＦ、１２０３．データ用ＥＭＦを順に描画し、実際にＰＤＦに描画された例を示している（１２０４）。
【００６６】
文字列検索用ＥＭＦを初めに描画するのは、フォーム用ＥＭＦを描画した後に描画すると文字列検索用のデータ（白）が背景上に浮き出て見えることを防ぐためである。
これにより、ＰＤＦファイルが生成される。この描画結果を１２０４に示す。
文字列検索用ＥＭＦ１２０１に記載された文字列は、実際は白色で描画するため文字列はユーザには見えないが、説明上、文字を薄く表示している。
【００６７】
本実施形態では、半角文字であった場合に、本処理を実行するように構成したが、全角文字であっても文字ピッチがスペースが挿入される幅の文字ピッチであった場合にも、上述した処理を実行するようにしてもよい。すなわち、半角文字に限定されるものではない。
以上で本実施形態の詳細な説明を終了する。
【００６８】
本実施形態によれば、スペースが挿入され文字列の検索が難しい文書ファイルにおける検索を容易することができる
【００６９】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
【００７０】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
【００７１】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク等を用いることが出来る。
【００７２】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７３】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７４】
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【００７５】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【００７６】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【００７７】
１０１  ホストコンピューター
１０２  ＵＮＩＸサーバー
１０３  ＰＤＦ生成サーバー
１０４  クライアントＰＣ
１０５  ネットワーク
【図１】
2018036908.tif 000003
【図２】
2018036908.tif 000004
【図３】
2018036908.tif 000005
【図４】
2018036908.tif 000006
【図５】
2018036908.tif 000007
【図６】
2018036908.tif 000008
【図７】
2018036908.tif 000009
【図８】
2018036908.tif 000010
【図９】
2018036908.tif 000011
【図１０】
2018036908.tif 000012
【図１１】
2018036908.tif 000013
【図１２】
2018036908.tif 000014
【図１３】
2018036908.tif 000015