(57)【要約】【課題】  ページ上に配置されているオブジェクトと、該ページを含む複数ページのそれぞれに配置されている共通オブジェクトと、の干渉を解消する手間を軽減させるための技術を提供すること。【解決手段】  複数ページのうち表示対象ページ上にユーザ操作に応じて配置されたページオブジェクトと、該複数ページのそれぞれに共通して配置されている共通オブジェクトと、が表示対象ページ上で干渉しているか否かを判断する。ページオブジェクトと共通オブジェクトとが表示対象ページ上で干渉していると判断される場合には、ページオブジェクトと共通オブジェクトとが表示対象ページ上で干渉しないように、表示対象ページ上における共通オブジェクトのサイズを変倍する。【選択図】  図１
2020145508.tif 000002
【特許請求の範囲】
【請求項１】
複数ページのうち表示対象ページ上にユーザ操作に応じて配置されたページオブジェクトと、該複数ページのそれぞれに共通して配置されている共通オブジェクトと、が前記表示対象ページ上で干渉しているか否かを判断する判断手段と、
前記判断手段により前記ページオブジェクトと前記共通オブジェクトとが前記表示対象ページ上で干渉していると判断される場合には、前記ページオブジェクトと前記共通オブジェクトとが前記表示対象ページ上で干渉しないように、前記表示対象ページ上における前記共通オブジェクトのサイズを変倍する変倍手段と
を備えることを特徴とする画像編集装置。
【請求項２】
前記変倍手段は、
前記共通オブジェクトが前記ページオブジェクトにより隠蔽されている隠蔽部分の位置から前記共通オブジェクトの位置に向かう方向に基づいて前記共通オブジェクトを変倍することを特徴とする請求項１に記載の画像編集装置。
【請求項３】
前記変倍手段は、
前記方向に近い規定の方向が水平方向の成分を含む場合、前記共通オブジェクトの水平方向の長さに対する、前記共通オブジェクトの水平方向の長さから前記隠蔽部分の水平方向の長さを引いた長さの割合を第１の割合として求め、
前記方向に近い規定の方向が垂直方向の成分を含む場合、前記共通オブジェクトの垂直方向の長さに対する、前記共通オブジェクトの垂直方向の長さから前記隠蔽部分の垂直方向の長さを引いた長さの割合を第２の割合として求め、
前記第１の割合および前記第２の割合のうち求めた方、若しくはより大きい方の割合に対応する方向に基づいて前記共通オブジェクトを変倍したオブジェクトを生成し、該生成したオブジェクトを前記表示対象ページに配置する
ことを特徴とする請求項２に記載の画像編集装置。
【請求項４】
前記変倍手段は、
前記共通オブジェクトがテキストデータで構成される場合には、前記共通オブジェクトの矩形領域のうち前記テキストデータの領域が前記ページオブジェクトにより隠蔽されている隠蔽部分を特定し、該隠蔽部分が表示されるように前記共通オブジェクトにおける前記テキストデータの領域のサイズを変倍する
ことを特徴とする請求項１乃至３の何れか１項に記載の画像編集装置。
【請求項５】
前記変倍手段は、
前記隠蔽部分の位置から前記共通オブジェクトの位置に向かう方向に最も近い規定の方向が水平方向の成分を含む場合、前記テキストデータの領域を該規定の方向に応じて前記共通オブジェクトの端部まで移動させ、該移動させたテキストデータの領域において前記隠蔽部分によって隠蔽されている部分を特定し、該テキストデータの領域の水平方向の長さに対する、該テキストデータの領域の水平方向の長さから該部分の水平方向の長さを引いた長さの割合を第１の割合として求め、
前記方向に最も近い規定の方向が垂直方向の成分を含む場合、前記テキストデータの領域を該規定の方向に応じて前記共通オブジェクトの端部まで移動させ、該移動させたテキストデータの領域において前記隠蔽部分によって隠蔽されている部分を特定し、該テキストデータの領域の垂直方向の長さに対する、該テキストデータの領域の垂直方向の長さから該部分の垂直方向の長さを引いた長さの割合を第２の割合として求め、
前記第１の割合および前記第２の割合のうち求めた方、若しくはより大きい方の割合に対応する方向に前記テキストデータの領域を移動させて変倍して前記表示対象ページに配置する
ことを特徴とする請求項４に記載の画像編集装置。
【請求項６】
画像編集装置が行う画像編集方法であって、
前記画像編集装置の判断手段が、複数ページのうち表示対象ページ上にユーザ操作に応じて配置されたページオブジェクトと、該複数ページのそれぞれに共通して配置されている共通オブジェクトと、が前記表示対象ページ上で干渉しているか否かを判断する判断工程と、
前記判断工程において前記ページオブジェクトと前記共通オブジェクトとが前記表示対象ページ上で干渉していると判断される場合には、前記画像編集装置の変倍手段が、前記ページオブジェクトと前記共通オブジェクトとが前記表示対象ページ上で干渉しないように、前記表示対象ページ上における前記共通オブジェクトのサイズを変倍する変倍工程と
を備えることを特徴とする画像編集方法。
【請求項７】
コンピュータを、請求項１乃至５の何れか１項に記載の画像編集装置が有する各手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ページ上にオブジェクトを配置するための技術に関するものである。
【背景技術】
【０００２】
近年、情報処理装置の表示画面上で任意の文字列や図形、画像等のオブジェクトを配置し、ページ毎に異なるデザインのレイアウトデータを作成するデザインプログラムが多用されている。
【０００３】
従来のデザインプログラムでは、レイアウトデータの各ページに対してページ番号の書体や位置、また印刷時の用紙の綴じ位置を指定することができ、その指定に基づいてレイアウトデータの各ページにページ番号を印刷し、綴じ処理を行うことができる。一方、ページ番号と綴じ位置が上下左右の同じ辺に指定された場合は、ページ番号とステイプル針が重なることによる、またはページを折り返した時にページ番号が見にくくなるなど視認性の悪化が懸念される。それを防ぐため、特許文献１に開示された文書作成装置では、ページ番号の位置を他の位置に配置しなおすことで視認性の悪化を防止することが可能となっている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平7-168818号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の方法では、視認性の悪化の対象としてページ番号と綴じ位置の情報しか考慮していないが、視認性が悪化するケースは他にもある。例えば、近年のデザインプログラムでは任意のオブジェクトを全てのページに同様に表示させる機能がある（一般的なワープロ系プログラムであれば、ヘッダー情報・フッター情報。パワーポイント（Ｍｉｃｒｏｓｏｆｔ社）であればスライドマスター機能が相当）。この機能を使用し、全てのページに同様に表示させるオブジェクトを以降、共通オブジェクトと記載する。共通オブジェクトを配置した際、ページ毎に配置しているオブジェクトと共通オブジェクトとの間で重なり等の干渉が起こることもある。この場合、互いに干渉するそれぞれのオブジェクトは、ページ番号や綴じ位置とは異なる情報となる。
【０００６】
従って、ユーザは互いのオブジェクトが干渉しないようにするため、共通オブジェクトを配置または移動する際は全ページのデザインを確認しながらオブジェクトの配置位置を調整する必要があり、確認作業に手間がかかっていた。また、１ページ毎に干渉具合が異なる場合、確認・修正するのに手間がかかるという課題がある。本発明では、ページ上に配置されているオブジェクトと、該ページを含む複数ページのそれぞれに配置されている共通オブジェクトと、の干渉を解消する手間を軽減させるための技術を提供する。
【課題を解決するための手段】
【０００７】
本発明の１つの様態は、複数ページのうち表示対象ページ上にユーザ操作に応じて配置されたページオブジェクトと、該複数ページのそれぞれに共通して配置されている共通オブジェクトと、が前記表示対象ページ上で干渉しているか否かを判断する判断手段と、前記判断手段により前記ページオブジェクトと前記共通オブジェクトとが前記表示対象ページ上で干渉していると判断される場合には、前記ページオブジェクトと前記共通オブジェクトとが前記表示対象ページ上で干渉しないように、前記表示対象ページ上における前記共通オブジェクトのサイズを変倍する変倍手段とを備えることを特徴とする。
【発明の効果】
【０００８】
本発明の構成によれば、ページ上に配置されているオブジェクトと、該ページを含む複数ページのそれぞれに配置されている共通オブジェクトと、の干渉を解消する手間を軽減させることができる。
【図面の簡単な説明】
【０００９】
【図１】画像編集装置のハードウェア構成例を示すブロック図。
【図２】第１の実施形態の動作を説明する図。
【図３】干渉回避処理のフローチャート。
【図４】画像編集装置のハードウェア構成例を示すブロック図。
【図５】第２の実施形態の動作を説明する図。
【図６】干渉回避処理のフローチャート。
【図７】共通オブジェクト用の編集画面の一例を示す図。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照し、本発明の実施形態について説明する。
【００１１】
［第１の実施形態］
先ず、本実施形態に係る画像編集装置のハードウェア構成例について、図１のブロック図を用いて説明する。画像編集装置には、例えば、ＰＣ（パーソナルコンピュータ）、タブレット型端末装置、スマートフォンなどのコンピュータ装置が適用可能である。
【００１２】
ＣＰＵ１０１は、ＲＡＭ１０２に格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これによりＣＰＵ１０１は、画像編集装置全体の動作制御を行うと共に、画像編集装置が行うものとして後述する各処理を実行もしくは制御する。
【００１３】
ＲＡＭ１０２は、記憶装置１０３からロードされたコンピュータプログラムやデータを格納するためのエリアや、ＣＰＵ１０１が各種の処理を実行する際に用いるワークエリアを有する。このようにＲＡＭ１０２は、各種のエリアを適宜提供する。
【００１４】
記憶装置１０３は、ハードディスクドライブ装置などの大容量情報記憶装置である。記憶装置１０３には、ＯＳ（オペレーティングシステム）や、画像編集装置が行うものとして後述する各処理をＣＰＵ１０１に実行若しくは制御（機能）させるためのコンピュータプログラムやデータが保存されている。記憶装置１０３に保存されているコンピュータプログラムやデータは、ＣＰＵ１０１による制御に従って適宜ＲＡＭ１０２にロードされ、ＣＰＵ１０１による処理対象となる。
【００１５】
表示部１０４は、液晶画面やタッチパネル画面などにより構成されており、ＣＰＵ１０１による処理結果を画像や文字などでもって表示することができる。後述する各種の画面は表示部１０４に表示される。なお、表示部１０４は、画像や文字を投影するプロジェクタなどの投影装置であっても良い。
【００１６】
操作部１０５は、キーボード、マウス、タッチパネルなどのユーザインターフェースであり、ユーザが操作することで各種の指示をＣＰＵ１０１に対して入力することができる。
【００１７】
ＣＰＵ１０１、ＲＡＭ１０２、記憶装置１０３、表示部１０４、操作部１０５は何れも、バス１０６に接続されている。
【００１８】
次に、画像編集装置が行うものとして後述する各処理をＣＰＵ１０１に実行若しくは制御させるためのデータとして記憶装置１０３に保存されているデータの一例について説明する。
【００１９】
各ページデータ１２１は、それぞれのページのデータ（ページデータ）を含み、該ページには、複数ページのそれぞれに共通して配置されている共通オブジェクトと、ページごとにユーザ操作に応じて配置されるページオブジェクトと、が配置されている。各ページデータ１２１は、１つのデザインにおいてユーザが操作部１０５を操作してページを追加したり削除したりする度に増減する各ページのページデータである。
【００２０】
共通表示ページデータ１２２は、共通オブジェクトのみを含むページ（共通表示ページ）のデータである。各ページに共通に配置される共通オブジェクトの配置の編集（共通表示ページの作成）は、共通オブジェクト用の編集画面にて行われる。共通オブジェクト用の編集画面の一例を図７に示す。図７に示す如く、共通オブジェクト用の編集画面では、ページの枠７０１内に共通オブジェクト７１１のみが表示され、ユーザは操作部１０５を操作して枠７０１内で共通オブジェクト７１１の配置を設定する。共通オブジェクト用の編集画面にて設定された共通オブジェクト７１１の配置は、各ページにおける共通オブジェクト７１１の配置となる。共通表示ページデータ１２２は、１つのデザインに対して１ページぶん生成されるものである。
【００２１】
ページデータおよび共通表示ページデータ１２２は何れも、ページ番号１４１、含有通常オブジェクト数１４２、通常オブジェクトデータ１４３、含有干渉回避表示用オブジェクト数１４４、干渉回避表示用オブジェクトデータ１４５、干渉回避検討データ１４６、のデータセットを含む。つまり各ページデータ１２１には、このデータセットがページ数分含まれており、共通表示ページデータ１２２には、このデータセットが１ページ分だけ含まれていることになる。
【００２２】
ページデータに含まれているデータセットに含まれているページ番号１４１は、該ページデータに対応するページのページ番号である。共通表示ページデータ１２２に含まれているデータセットに含まれているページ番号１４１は、例えば１であっても良いし、ＮＵＬＬ等の無効値であっても良い。
【００２３】
ページデータに含まれているデータセットに含まれている含有通常オブジェクト数１４２は、該ページデータに対応するページに含まれている通常オブジェクト（共通オブジェクト、ページオブジェクト）の総数である。共通表示ページデータ１２２に含まれているデータセットに含まれている含有通常オブジェクト数１４２は、１ページ内における共通オブジェクトの総数である。
【００２４】
ページデータに含まれているデータセットに含まれている通常オブジェクトデータ１４３は、該ページデータに対応するページに含まれているそれぞれの通常オブジェクトのデータの集合である。共通表示ページデータ１２２に含まれているデータセットに含まれている通常オブジェクトデータ１４３は、１ページ内におけるそれぞれの共通オブジェクトのデータの集合である。
【００２５】
共通オブジェクトのデータおよびページオブジェクトのデータの何れも、オブジェクトＩＤ１６１、表示座標位置１６２、オブジェクトサイズ１６３、オブジェクト中心座標１６４、表示テキスト１６５、フォント情報１６６のデータセット（オブジェクトデータ）を含む。以下では特に断らない限りは共通オブジェクトおよびページオブジェクトを纏めて単にオブジェクトと称する。オブジェクトＩＤ１６１は、オブジェクトに固有の識別情報の一例である。表示座標位置１６２は、ページ内におけるオブジェクトの座標位置であり、例えば、オブジェクトが矩形である場合には、該矩形の左上隅の位置である。オブジェクトサイズ１６３は、オブジェクトの縦のサイズ（画素数）および横のサイズ（画素数）である。オブジェクト中心座標１６４は、オブジェクトの重心位置である。表示テキスト１６５は、オブジェクトが文字列（テキスト）である場合には、該文字列のデータである。フォント情報１６６は、オブジェクトが文字列（テキスト）である場合には、該文字列のフォントの種類、フォントサイズなど、該文字列を規定する情報の集合である。
【００２６】
ページデータに含まれているデータセットに含まれている含有干渉回避表示用オブジェクト数１４４は、該ページデータに対応するページ内のページオブジェクトと重複する共通オブジェクトに基づいて後述する処理により生成された干渉回避表示用オブジェクトの、該ページにおける総数である。共通表示ページデータ１２２に含まれているデータセットに含まれている含有干渉回避表示用オブジェクト数１４４にはＮＵＬＬ等の無効値が設定されている。
【００２７】
ページデータに含まれているデータセットに含まれている干渉回避表示用オブジェクトデータ１４５は、該ページデータに対応するページに含まれているそれぞれの干渉回避表示用オブジェクトのデータの集合である。干渉回避表示用オブジェクトのデータもまた上記のオブジェクトデータを含み、干渉回避表示用オブジェクトもまた単にオブジェクトと称すれば上記のオブジェクトデータに係る説明は、干渉回避表示用オブジェクトにも適用できる。共通表示ページデータ１２２に含まれているデータセットに含まれている干渉回避表示用オブジェクトデータ１４５にはＮＵＬＬ等の無効値が設定されている。
【００２８】
ページデータに含まれているデータセットに含まれている干渉回避検討データ１４６は、該ページデータに対応するページにおける干渉回避表示用オブジェクトを生成するために用いた情報の集合であり、干渉共通オブジェクトＩＤ１８１、干渉ページオブジェクトＩＤ１８２、干渉領域座標１８３、干渉領域サイズ１８４、干渉領域中心座標１８５、干渉回避方向１８６、水平方向回避サイズ割合１８７、垂直方向回避サイズ割合１８８、のデータセットを含む。共通表示ページデータ１２２に含まれているデータセットに含まれている干渉回避検討データ１４６にはＮＵＬＬ等の無効値が設定されている。
【００２９】
干渉共通オブジェクトＩＤ１８１は、ページ内でページオブジェクトと重なりなどの干渉が生じている共通オブジェクトのオブジェクトＩＤである。干渉ページオブジェクトＩＤ１８２は、ページ内で共通オブジェクトと干渉しているページオブジェクトのオブジェクトＩＤである。干渉領域座標１８３は、ページ内でページオブジェクトと共通オブジェクトとが干渉している干渉領域（共通オブジェクトにおいてページオブジェクトによって隠蔽されている隠蔽部分）の座標位置であり、例えば干渉領域が矩形である場合には、該矩形の左上隅の位置である。干渉領域サイズ１８４は、干渉領域の縦のサイズ（画素数）および横のサイズ（画素数）である。干渉領域中心座標１８５は、干渉領域の重心位置である。干渉回避方向１８６は、ページオブジェクトとの干渉を回避するために参照する方向である。水平方向回避サイズ割合１８７は、共通オブジェクトにおいてページオブジェクトに隠蔽されていない部分の水平方向の割合である。垂直方向回避サイズ割合１８８は、共通オブジェクトにおいてページオブジェクトに隠蔽されていない部分の垂直方向の割合である。
【００３０】
干渉回避設定１２３は、ページ上で共通オブジェクトとページオブジェクトとが干渉している場合に、この干渉を回避するための処理（干渉回避処理）を行うのか否かの設定情報である。例えば図２（ｅ）に示すＧＵＩ２１１のチェックボックス２１１ａをユーザが操作部１０５を操作して指示することで該チェックボックス２１１ａをオンにする（チェックマークを付ける）と、ＣＰＵ１０１は干渉回避処理を行う旨を示す設定情報を干渉回避設定１２３として記憶装置１０３に登録する。一方、ＧＵＩ２１１のチェックボックス２１１ａをユーザが操作部１０５を操作して指示することで該チェックボックス２１１ａをオフにする（チェックマークを外す）と、ＣＰＵ１０１は干渉回避処理を行わない旨を示す設定情報を干渉回避設定１２３として記憶装置１０３に登録する。
【００３１】
またユーザが操作部１０５を操作して、通常オブジェクトの編集（配置、再配置、リサイズなど）を行うと、その編集結果に応じてＣＰＵ１０１は、対応するオブジェクトの表示座標位置１６２、オブジェクトサイズ１６３、オブジェクト中心座標１６４等を更新する。またユーザが操作部１０５を操作してテキストを入力／編集したり、テキストのフォント情報を入力／編集すると、ＣＰＵ１０１はユーザによる操作に応じて表示テキスト１６５、フォント情報１６６を更新する。
【００３２】
共通表示ページ、共通オブジェクトとページオブジェクトとに干渉がないページ、共通オブジェクトとページオブジェクトとに干渉があるページ、の一例を図２（ａ）に示す。共通表示ページ２０１は上記の如く、共通オブジェクト（テキスト「Ｃｏｎｆｉｄｅｎｔｉｎａｌ」のオブジェクト）のみが配置されたページであり、各ページにはこの配置でもって共通オブジェクトが配置される。
【００３３】
ページ２０２（１ページ目）上には３つの通常オブジェクト（上の２つはページオブジェクト、下の１つは共通オブジェクト）が配置されており、それぞれに重なりなどの干渉は生じていない。
【００３４】
ページ２０３（２ページ目）上には４つの通常オブジェクト（上の３つはページオブジェクト、下の１つは共通オブジェクト）が配置されており、共通オブジェクトと最下のページオブジェクトとには干渉が生じている。この干渉している部分付近を拡大した図２（ｂ）に示す如く、共通オブジェクトとページオブジェクトで重複している領域（干渉領域）２０５が存在している。
【００３５】
本実施形態では、ページオブジェクトと干渉しない干渉回避表示用オブジェクトを共通オブジェクトから生成し、該干渉回避表示用オブジェクトを配置する干渉回避処理を行う。干渉回避処理について図３のフローチャートに従って説明する。図３のフローチャートに従った処理は、各ページデータ１２１に含まれている各ページのページデータについて行う。以下では一例として共通オブジェクトがテキストであるものとする。
【００３６】
ステップＳ３０１では、ＣＰＵ１０１は、干渉回避設定１２３が干渉回避処理を行うことを示す設定情報であるのか、それとも干渉回避処理を行わないことを示す設定情報であるのか、を判断する。この判断の結果、干渉回避設定１２３が干渉回避処理を行うことを示す設定情報である場合には、処理はステップＳ３０２に進み、干渉回避設定１２３が干渉回避処理を行わないことを示す設定情報である場合には、処理はステップＳ３１９に進む。
【００３７】
ステップＳ３０２ではＣＰＵ１０１は、ページ（対象ページ）内のそれぞれの共通オブジェクトについて、該共通オブジェクトと重なり等の干渉が生じているページオブジェクトが存在するか否かを判断する。例えばＣＰＵ１０１は、共通オブジェクトの表示座標位置１６２およびオブジェクトサイズ１６３から該共通オブジェクトの表示領域を特定し、ページオブジェクトの表示座標位置１６２およびオブジェクトサイズ１６３から該ページオブジェクトの表示領域を特定し、該特定したそれぞれの表示領域間で重なりなどの干渉が生じているか否かを判断する。
【００３８】
そして、ページオブジェクトとの間で重なりなどの干渉が生じている共通オブジェクトが１つでもあれば、処理はステップＳ３０３に進み、ページオブジェクトとの間で重なりなどの干渉が生じている共通オブジェクトが１つもなければ、処理はステップＳ３１９に進む。以下では、ページオブジェクトとの間で重なりなどの干渉が生じている共通オブジェクトを干渉共通オブジェクトと称する。
【００３９】
ステップＳ３０３では、ＣＰＵ１０１は、ステップＳ３０２においてページオブジェクトとの間で干渉が生じていると判断された干渉共通オブジェクトのオブジェクトＩＤ１６１を干渉共通オブジェクトＩＤ１８１として登録し、該ページオブジェクトのオブジェクトＩＤ１６１を干渉ページオブジェクトＩＤ１８２として登録する。
【００４０】
ステップＳ３０４では、ＣＰＵ１０１は、干渉共通オブジェクトＩＤ１８１に対応する干渉共通オブジェクトの表示座標位置１６２およびオブジェクトサイズ１６３から特定した該干渉共通オブジェクトの表示領域と、干渉ページオブジェクトＩＤ１８２に対応するページオブジェクトの表示座標位置１６２およびオブジェクトサイズ１６３から特定した該ページオブジェクトの表示領域と、で重複している領域（干渉領域）を特定し、該干渉領域の位置を干渉領域座標１８３として登録し、該干渉領域の縦のサイズおよび横のサイズを干渉領域サイズ１８４として登録し、該干渉領域の中心位置を干渉領域中心座標１８５として登録する。
【００４１】
ステップＳ３０５では、ＣＰＵ１０１は、ステップＳ３０４において求めた干渉領域の中心位置、縦のサイズおよび横のサイズが、干渉共通オブジェクトの中心位置、縦のサイズおよび横のサイズ、のそれぞれと同じ（もしくは差分が規定範囲内）であるか否かを判断する。この判断の結果、同じ（もしくは差分が規定範囲内）であれば、処理はステップＳ３１８に進み、同じではない（もしくは差分が規定範囲外）であれば、処理はステップＳ３０６に進む。
【００４２】
ステップＳ３０６では、ＣＰＵ１０１は、干渉領域の中心位置から干渉共通オブジェクトの中心位置に向かう方向ベクトルを求め、「上」、「右上」、「右」、「右下」、「下」、「左下」、「左」、「左上」のうち該求めた方向ベクトルが示す方向に最も近い方向を干渉回避方向１８６として登録する。これは、方向ベクトルの成分や、水平方向もしくは垂直方向に対して方向ベクトルが成す角度から、方向ベクトルが「上」、「右上」、「右」、「右下」、「下」、「左下」、「左」、「左上」の何れを向いているのかを特定することができる。
【００４３】
ステップＳ３０７では、ＣＰＵ１０１は、干渉回避方向１８６が「右上」、「右」、「右下」、「左下」、「左」、「左上」の何れかであるか（水平方向の成分を含むか）否かを判断する。この判断の結果、干渉回避方向１８６が「右上」、「右」、「右下」、「左下」、「左」、「左上」の何れかである場合には、処理はステップＳ３０８に進み、干渉回避方向１８６が「右上」、「右」、「右下」、「左下」、「左」、「左上」の何れでもない場合には、処理はステップＳ３０９に進む。
【００４４】
ステップＳ３０８では、ＣＰＵ１０１は、干渉共通オブジェクトの水平方向の長さ（幅）から干渉領域の水平方向の長さ（幅）を引いた長さを非干渉領域の幅として求め、干渉共通オブジェクトの幅に対する非干渉領域の幅の割合を求め、該求めた割合を水平方向回避サイズ割合１８７として登録する。
【００４５】
例えば図２（ｃ）の場合、干渉共通オブジェクトの幅２０７から干渉領域の幅を引いた非干渉領域の幅２９７を求め、干渉共通オブジェクトの幅２０７に対する非干渉領域の幅２９７の割合を水平方向回避サイズ割合１８７として登録する。
【００４６】
ステップＳ３０９では、ＣＰＵ１０１は、干渉回避方向１８６が「上」、「右上」、「右下」、「下」、「左下」、「左上」の何れかであるか（垂直方向の成分を含むか）否かを判断する。この判断の結果、干渉回避方向１８６が「上」、「右上」、「右下」、「下」、「左下」、「左上」の何れかである場合には、処理はステップＳ３１０に進み、干渉回避方向１８６が「上」、「右上」、「右下」、「下」、「左下」、「左上」の何れでもない場合には、処理はステップＳ３１１に進む。
【００４７】
ステップＳ３１０では、ＣＰＵ１０１は、干渉共通オブジェクトの垂直方向の長さ（高さ）から干渉領域の垂直方向の長さ（高さ）を引いた長さを非干渉領域の高さとして求め、干渉共通オブジェクトの高さに対する非干渉領域の高さの割合を求め、該求めた高さを垂直方向回避サイズ割合１８８として登録する。
【００４８】
例えば図２（ｃ）の場合、干渉共通オブジェクトの高さ２０８から干渉領域の高さを引いた非干渉領域の高さ２９８を求め、干渉共通オブジェクトの高さ２０８に対する非干渉領域の高さ２９８の割合を垂直方向回避サイズ割合１８８として登録する。
【００４９】
ステップＳ３１１では、ＣＰＵ１０１は、水平方向回避サイズ割合１８７および垂直方向回避サイズ割合１８８のうち大きい方を選択する。なお、水平方向回避サイズ割合１８７および垂直方向回避サイズ割合１８８のうち一方しか求めていない場合には、該求めた一方を選択する。またＣＰＵ１０１は、選択した割合に対応する方向を最終回避方向とする。例えば、干渉回避方向１８６が「左上」の場合、水平方向回避サイズ割合１８７＞垂直方向回避サイズ割合１８８であれば、最終回避方向は「左」となり、水平方向回避サイズ割合１８７＜垂直方向回避サイズ割合１８８であれば、最終回避方向は「上」となる。このように、最終回避方向は、「上」、「下」、「右」、「左」のいずれかとなる。
【００５０】
ステップＳ３１２では、ＣＰＵ１０１は、干渉共通オブジェクトにおいて最終回避方向の端部（例えば最終回避方向が「左」であれば左端）から非干渉領域の長さ（最終回避方向が「上」もしくは「下」であれば高さ、最終回避方向が「左」もしくは「右」であれば幅）の範囲内に干渉共通オブジェクトのテキストが収まるような該テキストのフォントサイズを求める。
【００５１】
ステップＳ３１３では、ＣＰＵ１０１は、干渉共通オブジェクトを複製したものを干渉回避表示用オブジェクトとして生成し、該生成した干渉回避表示用オブジェクトのデータを干渉回避表示用オブジェクトデータ１４５として登録すると共に、含有干渉回避表示用オブジェクト数１４４を１つインクリメントする。含有干渉回避表示用オブジェクト数１４４の初期値は０である。
【００５２】
ステップＳ３１４では、ＣＰＵ１０１は、ステップＳ３１３で生成した干渉回避表示用オブジェクトのフォントサイズを、ステップＳ３１２で求めたフォントサイズに更新することで、該干渉共通オブジェクトを変倍する。またＣＰＵ１０１は、この更新に応じて、干渉回避表示用オブジェクトの表示座標位置１６２、オブジェクトサイズ１６３、オブジェクト中心座標１６４、フォント情報１６６等を適宜更新する。
【００５３】
そして、ＣＰＵ１０１は、ステップＳ３１４により生成したそれぞれの干渉回避表示用オブジェクトについてステップＳ３１５の処理を行う（含有干渉回避表示用オブジェクト数１４４が示す数だけ繰り返す）。ステップＳ３１５では、ＣＰＵ１０１は、ステップＳ３１４にて生成された干渉回避表示用オブジェクトを、該干渉回避表示用オブジェクトのオブジェクトデータに従ってページ上に配置（描画）する。例えば図２（ｄ）に示す如く、図２（ｃ）に示した干渉共通オブジェクトの場合は水平方向回避サイズ割合１８７＞垂直方向回避サイズ割合１８８であり、最終回避方向は左であるから、左端から非干渉領域の幅内に収まるようなフォントサイズのテキストのオブジェクトである干渉回避表示用オブジェクト２１０が表示される。
【００５４】
次にＣＰＵ１０１は、ページ上に配置する全ての共通オブジェクトについて（ページデータに含まれているそれぞれの共通オブジェクトのオブジェクトデータについて）、ステップＳ３１６、Ｓ３１７の処理を行う。
【００５５】
ステップＳ３１６では、ＣＰＵ１０１は、ページ上に未だ配置していない共通オブジェクトのオブジェクトＩＤ１６１が干渉共通オブジェクトＩＤ１８１に含まれているか否かを判断する。この判断の結果、ページ上に未だ配置していない共通オブジェクトのオブジェクトＩＤ１６１が干渉共通オブジェクトＩＤ１８１に含まれている場合には、ページ上に未だ配置していない他の共通オブジェクトについてステップＳ３１６の処理を行う。一方、ページ上に未だ配置していない共通オブジェクトのオブジェクトＩＤ１６１が干渉共通オブジェクトＩＤ１８１に含まれていない場合には、処理はステップＳ３１７に進む。
【００５６】
ステップＳ３１７では、ＣＰＵ１０１は、この共通オブジェクト（干渉共通オブジェクトＩＤ１８１に含まれていないオブジェクトＩＤ１６１に対応する共通オブジェクト）を、該共通オブジェクトのオブジェクトデータに従ってページ上に配置する。
【００５７】
一方、ステップＳ３１８では、ＣＰＵ１０１は、干渉回避処理が実行できない旨のメッセージを表示部１０４に表示する。メッセージは文字列であっても良いし、画像であっても良い。また、電子メールの送信、光源の点滅、音の出力など他の手法でもってメッセージを通知するようにしても良い。
【００５８】
ステップＳ３１９の処理は、ページ上に配置する全ての共通オブジェクトについて行われる。ステップＳ３１９では、ＣＰＵ１０１は、ページ上に未だ配置していない共通オブジェクトを、該共通オブジェクトのオブジェクトデータに従ってページ上に配置する。
【００５９】
ステップＳ３２１の処理は、ページ上に配置する全てのページオブジェクトについて行われる。ステップＳ３２１では、ＣＰＵ１０１は、ページ上に未だ配置していないページオブジェクトを、該ページオブジェクトのオブジェクトデータに従ってページ上に配置する。
【００６０】
なお、本実施形態では、フォントサイズを変更することで共通オブジェクトを変倍して干渉を回避しているが、フォントサイズの変更に加えて若しくは代えて、改行位置の変更や空白の追加、フォント形状の変更やテキストデータの変更などのうち１つ以上により共通オブジェクトを変倍して干渉を回避するようにすることも可能である。
【００６１】
また、本実施形態では、テキストを含むオブジェクトを対象にしているが、例えばイメージオブジェクトや図形オブジェクトなど座標とサイズを有するオブジェクトを対象とすることも可能である。
【００６２】
また本実施形態では、干渉が生じている共通オブジェクトを変更することで干渉を回避しているが、干渉が生じているページオブジェクトを変更することで干渉を回避することも可能である。
【００６３】
また本実施形態では、「上」、「右上」、「右」、「右下」、「下」、「左下」、「左」、「左上」の８方向を候補方向とし、該候補方向のうち方向ベクトルが示す方向に最も近い方向を干渉回避方向１８６として登録していたが、候補方向の数は８に限らない。
【００６４】
また本実施形態では、最終回避方向の候補方向を「上」、「右」、「下」、「左」の４方向としていたが、最終回避方向の候補方向の数は４に限らない。
【００６５】
また本実施形態では、干渉共通オブジェクトと該干渉共通オブジェクトに対応する干渉回避表示用オブジェクトとの両方を配置していたが、該干渉共通オブジェクトに代わりに該干渉回避表示用オブジェクトを配置するようにしても構わない。
【００６６】
また、本実施形態では、共通表示ページは１ページのみとしたが複数ページとしても構わない。
【００６７】
また本実施形態では、図３のフローチャートに従った処理を全てのページについて行うものとしたが、一部のページについて行うようにしても構わない。
【００６８】
また、記憶装置１０３に保存されているものとして説明した上記のデータ群（図１の右側に示したデータ群）は、全て記憶装置１０３に保存されることに限らず、一部若しくは全部を他の装置（例えばネットワークを介して画像編集装置とデータ通信が可能な外部装置）に保存しておき、必要に応じてＣＰＵ１０１がＲＡＭ１０２にダウンロードするようにしてもかなわない。
【００６９】
また、画像編集装置にはＲＡＭ１０２、記憶装置１０３以外のメモリ装置を加えても構わない。画像編集装置に加えても良いメモリ装置としては、例えば、磁気記憶媒体（フロッピーディスク、ハードディスク、磁気テープ等）、光ディスク（MOやPD等の光磁気ディスク、CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-R、DVD-RAM、DVD-R、DVD-RW、DVD+RW等）、半導体ストレージ、紙テープ、ROM素子などを挙げることができる。
【００７０】
また、画像編集装置には、上記の各ページを印刷する印刷装置を、USBやRC-232C、IrDA、IEEE1394等のシリアルインターフェイスや、IEEE1284、SCSI、IDEなどのパラレルインターフェイス、或いは／及び、ネットワークインターフェイスを介して接続するようにしても構わない。また、画像編集装置を該印刷装置に組み込んでも構わない。
【００７１】
［第２の実施形態］
以下では第１の実施形態との差分について説明し、以下で特に触れない限りは第１の実施形態と同様であるものとする。本実施形態では、図４に示す如く、オブジェクトデータには、テキスト表示エリア座標４６８、テキスト表示エリアサイズ４６９、テキスト表示エリア中心座標４７０が更に含まれている。また本実施形態では、干渉回避検討データ１４６には、水平回避時残干渉サイズ４８７、水平回避時回避率４８８、垂直回避時残干渉サイズ４８９、垂直回避時回避率４９０が更に含まれている。
【００７２】
本実施形態に係る干渉回避処理について図６のフローチャートに従って説明する。図６において図３に示した処理ステップと同じ処理ステップには同じステップ番号を付しており、該処理ステップに係る説明は省略する。
【００７３】
図６のフローチャートに従った処理は、各ページデータ１２１に含まれている各ページのページデータについて行う。以下では一例として共通オブジェクトがテキストであるものとする。
【００７４】
ステップＳ６０６では、ＣＰＵ１０１は、干渉領域の中心位置から、干渉共通オブジェクト内のテキストの領域（テキスト領域）の中心位置に向かう方向ベクトルを求める。干渉共通オブジェクト内におけるテキスト領域の中心位置は上記のテキスト表示エリア中心座標４７０として登録されている。そしてＣＰＵ１０１は、「上」、「右上」、「右」、「右下」、「下」、「左下」、「左」、「左上」のうち該求めた方向ベクトルが示す方向に最も近い方向を干渉回避方向１８６として登録する。
【００７５】
そしてステップＳ３０７において、干渉回避方向１８６が「右上」、「右」、「右下」、「左下」、「左」、「左上」の何れかである場合には、処理はステップＳ６０８に進む。
【００７６】
ステップＳ６０８では、ＣＰＵ１０１は、テキスト領域を干渉共通オブジェクトの端部（干渉回避方向１８６が「右上」、「右」、「右下」の何れかであれば右端、「左下」、「左」、「左上」の何れかであれば左端）に水平方向に移動させた場合に該テキスト領域と干渉領域とで重複する領域を残干渉領域として特定する。テキスト領域は、テキスト領域の位置（例えば左上隅の位置）であるテキスト表示エリア座標４６８およびテキスト領域の縦のサイズおよび横のサイズであるテキスト表示エリアサイズ４６９によって特定される。重複する領域の特定方法については第１の実施形態と同様である。
【００７７】
そしてＣＰＵ１０１は、残干渉領域の水平方向の長さ（幅）を水平回避時残干渉サイズ４８７として登録する。例えば図５（ａ）に示す如く、テキスト「Ｃｏｎｆｉｄｅｎｔｉａｌ」の領域を矢印で示す如く干渉共通オブジェクトの左端に移動させた場合には、移動後のテキスト領域と干渉領域とで重複している残干渉領域の幅５０７を水平回避時残干渉サイズ４８７として登録する。そしてＣＰＵ１０１は、テキスト領域の水平方向の長さ（幅）から水平回避時残干渉サイズ４８７を引いた長さを求め、該テキスト領域の幅に対する「テキスト領域の幅から水平回避時残干渉サイズ４８７を引いた長さ」の割合を求め、該求めた割合を水平回避時回避率４８８として登録する。
【００７８】
そしてステップＳ３０９において、干渉回避方向１８６が「上」、「右上」、「右下」、「下」、「左下」、「左上」の何れかである場合には、処理はステップＳ６１０に進む。
【００７９】
ステップＳ６１０では、ＣＰＵ１０１は、テキスト領域を干渉共通オブジェクトの端部（干渉回避方向１８６が「上」、「右上」、「左上」の何れかであれば上端、「下」、「右下」、「左上」の何れかであれば下端）に垂直方向に移動させた場合における該テキスト領域と干渉領域とで重複する領域を残干渉領域として特定する。
【００８０】
そしてＣＰＵ１０１は、残干渉領域の垂直方向の長さ（高さ）を垂直回避時残干渉サイズ４８９として登録する。例えば図５（ｂ）に示す如く、テキスト「Ｃｏｎｆｉｄｅｎｔｉａｌ」の領域を矢印で示す如く干渉共通オブジェクトの下端に移動させた場合には、移動後のテキスト領域と干渉領域とで重複している残干渉領域の高さ５０９を垂直回避時残干渉サイズ４８９として登録する。そしてＣＰＵ１０１は、テキスト領域の垂直方向の長さ（高さ）から垂直回避時残干渉サイズ４８９を引いた長さを求め、該テキスト領域の高さに対する「テキスト領域の高さから垂直回避時残干渉サイズ４８９を引いた長さ」の割合を求め、該求めた割合を垂直回避時回避率４９０として登録する。
【００８１】
ステップＳ６１１では、ＣＰＵ１０１は、水平回避時回避率４８８および垂直回避時回避率４９０のうち大きい方を選択する。なお、水平回避時回避率４８８および垂直回避時回避率４９０のうち一方しか求めていない場合には、該求めた一方を選択する。またＣＰＵ１０１は、選択した回避率に対応する方向を最終回避方向とする。例えば、干渉回避方向１８６が「左上」の場合、水平回避時回避率４８８＞垂直回避時回避率４９０であれば、最終回避方向は「左」となり、水平回避時回避率４８８＜垂直回避時回避率４９０であれば、最終回避方向は「上」となる。このように、最終回避方向は、「上」、「下」、「右」、「左」のいずれかとなる。
【００８２】
ステップＳ６１２では、ＣＰＵ１０１は、テキスト領域を干渉共通オブジェクトにおいて最終回避方向の端部（例えば最終回避方向が「左」であれば左端）に移動させた場合に、該端部から非干渉領域の長さ（最終回避方向が「上」もしくは「下」であれば高さ、最終回避方向が「左」もしくは「右」であれば幅）の範囲内にテキストが収まるような該テキストのフォントサイズを求める。
【００８３】
ステップＳ６１４では、ＣＰＵ１０１は、干渉回避表示用オブジェクト内のテキスト領域を干渉共通オブジェクトにおいて最終回避方向の端部に移動させ、該テキスト領域内のテキストのフォントサイズを、ステップＳ６１２で求めたフォントサイズに更新する。またＣＰＵ１０１は、この更新に応じて、テキスト表示エリア座標４６８、テキスト表示エリアサイズ４６９、テキスト表示エリア中心座標４７０、フォント情報１６６等を適宜更新する。
【００８４】
本実施形態では、例えば図５（ｃ）に示す如く、干渉共通オブジェクトの下端から非干渉領域の高さの範囲内に収まるようなテキスト領域５１１が表示される。なお、本実施形態ではテキスト領域の移動範囲を干渉共通オブジェクト内としているが、ユーザが操作部１０５を操作して指定した領域内としても良い。
【００８５】
なお、第１の実施形態および第２の実施形態において共通オブジェクト、ページオブジェクト、干渉回避表示用オブジェクトなどのオブジェクトの配置は、オブジェクトの位置、姿勢（回転角度）、サイズ等のうち１つ以上を含むものとしている。
【００８６】
［第３の実施形態］
以上説明した画面の構成やその操作方法、データ構成、具体的な数値は一例であり、以上説明した各実施形態は、上記の画面の構成やその操作方法、上記のデータ構成、上記の具体的な数値に限定することを意図したものではない。また、以上説明した各実施形態の一部若しくは全部は適宜組み合わせて使用しても構わないし、選択的に使用しても構わない。
【符号の説明】
【００８７】
１０１：ＣＰＵ  １０２：ＲＡＭ  １０３：記憶装置  １０４：表示部  １０５：操作部  １０６：バス
【図１】
2020145508.tif 000003
【図２】
2020145508.tif 000004
【図３】
2020145508.tif 000005
【図４】
2020145508.tif 000006
【図５】
2020145508.tif 000007
【図６】
2020145508.tif 000008
【図７】
2020145508.tif 000009