(57)【要約】【課題】空白文字、句読点等の特定の文字が存在していても、埋め込まれるテキストデータの文字画像との位置ずれやサイズの不揃い等の問題を解消できるテキストデータの埋め込み装置等を提供する。【解決手段】文字認識処理部１９により認識された各文字の中から特定の文字が検出された場合は、該特定の文字の１文字前の文字または１文字後の文字のサイズ及び位置情報を用いて、前記特定の文字のサイズ及び位置を決定し、出力ファイルに埋め込む。【選択図】  図２
2015103114.tif 000002
【特許請求の範囲】
【請求項１】
画像を読み取る読み取り手段で読み取られた画像に対して文字認識処理を行う文字認識手段と、
前記文字認識処理により認識された各文字のテキストデータを、前記読み取り手段の出力ファイルに埋め込む際に、埋め込まれる前記テキストデータのサイズ及び位置を決定する決定手段と、
前記決定手段により決定されたサイズ及び位置に基づいて、前記テキストデータを前記出力ファイルに埋め込む埋め込み手段と、
前記文字認識処理により認識された各文字の中から特定の文字を検出する特定文字検出手段と、
を備え、
前記特定文字検出手段により前記特定の文字が検出された場合は、前記決定手段は、該特定の文字の１文字前の文字または１文字後の文字のサイズ及び位置情報を用いて、前記特定の文字のサイズ及び位置を決定することを特徴とするテキストデータの埋め込み処理装置。
【請求項２】
前記特定の文字は空白文字である請求項１に記載のテキストデータの埋め込み処理装置。
【請求項３】
前記空白文字の前後に文字が存在しない場合、該空白文字を削除する請求項２に記載のテキストデータの埋め込み処理装置。
【請求項４】
前記空白文字が行頭に存在する場合は、該空白文字を削除する請求項２または３に記載のテキストデータの埋め込み処理装置。
【請求項５】
前記特定の文字は句読点、カンマ、ドットの少なくともいずれかである請求項１に記載のテキストデータの埋め込み処理装置。
【請求項６】
前記文字の言語が全角文字を含む２バイト文字の言語である場合に限り、前記決定手段は、該特定の文字の１文字前の文字または１文字後の文字のサイズ及び位置情報に基づいて、前記特定の文字のサイズ及び位置を決定する請求項１〜５のいずれかに記載のテキストデータの埋め込み処理装置。
【請求項７】
画像を読み取る読み取り手段で読み取られた画像に対して文字認識処理を行う文字認識手段と、
前記文字認識処理により認識された文字列を、予め設定された規則に従って複数の文字グループに区切る文字列区切り手段と、
前記文字認識処理により認識された各文字のテキストデータを、前記読み取り手段の出力ファイルに埋め込む埋め込み手段と、
前記文字認識処理により認識された各文字の中から特定の文字を検出する特定文字検出手段と、
前記特定文字検出手段により検出された特定文字の位置を判定する判定手段と、
を備え、
前記特定文字検出手段により前記特定の文字が検出され、かつ前記判定手段により検出された特定文字の位置が前記文字列区切り手段により区切られた文字グループの先頭でかつ行頭でないと判定された場合は、前記埋め込み手段は、前記特定の文字をその前の文字グループの最後に連結させて埋め込むことを特徴とするテキストデータの埋め込み処理装置。
【請求項８】
前記文字列区切り手段は、文字数、空白文字、句読点、カンマ、ドットの少なくともいずれかに基づいて、各行の文字列を複数の文字グループに区切る請求項７に記載のテキストデータの埋め込み処理装置。
【請求項９】
画像を読み取る読み取り手段と、請求項１〜８のいずれかに記載のテキストデータの埋め込み処理装置とを備えた画像処理装置。
【請求項１０】
画像を読み取る読み取り手段で読み取られた画像に対して文字認識処理を行う文字認識ステップと、
前記文字認識処理により認識された各文字のテキストデータを、前記読み取り手段の出力ファイルに埋め込む際に、埋め込まれる前記テキストデータのサイズ及び位置を決定する決定ステップと、
前記決定ステップにより決定されたサイズ及び位置に基づいて、前記テキストデータを前記出力ファイルに埋め込む埋め込みステップと、
前記文字認識処理により認識された各文字の中から特定の文字を検出する特定文字検出ステップと、
を備え、
前記特定文字検出ステツプにより前記特定の文字が検出された場合は、前記決定ステップでは、該特定の文字の１文字前の文字または１文字後の文字のサイズ及び位置情報を用いて、前記特定の文字のサイズ及び位置を決定することを特徴とするテキストデータの埋め込み処理方法。
【請求項１１】
画像を読み取る読み取り手段で読み取られた画像に対して文字認識処理を行う文字認識ステップと、
前記文字認識ステップにより認識された文字列を、予め設定された規則に従って複数の文字グループに区切る文字列区切りステップと、
前記文字認識処理により認識された各文字のテキストデータを、前記読み取り手段の出力ファイルに埋め込む埋め込みステップと、
前記文字認識処理により認識された各文字の中から特定の文字を検出する特定文字検出ステップと、
前記特定文字検出ステップにより検出された特定文字の位置を判定する判定ステップと、
を備え、
前記特定文字検出ステップにより前記特定の文字が検出され、かつ前記判定ステップにより検出された特定文字の位置が前記文字列区切りステップにより区切られた文字グループの先頭でかつ行頭でないと判定された場合は、前記埋め込みステップでは、前記特定の文字をその前の文字グループの最後に連結させて埋め込むことを特徴とするテキストデータの埋め込み処理方法。
【請求項１２】
画像を読み取る読み取り手段で読み取られた画像に対して文字認識処理を行う文字認識ステップと、
前記文字認識処理により認識された各文字のテキストデータを、前記読み取り手段の出力ファイルに埋め込む際に、埋め込まれる前記テキストデータのサイズ及び位置を決定する決定ステップと、
前記決定ステップにより決定されたサイズ及び位置に基づいて、前記テキストデータを前記出力ファイルに埋め込む埋め込みステップと、
前記文字認識処理により認識された各文字の中から特定の文字を検出する特定文字検出ステップと、
をテキストデータの埋め込み処理装置のコンピュータに実行させ、さらに、
前記特定文字検出ステツプにより前記特定の文字が検出された場合は、前記決定ステップでは、該特定の文字の１文字前の文字または１文字後の文字のサイズ及び位置情報を用いて、前記特定の文字のサイズ及び位置を決定する処理を、前記コンピュータに実行させるためのテキストデータの埋め込み処理方法。
【請求項１３】
画像を読み取る読み取り手段で読み取られた画像に対して文字認識処理を行う文字認識ステップと、
前記文字認識ステップにより認識された文字列を、予め設定された規則に従って複数の文字グループに区切る文字列区切りステップと、
前記文字認識処理により認識された各文字のテキストデータを、前記読み取り手段の出力ファイルに埋め込む埋め込みステップと、
前記文字認識処理により認識された各文字の中から特定の文字を検出する特定文字検出ステップと、
前記特定文字検出ステップにより検出された特定文字の位置を判定する判定ステップと、
をテキストデータの埋め込み処理装置のコンピュータに実行させ、さらに、
前記特定文字検出ステップにより前記特定の文字が検出され、かつ前記判定ステップにより検出された特定文字の位置が前記文字列区切りステップにより区切られた文字グループの先頭でかつ行頭でないと判定された場合は、前記埋め込みステップでは、前記特定の文字をその前の文字グループの最後に連結させて埋め込む処理を、前記コンピュータに実行させるためのテキストデータの埋め込み処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、スキャナ部で読み取った画像に対して文字認識処理を行い、認識された各文字のテキストデータを、スキャナ部の出力ファイルに埋め込むテキストデータの埋め込み装置、該装置を備えた例えば多機能デジタル複合機であるＭＦＰ（Multi Function Perirheral）等の画像処理装置、テキストデータの埋め込み方法及び埋め込みプログラムに関する。
【背景技術】
【０００２】
画像処理装置として、スキャナ部で読み取った原稿の画像をＰＤＦ（Portable Document Format）等のファイルに変換して外部装置に送信したり、自装置内に保存する機能を備えた画像形成装置が既に提供されている。
【０００３】
しかし、このようなファイルにはテキストデータが含まれていないため、文字列の検索を行うことができない。
【０００４】
そこで、スキャナ部で読み取った画像に対して文字認識処理装置により文字認識処理を行って文字画像をテキストデータ化し、このテキストデータを画像ファイルに埋め込むことが行われている（例えば特許文献１、２）。テキストデータを埋め込むときはＪＰＥＧ等の出力ファイル（画像ファイル）の文字部分に重ねてテキストデータを透明フォントで埋め込み、これによりユーザーは読み込んだ原稿画像の文字列を検索することが可能となり、いくつかのフォーマットに応用されている。それをＰＤＦに応用したものがサーチャブルＰＤＦとして一般的に知られている。
【０００５】
文字認識処理装置からは、１つ１つの文字の上下左右の位置を示す位置情報と、１行単位の文字座標位置の情報が送られてきており、画像ファイルへのテキストデータの埋め込む位置やサイズなどはこの結果を元に決定されている。
【０００６】
上記のようなテキストデータ埋め込み処理において、１つの埋め込み文字群の文字数制限は特に存在せず、１文字単位であっても複数文字であっても可能である。埋め込みで指定できるパラメータは、テキストデータの先頭の座標位置、フォントサイズ、横方向（文字列方向）の倍率等があるが、テキストデータの後端を指定することができない。このため、テキストデータの文字の位置と画像ファイルの文字画像との位置を合わせるためには、テキストデータの横方向の倍率を計算する必要がある。ちなみに、埋め込むフォントが等幅フォントの場合は横方向の長さが正確に計算できるため一致するが、通常の文書で使用されやすい非等幅のプロポーショナルフォントの場合は文字列の長さの推定が一致しない場合がある。特に文字群の文字数が多くなると、倍率計算の誤差の影響で文字画像との位置がずれる可能性が高くなる。
【０００７】
そこで、各行に含まれる文字列を、行毎に、複数の文字グループに区切って１つの文字グループを短くすることで、原稿の文字画像との横方向の位置ずれを抑制する方法が考えられている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特許第５１９７６９４号公報
【特許文献１】特許第４５９０４３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ところで、原稿に含まれる文字として特殊な文字、例えば空白文字（スペース）がある。空白文字は実際に原稿に空白文字として存在するわけではなく、文字と文字との間隔が開いている等の条件判断を文字認識処理装置が行うことで、その部分を空白文字として認識している。また、空白文字の位置情報等も統一されておらず、文字認識処理装置の仕様によりまちまちである。たとえば、
（１）開始位置、終了位置の座標をともに（０，０）とする、
（２）前の文字の終了位置を開始位置、後の文字の開始位置を終了位置とする、
等の違いがある。
【００１０】
前者（１）の場合、実際の空白文字とは全く関係のない位置であるため、例えば複数に区切られた文字グループの最後に空白文字が検出されたような場合、図２（Ａ）に示すように、その文字グループは原点Ｐから開始されるものと判断され、文字グループの座標計算やサイズ設定が異常な結果になり、文字画像との大きな位置ずれや文字サイズの不揃いを生じる。このため、文字列検索時に抽出された文字が反転表示されたときに文字高さやサイズに不揃いが生じたり、ドラッグによる選択時に画像と埋め込み文字の位置が一致せず、意図しない埋め込み文字を選択してしまうという問題があった。
【００１１】
また後者（２）の場合には、空白文字２個分程度の文字間隔があった場合、横長の１個の空白文字として文字認識装置から通知されるため、やはり文字グループ単位でテキストデータ化する場合に、文字画像との位置ずれの原因となる。
【００１２】
このような文字画像との位置ずれ等の問題は、空白文字に限られず、句読点、カンマ、ドット等、他の文字に較べてサイズが極端に小さな文字についても同様に生じるものであった。特に、欧米系の非等幅（プロポーショナル）フォントの場合には、比較的影響は少ないが、日本語等の等幅フォントの全角文字を使用する言語系では、通常の文字とのサイズ差が大きくなるため、位置ずれ等の不具合がより顕著となる。
【００１３】
この発明は、このような技術的背景に鑑みてなされたものであり、空白文字、句読点等の特定の文字が存在していても、埋め込まれるテキストデータの文字画像との位置ずれやサイズの不揃い等の問題を解消できるテキストデータの埋め込み装置及び該装置を備えた画像処理装置を提供し、さらにはテキストデータの埋め込み方法及びテキストデータの埋め込みプログラムを提供することを課題とする。
【課題を解決するための手段】
【００１４】
上記課題は、以下の手段によって解決される。
（１）画像を読み取る読み取り手段で読み取られた画像に対して文字認識処理を行う文字認識手段と、前記文字認識処理により認識された各文字のテキストデータを、前記読み取り手段の出力ファイルに埋め込む際に、埋め込まれる前記テキストデータのサイズ及び位置を決定する決定手段と、前記決定手段により決定されたサイズ及び位置に基づいて、前記テキストデータを前記出力ファイルに埋め込む埋め込み手段と、前記文字認識処理により認識された各文字の中から特定の文字を検出する特定文字検出手段と、を備え、前記特定文字検出手段により前記特定の文字が検出された場合は、前記決定手段は、該特定の文字の１文字前の文字または１文字後の文字のサイズ及び位置情報を用いて、前記特定の文字のサイズ及び位置を決定することを特徴とするテキストデータの埋め込み処理装置。
（２）前記特定の文字は空白文字である前項１に記載のテキストデータの埋め込み処理装置。
（３）前記空白文字の前後に文字が存在しない場合、該空白文字を削除する前項２に記載のテキストデータの埋め込み処理装置。
（４）前記空白文字が行頭に存在する場合は、該空白文字を削除する前項２または３に記載のテキストデータの埋め込み処理装置。
（５）前記特定の文字は句読点、カンマ、ドットの少なくともいずれかである前項１に記載のテキストデータの埋め込み処理装置。
（６）前記文字の言語が全角文字を含む２バイト文字の言語である場合に限り、前記決定手段は、該特定の文字の１文字前の文字または１文字後の文字のサイズ及び位置情報に基づいて、前記特定の文字のサイズ及び位置を決定する前項１〜５のいずれかに記載のテキストデータの埋め込み処理装置。
（７）画像を読み取る読み取り手段で読み取られた画像に対して文字認識処理を行う文字認識手段と、前記文字認識処理により認識された文字列を、予め設定された規則に従って複数の文字グループに区切る文字列区切り手段と、前記文字認識処理により認識された各文字のテキストデータを、前記読み取り手段の出力ファイルに埋め込む埋め込み手段と、前記文字認識処理により認識された各文字の中から特定の文字を検出する特定文字検出手段と、前記特定文字検出手段により検出された特定文字の位置を判定する判定手段と、を備え、前記特定文字検出手段により前記特定の文字が検出され、かつ前記判定手段により検出された特定文字の位置が前記文字列区切り手段により区切られた文字グループの先頭でかつ行頭でないと判定された場合は、前記埋め込み手段は、前記特定の文字をその前の文字グループの最後に連結させて埋め込むことを特徴とするテキストデータの埋め込み処理装置。
（８）前記文字列区切り手段は、文字数、空白文字、句読点、カンマ、ドットの少なくともいずれかに基づいて、各行の文字列を複数の文字グループに区切る前項７に記載のテキストデータの埋め込み処理装置。
（９）画像を読み取る読み取り手段と、前項１〜８のいずれかに記載のテキストデータの埋め込み処理装置とを備えた画像処理装置。
（１０）画像を読み取る読み取り手段で読み取られた画像に対して文字認識処理を行う文字認識ステップと、前記文字認識処理により認識された各文字のテキストデータを、前記読み取り手段の出力ファイルに埋め込む際に、埋め込まれる前記テキストデータのサイズ及び位置を決定する決定ステップと、前記決定ステップにより決定されたサイズ及び位置に基づいて、前記テキストデータを前記出力ファイルに埋め込む埋め込みステップと、前記文字認識処理により認識された各文字の中から特定の文字を検出する特定文字検出ステップと、を備え、前記特定文字検出ステツプにより前記特定の文字が検出された場合は、前記決定ステップでは、該特定の文字の１文字前の文字または１文字後の文字のサイズ及び位置情報を用いて、前記特定の文字のサイズ及び位置を決定することを特徴とするテキストデータの埋め込み処理方法。
（１１）画像を読み取る読み取り手段で読み取られた画像に対して文字認識処理を行う文字認識ステップと、前記文字認識ステップにより認識された文字列を、予め設定された規則に従って複数の文字グループに区切る文字列区切りステップと、前記文字認識処理により認識された各文字のテキストデータを、前記読み取り手段の出力ファイルに埋め込む埋め込みステップと、前記文字認識処理により認識された各文字の中から特定の文字を検出する特定文字検出ステップと、前記特定文字検出ステップにより検出された特定文字の位置を判定する判定ステップと、を備え、前記特定文字検出ステップにより前記特定の文字が検出され、かつ前記判定ステップにより検出された特定文字の位置が前記文字列区切りステップにより区切られた文字グループの先頭でかつ行頭でないと判定された場合は、前記埋め込みステップでは、前記特定の文字をその前の文字グループの最後に連結させて埋め込むことを特徴とするテキストデータの埋め込み処理方法。
（１２）画像を読み取る読み取り手段で読み取られた画像に対して文字認識処理を行う文字認識ステップと、前記文字認識処理により認識された各文字のテキストデータを、前記読み取り手段の出力ファイルに埋め込む際に、埋め込まれる前記テキストデータのサイズ及び位置を決定する決定ステップと、前記決定ステップにより決定されたサイズ及び位置に基づいて、前記テキストデータを前記出力ファイルに埋め込む埋め込みステップと、前記文字認識処理により認識された各文字の中から特定の文字を検出する特定文字検出ステップと、をテキストデータの埋め込み処理装置のコンピュータに実行させ、さらに、前記特定文字検出ステツプにより前記特定の文字が検出された場合は、前記決定ステップでは、該特定の文字の１文字前の文字または１文字後の文字のサイズ及び位置情報を用いて、前記特定の文字のサイズ及び位置を決定する処理を、前記コンピュータに実行させるためのテキストデータの埋め込み処理方法。
（１３）画像を読み取る読み取り手段で読み取られた画像に対して文字認識処理を行う文字認識ステップと、前記文字認識ステップにより認識された文字列を、予め設定された規則に従って複数の文字グループに区切る文字列区切りステップと、前記文字認識処理により認識された各文字のテキストデータを、前記読み取り手段の出力ファイルに埋め込む埋め込みステップと、前記文字認識処理により認識された各文字の中から特定の文字を検出する特定文字検出ステップと、前記特定文字検出ステップにより検出された特定文字の位置を判定する判定ステップと、をテキストデータの埋め込み処理装置のコンピュータに実行させ、さらに、前記特定文字検出ステップにより前記特定の文字が検出され、かつ前記判定ステップにより検出された特定文字の位置が前記文字列区切りステップにより区切られた文字グループの先頭でかつ行頭でないと判定された場合は、前記埋め込みステップでは、前記特定の文字をその前の文字グループの最後に連結させて埋め込む処理を、前記コンピュータに実行させるためのテキストデータの埋め込み処理方法。
【発明の効果】
【００１５】
前項（１）に記載の発明によれば、文字認識処理により認識された各文字の中から特定の文字が検出された場合は、該特定の文字の１文字前の文字または１文字後の文字のサイズ及び位置情報を用いて、前記特定の文字のサイズ及び位置が決定され、出力ファイルに埋め込まれるから、前記特定の文字のサイズ及び位置を例えば１文字前の文字または１文字後の文字のサイズと同一のサイズにして、１文字前の文字の後または１文字後の文字の前に埋め込むことができる。このため、特定の文字について認識処理手段から（０，０）の位置座標情報が出力されたり、空白文字２個分程度の文字間隔があったような場合でも、適正なサイズ及び位置で特定の文字を埋め込むことができ、文字画像との位置ずれやサイズの不揃い等の不具合が発生するのを防止できる。
【００１６】
その結果、文字列検索時に抽出された文字が反転表示されたときに文字高さやサイズに不揃いが生じたり、ドラッグによる選択時に画像と埋め込み文字の位置が一致せず、意図しない埋め込み文字を選択してしまうという問題を解消することができる。
【００１７】
前項（２）に記載の発明によれば、空白文字（スペース）が存在している場合に、埋め込み時の文字画像との位置ずれ等を防止できる。
【００１８】
前項（３）に記載の発明によれば、空白文字の前後に文字が存在しない場合、該空白文字は削除されるから、不要な空白文字の埋め込み処理を回避できる。
【００１９】
前項（４）に記載の発明によれば、空白文字が行頭に存在する場合は、該空白文字は削除され、埋め込みが行われないから、空白文字がドラッグ等により選択されるのを防止できる。
【００２０】
前項（５）に記載の発明によれば、句読点、カンマ、ドットの少なくともいずれかが存在している場合に、埋め込み時の文字画像との位置ずれ等を防止できる。
【００２１】
前項（６）に記載の発明によれば、文字の言語が全角文字を含む２バイト文字の言語である場合は、特定の文字の存在による文字画像との位置ずれ等を発生しやすいことから、この場合に限り、特定の文字のサイズ及び位置の制御が行うことで、処理の簡素化を図りながら位置ずれ等の発生を効率的に防止できる。
【００２２】
前項（７）に記載の発明によれば、文字認識処理により認識された文字列が、予め設定された規則に従って複数の文字グループに区切られるとともに、前記特定の文字が前記区切られた文字グループの先頭に存在しかつ行頭でない場合は、前記特定の文字をその前の文字グループの最後に連結させて埋め込むから、通常の文字がその文字グループの先頭に配置されることになる。このため、その文字グループの埋め込み位置の設定が容易となり、位置ずれの発生を益々防止できる。
【００２３】
前項（８）に記載の発明によれば、文字数、空白文字、句読点、カンマ、ドットの少なくともいずれかに基づいて、各行の文字列が複数の文字グループに区切られる。
【００２４】
前項（９）に記載の発明によれば、特定の文字について認識処理手段から（０，０）の位置座標情報が出力されたり、空白文字２個分程度の文字間隔があったような場合でも、適正なサイズ及び位置で特定の文字を埋め込むことができ、文字画像との位置ずれやサイズの不揃い等の不具合が発生するのを防止できる画像処理装置となる。
【００２５】
前項（１０）に記載の発明によれば、特定の文字について認識処理結果として（０，０）の位置座標情報が出力されたり、空白文字２個分程度の文字間隔があったような場合でも、適正なサイズ及び位置で特定の文字を埋め込むことができ、文字画像との位置ずれやサイズの不揃い等の不具合が発生するのを防止できる。
【００２６】
前項（１１）に記載の発明によれば、特定の文字が前記区切られた文字グループの先頭に存在しかつ行頭でない場合は、前記特定の文字をその前の文字グループの最後に連結させて埋め込むから、特定の文字が排除されたその文字グループの埋め込み位置の設定が容易となり、位置ずれの発生を益々防止できる。
【００２７】
前項（１２）に記載の発明によれば、特定の文字について認識処理手段として（０，０）の位置座標情報が出力されたり、空白文字２個分程度の文字間隔があったような場合でも、適正なサイズ及び位置で特定の文字を埋め込むことができる処理を、テキストデータの埋め込み処理装置のコンピュータに実行させることができる。
【００２８】
前項（１３）に記載の発明によれば、特定の文字が前記区切られた文字グループの先頭に存在しかつ行頭でない場合は、前記特定の文字をその前の文字グループの最後に連結させて埋め込む処理を、テキストデータの埋め込み処理装置のコンピュータに実行させることができる。
【図面の簡単な説明】
【００２９】
【図１】この発明の一実施形態に係る画像形成装置の基本構成を示すブロック図である。
【図２】従来の埋め込み処理と本発明の実施形態に係る埋め込み処理の相違を説明するための図である。
【図３】図２に示したような従来処理と本発明の一本実施形態に係る埋め込み処理との相違を示す図である。
【図４】従来の埋め込み処理と本発明の他の実施形態に係る埋め込み処理の相違を説明するための図である。
【図５】図４に示したような従来処理と本発明の一本実施形態に係る埋め込み処理との相違を示す表である。
【図６】従来の埋め込み処理と本発明のさらに他の実施形態に係る埋め込み処理の相違を説明するための図である。
【図７】図６に示したような従来処理と本発明の一本実施形態に係る埋め込み処理との相違を示す表である。
【図８】図１の画像形成装置による埋め込み処理を示すフローチャートである。
【図９】図１の画像形成装置による埋め込み処理の他の例を示すフローチャートである。
【図１０】図８及び図９のフローチャートにおける文字列区切り処理の内容を示すフローチャートである。
【発明を実施するための形態】
【００３０】
以下、この発明の実施形態を図面に基づいて説明する。
【００３１】
図１は、この発明の一実施形態に係る画像形成装置１の基本構成を示すブロック図である。この実施形態では、画像形成装置として、コピー機能、プリンタ機能、スキャン機能等を備えた前述のＭＦＰが用いられている。
【００３２】
画像形成装置１は、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、スキャナ部１４と、記憶部１５と、プリンタ部１６と、操作パネル１７と、ネットワークコントローラ（Ｎ１Ｃ）１８と、文字認識処理部１９等を備えている。
【００３３】
前記ＣＰＵ１１は、画像形成装置１の全体を統括制御し、コピー機能、プリンタ機能、スキャン機能、ファクシミリ機能等の基本機能を使用可能に制御する。また、スキャナ部１４で読み取った原稿の画像に文字認識処理部１９による文字認識処理を施して文字画像をテキストデータ化し、このテキストデータを、読み取った画像のファイルに透明フォントで埋め込み、ＰＤＦ等のファイルに変換してユーザーの端末装置等に送信したり、記憶部１５に保存する等の処理を行うが、詳細は後述する。
【００３４】
前記ＲＯＭ１２は、ＣＰＵ１１の動作プログラム等を格納するメモリである。
【００３５】
前記ＲＡＭ１３は、ＣＰＵ１１が動作プログラムに基づいて動作する際の作業領域を提供するメモリである。
【００３６】
前記スキャナ部１４は、原稿台（図示せず）に置かれた原稿の画像を読み取り、画像データに変換する読み取り手段である。
【００３７】
前記記憶部１５は、例えばハードディスクドライブ（ＨＤＤ）などの不揮発性の記憶デバイスにより構成されており、スキャナ部２４で読み取られた原稿の画像データや、他の画像形成装置あるいはユーザー端末等から送信されてきたデータ、各種のアプリケーション等が記憶されている。
【００３８】
前記プリンタ部１６は、前記スキャナ部１４で読み取られた原稿の画像データやユーザ端末からのプリントデータ等を、指示されたモードに従って印刷するものである。
【００３９】
前記操作パネル１７は、各種入力操作等のために使用されるものであり、メッセージや操作画面等を表示するタッチパネル式液晶等からなる表示部と、テンキー、スタートキー、ストップキー等を備えたキー入力部を備えている。
【００４０】
前記ネットワークコントローラ１８は、ネットワーク上の他の画像形成装置や、その他の外部機器例えばユーザー端末等との間での通信を制御することにより、データの送受信を行うものである。
【００４１】
前記文字認識処理部１９は、スキャナ部１４で読み取られた原稿の画像に対して文字認識処理を行い、文字画像をテキストデータに変換する処理を行う。この文字認識処理部１９は、ＣＰＵ１１の機能の一部として構成される。
【００４２】
次に、画像形成装置１で実行される、この発明の一実施形態に係るテキストデータの埋め込み方法について説明する。
【００４３】
まず、文字を含む原稿をスキャナ部１４で読み取るとともに、読み取った原稿の画像データを文字認識処理部１９で文字認識処理し、文字画像をテキストデータに変換する。
【００４４】
次いで、ＣＰＵ１１は各行に含まれるテキストデータからなる文字列を、行毎に、予め設定された規則に従って複数の文字グループに区切る。この例では、文字が「well over」という英語系文字であり、空白文字（スペースともいう）を区切りとして文字列を複数の文字グループに区切る場合について説明する。なお、英語系文字をスペースで区切るのではなく、カンマやドットに基づいて区切る構成であっても良く、スペース、カンマ、ドットの少なくともいずれかを用いて区切られるのが望ましい。
【００４５】
文字認識処理部１９からは文字認識処理の結果として、図２（Ａ）の破線に示すように、各文字画像１００について１文字単位の外接矩形１０１を正確に切り出した座標位置と、それぞれのテキストコードが出力される。このようなテキストコードの出力結果に基づき、文字と文字との間隔が開いている等の条件判定からスペース５００を検出し、スペース５００が発見されたところまでを１つの文字グループとして扱うことで、「well＋スペース」と「over」というワード単位の複数（この例では２個）の文字グループ２０１、２０２が生成される。なお、「well＋スペース」とは「well」の後ろに「スペース」が存在しているという意味である。カンマやドットに基づいて区切る場合も同様である。
【００４６】
文字認識処理では出力されるスペース５００の位置情報等については文字認識処理部１９の仕様によって一定ではなく、例えば原点座標を示す（０，０）の情報が出力される。つまり、「well＋スペース」の文字グループ２０１が原点座標から開始されている出力となるため、文字グループの座標計算やサイズ設定が異常な結果になる。つまり、テキストデータの切り出し領域は、図２（Ａ）に示すように、原点Ｐと２つめの「ｌ」の右下の点Ｑを対角座標とする矩形領域３００であると計算され、従って埋め込まれるテキストデータの文字（埋め込み文字）４００のサイズは図２（Ａ）のように大きくなり、各文字の埋め込み開始位置も文字画像１００と大きくずれてしまい、結果的に埋め込み文字４００と文字画像１００との位置ずれやフォントサイズのばらつきを生じてしまう。これでは、文字列検索時に抽出された文字が反転表示されたときに文字高さやサイズに不揃いが生じたり、ドラッグによる選択時に画像と埋め込み文字の位置が一致せず、意図しない埋め込み文字が選択されてしまうという問題がある。
【００４７】
そこで、この実施形態では、文字認識結果として得られるスペース５００についての位置情報である原点座標位置は無視し、スペース５００の１つ前の文字情報である「ｌ」のサイズ及び位置情報を用いて、スペース５００のサイズや位置を決定する。具体的には、図２（Ｂ）に示すように、「ｌ」とほぼ同一サイズの領域５０１を「ｌ」の後に連続させて形成する。
【００４８】
その結果、図２（Ｂ）に示すように、文字画像「well」の各文字の開始位置と同じ座標位置から、対応する埋め込み文字の埋め込みが開始され、「ｌ」の後に適正なスペース５０１を有するテキストデータが埋め込まれる。このため、埋め込み文字４００と文字画像１００との位置ずれや他の文字グループの文字に対する文字サイズのばらつき等が解消される。図２（Ｂ）の符号３０１は、このような処理により計算される矩形の切り出し領域である。
【００４９】
なお、スペースの１つ前の文字情報が存在しないような場合は、１つ後ろの文字情報のサイズ、位置情報を用いて、スペースのサイズや位置を決定しても良い。
【００５０】
なお、文字グループ「over」についてはスペースが存在しないから、従来と同様の埋め込み処理が実行されるが、図２では切り出し領域３１０のみを記載し、埋め込まれる文字についての記載は省略している。
【００５１】
図２で説明したような従来処理と本実施形態に係る処理との相違を図３に示す。
【００５２】
図３（Ａ）に示すように、原点座標Ｐから文字列方向（右方向）をｘ方向、下方向をｙ方向とする。図３（Ｂ）の表の「従来処理」の項目において、「ｗ」「ｅ」「ｌ」「ｌ」「スペース」の各文字についてのＡ座標は各文字の左上角部の座標であり、Ｂ座標は各文字の右下角部の座標であり、いずれも文字認識処理部１９から出力される座標位置である。「スペース」については、Ａ座標、Ｂ座標ともに（０，０）が出力されている。また、「上記文字列を含む矩形」とは、文字認識処理部１９から出力された各文字の座標から計算された、文字グループ「well」についてのテキストデータの切り出し領域３００（図２（Ａ）に示す）であり、Ａ座標は該領域の左上角部の座標を示し、Ｂ座標は前記領域の右下角部の座標である。
【００５３】
上記表から理解されるように、従来では「スペース」についてのＡ座標、Ｂ座標がともに（０，０）であるから、テキストデータの切り出し領域３００のサイズが大きくなり、このため図２（Ａ）に示したように、該領域３００に対応する文字サイズも大きく各文字のｘ方向の位置ずれも大きくなる。
【００５４】
一方、図３（Ｂ）の表の「本実施形態の処理」の項目において、「ｗ」「ｅ」「ｌ」「ｌ」「スペース」の各文字についてのＡ座標、Ｂ座標は、文字認識処理部１９から出力された座標に基づいて計算された、埋め込まれる各テキストデータの左上角部の座標と右下角部の座標である。「スペース」については、１つ前の文字である「ｌ」のサイズ及び位置に基づいて、サイズ及び位置が決定されている。
【００５５】
また、「本実施形態の処理」の項目において、「上記文字列を含む矩形」は、文字認識処理部１９から出力された各文字の座標から計算された、文字グループ「well」についてのテキストデータの切り出し領域３０１（図２（Ｂ））であり、Ａ座標は該領域３０１の左上角部の座標を示し、Ｂ座標は前記領域３０１の右下角部の座標である。
【００５６】
図３の表から明らかなように、「本実施形態」における各文字のＡ座標及びＢ座標は、文字認識処理部１９から出力された各文字のＡ座標及びＢ座標と同じであり、従って文字画像と埋め込み文字とに位置ずれはなく、また文字グループの中の最後の文字である「ｌ」の後に適正なスペース５０１が形成されることがわかる。
【００５７】
このように、この実施形態では、文字認識処理により認識された各文字の中から空白文字（スペース）５００が検出された場合は、該空白文字５００の１文字前の文字「ｌ」のサイズ及び位置情報を用いて、空白文字５００のサイズ及び位置が決定され、出力ファイルに埋め込まれる。従って、空白文字５００のサイズ及び位置を１文字前の文字「ｌ」のサイズと例えば同一のサイズにして、１文字前の文字の後に埋め込むことができるから、空白文字５００について認識処理部１９から（０，０）の位置座標情報が出力された場合でも、適正なサイズ及び位置で空白文字を埋め込むことができ、文字画像１００と埋め込み文字４００の位置ずれやサイズの不揃い等の不具合が発生するのを防止できる。
【００５８】
図４は、この発明の他の実施形態を示すものである。この実施形態では、空白文字については、前の文字の終了位置を開始位置、後の文字の開始位置を終了位置とする位置情報が、文字認識処理部１９から出力される例を示す。また、この実施形態においても、「well over」という文字列が空白文字５０２を区切りとして「well＋スペース」と「over」というワード単位の２個の文字グループ２０１、２０２に区切られている。
【００５９】
空白文字（スペース）５０２について、１文字「ｌ」の終了位置を開始位置、後の文字「ｏ」の開始位置を終了位置とする位置情報が、文字認識処理部１９から出力される場合、図４（Ａ）に示すように空白文字５０２の幅が大きいと、横長の１個の空白文字として判断されるため、文字「ｗ」から「スペース」５０２までがテキストコードの切り出し領域３２０として計算される。このため、文字画像１００と埋め込み文字４００との間で位置ずれが発生してしまう。
【００６０】
そこで、この実施形態では、「スペース」５０２の１つ前の文字情報である「ｌ」のサイズ及び位置情報を用いて、「スペース」５０２のサイズや位置を決定する。具体的には、「ｌ」とほぼ同一サイズの「スペース」を「ｌ」の後に連続させて形成する。
【００６１】
その結果、図４（Ｂ）に示すように、文字画像「well」の文字開始位置と同じ座標位置から開始され「ｌ」の後に適正な「スペース」５０３を有する切り出し領域３２１が形成され、テキストデータが埋め込まれる。このため、文字画像１００との位置ずれが解消される。
【００６２】
図４で説明したような従来処理と本実施形態に係る処理との相違を図５の表に示す。
【００６３】
図５の表の「従来処理」の項目において、「ｗ」「ｅ」「ｌ」「ｌ」「スペース」の各文字についてのＡ座標は各文字の左上角部の座標であり、Ｂ座標は各文字の右下角部の座標であり、また、「上記文字列を含む矩形」は、文字認識処理部１９から出力された各文字の座標から計算された、文字グループ「well」についてのテキストデータの切り出し領域  ３２０（図４（Ａ））であり、Ａ座標は該領域３２０の左上角部の座標を示し、Ｂ座標は前記領域３２０の右下角部の座標である。
【００６４】
上記表から理解されるように、従来では「スペース」５０２についてのＢ座標が（７４，２６）であるから、テキストデータの切り出し領域のｘ方向のサイズが大きくなっており、このため図４（Ａ）に示したように、各埋め込み文字４００と文字画像１００のｘ方向の位置ずれも大きくなる。
【００６５】
一方、図５の表の「本実施形態の処理」の項目において、「ｗ」「ｅ」「ｌ」「ｌ」「スペース」の各文字についてのＡ座標、Ｂ座標は、文字認識処理部１９から出力された座標に基づいて計算された、埋め込まれる各テキストデータの左上角部の座標と右下角部の座標である。「スペース」については、１つ前の文字である「ｌ」のサイズ及び位置に基づいて、サイズ及び位置が決定されている。
【００６６】
また、「本実施形態の処理」の項目において、「上記文字列を含む矩形」は、文字認識処理部１９から出力された各文字の座標から計算された、文字グループ「well」についてのテキストデータの切り出し領域３２１（図４（Ｂ））であり、Ａ座標は該領域３２１の左上角部の座標を示し、Ｂ座標は前記領域３２１の右下角部の座標である。
【００６７】
図５の表から明らかなように、「本実施形態」における各文字のＡ座標及びＢ座標は、文字認識処理部１９から出力された各文字のＡ座標及びＢ座標と同じであり、従って文字画像と埋め込み文字とに位置ずれはなく、また文字グループ２０１の中の最後の文字である「ｌ」の後に適正なスペース５０３が形成されることがわかる。
【００６８】
このように、この実施形態では、文字認識処理により認識された各文字の中から空白文字５０２が検出された場合は、該空白文字５０２の１文字前の文字「ｌ」のサイズ及び位置情報を用いて、空白文字５０２のサイズ及び位置が決定され、出力ファイルに埋め込まれる。従って、空白文字５０２のサイズ及び位置を１文字前の文字「ｌ」のサイズと同一のサイズにして、１文字前の文字「ｌ」の後に埋め込むことができるから、適正なサイズ及び位置で空白文字を埋め込むことができ、文字画像１００との位置ずれやサイズの不揃い等の不具合が発生するのを防止できる。
【００６９】
図６はこの発明のさらに他の実施形態を示すものである。この実施形態では、文字の言語が全角文字を含む２バイト文字の言語である例えば日本語であり、原稿の文字列が「今回で、完成。」であり、特定の文字が句点１００ａまたは読点１００ｂである場合を示している。
【００７０】
まず、「今回で、完成。」という文字列を複数の文字グループに区切る。この実施形態では、一定の文字数毎に文字列を区切る場合を示しており、具体的には４文字ごとに「今回で、」と「完成。」という２個の文字グループ２０３、２０４に区切っている。
【００７１】
従来では、各文字を外接矩形１００で切り出すとともに、各文字グループ２０１、２０２毎に、切り出した複数の外接矩形１００を基に、「今」から「、」までの領域をテキストデータの切り出し領域３３０、３４０として決定する。しかし、「今回で、」という文字グループにおいては、句点１００ａのサイズが極端に小さいため、切り出し領域３３０のｘ方向の長さが短くなる。そして、この切り出し領域３３０に「今回で、」の各文字を割り当てて埋め込むと、図６（Ａ）に示すように、一文字の幅が小さくなり、このため文字画像１００と埋め込み文字４００とに位置ずれが発生する。
【００７２】
そこで、この実施形態では、サイズの小さい句点１００ａが検出されると、その一文字前の文字である「で」のサイズ及び位置情報を用いて、句点１００ａのサイズや位置を決定する。具体的には、「で」のサイズとほぼ同じサイズの領域を「で」の後に連続して形成する。これにより、図６（Ｂ）に示すように、句点１００ａの埋め込み用の適正な領域５０４が確保され、文字画像１００と埋め込み文字４００の位置ずれの発生を防止できる。
【００７３】
なお、図示は省略したが、文字グループ「完成。」における読点１００ｂについても同様に処理される。また、句読点１００ａ、１００ｂだけでなく、文字列にカンマやドットが含まれている場合も、句点や読点と同様に処理すればよい。
【００７４】
図６で説明したような従来処理と本実施形態に係る処理との相違を図７の表に示す。
【００７５】
図７の表の「従来処理」の項目において、「今」「回」「で」「、（句点）」の各文字についてのＡ座標は各文字の左上角部の座標であり、Ｂ座標は各文字の右下角部の座標であり、いずれも文字認識処理部１９から出力される座標位置である。また、「上記文字列を含む矩形」とは、文字認識処理部１９から出力された各文字の座標から計算された、文字グループ「今回で、」についてのテキストデータの切り出し領域３３０（図６（Ａ））であり、Ａ座標は該領域３３０の左上角部の座標を示し、Ｂ座標は前記領域３３０の右下角部の座標である。
【００７６】
上記表から理解されるように、従来では「、」についてのＢ座標が（６３，２５）であるから、テキストデータの切り出し領域３３０のｘ方向のサイズが小さく、このため図６（Ａ）に示したように、各埋め込み文字４００と文字画像１００のｘ方向の位置ずれが大きくなる。
【００７７】
一方、図７の表の「本実施形態の処理」の項目において、「今」「回」「で」「、（句点）」の各文字についてのＡ座標、Ｂ座標は、文字認識処理部１９から出力された座標に基づいて計算された、埋め込まれる各テキストデータの左上角部の座標と右下角部の座標である。「、」については、１つ前の文字である「で」のサイズ及び位置に基づいて、サイズ及び位置が決定されている。
【００７８】
また、「本実施形態の処理」の項目において、「上記文字列を含む矩形」は、文字認識処理部１９から出力された各文字の座標から計算された、文字グループ「今回で、」についてのテキストデータの切り出し領域３３１（図６（Ｂ））であり、Ａ座標は該領域３３１の左上角部の座標を示し、Ｂ座標は前記領域３３１の右下角部の座標である。
【００７９】
図７の表から明らかなように、「本実施形態」における「今」「回」「で」の各文字のＡ座標及びＢ座標は、文字認識処理部１９から出力された各文字のＡ座標及びＢ座標と同じであり、また「、」のＡ座標と文字認識処理部１９から出力された「、」のＡ座標におけるｘ座標位置は同じである。従って文字画像と埋め込み文字とにｘ方向の位置ずれは発生していないことがわかる。
【００８０】
このように、この実施形態では、文字認識処理により認識された各文字の中から句点１０１ａ、読点１０１ｂ、カンマ、ドット等の特定の文字が検出された場合は、該特定の文字の１文字前の文字のサイズ及び位置情報を用いて、特定の文字のサイズ及び位置が決定され、出力ファイルに埋め込まれる。従って、特定の文字のサイズ及び位置を例えば１文字前の文字のサイズと同一のサイズにして、１文字前の文字の後に埋め込むことができるから、適正なサイズ及び位置で特定の文字を埋め込むことができ、文字画像との位置ずれやサイズの不揃い等の不具合が発生するのを防止できる。
【００８１】
以上の実施形態では、空白文字、句読点、カンマ、ドット等の特定の文字の埋め込みサイズや位置を、一文字前の文字のサイズ及び位置情報を用いて設定したが、特定の文字の一文字後ろの文字のサイズ及び位置情報を用いて、特定の文字のサイズ及び位置を決定しても良い。また、一文字前の文字が存在しない場合に一文字後ろの文字のサイズ及び位置情報を用いても良い。なお、１文字前の文字も１文字後ろの文字も存在しない場合は、スペースを削除するのがよい。
【００８２】
図８は、画像処理装置１で実行される、空白文字が検出された場合のテキストデータの埋め込み処理を示すフローチャートである。この処理は、画像処理装置１のＣＰＵ１１がＲＯＭ１２等に記録された動作プログラムに従って動作することにより実行される。
【００８３】
ステップＳ１で、文字認識処理部１９から文字コード及び各文字の座標情報を受け取り、ステップＳ２で、文字区切り処理を行い、文字列を複数の文字グループに区切る。文字区切り処理については後述する。
【００８４】
次いでステップＳ３で、文字が空白文字（スペース）か否かを判断する。つまりスペースを検出する。スペースでなければ（ステップＳ３でＮＯ）、従来と同様にして各文字のサイズ、埋め込み位置を決定した後、ステップＳ６に進み、テキストコードを出力ファイルである画像データに透明レイヤで埋め込む。
【００８５】
ステップＳ３でスペースであれば（ステップＳ３でＹＥＳ）、ステップＳ４に進み、スペースの一文字前に文字が存在するかどうかを判断する。一文字前に文字が存在すれば（ステップＳ４でＹＥＳ）、ステップＳ５で、その文字のサイズ、位置情報からスペースのサイズ、位置を決定したのち、ステップＳ６でテキストコードを埋め込む。
【００８６】
ステップＳ４で、一文字前に文字が存在しなければ（ステップＳ４でＮＯ）、ステップＳ７で、スペースの一文字後ろに文字が存在するかどうかを判断する。一文字後ろに文字が存在すれば（ステップＳ７でＹＥＳ）、ステップＳ８で、その文字のサイズ、位置情報からスペースのサイズ、位置を決定したのち、ステップＳ６でテキストコードを埋め込む。
【００８７】
ステップＳ７で、一文字後ろに文字が存在しなければ（ステップＳ７でＮＯ）、ステップＳ９でスペースを削除したのち、ステップＳ６で、他の文字についてテキストコードを埋め込む。
【００８８】
図９は、画像処理装置１で実行される、句読点が検出された場合のテキストデータの埋め込み処理を示すフローチャートである。この処理は、画像処理装置１のＣＰＵ１１がＲＯＭ１２等に記録された動作プログラムに従って動作することにより実行される。
【００８９】
ステップＳ１１で、文字認識処理部１９から文字コード及び各文字の座標情報を受け取り、ステップＳ１２で、文字区切り処理を行い、文字列を複数の文字グループに区切る。文字区切り処理については後述する。
【００９０】
次いでステップＳ１３で、句読点処理を行うかどうかを、言語の文字が全角かどうかを調べることにより判断する。句読点処理を行うかどうかは予め設定されていても良い。例えば、日本語等の全角文字の場合は行う設定とし、英語等の半角文字の場合は行わない設定としても良い。日本語等の場合、非プロポーショナルフォントが比較的多く用いられており、その場合句読点と他の通常文字とのサイズ差が顕著になり、その分位置ずれが問題となるため、句読点処理を行う設定とするのがよい。一方、英語等の場合はプロポーショナルフォントが一般的であるため、句読点の処理をしなくても良い場合が多く、句読点処理を行わない設定とするのがよい。また、ユーザーによって設定可能に構成されても良い。
【００９１】
ステップＳ１３において、句読点処理を行うと判断された場合、換言すれば文字が全角の場合（ステップＳ１３でＹＥＳ）、ステップＳ１４に進む。句読点処理を行わないと判断された場合、換言すれば文字が全角でない場合（ステップＳ１３でＮＯ）、ステップＳ１９で、従来と同様にして各文字のサイズ、埋め込み位置を決定した後、テキストコードを出力ファイルである画像データに透明フォントで埋め込む。
【００９２】
ステップＳ１４では文字が句読点か否かを判断する。つまり句読点を検出する。句読点でなければ（ステップＳ１４でＮＯ）、ステップＳ１９でテキストコードを埋め込む。
【００９３】
ステップＳ１４で句読点であれば（ステップＳ１４でＹＥＳ）、ステップＳ１５で句読点の一文字前に文字が存在するかどうかを判断する。一文字前に文字が存在すれば（ステップＳ１５でＹＥＳ）、ステップＳ１６で、その文字のサイズ、位置情報から句読点のサイズ、位置を決定したのち、ステップＳ１９でテキストコードを埋め込む。
【００９４】
ステップＳ１５で、一文字前に文字が存在しなければ（ステップＳ１５でＮＯ）、ステップＳ１７で、句読点の一文字後ろに文字が存在するかどうかを判断する。一文字後ろに文字が存在すれば（ステップＳ１７でＹＥＳ）、ステップＳ１８で、その文字のサイズ、位置情報から句読点のサイズ、位置を決定したのち、ステップＳ１９でテキストコードを埋め込む。
【００９５】
ステップＳ１７で、一文字後ろに文字が存在しなければ（ステップＳ１７でＮＯ）、ステップＳ１９で、従来と同様の処理でテキストコードを埋め込む。
【００９６】
図１０は、図８のフローチャートにおけるステップＳ２、及び図９のフローチャートにおけるステップＳ１２の文字列区切り処理の内容を示すフローチャートである。
【００９７】
ステップＳ３１では、特定の文字かどうかを判断し、特定の文字でなければ（ステップＳ３１でＮＯ）、ステップＳ３９で、予めＮ文字区切りとして設定されているＮ文字目に該当するかどうかを調べる。Ｎ文字目でなければ（ステップＳ３９でＮＯ）、ステップＳ４１に進む。Ｎ文字目であれば（ステップＳ３９でＹＥＳ）、ステップＳ４０で、ここで文字列を区切ったのち、ステップＳ４１に進む。
【００９８】
なお、日本語、中国語、韓国語等のような全角文字に対して、特定の文字またはＮ文字単位で文字列を区切る場合、Ｎの値は通常は２〜１０程度に設定される。英語等の半角文字に対して特定の文字だけで区切る場合、Ｎは十分に大きな値（例えばＮ＝２５５）に設定される。
【００９９】
ステップＳ３１で、特定の文字であれば（ステップＳ３１でＹＥＳ）、ステップＳ３２で、その特定の文字が文字グループの先頭かどうかを調べる。先頭でなければ（ステップＳ３２でＮＯ）、ステップＳ４０で、その特定の文字で文字列を区切った後、ステップＳ４１に進む。
【０１００】
ステップＳ３２で、特定の文字が文字グループの先頭であれば（ステップＳ３２でＹＥＳ）、ステップＳ３３で、前に文字グループが存在しているかどうかを判断する。存在していれば（ステップＳ３３でＹＥＳ）、ステップＳ３４で、その特定の文字を前の文字グループの最後に連結した後、ステップＳ４１に進む。この連結処理により、特定の文字でない通常の文字がその文字グループの先頭に配置されることになる。このため、その文字グループの埋め込み位置の設定が容易となり、位置ずれの発生を益々防止できる。
【０１０１】
ステップＳ３３で、前に文字グループが存在していなければ（ステップＳ３３でＮＯ）、ステップＳ３６で、その特定の文字がスペースかどうかを調べ、スペースであれば（ステップＳ３６でＹＥＳ）、ステップＳ３７で、行の先頭のスペースを削除する設定がなされているかどうかを判断する。行の先頭の余白は、スペースかインデントかの判断はできないが、通常はスペースを入れない方が検索時に有利となるため、行の先頭のスペースを削除する設定がデフォルトでなされている。ただし、ユーザーによって設定できるようにしても良い。また、日本語等のような全角文字の場合には、行の先頭のスペースを削除する設定とし、英語系言語のような半角文字の場合は非設定としても良い。
【０１０２】
ステップＳ３７で、行の先頭のスペースを削除する設定がなされている場合（ステップＳ３７でＹＥＳ）、ステップＳ３８でスペースを無効なデータとして削除した後、ステップＳ４１に進む。行の先頭のスペースを削除する設定がなされていない場合（ステップＳ３７でＮＯ）、スペースを削除することなくステップＳ４１に進む。
【０１０３】
ステップＳ４１では、次の文字があるかどうかを調べ、あれば（ステップＳ４１でＹＥＳ）、ステップＳ３１に戻る。次の文字がなければ（ステップＳ４１でＮＯ）、図８または図９のフローチャートに戻る。
【０１０４】
以上、本発明の一実施形態を説明したが、本発明は上記実施形態に限定されることはない。例えば、テクストデータの埋め込み処理装置が画像処理装置１である場合を説明したが、画像処理装置に限定されることはなく、他の装置に適用しても良い。
【符号の説明】
【０１０５】
１      画像形成装置
１１    ＣＰＵ
１２    ＲＯＭ
１４    スキャナ部
１５    記憶部
１７    操作パネル
１８    ネットワークコントローラ
１９    文字認識部
１００  文字画像
１００ａ  句点
１００ｂ  読点
２００  各文字の外接矩形
３００、３０１、３１０、３３０、３３１、３４０  切り出し領域
４００  埋め込み文字
５００  スペース
【図１】
2015103114.tif 000003
【図２】
2015103114.tif 000004
【図３】
2015103114.tif 000005
【図４】
2015103114.tif 000006
【図５】
2015103114.tif 000007
【図６】
2015103114.tif 000008
【図７】
2015103114.tif 000009
【図８】
2015103114.tif 000010
【図９】
2015103114.tif 000011
【図１０】
2015103114.tif 000012