(57)【要約】【課題】墨消しが指示された領域下に、複数箇所から参照されるイメージオブジェクトが重なっている場合に、ユーザの意図に反して墨消しの効果が他の箇所に及んでしまうのを防ぐ。【解決手段】情報処理装置であって、指定された領域に対する墨消しの適用指示を受け付けると、当該指定された領域下に、複数の参照先から参照されているイメージオブジェクトが重なっているかどうかを判定し、重なっていると判定された場合に、前記イメージオブジェクトを複製して該イメージオブジェクトを少なくとも２つにし、前記複数の参照先のうち前記適用指示が行われた参照先に対しては当該複製されたイメージオブジェクトのうち墨消し処理が行われるイメージオブジェクトが参照元となるようにし、前記適用指示が行われなかった参照先に対しては当該複製されたイメージオブジェクトのうち墨消し処理が行われないイメージオブジェクトが参照元となるように、設定する。【選択図】図７
2018136685.tif 000002
【特許請求の範囲】
【請求項１】
指定された領域に対する墨消しの適用指示を受け付けると、当該指定された領域下に、複数の参照先から参照されているイメージオブジェクトが重なっているかどうかを判定する第１判定手段と、
前記第１判定手段で重なっていると判定された場合に、前記複数の参照先から参照されているイメージオブジェクトのデータを複製することにより、該複数の参照先から参照されているイメージオブジェクトのデータを少なくとも２つにする複製手段と、
前記複数の参照先のうち前記適用指示が行われた参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われるイメージオブジェクトのデータが参照元となるようにし、前記適用指示が行われなかった参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われないイメージオブジェクトのデータが参照元となるように、設定する設定手段と、
前記指定された領域に重なるオブジェクトに対して、墨消し処理を行う処理手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
前記第１判定手段で重なっていると判定された場合に、前記複数の参照先のうち全ての参照先に墨消しを適用するかどうかをユーザに選択させるためのユーザインタフェースを提供するＵＩ制御手段をさらに備え、
前記ユーザインタフェースを介して前記全ての参照先に墨消しを適用しない選択がなされた場合に、前記複製手段が、前記複数の参照先から参照されているイメージオブジェクトのデータを複製し、さらに、前記設定手段が、前記複数の参照先のうち前記適用指示が行われた参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われるイメージオブジェクトのデータが参照元となるようにし、前記適用指示が行われなかった参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われないイメージオブジェクトのデータが参照元となるように、設定する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１判定手段で重なっていると判定された場合に、前記複数の参照先から参照されているイメージオブジェクトが透明かどうか判定する第２判定手段をさらに備え、
前記第２判定手段で前記複数の参照先から参照されているイメージオブジェクトが透明であると判定された場合に、前記複製手段が、前記複数の参照先から参照されているイメージオブジェクトのデータを複製し、さらに、前記設定手段が、前記複数の参照先のうち前記適用指示が行われた参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われるイメージオブジェクトのデータが参照元となるようにし、前記適用指示が行われなかった参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われないイメージオブジェクトのデータが参照元となるように、設定する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記第２判定手段で前記複数の参照先から参照されているイメージオブジェクトが透明でないと判定された場合に、当該イメージオブジェクトにおける前記指定された領域との重なり領域から文字を検出する検出手段をさらに備え、
前記検出手段で文字が検出された場合は、前記複製手段による複製と前記設定手段による設定とを行わない
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記検出手段で文字が検出されない場合に、前記指定された領域と重なる文字オブジェクトが存在するかどうかを判定する第３判定手段をさらに備え、
前記第３判定手段で前記指定された領域下に重なる文字オブジェクトが存在しないと判定された場合に、前記複製手段が、前記複数の参照先から参照されているイメージオブジェクトのデータを複製し、さらに、前記設定手段が、前記複数の参照先のうち前記適用指示が行われた参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われるイメージオブジェクトのデータが参照元となるようにし、前記適用指示が行われなかった参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われないイメージオブジェクトのデータが参照元となるように、設定する
ことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記第２判定手段で前記複数の参照先から参照されているイメージオブジェクトが透明であると判定された場合に、前記複数の参照先のうち全ての参照先に墨消しを適用するかどうかをユーザに選択させるためのユーザインタフェースを提供するＵＩ制御手段をさらに備え、
前記ユーザインタフェースを介して前記全ての参照先に墨消しを適用しない選択がなされると、前記複製手段が、前記複数の参照先から参照されているイメージオブジェクトのデータを複製し、さらに、前記設定手段が、前記複数の参照先のうち前記適用指示が行われた参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われるイメージオブジェクトのデータが参照元となるようにし、前記適用指示が行われなかった参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われないイメージオブジェクトのデータが参照元となるように、設定する
ことを特徴とする請求項３に記載の情報処理装置。
【請求項７】
前記検出手段で文字が検出された場合に、前記複数の参照先のうち全ての参照先に墨消しを適用するかどうかをユーザに選択させるためのユーザインタフェースを提供するＵＩ制御手段をさらに備え、
前記ユーザインタフェースを介して前記全ての参照先に墨消しを適用しない選択がなされると、前記複製手段が、前記複数の参照先から参照されているイメージオブジェクトのデータを複製し、さらに、前記設定手段が、前記複数の参照先のうち前記適用指示が行われた参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われるイメージオブジェクトのデータが参照元となるようにし、前記適用指示が行われなかった参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われないイメージオブジェクトのデータが参照元となるように、設定する
ことを特徴とする請求項４に記載の情報処理装置。
【請求項８】
前記複数の参照先のうち全ての参照先に墨消しを適用するかどうかをユーザに選択させるためのユーザインタフェースを、前記第３判定手段での判定結果に応じて提供するＵＩ制御手段をさらに備え、
前記ユーザインタフェースを介して前記全ての参照先に墨消しを適用しない選択がなされると、前記複製手段が、前記複数の参照先から参照されているイメージオブジェクトのデータを複製し、さらに、前記設定手段が、前記複数の参照先のうち前記適用指示が行われた参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われるイメージオブジェクトのデータが参照元となるようにし、前記適用指示が行われなかった参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われないイメージオブジェクトのデータが参照元となるように、設定する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項９】
前記設定手段が、前記複数の参照先のうち前記適用指示が行われた参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われるイメージオブジェクトのデータが参照元となるようにし、前記適用指示が行われなかった参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われないイメージオブジェクトのデータが参照元となるように、設定した後に、前記処理手段が、記指定された領域に重なるすべてのオブジェクトに対して、墨消し処理を行うことを特徴とする請求項１に記載の情報処理装置。
【請求項１０】
前記処理手段が前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われるイメージオブジェクトのデータに対して墨消し処理を行った後に、前記設定手段が、前記複数の参照先のうち前記適用指示が行われた参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われたイメージオブジェクトのデータが参照元となるようにし、前記適用指示が行われなかった参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われないイメージオブジェクトのデータが参照元となるように、設定することを特徴とする請求項１に記載の情報処理装置。
【請求項１１】
指定された領域に対する墨消しの適用指示を受け付けると、当該指定された領域下に、複数の参照先から参照されているイメージオブジェクトが重なっているかどうかを判定する判定手段と、
前記判定手段で重なっていると判定された場合に、前記複数の参照先から参照されているイメージオブジェクトを、前記指定された領域との重なり領域を含む部分イメージと含まない部分イメージとに分離する分離手段と、
前記分離手段で得られた部分イメージのうち重なり領域を含まない部分イメージのデータを、前記複数の参照先全ての参照元として設定する第１設定手段と、
前記分離手段で得られた部分イメージのうち重なり領域を含む部分イメージのデータを複製する複製手段と、
前記複製手段で得られた部分イメージのうち墨消し処理が行われる部分イメージのデータを、前記適用指示が行われた参照先の参照元として設定する第２設定手段と、
前記複製手段で得られた部分イメージのうち墨消し処理が行われない部分イメージのデータを、前記適用指示が行われなかった参照先の参照元として設定する第３設定手段と
を備えたことを特徴とする情報処理装置。
【請求項１２】
前記分離手段は、前記複数の参照先全ての参照元となる、前記重なり領域を含まない部分イメージの面積が大きくなるように分離することを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
前記分離手段は、前記重なり領域を含まない部分イメージの面積が所定の面積より大きい場合に前記分離を行なうことを特徴とする請求項１１に記載の情報処理装置。
【請求項１４】
墨消し処理を行う情報処理装置の制御方法であって、
指定された領域に対する墨消しの適用指示を受け付けると、当該指定された領域下に、複数の参照先から参照されているイメージオブジェクトが重なっているかどうかを判定するステップと、
前記判定ステップで重なっていると判定された場合に、前記複数の参照先から参照されているイメージオブジェクトのデータを複製することにより、該複数の参照先から参照されているイメージオブジェクトのデータを少なくとも２つにするステップと、
前記複数の参照先のうち前記適用指示が行われた参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われるイメージオブジェクトのデータが参照元となるようにし、前記適用指示が行われなかった参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われないイメージオブジェクトのデータが参照元となるように、設定するステップと、
前記指定された領域に重なるオブジェクトに対して、墨消し処理を行うステップと、
を含むことを特徴とする制御方法。
【請求項１５】
コンピュータを、請求項１乃至１３のいずれか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子文書に対して墨消しを行う技術に関する。
【背景技術】
【０００２】
電子文書の編集アプリケーションには、電子文書内の機密情報を削除するための墨消しという機能がある。図１はPDF形式の電子文書（以下、PDF文書）で墨消しを行った一例を示す図である。いま、PDF文書のページ１００内に、文字オブジェクト１０１〜１０３がある。ユーザが、墨消ししたい文字オブジェクト１０３を囲むように領域を指定して墨消しを指示すると、当該指定された領域が黒の矩形で塗り潰されて、ページ１１０のようになる。墨消しによってPDF文書内から削除された情報は復元することができない。この場合の削除とは、文字であればその文字コードの情報を消去することを意味し、文字の一部でも墨消しが指示された領域に重なっているとその文字コードは消去される。また、イメージやグラフィックであれば、当該領域と重なっている部分の画像を黒等で塗り潰したり或いはグラフィックのベクターデータを変形させたりするなどして、その部分の描画命令の内容を変更することを意味する。この墨消し機能を利用することにより、電子文書内の機密情報を読解できないようにすることができる。ここで、墨消しを指示した領域下に複数のオブジェクトが重なっていたとする。この場合でも、当該領域下に重なる全てのオブジェクトが削除される。例えば、特許文献１には、非表示のレイヤーやオブジェクトも墨消しすることが述べられている。また、特許文献２には、指定した領域下に複数のオブジェクトが重なっている場合、すべてのオブジェクトを墨消しすることが述べられている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−２０３９１９号公報
【特許文献２】特開２００９−２４５３０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述のとおり、墨消し機能を用いて例えば文字オブジェクトを墨消ししたいと考えたとき、当該文字オブジェクトの領域下にイメージオブジェクトが重なっていた場合は、文字オブジェクトだけを墨消しすることはできず、イメージオブジェクトも墨消しされる。そして、そのイメージオブジェクトが電子文書内の複数箇所から参照されていると（例えば他のページでも該イメージオブジェクトを使用している場合）、文字オブジェクトと重なっている該イメージオブジェクトに対する墨消しの効果が他の箇所にも影響してしまう。ここで、PDF文書におけるイメージオブジェクトの複数参照機能について確認しておく。図２は、PDF文書の構造の一例を示した図である。図２のPDF文書２００は、2ページで構成される。また、リソース格納部２１０にはイメージ２０４のデータが格納されている。そして、イメージ２０４は、1ページ目２０１と2ページ目２０２の双方から参照され両ページに共通のオブジェクトデータとして使用されて、それぞれのページに同じ内容のイメージが表示されることになる。なお、この複数参照における参照先はページ単位とは限らない。1つのイメージが同一ページ内の複数箇所から参照され、かつ、他のページからも参照されるケースもある。このような複数参照機能によりPDF文書ではそのファイルサイズを削減することができる。図３は、複数ページにおいて共通の背景イメージが参照されたPDF文書の一例を示している。図３（ａ）は、背景イメージ３００を示しており、図３（ｂ）に示す1ページ目と図３（ｃ）に示す2ページ目の双方から参照されている。図３（ｂ）の1ページ目においては、背景イメージ３００の上に、4つの文字列３０１〜３０４が存在している。また、図３（ｃ）の2ページ目においては、背景イメージ３００の上に、3つの文字列３１１〜３１３が存在している。そして、図４は、図３（ｂ）の1ページ目に対して従来の墨消しを行った場合の説明図である。図４（ａ）は墨消し後の1ページ目の状態を示しており、文字列３０３の領域４０１を指定して墨消しを適用した結果、「Taro Yamada」の文字列が視認不可能に塗り潰されている。このとき、複数箇所で参照されている背景イメージ３００内の上記領域４０１との重なり領域４１１にも墨消しが適用される結果、図４（ｂ）に示すように2ページ目の領域４０２も黒く塗り潰されることになる。ユーザは、文字列３０３のみを墨消しすることを意図していたにも関わらず、複数参照に係る背景イメージ３００が文字列３０３と重なっているため、他のページにまで墨消しの効果が及んでしまうのである。図４（ｃ）は、このときのPDF文書４００の構造を示している。リソース格納部４１０内の背景イメージ３００における重なり領域４１１が黒く塗り潰されていることが分かる。
【課題を解決するための手段】
【０００５】
本発明に係る情報処理装置は、指定された領域に対する墨消しの適用指示を受け付けると、当該指定された領域下に、複数の参照先から参照されているイメージオブジェクトが重なっているかどうかを判定する第１判定手段と、前記第１判定手段で重なっていると判定された場合に、前記複数の参照先から参照されているイメージオブジェクトのデータを複製することにより、該複数の参照先から参照されているイメージオブジェクトのデータを少なくとも２つにする複製手段と、前記複数の参照先のうち前記適用指示が行われた参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われるイメージオブジェクトのデータが参照元となるようにし、前記適用指示が行われなかった参照先に対しては、前記複製されたイメージオブジェクトのデータのうち墨消し処理が行われないイメージオブジェクトのデータが参照元となるように、設定する設定手段と、前記指定された領域に重なるオブジェクトに対して、墨消し処理を行う処理手段と、を備えたことを特徴とする。
【発明の効果】
【０００６】
本発明によれば、墨消しが指示された領域下に、複数箇所から参照されるイメージオブジェクトが重なっている場合に、ユーザの意図に反して墨消しの効果が他の箇所に及んでしまうのを防ぐことができる。
【図面の簡単な説明】
【０００７】
【図１】PDF文書で墨消しを行った一例を示す図。
【図２】PDF文書の構造の一例を示した図。
【図３】複数ページにおいて共通の背景イメージが参照されたPDF文書の一例を示す図。
【図４】従来の墨消しを行った場合の説明図。
【図５】電子文書を管理するシステムの全体構成を示す図。
【図６】PCのハードウェア構成の一例を示す図。
【図７】実施例１に係る、電子文書エディタにおける墨消し機能利用時の動作制御の流れを示すフローチャート。
【図８】実施例１の墨消しを適用した後のPDF文書の構造を示す図。
【図９】実施例２に係る、電子文書エディタにおける墨消し機能利用時の動作制御の流れを示すフローチャート。
【図１０】墨消し範囲選択用UI画面の一例を示す図。
【図１１】実施例３に係る、電子文書エディタにおける墨消し機能利用時の動作制御の流れを示すフローチャート。
【図１２】墨消し範囲選択用UI画面の具体例。
【図１３】墨消し処理後のPDF文書の構造を示す図。
【図１４】実施例４に係る、電子文書エディタにおける墨消し機能利用時の動作制御の流れを示すフローチャート。
【図１５】イメージを分離する様子を示す図。
【発明を実施するための形態】
【０００８】
以下、添付図面を参照して、本発明を好適な実施例に従って詳細に説明する。なお、以下の実施例において示す構成は一例にすぎず、本発明は図示された構成に限定されるものではない。
【０００９】
＜システム構成図＞
【実施例１】
【００１０】
図５は、本実施例に係る、電子文書を管理するシステムの全体構成を示す図である。システム５００は、情報処理装置であるPC５０１とファイルサーバ５０２とで構成され、LAN等のネットワーク５０３を介して相互に接続されている。クライアントPC５０１には、電子文書を編集可能なアプリケーションとして、電子文書エディタ５１０がインストールされている。ユーザは、電子文書エディタ５１０を使って、所定フォーマットの電子文書の作成、編集、印刷を行うことができる。ここでは、PDF形式の電子文書（以下、「PDF文書」と表記）を例に説明するものとする。ただし、本発明の対象となる電子文書はPDF文書に限定されるものでない。複数参照や墨消しといった共通の技術事項を有する電子文書であればすべて対象となり得る。電子文書エディタ５１０は、2つのソフトウェアコンポーネントを含んでいる。1つはライブラリモジュール５１１であり、これはPDF文書の生成・編集等の処理を行うコンポーネントである。もう1つはUI制御モジュール５１２であり、ユーザがPDF文書を作成・編集する際のユーザインタフェース、具体的には、UI画面の生成・表示や当該UI画面を介したユーザ操作の受け付けなどを提供する。電子文書エディタ５１０で生成・編集されたPDF文書は、PC５０１のローカルファイルシステム又はファイルサーバ５０２に保存される。PC５０１は、ネットワーク５０３を介してファイルサーバ５０２と通信する。
【００１１】
図６は、PC５０１のハードウェア構成の一例を示す図である。PC５０１は、CPU６０１、メモリ６０２、入力／出力インタフェース６０３、ネットワークインタフェース６０４、ディスプレイインタフェース６０５、大容量記憶装置６０６及びシステムバス６０７で構成される。
【００１２】
CPU６０１は、HDDなどの大容量記憶装置６０６に格納された、所定のコンピュータプログラムを動作させることで、上述の電子文書エディタ５１０によるPDF文書の生成・編集といった様々な処理を実現する。メモリ６０２は、CPU６０１の主メモリ、ワークエリア等として機能する。入力／出力インタフェース６０３は、マウス、キーボードなどの入力装置６１０及びメモリカードなどの外部メモリ６１１とシステムバス６０７とを接続するインタフェースである。ネットワークインタフェース６０４は、ネットワーク５０３を介したファイルサーバ５０２との通信制御を行なうインタフェースである。PC５０１は、このネットワークインタフェース６０４を介して、ファイルサーバ５０２や他の外部機器（例えばプリンタなど）と双方向の通信が可能になる。ディスプレイインタフェース６０５は、ディスプレイ６１２の表示を制御するインタフェースである。
【００１３】
続いて、本実施例における墨消し機能利用時の、電子文書エディタ５１０における動作制御について説明する。ここで、本実施例の詳細を説明するに先立ち、用語について確認しておく。前述の通り本発明は、1つのイメージオブジェクトが複数箇所から参照され、複数の参照先における表示に共通で使用されていることを前提としている。そして、複数の参照先のうち1つの参照先において、文字オブジェクト等の領域を指定して墨消しが指示され、かつ、その領域が複数参照されているイメージオブジェクトと重なる場合に、他の参照先にも意図しない墨消しが発生することを解決課題としている。このとき、イメージオブジェクトを参照している複数の参照先の全部を「全ての参照先」と表現する。そして、全ての参照先のうち、墨消しの指示が行われた参照先を「墨消し参照先」と表現し、墨消しの指示が行われていない他の参照先を「非墨消し参照先」と表現する。例えば、文字オブジェクト３０３の領域を指定して墨消しが指示された前述の図３の例において、「墨消し参照先」は図３（ｂ）の1ページ目が該当し、「非墨消し参照先」は図３（ｃ）の2ページ目が該当する。そして、「全ての参照先」は、図３（ｂ）の1ページ目と図３（ｃ）の2ページ目の両ページを指す。なお、冒頭で述べたとおり、複数参照には同一ページ内の異なる箇所から参照される場合もあるが、以下では説明の便宜上、異なるページから複数参照されるケースを例に説明するものとする。
【００１４】
図７は、本実施例に係る、電子文書エディタ５１０における墨消し機能利用時の動作制御の流れを示すフローチャートである。本実施例では、墨消しが指示された任意の領域と複数参照に係るイメージとが重なっている場合に、複数参照に係るイメージを複製し、墨消し参照先と非墨消し参照先とで同内容のイメージがそれぞれ参照されるように変更して参照元を分ける。以下、図７のフローに沿って詳しく説明する。この処理は、ユーザが、電子文書エディタ５１０を起動することで所定のプログラムがメモリ６０２に読み込まれ、CPU６０１がこれを実行することで実現される。
【００１５】
ステップ７０１では、UI制御モジュール５１２が、ユーザによるページ内の任意領域の指定及び当該指定された領域についての墨消しの適用指示を受け付ける。この領域指定や適用指示は、ディスプレイ装置６１２に表示されたUＩ画面（不図示）を介してなされる。
【００１６】
ステップ７０２では、ライブラリモジュール５１１が、墨消しが指示された指定領域（以下、「墨消し指示領域」と呼ぶ。）の下に複数参照に係るイメージオブジェクト（イメージデータ）が重なっているかどうかを判定する。判定の結果、墨消し指示領域下に複数参照に係るイメージオブジェクトが重なっている場合は、ステップ７０３に進む。一方、墨消し指示領域下に複数参照に係るイメージオブジェクトが重なっていない場合は、ステップ７０５に進む。この場合のステップ７０５では、墨消し指示領域に対して直ちに墨消し処理を行う。具体的には、墨消し指示領域下に重なるすべてのオブジェクトに対して、文字オブジェクトであれば文字コードの削除、イメージやグラフィックのオブジェクトであれば当該領域を所定の色（ここでは、黒）で塗り潰す処理がなされる。
【００１７】
ステップ７０３では、ライブラリモジュール５１１が、該墨消し指示領域に重なっている複数参照に係るイメージオブジェクトを複製する。すなわち、複数参照に係るイメージオブジェクトと同じイメージのデータが生成される。続く、ステップ７０４で、ライブラリモジュール５１１は、非墨消し参照先（或いは墨消し参照先）の参照元を、ステップ７０３で複製されたイメージオブジェクトに変更する。この結果、墨消し参照先と非墨消し参照先とでは同じ内容のイメージでありながらそれぞれに異なるデータが参照元となる。
【００１８】
そして、ステップ７０５では、ライブラリモジュール５１１が、墨消し指示領域に含まれる全てのオブジェクトに対し、墨消し処理を実行する。イメージオブジェクトの複製及び参照元の変更（ステップ７０３及び７０４）を経ている場合は、指定された文字オブジェクト等が削除されると共に、墨消し参照先のみの参照元となったイメージデータ内における、墨消し指示領域との重なり部分が黒で塗り潰される。図８は、前述した図４のPDF文書に対して、本実施例の墨消しを適用した後のPDF文書８００の構造を示す図である。複数参照されていた背景イメージ３００の複製イメージ３００’が生成され、当該複製イメージ３００’が、非墨消し参照先である2ページ目の新たな参照元に設定されている。そして、墨消し参照先（1ページ目）のみの参照元となったイメージ３００内の、墨消し指示領域４０１との重なり領域４１１を黒で塗り潰すことで、ユーザが意図する1ページ目のみに墨消しが適用される。
【００１９】
以上が、本実施例に係る、電子文書エディタ５１０における墨消し機能利用時の動作制御の内容である。なお、本実施例では、複数参照に係るイメージを1つ複製してこれを非墨消し参照先における共通の参照元とすることを想定しているが、これに限定されない。例えば、非墨消し参照先が複数ある場合は、複数参照の完全な解消に必要な数だけイメージを複製し、非墨消し参照先のそれぞれについて新たな参照元を設定してもよい。ただし、この場合はPDF文書のデータサイズがイメージの複製数に応じて大きくなってしまうため、本実施例のように複製する個数は最小限にして可能な限り共通参照を維持するのが望ましい。
【００２０】
また、上述した実施例では、ステップ７０４で参照元を変更した後に、ステップ７０５で墨消し処理を実行するようにしているが、この処理順は逆になるようにしても構わない。すなわち、ステップ７０３におけるイメージオブジェクトの複製により同内容の背景イメージが２つになる（３００，３００’）ので、その一方に対して墨消し処理を実行する。そして、墨消し参照先の参照元を該墨消し処理が実行された背景イメージとし、非墨消し参照先の参照元を墨消し処理が実行されていない方の背景イメージとするようにしてもよい。
【００２１】
本実施例によれば、墨消しが指示された任意の領域下に複数参照に係るイメージオブジェクトが重なる場合に当該イメージオブジェクトを複製し、墨消し参照先と非墨消し参照先とで異なるイメージオブジェクトを参照元として設定する。これにより、ユーザが意図した墨消し参照先でのみ墨消しが適用されて、非墨消し参照先には墨消しが表示されないようにすることができる。
【実施例２】
【００２２】
実施例１では、複数参照に係るイメージを複製して、墨消し参照先の参照元となるイメージと非墨消し参照先の参照元となるイメージを別々にすることで、ユーザが意図した墨消し参照先でのみ墨消しが適用されるようにしていた。しかし、例えば複数参照に係るイメージ内に機密情報が含まれている場合など、電子文書の内容によっては、全ての参照先に対して墨消しを適用したいケースもある。そこで、複数参照に係るイメージの全ての参照先に対して墨消しを適用するかどうかを、ユーザが選択できる態様を実施例２として説明する。なお、システムの基本的構成など実施例１と共通する部分については説明を省略し、以下では差異点を中心に説明を行うものとする。
【００２３】
図９は、本実施例に係る、電子文書エディタ５１０における墨消し機能利用時の動作制御の流れを示すフローチャートである。本実施例では、墨消し指示領域下に複数参照に係るイメージが重なっている場合に、全ての参照先に対して墨消しを適用するかどうかを選択するためのUI画面を表示して、ユーザに墨消しの適用範囲を決定させる。以下、図９のフローに沿って詳しく説明する。
【００２４】
ステップ９０１及び９０２は、実施例１に係る図７のフローのステップ７０１及び７０２と同様である。墨消し指示領域下に複数参照に係るイメージが重なっている場合（ステップ９０２でＹｅｓ）は、ステップ９０３に進む。一方、墨消し指示領域下に複数参照に係るイメージが重なっていない場合（ステップ９０２でＮｏ）は、墨消し指示領域に対して直ちに墨消し処理が実行される（ステップ９０７）。
【００２５】
ステップ９０３では、UI制御モジュール５１２が、全ての参照先に対して墨消しを適用するかどうかをユーザが選択するためのUI画面を、ディスプレイ装置６１２に表示する。図１０は墨消し範囲選択用UI画面の一例を示す図である。図１０に示すUI画面内には、全ての参照先に対して墨消しを適用するかどうかを問うメッセージ１０００が表示される。全ての参照先に対して墨消しを適用したいユーザは「はい」ボタン１００１を、適用したくないユーザは「いいえ」ボタン１１０２を押下する。なお、メッセージ１０００の文面は一例であり、これに限定されないことはいうまでもない。
【００２６】
ステップ９０４では、ステップ９０３で表示した墨消し範囲選択用UI画面を介したユーザ選択に応じて処理の切り分けがなされる。すなわち、ユーザが「はい」ボタン１００１を押下した場合は、ステップ９０７に進み、墨消し指示領域に対し墨消し処理を行う。この場合、複数参照に係るイメージについても墨消し処理がなされ、全ての参照先において墨消しされた領域が表示されることになる。一方、ユーザが「いいえ」ボタン１１０２を押下した場合は、ステップ９０５に進む。ステップ９０５〜９０７は、実施例１に係る図７のフローのステップ７０３〜７０５にそれぞれ対応する。すなわち、ステップ９０５で複数参照に係るイメージが複製され、続くステップ９０６で非墨消し参照先（又は墨消し参照先）の参照元が複製イメージに変更される。そして、ステップ９０７で、墨消し指示領域内の文字オブジェクト等が削除されると共に、墨消し参照先のみの参照元となったイメージ内における、墨消し指示領域との重なり部分が黒で塗り潰される。
【００２７】
本実施例によれば、ユーザが、複数参照に係るイメージの全ての参照先に対して墨消しを適用するかどうかを選択することができる。
【実施例３】
【００２８】
複数参照に係るイメージが単なる背景であってイメージ自体に機密情報を含まない場合（前述した図４のようなケース）は、非墨消し参照先には墨消しを適用しない方がよい。他方、イメージ自体に機密情報が含まれている場合は、全ての参照先を墨消しした方がよいと考えられる。また、PDF文書内のイメージが複数参照されているかどうかは見た目では分からないため、全ての参照先に墨消しを適用すべきかどうかをユーザが判断できない場合もある。そこで、墨消しが指示された領域下に複数参照に係るイメージが重なる場合に、当該イメージの全ての参照先に墨消しを適用するかどうかを自動で判定する態様を、実施例３として説明する。なお、実施例１及び２と共通する部分については説明を省略し、以下では差異点を中心に説明を行うものとする。
【００２９】
図１１は、本実施例に係る、電子文書エディタ５１０における墨消し機能利用時の動作制御の流れを示すフローチャートである。本実施例では、墨消しが指示された領域下に複数参照に係るイメージが重なる場合に、複数参照に係るイメージの全ての参照先に墨消しを適用するかどうかを自動判定する。以下、図１１のフローに沿って詳しく説明する。
【００３０】
ステップ１１０１及び１１０２は、実施例１に係る図７のフローのステップ７０１及び７０２と同様である。墨消し指示領域下に複数参照に係るイメージが重なっている場合（ステップ１１０２でＹｅｓ）は、ステップ１１０３に進む。一方、墨消し指示領域下に複数参照に係るイメージが重なっていない場合（ステップ１１０２でＮｏ）は、墨消し指示領域に対して直ちに墨消し処理が実行される（ステップ１１０９）。
【００３１】
ステップ１１０３では、ライブラリモジュール５１１が、複数参照に係るイメージが透明かどうかを判定する。透明かどうかの判定は、例えばイメージオブジェクトに付される、透明であることを示すフラグの有無などを参照して行う。複数参照に係るイメージが透明である場合は、当該イメージ内に機密情報は含まれないと推認できる。したがって、非墨消し参照先には墨消しを適用しない方がよいと判断し、イメージの複製（ステップ１１０４）と参照元の変更（ステップ１１０５）を行うべくステップ１１０４に進む。一方、複数参照に係るイメージが透明でない場合は、ステップ１１０６に進む。なお、複数参照に係るイメージが透明ではないが所定の背景色（例えば白など、墨消し指示領域に重なる部分が一色）であった場合も、同様の理由で、非墨消し参照先には墨消しを適用しないように扱ってもよい。
【００３２】
ステップ１１０４及び１１０５は、実施例１に係る図７のフローのステップ７０３及び７０４にそれぞれ対応する。すなわち、ステップ１１０４で複数参照に係るイメージが複製され、続くステップ１１０５で非墨消し参照先（又は墨消し参照先）の参照元が複製イメージに変更される。その後はステップ１１０９に進み、墨消し指示領域にある文字オブジェクト等が削除されると共に、墨消し参照先のみの参照元となったイメージ内の、墨消し指示領域との重なり部分が黒で塗り潰される。
【００３３】
ステップ１１０６では、ライブラリモジュール５１１が、複数参照に係るイメージ内の、墨消し指示領域との重なり部分に対し、OCR（光学文字認識）処理を行なう。続くステップ１１０７では、OCR処理の結果に従って処理の切り分けがなされる。OCR処理によって文字が検出されなかった場合は、ステップ１１０８に進む。一方、OCR処理によって文字が検出された場合は、当該イメージ自体に機密情報が含まれる可能性がある。そのため、全ての参照先に墨消しを適用したほうが良いと判断し、ステップ１１０９に進む。そして、ステップ１１０９では、ライブラリモジュール５１１が、墨消し指示領域に対し墨消し処理を行う。この際、複数参照に係るイメージについても墨消し処理がなされ、全ての参照先において墨消しされた領域が表示されることになる。
【００３４】
ステップ１１０８では、ライブラリモジュール５１１が、墨消し指示領域に対して、複数参照に係るイメージとは別に、文字オブジェクトが重なっているかどうかを判定する。墨消し指示領域に文字オブジェクトが重なっている場合はステップ１１０４に進み、重なっていない場合はステップ１１０９に進む。例えば、前述の図３の例において、PDF文書の1ページ目（図３（ｂ））に対して「Taro Yamada」の文字オブジェクト３０３の領域を指定して墨消しの指示がなされたとする（図４（ａ）を参照）。この場合、墨消し指示領域には、複数参照に係る背景イメージ（図３（ａ））とは別に、文字オブジェクト３０３が重なっているため、本ステップの判定結果は「Ｙｅｓ」となる。このように複数参照に係るイメージと文字オブジェクトとが重なっている箇所に対して墨消しが指示された場合であって、当該イメージ自体には文字情報を含まない場合には、ユーザは文字オブジェクトのみを墨消ししたいのだと推認できる。よって、非墨消し参照先までは墨消しを適用しないよう、イメージの複製（ステップ１１０４）と参照元の変更（ステップ１１０５）を経て、墨消し指示領域に対する墨消し処理が実行される（ステップ１１０９）。一方、本ステップの判定結果が「Ｎｏ」である場合（墨消し指示領域下に文字オブジェクトが重なっていない場合）は、ユーザは、複数参照に係るイメージの全ての参照先で指定箇所を墨消ししたいのだと推認できる。そのため、全ての参照先に墨消しを適用するよう、イメージの複製（ステップ１１０４）と参照元の変更（ステップ１１０５）を経ずにステップ１１０９に進んで、墨消し指示領域に対する墨消し処理が実行される。つまり、複数参照に係るイメージについても墨消し処理がなされ、全ての参照先において墨消しされた領域が表示されることになる。
【００３５】
＜変形例＞
上記のようにすべてを自動で判定する代わりにその一部又は全部をユーザの判断に委ねてもよい。すなわち、実施例２のように、墨消し範囲をユーザに選択させるUI画面を適宜表示して、複数参照に係るイメージの全ての参照先に墨消しを適用するかどうかをユーザの判断に委ねてもよい。以下、本変形例に係る、墨消し範囲選択用UI画面の具体例を、それぞれの表示タイミングに分けて説明する。
【００３６】
１）複数参照に係るイメージが透明である場合（ステップ１１０３で「Ｙｅｓ」）
この場合は、例えば図１２（ａ）に示すようなUI画面を表示する。複数参照に係るイメージに機密情報は含まれないこと等を理由に、ユーザが「いいえ」を選択した場合は、イメージの複製（ステップ１１０４）と参照元の変更（ステップ１１０５）を行うべくステップ１１０４に進む。一方、他の参照先にも墨消しを適用する必要があると考え、ユーザが「はい」を選択した場合は、ステップ１１０９に進み、複数参照に係るイメージについてそのまま墨消し処理がなされる。これにより、全ての参照先において墨消しされた領域が表示されることになる。
【００３７】
２）OCR処理によって文字が検出された場合（ステップ１１０７で「Ｙｅｓ」）
この場合は、例えば図１２（ｂ）に示すようなUI画面を表示する。複数参照に係るイメージ自体に機密情報が含まれること等を理由に、ユーザが「はい」を選択した場合は、ステップ１１０９に進み、複数参照に係るイメージについてそのまま墨消し処理がなされる。これにより、全ての参照先において墨消しされた領域が表示されることになる。一方、全ての参照先に墨消しを適用する必要がないと考え、ユーザが「いいえ」を選択した場合は、イメージの複製（ステップ１１０４）と参照元の変更（ステップ１１０５）を行うべくステップ１１０４に進む。
【００３８】
３）墨消し指示領域下に文字オブジェクトが重なっていない場合（ステップ１１０８で「Ｎｏ」）
この場合は、例えば図１２（ｃ）に示すようなUI画面を表示する。複数参照に係るイメージ内の指定箇所については全部墨消したい（他の参照先にも墨消しを適用したい）と考え、ユーザが「はい」を選択した場合は、ステップ１１０９に進み、複数参照に係るイメージについてそのまま墨消し処理がなされる。これにより、全ての参照先において墨消しされた領域が表示されることになる。一方、他の参照先に墨消しを適用する必要がないと考え、ユーザが「いいえ」を選択した場合は、イメージの複製（ステップ１１０４）と参照元の変更（ステップ１１０５）を行うべくステップ１１０４に進む。
【００３９】
４）墨消し指示領域下に文字オブジェクトが重なっている場合（ステップ１１０８で「Ｙｅｓ」）
この場合は、例えば図１２（ｄ）に示すようなUI画面を表示する。文字オブジェクトのみを墨消ししたいこと等を理由に、ユーザが「いいえ」を選択した場合は、イメージの複製（ステップ１１０４）と参照元の変更（ステップ１１０５）を行うべくステップ１１０４に進む。一方、ユーザが「はい」を選択した場合は、ステップ１１０９に進み、複数参照に係るイメージについてそのまま墨消し処理がなされる。これにより、全ての参照先において墨消しされた領域が表示されることになる。
【００４０】
上述の通り、各判定ステップにおける判定結果に応じたメッセージを必要に応じて表示する。これにより、ユーザが判断しやすくなる。もちろん、図１２（ａ）〜（ｄ）で示したメッセージの文面は一例であり、それぞれの状況に応じた内容であれば構わない。
【００４１】
本実施例によれば、墨消しが指示された任意の領域下に複数参照に係るイメージが重なる場合に、当該イメージの全ての参照先に墨消しを適用するかどうかを自動で判定することができる。
【実施例４】
【００４２】
実施例１〜３では、墨消し指示領域下に複数参照に係るイメージが重なる場合に、状況に応じて複数参照に係るイメージを複製して参照元を分けることを行った。これには、電子文書のデータサイズが増えてしまうというデメリットを伴う。例えば、前述の図３に示すPDF文書の場合、各文字オブジェクトのデータサイズは微々たるものであり、そのほとんどを背景イメージ（図３（ａ））のデータが占めている。このケースで背景イメージを複製して参照元となるデータを増やすと、実質的にデータサイズが2倍近くになってしまう。そこで、可能な限りデータサイズが増えないようにする態様を、実施例４として説明する。なお、実施例１〜３と共通する部分については説明を省略し、以下では差異点を中心に説明を行うものとする。
【００４３】
本実施例では、複数参照に係るイメージを、全ての参照先で共通で参照できる部分と共通で参照できない部分とに分け、共通で参照できる部分は複数参照を維持しつつ、共通で参照できない部分は別々のイメージを参照元として再設定する。図１３は、本実施例によって生成される、墨消し処理後のPDF文書１３００の構造を示す図である。リソース格納部１３１０内に、複数参照されていた背景イメージ３００（図３（ａ）を参照）から生成された3種類の部分イメージのデータがある。具体的には、1ページ目の参照元に設定された部分イメージ１３１１、1ページ目と2ページ目に共通の参照元に設定された部分イメージ１３１２、2ページ目の参照元に設定された部分イメージ１３１３のデータが存在している。1ページ目のみの参照元に設定された部分イメージ１３１１では、墨消し指示領域４０１との重なり領域４１１が墨消しにより黒く塗り潰されている。一方、部分イメージ１３１１と同内容であって、2ページ目のみの参照元に設定された部分イメージ１３１３では、上記重なり領域に相当する部分４１１’に墨消しはされていない。そして、墨消し指示領域４０１に対応する領域を含まない部分イメージ１３１２を全ての参照先における参照元とすることで、PDF文書１３００のデータサイズの増加が抑えられている。
【００４４】
図１４は、本実施例に係る、電子文書エディタ５１０における墨消し機能利用時の動作制御の流れを示すフローチャートである。以下、図１４のフローに沿って詳しく説明する。
【００４５】
ステップ１４０１及び１４０２は、実施例１に係る図７のフローのステップ７０１及び７０２と同様である。墨消し指示領域下に複数参照に係るイメージが重なっている場合（ステップ１４０２でＹｅｓ）は、ステップ１４０３に進む。一方、墨消し指示領域下に複数参照に係るイメージが重なっていない場合（ステップ１４０２でＮｏ）は、墨消し指示領域に対して直ちに墨消し処理が実行される（ステップ１４０９）。
【００４６】
ステップ１４０３では、ライブラリモジュール５１１が、複数参照に係るイメージの参照先との関係を一旦すべて解除する。続くステップ１４０４では、ライブラリモジュール５１１が、参照先との関係が解除されたイメージを、墨消し指示領域との重なり領域を含む部分イメージと含まない部分イメージとに分ける。このとき、複数の参照先の共通参照元となる部分イメージの面積が最も大きくなるように、墨消し指示領域との重なり領域の外縁（上下左右いずれかの辺）を境に分離するのが望ましい。図１５は、墨消し指示領域との重なり領域の外縁を境にしてイメージを分離する様子を示す図である。参照先との関係が解除された背景イメージ３００内の重なり領域４１１の上下左右の各辺の延長である破線１５０１〜１５０４のいずれかが分離箇所の候補である。これらのうち重なり領域４１１を含まない部分の面積が最も大きくなるような分離箇所を選択する。前述の図１３の例では、破線１５０３で分離している。
【００４７】
次に、ステップ１４０５では、ライブラリモジュール５１１が、分離によって生成された2つの部分イメージのうち、重なり領域を含まない部分イメージを、全ての参照先の参照元として設定する。続くステップ１４０６では、ライブラリモジュール５１１が、分離によって生成された2つの部分イメージのうち、重なり領域を含む部分イメージをまず複製する。そして、複製によって得られた2つの部分イメージのうちのどちらか1つを非墨消し参照先の参照元として設定する。
【００４８】
ステップ１４０７では、ライブラリモジュール５１１が、複製で得られた2つの部分イメージのうち、もう一方の残っている部分イメージに対して墨消し処理を実行する。これにより、前述の図１３における部分イメージ１３１１が得られる。続くステップ１４０８では、ライブラリモジュール５１１が、墨消し処理がなされた部分イメージを、墨消し参照先の参照元として設定する。
【００４９】
以上が、本実施例に係る、電子文書エディタ５１０における墨消し機能利用時の動作制御の内容である。上述のような制御により、PDF文書のデータサイズの増加を抑制しつつ、複数参照に係るイメージに対して適切に墨消しを行うことができる。
【００５０】
なお、上述の例では必ず分離を行っているが、共通参照元となる部分イメージの面積が小さい場合には分離してもあまり効果がない。そこで、共通参照元となる部分イメージの面積が、ある閾値よりも大きくなる場合にのみ分離を行うようにしてもよい。また、上述の例では分離箇所は1箇所であるが、複数箇所で分離してもよい。この場合、リソース格納部内のイメージデータの数は増えるが、共通参照元となるイメージの面積がより大きくなるので、PDF文書のデータサイズをより小さくすることができる。
【００５１】
(その他の実施例)
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2018136685.tif 000003
【図２】
2018136685.tif 000004
【図３】
2018136685.tif 000005
【図４】
2018136685.tif 000006
【図５】
2018136685.tif 000007
【図６】
2018136685.tif 000008
【図７】
2018136685.tif 000009
【図８】
2018136685.tif 000010
【図９】
2018136685.tif 000011
【図１０】
2018136685.tif 000012
【図１１】
2018136685.tif 000013
【図１２】
2018136685.tif 000014
【図１３】
2018136685.tif 000015
【図１４】
2018136685.tif 000016
【図１５】
2018136685.tif 000017