オブジェクト配置装置及び方法、プログラム、並びに記憶媒体
【課題】本発明は、隣り合うオブジェクト間にユーザが意図しない線や空白を挿入することなく、該オブジェクト間の境界をユーザに判別し易くすることができるオブジェクト配置装置を提供する。
【解決手段】 本オブジェクト配置装置では、隣接して配置されたオブジェクト間の境界が判別可能か否かを判断し、境界が判別可能でないと判断した場合は、境界に線を引く。この場合、画像間の境界領域におけるオブジェクトの色と隣接する他のオブジェクトの色とが同色または近似色か否かを判断し、同色または近似色と判断した場合、オブジェクト間の境界領域におけるオブジェクトの色と他のオブジェクトの色に基づいて、境界に引く線の仕様を決定する。
【解決手段】 本オブジェクト配置装置では、隣接して配置されたオブジェクト間の境界が判別可能か否かを判断し、境界が判別可能でないと判断した場合は、境界に線を引く。この場合、画像間の境界領域におけるオブジェクトの色と隣接する他のオブジェクトの色とが同色または近似色か否かを判断し、同色または近似色と判断した場合、オブジェクト間の境界領域におけるオブジェクトの色と他のオブジェクトの色に基づいて、境界に引く線の仕様を決定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、オブジェクト配置装置及び方法、プログラム、並びに記憶媒体に関し、特にオブジェクトとなる画像を複数隣接して配置する際に、各画像間の境界を容易に判別可能にするオブジェクト配置装置及び方法、プログラム、並びに記憶媒体に関する。
【背景技術】
【0002】
従来、その場で撮影した複数の画像を1枚のシール紙に印刷する写真シール作成装置が提供されている。このような写真シール作成装置では、ユーザがシール紙に印刷された複数の画像を1枚ずつ正確に切り取れるように、画像間に切り取り線(分断線)が印刷される。例えば、図20(a)に示すように、すべての画像の周りに切断用ガイド線2001が印刷された場合、ユーザは切断用ガイド線2001に沿ってカットすることにより容易に画像を切り分けることができる。
【0003】
また、ユーザが用紙上に隣接して印刷された複数の画像を1枚ずつ正確に切り取らせるために、図20(b)に示すように、画像間に空白を挿入してもよい。これも、空白が画像間の境界を示すため、ユーザが各画像を容易に切断することができる。
【0004】
また、図20(c)に示すように、画像の切断位置を示すカットマークを画像に加えて印刷した場合は、印刷された切断用ガイド線が切り分けられた画像の縁に残ることなく、画像部分のみを切断することができる(例えば、特許文献1参照)。
【特許文献1】特開平05−116429号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、上記従来技術には以下の問題点がある。
【0006】
1.すべての画像の周りに切断用ガイド線を印刷した場合、切断用ガイド線2001が画像間の境界領域の色(背景色)を考慮した線色でないことから、ユーザが意図していない線が画像の縁に残ることになる。
【0007】
2.画像間に空白を挿入する場合、切断用ガイド線が画像の縁に残ることは無くなるが、空白を挿入するための空間が必要となり、用紙上に配置する画像のサイズや数が制限されるおそれがある。また、画像間に挿入された空白部分を除去するために、画像を切り分ける際に切断回数が増えてしまい、手間がかかる。
【0008】
また、上記特許文献1では、画像の周囲に切断用ガイド線がないため、画像部分を切断する際に切断位置がずれてしまうおそれがある。また、カットマークとカットマークとの間にユーザがペンで直接線を引くこともできるが、ペンで引いた線が画像の縁に残るおそれがあり、さらに線と引く手間もかかる。また、カットマークを印刷するための空間が用紙上に必要となり、画像のサイズや数が制限されるおそれがある。
【0009】
本発明は、上記問題に鑑みて成されたものであり、隣り合うオブジェクト間にユーザが意図しない線や空白を挿入することなく、該オブジェクト間の境界をユーザに判別し易くすることができるオブジェクト配置装置及び方法、プログラム、並びに記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【0010】
上記目的を達成するために、請求項1記載のオブジェクト配置装置は、画像または文書を含むオブジェクトを複数隣接して配置するオブジェクト配置手段を備えるオブジェクト配置装置において、前記オブジェクト配置手段により隣接して配置されたオブジェクト間の境界が判別可能か否かを判断する判断手段と、前記判断手段により前記境界が判別可能でないと判断された場合は、前記境界に線を引く制御を行う境界線描画制御手段とを備えることを特徴とする。
【0011】
上記目的を達成するために、請求項6記載のオブジェクト配置方法は、画像または文書を含むオブジェクトを複数隣接して配置するオブジェクト配置工程と、前記オブジェクト配置工程にて隣接して配置されたオブジェクト間の境界がユーザに判別可能か否かを判断する判断工程と、前記判断工程にて前記境界が判別可能でないと判断された場合は、前記境界に線を引く制御を行う境界線描画制御工程とを備えることを特徴とする。
【発明の効果】
【0012】
本発明によれば、隣り合うオブジェクト間にユーザが意図しない線や空白を挿入することなく、該オブジェクト間の境界をユーザに判別し易くすることができる。
【発明を実施するための最良の形態】
【0013】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【0014】
[第1の実施形態]
図1は、本発明の第1の実施形態に係るオブジェクト配置装置の構成例を示すブロック図である。
【0015】
図1において、オブジェクト配置装置は、例えば、パーソナルコンピュータ(以下、単に「PC」という。)1から成る。PC1は、CRT(Cathode Ray Tube)や液晶パネル等から成るディスプレイ2と、PC1等から印刷コマンドを受信して印刷を実行するプリンタ3に接続されている。なお、本実施の形態では、PC1は、ディスプレイ2及びプリンタ3にローカルに接続されているが、ネットワーク等を介して接続されていてもよい。
【0016】
PC1は、該PC内の各部の制御を行うCPU12と、CPU12と各部を接続するインターフェース部(I/F)13と、データ記憶部14と、境界判定部15と、色作成部16と、レイアウト作成部17と、レイアウト記憶部18とを備える。
【0017】
I/F13は、CPU12と、上記装置内の各部とを接続するためのインターフェースである。データ記憶部14は、RAMやハードディスク等の記憶装置で構成され、ユーザにより設定された印刷設定の情報を格納する。
【0018】
境界判定部15は、画像位置データベース20に格納された画像位置の情報から隣り合う画像の色、画像と用紙の色をそれぞれ比較し、画像間または画像と用紙との間に線(分割線)を引くか否かの判断を行う。分割線は、画像間の切断位置を示す線である。色作成部16は、分割線の線色や線幅を決定する。
【0019】
レイアウト作成部17は、画像間に分割線を引いたり、画像を移動して配置変更して画像のレイアウトを作成する。レイアウト記憶部18は、作成されたレイアウトの情報を記憶する。レイアウト作成部17により作成された画像のレイアウトは、レイアウト記憶部18にレイアウト情報として記憶され、後述する印刷レイアウト画面としてディスプレイ1に表示される。ユーザは、印刷レイアウト画面を確認した後に印刷指示を行うと、プリンタ2により印刷が実行される。なお、境界判定部15、色作成部16、レイアウト作成部17、及びレイアウト記憶部18は、ハードウェアで構成されていてもソフトウェアで構成されていてもよい。また、PC1は、通常のPCと同様に、RAMやROM、ハードディスク等の記憶装置を備えると共に、マウスやキーボード等の入力装置(不図示)を備える。
【0020】
また、PC1は、画像位置データベース20と、画像情報データベース21と、Rレンジ値取得データベース22と、R計算値取得データベース23と、Gレンジ値取得データベース24と、G計算値取得データベース25と、Bレンジ値取得データベース26と、B計算値取得データベース27と、空白位置情報データベース28とを備える。これらのデータベースは、PC1内のハードディスク等の記憶装置に格納されるが、PCに接続された外部記憶装置に格納されていてもよい。
【0021】
図2、図3(a)及び図4(a)〜図4(f)、図5(a)及び図5(b)は、PC1が備える各種データベースの内容を示す図である。
【0022】
図2において、画像位置データベース20には、用紙上に配置される画像の位置情報が格納される。画像位置情報は、画像位置No.と、画像開始位置X,Y(mm)と、画像終了位置X,Y(mm)とで構成される。これらの画像開始位置や画像終了位置の単位はmmであっても、ドット単位であってもよい。
【0023】
画像位置No.は、用紙上の各画像に対して任意に割り当てられた番号である。本実施の形態では、図3(b)に示すように、4×4=16の画像に対して1〜16の画像位置No.が割り当てられている。なお、この画像の数や割り当て順は、図示例に限定されるものではない。
【0024】
画像開始位置X,Y及び画像終了位置X,Yは、用紙上の座標位置である。本実施の形態では、図3(b)に示すように、用紙上端または左端からX軸またはY軸方向へ長さがそれぞれX,Y(mm)で表されている。また、画像の形状が一般的に四角形であることから、画像開始位置は四角形の左上の頂点を示す。一方、画像終了位置は、四角形の右下の頂点を示す。なお、画像の形状は四角形に限定されず、円や楕円、三角形、その他の多角形でもよい。円の場合は中心位置と半径、楕円の場合は中心位置と短半径、長半径、三角形の場合は3つの頂点などが画像位置データベース20に格納されている。
【0025】
図3(a)において、画像情報データベース21には、画像の辺ごとの分割線等の画像情報が格納される。画像情報は、画像位置No.と、画像No.と、辺No.と、分割線フラグ(flag)と、辺値と、分割線の線色と、分割線の線幅と、判定済みフラグ(flag)とで構成される。例えば、4×4の用紙レイアウトであれば、画像及びその画像に対する4辺にそれぞれに番号が割り当てられ、画像情報データベース21に格納される。
【0026】
図4(a)において、Rレンジ値取得データベース22には、R(Red)0−255に対して設定されたプリンタごとに固有Rのレンジが格納される。ここでレンジとは、ユーザの目視に基づく色味を数値化したものである。RレンジはR成分、GレンジはG成分、BレンジはB成分について数値化されている。この数値は、画像を出力するプリンタの仕様に応じて変更される。
【0027】
図4(b)において、R計算値取得データベース23には、Rのレンジごとに使用されるR値が格納される。
【0028】
図4(c)において、Gレンジ値取得データベース24には、G(Green)0−255に対して設定されたプリンタごとに固有Gのレンジが格納される。
【0029】
図4(d)において、G計算値取得データベース25には、Gのレンジごとに使用されるG値が格納される。
【0030】
図4(e)において、Bレンジ値取得データベース26には、B(Blue)0−255に対して設定されたプリンタごとに固有Bのレンジが格納される。
【0031】
図4(f)において、B計算値取得データベース27には、Bのレンジごとに使用されるB値が格納される。
【0032】
図5(a)及び図5(b)において、空白位置情報データベース28には、画像移動処理の際に使用される空白位置情報が格納される。空白位置情報は、各空白に割り当てられた空白IDと、位置No.とで構成される。位置No.は、図5(b)に示すように、空白で配置される可能性のある用紙上の領域に番号が割り当てられたものである。
【0033】
次に、図1のPC1で実行されるオブジェクト配置処理の流れについて説明する。本実施の形態では、オブジェクトの一例として画像を用いている。
【0034】
図6は、図1のPC1にて実行されるオブジェクト配置処理の流れを示すフローチャートである。本処理は、オブジェクト配置処理を実行するためのアプリケーションまたはプリンタドライバをユーザが起動することで、CPU12がROM等から該当するプログラムを読み出して実行する処理である。図7〜図11は、図6の処理の実行時にディスプレイに表示される各種UI(User Interface)の一例を示す図である。
【0035】
図6において、アプリケーションが起動すると、CPU12は、図7に示す印刷設定画面700または図8に示す詳細設定画面800をディスプレイ2に表示し、ユーザからの各種印刷設定を受け付ける(ステップS601)。そして、印刷設定画面700及び詳細設定画面800上で設定された印刷設定の情報と画像配置順序情報とをデータ記憶部14に格納する(ステップS601)。なお、画像配置順序情報は、どの画像がどの位置に配置されるかの情報である。
【0036】
ステップS602では、CPU12は、印刷設定を受け付けた後、「印刷プレビュー画面」ボタン705が押下されたか否かを判断する。CPU12は、「印刷プレビュー画面」ボタン705が押下されたと判断したときは、印刷設定の情報をデータ記憶部14から読み出す(ステップS603)。
【0037】
ステップS604では、CPU12は、読み出した印刷設定情報を解析し、印刷設定画面700上の「画像間の線」欄702において「画像間の境界が判断できない部分がある場合線を引く」が選択されているか否かを判断する。選択されていた場合は、ステップS605へ移行し、CPU12は画像境界処理を実行する。画像境界処理の詳細については後述する。
【0038】
ステップS606では、CPU12は、レイアウト作成部17により作成された印刷レイアウトを後述する印刷レイアウト画面としてディスプレイ2に表示する。ステップS607では、CPU12は、「印刷」ボタン903が押下されたと判断したときは、ステップS608にて印刷処理を実行する。
【0039】
図7は、図6の処理の実行時にディスプレイ2に表示される印刷設定画面の一例を示す図である。
【0040】
図7において、印刷設定画面700には、「画像と枚数を選択」欄701と、「画像間の線」欄702と、「画像間の線色」欄703と、「画像移動」欄704と、「印刷プレビュー画面」ボタン705と、「詳細設定」ボタン706と、「画像間の線幅変更」欄707とが配置されている。
【0041】
「画像と枚数を選択」欄701では、印刷する画像をユーザに選択させ、該画像の印刷枚数を設定させることができる。図7では、「画像0001」が3つ、「画像0007」が4つ、「画像0002」,「画像0003」,「画像0005」,「画像0009」,「画像0011」〜「画像0015」が各1つずつ、合計16の画像を印刷するように設定されている。画像上に表示されている「画像0001」等は、画像のファイル名であり、図示に限られたものではない。
【0042】
「画像間の線」欄702では、画像間に自動的に分割線を引かせるか否かをユーザに選択させることができる。「画像間の境界に判別できない部分がある場合線を引く」のラジオボタンが選択された場合、境界判定部15が隣り合う画像間の境界が判別できないと判定したときは画像間に分割線を引く。一方、「線を引かない」のラジオボタンが選択された場合、上記判定を行わず、分割線も引かない。
【0043】
「画像間の線色」欄703では、画像間に引かれる分割線の線色をユーザに設定させることができる。設定された線色は、境界判定部15が隣り合う画像間の境界が判別できないと判定したときに、分割線の線色として反映される。例えば、「画像の色の近似色」のラジオボタンが選択された場合、分割線の色を自動的に画像の近似色に決定する。一方、「色固定」のラジオボタンが選択されユーザにより好みの色が設定された場合、該設定された色を分割線の色として決定する。
【0044】
「画像移動」欄704では、「ON」のラジオボタンが選択された場合、境界判定部15により画像間の境界が判別できないと判定されたときに、画像の配置が変更される。これにより、画像間の境界が判別できるようにする。
【0045】
「画像間の線幅変更」欄707では、「ON」のラジオボタンが選択された場合、分割線の線色を決定する際に、線色の色味を変えないと分割線がわかりづらいと判断したときは、色味を変えずに線幅が変更される。
【0046】
「詳細設定」ボタン706が押下されると、さらに詳細に設定を行うことができる詳細設定画面800が表示される。画面上で設定された設定情報はすべてデータ記憶部14に格納される。
【0047】
「印刷プレビュー画面」ボタン705が押下されると、設定された印刷設定に応じて図9〜図11に示す印刷レイアウト画面のいずれか1つがディスプレイ2に表示される。
【0048】
図8は、図7の印刷設定画面700上で「詳細設定」ボタン706が押下されたときに表示され詳細設定画面の一例を示す図である。なお、本実施の形態では、詳細設定画面800が印刷設定画面700上にポップアップ画面等の子画面として表示させる形態について説明するが、これに限定されず、印刷設定画面700から切り替わりディスプレイ2に全画面表示されてもよい。
【0049】
図8において、詳細設定画面800には、「画像枚数の最大値」入力欄801,802と、「分割線」入力欄803と、「濃さ」設定スライダ804と、「境界の色の差」入力欄805と、「デフォルト」ボタン806と、「OK」ボタン807と、「キャンセル」ボタン808とが配置されている。
【0050】
「画像枚数の最大値」入力欄801,802では、用紙の縦方向に配置する画像の数と横方向に配置する画像の数の最大数をそれぞれユーザに設定させることができる。例えば、「縦」に「4」、「横」に「4」と入力された場合、4×4=16の画像をレイアウトすることができる。なお、サイズの異なる画像が複数混在するレイアウトの場合は、設定された各最大数に応じてレイアウト作成部17が自動的に印刷レイアウトを作成し、その印刷レイアウトの情報がデータ記憶部14に格納される。
【0051】
「分割線」入力欄803では、隣り合う画像間の境界部分が画像長に対して、どの程度判別不可と判断された場合に分割線を引くのかを割合(%)としてユーザに設定させることができる。画像長とは、隣り合う画像が上下に配置されている場合は画像間の境界部分における横方向の画像長であり、隣り合う画像が左右に配置されている場合は画像間の境界部分の縦方向の画像長である。
【0052】
「濃さ」設定スライダ804では、分割線の色を隣り合う画像の背景色より明るくするか暗くするかをユーザに設定させることができる。本実施の形態では、「明るい」または「暗い」のいずれか一方を選択することが可能であるが、複数の段階を設けてスライダをスライドさせることにより明暗を微調整させてもよい。
【0053】
「境界の色の差」入力欄805では、隣り合う画像間の境界部分の色の違いがどの程度異なれば分割線を引くのかを割合(%)としてユーザに設定させることができる。割合を低くすると少しの色の違いで分割線を引く。
【0054】
「デフォルト」ボタン806は、上述した設定をプリンタにとってより適切な値に戻すものである。この値はプリンタが独自で保持していてもよいし、ユーザが設定してもよい。
【0055】
「OK」ボタン807が押下されると、上述した設定をデータ記憶部14に格納し、印刷設定画面700へ戻る。一方、「キャンセル」ボタン808が押下されると、上記設定をキャンセルして印刷設定画面700へ戻る。なお、印刷設定画面700上に詳細設定800に表示された内容が組み込まれていてもよい。
【0056】
図9〜図11は、「印刷プレビュー画面」ボタン705が押下された後にディスプレイ2に表示される印刷レイアウト画面の一例を示す図である。
【0057】
印刷設定画面700及び詳細設定画面800にて印刷設定が行われたときは、その印刷設定の情報に基づいて、境界判定部15が画像間に分割線を引くか否かを判定する。そして、色作成部16が分割線の色を決定し、レイアウト作成部17がレイアウト設定を行う。その結果、図9〜図11に示す印刷レイアウト画面のいずれか1つが表示される。
【0058】
まず、印刷設定画面700上の「画像間の線」欄702において「線を引かない」ラジオボタンが選択された場合、例えば、図9に示す印刷レイアウト画面900が表示される。印刷レイアウト画面900上には、レイアウト結果901として画像間に分割線が引かれていない印刷レイアウトが表示される。
【0059】
一方、「画像間の線」欄702において、「画像間の境界が判断できない部分がある場合線を引く」のラジオボタンが選択された場合、画像移動が「OFF」に設定され且つ境界判定部15が分割線を引くと判定したときは、例えば、図10に示す印刷レイアウト画面1000が表示される。印刷レイアウト画面1000上の印刷レイアウトでは、画像間の必要な部分にのみ分割線が引かれているので、画像間の境界線(切断位置)を判別しやすい。印刷設定画面700上の「画像移動」欄704で「ON」が選択されていた場合は、画像移動が行われ、例えば、図11に示す印刷レイアウト画面1100が表示される。
【0060】
このように、印刷レイアウト画面では、レイアウト結果901,1001,1101が表示されることにより、どの部分に分割線が引かれるかを確認することが可能である。ここでユーザは、不必要と感じた分割線に関しては、当該分割線を選択して「削除」ボタン901を押下することで分割線を削除することが可能である。また、分割線が必要であると感じた境界部に関しては、その場所を選択して「追加」ボタン902を押下することで分割線を追加することができる。分割線の色は、画像情報データベース21から取得される。再度、印刷設定画面700に戻るには「戻る」ボタン904を押下する。一方、表示されている印刷レイアウトで印刷を行う場合は、「印刷」ボタン903を押下する。
【0061】
図12は、図6のステップS605における画像境界処理の詳細を示すフローチャートである。
【0062】
図12において、まず、ステップS1201では、CPU12は、データ記憶部14から分割数を取得する。分割数とは、「画像枚数の最大値」入力欄801,802で設定された最大数に基づく数値であり、入力欄にそれぞれ「4」が設定されたときは4×4=16が分割数となる。本実施の形態では、レイアウトする画像の画像サイズがすべて同一の場合について説明するが、サイズの異なる画像が複数混在する場合、データ記憶部14からサイズの異なる画像の配置に関するレイアウト情報が取得される。
【0063】
ステップS1202では、CPU12は、ステップS1201で取得した分割数から画像の位置を算出する。ここでは、上述した画像開始位置及び終了位置がそれぞれ算出される。また、各画像に対して画像位置No.が割り当てられる。
【0064】
ステップS1203では、CPU12は、ステップS1202で算出した各画像位置の情報を画像位置データベース20に格納する。ステップS1204では、CPU12は、境界判定部15により画像間の境界に分割線を引くかどうかを判定させる(境界判定処理)。境界判定処理の詳細については後述する。
【0065】
ステップS1205では、CPU12は、データ記憶部14から「画像移動」欄704の「ON」が選択されているか否かの情報を取得する。そして、「ON」が選択されていた場合には、CPU12は、レイアウト作成部17により画像移動処理を実行させ(ステップS1206)、画像移動処理は、境界判定処理で境界の判別がし難いと判断された場合、その画像同士が極力隣り合わないように画像を移動させる処理である。これにより、余計な分割線を引くことがなくなる。画像移動処理の詳細については後述する。そして、画像移動が行われた印刷レイアウトに対して再度境界判定処理が実行される(ステップS1207)。一方、ステップS1205において、「OFF」が選択されていた場合は、ステップS1208へ進む。
【0066】
ステップS1208では、CPU12は、分割線を引くと判定された部分にのみ分割線を引かせ、レイアウト作成部17により作成された印刷レイアウトをレイアウト記憶部18に格納する(ステップS1209)。
【0067】
図13は、図12のステップS124,127における境界判定処理の詳細を示すフローチャートである。ここで、画像位置データベース20に格納されている画像位置情報とデータ記憶部14に格納されている画像配置順序情報から、各画像の各辺についての情報が画像情報データベース21に格納される。なお、画像位置No.及び辺No.のみが格納され、他の情報は図13の処理中に画像情報データベースに格納される。画像配置順序情報は、どの画像がどの位置に配置されるかの情報である。
【0068】
図13において、ステップS1301では、境界判定部15は、画像情報データベース21から1つ目の画像を取得する。
【0069】
ステップS1302では、境界判定部15は、ステップS1301で取得した画像の一つめの辺を検索する。ステップS1303では、境界判定部15は、ステップS1302で検索された1つ目の辺の判定済みflagが0(未判定)の場合、ステップS1304へ進む。一方、1(判定済み)であった場合は、ステップS1306へ進む。境界判定部15は、画像情報データベース21内の判定済みflagを参照することにより判断する。
【0070】
ステップS1304では、境界判定部15は、検索された辺と隣り合う画像の辺を取得する。ここでは、画像位置データベース20の画像位置情報を参照し、ステップS1301で取得した画像と隣り合う画像を検索する。そして、取得した画像の辺と隣り合う画像の辺をそれぞれ画像情報データベース21から取得する。例えば、図3(b)において、画像1の辺3が検索された場合、画像1と隣り合う画像2の辺5が取得される。また、画像1の辺1,2のように、隣り合う画像の辺がないものは検索された画像の辺と接している用紙における線分を仮想的に「辺」(以下、「仮想辺」とする)とし(画像1の1a,2a,画像2の6a等)、当該仮想辺上における色情報が取得される。ここで取得した仮想辺の情報は、辺の情報と同様に図3(a)の画像情報データベース21に設定される。なお、仮想辺の色情報はデフォルトでは白に設定されているが、図示しない入力画面によってユーザからの入力も可能である。
【0071】
ステップS1305では、検索された辺と当該辺に隣り合う辺との間に引く分割線の色が色作成部16により決定される(色判定処理)。色判定処理の詳細については後述する。
【0072】
ステップS1306では、境界判定部15は、判定を行った2辺に対して、画像情報データベース21内の判定済みflagを1にして判定済みに変更する。ステップS1307では、境界判定部15は、画像情報データベース21の辺No.からステップS1301で取得した画像の辺のすべてについて、色判定を行ったか否かを判断する。まだ、判定済みでない辺が存在する場合はステップS1308で次の辺に移動して、ステップS1303以降の処理を行う。一方、すべての辺が判定済みである場合はステップS1309に進む。
【0073】
ステップS1309では、境界判定部15は、画像情報データベース21からまだ判定済みでない辺のある画像が存在するか否かを判定する。この結果、判定済みでない辺のある画像が存在する場合にはステップS1310で次の画像に移動し、ステップS1302以降の処理を行う。一方、すべての画像が判定済みである場合はリターンする。
【0074】
図14は、図13のステップS1305における色判定処理の詳細を示すフローチャートである。
【0075】
図14において、ステップS1401では、色作成部16は、色判定の対象となる2辺の先頭の点(二点)をそれぞれ検索する。2辺の先頭の点とは、例えば、図3(b)に示す符号301の点である。なお、判定を開始する点は辺の先頭でなくともよい。
【0076】
ステップS1402では、色作成部16は、二点の色が同色または近似色か否かを判定する。判定の方法は以下の2つの方法で判定される。
【0077】
1.R,G,Bレンジ値取得データベース22,24,26を利用して二点の色が近いかどうかを判定する。
【0078】
2.(1.で近いと判定された場合)下式(1),(2)で得た結果(Value1とValue2)を比較し、分割線の必要な点であると判定する。
【0079】
Value1=a×R1+b×G1+c×B1 (1)
Value2=a×R2+b×G2+c×B2 (2)
R1:1つ目の辺のRの値、G1:1つ目の辺のGの値、B1:1つ目のBの値、R2:2つ目の辺のRの値をR2、G2:2つ目の辺のGの値、B2:2つ目の辺のBの値、abcはいずれも変数
まず、1.について説明する。R,G,Bレンジ値取得データベース22,24,26にそれぞれR,G,Bの0から255までの値を適当な幅ごとにレンジで分けて格納しておく。また、R,G,B計算値取得データベース23,25,27には、各レンジごとに使用する計算値を格納しておく。ただし、プリンタごとに色の精度が異なるため、これも考慮しなければならない。データベースの値は、ユーザにより予め設定されても、プリンタドライバ等により保持されていてもかまわない。
【0080】
R1,G1,B1,R2,G2,B2の値からそれぞれレンジ値取得データベース22,24,26が検索され、各値に対応するレンジが取得される。取得したR1’,R2’のレンジ値、G1’,G2’のレンジ値、B1’,B2’のレンジ値をそれぞれRGBごとに比較する。RGBそれぞれのレンジが一つでもある一定以上離れているものがあれば、2点間は分割線を必要としないと判断する。1.で分割線が必要であると判断された場合は、2.の判定を行う。
【0081】
次に、2.について説明する。R1,G1,B1,R2,G2,B2を利用し、上式(1),(2)に基づいて算出されたValue1,Value2の値から分割線が必要か否かの判定を行う。変数abcは、輝度計算の値a=0.299,b=0.587,c=0.114が使用される。なお、プリンタの種類に応じてこれらの値が変更されてもかまわない。
【0082】
1.で取得した各レンジ値に基づいてR,G,B計算値取得データベース23,25,27を検索し、実際に計算に使用する値を取得する。取得した値をR1’,G1’,B1’,R2’,G2’,B2’とする。例えば、R1の値が244の場合は、データベース22,23より244はRレンジ値が18で、Rレンジ18の計算値が206なので、R1’には206が使用される。同様に、G1の値が103の場合は、データベース24,25より103はGレンジ値が7で、Gレンジ7の計算値が96なので、G1’には96が使用される。同様に、B1の値が11の場合は、データベース26,27より11はBレンジ値が2で、Bレンジ2の計算値が10なので、B1’には10が使用される。
【0083】
式(1),(2)に上記を考慮した式が下式となる。
【0084】
Value1’=a×R1’+b×G1’+c×B1’ (1)’
Value2’=a×R2’+b×G2’+c×B2’ (2)’
Value1’とValue2’の関係がある一定の値以下である場合、隣り合う点の色が同色または2点間の判断がつき難い色であると判定する(分割線を引く可能性のある点とする)。なお、境界の判定に関しては、3Dルックアップテーブルを使用し、2点間の距離から判断することも可能である。
【0085】
図14に戻り、ステップS1403では、色作成部16は、判定がすべて終了したか否かを判断する。なお、検索する点はすべての点でなくともかまわない。ステップS1403において、色作成部16は、終了していないと判断した場合は、次の検索点に移動して(ステップS1404)、ステップS1402以降の処理を行う。一方、色作成部16は、終了したと判断した場合はステップS1405へ進む。なお、検索点は、画像の1画素ごと設定されていても、任意に設定されて点であってもよい。設定については、PC1側で自動的に設定しても、ユーザに設定させてもよい。
【0086】
ステップS1405では、色作成部16は、ステップS1402において色が同色か近似色であると判定された二点の割合が一定の割合を超えたか否かを判断する。この結果、色作成部16は、一定の割合を超えたと判断したときは、分割線を引くことを決定して(ステップS1406)、ステップS1408へ進む。ステップS1406では、色作成部16は、詳細設定画面800上の「境界の色の差」入力欄805に入力され、データ記憶部14に格納された割合をデータ記憶部14から取得する。
【0087】
ステップS1405において、色作成部16は、超えていないと判断した場合は、ステップS1408に進む。ステップS1407では、色作成部16は、画像情報データベース21における「分割線flag」に、判定した2辺に対して1(分割線を引く)をたて、それぞれ辺のレンジ値を「レンジ(RGB)」に設定し、Value1、Value2の値を「value」に設定する。
【0088】
ステップS1408では、色作成部16は、線決定処理を行い、分割線の仕様即ち線色及び線幅を決定する。この線決定処理の詳細については詳述する。ステップS1409では、色作成部16は、ステップS1408の線決定処理で決定した分割線の線色及び線幅を画像情報データベース21に格納する。また、印刷レイアウト画面上で「追加」ボタン902が押下された場合、画像情報データベース21における線色の値を利用し、線色を引くことができる。また、図12のステップS1206で画像移動処理を行う際には、画像情報データベース21における辺値の値を使用し、隣り合う画像の境界が判別しづらくならないように並び替えることができる。
【0089】
図15は、図12のステップS1206における画像移動処理の詳細を示すフローチャートである。
【0090】
図15において、ステップS1501では、レイアウト作成部17は、1つ目の画像を任意の位置に配置する。1つ目の画像は、画像情報データベースに基づいて選択される。
【0091】
次に、ステップS1502では、レイアウト作成部17は、まだ配置が決定していない画像が存在するか否かを判定する。この結果、存在しないと判定した場合はリターンする一方、存在する場合は、ステップS1503へ進み、次の画像を取得する。
【0092】
次に、ステップS1504では、レイアウト作成部17は、空白位置情報データベース28を参照し、空白データが存在するか否かを判定する。この結果、存在しないと判定した場合は、ステップS1509に進む。一方、レイアウト作成部17は、存在すると判定した場合は、次の空白を取得する(ステップS1505)。
【0093】
次に、ステップS1506では、レイアウト作成部17は、ステップS1505で取得した空白に画像を配置した場合、既に配置されている画像と隣り合う辺の色が同色または近似色か否かを判断する。ここでは上述した色判定処理と同じ処理が行われる。
【0094】
ステップS1506において、レイアウト作成部17は、同色又は近似色でないと判断した場合は、ステップS1507へ進む。一方、同色または近似色であると判断した場合はステップS1504に戻り、他の空白で判定を行う。
【0095】
ステップS1507では、レイアウト作成部17は画像を配置する。そして、ステップS1508では、レイアウト作成部17は空白IDを削除し、ステップS1502に戻る。ステップS1509では、レイアウト作成部17は、次の画像配置位置を取得する。次に、ステップS1510では、新しい配置位置が画像配置可能最大数(例えば、縦に4枚横に4枚配置できるものなら16枚)を超えていないかを判断し、超えていない場合はステップS1511へ進み、超える場合はステップS1514へ進む。
【0096】
ステップS1511では、レイアウト作成部17は、既に配置されている画像と隣り合う辺の色が同色または近似色か否かを判断する。ここでは上述した色判定処理と同じ処理が行われる。ステップS1511において、レイアウト作成部17は、同色または近似色でないと判断した場合は、ステップS1513へ進む。一方、同色または近似色であると判断した場合は、レイアウト作成部17は、現在の位置を空白として保持すると決定し、空白位置情報データベース28に位置情報を設定して(ステップS1512)、ステップS1509に戻る。
【0097】
ステップS1513では、レイアウト作成部17は、新しい配置位置に画像を配置して、ステップS152に戻る。ステップS1514では、レイアウト作成部17は、空白に画像を配置する。そして、ステップS1512で空白IDを削除して、ステップS1502に戻る。図9に示した印刷レイアウトから画像移動した場合の印刷レイアウトを図11に示す。
【0098】
このように、印刷設定画面700上でユーザが「画像移動」ONを選択することで、隣り合う画像の背景色が同じかまたは境界を判別できないような近似色とならないように画像の移動を行う。これにより、分割線が過度に引かれることが無くなる。なお、上記処理に代えて、すべての画像の組み合わせパターンを検証し、境界が判別できないと判断される回数が一番少ないパターンに移動する方法であってもよい。
【0099】
図16及び図17は、図14のステップS1408における線決定処理の詳細を示すフローチャートである。
【0100】
分割線の線色は、図4(a)〜図4(f)に示すデータベース22〜27に基づいて決定される。分割線の線色は、背景色に近い色で且つ背景色と区別が付く色に決定する必要があることから、決定したRGBの各レンジの値よりもある程度高いまたは低いレンジ値の計算値を使用して、設定される。
【0101】
図16において、ステップ1601では、色作成部16は、データ記憶部14からライン(分割線)の濃さの設定情報を取得する。ラインの濃さの設定情報は、詳細設定画面800上で「濃さ」のスライダが「暗い」に設定されたか、「明るい」に設定されたかを示すものである。
【0102】
次に、ステップ1602では、色作成部16は、ステップ1601で取得した設定情報がラインの濃さを暗くする設定(「暗い」)であるか否かを判定する。この結果、ラインの濃さを暗くする設定であるときは、ステップS1603へ進む。一方、ラインの濃さを明るくする設定であるときは、図17のステップS1609へ進む。
【0103】
ステップS1603では、色作成部16は、R1,R2,B1,B2,G1,G2のどのレンジ値を使用するかを決定する。ここでは、R1,R2でレンジ値が小さい方、B1,B2でレンジ値が小さい方、G1,G2でレンジ値が小さい方が使用される。
【0104】
ステップS1604では、色作成部16は、RGBのすべてのレンジ値を下げられるか否かの判断を行い、RGBのすべてのレンジ値を下げられると判断した場合、RGBのレンジ値をすべて下げた値でデータベース23,25,27を検索し、それぞれに対応する計算値で線色を決定して(ステップS1605)、リターンする。
【0105】
一方、ステップS1604において、色作成部16は、RGBのすべてのレンジ値を下げることができないと判断した場合、下げることのできないレンジが一つであるか否かを判定する(ステップS1606)。この結果、一つである場合は、色作成部16は、RGBのレンジ値を下げられるものは下げ、下げられないものは上げた値でデータベース23,25,27を検索し、それぞれに対応する計算値から線色を決定して(ステップS1607)、リターンする。
【0106】
一方、ステップS1606において、一つでない場合は、色作成部16は、「レンジを上げる」設定に変更して(ステップS1608)、図17のステップS1610へ進む。
【0107】
図17において、ステップS1604では、色作成部16は、R1,R2,B1,B2,G1,G2のどのレンジ値を使用するかを決定する。ここでは、R1,R2でレンジ値が大きい方、B1,B2でレンジ値が大きい方、G1,G2でレンジ値が大きい方が使用される。
【0108】
ステップS1610では、色作成部16は、RGBのすべてのレンジ値を上げることができるか否かの判断を行い、RGBのすべてのレンジ値を上げられると判断した場合、RGBのレンジ値をすべて上げた値でデータベース23,25,27を検索し、それぞれに対応する計算値で線色を決定して(ステップS1611)、リターンする。
【0109】
一方、ステップS1610において、色作成部16は、RGBのすべてのレンジ値を上げることができないと判断した場合、上げることができないレンジが一つであるか否かを判定する(ステップS1612)。この結果、一つである場合は、色作成部16は、RGBのレンジ値を上げられるものは上げ、上げられないものは下げた値でデータベース23,25,27を検索し、それぞれに対応する計算値から線色を決定して(ステップS1613)、リターンする。
【0110】
一方、ステップS1612において、一つでない場合は、色作成部16は「レンジを下げる」設定に変更して(ステップS1614)、図16のステップS1604へ進む。
【0111】
なお、分割線の線色は、ユーザの好みに合わせて明暗の差がつけられるようにしてもよい。この場合、詳細設定画面800上の濃さ設定スライダ804で明暗を微調整できるようにする。その設定値をレンジ値を変更する際に考慮する(例えば、「明るい」の度合いが大きいほどレンジ値を下げる割合を大きくする)ことにより、分割線の線色にさまざまな色を設定することができる。
【0112】
上記実施の形態によれば、隣り合う画像間にユーザが意図しない線が印刷されたり、空白が挿入されることなく、画像間の境界の判別をユーザに判別し易くすることができる。これにより、ユーザが画像を1枚ずつ正確に切り分けることができ、切り分けられた画像の縁に線が残ることを防止することができる。
【0113】
また、印刷設定画面700上で「画像間の境界に判別できない部分がある場合線を引く」をユーザが選択した場合、隣り合う画像間の境界領域の色が画像間で同色かまたは境界を判別できない近似色であるときは、その境界に対してのみ適切な色の線を引く。そのため、ユーザが画像を切り分ける際に境界の判別が困難であったり、画像に余計な線がかぶってしまったり、切断回数が必要以上に多くなってしまうという課題を解決することができる。また、画像間に余計な空間を挿入する必要がないので、画像サイズや数に制限を受けることが無くなる。
【0114】
上記実施の形態では、ユーザが線色の判定を行うのではなく、PC側で線色を自動的に判定していたが、ユーザが線色を決めるようにしてもよい。この場合、分割線が判別できるか否かの基準や線色の濃さをユーザが変更可能な構成にすると、ユーザの好みに合わせることができる。
【0115】
[第2の実施形態]
本発明の第2の実施の形態に係るオブジェクト配置装置を含むシステムは、図1で説明したシステムと同じであり、上記第1の実施形態と同様の部分については、同一の符号を用いてその説明を省略する。以下に、上記第1の実施の形態と異なる点のみを説明する。
【0116】
上記第1の実施形態では、図16及び図17に示したように、分割線の線色のみを決定する線決定処理について説明したが、線決定処理にて分割線の線色及び線幅を決定するようにしてもよい。
【0117】
図18及び図19は、本発明の第2の実施形態に係る画像境界作成システムにおける線決定処理を示すフローチャートである。
【0118】
境界判定部15により線色の色味を変えないと分割線がわかりづらいと判断された場合、印刷設定画面700上の「画像間の線幅変更」欄707でONが選択されているときは分割線の線幅を太くする。これにより、分割線は、色味が極力変わらず、背景色に近い色で境界線が判別可能なものとなる。
【0119】
図18において、ステップS1701では、色作成部16は、データ記憶部14からライン(分割線)の濃さの設定情報を取得する。ラインの濃さの設定情報は、詳細設定画面800上で「濃さ」のスライダが「暗い」に設定されたか、「明るい」に設定されたかを示すものである。
【0120】
次に、ステップS1702では、色作成部16は、ステップ1701で取得した設定情報がラインの濃さを暗くする設定(「暗い」)であるか否かを判定する。この結果、ラインの濃さを暗くする設定であるときは、ステップS1703へ進む。一方、ラインの濃さを明るくする設定であるときは、図19のステップS1713へ進む。
【0121】
ステップS1703では、色作成部16は、R1,R2,B1,B2,G1,G2のどのレンジ値を使用するかを決定する。ここでは、R1,R2でレンジ値が小さい方、B1,B2でレンジ値が小さい方、G1,G2でレンジ値が小さい方が使用される。
【0122】
次に、ステップS1704では、色作成部16は、RGBのすべてのレンジ値を下げられるか否かの判断を行い、RGBのすべてのレンジ値を下げられると判断した場合、RGBのレンジ値をすべて下げた値でデータベース23,25,27を検索し、それぞれに対応する計算値で線色を決定して(ステップS1705)、リターンする。
【0123】
一方、ステップS1704において、色作成部16は、RGBのすべてのレンジ値を下げることができないと判断した場合、下げることができないレンジが一つであるか否かを判定する(ステップS1706)。この結果、一つである場合は、色作成部16は、データ記憶部14から画像間の線幅変更設定値を取得して(ステップS1707)、ステップS1708へ進む。一方、一つでない場合は、色作成部16は「レンジを上げる」設定に変更して(ステップS1711)、図19のステップS1713へ進む。
【0124】
ステップS1708では、色作成部16は、画像間の線幅変更設定値がONであるか否かを判別し、画像間の線幅変更設定値がONであった場合、線幅を「太い」に決定して(ステップS1709)、ステップS1710へ進む。ステップS1710では、色作成部16は、RGBのレンジ値を下げられるもののみ下げた値でデータベース23,25,27を検索し、それぞれに対応する計算値から線色を決定して、リターンする。
【0125】
一方、ステップS1708において、画像間の線幅変更設定値がOFFであった場合は、色作成部16は、RGBのレンジ値を下げられるものは下げ、下げられないものは上げた値でデータベース23,25,27を検索し、それぞれに対応する計算値から線色を決定して(ステップS1712)、リターンする。
【0126】
図19において、ステップS1713では、色作成部16は、R1,R2,B1,B2,G1,G2のどのレンジ値を使用するかを決定する。ここでは、R1,R2でレンジ値が大きい方、B1,B2でレンジ値が大きい方、G1,G2でレンジ値が大きい方が使用される。
【0127】
次に、ステップS1714では、色作成部16は、RGBのすべてのレンジ値を上げることができるか否かの判断を行い、RGBのすべてのレンジ値を上げられると判断した場合、RGBのレンジ値をすべて上げた値でデータベース23,25,27を検索し、それぞれに対応する計算値で線色を決定して(ステップS1715)、リターンする。
【0128】
一方、ステップS1714において、色作成部16は、RGBのすべてのレンジ値が上げることができないと判断した場合、上げることができないレンジが一つであるか否かを判定する(ステップS1716)。この結果、一つである場合は、色作成部16は、データ記憶部14から画像間の線幅変更設定値を取得して(ステップS1717)、ステップS1718へ進む。一方、一つでない場合は、色作成部16は「レンジを下げる」設定に変更して(ステップS1721)、ステップS1704へ進む。
【0129】
ステップS1718では、色作成部16は、画像間の線幅変更設定値がONであるか否かを判別し、画像間の線幅変更設定値がONであった場合、線幅を「太い」に決定して(ステップS1719)、ステップS1720へ進む。ステップS1720では、色作成部16は、RGBのレンジ値を上げられるもののみ上げた値でデータベース23,25,27を検索し、それぞれに対応する計算値から線色を決定して、リターンする。
【0130】
一方、ステップS1719において、画像間の線幅変更設定がOFFであった場合は、色作成部16は、RGBのレンジ値を上げられるものは上げ、上げられないものは下げた値でデータベース23,25,27を検索し、それぞれに対応する計算値から線色を決定して(ステップS1722)、リターンする。
【0131】
上記第2の実施の形態によれば、上記第1の実施の形態による効果を更に奏することができる。
【0132】
上記第1及び第2の実施の形態では、オブジェクトの一例として画像(画像データ)を想定して説明したが、これに限定されるものではなく、文書(文書データ)や文書と画像の合成物であってもよい。
【0133】
また、本発明の目的は、以下の処理を実行することによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。
【0134】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0135】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【0136】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0137】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行う場合である。
【0138】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOSなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現する場合も含まれる。この場合、上記プログラムは、該プログラムを記憶した記憶媒体から直接、またはインターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続された不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【0139】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、OS(オペレーティングシステム)に供給されるスクリプトデータ等の形態から成ってもよい。
【図面の簡単な説明】
【0140】
【図1】本発明の第1の実施形態に係るオブジェクト配置装置の構成例を示すブロック図である。
【図2】図1のPC内の画像位置データベースの一例を示す図である。
【図3】(a)は画像情報データベースの一例を示す図であり、(b)は画像位置データベース及び画像情報データベースに格納された情報に基づいて作成された印刷レイアウトの一例を示す図である。
【図4】(a)〜(f)は境界判別処理に利用される色情報に関するデータベースの一例を示す図である。
【図5】(a)は空白位置情報データベースの一例を示す図であり、(b)は画像の配置位置を示す図である。
【図6】図1のPCにて実行されるオブジェクト配置処理の流れを示すフローチャートである。
【図7】図6の処理の実行時にディスプレイに表示される印刷設定画面の一例を示す図である。
【図8】図7の印刷設定画面上で「詳細設定」ボタンが押下されたときに表示され詳細設定画面の一例を示す図である。
【図9】通常の分割線を引かない場合の印刷レイアウト画面の一例を示す図である。
【図10】分割線を引いた場合の印刷レイアウト画面の一例を示す図である。
【図11】画像移動処理を実行した場合の印刷レイアウト画面の一例を示す図である。
【図12】図6のステップS605における画像境界判定処理の詳細を示すフローチャートである。
【図13】図12のステップS1204,S1207における境界判定処理の詳細を示すフローチャートである。
【図14】図13のステップS1305における色判定処理の詳細を示すフローチャートである。
【図15】図12のステップS1206における画像移動処理の詳細を示すフローチャートである。
【図16】図14のステップS1408における線決定処理の詳細を示すフローチャート(その1)である。
【図17】図14のステップS1408における線決定処理の詳細を示すフローチャート(その2)である。
【図18】本発明の第2の実施形態に係るオブジェクト配置装置にて実行される線決定処理の詳細を示すフローチャート(その1)である。
【図19】本発明の第2の実施形態に係るオブジェクト配置装置にて実行される線決定処理の詳細を示すフローチャート(その2)である。
【図20】(a)は複数の画像間に従来の切断用ガイド線が印刷された印刷結果の一例を示す図、(b)は画像間に空白を挿入して印刷された印刷結果の一例を示す図、(c)は画像間に画像の切断位置を示すカットマークを加えて印刷された印刷結果の一例を示す図である。
【符号の説明】
【0141】
1 パーソナルコンピュータ(PC)
2 ディスプレイ
3 プリンタ
12 CPU
14 データ記憶部
15 境界判定部
16 色作成部
17 レイアウト作成部
18 レイアウト記憶部
20 画像位置データベース
21 画像情報データベース
28 空白位置情報データベース
【技術分野】
【0001】
本発明は、オブジェクト配置装置及び方法、プログラム、並びに記憶媒体に関し、特にオブジェクトとなる画像を複数隣接して配置する際に、各画像間の境界を容易に判別可能にするオブジェクト配置装置及び方法、プログラム、並びに記憶媒体に関する。
【背景技術】
【0002】
従来、その場で撮影した複数の画像を1枚のシール紙に印刷する写真シール作成装置が提供されている。このような写真シール作成装置では、ユーザがシール紙に印刷された複数の画像を1枚ずつ正確に切り取れるように、画像間に切り取り線(分断線)が印刷される。例えば、図20(a)に示すように、すべての画像の周りに切断用ガイド線2001が印刷された場合、ユーザは切断用ガイド線2001に沿ってカットすることにより容易に画像を切り分けることができる。
【0003】
また、ユーザが用紙上に隣接して印刷された複数の画像を1枚ずつ正確に切り取らせるために、図20(b)に示すように、画像間に空白を挿入してもよい。これも、空白が画像間の境界を示すため、ユーザが各画像を容易に切断することができる。
【0004】
また、図20(c)に示すように、画像の切断位置を示すカットマークを画像に加えて印刷した場合は、印刷された切断用ガイド線が切り分けられた画像の縁に残ることなく、画像部分のみを切断することができる(例えば、特許文献1参照)。
【特許文献1】特開平05−116429号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、上記従来技術には以下の問題点がある。
【0006】
1.すべての画像の周りに切断用ガイド線を印刷した場合、切断用ガイド線2001が画像間の境界領域の色(背景色)を考慮した線色でないことから、ユーザが意図していない線が画像の縁に残ることになる。
【0007】
2.画像間に空白を挿入する場合、切断用ガイド線が画像の縁に残ることは無くなるが、空白を挿入するための空間が必要となり、用紙上に配置する画像のサイズや数が制限されるおそれがある。また、画像間に挿入された空白部分を除去するために、画像を切り分ける際に切断回数が増えてしまい、手間がかかる。
【0008】
また、上記特許文献1では、画像の周囲に切断用ガイド線がないため、画像部分を切断する際に切断位置がずれてしまうおそれがある。また、カットマークとカットマークとの間にユーザがペンで直接線を引くこともできるが、ペンで引いた線が画像の縁に残るおそれがあり、さらに線と引く手間もかかる。また、カットマークを印刷するための空間が用紙上に必要となり、画像のサイズや数が制限されるおそれがある。
【0009】
本発明は、上記問題に鑑みて成されたものであり、隣り合うオブジェクト間にユーザが意図しない線や空白を挿入することなく、該オブジェクト間の境界をユーザに判別し易くすることができるオブジェクト配置装置及び方法、プログラム、並びに記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【0010】
上記目的を達成するために、請求項1記載のオブジェクト配置装置は、画像または文書を含むオブジェクトを複数隣接して配置するオブジェクト配置手段を備えるオブジェクト配置装置において、前記オブジェクト配置手段により隣接して配置されたオブジェクト間の境界が判別可能か否かを判断する判断手段と、前記判断手段により前記境界が判別可能でないと判断された場合は、前記境界に線を引く制御を行う境界線描画制御手段とを備えることを特徴とする。
【0011】
上記目的を達成するために、請求項6記載のオブジェクト配置方法は、画像または文書を含むオブジェクトを複数隣接して配置するオブジェクト配置工程と、前記オブジェクト配置工程にて隣接して配置されたオブジェクト間の境界がユーザに判別可能か否かを判断する判断工程と、前記判断工程にて前記境界が判別可能でないと判断された場合は、前記境界に線を引く制御を行う境界線描画制御工程とを備えることを特徴とする。
【発明の効果】
【0012】
本発明によれば、隣り合うオブジェクト間にユーザが意図しない線や空白を挿入することなく、該オブジェクト間の境界をユーザに判別し易くすることができる。
【発明を実施するための最良の形態】
【0013】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【0014】
[第1の実施形態]
図1は、本発明の第1の実施形態に係るオブジェクト配置装置の構成例を示すブロック図である。
【0015】
図1において、オブジェクト配置装置は、例えば、パーソナルコンピュータ(以下、単に「PC」という。)1から成る。PC1は、CRT(Cathode Ray Tube)や液晶パネル等から成るディスプレイ2と、PC1等から印刷コマンドを受信して印刷を実行するプリンタ3に接続されている。なお、本実施の形態では、PC1は、ディスプレイ2及びプリンタ3にローカルに接続されているが、ネットワーク等を介して接続されていてもよい。
【0016】
PC1は、該PC内の各部の制御を行うCPU12と、CPU12と各部を接続するインターフェース部(I/F)13と、データ記憶部14と、境界判定部15と、色作成部16と、レイアウト作成部17と、レイアウト記憶部18とを備える。
【0017】
I/F13は、CPU12と、上記装置内の各部とを接続するためのインターフェースである。データ記憶部14は、RAMやハードディスク等の記憶装置で構成され、ユーザにより設定された印刷設定の情報を格納する。
【0018】
境界判定部15は、画像位置データベース20に格納された画像位置の情報から隣り合う画像の色、画像と用紙の色をそれぞれ比較し、画像間または画像と用紙との間に線(分割線)を引くか否かの判断を行う。分割線は、画像間の切断位置を示す線である。色作成部16は、分割線の線色や線幅を決定する。
【0019】
レイアウト作成部17は、画像間に分割線を引いたり、画像を移動して配置変更して画像のレイアウトを作成する。レイアウト記憶部18は、作成されたレイアウトの情報を記憶する。レイアウト作成部17により作成された画像のレイアウトは、レイアウト記憶部18にレイアウト情報として記憶され、後述する印刷レイアウト画面としてディスプレイ1に表示される。ユーザは、印刷レイアウト画面を確認した後に印刷指示を行うと、プリンタ2により印刷が実行される。なお、境界判定部15、色作成部16、レイアウト作成部17、及びレイアウト記憶部18は、ハードウェアで構成されていてもソフトウェアで構成されていてもよい。また、PC1は、通常のPCと同様に、RAMやROM、ハードディスク等の記憶装置を備えると共に、マウスやキーボード等の入力装置(不図示)を備える。
【0020】
また、PC1は、画像位置データベース20と、画像情報データベース21と、Rレンジ値取得データベース22と、R計算値取得データベース23と、Gレンジ値取得データベース24と、G計算値取得データベース25と、Bレンジ値取得データベース26と、B計算値取得データベース27と、空白位置情報データベース28とを備える。これらのデータベースは、PC1内のハードディスク等の記憶装置に格納されるが、PCに接続された外部記憶装置に格納されていてもよい。
【0021】
図2、図3(a)及び図4(a)〜図4(f)、図5(a)及び図5(b)は、PC1が備える各種データベースの内容を示す図である。
【0022】
図2において、画像位置データベース20には、用紙上に配置される画像の位置情報が格納される。画像位置情報は、画像位置No.と、画像開始位置X,Y(mm)と、画像終了位置X,Y(mm)とで構成される。これらの画像開始位置や画像終了位置の単位はmmであっても、ドット単位であってもよい。
【0023】
画像位置No.は、用紙上の各画像に対して任意に割り当てられた番号である。本実施の形態では、図3(b)に示すように、4×4=16の画像に対して1〜16の画像位置No.が割り当てられている。なお、この画像の数や割り当て順は、図示例に限定されるものではない。
【0024】
画像開始位置X,Y及び画像終了位置X,Yは、用紙上の座標位置である。本実施の形態では、図3(b)に示すように、用紙上端または左端からX軸またはY軸方向へ長さがそれぞれX,Y(mm)で表されている。また、画像の形状が一般的に四角形であることから、画像開始位置は四角形の左上の頂点を示す。一方、画像終了位置は、四角形の右下の頂点を示す。なお、画像の形状は四角形に限定されず、円や楕円、三角形、その他の多角形でもよい。円の場合は中心位置と半径、楕円の場合は中心位置と短半径、長半径、三角形の場合は3つの頂点などが画像位置データベース20に格納されている。
【0025】
図3(a)において、画像情報データベース21には、画像の辺ごとの分割線等の画像情報が格納される。画像情報は、画像位置No.と、画像No.と、辺No.と、分割線フラグ(flag)と、辺値と、分割線の線色と、分割線の線幅と、判定済みフラグ(flag)とで構成される。例えば、4×4の用紙レイアウトであれば、画像及びその画像に対する4辺にそれぞれに番号が割り当てられ、画像情報データベース21に格納される。
【0026】
図4(a)において、Rレンジ値取得データベース22には、R(Red)0−255に対して設定されたプリンタごとに固有Rのレンジが格納される。ここでレンジとは、ユーザの目視に基づく色味を数値化したものである。RレンジはR成分、GレンジはG成分、BレンジはB成分について数値化されている。この数値は、画像を出力するプリンタの仕様に応じて変更される。
【0027】
図4(b)において、R計算値取得データベース23には、Rのレンジごとに使用されるR値が格納される。
【0028】
図4(c)において、Gレンジ値取得データベース24には、G(Green)0−255に対して設定されたプリンタごとに固有Gのレンジが格納される。
【0029】
図4(d)において、G計算値取得データベース25には、Gのレンジごとに使用されるG値が格納される。
【0030】
図4(e)において、Bレンジ値取得データベース26には、B(Blue)0−255に対して設定されたプリンタごとに固有Bのレンジが格納される。
【0031】
図4(f)において、B計算値取得データベース27には、Bのレンジごとに使用されるB値が格納される。
【0032】
図5(a)及び図5(b)において、空白位置情報データベース28には、画像移動処理の際に使用される空白位置情報が格納される。空白位置情報は、各空白に割り当てられた空白IDと、位置No.とで構成される。位置No.は、図5(b)に示すように、空白で配置される可能性のある用紙上の領域に番号が割り当てられたものである。
【0033】
次に、図1のPC1で実行されるオブジェクト配置処理の流れについて説明する。本実施の形態では、オブジェクトの一例として画像を用いている。
【0034】
図6は、図1のPC1にて実行されるオブジェクト配置処理の流れを示すフローチャートである。本処理は、オブジェクト配置処理を実行するためのアプリケーションまたはプリンタドライバをユーザが起動することで、CPU12がROM等から該当するプログラムを読み出して実行する処理である。図7〜図11は、図6の処理の実行時にディスプレイに表示される各種UI(User Interface)の一例を示す図である。
【0035】
図6において、アプリケーションが起動すると、CPU12は、図7に示す印刷設定画面700または図8に示す詳細設定画面800をディスプレイ2に表示し、ユーザからの各種印刷設定を受け付ける(ステップS601)。そして、印刷設定画面700及び詳細設定画面800上で設定された印刷設定の情報と画像配置順序情報とをデータ記憶部14に格納する(ステップS601)。なお、画像配置順序情報は、どの画像がどの位置に配置されるかの情報である。
【0036】
ステップS602では、CPU12は、印刷設定を受け付けた後、「印刷プレビュー画面」ボタン705が押下されたか否かを判断する。CPU12は、「印刷プレビュー画面」ボタン705が押下されたと判断したときは、印刷設定の情報をデータ記憶部14から読み出す(ステップS603)。
【0037】
ステップS604では、CPU12は、読み出した印刷設定情報を解析し、印刷設定画面700上の「画像間の線」欄702において「画像間の境界が判断できない部分がある場合線を引く」が選択されているか否かを判断する。選択されていた場合は、ステップS605へ移行し、CPU12は画像境界処理を実行する。画像境界処理の詳細については後述する。
【0038】
ステップS606では、CPU12は、レイアウト作成部17により作成された印刷レイアウトを後述する印刷レイアウト画面としてディスプレイ2に表示する。ステップS607では、CPU12は、「印刷」ボタン903が押下されたと判断したときは、ステップS608にて印刷処理を実行する。
【0039】
図7は、図6の処理の実行時にディスプレイ2に表示される印刷設定画面の一例を示す図である。
【0040】
図7において、印刷設定画面700には、「画像と枚数を選択」欄701と、「画像間の線」欄702と、「画像間の線色」欄703と、「画像移動」欄704と、「印刷プレビュー画面」ボタン705と、「詳細設定」ボタン706と、「画像間の線幅変更」欄707とが配置されている。
【0041】
「画像と枚数を選択」欄701では、印刷する画像をユーザに選択させ、該画像の印刷枚数を設定させることができる。図7では、「画像0001」が3つ、「画像0007」が4つ、「画像0002」,「画像0003」,「画像0005」,「画像0009」,「画像0011」〜「画像0015」が各1つずつ、合計16の画像を印刷するように設定されている。画像上に表示されている「画像0001」等は、画像のファイル名であり、図示に限られたものではない。
【0042】
「画像間の線」欄702では、画像間に自動的に分割線を引かせるか否かをユーザに選択させることができる。「画像間の境界に判別できない部分がある場合線を引く」のラジオボタンが選択された場合、境界判定部15が隣り合う画像間の境界が判別できないと判定したときは画像間に分割線を引く。一方、「線を引かない」のラジオボタンが選択された場合、上記判定を行わず、分割線も引かない。
【0043】
「画像間の線色」欄703では、画像間に引かれる分割線の線色をユーザに設定させることができる。設定された線色は、境界判定部15が隣り合う画像間の境界が判別できないと判定したときに、分割線の線色として反映される。例えば、「画像の色の近似色」のラジオボタンが選択された場合、分割線の色を自動的に画像の近似色に決定する。一方、「色固定」のラジオボタンが選択されユーザにより好みの色が設定された場合、該設定された色を分割線の色として決定する。
【0044】
「画像移動」欄704では、「ON」のラジオボタンが選択された場合、境界判定部15により画像間の境界が判別できないと判定されたときに、画像の配置が変更される。これにより、画像間の境界が判別できるようにする。
【0045】
「画像間の線幅変更」欄707では、「ON」のラジオボタンが選択された場合、分割線の線色を決定する際に、線色の色味を変えないと分割線がわかりづらいと判断したときは、色味を変えずに線幅が変更される。
【0046】
「詳細設定」ボタン706が押下されると、さらに詳細に設定を行うことができる詳細設定画面800が表示される。画面上で設定された設定情報はすべてデータ記憶部14に格納される。
【0047】
「印刷プレビュー画面」ボタン705が押下されると、設定された印刷設定に応じて図9〜図11に示す印刷レイアウト画面のいずれか1つがディスプレイ2に表示される。
【0048】
図8は、図7の印刷設定画面700上で「詳細設定」ボタン706が押下されたときに表示され詳細設定画面の一例を示す図である。なお、本実施の形態では、詳細設定画面800が印刷設定画面700上にポップアップ画面等の子画面として表示させる形態について説明するが、これに限定されず、印刷設定画面700から切り替わりディスプレイ2に全画面表示されてもよい。
【0049】
図8において、詳細設定画面800には、「画像枚数の最大値」入力欄801,802と、「分割線」入力欄803と、「濃さ」設定スライダ804と、「境界の色の差」入力欄805と、「デフォルト」ボタン806と、「OK」ボタン807と、「キャンセル」ボタン808とが配置されている。
【0050】
「画像枚数の最大値」入力欄801,802では、用紙の縦方向に配置する画像の数と横方向に配置する画像の数の最大数をそれぞれユーザに設定させることができる。例えば、「縦」に「4」、「横」に「4」と入力された場合、4×4=16の画像をレイアウトすることができる。なお、サイズの異なる画像が複数混在するレイアウトの場合は、設定された各最大数に応じてレイアウト作成部17が自動的に印刷レイアウトを作成し、その印刷レイアウトの情報がデータ記憶部14に格納される。
【0051】
「分割線」入力欄803では、隣り合う画像間の境界部分が画像長に対して、どの程度判別不可と判断された場合に分割線を引くのかを割合(%)としてユーザに設定させることができる。画像長とは、隣り合う画像が上下に配置されている場合は画像間の境界部分における横方向の画像長であり、隣り合う画像が左右に配置されている場合は画像間の境界部分の縦方向の画像長である。
【0052】
「濃さ」設定スライダ804では、分割線の色を隣り合う画像の背景色より明るくするか暗くするかをユーザに設定させることができる。本実施の形態では、「明るい」または「暗い」のいずれか一方を選択することが可能であるが、複数の段階を設けてスライダをスライドさせることにより明暗を微調整させてもよい。
【0053】
「境界の色の差」入力欄805では、隣り合う画像間の境界部分の色の違いがどの程度異なれば分割線を引くのかを割合(%)としてユーザに設定させることができる。割合を低くすると少しの色の違いで分割線を引く。
【0054】
「デフォルト」ボタン806は、上述した設定をプリンタにとってより適切な値に戻すものである。この値はプリンタが独自で保持していてもよいし、ユーザが設定してもよい。
【0055】
「OK」ボタン807が押下されると、上述した設定をデータ記憶部14に格納し、印刷設定画面700へ戻る。一方、「キャンセル」ボタン808が押下されると、上記設定をキャンセルして印刷設定画面700へ戻る。なお、印刷設定画面700上に詳細設定800に表示された内容が組み込まれていてもよい。
【0056】
図9〜図11は、「印刷プレビュー画面」ボタン705が押下された後にディスプレイ2に表示される印刷レイアウト画面の一例を示す図である。
【0057】
印刷設定画面700及び詳細設定画面800にて印刷設定が行われたときは、その印刷設定の情報に基づいて、境界判定部15が画像間に分割線を引くか否かを判定する。そして、色作成部16が分割線の色を決定し、レイアウト作成部17がレイアウト設定を行う。その結果、図9〜図11に示す印刷レイアウト画面のいずれか1つが表示される。
【0058】
まず、印刷設定画面700上の「画像間の線」欄702において「線を引かない」ラジオボタンが選択された場合、例えば、図9に示す印刷レイアウト画面900が表示される。印刷レイアウト画面900上には、レイアウト結果901として画像間に分割線が引かれていない印刷レイアウトが表示される。
【0059】
一方、「画像間の線」欄702において、「画像間の境界が判断できない部分がある場合線を引く」のラジオボタンが選択された場合、画像移動が「OFF」に設定され且つ境界判定部15が分割線を引くと判定したときは、例えば、図10に示す印刷レイアウト画面1000が表示される。印刷レイアウト画面1000上の印刷レイアウトでは、画像間の必要な部分にのみ分割線が引かれているので、画像間の境界線(切断位置)を判別しやすい。印刷設定画面700上の「画像移動」欄704で「ON」が選択されていた場合は、画像移動が行われ、例えば、図11に示す印刷レイアウト画面1100が表示される。
【0060】
このように、印刷レイアウト画面では、レイアウト結果901,1001,1101が表示されることにより、どの部分に分割線が引かれるかを確認することが可能である。ここでユーザは、不必要と感じた分割線に関しては、当該分割線を選択して「削除」ボタン901を押下することで分割線を削除することが可能である。また、分割線が必要であると感じた境界部に関しては、その場所を選択して「追加」ボタン902を押下することで分割線を追加することができる。分割線の色は、画像情報データベース21から取得される。再度、印刷設定画面700に戻るには「戻る」ボタン904を押下する。一方、表示されている印刷レイアウトで印刷を行う場合は、「印刷」ボタン903を押下する。
【0061】
図12は、図6のステップS605における画像境界処理の詳細を示すフローチャートである。
【0062】
図12において、まず、ステップS1201では、CPU12は、データ記憶部14から分割数を取得する。分割数とは、「画像枚数の最大値」入力欄801,802で設定された最大数に基づく数値であり、入力欄にそれぞれ「4」が設定されたときは4×4=16が分割数となる。本実施の形態では、レイアウトする画像の画像サイズがすべて同一の場合について説明するが、サイズの異なる画像が複数混在する場合、データ記憶部14からサイズの異なる画像の配置に関するレイアウト情報が取得される。
【0063】
ステップS1202では、CPU12は、ステップS1201で取得した分割数から画像の位置を算出する。ここでは、上述した画像開始位置及び終了位置がそれぞれ算出される。また、各画像に対して画像位置No.が割り当てられる。
【0064】
ステップS1203では、CPU12は、ステップS1202で算出した各画像位置の情報を画像位置データベース20に格納する。ステップS1204では、CPU12は、境界判定部15により画像間の境界に分割線を引くかどうかを判定させる(境界判定処理)。境界判定処理の詳細については後述する。
【0065】
ステップS1205では、CPU12は、データ記憶部14から「画像移動」欄704の「ON」が選択されているか否かの情報を取得する。そして、「ON」が選択されていた場合には、CPU12は、レイアウト作成部17により画像移動処理を実行させ(ステップS1206)、画像移動処理は、境界判定処理で境界の判別がし難いと判断された場合、その画像同士が極力隣り合わないように画像を移動させる処理である。これにより、余計な分割線を引くことがなくなる。画像移動処理の詳細については後述する。そして、画像移動が行われた印刷レイアウトに対して再度境界判定処理が実行される(ステップS1207)。一方、ステップS1205において、「OFF」が選択されていた場合は、ステップS1208へ進む。
【0066】
ステップS1208では、CPU12は、分割線を引くと判定された部分にのみ分割線を引かせ、レイアウト作成部17により作成された印刷レイアウトをレイアウト記憶部18に格納する(ステップS1209)。
【0067】
図13は、図12のステップS124,127における境界判定処理の詳細を示すフローチャートである。ここで、画像位置データベース20に格納されている画像位置情報とデータ記憶部14に格納されている画像配置順序情報から、各画像の各辺についての情報が画像情報データベース21に格納される。なお、画像位置No.及び辺No.のみが格納され、他の情報は図13の処理中に画像情報データベースに格納される。画像配置順序情報は、どの画像がどの位置に配置されるかの情報である。
【0068】
図13において、ステップS1301では、境界判定部15は、画像情報データベース21から1つ目の画像を取得する。
【0069】
ステップS1302では、境界判定部15は、ステップS1301で取得した画像の一つめの辺を検索する。ステップS1303では、境界判定部15は、ステップS1302で検索された1つ目の辺の判定済みflagが0(未判定)の場合、ステップS1304へ進む。一方、1(判定済み)であった場合は、ステップS1306へ進む。境界判定部15は、画像情報データベース21内の判定済みflagを参照することにより判断する。
【0070】
ステップS1304では、境界判定部15は、検索された辺と隣り合う画像の辺を取得する。ここでは、画像位置データベース20の画像位置情報を参照し、ステップS1301で取得した画像と隣り合う画像を検索する。そして、取得した画像の辺と隣り合う画像の辺をそれぞれ画像情報データベース21から取得する。例えば、図3(b)において、画像1の辺3が検索された場合、画像1と隣り合う画像2の辺5が取得される。また、画像1の辺1,2のように、隣り合う画像の辺がないものは検索された画像の辺と接している用紙における線分を仮想的に「辺」(以下、「仮想辺」とする)とし(画像1の1a,2a,画像2の6a等)、当該仮想辺上における色情報が取得される。ここで取得した仮想辺の情報は、辺の情報と同様に図3(a)の画像情報データベース21に設定される。なお、仮想辺の色情報はデフォルトでは白に設定されているが、図示しない入力画面によってユーザからの入力も可能である。
【0071】
ステップS1305では、検索された辺と当該辺に隣り合う辺との間に引く分割線の色が色作成部16により決定される(色判定処理)。色判定処理の詳細については後述する。
【0072】
ステップS1306では、境界判定部15は、判定を行った2辺に対して、画像情報データベース21内の判定済みflagを1にして判定済みに変更する。ステップS1307では、境界判定部15は、画像情報データベース21の辺No.からステップS1301で取得した画像の辺のすべてについて、色判定を行ったか否かを判断する。まだ、判定済みでない辺が存在する場合はステップS1308で次の辺に移動して、ステップS1303以降の処理を行う。一方、すべての辺が判定済みである場合はステップS1309に進む。
【0073】
ステップS1309では、境界判定部15は、画像情報データベース21からまだ判定済みでない辺のある画像が存在するか否かを判定する。この結果、判定済みでない辺のある画像が存在する場合にはステップS1310で次の画像に移動し、ステップS1302以降の処理を行う。一方、すべての画像が判定済みである場合はリターンする。
【0074】
図14は、図13のステップS1305における色判定処理の詳細を示すフローチャートである。
【0075】
図14において、ステップS1401では、色作成部16は、色判定の対象となる2辺の先頭の点(二点)をそれぞれ検索する。2辺の先頭の点とは、例えば、図3(b)に示す符号301の点である。なお、判定を開始する点は辺の先頭でなくともよい。
【0076】
ステップS1402では、色作成部16は、二点の色が同色または近似色か否かを判定する。判定の方法は以下の2つの方法で判定される。
【0077】
1.R,G,Bレンジ値取得データベース22,24,26を利用して二点の色が近いかどうかを判定する。
【0078】
2.(1.で近いと判定された場合)下式(1),(2)で得た結果(Value1とValue2)を比較し、分割線の必要な点であると判定する。
【0079】
Value1=a×R1+b×G1+c×B1 (1)
Value2=a×R2+b×G2+c×B2 (2)
R1:1つ目の辺のRの値、G1:1つ目の辺のGの値、B1:1つ目のBの値、R2:2つ目の辺のRの値をR2、G2:2つ目の辺のGの値、B2:2つ目の辺のBの値、abcはいずれも変数
まず、1.について説明する。R,G,Bレンジ値取得データベース22,24,26にそれぞれR,G,Bの0から255までの値を適当な幅ごとにレンジで分けて格納しておく。また、R,G,B計算値取得データベース23,25,27には、各レンジごとに使用する計算値を格納しておく。ただし、プリンタごとに色の精度が異なるため、これも考慮しなければならない。データベースの値は、ユーザにより予め設定されても、プリンタドライバ等により保持されていてもかまわない。
【0080】
R1,G1,B1,R2,G2,B2の値からそれぞれレンジ値取得データベース22,24,26が検索され、各値に対応するレンジが取得される。取得したR1’,R2’のレンジ値、G1’,G2’のレンジ値、B1’,B2’のレンジ値をそれぞれRGBごとに比較する。RGBそれぞれのレンジが一つでもある一定以上離れているものがあれば、2点間は分割線を必要としないと判断する。1.で分割線が必要であると判断された場合は、2.の判定を行う。
【0081】
次に、2.について説明する。R1,G1,B1,R2,G2,B2を利用し、上式(1),(2)に基づいて算出されたValue1,Value2の値から分割線が必要か否かの判定を行う。変数abcは、輝度計算の値a=0.299,b=0.587,c=0.114が使用される。なお、プリンタの種類に応じてこれらの値が変更されてもかまわない。
【0082】
1.で取得した各レンジ値に基づいてR,G,B計算値取得データベース23,25,27を検索し、実際に計算に使用する値を取得する。取得した値をR1’,G1’,B1’,R2’,G2’,B2’とする。例えば、R1の値が244の場合は、データベース22,23より244はRレンジ値が18で、Rレンジ18の計算値が206なので、R1’には206が使用される。同様に、G1の値が103の場合は、データベース24,25より103はGレンジ値が7で、Gレンジ7の計算値が96なので、G1’には96が使用される。同様に、B1の値が11の場合は、データベース26,27より11はBレンジ値が2で、Bレンジ2の計算値が10なので、B1’には10が使用される。
【0083】
式(1),(2)に上記を考慮した式が下式となる。
【0084】
Value1’=a×R1’+b×G1’+c×B1’ (1)’
Value2’=a×R2’+b×G2’+c×B2’ (2)’
Value1’とValue2’の関係がある一定の値以下である場合、隣り合う点の色が同色または2点間の判断がつき難い色であると判定する(分割線を引く可能性のある点とする)。なお、境界の判定に関しては、3Dルックアップテーブルを使用し、2点間の距離から判断することも可能である。
【0085】
図14に戻り、ステップS1403では、色作成部16は、判定がすべて終了したか否かを判断する。なお、検索する点はすべての点でなくともかまわない。ステップS1403において、色作成部16は、終了していないと判断した場合は、次の検索点に移動して(ステップS1404)、ステップS1402以降の処理を行う。一方、色作成部16は、終了したと判断した場合はステップS1405へ進む。なお、検索点は、画像の1画素ごと設定されていても、任意に設定されて点であってもよい。設定については、PC1側で自動的に設定しても、ユーザに設定させてもよい。
【0086】
ステップS1405では、色作成部16は、ステップS1402において色が同色か近似色であると判定された二点の割合が一定の割合を超えたか否かを判断する。この結果、色作成部16は、一定の割合を超えたと判断したときは、分割線を引くことを決定して(ステップS1406)、ステップS1408へ進む。ステップS1406では、色作成部16は、詳細設定画面800上の「境界の色の差」入力欄805に入力され、データ記憶部14に格納された割合をデータ記憶部14から取得する。
【0087】
ステップS1405において、色作成部16は、超えていないと判断した場合は、ステップS1408に進む。ステップS1407では、色作成部16は、画像情報データベース21における「分割線flag」に、判定した2辺に対して1(分割線を引く)をたて、それぞれ辺のレンジ値を「レンジ(RGB)」に設定し、Value1、Value2の値を「value」に設定する。
【0088】
ステップS1408では、色作成部16は、線決定処理を行い、分割線の仕様即ち線色及び線幅を決定する。この線決定処理の詳細については詳述する。ステップS1409では、色作成部16は、ステップS1408の線決定処理で決定した分割線の線色及び線幅を画像情報データベース21に格納する。また、印刷レイアウト画面上で「追加」ボタン902が押下された場合、画像情報データベース21における線色の値を利用し、線色を引くことができる。また、図12のステップS1206で画像移動処理を行う際には、画像情報データベース21における辺値の値を使用し、隣り合う画像の境界が判別しづらくならないように並び替えることができる。
【0089】
図15は、図12のステップS1206における画像移動処理の詳細を示すフローチャートである。
【0090】
図15において、ステップS1501では、レイアウト作成部17は、1つ目の画像を任意の位置に配置する。1つ目の画像は、画像情報データベースに基づいて選択される。
【0091】
次に、ステップS1502では、レイアウト作成部17は、まだ配置が決定していない画像が存在するか否かを判定する。この結果、存在しないと判定した場合はリターンする一方、存在する場合は、ステップS1503へ進み、次の画像を取得する。
【0092】
次に、ステップS1504では、レイアウト作成部17は、空白位置情報データベース28を参照し、空白データが存在するか否かを判定する。この結果、存在しないと判定した場合は、ステップS1509に進む。一方、レイアウト作成部17は、存在すると判定した場合は、次の空白を取得する(ステップS1505)。
【0093】
次に、ステップS1506では、レイアウト作成部17は、ステップS1505で取得した空白に画像を配置した場合、既に配置されている画像と隣り合う辺の色が同色または近似色か否かを判断する。ここでは上述した色判定処理と同じ処理が行われる。
【0094】
ステップS1506において、レイアウト作成部17は、同色又は近似色でないと判断した場合は、ステップS1507へ進む。一方、同色または近似色であると判断した場合はステップS1504に戻り、他の空白で判定を行う。
【0095】
ステップS1507では、レイアウト作成部17は画像を配置する。そして、ステップS1508では、レイアウト作成部17は空白IDを削除し、ステップS1502に戻る。ステップS1509では、レイアウト作成部17は、次の画像配置位置を取得する。次に、ステップS1510では、新しい配置位置が画像配置可能最大数(例えば、縦に4枚横に4枚配置できるものなら16枚)を超えていないかを判断し、超えていない場合はステップS1511へ進み、超える場合はステップS1514へ進む。
【0096】
ステップS1511では、レイアウト作成部17は、既に配置されている画像と隣り合う辺の色が同色または近似色か否かを判断する。ここでは上述した色判定処理と同じ処理が行われる。ステップS1511において、レイアウト作成部17は、同色または近似色でないと判断した場合は、ステップS1513へ進む。一方、同色または近似色であると判断した場合は、レイアウト作成部17は、現在の位置を空白として保持すると決定し、空白位置情報データベース28に位置情報を設定して(ステップS1512)、ステップS1509に戻る。
【0097】
ステップS1513では、レイアウト作成部17は、新しい配置位置に画像を配置して、ステップS152に戻る。ステップS1514では、レイアウト作成部17は、空白に画像を配置する。そして、ステップS1512で空白IDを削除して、ステップS1502に戻る。図9に示した印刷レイアウトから画像移動した場合の印刷レイアウトを図11に示す。
【0098】
このように、印刷設定画面700上でユーザが「画像移動」ONを選択することで、隣り合う画像の背景色が同じかまたは境界を判別できないような近似色とならないように画像の移動を行う。これにより、分割線が過度に引かれることが無くなる。なお、上記処理に代えて、すべての画像の組み合わせパターンを検証し、境界が判別できないと判断される回数が一番少ないパターンに移動する方法であってもよい。
【0099】
図16及び図17は、図14のステップS1408における線決定処理の詳細を示すフローチャートである。
【0100】
分割線の線色は、図4(a)〜図4(f)に示すデータベース22〜27に基づいて決定される。分割線の線色は、背景色に近い色で且つ背景色と区別が付く色に決定する必要があることから、決定したRGBの各レンジの値よりもある程度高いまたは低いレンジ値の計算値を使用して、設定される。
【0101】
図16において、ステップ1601では、色作成部16は、データ記憶部14からライン(分割線)の濃さの設定情報を取得する。ラインの濃さの設定情報は、詳細設定画面800上で「濃さ」のスライダが「暗い」に設定されたか、「明るい」に設定されたかを示すものである。
【0102】
次に、ステップ1602では、色作成部16は、ステップ1601で取得した設定情報がラインの濃さを暗くする設定(「暗い」)であるか否かを判定する。この結果、ラインの濃さを暗くする設定であるときは、ステップS1603へ進む。一方、ラインの濃さを明るくする設定であるときは、図17のステップS1609へ進む。
【0103】
ステップS1603では、色作成部16は、R1,R2,B1,B2,G1,G2のどのレンジ値を使用するかを決定する。ここでは、R1,R2でレンジ値が小さい方、B1,B2でレンジ値が小さい方、G1,G2でレンジ値が小さい方が使用される。
【0104】
ステップS1604では、色作成部16は、RGBのすべてのレンジ値を下げられるか否かの判断を行い、RGBのすべてのレンジ値を下げられると判断した場合、RGBのレンジ値をすべて下げた値でデータベース23,25,27を検索し、それぞれに対応する計算値で線色を決定して(ステップS1605)、リターンする。
【0105】
一方、ステップS1604において、色作成部16は、RGBのすべてのレンジ値を下げることができないと判断した場合、下げることのできないレンジが一つであるか否かを判定する(ステップS1606)。この結果、一つである場合は、色作成部16は、RGBのレンジ値を下げられるものは下げ、下げられないものは上げた値でデータベース23,25,27を検索し、それぞれに対応する計算値から線色を決定して(ステップS1607)、リターンする。
【0106】
一方、ステップS1606において、一つでない場合は、色作成部16は、「レンジを上げる」設定に変更して(ステップS1608)、図17のステップS1610へ進む。
【0107】
図17において、ステップS1604では、色作成部16は、R1,R2,B1,B2,G1,G2のどのレンジ値を使用するかを決定する。ここでは、R1,R2でレンジ値が大きい方、B1,B2でレンジ値が大きい方、G1,G2でレンジ値が大きい方が使用される。
【0108】
ステップS1610では、色作成部16は、RGBのすべてのレンジ値を上げることができるか否かの判断を行い、RGBのすべてのレンジ値を上げられると判断した場合、RGBのレンジ値をすべて上げた値でデータベース23,25,27を検索し、それぞれに対応する計算値で線色を決定して(ステップS1611)、リターンする。
【0109】
一方、ステップS1610において、色作成部16は、RGBのすべてのレンジ値を上げることができないと判断した場合、上げることができないレンジが一つであるか否かを判定する(ステップS1612)。この結果、一つである場合は、色作成部16は、RGBのレンジ値を上げられるものは上げ、上げられないものは下げた値でデータベース23,25,27を検索し、それぞれに対応する計算値から線色を決定して(ステップS1613)、リターンする。
【0110】
一方、ステップS1612において、一つでない場合は、色作成部16は「レンジを下げる」設定に変更して(ステップS1614)、図16のステップS1604へ進む。
【0111】
なお、分割線の線色は、ユーザの好みに合わせて明暗の差がつけられるようにしてもよい。この場合、詳細設定画面800上の濃さ設定スライダ804で明暗を微調整できるようにする。その設定値をレンジ値を変更する際に考慮する(例えば、「明るい」の度合いが大きいほどレンジ値を下げる割合を大きくする)ことにより、分割線の線色にさまざまな色を設定することができる。
【0112】
上記実施の形態によれば、隣り合う画像間にユーザが意図しない線が印刷されたり、空白が挿入されることなく、画像間の境界の判別をユーザに判別し易くすることができる。これにより、ユーザが画像を1枚ずつ正確に切り分けることができ、切り分けられた画像の縁に線が残ることを防止することができる。
【0113】
また、印刷設定画面700上で「画像間の境界に判別できない部分がある場合線を引く」をユーザが選択した場合、隣り合う画像間の境界領域の色が画像間で同色かまたは境界を判別できない近似色であるときは、その境界に対してのみ適切な色の線を引く。そのため、ユーザが画像を切り分ける際に境界の判別が困難であったり、画像に余計な線がかぶってしまったり、切断回数が必要以上に多くなってしまうという課題を解決することができる。また、画像間に余計な空間を挿入する必要がないので、画像サイズや数に制限を受けることが無くなる。
【0114】
上記実施の形態では、ユーザが線色の判定を行うのではなく、PC側で線色を自動的に判定していたが、ユーザが線色を決めるようにしてもよい。この場合、分割線が判別できるか否かの基準や線色の濃さをユーザが変更可能な構成にすると、ユーザの好みに合わせることができる。
【0115】
[第2の実施形態]
本発明の第2の実施の形態に係るオブジェクト配置装置を含むシステムは、図1で説明したシステムと同じであり、上記第1の実施形態と同様の部分については、同一の符号を用いてその説明を省略する。以下に、上記第1の実施の形態と異なる点のみを説明する。
【0116】
上記第1の実施形態では、図16及び図17に示したように、分割線の線色のみを決定する線決定処理について説明したが、線決定処理にて分割線の線色及び線幅を決定するようにしてもよい。
【0117】
図18及び図19は、本発明の第2の実施形態に係る画像境界作成システムにおける線決定処理を示すフローチャートである。
【0118】
境界判定部15により線色の色味を変えないと分割線がわかりづらいと判断された場合、印刷設定画面700上の「画像間の線幅変更」欄707でONが選択されているときは分割線の線幅を太くする。これにより、分割線は、色味が極力変わらず、背景色に近い色で境界線が判別可能なものとなる。
【0119】
図18において、ステップS1701では、色作成部16は、データ記憶部14からライン(分割線)の濃さの設定情報を取得する。ラインの濃さの設定情報は、詳細設定画面800上で「濃さ」のスライダが「暗い」に設定されたか、「明るい」に設定されたかを示すものである。
【0120】
次に、ステップS1702では、色作成部16は、ステップ1701で取得した設定情報がラインの濃さを暗くする設定(「暗い」)であるか否かを判定する。この結果、ラインの濃さを暗くする設定であるときは、ステップS1703へ進む。一方、ラインの濃さを明るくする設定であるときは、図19のステップS1713へ進む。
【0121】
ステップS1703では、色作成部16は、R1,R2,B1,B2,G1,G2のどのレンジ値を使用するかを決定する。ここでは、R1,R2でレンジ値が小さい方、B1,B2でレンジ値が小さい方、G1,G2でレンジ値が小さい方が使用される。
【0122】
次に、ステップS1704では、色作成部16は、RGBのすべてのレンジ値を下げられるか否かの判断を行い、RGBのすべてのレンジ値を下げられると判断した場合、RGBのレンジ値をすべて下げた値でデータベース23,25,27を検索し、それぞれに対応する計算値で線色を決定して(ステップS1705)、リターンする。
【0123】
一方、ステップS1704において、色作成部16は、RGBのすべてのレンジ値を下げることができないと判断した場合、下げることができないレンジが一つであるか否かを判定する(ステップS1706)。この結果、一つである場合は、色作成部16は、データ記憶部14から画像間の線幅変更設定値を取得して(ステップS1707)、ステップS1708へ進む。一方、一つでない場合は、色作成部16は「レンジを上げる」設定に変更して(ステップS1711)、図19のステップS1713へ進む。
【0124】
ステップS1708では、色作成部16は、画像間の線幅変更設定値がONであるか否かを判別し、画像間の線幅変更設定値がONであった場合、線幅を「太い」に決定して(ステップS1709)、ステップS1710へ進む。ステップS1710では、色作成部16は、RGBのレンジ値を下げられるもののみ下げた値でデータベース23,25,27を検索し、それぞれに対応する計算値から線色を決定して、リターンする。
【0125】
一方、ステップS1708において、画像間の線幅変更設定値がOFFであった場合は、色作成部16は、RGBのレンジ値を下げられるものは下げ、下げられないものは上げた値でデータベース23,25,27を検索し、それぞれに対応する計算値から線色を決定して(ステップS1712)、リターンする。
【0126】
図19において、ステップS1713では、色作成部16は、R1,R2,B1,B2,G1,G2のどのレンジ値を使用するかを決定する。ここでは、R1,R2でレンジ値が大きい方、B1,B2でレンジ値が大きい方、G1,G2でレンジ値が大きい方が使用される。
【0127】
次に、ステップS1714では、色作成部16は、RGBのすべてのレンジ値を上げることができるか否かの判断を行い、RGBのすべてのレンジ値を上げられると判断した場合、RGBのレンジ値をすべて上げた値でデータベース23,25,27を検索し、それぞれに対応する計算値で線色を決定して(ステップS1715)、リターンする。
【0128】
一方、ステップS1714において、色作成部16は、RGBのすべてのレンジ値が上げることができないと判断した場合、上げることができないレンジが一つであるか否かを判定する(ステップS1716)。この結果、一つである場合は、色作成部16は、データ記憶部14から画像間の線幅変更設定値を取得して(ステップS1717)、ステップS1718へ進む。一方、一つでない場合は、色作成部16は「レンジを下げる」設定に変更して(ステップS1721)、ステップS1704へ進む。
【0129】
ステップS1718では、色作成部16は、画像間の線幅変更設定値がONであるか否かを判別し、画像間の線幅変更設定値がONであった場合、線幅を「太い」に決定して(ステップS1719)、ステップS1720へ進む。ステップS1720では、色作成部16は、RGBのレンジ値を上げられるもののみ上げた値でデータベース23,25,27を検索し、それぞれに対応する計算値から線色を決定して、リターンする。
【0130】
一方、ステップS1719において、画像間の線幅変更設定がOFFであった場合は、色作成部16は、RGBのレンジ値を上げられるものは上げ、上げられないものは下げた値でデータベース23,25,27を検索し、それぞれに対応する計算値から線色を決定して(ステップS1722)、リターンする。
【0131】
上記第2の実施の形態によれば、上記第1の実施の形態による効果を更に奏することができる。
【0132】
上記第1及び第2の実施の形態では、オブジェクトの一例として画像(画像データ)を想定して説明したが、これに限定されるものではなく、文書(文書データ)や文書と画像の合成物であってもよい。
【0133】
また、本発明の目的は、以下の処理を実行することによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。
【0134】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0135】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【0136】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0137】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行う場合である。
【0138】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOSなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現する場合も含まれる。この場合、上記プログラムは、該プログラムを記憶した記憶媒体から直接、またはインターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続された不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【0139】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、OS(オペレーティングシステム)に供給されるスクリプトデータ等の形態から成ってもよい。
【図面の簡単な説明】
【0140】
【図1】本発明の第1の実施形態に係るオブジェクト配置装置の構成例を示すブロック図である。
【図2】図1のPC内の画像位置データベースの一例を示す図である。
【図3】(a)は画像情報データベースの一例を示す図であり、(b)は画像位置データベース及び画像情報データベースに格納された情報に基づいて作成された印刷レイアウトの一例を示す図である。
【図4】(a)〜(f)は境界判別処理に利用される色情報に関するデータベースの一例を示す図である。
【図5】(a)は空白位置情報データベースの一例を示す図であり、(b)は画像の配置位置を示す図である。
【図6】図1のPCにて実行されるオブジェクト配置処理の流れを示すフローチャートである。
【図7】図6の処理の実行時にディスプレイに表示される印刷設定画面の一例を示す図である。
【図8】図7の印刷設定画面上で「詳細設定」ボタンが押下されたときに表示され詳細設定画面の一例を示す図である。
【図9】通常の分割線を引かない場合の印刷レイアウト画面の一例を示す図である。
【図10】分割線を引いた場合の印刷レイアウト画面の一例を示す図である。
【図11】画像移動処理を実行した場合の印刷レイアウト画面の一例を示す図である。
【図12】図6のステップS605における画像境界判定処理の詳細を示すフローチャートである。
【図13】図12のステップS1204,S1207における境界判定処理の詳細を示すフローチャートである。
【図14】図13のステップS1305における色判定処理の詳細を示すフローチャートである。
【図15】図12のステップS1206における画像移動処理の詳細を示すフローチャートである。
【図16】図14のステップS1408における線決定処理の詳細を示すフローチャート(その1)である。
【図17】図14のステップS1408における線決定処理の詳細を示すフローチャート(その2)である。
【図18】本発明の第2の実施形態に係るオブジェクト配置装置にて実行される線決定処理の詳細を示すフローチャート(その1)である。
【図19】本発明の第2の実施形態に係るオブジェクト配置装置にて実行される線決定処理の詳細を示すフローチャート(その2)である。
【図20】(a)は複数の画像間に従来の切断用ガイド線が印刷された印刷結果の一例を示す図、(b)は画像間に空白を挿入して印刷された印刷結果の一例を示す図、(c)は画像間に画像の切断位置を示すカットマークを加えて印刷された印刷結果の一例を示す図である。
【符号の説明】
【0141】
1 パーソナルコンピュータ(PC)
2 ディスプレイ
3 プリンタ
12 CPU
14 データ記憶部
15 境界判定部
16 色作成部
17 レイアウト作成部
18 レイアウト記憶部
20 画像位置データベース
21 画像情報データベース
28 空白位置情報データベース
【特許請求の範囲】
【請求項1】
画像または文書を含むオブジェクトを複数隣接して配置するオブジェクト配置手段を備えるオブジェクト配置装置において、
前記オブジェクト配置手段により隣接して配置されたオブジェクト間の境界が判別可能か否かを判断する判断手段と、
前記判断手段により前記境界が判別可能でないと判断された場合は、前記境界に線を引く制御を行う境界線描画制御手段とを備えることを特徴とするオブジェクト配置装置。
【請求項2】
前記判断手段は、前記オブジェクト間の境界領域における前記オブジェクトの色と隣接する他のオブジェクトの色とが同色または近似色か否かを判断し、
前記境界線制御手段は、前記判断手段により同色または近似色と判断された場合、前記オブジェクト間の境界領域における前記オブジェクトの色と前記他のオブジェクトの色に基づいて、前記境界に引く線の仕様を決定する境界線仕様決定手段を更に備えることを特徴とする請求項1記載のオブジェクト配置装置。
【請求項3】
前記境界線仕様決定手段は、前記境界に引く線の線色を、前記オブジェクト間の境界領域における前記オブジェクトの色と前記他のオブジェクトの色に近似する線色であってユーザに判別可能な線色に決定する境界線色決定手段を備えることを特徴とする請求項2記載のオブジェクト配置装置。
【請求項4】
前記境界線仕様決定手段は、前記境界に引く線の幅を変更する境界線幅変更手段を更に備え、
前記境界線幅変更手段は、前記境界に引く線の線色が前記オブジェクト間の境界領域における前記オブジェクトの色と前記他のオブジェクトの色に近似する線色であってもユーザに判別し難い線色であるときは、当該境界に引く線の線幅を太くすることを特徴とする請求項3記載のオブジェクト配置装置。
【請求項5】
前記オブジェクト配置手段は、隣接するオブジェクト間の境界領域の色が互いに同色または近似色にならないようにオブジェクトを移動するオブジェクト移動手段を備えることを特徴とする請求項1乃至4のいずれか1項に記載のオブジェクト配置装置。
【請求項6】
画像または文書を含むオブジェクトを複数隣接して配置するオブジェクト配置工程と、
前記オブジェクト配置工程にて隣接して配置されたオブジェクト間の境界がユーザに判別可能か否かを判断する判断工程と、
前記判断工程にて前記境界が判別可能でないと判断された場合は、前記境界に線を引く制御を行う境界線描画制御工程とを備えることを特徴とするオブジェクト配置方法。
【請求項7】
請求項6記載のオブジェクト配置方法をコンピュータに実行させるためのコンピュータに読み取り可能なプログラム。
【請求項8】
請求項6記載のオブジェクト配置方法をコンピュータに実行させるためのコンピュータに読み取り可能なプログラムを記憶した記憶媒体。
【請求項1】
画像または文書を含むオブジェクトを複数隣接して配置するオブジェクト配置手段を備えるオブジェクト配置装置において、
前記オブジェクト配置手段により隣接して配置されたオブジェクト間の境界が判別可能か否かを判断する判断手段と、
前記判断手段により前記境界が判別可能でないと判断された場合は、前記境界に線を引く制御を行う境界線描画制御手段とを備えることを特徴とするオブジェクト配置装置。
【請求項2】
前記判断手段は、前記オブジェクト間の境界領域における前記オブジェクトの色と隣接する他のオブジェクトの色とが同色または近似色か否かを判断し、
前記境界線制御手段は、前記判断手段により同色または近似色と判断された場合、前記オブジェクト間の境界領域における前記オブジェクトの色と前記他のオブジェクトの色に基づいて、前記境界に引く線の仕様を決定する境界線仕様決定手段を更に備えることを特徴とする請求項1記載のオブジェクト配置装置。
【請求項3】
前記境界線仕様決定手段は、前記境界に引く線の線色を、前記オブジェクト間の境界領域における前記オブジェクトの色と前記他のオブジェクトの色に近似する線色であってユーザに判別可能な線色に決定する境界線色決定手段を備えることを特徴とする請求項2記載のオブジェクト配置装置。
【請求項4】
前記境界線仕様決定手段は、前記境界に引く線の幅を変更する境界線幅変更手段を更に備え、
前記境界線幅変更手段は、前記境界に引く線の線色が前記オブジェクト間の境界領域における前記オブジェクトの色と前記他のオブジェクトの色に近似する線色であってもユーザに判別し難い線色であるときは、当該境界に引く線の線幅を太くすることを特徴とする請求項3記載のオブジェクト配置装置。
【請求項5】
前記オブジェクト配置手段は、隣接するオブジェクト間の境界領域の色が互いに同色または近似色にならないようにオブジェクトを移動するオブジェクト移動手段を備えることを特徴とする請求項1乃至4のいずれか1項に記載のオブジェクト配置装置。
【請求項6】
画像または文書を含むオブジェクトを複数隣接して配置するオブジェクト配置工程と、
前記オブジェクト配置工程にて隣接して配置されたオブジェクト間の境界がユーザに判別可能か否かを判断する判断工程と、
前記判断工程にて前記境界が判別可能でないと判断された場合は、前記境界に線を引く制御を行う境界線描画制御工程とを備えることを特徴とするオブジェクト配置方法。
【請求項7】
請求項6記載のオブジェクト配置方法をコンピュータに実行させるためのコンピュータに読み取り可能なプログラム。
【請求項8】
請求項6記載のオブジェクト配置方法をコンピュータに実行させるためのコンピュータに読み取り可能なプログラムを記憶した記憶媒体。
【図1】
【図2】
【図4】
【図5】
【図6】
【図8】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図3】
【図7】
【図9】
【図10】
【図11】
【図20】
【図2】
【図4】
【図5】
【図6】
【図8】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図3】
【図7】
【図9】
【図10】
【図11】
【図20】
【公開番号】特開2008−136102(P2008−136102A)
【公開日】平成20年6月12日(2008.6.12)
【国際特許分類】
【出願番号】特願2006−322015(P2006−322015)
【出願日】平成18年11月29日(2006.11.29)
【出願人】(301015956)キヤノンソフトウェア株式会社 (364)
【Fターム(参考)】
【公開日】平成20年6月12日(2008.6.12)
【国際特許分類】
【出願日】平成18年11月29日(2006.11.29)
【出願人】(301015956)キヤノンソフトウェア株式会社 (364)
【Fターム(参考)】
[ Back to top ]