(57)【要約】【課題】  誤ったデータ種類をコピーしてしまう等の誤操作を軽減し、ユーザの作業負担を減らす。【解決手段】  画像処理装置は、グラフィックデータを描画し表示する表示手段と、表示手段上で範囲を指定する範囲指定手段と、グラフィックデータのうち指定範囲内にあるデータのみを特定する手段と、グラフィックデータの種類を指定するデータ種類指定手段と、範囲及び種類で特定されたグラフィックデータを出力する出力手段とを備え、範囲指定時に、データの種類指定に応じて異なる視覚的効果を生じるようにした。【選択図】  図１
2006185336.tif 000002
【特許請求の範囲】
【請求項１】
グラフィックデータを描画し表示する表示手段と、
前記表示手段上で範囲を指定する範囲指定手段と、
前記グラフィックデータのうち指定範囲内にあるデータのみを特定する手段と、
前記グラフィックデータの種類を指定するデータ種類指定手段と、
前記範囲及び種類で特定されたグラフィックデータを出力する出力手段とを備え、
前記範囲指定時に、前記データの種類指定に応じて異なる視覚的効果を生じることを特徴とする画像処理装置。
【請求項２】
前記視覚的効果とは、範囲を表す枠の色、形、線形状の少なくともいずれかを変化することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記グラフィックデータの種類とは、ベクトルデータと画像データであることを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記グラフィックデータは、文書のページを構成する文字、線画、自然画、表等の要素及び背景に分け、それぞれを表現するグラフィックデータにより構成されることを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記グラフィックデータの種類とは、文書要素の輪郭をベクトル表現したデータと、線画を線や丸、四角といった形状描画要素でベクトル表現したデータであることを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記グラフィックデータの種類とは、文書要素を更に画像として表現したデータを含むことを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記グラフィックデータの種類とは、文書の文字、線画、自然画、表等の前景と背景であることを特徴とする請求項４に記載の画像処理装置。
【請求項８】
グラフィックデータを描画し表示手段に表示する工程と、
前記表示手段上で範囲を指定する工程と、
前記グラフィックデータのうち指定範囲内にあるデータのみを特定する工程と、
前記グラフィックデータの種類を指定する工程と、
前記範囲及び種類で特定されたグラフィックデータを出力する工程とを有し、
前記範囲指定時に、前記データの種類指定に応じて異なる視覚的効果を生じることを特徴とする画像処理方法。
【請求項９】
グラフィックデータを描画し表示手段に表示する処理と、
前記表示手段上で範囲を指定する処理と、
前記グラフィックデータのうち指定範囲内にあるデータのみを特定する処理と、
前記グラフィックデータの種類を指定する処理と、
前記範囲及び種類で特定されたグラフィックデータを出力する処理とをコンピュータに実行させ、
前記範囲指定時に、前記データの種類指定に応じて異なる視覚的効果を生じることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複写機等の画像処理装置で読み取った画像データを、ワード等所謂文書作成アプリケーションソフトで再利用可能なベクトルデータに変換する画像処理装置、方法、及びコンピュータプログラムに関する。
【背景技術】
【０００２】
近年、環境問題が叫ばれる中、オフィスでのペーパーレス化が急速に進んでいる。すなわち、従来からバインダー等で蓄積された紙文書をスキャナで読み取り画像データに変換して画像記憶装置にデータベースとして蓄積する文書管理システムが構築されている。
【０００３】
更に、紙に書かれた表や図等文書の一部分を文書作成アプリケーションで再利用するために、スキャナで読み取った画像データの中身を解析して文字、線画、自然画、表及び背景等の要素に分け、それぞれ適した表現によるグラフィックデータに変換する技術が開発されている。ここで言う適した表現とは、例えば文字であれば文字コードとフォント情報による表現、画像表現もしくは文字輪郭のベクトル表現、線画であれば画像もしくはベクトル表現、自然画であれば画像表現、表であればベクトル表現もしくは文字コード＋表構造表現、等のように文書要素の種類に応じて変化するほか、文書作成アプリケーション上での再利用に際し、ユーザの任意意図によって時々に適切な表現は変化する。例えば文字認識率が悪い場合、文字コード表現よりもベクトル表現のほうが望まれるかもしれない。
【０００４】
すなわち、画像データをグラフィックデータに変換する際には、ひとつの文書要素を複数で表現するグラフィックデータを作成し合わせ持っていることが、様々なユーザの要求に応じて直ちに所望のデータを提供することが可能な状態となって望ましい。
【０００５】
こういったグラフィックデータの一部を利用しようとする場合、位置による範囲選択のほかに、データの種類を考慮する必要が生じる。そのような選択方法について、特許文献１に記載された文書処理装置では、表示画面を利用して文書の編集を行う際に、ある文書枠内に表示すべき図形データ、イメージデータ、文字データ等が記憶され、ユーザはそのデータの少なくとも１つを読み出して、同文書の編集に再利用すべく文書の別部分へと複写を行うことができた。特に、ある枠内のデータを読み出すときに、データの種類が複数(例えば図形データ、イメージデータ等)ある場合、取り出すデータの選択画面を表示し、その中の一つ或いは複数を指定することで、ユーザがデータ種類を選択することを可能にしていた。
【０００６】
【特許文献１】特公平５-４７８６０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載された文書処理装置の場合、複写のために枠内のデータ読み出しを指示する度にデータ選択画面が表示され、その都度所望のデータ形式を選択しなくてはいけない煩わしさがあった。
【０００８】
その対策として、あらかじめデータ形式を設定することで都度の選択を回避することはできるが、その場合、既設定が所望の選択に一致することがわかりにくく、誤ったデータを取り出してしまうおそれがあった。
【０００９】
本発明は上記のような点に鑑みてなされたものであり、誤ったデータ種類をコピーしてしまう等の誤操作を軽減し、ユーザの作業負担を減らすことを目的とする。
【課題を解決するための手段】
【００１０】
本発明による画像処理装置は、グラフィックデータを描画し表示する表示手段と、前記表示手段上で範囲を指定する範囲指定手段と、前記グラフィックデータのうち指定範囲内にあるデータのみを特定する手段と、前記グラフィックデータの種類を指定するデータ種類指定手段と、前記範囲及び種類で特定されたグラフィックデータを出力する出力手段とを備え、前記範囲指定時に、前記データの種類指定に応じて異なる視覚的効果を生じる点に特徴を有する。
本発明による画像処理方法は、グラフィックデータを描画し表示手段に表示する工程と、前記表示手段上で範囲を指定する工程と、前記グラフィックデータのうち指定範囲内にあるデータのみを特定する工程と、前記グラフィックデータの種類を指定する工程と、前記範囲及び種類で特定されたグラフィックデータを出力する工程とを有し、前記範囲指定時に、前記データの種類指定に応じて異なる視覚的効果を生じる点に特徴を有する。
本発明によるコンピュータプログラムは、グラフィックデータを描画し表示手段に表示する処理と、前記表示手段上で範囲を指定する処理と、前記グラフィックデータのうち指定範囲内にあるデータのみを特定する処理と、前記グラフィックデータの種類を指定する処理と、前記範囲及び種類で特定されたグラフィックデータを出力する処理とをコンピュータに実行させ、前記範囲指定時に、前記データの種類指定に応じて異なる視覚的効果を生じる点に特徴を有する。
【発明の効果】
【００１１】
本発明によれば、グラフィックデータの範囲を指定してその中のデータを別のアプリケーションで利用するための手段にコピーする際に、同範囲内に複数種類のデータが存在する場合でも、現在どのデータ種類が選択されコピーされるのかをユーザが直ちに知ることができるので、誤ったデータ種類をコピーしてしまう等の誤操作が軽減され、ユーザの作業負担を減らすことができる。
【発明を実施するための最良の形態】
【００１２】
以下、添付図面を参照して、本発明の好適な実施形態について説明する。図１に本発明を適用したシステムの構成を示す。１０１はコンピュータ装置、１０２はコンピュータ装置が作成する画像情報をブラウン管や液晶等の画面に表示するディスプレイ装置、１０３はコンピュータ装置１０１が作成する画像情報を紙に印刷するプリンタ装置、１０４はユーザがコンピュータ装置１０１に指示を送るためのマウスやキーボード等の操作装置、１０５は紙の内容を光電変換して画像データに変換しコンピュータ装置１０１に入力するスキャナ装置である。
【００１３】
図２に、コンピュータ装置１０１の内部ハードウェア構成例を示す。２０１はソフトウェアを実行することで装置の大部分を制御するＣＰＵ、２０２はＣＰＵ２０１が実行するソフトウェアやデータを一時記憶するメモリ、２０３はソフトウェアやデータを保存するハードディスク、２０４はキーボードやマウス、スキャナ等の入力情報を受け取り、またディスプレイやプリンタに情報を出力するＩ/Ｏ部である。
【００１４】
図３に、コンピュータ装置１０１で実行されるソフトウェアのモジュール構成例を示す。３０１はコンピュータの基本ソフトウェア(ＯＳ)である。ＯＳ３０１はいわゆるウィンドウシステムを有しており、ＯＳ３０１上で動作するアプリケーションソフトウェアは、画像情報をディスプレイに表現するとともに、マウス等によるグラフィカルな操作機能を有す、いわゆるＧＵＩオペレーションが可能である。このようなＯＳの例としてはMicrosoft Windows（登録商標）(TM) や MacOS X(TM)等がある。
【００１５】
３０２〜３０５はＯＳ３０１上で動作するアプリケーションである。３０２はスキャンアプリケーション、３０３はグラフィックデータ生成アプリケーション、３０４はグラフィック編集アプリケーション、３０５はクリップボードである。
【００１６】
図４のフローチャートは、アプリケーション３０２〜３０５を利用して処理を行う際の動作を説明している。ステップＳ４０１では、スキャンアプリケーション３０２を用いて、ユーザがスキャナに入力した紙文書の１ページから、当該ページの画像データを生成する。画像データは適当な圧縮を施されて、図２のハードディスク２０３にファイルとして保存する。
【００１７】
ステップＳ４０２では、グラフィックデータ生成アプリケーション３０３を用いて、ユーザが文書ページの画像データを、編集可能なグラフィックデータへと変換する。ここで言うグラフィックデータとは、１ページの視覚的情報を構成するためのデータであり、特に画像データのみではなく、パスや図形等のベクトル描画命令、或いは文字フォントのレンダリング情報等を含んだ状態のデータを指すものとする。また、編集可能とは、画像、ベクトル描画の命令や文字コード等の変更が可能な状態のことをいうが、ここでは特に、元々は一枚の画像として提供された文書のデータが、文字、線画、自然画、表及び背景等のオブジェクトに分けられ、更にその各々が最適な表現形式のグラフィックデータで表現されていることにより、文書としてレイアウトを変更したり、文書オブジェクトとして文字や線画等を変形したりすることが容易となっている状態のことをいう。
【００１８】
ステップＳ４０３では、グラフィックデータ生成アプリケーション３０３により生成されたグラフィックデータに対し、ユーザがマウス等でその一部或いは全部を選択し、かつ選択されたデータをクリップボード３０５にコピーする。
【００１９】
ステップＳ４０４では、グラフィック編集アプリケーション３０４に対し、ユーザがクリップボード３０５に保持されているグラフィックデータをグラフィック編集アプリケーション３０４へ取り込むことを指示する。
【００２０】
ステップＳ４０５では、グラフィック編集アプリケーション３０４を用いて、ユーザが加工・編集したグラフィックデータをプリンタより紙として出力する。加工・編集とは、例えば線画を表現するグラフィックデータの一部を変形したり、パーツを追加したりすることである。
【００２１】
図４で説明される処理に用いられるソフトウェアのうち、スキャンアプリケーション３０２とグラフィック編集アプリケーション３０４は、本発明の本質にかかわるものではなく、公知の技術による既存のアプリケーションを利用可能であるため説明は省略する。
【００２２】
また、クリップボード３０５についても同様に、本発明の本質にかかわるものではないが、その仕組について以下に簡単に説明しておく。クリップボード３０５は、ＯＳ３０１で動作しているアプリケーション間でデータを交換するために使われる一種のバッファである。クリップボード３０５と通信可能なアプリケーションは、自らが持つデータをクリップボードへと複写することができる。このときクリップボード３０５には、データとそのデータ種を識別できるＩＤが保持される。別のアプリケーションはクリップボード３０５が保持するデータを読み出して自分のデータにすることができる。このとき自分が読み込めるデータ種か否かはクリップボード３０５が保持するＩＤで識別される。
【００２３】
以下、本発明の本質部分を実施する、グラフィックデータ生成アプリケーション３０３について、その動作を詳細に説明する。グラフィックデータ生成アプリケーション(以下、アプリケーション)３０３は、ＯＳ固有の起動方法によって動作を開始する。起動直後のアプリケーションは固有のウィンドウを１個表示してユーザの指示操作があるまで待機する。
【００２４】
図５は、アプリケーション３０３の外観をなすウィンドウの例である。５０１はアプリケーション名や処理ファイル名を表示するタイトルバー、５０２はユーザがアプリケーション３０３に対し階層式メニューにより操作を指示するメニューバー、５０３は同じくユーザがアプリケーション３０３に対しボタンクリックにより操作を指示するツールバーである。５０４は処理対象となるグラフィックデータを二次元の画像データにラスタライズして表示する表示領域、５０５及び５０６は表示領域５０４に表示される範囲をマウス操作で縦横にスクロールするスクロールバーである。
【００２５】
メニューバー５０２上には、操作内容を大まかに分類する文字列５０７〜５０９が書かれている。各文字列５０７〜５０９をマウスでクリックするとその操作分類をより詳細に指示する項目の並ぶメニューが表われ、その項目をクリックすることにより実際に処理が行われたり、もしくは更に詳細な項目が表示されたりする。ツールバー５０３上には、メニューバー５０２から選択可能な階層式のメニュー内の項目のうち良く使う機能を配置しておくことができる。なお、階層式メニューからの指示と、それに対応するボタンでの指示は等価とみなすことができるので、ボタンでの指示例についての説明は省略する。
【００２６】
アプリケーション３０３に対しユーザが指示することができる操作は、以下の６つに分類される。
（１）ファイル読み込み操作
（２）グラフィック表示操作
（３）グラフィック選択操作
（４）コピー操作
（５）ファイル書き出し操作
（６）終了操作
【００２７】
（１）〜（６）の各操作は図６に示すような遷移関係を持つ。例えばすべての操作に先立ってファイル読み込み操作が必要であり、続いてグラフィック表示操作が可能となる。コピー操作はグラフィック選択操作の後にのみ実行可能であり、ファイル書き出し操作や終了操作はファイル読み込み後の任意時点で実行可能である。
【００２８】
以下、（１）〜（６）の各操作について詳細に説明する。
（１）ファイル読み込み操作
ファイル読み込み操作時に行われるアプリケーション３０３内部の動作について、図７のフローチャートを用いて説明する。ステップＳ７０１では、ユーザが読み込むファイルを指定する。実施形態における実際の操作としては、メニューバー５０２にて文字列「ファイル」５０７をマウスでクリックすると、図９に示すように項目９０１〜９０４が展開し、続いて「開く」の項９０１をクリックすることにより、不図示のファイル選択ダイアログが表示される。このファイルダイアログ上でマウスやキーボードにより選択されたファイルがアプリケーション３０３へと読み込まれる。上記動作は、マウスによるいわゆるドラッグアンドドップにより、別のファイルシステム管理ソフトウェア等で選択されたファイルが読み込まれるような動作であってもよい。
【００２９】
ステップＳ７０２では、読み込むファイルの種類が画像ファイルであるか、グラフィックデータファイルであるかを判別する。具体的には、あらかじめ定められた拡張子等、ファイル名の一部とファイル種類の関連付けによって種類を決定してもよいし、或いはファイルの先頭何バイトかを読み込んで、識別可能な文字やコード等を得ることで種類を判別してもよい。ファイルがグラフィックデータファイルの場合はステップＳ７０３へ、画像ファイルの場合はステップＳ７０４へ進む。
【００３０】
ステップＳ７０３に進んだ場合は、グラフィックデータファイルを読み込んでグラフィックデータを得、その後ステップＳ７０６に進む。ステップＳ７０６では、グラフィックデータを画面に描画して、読み込み操作の処理を終了する。
【００３１】
ステップＳ７０４に進んだ場合は、画像ファイルを読み込んで、メモリ２０２中のアプリケーション３０３が利用可能な領域へ、ラスタ画像データとして展開する。画像が圧縮状態にある場合は適宜展開処理を行う。圧縮形式の例としてはJPEG形式がある。
【００３２】
ステップＳ７０５では、ラスタ画像データをグラフィックデータへと変換する。本ステップの処理内容については後述する。グラフィックデータが得られたら、ステップＳ７０６に進んでグラフィックデータを画面に描画し、読み込み操作の処理を終了する。
【００３３】
ここで、ステップＳ７０５における、ラスタ画像データからグラフィックデータへの変換処理について、図８のフローチャートを用いて内容を詳細に説明する。ラスタ画像データからグラフィックデータへの変換とは、一枚のページ画像に対しその内容を、文字や線画、写真、表等の前景オブジェクトと、その残りの背景オブジェクトへと分離し、かつ前景オブジェクトの各々に適したグラフィック表現へと変換したものである。各オブジェクトに適したグラフィック表現については、このあとのフローチャートに従った処理の各所で説明する。
【００３４】
ステップＳ８０１では、グラフィックデータへの変換処理にラスタ画像データを入力する。
【００３５】
ステップＳ８０２では、ラスタ画像データがフルカラー或いはグレー画像の場合、白黒二値画像へと変換する。二値化に際しては、画像全域の輝度分布を調べて二値化閾値を求め、低輝度のピークにある文字部が黒、高輝度のピークにある下地部が白となるように二値化を行う。もしくは画像をいくつかのブロックに分けて各ブロックで最適な二値化閾値を求めて二値化を行ってもよい。
【００３６】
ステップＳ８０３では、二値画像に対してブロックセレクション処理を行う。ブロックセレクション処理とは、ページを表すラスタ画像データ内に記載されている文字、線画、自然画、表等の文書オブジェクトのブロックを認識し、各々を矩形の領域として分別する処理である。
【００３７】
ブロックセレクション処理の例を以下に説明する。まず二値画像に対して輪郭線追跡を行って黒画素輪郭で囲まれる画素の塊を抽出する。面積の大きい黒画素の塊については、内部にある白画素に対しても輪郭線追跡を行い白画素の塊を抽出、更に一定面積以上の白画素の塊の内部からは再帰的に黒画素の塊を抽出する。このようにして得られた黒画素の塊を、大きさ及び形状で分類し、異なる属性を持つ領域へ分類していく。例えば、縦横比が１に近く、大きさが一定の範囲のものを文字相当の画素塊とし、更に近接する文字が整列良くグループ化可能な部分を文字領域、扁平な画素塊を線画領域、一定大きさ以上でかつ四角系の白画素塊を整列よく内包する黒画素塊の占める範囲を表領域、不定形の画素塊が散在している領域を自然画領域、それ以外の任意形状の画素塊を線画領域、等とする。
【００３８】
図１５にブロックセレクション処理の例を示す。ラスタ画像データ１５０１に対しブロックセレクション処理を施すと、文字領域１５０２及び１５０７、自然画領域１５０３、線画領域１５０４及び１５０５、表領域１５０６、背景領域１５０８へと分割される。なお、図１５では省略されるが、表領域１５０６内部からは６つの白画素塊領域が抽出され、その内部各々から文字領域が抽出される。また、表領域１５０６に関しては、前述の内包する四角形の白画素塊の整列状態が行列構造として解析される。具体的には横並びの白画素塊の境界を列の境界、縦並びの境界を行の境界とみなし、求められた境界数(両端除く)＋１の行、列からなる格子を仮定する。それぞれ列位置ｉ、行位置ｊの格子に（ｉ，ｊ）の位置情報を与え、それに従って各白画素塊が存在する位置情報を記録する。なお、複数の格子に跨がる白画素塊、例えば横方向ｋ、縦方向ｍに跨がる場合は広がり情報（ｋ，ｍ）を白画素塊に追加する。
【００３９】
図１６に表構造解析の例を示す。図１６の左に示す表は４行３列の行列構造を持つと判断され、各白画素塊に対し図１６の右の示すような位置情報が与えられる。
【００４０】
図１７にアプリケーション３０３がブロックセレクション処理結果の情報として持つデータの例を示す。ブロックセレクション処理結果は、１領域の情報を表すバイナリデータのリスト１７０１、１７０２である。１領域が持つ情報としては、領域座標１７０３、領域の種類１７０４、領域種によって異なる個別情報へのリンク１７０５、領域内グラフィックデータへのリンク１７０８、次領域へのリンク１７０９、子領域へのリンク１７０１、からなる。１７０９〜１７１１は領域１７０１のグラフィックデータであり、ひとつの領域に対して複数のグラフィック表現によるデータが存在する場合、図のようにリストとして保持されている。子領域へのリンク１７０８は、表のように親子関係がある場合に、内包する領域を指す情報として使用される。なお、図１７はあくまで一例であって、データ形式はどのような形態をとってもよい。例えば、タグ付きテキストによるXML形式で記述したとしても、本発明においては同じ効果が得られる。
【００４１】
以降、ブロックセレクションで得られた各領域に対し、それぞれの領域種別に適したグラフィック表現によるグラフィックデータへの変換処理を行う。ステップＳ８０４では、文字の領域に対し、文字コード列とフォント情報からなる、文字コード表現のグラフィックデータを生成する。文字コード列は文字領域の画像に対してＯＣＲ処理を施すことで得ることができる。また、大きさや字体等を含むフォント情報は、ＯＣＲ処理に類した認識処理で得ることができる。以下に具体的な実施例をあげて説明する。ＯＣＲ処理とは、文字単位で切り出された画像に対し、パターンマッチの一手法を用いて認識を行って対応する文字コードを得る処理である。具体的には、文字画像から得られる特徴を数十次元の数値列に変換した観測特徴ベクトルと、あらかじめ字種毎に求められている辞書特徴ベクトルと比較し、最も距離の近い字種を認識結果とする。特徴ベクトルの抽出には種々の公知手法があり、例えば、文字をメッシュ状に分割し、各メッシュ内の文字線を方向別に線素としてカウントしたメッシュ数次元ベクトルを特徴とする方法がある。
【００４２】
文字の領域に対して文字認識を行う場合、認識の前処理としてまず該当領域に対し横書き、縦書きの判定を行い、各々対応する方向に行を切り出し、更に行から文字を切り出して各文字個々の画像を得る。ここで横書き、縦書きの判定は、該当領域内で画素値に対する水平／垂直の射影を取り、水平射影の分散が大きい場合は横書き領域、垂直射影の分散が大きい場合は縦書き領域と判断すればよい。文字列及び文字への分解は、横書きならば水平方向の射影を利用して行を切り出し、更に切り出された行に対する垂直方向の射影から、文字を切り出すことで行う。縦書きの文字領域に対しては、水平と垂直を逆にすればよい。なお、この時同時に文字のサイズが検出できる。
【００４３】
フォントを認識する方法としては、文字認識の際に用いられる、字種数分の辞書特徴ベクトルを、文字形状種すなわちフォント種に対しても複数用意し、先の認識処理におけるマッチングの際に文字コードとともにフォント種を得る方法がある。
【００４４】
ステップＳ８０５では、文字の領域に対し、文字コード表現とは異なる第二のグラフィックデータとして、文字の輪郭を描画して塗りつぶすパス描画データからなるベクトル表現のグラフィックデータを生成する。文字領域のベクトルデータ化は、文字領域の二値画像に対し、各文字に相当する黒画素塊の輪郭を複数の線分へと分割し、それぞれを直線及び曲線で近似することによって得られる。具体的な線分近似の処理例を以下に説明する。文字領域の二値画像に対して黒画素塊の輪郭追跡を行って外輪郭の点列を求める。この点列を角と看倣される点で区切って、各区間を部分的な直線或いは曲線で近似する。角とは曲率が極大となる点であり、曲率が極大となる点は、図２６に示すように、任意点Ｐｉに対し左右ｋ個の離れた点Ｐｉ−ｋ，Ｐｉ＋ｋの間に弦を引いたとき、この弦と任意点Ｐｉの距離が極大となる点として求められる。更に、点Ｐｉ−ｋ，Ｐｉ＋ｋ間の弦の長さ／弧の長さをＲとし、Ｒの値が閾値以下である点を角とみなすことができる。角によって分割された後の各区間は、直線は点列に対する最小二乗法等、曲線は３次スプライン関数等を用いて近似することができる。同様に黒画素塊内部に存在する白画素塊がなす内輪郭に対しても部分的直線或いは曲線で近似する。
【００４５】
更に、ステップＳ８０４の処理と同等の文字切出しを行い、かつ原画像より各文字線内部の平均的画素値を求めて各文字の色とし、これを各文字に対応するパスを描画するカラー情報とすることができる。
【００４６】
ステップＳ８０６では、文字の領域に対する第三のグラフィックデータとして、文字線内部の画素と文字以外の画素を容易に区別可能な二値或いはＮ値の画像データで表現されるグラフィックデータを生成する。文字の領域を表現する二値画像データは、先にページ全体を二値化して得た画像から該当領域を切り出すことによって得られる。なお、多値の原画像から該当領域内の二値化閾値を再度求めることにより、より最適な文字領域の二値画像を得ることもできる。
【００４７】
また、ステップＳ８０４の処理を利用して文字切出しを行い、かつ原画像より各文字線内部の平均的画素値を求めて各文字の色とし、前記文字領域の二値画像を文字毎に色によるＮ枚のプレーンに分割することで、色情報を持ったＮ枚の二値画像によるグラフィックデータが生成される。或いは、前記のようにＮ枚のプレーンに分割せずに、色情報をパレットコードとして画素毎にＮ値をとりうるＮ値画像によるグラフィックデータを生成してもよい。
【００４８】
ステップＳ８０７では、線画の領域に対し、内外輪郭のパス描画データからなるベクトル表現のグラフィックデータを作成する。この内外輪郭のパス描画からなるベクトルデータは、前述のステップＳ８０５における文字領域のベクトルデータ化処理と同様、線画領域の二値画像から、黒画素塊の輪郭線を線分近似することで求めることができる。
【００４９】
また、二値画像上で線部分をなす画素について、多値の原画画像上から得た画素値を平均値化することで、パス描画のカラー情報を得る。なお、線画が複数色から構成されている場合は、主要色となるひとつの画素値を選んでカラー情報とする。
【００５０】
ステップＳ８０８では、線画の領域に対する第二のグラフィックデータとして、形状要素の描画データからなるベクトル表現のグラフィックデータを作成する。形状要素の描画データとは、線部分を外輪郭と内輪郭のパスの組で記述するのではなく一本の太さをもった線分のパスとして表現したり、或いは四角や丸等代表的な形状についてはパスの集合ではなく各種形状を描画するデータで表現したりするベクトル表現データである。
【００５１】
線分のパスで表現される要素描画データを求めるには、線画領域の二値画像にあらかじめ公知の細線化法を施してすべての線幅を１としてから、各線の点列を追跡し、以後ステップＳ８０７と同様に点列を区切る角となる頂点を検出し、近似される直線或いは曲線のあてはめを行っていく。
【００５２】
また、四角や丸等の代表的な形状は、あらかじめ置換可能な画像パターンを用意しておき、パターンマッチング等で対応する線素を置き換えていく。
【００５３】
更に、各線分や形状等の線画を細分する要素の各々に対し、二値画像上で対応する線部分をなす画素について、多値の原画画像上から得た画素値を平均値化することで、各要素描画のカラー情報を得る。
【００５４】
ステップＳ８０９では、線画の領域に対する第三のグラフィックデータとして、線画部と背景を容易に分離しうる二値或いはＮ値の画像データで表現されるグラフィックデータを生成する。具体的には、線画領域部分の多値原画像を背景色の画素とそれ以外の画素に分け、背景画素は仮想的に透明を表す値、それ以外は線画部分の色数を適度に量子化されたＮ個のパレット色のいずれかに対応する値に割り当てた、パレット付きのＮ値画像を生成する。
【００５５】
ステップＳ８１０では、自然画の領域に対し、画像からなるグラフィックデータを作成する。具体的には、原画像から該当領域部分を切り出した状態の画像データを作成する。
【００５６】
ステップＳ８１１では、表領域に対し、表枠線の描画データからなるベクトル表現のグラフィックデータを作成する。具体的な処理方法は、表領域の二値画像から文字部分の画素を消去し、表枠のみの画像を作成する。以降線画の場合と同様の線分抽出、近似処理を行い、必要に応じて表のセルに対応する矩形描画のベクトルデータへと変換する。
【００５７】
ステップＳ８１２では、表領域に対し、表内文字の文字コードとその行列状配置構造を表現するデータからなるグラフィックデータを作成する。表内文字に関しては既にステップＳ８０４おいて、表内の枠で囲まれた領域、いわゆるセルごとに内部の文字領域に対する文字コード及びフォント情報が抽出されているものとする。行列状配置構造に関しては既に表に対するブロックセレクション処理の過程で得られている。ここで表のセルは表内の白画素塊に相当し、それらは各々表内を行列状格子に配置されるときの位置情報及び広がり情報を持っている。上記の文字コード及びセルの位置、広がり情報を合わせて表領域のグラフィックデータとする。
【００５８】
ステップＳ８１３では、ステップＳ８０４〜Ｓ８１２で各種グラフィックデータに変換された前景の情報を原画像から取り除いたもの、すなわち背景の画像からなるグラフィックデータを作成する。具体的な背景の作成は次のように行う。文字及び表、線画領域においては、領域の二値画像を参照し、その黒画素にあたる画素を原画像において背景色に変更する。背景色とは、その画素の近傍にあって二値画像では白画素に相当する画素の色である。実際のスキャン画像では線近辺の画素端は幾分なだらかに変化しているから、背景色に変更する画素は実際の二値画像上の黒画素を１ｄｏｔ程度太らせた範囲にするほうがよく、背景色を求める際にもその太らせた範囲外の画素数点の平均色として求めるほうがよい。写真部分に対しては、前景を取り去った後の面積が大きく、かつ前景を重ね書きした場合完全に上書きされるため背景色で補完する必要はない。ただしデータとして圧縮率を向上させるためには背景色或いは単に白等で塗りつぶしておいてもよい。
【００５９】
以上、ステップＳ８０４〜Ｓ８１２にて生成されたグラフィックデータは、図１７中の１７０９のように各領域のグラフィックデータへのリンクから参照されるデータとして保持される。ここでグラフィックデータの形式はどのようなものでも構わない。アプリケーション上での描画命令に一対一対応したバイナリ描画データの集合でもよいし、或いはＳＶＧのようなグラフィック言語によって記述されたテキストデータであってもよい。
【００６０】
（２）グラフィック表示操作
グラフィック表示とは、グラフィックデータの一部或いは全部を二次元の画像データへとラスタライズして表示領域５０４へと描画することである。このとき、アプリケーション３０３が保持するグラフィックデータによって表現しうるページ領域のうちどの部分を表示するか、或いは、ある同じ領域を表現する複数種類のグラフィックデータを保持しているときに、どの種類のグラフィックデータを描画して表示するかを、ユーザの意図に基づいて選択する機能を提供するのがこのグラフィック表示操作である。具体的操作としては、メニューバー５０２にて文字列「表示」５０８をクリックすると展開されるメニュー（図１０）の各項目をクリックすることによって各処理が実行される。以下に詳細を説明する。
【００６１】
（２−１）定倍率表示操作
グラフィックデータは、各描画要素が持つ座標値に対してある比を乗じて描画することにより、ラスタライズ後の大きさを自由に変更することができる。ここで、元々のページの物理的大きさと、ディスプレイ上での見かけの大きさが等しくなるとき倍率を１００%と定める。倍率１００%時に座標値に乗ずる比の値はグラフィックデータの解像度とディスプレイ解像度との比から一意に定まる。
【００６２】
図１０の１００１〜１００７は定倍率表示操作を指示するメニューの例である。「２５%」１００１、「５０%」１００２、「１００%」１００３、「２００%」１００４、「４００%」１００５、「８００%」１００６、及び「倍率設定」１００７の７項目があり、１００１〜１００６については選択された倍率でラスタライズされてディスプレイに表示される。「倍率設定」１００７の項目を選ぶと倍率の数値を入力するダイアログが開き、そこで入力された値に応じた倍率でラスタライズされてディスプレイに表示される。
指示された倍率でラスタライズされたページが表示領域５０４に収まらない場合は、表示可能な範囲のみが描画される。ユーザが描画範囲を変更可能な表示領域の右及び下にあるスクロールバー５０５、５０６を動かすほか、後述のパン操作で描画範囲を変更することもできる。
【００６３】
（２−２）ウィンドウ依存表示操作
グラフィックデータを現在のアプリケーションウィンドウ表示サイズに依存する大きさでラスタライズしてディスプレイ表示する操作である。図１０の１００８、１００９がウィンドウ依存表示操作を指示するメニューの例であり、「ページ全体を表示」１００８はウィンドウ内の表示領域内にページ全体が収まるような大きさで、「幅を合わせて表示」１００９は表示領域幅とラスタライズされたページ幅が等しくなるような大きさで、それぞれラスタライズされ表示される。アプリケーションウィンドウのサイズを変更すると、それに合わせた大きさで再ラスタライズされ表示される。
【００６４】
（２−３）ルーペ操作
アプリケーションウィンドウに現在表示されているグラフィックデータの一部を拡大して表示する操作である。図１０の「ルーペ」項目１０１０を選択した後に、表示領域上の一点でマウスのボタンを押下し、そのままドラッグしてボタンを離すと、押下した点と離した点の２点からなる矩形の範囲を拡大して表示する。このとき拡大領域の幅が表示領域の幅と等しくなる倍率と、拡大領域の高さが表示領域の高さと等しくなる倍率、両者のうち小さいほうの倍率でグラフィックデータがラスタライズされ表示される。なお、マウスボタンを押下してからドラッグせずに離した場合、現在表示されている倍率の２倍で表示する。
【００６５】
（２−４）パン操作
マウスのドラッグにより、アプリケーションウィンドウに一部分表示されているラスタライズされたグラフィックデータの表示範囲を変更する操作である。図１０の「パン」項目１０１１を選択した後に、表示領域上の一点でマウスボタンを押下してドラッグすると、それに連動して表示される範囲が移動する。ページの幅が表示領域の幅に収まっている場合左右には移動しない。同様にページ高さが表示領域の高さに収まっている場合上下には移動しない。
【００６６】
（２−５）表示選択
ページを構成するグラフィックデータは、前述のとおり文書のオブジェクトに分割された領域毎にそれぞれが領域内のグラフィックデータとして保持している。また文書のオブジェクトは大きく分けて前景と背景に分けられる。
【００６７】
図１０の１０１２、１０１３、１０１４は前景と背景を選択的に表示する為の項目であり、「前景」１０１２を選ぶと前景のグラフィックデータのみが表示され、「背景」１０１３を選ぶと背景のグラフィックデータのみが表示され、「前景＋背景」１０１４を選ぶと背景のグラフィック上に前景のグラフィックデータが描画された状態で表示される。図１８に表示選択の例を示す。「前景」１０１２選択時には１８０１、「背景」１０１３選択時には１８０２、「前景＋背景」１０１４選択時には１８０３のように表示される。
【００６８】
また、図１０の「前景詳細」１０１５を選ぶと、同じ領域が複数表現種のグラフィックデータを保持する場合にどの表現種を描画データとして表示するかを選択することが可能なダイアログが開かれる。前景詳細を選択するダイアログの例として、図１９の１９０１は、文字の領域に対しては、文字輪郭パスデータ表現と、画像データ表現のいずれかを、線画の領域に対しては、内外輪郭パスデータ表現、形状要素データ表現、画像データ表現のいずれかの選択を提供している。なお、本実施形態では文字領域における文字コード表現と、表領域における表内文字コードおよび行列状配置構造表現は、前景として描画されるグラフィックとしては扱っておらず、図１９での選択肢にも含まれない。
【００６９】
（３）グラフィック選択操作
ユーザは、グラフィック選択操作によりグラフィックデータの一部範囲或いは全体を選択的に指示することができる。この操作は、後述する（４）コピー操作と組み合わせて、アプリケーション３０３が保持するグラフィックデータの一部又は全部をアプリケーション３０４等別のアプリケーション上で利用する目的で行われる。
【００７０】
図１１に示すメニューの１１０１〜１１０３は、選択するグラフィック種類を指示するメニューである。「描画物選択」１１０１、「文字コード選択」１１０２、「表コード選択」１１０３の３項目のいずれかをクリックした後に、表示領域上でマウスをドラッグして選択する範囲を指示すると、範囲内でかつ選択対象となるグラフィックデータの選択状態となる。この選択状態となったグラフィックデータは後述する（４）)コピー操作の対象となる。
【００７１】
以下、上記３種の選択それぞれの場合について説明する。まず、「描画物選択」１１０１を指示した場合、マウスによる表示領域上での範囲指定、すなわちマウスボタンを押下した点と離した点を対角とする矩形範囲に存在するグラフィックデータのうち、現在描画されているグラフィックデータが選択状態となる。ここで、現在描画されているグラフィックデータとは、前述した１０１２〜１０１４及び１０１５の表示選択操作によって選ばれたグラフィックデータに一致する。すなわち、「前景」１０１２表示選択時には、前景にあたるグラフィックデータのみが、「背景」１０１３表示選択時には背景のグラフィックデータのみが、「前景＋背景」１０１４表示選択時には前景と背景両方のグラフィックデータが選択状態となる。かつ、対象領域において複数種の表現からなる前景グラフィックデータを持っている場合、「前景詳細」１０１５によって選ばれている種類のグラフィックデータが選択状態となる。
【００７２】
選択された矩形範囲の境界を跨いでいるグラフィック描画要素が存在する場合、選択範囲と選択状態にあるグラフィック描画要素の対応を一致させるために、選択の範囲を変更する、もしくはグラフィックデータ描画要素自体を一部切り取って選択範囲内に収まるようにする、等の処理が必要となる。
【００７３】
具体的には、選択されるグラフィック描画要素が画像表現のデータの場合、元データから選択範囲内にかかる部分のみを切り取ってできた新規のグラフィックデータを選択対象とする。ただし、実際に切り取りの加工処理を行うのは選択時ではなく、後述するコピー操作を実行する際に行うほうがよい。
【００７４】
一方、選択されるグラフィック描画要素がベクトル表現のデータの場合、選択範囲でデータを切り取ることは容易ではないので、以下2ついずれかの対処を行う。（対処１）選択範囲をはみだすグラフィック描画要素は選択対象外とする、（対処２）ユーザが最初に指示した選択範囲に重なっているグラフィック描画要素はすべて内包されるように選択範囲となる矩形を自動的に拡大する。
【００７５】
図１２は(対処1)の例であり、１２０１の状態でドラッグしたマウスのボタンを離すと、範囲からはみだすグラフィック要素１２０２と１２０３は選択対象外となる。図１３は（対処２）の例であり、１３０１の状態でドラッグしたマウスのボタンを離すと、範囲からはみだすグラフィック要素１３０２と１３０３を内包するように、選択範囲は１３０４のように自動的に拡大される。
【００７６】
（対処１）、（対処２）のいずれを行うかは、固定であっても、ユーザが選択するようにしてもよい。また、背景等画像のデータを含むか否か、又は文字のように小さな要素と表枠や線画のように大きな要素とで動作を変更するようにしてもよい。
【００７７】
「描画物選択」１１０１時には、選択された矩形範囲を視覚的に明示するために、選択範囲に対応する四角の枠が表示領域上に重ねて表示される。また、どのグラフィック描画要素が選択状態になっているかをユーザに視覚的に明示するために、選択対称となるグラフィック描画要素の一部は、色や形状等の修飾が施された状態で表示領域に描画される。例えば、文字や線画、表枠等ベクトル表現されるデータについては、選択状態にあるグラフィック描画要素は本来の色ではなく赤で描画される。これによりユーザは選択状態にあるデータと非選択状態にあるデータを容易に区別することができる。
【００７８】
前記の例に留まらず別の色に、例えば元の色のＲ，Ｇ，Ｂ値をそれぞれ反転させた色にしてもよい。また、選択状態と非選択状態にあるグラフィック描画要素の視覚的な区別が容易となるのであれば、色ではなく輪郭内の塗りつぶしパターンを変更したり、或いは点滅させたり、太さを変えたりしてもよい。
【００７９】
更に、範囲指定により選択されるグラフィック描画要素は、前述した（２−５）表示選択によって選ばれているもの、すなわち実際に表示されている描画データに限定されるが、このときに選択状態となるグラフィック描画要素の種類が、表示領域に描画されたグラフィックを見るだけでは解りにくい場合がある。例えば、背景が白い部分については、視覚上「前景」のみを表示している場合と「前景＋背景」を表示している場合との区別がつかない。或いは、図１０の「前景詳細」１０１５設定にて、同じ線画を表現するデータとして、内外輪郭のパスデータ表現が描画されているのか、或いは形状要素のデータが描画されているのか等、見た目の差が微少で区別がつきにくい場合がある。
【００８０】
そこで、先の選択状態を明示する表現方法を、選択状態となったデータの種類に応じて更に変更することで、後述のコピー操作においてどのデータがコピーされるかをユーザにより明確に提示し、意図に反した異なる種類のデータをコピーすることを防止する。例えば、表示選択における「前景」表示時には、選択領域に対応する四角の枠の表示色を青とし、「背景」表示時、「前景＋背景」表示時にはそれぞれ赤、緑とする。
【００８１】
また、図１０の「前景詳細」設定における、複数の表現種類を持つオブジェクトに対する描画種類の設定に対しては、上記の枠の少し内側に描画種類に同期する色の枠を描画した二重枠表示を行う。例えば、内外輪郭パスデータが選択される場合には黄色の枠、形状要素のデータが選択される場合には紫色の枠、というように描画種類に一対一となる色で内側の枠を表示する。もちろん、前記の色付きの二重枠に限らず、色と線種や点滅等組み合わせてもよい。或いは、枠だけではなく選択状態にあるグラフィック描画要素の色や形状をデータ種類に応じて変更してもよい。
【００８２】
図１１に戻って、「文字コード選択」１１０２を指示した場合、マウスのドラッグで指定される範囲にある文字コード表現のデータが選択される。文字コード表現はグラフィックとして描画されていないので、各選択文字に相当する範囲を黒く塗り潰したり、画素値を算術的に反転する等したりして、当該位置の文字コードが選択状態にあることをユーザに提示する。
【００８３】
図２０に文字コード選択状態の表示例を示す。マウスで領域２００１を指定すると、２００２のように領域内の文字にあたる部分がそれぞれ黒塗りされた状態になる。図１１にて、「表コード選択」１１０３を指示した場合、マウスのドラッグで指定される範囲にある表に対し、その内部の文字コード及び行列状の配置構造を表現するデータが選択状態となる。表が選択状態となったことをユーザに明示するために、表の外周に他の描画物選択とは異なる色の枠を上書きする。
【００８４】
また、図１１の「領域情報表示」項目１１０４を指示すると、表示領域に描画されたグラフィックデータ上に、ステップＳ８０３のブロックセレクション処理の結果となる領域情報にそれぞれ対応する矩形枠が表示される。このときに任意の矩形枠をマウスでクリックすることにより、その枠内のグラフィックデータ、文書オブジェクト単位のグラフィックデータを選択状態にすることができる。なお選択されるグラフィックデータ種類は前述の１１０１〜１１０３の選択及び（２−５）表示選択に従う。
【００８５】
図２１に、「領域情報表示」項目を指示後の例を示す。なお、表示選択は「前景」になっており、かつ色の代わりに点線で図示している。
【００８６】
（４）コピー操作
（３）グラフィック選択操作により、少なくとも一つ以上のグラフィックデータ要素が選択状態にあるとき、図１１の「コピー」１１０５を指示すると、選択状態にあるグラフィックデータの内容がクリップボード３０５へと複写される。クリップボード３０５に複写されたグラフィックデータは、グラフィック編集アプリケーション３０４のように、同データ形式を解釈可能な任意のアプリケーションに貼り付けて使用することが可能である。
【００８７】
コピー操作に対する内部動作を図１４のフローチャートに従って説明する。ステップＳ１４０１では、選択対象に画像データがある場合、その画像データが選択領域内に収まっているかどうかを判断し、収まっていればステップＳ１４０３に、収まっていなければステップＳ１４０２に進む。
【００８８】
ステップＳ１４０２では、選択対象の画像データから選択領域と重なる部分のみを切り取った画像をあらたな選択対象とし、元の画像データは選択対象から外す。ステップＳ１４０３では、アプリケーション内部形式のグラフィックデータフォーマットを、クリップボードへ保存するのに適したフォーマットに変換する。ここでは、このデータを利用するグラフィック編集アプリケーション３０４が解釈可能なフォーマットへと変換する。
【００８９】
ステップＳ１４０４では、変換されたグラフィックデータをクリップボードへと複写する。図２２〜２４に、グラフィックデータを選択かつコピー操作した場合に、クリップボードへ複写されるデータ種類の例を示す。ここで処理しようとしているのは、図２５に示されるページのデータであり、２５０１は前景となる文字領域、２５０２は背景領域をそれぞれ点線枠で示している。また、図１０の「前景詳細」１０１５設定では、文字領域のパス描画を選択しているものとする。
【００９０】
グラフィックデータ範囲としては、実線２５０３をマウスで指定するのものとして、（２−５）表示選択にて１０１２〜１０１４が選ばれている場合それぞれについて動作を説明する。
【００９１】
図２２は「前景」１０１２の表示が選ばれている場合を説明する図である。表示領域２２０１でマウスにより選択範囲２２０２を指定し、コピー操作を行うと、文字領域２５０１のパス表現グラフィックデータより、選択範囲内にある２文字分のパス描画データ２２０３、２２０４がクリップボード３０５へ複写される。
【００９２】
図２３は「背景」１０１３表示が選ばれている場合を説明する図である。表示領域２３０１でマウスにより選択範囲２３０２を指定し、コピー操作を行うと、背景領域２５０２の画像データから選択範囲のみを切り取った画像データ２３０３がクリップボード３０５へと複写される。
【００９３】
図２４は「前景＋背景」１０１４表示が選ばれている場合を説明する図である。表示領域２４０１でマウスにより選択範囲２４０２を指定し、コピー操作を行うと、文字領域２５０１のパス表現グラフィックデータより、選択範囲内にある２文字分のパス描画データ２４０４、２４０５と、また背景領域２５０２の画像データから選択範囲のみを切り取った画像データ２４０６が合成されたグラフィックデータ２４０３がクリップボード３０５へと複写される。お、図２４のグラフィックデータ２４０３は、背景画像データを描画した上にパスデータを描画するように記述されているので、グラフィックデータ２４０３を受け取ったアプリケーションでは、文字と背景を別々に扱うことが可能である。
【００９４】
（５）書き込み操作
図９の「保存」項目９０２を指示すると、アプリケーション３０３が持つグラフィックデータを、直後に表示されるダイアログ(不図示)でユーザが指定したファイルへと保存する。
【００９５】
（６）クローズ操作
図９の「閉じる」項目９０３を指示すると、現在読み込んでいるグラフィックデータを破棄し、（１）ファイル読み込みを待機する状態に戻る。「終了」項目９０４を指示すると、「閉じる」項目９０３と同様にグラフィックデータを破棄するとともに、アプリケーション３０３を終了する。
【００９６】
以上述べたように、グラフィックデータの範囲を指定してその中のデータを別のアプリケーションで利用するための手段にコピーする際に、同範囲内に複数種類のデータが存在する場合、その種類に応じて範囲指定枠の色等を変更することで現在どのデータ種が選択されコピーされるのかをユーザが直ちに知ることができるので、誤ったデータ種類をコピーしてしまう等の誤操作が軽減され、ユーザの作業負担を減らすことができる。
【００９７】
上記実施形態では、選択されたグラフィック描画要素の種類を明示するために視覚的効果を用いたが、これに加えて音声による警告を行ってもよい。この場合でも、現在どのデータ種が選択されコピーされるのかをユーザが直ちに知ることができるので、誤ったデータ種類をコピーしてしまう等の誤操作が軽減され、ユーザの作業負担を減らすことができる。
【００９８】
なお、本発明の目的は、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
【００９９】
この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１００】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【０１０１】
また、コンピュータが読み出したプログラムコードを実行することにより、上述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（基本システム或いはオペレーティングシステム）等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１０２】
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【０１０３】
【図１】本発明を適用したシステムの構成を示す図である。
【図２】コンピュータ装置の内部ハードウェア構成例を示す図である。
【図３】コンピュータ装置で実行されるソフトウェアのモジュール構成例を示す図である。
【図４】アプリケーションを利用して処理を行う際の動作を説明するためのフローチャートである。
【図５】グラフィック生成アプリケーションの外観をなすウィンドウの例を示す図である。
【図６】各操作の遷移関係を説明するための図である。
【図７】ファイル読み込み操作時に行われるグラフィック生成アプリケーション内部の動作を説明するためのフローチャートである。
【図８】ラスタ画像データからグラフィックデータへの変換処理を説明するためのフローチャートである。
【図９】メニューバーにて文字列「ファイル」をマウスでクリックすると展開されるメニューを示す図である。
【図１０】メニューバーにて文字列「表示」をクリックすると展開されるメニューを示す図である。
【図１１】メニューバーにて文字列「選択」をクリックすると展開されるメニューを示す図である。
【図１２】選択範囲をはみだすグラフィック描画要素は選択対象外とする例を説明するための図である。
【図１３】ユーザが最初に指示した選択範囲に重なっているグラフィック描画要素はすべて内包されるように選択範囲となる矩形を自動的に拡大する例を説明するための図である。
【図１４】コピー操作に対する内部動作を説明するためのフローチャートである。
【図１５】ブロックセレクション処理の例を示す図である。
【図１６】表構造解析の例を示す図である。
【図１７】グラフィック生成アプリケーションがブロックセレクション処理結果の情報として持つデータの例を示す図である。
【図１８】表示選択の例を示す図である。
【図１９】前景詳細を選択するダイアログの例を示す図である。
【図２０】文字コード選択状態の表示例を示す図である。
【図２１】「領域情報表示」項目を指示後の例を示す図である。
【図２２】グラフィックデータを選択かつコピー操作した場合に、クリップボードへ複写されるデータ種類の例を示す図である。
【図２３】グラフィックデータを選択かつコピー操作した場合に、クリップボードへ複写されるデータ種類の例を示す図である。
【図２４】グラフィックデータを選択かつコピー操作した場合に、クリップボードへ複写されるデータ種類の例を示す図である。
【図２５】コピー操作で処理しようとするページのデータを示す図である。
【図２６】文字の輪郭を描画して塗りつぶすパス描画データからなるベクトル表現のグラフィックデータを生成する処理を説明するための図である。
【符号の説明】
【０１０４】
１０１      コンピュータ装置
１０２      ディスプレイ装置
１０３      プリンタ装置
１０４      操作装置
１０５      スキャナ装置
２０１      ＣＰＵ
２０２      メモリ
２０３      ハードディスク
２０４      Ｉ/Ｏ部
３０１      基本ソフトウェア
３０２      スキャンアプリケーション
３０３      グラフィックデータ生成アプリケーション
３０４      グラフィック編集アプリケーション
３０５      クリップボード
【図１】
2006185336.tif 000003
【図２】
2006185336.tif 000004
【図３】
2006185336.tif 000005
【図４】
2006185336.tif 000006
【図５】
2006185336.tif 000007
【図６】
2006185336.tif 000008
【図７】
2006185336.tif 000009
【図８】
2006185336.tif 000010
【図９】
2006185336.tif 000011
【図１０】
2006185336.tif 000012
【図１１】
2006185336.tif 000013
【図１２】
2006185336.tif 000014
【図１３】
2006185336.tif 000015
【図１４】
2006185336.tif 000016
【図１５】
2006185336.tif 000017
【図１６】
2006185336.tif 000018
【図１７】
2006185336.tif 000019
【図１８】
2006185336.tif 000020
【図１９】
2006185336.tif 000021
【図２０】
2006185336.tif 000022
【図２１】
2006185336.tif 000023
【図２２】
2006185336.tif 000024
【図２３】
2006185336.tif 000025
【図２４】
2006185336.tif 000026
【図２５】
2006185336.tif 000027
【図２６】
2006185336.tif 000028