画像処理装置、画像処理方法、コンピュータプログラム
【課題】 電子文書ファイリングされている文書を印刷出力する際に、印刷出力物上に追記を行いやすくするために、ユーザーが所望するサイズの下地(欄外のスペースやオブジェクト間のスペース)を確保できるようにする。
【解決手段】 本発明によれば、電子文書に含まれるオブジェクトデータの印刷指示が為された場合、当該印刷指示された印刷対象のオブジェクトデータの用紙上に占める占有率が予め設定された閾値より大きいか否か判定する。そして、占有率が該閾値より大きいと判定された場合、前記オブジェクトデータの占有率が前記閾値以下になるように、当該印刷対象のオブジェクトデータに対して変更処理(オブジェクトの縮小、用紙サイズの変更、印刷対象オブジェクトの削減の少なくともいずれか)を行って印刷データを生成する。
【解決手段】 本発明によれば、電子文書に含まれるオブジェクトデータの印刷指示が為された場合、当該印刷指示された印刷対象のオブジェクトデータの用紙上に占める占有率が予め設定された閾値より大きいか否か判定する。そして、占有率が該閾値より大きいと判定された場合、前記オブジェクトデータの占有率が前記閾値以下になるように、当該印刷対象のオブジェクトデータに対して変更処理(オブジェクトの縮小、用紙サイズの変更、印刷対象オブジェクトの削減の少なくともいずれか)を行って印刷データを生成する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ファイリングされた電子文書の出力を制御する画像処理装置、画像処理方法、コンピュータプログラムに関する。
【背景技術】
【0002】
近年の複写機は、内部画像処理のデジタル化によって、目覚しいスピードで多機能化が進んでいる。例えば、基本的な機能として、原稿を複写するコピー機能、ホストコンピュータで作成した文書のプリントが可能なPDL印刷機能(PDLで記述されたデータの印刷機能)、スキャン機能、ネットワークを介してスキャン画像を送信する送信機能などを有する。その他にも、コピー機能やPDL機能やスキャン機能によって生成される画像データを複写機内の保存部(ボックス)に保存しておき、後で印刷などに再利用できるようにするボックス機能や、原稿画像の編集機能など、多くの機能を有している。
【0003】
また、スキャン画像を複写機内の保存部に保存したり、ネットワークを介して送信したスキャン画像をサーバに保存させたりすることで、スキャンした文書の画像をファイリングする電子文書ファイリング技術が注目されている。電子文書ファイリングは、文書画像を保存する際にデータベース化して保存することにより、保存している電子文書の検索が容易に行えるようになり、再利用しやすくなる。一方、電子文書ファイリングの重要な課題として、文書の保存に必要なメモリ量の削減を挙げることができる。その課題を解決するために、特許文献1では、入力されたスキャン画像データを、既にファイリングされている元文書と比較して追加情報(追記部分)を抽出し、その追加情報をファイリングされていた文書に階層構造にして保存する技術が開示されている。また、特許文献1では、入力された画像データの比較対象になる元文書をユーザーの指定に基づいて特定する例と、電子文書を印刷する際にバーコード等の選別符号を付与しておき、スキャンした際に当該選別符号を識別して元文書を特定する例とが記載されている。また、特許文献1では、追記が為された後の文書Bに対して、更に追記がなされた場合、当該追記部分を抽出することが記載されている。すなわち、特許文献1では、同じ紙文書に対して追記が為されるたびに追記部分を抽出することができるようになっている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平08−317155号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1のような追記部分(差分)を抽出してファイリングする機能を利用すれば、例えば、以下のようなワークフローが考えられる。例えば、打合せ等を行った際に書き込みが為された原稿(以下、編集された原稿と呼ぶ)をスキャンしてファイリングしておき、次の打合せ時には、その文書をプリント出力して、そのプリント出力物に書き込み編集が更に行われる、といったワークフローが考えられる。
【0006】
一方、ユーザーが原稿上に書き込みを行う場合、原稿上の欄外のスペースだけでなく、原稿内の文字や図形などのオブジェクト間のスペースに書き込むことも多い。すなわち、印刷された原稿には、欄外やオブジェクト間に、ユーザーが書き込みを行うのに適したスペースがあるのが望ましい。しかしながら、このようなプリントと書き込みのワークフローが繰り返し行われた場合、原稿上に書き込みを行うためのスペースがなくなっていってしまう。
【0007】
なお、以下の本発明の説明では、欄外のスペースやオブジェクト間のスペースをまとめて、下地と呼ぶこととする。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明の画像処理装置は、少なくとも1つのオブジェクトデータを含む電子文書を記憶する記憶手段と、ユーザーの指示に基づいて、前記オブジェクトデータが配置されない下地スペースが十分あるかどうかの判定に用いるための閾値を設定する設定手段と、前記電子文書に含まれるオブジェクトデータの印刷指示が為された場合、当該印刷指示された印刷対象のオブジェクトデータの用紙上に占める占有率が前記設定された閾値より大きいか否か判定する下地判定手段と、前記下地判定手段において前記占有率が前記閾値より大きいと判定された場合、前記オブジェクトデータの占有率が前記閾値以下になるように、当該印刷対象のオブジェクトデータに対して変更処理を行う下地生成手段と、前記下地生成手段で前記変更処理が行われた後のオブジェクトデータの印刷データを生成して出力する印刷データ生成手段と、を有することを特徴とする。
【発明の効果】
【0009】
本発明によれば、ファイリングされている文書を印刷出力する際に、該印刷出力物にユーザーが所望する適切な下地(スペース)が十分あるか否かを判定し、下地が足りないと判定した場合は、下地を生成して印刷出力する。したがって、ユーザーが希望する下地を有する印刷物を容易に出力できるようになる。
【図面の簡単な説明】
【0010】
【図1】本発明におけるPDFデータの内部構造を示す図
【図2】本発明におけるMFPを示すブロック図
【図3】図2におけるデータ処理部215の構成例を示すブロック図
【図4】本発明の実施形態1で、下地生成部306が実行する処理を説明するためのフローチャート
【図5】下地を生成する際の処理概念図
【図6】本発明におけるPDFデータの説明図
【図7】本発明におけるPDFデータの説明図
【図8】操作部203に表示されるユーザーインタフェース画面の説明図
【図9】操作部203に表示されるユーザーインタフェース画面の説明図
【図10】操作部203に表示される下地判定基準設定画面の説明図
【図11】スキャン時の処理を説明するフローチャート
【図12】実施形態2で、下地生成部306が実行する処理を説明するためのフローチャート
【図13】実施形態2で、操作部203に表示される下地生成時のオブジェクト選択モードを設定するための画面の説明図
【図14】実施形態2で、操作部203に表示される下地生成時のオブジェクトデータ選択ルールを設定するための画面の説明図
【図15】実施形態2で、操作部203に表示されるユーザーインタフェース画面の説明図
【発明を実施するための形態】
【0011】
(実施形態1)
<画像処理装置の詳細構成>
図2は本実施形態1において、画像処理装置として用いる複合機(MFP)の詳細構成を示す図である。MFPは、画像入力デバイスであるスキャナ部201と画像出力デバイスであるプリンタ部202、タッチパネルなどのユーザーインタフェースである操作部203、CPU205やメモリ等で構成される制御ユニット204などを有する。制御ユニット204は、画像情報やデバイス情報の入出力を行うコントローラであり、スキャナ部201、プリンタ部202、操作部203と接続されている。更に、制御ユニット204はLAN209を介して外部装置と通信することもできる。
【0012】
CPU205はシステム全体を制御する情報処理部(コンピュータ)である。RAM206はCPU205が動作するためのシステムワークメモリとして利用され、更に、画像データを一時記憶するための画像メモリでもある。ROM210は、ブートROMであり、システムのブートプログラム等のプログラムが格納されている。記憶部211はハードディスクドライブで、システム制御ソフトウェア、画像データや電子文書などを格納する。操作部I/F207は操作部(UI)203とのインターフェース部で、操作部203に表示するための画像データを操作部203に対して出力する。また、操作部I/F207は本画像処理装置の使用者によって操作部203を介して指示された内容に関する情報を、CPU205に伝える役割をする。ネットワークIF208は本画像処理装置をLAN209に接続し、パケット形式の情報の入出力を行うためのインターフェースである。以上のデバイスがシステムバス216上に配置される。
【0013】
イメージバスインターフェース212はシステムバス216と画像データを高速で転送する画像バス217とを接続し、データ構造を変換するバスブリッジである。画像バス217は、例えば、PCIバスやIEEE1394で構成される。画像バス222上には、以下のデバイス(RIP213、デバイスI/F214、データ処理部215)が配置される。ラスターイメージプロセッサ(RIP)213はPDL(ページ記述言語)コードを解析し、指定された解像度のビットマップイメージに展開する、いわゆるレンダリング処理を実現する。このビットマップイメージに展開する際には、各画素単位あるいは領域単位で属性情報が付加されることになる。これを像域判定処理と呼ぶ。像域判定処理により、画素毎あるいは領域毎に、文字(テキスト)や線(ライン)、グラフィクス、イメージなどといったオブジェクト種類を示す属性情報が付与される。例えば、PDLコード内に含まれるPDL記述のオブジェクトの種類に応じて、RIP213から像域信号が出力され、その信号値で示される属性に応じた属性情報が、オブジェクトに対応する画素や領域に関連づけて保存される。したがって画像データには、関連づけられた属性情報が付属している。デバイスI/F部214は、信号線218を介して画像入力デバイスであるスキャナ部201、信号線219を介して画像出力デバイスであるプリンタ部202、をそれぞれ制御ユニット204に接続し、画像データの同期系/非同期系の変換を行う。
【0014】
<データ処理部>
次に、図3を用いて、図2のデータ処理部215の詳細について説明を行う。データ処理部215は、フォーマット変換部301、タグ情報付加部302、オブジェクトデータ処理部303、差分抽出部304、下地判定部305、下地生成部306、印刷データ生成部307、から構成される。なお、本実施形態では、コンピュータ読取可能な記憶媒体に格納されたコンピュータプログラムをコンピュータが実行することによって、データ処理部215の各処理部(図3の各処理部)を実現するものとするが、これに限るものではない。例えば、データ処理部215(図3の各処理部)の一部または全部を、電子回路等のハードウェアで実現するように構成してもよい。
【0015】
データ処理部215は、入力データ300が入力されると、各処理部301〜307で処理を行い、出力データ310を出力する。入力データ300は、スキャナ部201で原稿を読み取ることにより得られるビットマップデータ(画像データ)、または記憶部211に格納されているビットマップデータや電子文書データである。ここで、電子文書データとは、例えば、PDF、XPS、OfficeOpenXML等のフォーマットの電子文書である。出力データ310は、ビットマップデータ、または電子文書データであり、記憶部211に格納したり、プリンタ部202で印刷出力したり、LAN209によってネットワーク接続された不図示の外部装置に送信したりする処理が行われる。尚、本実施形態では、電子文書データとしてPDF(以下、PDFデータ)を用いた説明を行うものとする。
【0016】
<PDFデータ>
次に、図6(a)を用いて、PDFデータの詳細について説明を行う。図6(a)は、記憶部211に格納されているPDFデータを説明するための概念図である。PDFデータを描画再生可能なソフトウェアの実例としては、Adobe Reader(商標)が挙げられる。なお、本実施形態では、PDFデータを後述する操作部203においても表示可能とする。
【0017】
図6(a)の601は、記憶部211に格納されるPDFデータの一例を示しており、602〜605は、PDFデータ601の階層構造(レイヤー構造)を模式的に示す図である。なお、602〜605は、各々JPEGデータであって、JPEGデータ602は、背景画像を示すデータ、JPEGデータ603〜605は、背景の上に描画される文字列データ(文字列のオブジェクトデータ)である。本実施形態では、JPEGデータ602は、例として全て白画素で構成されるデータ、JPEGデータ603、604、605は、各々「あいうえお」「かきくけこ」「さしすせそ」のビットマップ画像の文字列情報で構成されるデータとして説明を行う。なお、PDFデータが内部に格納可能なデータであれば、JPEGデータ以外のデータでもよく、例えば、MMRデータやZIPデータ等であってもよい。また、JPEGデータを構成している情報は、文字列情報に限ることはなく、写真や線画、イラスト等などの別のオブジェクトデータでも構わない。
【0018】
また、PDFデータを階層構造で表現する場合には、各々の階層をレイヤーと呼ぶ。即ち、JPEGデータ602〜605は、JPEGデータであるとともに各々PDFデータ601を構成するレイヤーでもある。PDFデータをレイヤーで表現する場合、図6(a)の609に示す矢印の方向から画像を見る(すなわち、JPEGデータ602〜605を順番に重ねて描画する)と、PDFデータを表示させた時に601に示すように見える。各レイヤーにおいてオブジェクト(JPEGデータ603〜605)以外の部分610は透明であるため、609に示す矢印の方向から画像を見ると、JPEGデータ603〜605の周囲に相当する部分は、背景のJPEGデータ602が見えることになる。なお、JPEGデータ603と604の上に605が位置的に重なっていた場合は、609に示す矢印の方向から画像を見るとJPEGデータ605の下のレイヤーにあるJPEGデータ603、604の重なっている部分は見えないことになる。図6の例においては、JPEGデータ603〜605が位置的に重なっておらず、609に示す矢印の方向から画像を見た場合は601に示すように見えるものとする。
【0019】
尚、本実施例では、説明の便宜上、JPEGデータ603〜605のレイヤーを全てオブジェクトデータと呼ぶ。
【0020】
図6(a)において、オブジェクトデータ603〜605それぞれに対して、タグ情報606〜608が付与されている。例えば、オブジェクトデータ603には、「日付:3月1日、名前:Aさん、占有率:M%」のタグ情報が付与されている。タグ情報606〜608は、後述する操作部203における条件設定にもとづいて用いられる。また、占有率の説明については後述する。
【0021】
<PDFデータの構造>
次に、PDFデータの内部構造について図1を用いて説明する。図6(a)で示されるPDFデータの模式図は、図1に示される内部データ構造を有している。図6(a)のオブジェクトデータ602〜605は、各々図1の101〜104に対応している。例えば、図6(a)のオブジェクトデータ603は、図1のオブジェクトデータ102に対応している。また、図6(a)の背景を示すオブジェクトデータ602は、図1のオブジェクトデータ101に対応している。なお、オブジェクトデータ101〜104は、それぞれPDFデータを構成するためのPS(PostScript)言語で記述されているものとする。
【0022】
また、図1のオブジェクトデータ102(図6(a)のオブジェクト603に相当)は、オブジェクトID情報としてオブジェクトIDが2であるJPEGデータであることを示す。また、オブジェクトデータ102は、タグ情報として、「(日付:3月1日)、(名前:Aさん)、(占有率:M%)」が関連付けられている。即ち、オブジェクトデータを検索する際に、例えば、「3月1日」というタグ情報で検索すると、オブジェクトデータ102が抽出される。また、「座標(X2、Y2)に描画」は、JPEGデータ(ID2)を(X2、Y2)に描画するという命令である。
【0023】
<操作部>
次に、図8〜図9に記載のユーザーインタフェース画面(a)〜(f)を用いて、操作部203の詳細について説明を行う。尚、本実施例においては、MFPに接続されている操作部203について説明を行うが、これに限るものではなく、例えば、LAN209によってネットワーク接続された同様の機能を有するホストコンピュータの操作部でも実現可能である。
【0024】
図8の画面(a)は、MFPにおける操作部203に表示される画面の例である。701は、コピー機能を動作させるためのボタンである。該ボタン701が選択されると、スキャナ部201で読み取られた原稿の画像をプリンタ部202で印刷出力するための設定画面に切り替わり、コピー機能を利用できるようになる。702は、送信機能(センド機能)を動作させるためのボタンである。該ボタン702が選択されると、スキャナ部で読み取った原稿の画像を、ビットマップデータや電子文書データとして、記憶部211に格納したり、ネットワークを介して外部装置に送信したりするための設定画面に切り替わり、送信機能が利用できるようになる。703は、ボックス機能を動作させるためのボタンである。該ボタン703が選択されると、記憶部211に格納されているビットマップデータや電子文書データを呼び出して、プリンタ部で印刷出力したり、ネットワークを介して外部装置へ送信したりするための画面に切り替わり、ボックス機能が利用できるようになる。
【0025】
図8の画面(a)はボックス機能のボタン703が選択されたときの画面である。本実施形態のボックス機能は、記憶部211に格納されている電子文書データを選択した後、更に、条件設定の指示を行うことが可能である。なお、データ選択と条件設定の詳細については後述する。ボックスボタン703が選択されると、図8の画面(a)のように、データ選択ボタン704、決定ボタン705、日付ボタン706、人物ボタン707、表示ウインドウ708、プリントボタン709が表示される。そして、データ選択ボタン704が押下されると、記憶部211に格納されている電子文書データのリストが表示ウインドウ708に表示され、更に、リストの中から所望とするデータがユーザーにより押下されると、選択されたデータが反転表示される。図8の画面(a)の表示ウインドウ708では、例として、データ(1)〜データ(5)の5つのデータが表示され、データ(2)が選択されている状態を示している。
【0026】
決定ボタン705が押下されると、表示ウインドウ708に、当該リスト上で選択されているデータの画像(またはサムネイル画像)が表示される。図8の画面(b)の表示ウインドウには、例として選択されたデータ(2)の画像710が表示されている状態を示している。なお、データ(2)は図1(図6(a))のようなデータ構造を有するものとする。ここで、プリントボタン709を押下すると、記憶部211に格納されているデータ(2)の画像710が印刷出力される。なお、印刷出力する際、データ(2)の所在を示すアドレス情報と当該印刷出力されたオブジェクトデータのIDを示すID情報とが、符号画像パターン(例えばQRコード)としてデータ(2)の画像に埋め込まれて印刷出力されるようにしてもよい。このような符号画像パターンが付加されている印刷物をスキャンすると、元の文書を特定しやすくなり、差分の抽出も容易になる。
【0027】
本実施形態では、選択されたデータ(2)の画像710が表示されている状態で、印刷出力指示する前に、ユーザーの指示により、タグ情報に基づく条件設定を行うことが可能である。本実施形態において、条件設定は、日付条件と人物条件とを設定可能である。例えば、日付ボタン706が押下されると、日付条件を選択するための日付リスト、またはカレンダーが表示ウインドウ708に表示される。そして、ユーザー所望の日付が押下されると、押下された日付が反転表示され、選択状態になる。図8の画面(c)の表示ウインドウ708には、例として3月1日〜3月5日の5つの日付が表示されており、3月2日と3月3日が選択された状態を示している。同様に、人物ボタン707が押下されると、人物条件を選択するための人物名のリストが表示ウインドウ708に表示される。そして、ユーザー所望の人物の名前が押下されると、当該押下された名前が反転表示され、選択状態になる。図9の画面(d)の表示ウインドウ708には、例としてAさん〜Eさんの5つの名前が表示されており、AさんとBさんとCさんが選択された状態を示している。以上の条件設定が終了し、決定ボタン705が押下されると、設定された条件がデータ(2)の画像710に適用される。即ち、画像710の中で、背景画像のデータと、次の条件式に当てはまるタグ情報に関連付けられている部分のオブジェクトデータとが表示される。
条件式=((3月2日)OR(3月3日))AND((Aさん)OR(Bさん)OR(Cさん))
該条件式は、条件パラメータとしてRAM206等の記憶装置に保存される。また、例えば、日付条件として、3月1日だけが選択され、人物条件としてBさんだけが選択されている場合、条件式=(3月1日)AND(Bさん)となる。尚、条件設定については、日付条件、人物条件に限るものではなく、文字、写真、線画、イラスト等の属性条件など他の条件でも可能である。
【0028】
次に、図9の画面(e)の表示ウインドウ708には、前述の条件式(((3月2日)OR(3月3日))AND((Aさん)OR(Bさん)OR(Cさん)))に当てはまる部分が表示された状態を示している。表示されている画像は、データ(2)から抽出されたオブジェクトにより生成された画像であるため、ここではデータ(2’)と呼ぶことにする。ここで、プリントボタン709を押下すると、記憶部211に格納されているデータ(2)から抽出されたデータ(2’)が印刷出力される。この時、記憶部211におけるデータ(2)の所在を示すアドレス情報と、データ(2’)として印刷出力されたオブジェクトデータのIDを示すID情報とが、符号画像パターンであるQRコードとしてデータ(2’)の画像に埋め込まれて印刷出力されるようにするのが望ましい。
【0029】
<オブジェクトデータ処理部>
オブジェクトデータ処理部303は、記憶部211に格納されている電子文書データから、RAM206等の記憶装置に保存された条件パラメータ、及びタグ情報に基づいて、オブジェクトデータを抽出する機能を有する。以下、図6(a)のPDFデータを用いて補足する。図8(a)の表示ウインドウ708で選択されたデータ(2)を図6のPDFデータ601とする。図8(b)の表示ウインドウ708で表示される画像710は、条件設定されていないので、PDFデータ601がそのまま表示されたものである。データ(2’)は、前述したように設定された条件に従ってデータ(2)から抽出されたオブジェクトデータにより生成された画像である。条件式=((3月2日)OR(3月3日))AND((Aさん)OR(Bさん)OR(Cさん))の場合、タグ情報606〜608に基づいて、PDFデータ601に含まれるオブジェクトデータ603〜605のうち、オブジェクトデータ604と605とが抽出される。オブジェクトデータ603は、人物条件は当てはまるが、日付条件が当てはまらないため抽出されない。
【0030】
また、オブジェクトデータ処理部303は、抽出されたオブジェクトデータを合成し、ビットマップデータを生成する機能も有する。図6(b)は、オブジェクトデータ604と605を合成した場合の模式図である。尚、合成後のオブジェクトデータは、ビットマップデータとする。
【0031】
また、オブジェクトデータ処理部303は、後述する差分抽出部304において抽出された差分からオブジェクトデータを生成する機能も有する。
【0032】
なお、オブジェクトデータ処理部303は、スキャン画像にQRコードが含まれる場合、該QRコードから得られるアドレス情報(電子文書特定情報)とオブジェクトID情報とに基づき、該当する電子文書データからオブジェクトデータを抽出する機能も有する。
【0033】
<差分抽出部>
差分抽出部304は、スキャナ部201で読み取られたビットマップデータと、オブジェクトデータ処理部303によって合成されたデータ(印刷出力された元のデータ)との差分を抽出する。すなわち、印刷後の原稿に対してユーザーにより新たに追記された部分を、差分として抽出する。以下、図6を用いて補足する。図6(b)は、オブジェクトデータ604と605を合成した場合のビットマップデータである。図6(c)は、図6(b)を印刷した紙文書に対して、ユーザーが書き込み編集(追記)を行った後の状態を示す図である。図6(c)に示す文字列611が、ユーザーによって記入されている。差分抽出部304は、図6(b)のビットマップデータと、スキャナ部201で読み取られた図6(c)のビットマップデータの差分を抽出する。差分抽出方法の一例として、本実施例では、各々の画像の2値化を行い画素単位で比較する。結果として得られる差分のビットマップデータを図7(d)に示す。図7(d)に示す差分のビットマップデータから、オブジェクトデータ処理部303は、オブジェクトデータ612を生成する。本実施形態では、オブジェクトデータをJPEG圧縮したデータに変換する。なお、QRコードが付加されている場合は、記憶部に記憶されている電子文書データに含まれるオブジェクトのビットマップデータを容易に特定することができるので、差分抽出時の比較を容易に行うことができる。また、QRコードが付加されていない場合は、スキャンした原稿のビットマップデータに含まれるオブジェクトを抽出し、当該抽出したオブジェクトを、記憶部に記憶されているオブジェクトと比較することにより、印刷に用いた電子文書データを特定することも可能である。
【0034】
<タグ情報付加部>
タグ情報付加部302は、オブジェクトデータ処理部303によって新たに生成されたオブジェクトデータに対して、タグ情報を付加する。タグ情報としては、日付情報や人物情報があげられる。日付情報や人物情報は、新規作成した日時情報、人物情報、編集した日時情報、人物情報を含むものとする。さらに、本実施形態では、オブジェクトデータの占有率もタグ情報として付加される。本実施形態では、差分抽出部304で差分が抽出された後に、操作部203上にタグ情報入力画面を表示し、人物情報などのタグ情報を入力可能とし、入力されたタグ情報をオブジェクトデータに対して付加するものとする。その他の方法としては、紙文書をスキャナ部201で読み取る際に、操作部203でタグ情報として付加する情報を予め指定しておくようにしてもよい。また、日付情報はスキャンした日時をデフォルトで付加するように構成してもよい。また、占有率は、後述するように、紙文書の面積に対して当該オブジェクトが占める面積の割合を計算して付加されるものとする。オブジェクトデータ処理部303によって生成されたオブジェクトデータとタグ情報付加部302によって付加されたタグ情報の模式図を図7(e)に示す。オブジェクトデータ612に対して、タグ情報613として、(日付:3月4日)(名前:Dさん)(占有率:Q%)が付加され、関連付けられている。
【0035】
<フォーマット変換部>
フォーマット変換部301は、記憶部211に格納されている電子文書データに対して、オブジェクトデータ処理部303によって新たに生成されたオブジェクトデータと、タグ情報付加部302によって付加されたタグ情報とを追加格納する。本実施形態では、新たなオブジェクトデータとタグ情報とを新たなレイヤーに格納したPDFデータに変換する。PDFデータに変換された状態の例を図7(f)に示す。また、図9(f)は、3月2日〜3月4日の間の日付が付与されているオブジェクトを表示するように設定したときに、図7(f)のPDFデータを操作部203の表示ウインドウ708に表示させたときの画面である。このように、抽出した追記部分を元の電子文書データに追加格納していくので、保存に必要なデータ容量が少なくて済み、効率的に更新することが可能となる。
【0036】
<下地判定部>
下地判定部305は、オブジェクトデータ処理部303によって生成される各オブジェクトデータの面積の占有率を求める。以下図6(a)の例を用いて補足説明する。下地判定部305は、白紙であるJPEGデータ602の面積(すなわち、出力される原稿の面積)に対する、各オブジェクトデータ603、604、605の面積の比率を計算する。下地判定部305は、計算した結果を占有率(占有面積の情報)としてタグ情報付加部302に送信する。その結果、タグ情報付加部302は当該受信した占有率の情報をタグ情報として、各オブジェクトに付加する。
【0037】
また、下地判定部305は、電子文書の印刷指示が為された際に、ユーザーが希望する下地(欄外のスペースやオブジェクト間のスペース)があるか否かの判定も行う。下地判定部305は、ユーザーが希望する占有率の閾値を予め記憶しておく。例えば、図8に示すように、下地判定の基準となる占有率の閾値を設定するための下地判定基準設定画面を操作部203に表示し、ユーザーに所望の占有率を指示させる。ボタン801、802、803は、書き込みを行う下地箇所の面積を選択するためのボタンである。いずれかのボタンが押下されると下地判定部305は、その選択に応じた占有率の閾値を記憶する。例えば、ボタン801が押下されると、オブジェクトの占有率80%(すなわち下地のスペースが20%)として記憶される。また、ボタン802の場合はオブジェクト占有率50%(下地50%)、ボタン803の場合は、オブジェクトの占有率20%(下地80%)が設定されることになる。以下、図6(a)のようなPDFデータを印刷する例を用いて補足説明する。まず、下地判定部305は、PDFデータ601内の印刷対象となる各オブジェクトデータ603、604、605のタグ情報606、607、608に記載されている占有率を合計する。下地判定部305は、その占有率の合計と予め設定されている占有率の閾値とを比較する。下地判定部305は、比較結果に基づき、占有率の合計が該閾値よりも大きいと判定した場合には、下地スペースが所望の閾値より少ないことを示す下地不十分情報を下地生成部306に送信する。また、下地判定部305は、占有率の合計が該閾値以下である場合には、下地スペースが十分あると判定し、前記下地不十分情報は下地生成部306に送信しない。
【0038】
<下地生成部>
下地生成部306は、ユーザーが所望する下地のスペースを生成するために、ブリンタ部202で印刷する際のレイアウトを決定する。下地生成部306で実行する処理の詳細を、図4のフローチャートを用いて説明する。ステップS401において、下地生成部306は、PDFデータ601の印刷対象のオブジェクトデータをレンダリングして、ビットマップデータを生成する。ステップS402において、下地生成部306は、下地判定部305から下地不十分情報を受信したか否かを判定する。下地不十分情報が受信してない場合には、ユーザーが所望する割合以上の下地が存在すると判定されたことになるので、下地生成部306は、ステップS406に進み、ステップS401でレンダリングしたビットマップデータを印刷データ生成部307に送信する。一方、ステップS402で下地不十分情報があると判断した場合には、ステップS403において、下地生成部306は、PDFデータ601内で指定されているサイズの用紙が画像処理装置MFP内にあるか否かを判定する。用紙があると判定した場合、下地生成部306は、ステップS404において、オブジェクトの占有率が所望の閾値以下になるように(すなわち十分な下地スペースを生成するために)ビットマップデータの縮小を行い、ステップS406において、当該縮小されたビットマップデータを印刷データ生成部307に送信する。一方、ステップS403で用紙がないと判定した場合には、下地生成部306は、ステップS405において、PDFデータ601で指定されている用紙サイズよりも大きなサイズの用紙を選択する。この際、オブジェクト占有率が所望の閾値以下になるような用紙を選択するものとする。なお、画像処理装置が備える最大の用紙を選択したときに、オブジェクト占有率が所望の閾値以下にならなかった場合は、ビットマップ画像の縮小処理も合わせて行うこととする。そして、その用紙サイズの情報とともに、ビットマップデータ(または必要に応じて縮小されたビットマップデータ)を、ステップS406において印刷データ生成部307に送信する。なお、ステップS404、S405では、ビットマップデータが配置される位置も決定されるので、ステップS406では、その配置情報も一緒に送信される。
【0039】
図5(a)〜(c)を用いて、ステップS404やステップS405での処理方法の一例を説明する。ステップS404でビットマップデータの縮小を行う場合、本実施形態では、最も古いオブジェクトの位置(すなわち、最初に印刷されたときの文書に含まれていたオブジェクトの位置)に基づいて、縮小時のレイアウトを決定する。そこで、下地生成部306は、まずPDFデータ601で最も古くから格納されていたオブジェクトデータ603を日付情報に基づいて判定し、当該オブジェクトデータの用紙上での位置を判定する。位置の判定としては、図5(a)のように、PDFデータ601を4分割した場合に、オブジェクトデータ603の位置が4分割した領域501〜504のいずれに属するかを判定する。この判定結果に基づいて、縮小画像を、左右方向と上下方向のどちらに寄せて配置するかを決定する。なお、最も古いオブジェクトデータが1つの領域内だけに位置していた場合は、縮小画像を、その領域の方向に寄せて配置するものとする。例えば、最も古いオブジェクトデータが左上領域501内にだけ位置していた場合、縮小画像は左上に寄せて配置する。また、最も古いオブジェクトデータが隣接する2つの領域にまたがって位置していた場合は、それらの領域の方向に寄せて配置するものとする。例えば、図5(a)の例では、最も古いオブジェクトデータ603は左下の領域503と右下の領域504にまたがって位置しているので、図5(b)に示すように、縮小した画像を左右中央下寄せで配置する。また、最も古いオブジェクトデータが3つ以上の領域にまたがって位置していた場合は、縮小画像を原稿の中央に配置するものとする。なお、本実施形態において、ユーザーは、最も古いオブジェクトを基準として追記していく場合が多いと考えられるため、上述したように縮小画像を配置するものとしたが、本発明はこれに限るものではない。
【0040】
また、本実施形態では、ステップS405でPDFデータで指定されている用紙サイズよりも大きな用紙に印刷する場合も、最も古いオブジェクトの位置(すなわち、最初に印刷されたときの文書に含まれていたオブジェクトの位置)に基づいてレイアウトを決定する。この判定手法としては、上述したステップS404と同様の判定手法を用いることが可能である。すなわち、PDFデータ601を4分割した場合に、オブジェクトデータ603の位置が4分割した領域501〜504のいずれに属するかを判定した結果に基づいて、ビットマップデータを左右方向と上下方向のどちらに寄せて配置するかを決定する。例えば、図5(a)の例では、最も古いオブジェクトデータ603は左下の領域503と右下の領域504にまたがって位置しているので、図5(c)に示すように、ビットマップデータを左右中央下寄せで配置する。
【0041】
<印刷データ生成部>
印刷データ生成部307は、下地生成部306で生成した下地が十分存在するレイアウトのビットマップデータに対して印刷用の画像処理を施して印刷データを生成し、プリンタ部202に当該生成された印刷データを送信する。なお、印刷用の画像処理とは、色処理や画像形成処理を指す。印刷データを受信したプリンタ部202は、印刷出力する。
【0042】
ここで、図6の例を用いて本発明におけるポイントを以下にまとめる。記憶部211に格納されているPDFデータは、図6(a)や図6(f)のようなデータである。該PDFデータに対してユーザーが印刷対象オブジェクトの条件設定を行った後にプリント指示した場合、ユーザーが更に追記編集するのに十分な下地(すなわち書き込みスペース)があるか否かを、オブジェクト占有率と予め設定された閾値と比較することで判定する。そして、十分な下地がないと判定した場合には、下地を生成するための処理(書き込みスペースを空けるための処理)を行った後にプリント出力する。このように構成することで、ユーザーが所望する広さの下地を有する印刷出力物を、効率的に生成することが可能になる。
【0043】
<スキャン時の処理の詳細>
図11は、上述した差分抽出部304、オブジェクトデータ処理部303、下地判定部305、タグ情報付加部302、フォーマット変換部301等により実行されるスキャン時の処理の詳細を示すフローチャートである。ここでは、追記編集編集が行われた文書画像と記憶部211に格納されている電子文書データとの差分を抽出し、抽出した差分からオブジェクトデータを生成し、当該オブジェクトデータの占有率を算出し、該電子文書データを更新して記憶部211に格納する。図11のフローチャートの各処理を実行するための各処理部として、CPU205を機能させるためのプログラムは、ROM210または記憶部211(コンピュータ読取可能な記憶媒体)に格納されているものとする。
【0044】
まず、ステップS901において、スキャナ部201を介して紙文書をスキャンし、所定のスキャン画像処理を実行した後のビットマップデータを、データ処理部215へ入力する。尚、スキャン画像処理としては、下地除去処理、色変換処理、フィルタ処理などがあげられる。
【0045】
次に、ステップS902において、データ処理部215の差分抽出部304は、記憶部211から比較対象として呼び出した電子文書データのビットマップデータを生成する。そして、ステップS901で取得したビットマップデータと該電子文書データから生成したビットマップデータとの間の差分を抽出する。この際に差分がなかった場合には、処理を終了する。一方、差分があった場合には、ステップS903に進み、オブジェクトデータ処理部303は、当該抽出された差分からオブジェクトデータを生成する。なお、比較対象として呼び出される電子文書データは、紙文書に付加されているQRコードなどの識別子から特定されるようにしてもよい。また、スキャンした紙原稿のビットマップデータに含まれるオブジェクト群を抽出し、当該抽出したオブジェクト群を、記憶部に記憶されているオブジェクトと比較することにより、当該紙文書の印刷に用いた電子文書データを特定するようにしてもよい。
【0046】
ステップS904において、下地判定部305は、当該生成されたオブジェクトデータの占有率を算出し、算出された占有率を占有率情報としてタグ情報付加部302に送信する。
【0047】
ステップS905において、タグ情報付加部302は、ステップS903で生成されたオブジェクトデータに対して、日付、名前、占有率情報などをタグ情報として付加する。
【0048】
ステップS906において、フォーマット変換部301は、ステップS902で呼び出された電子文書データに対して、ステップS903で新たに生成されたオブジェクトデータと、ステップS905で付加されたタグ情報とを追加格納する。このようにして、呼び出した電子文書データを、当該新たなオブジェクトデータとタグ情報とを新たなレイヤーに格納した電子文書データ(PDFデータ)へ変換する。
【0049】
ステップS907では、ステップS906で変換された電子文書データを記憶部211に保存して終了する。
【0050】
このように、電子文書ファイリングされている電子文書を印刷出力する前に、印刷対象データの下地(欄外のスペースやオブジェクト間のスペース)が十分あるか否かを判定する。下地が十分無い場合は、下地スペースが空くようにオブジェクトデータに対して縮小処理や用紙サイズ変更などの変更処理を行うことにより、オブジェクトデータに対して変更を加える。したがって、印刷出力物には、常にユーザーが希望するサイズの下地を確保することが可能となる。また、ユーザーが条件設定することにより任意のオブジェクトを選択して印刷出力することができ、その選択されたオブジェクトに応じて下地が十分あるか判定する。そして、当該任意の情報が印刷された出力物に対して追加編集を行った場合でも、元の電子文書の対応するオブジェクトと比較することにより容易に差分が抽出でき、当該差分のオブジェクトデータを元の電子文書に追加格納することが可能となる。
【0051】
(実施形態2)
実施形態1では、ステップS404で縮小レイアウトしたり、ステップS405で紙のサイズを変えたりすることによって、十分な下地を確保する例を示した。一方、ユーザーによっては、縮小レイアウトや紙サイズ変更を望まない場合もあり得る。
【0052】
実施形態2では、ユーザーが希望するサイズの下地を生成する別の方法について、図12のフローチャートを用いて説明する。
【0053】
ステップS1001において、下地生成部306は、下地判定部305から下地不十分情報を受信したか否かを判定する。下地不十分情報が受信してない場合には、ユーザーが所望する割合以上の下地が存在すると判定されたことになるので、下地生成部306は、ステップS1006に進み、PDFデータ601をレンダリングしてビットマップデータを生成する。そして、ステップS1007では、ステップS1006でレンダリングしたビットマップデータを印刷データ生成部307に送信する。
【0054】
一方、ステップS1001で下地不十分情報があると判断した場合には、ステップS1002に進み、下地生成部306は、ユーザーによって設定されたオブジェクト選択モードが自動であるか、手動であるかの判定を行う。オブジェクト選択モードの設定は、図13に示すような画面を介してユーザーにより選択される。なお、オブジェクト選択モードの設定は予め行っておいてもよいし、ステップS1002の時点で行うようにしてもよい。なお、図13でボタン1101の「自動」が選択された場合、更に、図14に示すような画面が表示されてオブジェクトデータ選択のルールをユーザーに設定させる。
【0055】
ステップS1003において、下地生成部306は、ユーザーにより設定されたオブジェクトデータ選択のルールに従って、印刷対象にするオブジェクトデータの選択を行う。例えば、図14は、日付のタグ情報に基づき、古いオブジェクトを優先して印刷するか(1201)、新しいオブジェクトを優先して印刷するか(1202)を選択するためのユーザーインタフェースである。例えば、ボタン1202が選択された場合は、日付が新しいオブジェクトが優先して印刷されることになるので、ステップS1003では、日付の最も古いオブジェクトから順に、印刷対象外にしていくことになる。また、ボタン1201が選択された場合は、日付が古いオブジェクトが優先して印刷されることになるので、日付の最も新しいオブジェクトから順に、印刷対象外にしていくことになる。
【0056】
ステップS1004において、下地判定部305は、ステップS1003で選択されたオブジェクトデータの合計の占有率を算出し、予め記憶しておいたユーザーが希望する占有率の閾値と比較して、合計占有率が閾値より大きいか判定する。オブジェクトデータの合計占有率の方が該閾値より大きいと判定した場合、下地のスペースがまだ不十分であるので、ステップS1003に戻って、印刷対象外にするオブジェクトを増やして、印刷対象のオブジェクトを選択し直す。ステップS1004でオブジェクトの合計占有率が該閾値より小さくなったと判定すると、ステップS1006に進んで、当該選択されたオブジェクトデータをレンダリングしてビットマップデータを生成する。
【0057】
一方、図13でボタン1102の「手動」が選択されていた場合、ステップS1002では、オブジェクトデータ選択モードが手動であると判定してステップS1005に進む。ステップS1005では、図15(g)に示すようなオブジェクト選択用画面のユーザーインタフェースを操作部203に表示して、ユーザーに、印刷対象にするオブジェクトデータを選択させる。オブジェクトデータの選択が終了すると、ステップS1006に進んで、当該ユーザーにより選択されたオブジェクトデータをレンダリングしてビットマップデータを生成する。図15(g)の画面内の表示ウインドウ712では、現在選択中のオブジェクトデータをレンダリングした場合の電子文書データの画像が表示されている。ユーザーはこの表示ウインドウ上の各オブジェクトの領域を押下したり、オブジェクトデータを選択するための条件(例えば日付条件や人物条件)を設定したりすることにより、各オブジェクトを印刷対象にするか否かを選択することができる。また、選択中のオブジェクトデータの合計占有率に基づき下地判定部305から下地不十分情報を受信した場合、図15(g)のメッセージウインドウ713には警告メッセージが表示される。当該表示される警告メッセージは、選択中のオブジェクトデータの占有率がユーザー所望の閾値よりも大きい(すなわち、下地が希望する面積に達していない)ことをユーザーに通知するためのものである。ユーザーが印刷対象にするオブジェクトデータを選択するのに応じて表示される電子文書データの画像の例を、図15(h)の表示ウインドウ714に表示する。図15(g)で表示されているオブジェクト群のうち、オブジェクト「あいうえお」と「たちつてと」とが非選択状態になると、図15(h)のように、現在選択中のオブジェクト「かきくけこ」と「さしすせそ」のみが表示される。そして、このようなユーザーによって印刷対象オブジェクトの選別が行われた結果、印刷対象のオブジェクトデータの占有率がユーザー所望の閾値以下になれば(すなわち、下地が希望する面積に達すれば)、図15(g)で表示されていた警告メッセージは消去される。そして、プリントボタンが押下されると、当該印刷対象に選択されているオブジェクトデータの印刷出力処理が実行される。
【0058】
以上説明したように、実施形態2では、オブジェクトの合計の占有率が所定閾値以上である場合、印刷対象にするオブジェクトの削減(印刷対象オブジェクトを減らす処理)を行う。なお、上述したステップS1003では日付情報に基づいてオブジェクトを自動的に選択するものとしたが、これに限るものではなく、その他のタグ情報を用いて選択するようにしても構わない。
【0059】
このように、常にユーザーが希望するサイズの下地を確保することが可能なオブジェクトデータを印刷対象として選択することで、紙サイズを変更したり縮小したりすることなく、下地スペースを確保した状態で印刷出力することが可能となる。
【0060】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するためのソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPUやMPU等)がプログラムを読み出して実行する処理である。
【技術分野】
【0001】
本発明は、ファイリングされた電子文書の出力を制御する画像処理装置、画像処理方法、コンピュータプログラムに関する。
【背景技術】
【0002】
近年の複写機は、内部画像処理のデジタル化によって、目覚しいスピードで多機能化が進んでいる。例えば、基本的な機能として、原稿を複写するコピー機能、ホストコンピュータで作成した文書のプリントが可能なPDL印刷機能(PDLで記述されたデータの印刷機能)、スキャン機能、ネットワークを介してスキャン画像を送信する送信機能などを有する。その他にも、コピー機能やPDL機能やスキャン機能によって生成される画像データを複写機内の保存部(ボックス)に保存しておき、後で印刷などに再利用できるようにするボックス機能や、原稿画像の編集機能など、多くの機能を有している。
【0003】
また、スキャン画像を複写機内の保存部に保存したり、ネットワークを介して送信したスキャン画像をサーバに保存させたりすることで、スキャンした文書の画像をファイリングする電子文書ファイリング技術が注目されている。電子文書ファイリングは、文書画像を保存する際にデータベース化して保存することにより、保存している電子文書の検索が容易に行えるようになり、再利用しやすくなる。一方、電子文書ファイリングの重要な課題として、文書の保存に必要なメモリ量の削減を挙げることができる。その課題を解決するために、特許文献1では、入力されたスキャン画像データを、既にファイリングされている元文書と比較して追加情報(追記部分)を抽出し、その追加情報をファイリングされていた文書に階層構造にして保存する技術が開示されている。また、特許文献1では、入力された画像データの比較対象になる元文書をユーザーの指定に基づいて特定する例と、電子文書を印刷する際にバーコード等の選別符号を付与しておき、スキャンした際に当該選別符号を識別して元文書を特定する例とが記載されている。また、特許文献1では、追記が為された後の文書Bに対して、更に追記がなされた場合、当該追記部分を抽出することが記載されている。すなわち、特許文献1では、同じ紙文書に対して追記が為されるたびに追記部分を抽出することができるようになっている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平08−317155号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1のような追記部分(差分)を抽出してファイリングする機能を利用すれば、例えば、以下のようなワークフローが考えられる。例えば、打合せ等を行った際に書き込みが為された原稿(以下、編集された原稿と呼ぶ)をスキャンしてファイリングしておき、次の打合せ時には、その文書をプリント出力して、そのプリント出力物に書き込み編集が更に行われる、といったワークフローが考えられる。
【0006】
一方、ユーザーが原稿上に書き込みを行う場合、原稿上の欄外のスペースだけでなく、原稿内の文字や図形などのオブジェクト間のスペースに書き込むことも多い。すなわち、印刷された原稿には、欄外やオブジェクト間に、ユーザーが書き込みを行うのに適したスペースがあるのが望ましい。しかしながら、このようなプリントと書き込みのワークフローが繰り返し行われた場合、原稿上に書き込みを行うためのスペースがなくなっていってしまう。
【0007】
なお、以下の本発明の説明では、欄外のスペースやオブジェクト間のスペースをまとめて、下地と呼ぶこととする。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明の画像処理装置は、少なくとも1つのオブジェクトデータを含む電子文書を記憶する記憶手段と、ユーザーの指示に基づいて、前記オブジェクトデータが配置されない下地スペースが十分あるかどうかの判定に用いるための閾値を設定する設定手段と、前記電子文書に含まれるオブジェクトデータの印刷指示が為された場合、当該印刷指示された印刷対象のオブジェクトデータの用紙上に占める占有率が前記設定された閾値より大きいか否か判定する下地判定手段と、前記下地判定手段において前記占有率が前記閾値より大きいと判定された場合、前記オブジェクトデータの占有率が前記閾値以下になるように、当該印刷対象のオブジェクトデータに対して変更処理を行う下地生成手段と、前記下地生成手段で前記変更処理が行われた後のオブジェクトデータの印刷データを生成して出力する印刷データ生成手段と、を有することを特徴とする。
【発明の効果】
【0009】
本発明によれば、ファイリングされている文書を印刷出力する際に、該印刷出力物にユーザーが所望する適切な下地(スペース)が十分あるか否かを判定し、下地が足りないと判定した場合は、下地を生成して印刷出力する。したがって、ユーザーが希望する下地を有する印刷物を容易に出力できるようになる。
【図面の簡単な説明】
【0010】
【図1】本発明におけるPDFデータの内部構造を示す図
【図2】本発明におけるMFPを示すブロック図
【図3】図2におけるデータ処理部215の構成例を示すブロック図
【図4】本発明の実施形態1で、下地生成部306が実行する処理を説明するためのフローチャート
【図5】下地を生成する際の処理概念図
【図6】本発明におけるPDFデータの説明図
【図7】本発明におけるPDFデータの説明図
【図8】操作部203に表示されるユーザーインタフェース画面の説明図
【図9】操作部203に表示されるユーザーインタフェース画面の説明図
【図10】操作部203に表示される下地判定基準設定画面の説明図
【図11】スキャン時の処理を説明するフローチャート
【図12】実施形態2で、下地生成部306が実行する処理を説明するためのフローチャート
【図13】実施形態2で、操作部203に表示される下地生成時のオブジェクト選択モードを設定するための画面の説明図
【図14】実施形態2で、操作部203に表示される下地生成時のオブジェクトデータ選択ルールを設定するための画面の説明図
【図15】実施形態2で、操作部203に表示されるユーザーインタフェース画面の説明図
【発明を実施するための形態】
【0011】
(実施形態1)
<画像処理装置の詳細構成>
図2は本実施形態1において、画像処理装置として用いる複合機(MFP)の詳細構成を示す図である。MFPは、画像入力デバイスであるスキャナ部201と画像出力デバイスであるプリンタ部202、タッチパネルなどのユーザーインタフェースである操作部203、CPU205やメモリ等で構成される制御ユニット204などを有する。制御ユニット204は、画像情報やデバイス情報の入出力を行うコントローラであり、スキャナ部201、プリンタ部202、操作部203と接続されている。更に、制御ユニット204はLAN209を介して外部装置と通信することもできる。
【0012】
CPU205はシステム全体を制御する情報処理部(コンピュータ)である。RAM206はCPU205が動作するためのシステムワークメモリとして利用され、更に、画像データを一時記憶するための画像メモリでもある。ROM210は、ブートROMであり、システムのブートプログラム等のプログラムが格納されている。記憶部211はハードディスクドライブで、システム制御ソフトウェア、画像データや電子文書などを格納する。操作部I/F207は操作部(UI)203とのインターフェース部で、操作部203に表示するための画像データを操作部203に対して出力する。また、操作部I/F207は本画像処理装置の使用者によって操作部203を介して指示された内容に関する情報を、CPU205に伝える役割をする。ネットワークIF208は本画像処理装置をLAN209に接続し、パケット形式の情報の入出力を行うためのインターフェースである。以上のデバイスがシステムバス216上に配置される。
【0013】
イメージバスインターフェース212はシステムバス216と画像データを高速で転送する画像バス217とを接続し、データ構造を変換するバスブリッジである。画像バス217は、例えば、PCIバスやIEEE1394で構成される。画像バス222上には、以下のデバイス(RIP213、デバイスI/F214、データ処理部215)が配置される。ラスターイメージプロセッサ(RIP)213はPDL(ページ記述言語)コードを解析し、指定された解像度のビットマップイメージに展開する、いわゆるレンダリング処理を実現する。このビットマップイメージに展開する際には、各画素単位あるいは領域単位で属性情報が付加されることになる。これを像域判定処理と呼ぶ。像域判定処理により、画素毎あるいは領域毎に、文字(テキスト)や線(ライン)、グラフィクス、イメージなどといったオブジェクト種類を示す属性情報が付与される。例えば、PDLコード内に含まれるPDL記述のオブジェクトの種類に応じて、RIP213から像域信号が出力され、その信号値で示される属性に応じた属性情報が、オブジェクトに対応する画素や領域に関連づけて保存される。したがって画像データには、関連づけられた属性情報が付属している。デバイスI/F部214は、信号線218を介して画像入力デバイスであるスキャナ部201、信号線219を介して画像出力デバイスであるプリンタ部202、をそれぞれ制御ユニット204に接続し、画像データの同期系/非同期系の変換を行う。
【0014】
<データ処理部>
次に、図3を用いて、図2のデータ処理部215の詳細について説明を行う。データ処理部215は、フォーマット変換部301、タグ情報付加部302、オブジェクトデータ処理部303、差分抽出部304、下地判定部305、下地生成部306、印刷データ生成部307、から構成される。なお、本実施形態では、コンピュータ読取可能な記憶媒体に格納されたコンピュータプログラムをコンピュータが実行することによって、データ処理部215の各処理部(図3の各処理部)を実現するものとするが、これに限るものではない。例えば、データ処理部215(図3の各処理部)の一部または全部を、電子回路等のハードウェアで実現するように構成してもよい。
【0015】
データ処理部215は、入力データ300が入力されると、各処理部301〜307で処理を行い、出力データ310を出力する。入力データ300は、スキャナ部201で原稿を読み取ることにより得られるビットマップデータ(画像データ)、または記憶部211に格納されているビットマップデータや電子文書データである。ここで、電子文書データとは、例えば、PDF、XPS、OfficeOpenXML等のフォーマットの電子文書である。出力データ310は、ビットマップデータ、または電子文書データであり、記憶部211に格納したり、プリンタ部202で印刷出力したり、LAN209によってネットワーク接続された不図示の外部装置に送信したりする処理が行われる。尚、本実施形態では、電子文書データとしてPDF(以下、PDFデータ)を用いた説明を行うものとする。
【0016】
<PDFデータ>
次に、図6(a)を用いて、PDFデータの詳細について説明を行う。図6(a)は、記憶部211に格納されているPDFデータを説明するための概念図である。PDFデータを描画再生可能なソフトウェアの実例としては、Adobe Reader(商標)が挙げられる。なお、本実施形態では、PDFデータを後述する操作部203においても表示可能とする。
【0017】
図6(a)の601は、記憶部211に格納されるPDFデータの一例を示しており、602〜605は、PDFデータ601の階層構造(レイヤー構造)を模式的に示す図である。なお、602〜605は、各々JPEGデータであって、JPEGデータ602は、背景画像を示すデータ、JPEGデータ603〜605は、背景の上に描画される文字列データ(文字列のオブジェクトデータ)である。本実施形態では、JPEGデータ602は、例として全て白画素で構成されるデータ、JPEGデータ603、604、605は、各々「あいうえお」「かきくけこ」「さしすせそ」のビットマップ画像の文字列情報で構成されるデータとして説明を行う。なお、PDFデータが内部に格納可能なデータであれば、JPEGデータ以外のデータでもよく、例えば、MMRデータやZIPデータ等であってもよい。また、JPEGデータを構成している情報は、文字列情報に限ることはなく、写真や線画、イラスト等などの別のオブジェクトデータでも構わない。
【0018】
また、PDFデータを階層構造で表現する場合には、各々の階層をレイヤーと呼ぶ。即ち、JPEGデータ602〜605は、JPEGデータであるとともに各々PDFデータ601を構成するレイヤーでもある。PDFデータをレイヤーで表現する場合、図6(a)の609に示す矢印の方向から画像を見る(すなわち、JPEGデータ602〜605を順番に重ねて描画する)と、PDFデータを表示させた時に601に示すように見える。各レイヤーにおいてオブジェクト(JPEGデータ603〜605)以外の部分610は透明であるため、609に示す矢印の方向から画像を見ると、JPEGデータ603〜605の周囲に相当する部分は、背景のJPEGデータ602が見えることになる。なお、JPEGデータ603と604の上に605が位置的に重なっていた場合は、609に示す矢印の方向から画像を見るとJPEGデータ605の下のレイヤーにあるJPEGデータ603、604の重なっている部分は見えないことになる。図6の例においては、JPEGデータ603〜605が位置的に重なっておらず、609に示す矢印の方向から画像を見た場合は601に示すように見えるものとする。
【0019】
尚、本実施例では、説明の便宜上、JPEGデータ603〜605のレイヤーを全てオブジェクトデータと呼ぶ。
【0020】
図6(a)において、オブジェクトデータ603〜605それぞれに対して、タグ情報606〜608が付与されている。例えば、オブジェクトデータ603には、「日付:3月1日、名前:Aさん、占有率:M%」のタグ情報が付与されている。タグ情報606〜608は、後述する操作部203における条件設定にもとづいて用いられる。また、占有率の説明については後述する。
【0021】
<PDFデータの構造>
次に、PDFデータの内部構造について図1を用いて説明する。図6(a)で示されるPDFデータの模式図は、図1に示される内部データ構造を有している。図6(a)のオブジェクトデータ602〜605は、各々図1の101〜104に対応している。例えば、図6(a)のオブジェクトデータ603は、図1のオブジェクトデータ102に対応している。また、図6(a)の背景を示すオブジェクトデータ602は、図1のオブジェクトデータ101に対応している。なお、オブジェクトデータ101〜104は、それぞれPDFデータを構成するためのPS(PostScript)言語で記述されているものとする。
【0022】
また、図1のオブジェクトデータ102(図6(a)のオブジェクト603に相当)は、オブジェクトID情報としてオブジェクトIDが2であるJPEGデータであることを示す。また、オブジェクトデータ102は、タグ情報として、「(日付:3月1日)、(名前:Aさん)、(占有率:M%)」が関連付けられている。即ち、オブジェクトデータを検索する際に、例えば、「3月1日」というタグ情報で検索すると、オブジェクトデータ102が抽出される。また、「座標(X2、Y2)に描画」は、JPEGデータ(ID2)を(X2、Y2)に描画するという命令である。
【0023】
<操作部>
次に、図8〜図9に記載のユーザーインタフェース画面(a)〜(f)を用いて、操作部203の詳細について説明を行う。尚、本実施例においては、MFPに接続されている操作部203について説明を行うが、これに限るものではなく、例えば、LAN209によってネットワーク接続された同様の機能を有するホストコンピュータの操作部でも実現可能である。
【0024】
図8の画面(a)は、MFPにおける操作部203に表示される画面の例である。701は、コピー機能を動作させるためのボタンである。該ボタン701が選択されると、スキャナ部201で読み取られた原稿の画像をプリンタ部202で印刷出力するための設定画面に切り替わり、コピー機能を利用できるようになる。702は、送信機能(センド機能)を動作させるためのボタンである。該ボタン702が選択されると、スキャナ部で読み取った原稿の画像を、ビットマップデータや電子文書データとして、記憶部211に格納したり、ネットワークを介して外部装置に送信したりするための設定画面に切り替わり、送信機能が利用できるようになる。703は、ボックス機能を動作させるためのボタンである。該ボタン703が選択されると、記憶部211に格納されているビットマップデータや電子文書データを呼び出して、プリンタ部で印刷出力したり、ネットワークを介して外部装置へ送信したりするための画面に切り替わり、ボックス機能が利用できるようになる。
【0025】
図8の画面(a)はボックス機能のボタン703が選択されたときの画面である。本実施形態のボックス機能は、記憶部211に格納されている電子文書データを選択した後、更に、条件設定の指示を行うことが可能である。なお、データ選択と条件設定の詳細については後述する。ボックスボタン703が選択されると、図8の画面(a)のように、データ選択ボタン704、決定ボタン705、日付ボタン706、人物ボタン707、表示ウインドウ708、プリントボタン709が表示される。そして、データ選択ボタン704が押下されると、記憶部211に格納されている電子文書データのリストが表示ウインドウ708に表示され、更に、リストの中から所望とするデータがユーザーにより押下されると、選択されたデータが反転表示される。図8の画面(a)の表示ウインドウ708では、例として、データ(1)〜データ(5)の5つのデータが表示され、データ(2)が選択されている状態を示している。
【0026】
決定ボタン705が押下されると、表示ウインドウ708に、当該リスト上で選択されているデータの画像(またはサムネイル画像)が表示される。図8の画面(b)の表示ウインドウには、例として選択されたデータ(2)の画像710が表示されている状態を示している。なお、データ(2)は図1(図6(a))のようなデータ構造を有するものとする。ここで、プリントボタン709を押下すると、記憶部211に格納されているデータ(2)の画像710が印刷出力される。なお、印刷出力する際、データ(2)の所在を示すアドレス情報と当該印刷出力されたオブジェクトデータのIDを示すID情報とが、符号画像パターン(例えばQRコード)としてデータ(2)の画像に埋め込まれて印刷出力されるようにしてもよい。このような符号画像パターンが付加されている印刷物をスキャンすると、元の文書を特定しやすくなり、差分の抽出も容易になる。
【0027】
本実施形態では、選択されたデータ(2)の画像710が表示されている状態で、印刷出力指示する前に、ユーザーの指示により、タグ情報に基づく条件設定を行うことが可能である。本実施形態において、条件設定は、日付条件と人物条件とを設定可能である。例えば、日付ボタン706が押下されると、日付条件を選択するための日付リスト、またはカレンダーが表示ウインドウ708に表示される。そして、ユーザー所望の日付が押下されると、押下された日付が反転表示され、選択状態になる。図8の画面(c)の表示ウインドウ708には、例として3月1日〜3月5日の5つの日付が表示されており、3月2日と3月3日が選択された状態を示している。同様に、人物ボタン707が押下されると、人物条件を選択するための人物名のリストが表示ウインドウ708に表示される。そして、ユーザー所望の人物の名前が押下されると、当該押下された名前が反転表示され、選択状態になる。図9の画面(d)の表示ウインドウ708には、例としてAさん〜Eさんの5つの名前が表示されており、AさんとBさんとCさんが選択された状態を示している。以上の条件設定が終了し、決定ボタン705が押下されると、設定された条件がデータ(2)の画像710に適用される。即ち、画像710の中で、背景画像のデータと、次の条件式に当てはまるタグ情報に関連付けられている部分のオブジェクトデータとが表示される。
条件式=((3月2日)OR(3月3日))AND((Aさん)OR(Bさん)OR(Cさん))
該条件式は、条件パラメータとしてRAM206等の記憶装置に保存される。また、例えば、日付条件として、3月1日だけが選択され、人物条件としてBさんだけが選択されている場合、条件式=(3月1日)AND(Bさん)となる。尚、条件設定については、日付条件、人物条件に限るものではなく、文字、写真、線画、イラスト等の属性条件など他の条件でも可能である。
【0028】
次に、図9の画面(e)の表示ウインドウ708には、前述の条件式(((3月2日)OR(3月3日))AND((Aさん)OR(Bさん)OR(Cさん)))に当てはまる部分が表示された状態を示している。表示されている画像は、データ(2)から抽出されたオブジェクトにより生成された画像であるため、ここではデータ(2’)と呼ぶことにする。ここで、プリントボタン709を押下すると、記憶部211に格納されているデータ(2)から抽出されたデータ(2’)が印刷出力される。この時、記憶部211におけるデータ(2)の所在を示すアドレス情報と、データ(2’)として印刷出力されたオブジェクトデータのIDを示すID情報とが、符号画像パターンであるQRコードとしてデータ(2’)の画像に埋め込まれて印刷出力されるようにするのが望ましい。
【0029】
<オブジェクトデータ処理部>
オブジェクトデータ処理部303は、記憶部211に格納されている電子文書データから、RAM206等の記憶装置に保存された条件パラメータ、及びタグ情報に基づいて、オブジェクトデータを抽出する機能を有する。以下、図6(a)のPDFデータを用いて補足する。図8(a)の表示ウインドウ708で選択されたデータ(2)を図6のPDFデータ601とする。図8(b)の表示ウインドウ708で表示される画像710は、条件設定されていないので、PDFデータ601がそのまま表示されたものである。データ(2’)は、前述したように設定された条件に従ってデータ(2)から抽出されたオブジェクトデータにより生成された画像である。条件式=((3月2日)OR(3月3日))AND((Aさん)OR(Bさん)OR(Cさん))の場合、タグ情報606〜608に基づいて、PDFデータ601に含まれるオブジェクトデータ603〜605のうち、オブジェクトデータ604と605とが抽出される。オブジェクトデータ603は、人物条件は当てはまるが、日付条件が当てはまらないため抽出されない。
【0030】
また、オブジェクトデータ処理部303は、抽出されたオブジェクトデータを合成し、ビットマップデータを生成する機能も有する。図6(b)は、オブジェクトデータ604と605を合成した場合の模式図である。尚、合成後のオブジェクトデータは、ビットマップデータとする。
【0031】
また、オブジェクトデータ処理部303は、後述する差分抽出部304において抽出された差分からオブジェクトデータを生成する機能も有する。
【0032】
なお、オブジェクトデータ処理部303は、スキャン画像にQRコードが含まれる場合、該QRコードから得られるアドレス情報(電子文書特定情報)とオブジェクトID情報とに基づき、該当する電子文書データからオブジェクトデータを抽出する機能も有する。
【0033】
<差分抽出部>
差分抽出部304は、スキャナ部201で読み取られたビットマップデータと、オブジェクトデータ処理部303によって合成されたデータ(印刷出力された元のデータ)との差分を抽出する。すなわち、印刷後の原稿に対してユーザーにより新たに追記された部分を、差分として抽出する。以下、図6を用いて補足する。図6(b)は、オブジェクトデータ604と605を合成した場合のビットマップデータである。図6(c)は、図6(b)を印刷した紙文書に対して、ユーザーが書き込み編集(追記)を行った後の状態を示す図である。図6(c)に示す文字列611が、ユーザーによって記入されている。差分抽出部304は、図6(b)のビットマップデータと、スキャナ部201で読み取られた図6(c)のビットマップデータの差分を抽出する。差分抽出方法の一例として、本実施例では、各々の画像の2値化を行い画素単位で比較する。結果として得られる差分のビットマップデータを図7(d)に示す。図7(d)に示す差分のビットマップデータから、オブジェクトデータ処理部303は、オブジェクトデータ612を生成する。本実施形態では、オブジェクトデータをJPEG圧縮したデータに変換する。なお、QRコードが付加されている場合は、記憶部に記憶されている電子文書データに含まれるオブジェクトのビットマップデータを容易に特定することができるので、差分抽出時の比較を容易に行うことができる。また、QRコードが付加されていない場合は、スキャンした原稿のビットマップデータに含まれるオブジェクトを抽出し、当該抽出したオブジェクトを、記憶部に記憶されているオブジェクトと比較することにより、印刷に用いた電子文書データを特定することも可能である。
【0034】
<タグ情報付加部>
タグ情報付加部302は、オブジェクトデータ処理部303によって新たに生成されたオブジェクトデータに対して、タグ情報を付加する。タグ情報としては、日付情報や人物情報があげられる。日付情報や人物情報は、新規作成した日時情報、人物情報、編集した日時情報、人物情報を含むものとする。さらに、本実施形態では、オブジェクトデータの占有率もタグ情報として付加される。本実施形態では、差分抽出部304で差分が抽出された後に、操作部203上にタグ情報入力画面を表示し、人物情報などのタグ情報を入力可能とし、入力されたタグ情報をオブジェクトデータに対して付加するものとする。その他の方法としては、紙文書をスキャナ部201で読み取る際に、操作部203でタグ情報として付加する情報を予め指定しておくようにしてもよい。また、日付情報はスキャンした日時をデフォルトで付加するように構成してもよい。また、占有率は、後述するように、紙文書の面積に対して当該オブジェクトが占める面積の割合を計算して付加されるものとする。オブジェクトデータ処理部303によって生成されたオブジェクトデータとタグ情報付加部302によって付加されたタグ情報の模式図を図7(e)に示す。オブジェクトデータ612に対して、タグ情報613として、(日付:3月4日)(名前:Dさん)(占有率:Q%)が付加され、関連付けられている。
【0035】
<フォーマット変換部>
フォーマット変換部301は、記憶部211に格納されている電子文書データに対して、オブジェクトデータ処理部303によって新たに生成されたオブジェクトデータと、タグ情報付加部302によって付加されたタグ情報とを追加格納する。本実施形態では、新たなオブジェクトデータとタグ情報とを新たなレイヤーに格納したPDFデータに変換する。PDFデータに変換された状態の例を図7(f)に示す。また、図9(f)は、3月2日〜3月4日の間の日付が付与されているオブジェクトを表示するように設定したときに、図7(f)のPDFデータを操作部203の表示ウインドウ708に表示させたときの画面である。このように、抽出した追記部分を元の電子文書データに追加格納していくので、保存に必要なデータ容量が少なくて済み、効率的に更新することが可能となる。
【0036】
<下地判定部>
下地判定部305は、オブジェクトデータ処理部303によって生成される各オブジェクトデータの面積の占有率を求める。以下図6(a)の例を用いて補足説明する。下地判定部305は、白紙であるJPEGデータ602の面積(すなわち、出力される原稿の面積)に対する、各オブジェクトデータ603、604、605の面積の比率を計算する。下地判定部305は、計算した結果を占有率(占有面積の情報)としてタグ情報付加部302に送信する。その結果、タグ情報付加部302は当該受信した占有率の情報をタグ情報として、各オブジェクトに付加する。
【0037】
また、下地判定部305は、電子文書の印刷指示が為された際に、ユーザーが希望する下地(欄外のスペースやオブジェクト間のスペース)があるか否かの判定も行う。下地判定部305は、ユーザーが希望する占有率の閾値を予め記憶しておく。例えば、図8に示すように、下地判定の基準となる占有率の閾値を設定するための下地判定基準設定画面を操作部203に表示し、ユーザーに所望の占有率を指示させる。ボタン801、802、803は、書き込みを行う下地箇所の面積を選択するためのボタンである。いずれかのボタンが押下されると下地判定部305は、その選択に応じた占有率の閾値を記憶する。例えば、ボタン801が押下されると、オブジェクトの占有率80%(すなわち下地のスペースが20%)として記憶される。また、ボタン802の場合はオブジェクト占有率50%(下地50%)、ボタン803の場合は、オブジェクトの占有率20%(下地80%)が設定されることになる。以下、図6(a)のようなPDFデータを印刷する例を用いて補足説明する。まず、下地判定部305は、PDFデータ601内の印刷対象となる各オブジェクトデータ603、604、605のタグ情報606、607、608に記載されている占有率を合計する。下地判定部305は、その占有率の合計と予め設定されている占有率の閾値とを比較する。下地判定部305は、比較結果に基づき、占有率の合計が該閾値よりも大きいと判定した場合には、下地スペースが所望の閾値より少ないことを示す下地不十分情報を下地生成部306に送信する。また、下地判定部305は、占有率の合計が該閾値以下である場合には、下地スペースが十分あると判定し、前記下地不十分情報は下地生成部306に送信しない。
【0038】
<下地生成部>
下地生成部306は、ユーザーが所望する下地のスペースを生成するために、ブリンタ部202で印刷する際のレイアウトを決定する。下地生成部306で実行する処理の詳細を、図4のフローチャートを用いて説明する。ステップS401において、下地生成部306は、PDFデータ601の印刷対象のオブジェクトデータをレンダリングして、ビットマップデータを生成する。ステップS402において、下地生成部306は、下地判定部305から下地不十分情報を受信したか否かを判定する。下地不十分情報が受信してない場合には、ユーザーが所望する割合以上の下地が存在すると判定されたことになるので、下地生成部306は、ステップS406に進み、ステップS401でレンダリングしたビットマップデータを印刷データ生成部307に送信する。一方、ステップS402で下地不十分情報があると判断した場合には、ステップS403において、下地生成部306は、PDFデータ601内で指定されているサイズの用紙が画像処理装置MFP内にあるか否かを判定する。用紙があると判定した場合、下地生成部306は、ステップS404において、オブジェクトの占有率が所望の閾値以下になるように(すなわち十分な下地スペースを生成するために)ビットマップデータの縮小を行い、ステップS406において、当該縮小されたビットマップデータを印刷データ生成部307に送信する。一方、ステップS403で用紙がないと判定した場合には、下地生成部306は、ステップS405において、PDFデータ601で指定されている用紙サイズよりも大きなサイズの用紙を選択する。この際、オブジェクト占有率が所望の閾値以下になるような用紙を選択するものとする。なお、画像処理装置が備える最大の用紙を選択したときに、オブジェクト占有率が所望の閾値以下にならなかった場合は、ビットマップ画像の縮小処理も合わせて行うこととする。そして、その用紙サイズの情報とともに、ビットマップデータ(または必要に応じて縮小されたビットマップデータ)を、ステップS406において印刷データ生成部307に送信する。なお、ステップS404、S405では、ビットマップデータが配置される位置も決定されるので、ステップS406では、その配置情報も一緒に送信される。
【0039】
図5(a)〜(c)を用いて、ステップS404やステップS405での処理方法の一例を説明する。ステップS404でビットマップデータの縮小を行う場合、本実施形態では、最も古いオブジェクトの位置(すなわち、最初に印刷されたときの文書に含まれていたオブジェクトの位置)に基づいて、縮小時のレイアウトを決定する。そこで、下地生成部306は、まずPDFデータ601で最も古くから格納されていたオブジェクトデータ603を日付情報に基づいて判定し、当該オブジェクトデータの用紙上での位置を判定する。位置の判定としては、図5(a)のように、PDFデータ601を4分割した場合に、オブジェクトデータ603の位置が4分割した領域501〜504のいずれに属するかを判定する。この判定結果に基づいて、縮小画像を、左右方向と上下方向のどちらに寄せて配置するかを決定する。なお、最も古いオブジェクトデータが1つの領域内だけに位置していた場合は、縮小画像を、その領域の方向に寄せて配置するものとする。例えば、最も古いオブジェクトデータが左上領域501内にだけ位置していた場合、縮小画像は左上に寄せて配置する。また、最も古いオブジェクトデータが隣接する2つの領域にまたがって位置していた場合は、それらの領域の方向に寄せて配置するものとする。例えば、図5(a)の例では、最も古いオブジェクトデータ603は左下の領域503と右下の領域504にまたがって位置しているので、図5(b)に示すように、縮小した画像を左右中央下寄せで配置する。また、最も古いオブジェクトデータが3つ以上の領域にまたがって位置していた場合は、縮小画像を原稿の中央に配置するものとする。なお、本実施形態において、ユーザーは、最も古いオブジェクトを基準として追記していく場合が多いと考えられるため、上述したように縮小画像を配置するものとしたが、本発明はこれに限るものではない。
【0040】
また、本実施形態では、ステップS405でPDFデータで指定されている用紙サイズよりも大きな用紙に印刷する場合も、最も古いオブジェクトの位置(すなわち、最初に印刷されたときの文書に含まれていたオブジェクトの位置)に基づいてレイアウトを決定する。この判定手法としては、上述したステップS404と同様の判定手法を用いることが可能である。すなわち、PDFデータ601を4分割した場合に、オブジェクトデータ603の位置が4分割した領域501〜504のいずれに属するかを判定した結果に基づいて、ビットマップデータを左右方向と上下方向のどちらに寄せて配置するかを決定する。例えば、図5(a)の例では、最も古いオブジェクトデータ603は左下の領域503と右下の領域504にまたがって位置しているので、図5(c)に示すように、ビットマップデータを左右中央下寄せで配置する。
【0041】
<印刷データ生成部>
印刷データ生成部307は、下地生成部306で生成した下地が十分存在するレイアウトのビットマップデータに対して印刷用の画像処理を施して印刷データを生成し、プリンタ部202に当該生成された印刷データを送信する。なお、印刷用の画像処理とは、色処理や画像形成処理を指す。印刷データを受信したプリンタ部202は、印刷出力する。
【0042】
ここで、図6の例を用いて本発明におけるポイントを以下にまとめる。記憶部211に格納されているPDFデータは、図6(a)や図6(f)のようなデータである。該PDFデータに対してユーザーが印刷対象オブジェクトの条件設定を行った後にプリント指示した場合、ユーザーが更に追記編集するのに十分な下地(すなわち書き込みスペース)があるか否かを、オブジェクト占有率と予め設定された閾値と比較することで判定する。そして、十分な下地がないと判定した場合には、下地を生成するための処理(書き込みスペースを空けるための処理)を行った後にプリント出力する。このように構成することで、ユーザーが所望する広さの下地を有する印刷出力物を、効率的に生成することが可能になる。
【0043】
<スキャン時の処理の詳細>
図11は、上述した差分抽出部304、オブジェクトデータ処理部303、下地判定部305、タグ情報付加部302、フォーマット変換部301等により実行されるスキャン時の処理の詳細を示すフローチャートである。ここでは、追記編集編集が行われた文書画像と記憶部211に格納されている電子文書データとの差分を抽出し、抽出した差分からオブジェクトデータを生成し、当該オブジェクトデータの占有率を算出し、該電子文書データを更新して記憶部211に格納する。図11のフローチャートの各処理を実行するための各処理部として、CPU205を機能させるためのプログラムは、ROM210または記憶部211(コンピュータ読取可能な記憶媒体)に格納されているものとする。
【0044】
まず、ステップS901において、スキャナ部201を介して紙文書をスキャンし、所定のスキャン画像処理を実行した後のビットマップデータを、データ処理部215へ入力する。尚、スキャン画像処理としては、下地除去処理、色変換処理、フィルタ処理などがあげられる。
【0045】
次に、ステップS902において、データ処理部215の差分抽出部304は、記憶部211から比較対象として呼び出した電子文書データのビットマップデータを生成する。そして、ステップS901で取得したビットマップデータと該電子文書データから生成したビットマップデータとの間の差分を抽出する。この際に差分がなかった場合には、処理を終了する。一方、差分があった場合には、ステップS903に進み、オブジェクトデータ処理部303は、当該抽出された差分からオブジェクトデータを生成する。なお、比較対象として呼び出される電子文書データは、紙文書に付加されているQRコードなどの識別子から特定されるようにしてもよい。また、スキャンした紙原稿のビットマップデータに含まれるオブジェクト群を抽出し、当該抽出したオブジェクト群を、記憶部に記憶されているオブジェクトと比較することにより、当該紙文書の印刷に用いた電子文書データを特定するようにしてもよい。
【0046】
ステップS904において、下地判定部305は、当該生成されたオブジェクトデータの占有率を算出し、算出された占有率を占有率情報としてタグ情報付加部302に送信する。
【0047】
ステップS905において、タグ情報付加部302は、ステップS903で生成されたオブジェクトデータに対して、日付、名前、占有率情報などをタグ情報として付加する。
【0048】
ステップS906において、フォーマット変換部301は、ステップS902で呼び出された電子文書データに対して、ステップS903で新たに生成されたオブジェクトデータと、ステップS905で付加されたタグ情報とを追加格納する。このようにして、呼び出した電子文書データを、当該新たなオブジェクトデータとタグ情報とを新たなレイヤーに格納した電子文書データ(PDFデータ)へ変換する。
【0049】
ステップS907では、ステップS906で変換された電子文書データを記憶部211に保存して終了する。
【0050】
このように、電子文書ファイリングされている電子文書を印刷出力する前に、印刷対象データの下地(欄外のスペースやオブジェクト間のスペース)が十分あるか否かを判定する。下地が十分無い場合は、下地スペースが空くようにオブジェクトデータに対して縮小処理や用紙サイズ変更などの変更処理を行うことにより、オブジェクトデータに対して変更を加える。したがって、印刷出力物には、常にユーザーが希望するサイズの下地を確保することが可能となる。また、ユーザーが条件設定することにより任意のオブジェクトを選択して印刷出力することができ、その選択されたオブジェクトに応じて下地が十分あるか判定する。そして、当該任意の情報が印刷された出力物に対して追加編集を行った場合でも、元の電子文書の対応するオブジェクトと比較することにより容易に差分が抽出でき、当該差分のオブジェクトデータを元の電子文書に追加格納することが可能となる。
【0051】
(実施形態2)
実施形態1では、ステップS404で縮小レイアウトしたり、ステップS405で紙のサイズを変えたりすることによって、十分な下地を確保する例を示した。一方、ユーザーによっては、縮小レイアウトや紙サイズ変更を望まない場合もあり得る。
【0052】
実施形態2では、ユーザーが希望するサイズの下地を生成する別の方法について、図12のフローチャートを用いて説明する。
【0053】
ステップS1001において、下地生成部306は、下地判定部305から下地不十分情報を受信したか否かを判定する。下地不十分情報が受信してない場合には、ユーザーが所望する割合以上の下地が存在すると判定されたことになるので、下地生成部306は、ステップS1006に進み、PDFデータ601をレンダリングしてビットマップデータを生成する。そして、ステップS1007では、ステップS1006でレンダリングしたビットマップデータを印刷データ生成部307に送信する。
【0054】
一方、ステップS1001で下地不十分情報があると判断した場合には、ステップS1002に進み、下地生成部306は、ユーザーによって設定されたオブジェクト選択モードが自動であるか、手動であるかの判定を行う。オブジェクト選択モードの設定は、図13に示すような画面を介してユーザーにより選択される。なお、オブジェクト選択モードの設定は予め行っておいてもよいし、ステップS1002の時点で行うようにしてもよい。なお、図13でボタン1101の「自動」が選択された場合、更に、図14に示すような画面が表示されてオブジェクトデータ選択のルールをユーザーに設定させる。
【0055】
ステップS1003において、下地生成部306は、ユーザーにより設定されたオブジェクトデータ選択のルールに従って、印刷対象にするオブジェクトデータの選択を行う。例えば、図14は、日付のタグ情報に基づき、古いオブジェクトを優先して印刷するか(1201)、新しいオブジェクトを優先して印刷するか(1202)を選択するためのユーザーインタフェースである。例えば、ボタン1202が選択された場合は、日付が新しいオブジェクトが優先して印刷されることになるので、ステップS1003では、日付の最も古いオブジェクトから順に、印刷対象外にしていくことになる。また、ボタン1201が選択された場合は、日付が古いオブジェクトが優先して印刷されることになるので、日付の最も新しいオブジェクトから順に、印刷対象外にしていくことになる。
【0056】
ステップS1004において、下地判定部305は、ステップS1003で選択されたオブジェクトデータの合計の占有率を算出し、予め記憶しておいたユーザーが希望する占有率の閾値と比較して、合計占有率が閾値より大きいか判定する。オブジェクトデータの合計占有率の方が該閾値より大きいと判定した場合、下地のスペースがまだ不十分であるので、ステップS1003に戻って、印刷対象外にするオブジェクトを増やして、印刷対象のオブジェクトを選択し直す。ステップS1004でオブジェクトの合計占有率が該閾値より小さくなったと判定すると、ステップS1006に進んで、当該選択されたオブジェクトデータをレンダリングしてビットマップデータを生成する。
【0057】
一方、図13でボタン1102の「手動」が選択されていた場合、ステップS1002では、オブジェクトデータ選択モードが手動であると判定してステップS1005に進む。ステップS1005では、図15(g)に示すようなオブジェクト選択用画面のユーザーインタフェースを操作部203に表示して、ユーザーに、印刷対象にするオブジェクトデータを選択させる。オブジェクトデータの選択が終了すると、ステップS1006に進んで、当該ユーザーにより選択されたオブジェクトデータをレンダリングしてビットマップデータを生成する。図15(g)の画面内の表示ウインドウ712では、現在選択中のオブジェクトデータをレンダリングした場合の電子文書データの画像が表示されている。ユーザーはこの表示ウインドウ上の各オブジェクトの領域を押下したり、オブジェクトデータを選択するための条件(例えば日付条件や人物条件)を設定したりすることにより、各オブジェクトを印刷対象にするか否かを選択することができる。また、選択中のオブジェクトデータの合計占有率に基づき下地判定部305から下地不十分情報を受信した場合、図15(g)のメッセージウインドウ713には警告メッセージが表示される。当該表示される警告メッセージは、選択中のオブジェクトデータの占有率がユーザー所望の閾値よりも大きい(すなわち、下地が希望する面積に達していない)ことをユーザーに通知するためのものである。ユーザーが印刷対象にするオブジェクトデータを選択するのに応じて表示される電子文書データの画像の例を、図15(h)の表示ウインドウ714に表示する。図15(g)で表示されているオブジェクト群のうち、オブジェクト「あいうえお」と「たちつてと」とが非選択状態になると、図15(h)のように、現在選択中のオブジェクト「かきくけこ」と「さしすせそ」のみが表示される。そして、このようなユーザーによって印刷対象オブジェクトの選別が行われた結果、印刷対象のオブジェクトデータの占有率がユーザー所望の閾値以下になれば(すなわち、下地が希望する面積に達すれば)、図15(g)で表示されていた警告メッセージは消去される。そして、プリントボタンが押下されると、当該印刷対象に選択されているオブジェクトデータの印刷出力処理が実行される。
【0058】
以上説明したように、実施形態2では、オブジェクトの合計の占有率が所定閾値以上である場合、印刷対象にするオブジェクトの削減(印刷対象オブジェクトを減らす処理)を行う。なお、上述したステップS1003では日付情報に基づいてオブジェクトを自動的に選択するものとしたが、これに限るものではなく、その他のタグ情報を用いて選択するようにしても構わない。
【0059】
このように、常にユーザーが希望するサイズの下地を確保することが可能なオブジェクトデータを印刷対象として選択することで、紙サイズを変更したり縮小したりすることなく、下地スペースを確保した状態で印刷出力することが可能となる。
【0060】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するためのソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPUやMPU等)がプログラムを読み出して実行する処理である。
【特許請求の範囲】
【請求項1】
少なくとも1つのオブジェクトデータを含む電子文書を記憶する記憶手段と、
ユーザーの指示に基づいて、前記オブジェクトデータが配置されない下地スペースが十分あるかどうかの判定に用いるための閾値を設定する設定手段と、
前記電子文書に含まれるオブジェクトデータの印刷指示が為された場合、当該印刷指示された印刷対象のオブジェクトデータの用紙上に占める占有率が前記設定された閾値より大きいか否か判定する下地判定手段と、
前記下地判定手段において前記占有率が前記閾値より大きいと判定された場合、前記オブジェクトデータの占有率が前記閾値以下になるように、当該印刷対象のオブジェクトデータに対して変更処理を行う下地生成手段と、
前記下地生成手段で前記変更処理が行われた後のオブジェクトデータの印刷データを生成して出力する印刷データ生成手段と、
を有することを特徴とする画像処理装置。
【請求項2】
前記下地生成手段で行われる前記変更処理は、当該印刷対象のオブジェクトデータに対する縮小処理であることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記下地生成手段で行われる前記変更処理は、当該印刷対象のオブジェクトデータが印刷される用紙サイズの変更処理であることを特徴とする請求項1または2に記載の画像処理装置。
【請求項4】
前記下地生成手段は、前記印刷対象のオブジェクトデータのうち、最も古いオブジェクトの位置に基づいて、前記変更処理後のオブジェクトデータの配置を決定することを特徴とする請求項1乃至3のいずれかに記載の画像処理装置。
【請求項5】
前記下地生成手段で行われる前記変更処理は、当該印刷対象のオブジェクトデータを減らす処理であることを特徴とする請求項1に記載の画像処理装置。
【請求項6】
前記印刷対象のオブジェクトデータを減らす処理は、当該オブジェクトデータに付加されているタグ情報に基づいて行われることを特徴とする請求項4に記載の画像処理装置。
【請求項7】
前記印刷対象のオブジェクトデータを減らす処理は、ユーザーの指示に基づいて行われることを特徴とする請求項4に記載の画像処理装置。
【請求項8】
少なくとも1つのオブジェクトデータを含む電子文書を記憶する記憶手段を有する画像処理装置が実行する画像処理方法であって、
設定手段が、ユーザーの指示に基づいて、前記オブジェクトデータが配置されない下地スペースが十分あるかどうかの判定に用いるための閾値を設定する設定ステップと、
前記画像処理装置の下地判定手段が、前記電子文書に含まれるオブジェクトデータの印刷指示が為された場合、当該印刷指示された印刷対象のオブジェクトデータの用紙上に占める占有率が前記設定された閾値より大きいか否か判定する下地判定ステップと、
前記画像処理装置の下地生成手段が、前記下地判定ステップにおいて前記占有率が前記閾値より大きいと判定された場合、前記オブジェクトデータの占有率が前記閾値以下になるように、当該印刷対象のオブジェクトデータに対して変更処理を行う下地生成ステップと、
前記画像処理装置の印刷データ生成手段が、前記下地生成ステップで前記変更処理が行われた後のオブジェクトデータの印刷データを生成して出力する印刷データ生成ステップと、
を有することを特徴とする画像処理方法。
【請求項9】
コンピュータを、
ユーザーの指示に基づいて、電子文書に含まれるオブジェクトデータが配置されない下地スペースが十分あるかどうかの判定に用いるための閾値を設定する設定手段、
前記電子文書に含まれるオブジェクトデータの印刷指示が為された場合、当該印刷指示された印刷対象のオブジェクトデータの用紙上に占める占有率が前記設定された閾値より大きいか否か判定する下地判定手段、
前記下地判定手段において前記占有率が前記閾値より大きいと判定された場合、前記オブジェクトデータの占有率が前記閾値以下になるように、当該印刷対象のオブジェクトデータに対して変更処理を行う下地生成手段、
前記下地生成手段で前記変更処理が行われた後のオブジェクトデータの印刷データを生成して出力する印刷データ生成手段、
として機能させるためのコンピュータプログラム。
【請求項10】
請求項9に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【請求項1】
少なくとも1つのオブジェクトデータを含む電子文書を記憶する記憶手段と、
ユーザーの指示に基づいて、前記オブジェクトデータが配置されない下地スペースが十分あるかどうかの判定に用いるための閾値を設定する設定手段と、
前記電子文書に含まれるオブジェクトデータの印刷指示が為された場合、当該印刷指示された印刷対象のオブジェクトデータの用紙上に占める占有率が前記設定された閾値より大きいか否か判定する下地判定手段と、
前記下地判定手段において前記占有率が前記閾値より大きいと判定された場合、前記オブジェクトデータの占有率が前記閾値以下になるように、当該印刷対象のオブジェクトデータに対して変更処理を行う下地生成手段と、
前記下地生成手段で前記変更処理が行われた後のオブジェクトデータの印刷データを生成して出力する印刷データ生成手段と、
を有することを特徴とする画像処理装置。
【請求項2】
前記下地生成手段で行われる前記変更処理は、当該印刷対象のオブジェクトデータに対する縮小処理であることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記下地生成手段で行われる前記変更処理は、当該印刷対象のオブジェクトデータが印刷される用紙サイズの変更処理であることを特徴とする請求項1または2に記載の画像処理装置。
【請求項4】
前記下地生成手段は、前記印刷対象のオブジェクトデータのうち、最も古いオブジェクトの位置に基づいて、前記変更処理後のオブジェクトデータの配置を決定することを特徴とする請求項1乃至3のいずれかに記載の画像処理装置。
【請求項5】
前記下地生成手段で行われる前記変更処理は、当該印刷対象のオブジェクトデータを減らす処理であることを特徴とする請求項1に記載の画像処理装置。
【請求項6】
前記印刷対象のオブジェクトデータを減らす処理は、当該オブジェクトデータに付加されているタグ情報に基づいて行われることを特徴とする請求項4に記載の画像処理装置。
【請求項7】
前記印刷対象のオブジェクトデータを減らす処理は、ユーザーの指示に基づいて行われることを特徴とする請求項4に記載の画像処理装置。
【請求項8】
少なくとも1つのオブジェクトデータを含む電子文書を記憶する記憶手段を有する画像処理装置が実行する画像処理方法であって、
設定手段が、ユーザーの指示に基づいて、前記オブジェクトデータが配置されない下地スペースが十分あるかどうかの判定に用いるための閾値を設定する設定ステップと、
前記画像処理装置の下地判定手段が、前記電子文書に含まれるオブジェクトデータの印刷指示が為された場合、当該印刷指示された印刷対象のオブジェクトデータの用紙上に占める占有率が前記設定された閾値より大きいか否か判定する下地判定ステップと、
前記画像処理装置の下地生成手段が、前記下地判定ステップにおいて前記占有率が前記閾値より大きいと判定された場合、前記オブジェクトデータの占有率が前記閾値以下になるように、当該印刷対象のオブジェクトデータに対して変更処理を行う下地生成ステップと、
前記画像処理装置の印刷データ生成手段が、前記下地生成ステップで前記変更処理が行われた後のオブジェクトデータの印刷データを生成して出力する印刷データ生成ステップと、
を有することを特徴とする画像処理方法。
【請求項9】
コンピュータを、
ユーザーの指示に基づいて、電子文書に含まれるオブジェクトデータが配置されない下地スペースが十分あるかどうかの判定に用いるための閾値を設定する設定手段、
前記電子文書に含まれるオブジェクトデータの印刷指示が為された場合、当該印刷指示された印刷対象のオブジェクトデータの用紙上に占める占有率が前記設定された閾値より大きいか否か判定する下地判定手段、
前記下地判定手段において前記占有率が前記閾値より大きいと判定された場合、前記オブジェクトデータの占有率が前記閾値以下になるように、当該印刷対象のオブジェクトデータに対して変更処理を行う下地生成手段、
前記下地生成手段で前記変更処理が行われた後のオブジェクトデータの印刷データを生成して出力する印刷データ生成手段、
として機能させるためのコンピュータプログラム。
【請求項10】
請求項9に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2011−124662(P2011−124662A)
【公開日】平成23年6月23日(2011.6.23)
【国際特許分類】
【出願番号】特願2009−278955(P2009−278955)
【出願日】平成21年12月8日(2009.12.8)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.QRコード
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成23年6月23日(2011.6.23)
【国際特許分類】
【出願日】平成21年12月8日(2009.12.8)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.QRコード
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]