説明

編集装置、編集方法、及びプログラム

【課題】 簡単な操作により、オブジェクトを表形式に整列して表示する。
【解決手段】画面上でオブジェクトを編集する編集装置であって、利用者から入力された内容をオブジェクトとして画面上に表示するオブジェクト入力表示部と、オブジェクト入力表示部により表示された複数のオブジェクトのうち第1のオブジェクトの外形を、第2のオブジェクトと重ならない範囲で伸張させることにより、第1のオブジェクトの少なくとも一つの辺を第2のオブジェクトの一辺又は当該一辺の延長線に重ねるオブジェクト伸張部とを備える編集装置を提供する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、編集装置、編集方法、及びプログラムに関する。特に、本発明は、画面上に表示されたオブジェクトを整列する編集装置、編集方法、及びプログラムに関する。
【背景技術】
【0002】
ワープロ資料、プレゼンテーション資料において表作成は重要な作業である。また、ウェブ・ページを作成する際にも、枠線を表示しない表を用いてコンテンツのレイアウトを定める手法が広く用いられている。このように、表作成の用途は広く、様々なアプリケーション・プログラムにより表作成が可能となっている。例えば、従来、表作成の基本的な方法として、まず最初に表の構造(行・列の個数、セルの大きさ)を決めてテーブルを作成してから、コンテンツを作成する方法が用いられている。
【0003】
しかしながら、複雑な構造を持つ表を作成する場合には、このような方法では以下の点が問題となる。第1に、複雑な構造の表においては、コンテンツの作成に先立って行・列数を指定することが困難で、後から行・列を追加・削除しなければならない場合が多い。第2に、特別なカスタマイズをせずにデフォルト状態の設定で表を作成してしまうと、行・列に含まれるセル数が一定であることが多く、このため、セルの結合・分割の操作が必要となってしまう。このため、構造が複雑な表を作成する作業を支援する技術が望まれている。
【0004】
これに対して、従来、表の構造についての複数の雛形を記号体系に対応付けて予め定めておき、入力された記号列に基づいて順次雛形を適用して表を作成する技術が提案されている(特許文献1参照。)。このツールによれば、記号の取り扱いに熟練すれば、複雑な表の作成が容易となる。また、行及び列が入れ子となった表の雛形を、その入れ子構造を示す木構造として予め管理しておき、利用者から指定された雛形に基づいて、表を作成する技術が提案されている(特許文献2参照。)。この技術によれば、雛形が木構造で管理されているので、比較的構造が複雑な表の管理が容易となる。
【0005】
また、文字列と文字列の間に、罫線を示す特別な文字(仮罫線)を入力しておくと、仮罫線同士が接続されて表の枠に変換される技術が提案されている(特許文献3参照。)。この技術によれば、各セルに入力される内容を予測して罫線を作成しなくとも、各セルに表示すべき内容に基づいて罫線が作成されるので、表の作り直し等が減って作業能率を向上できる。また、従来、編集画面に表示されたオブジェクトに基づいて、そのオブジェクトをセルとした表を示すHTMLファイルを作成するウェブ・ページ作成の支援ツールが知られている。このツールによれば、利用者が配置したオブジェクトの位置がそっくりそのまま保持されるので、直感的な画像編集が可能となる。
【0006】
【特許文献1】特開平10−11514号公報
【特許文献2】特開平10−232900号公報
【特許文献3】特開平10−187683号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1の技術では、記号体系の習熟は容易とはいえず、コンピュータの操作に熟練した者であっても取り扱いに苦慮することが予想される。また、特許文献2の技術では、必要な雛形を適切に選択するために、比較的多くの操作が必要である。また、特許文献3の技術では、作成された表の構造が、利用者が想定していた構造と一致しない場合も多い。
【0008】
また、ウェブ・ページ作成支援ツールにおいて、複数のオブジェクトを自由に配置した場合には、表の構造が予想以上に複雑となり、HTMLファイルのデータサイズが不用意に増加してしまう場合がある。例えば、同一の行に配置すべき複数のオブジェクトを、列方向に僅かにずらして配置してしまった場合には、それらのオブジェクトを互いに異なる行とした表が作成されてしまう。このため、HTMLファイルの読み込みが遅くなり、閲覧者に対する印象が悪くなってしまうことが予想される。
【0009】
一方、同一の行に配置すべき複数のオブジェクトを、厳密に同一の行に配置しようとすれば、利用者の作業負担が増加してしまう。オブジェクトの配置位置を所定の格子点のみに制限するグリッド線を用いることも考えられるが、その場合、グリッド線をどこに設定すべきか判断するのは容易ではないし、レイアウトの自由度も低下してしまう。
【0010】
そこで本発明は、上記の課題を解決することのできる編集装置、編集方法、及びプログラムを提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【課題を解決するための手段】
【0011】
上記課題を解決するために、本発明の第1の形態においては、画面上でオブジェクトを編集する編集装置であって、利用者から入力された内容をオブジェクトとして画面上に表示するオブジェクト入力表示部と、オブジェクト入力表示部により表示された複数のオブジェクトのうち第1のオブジェクトの外形を、第2のオブジェクトと重ならない範囲で伸張させることにより、第1のオブジェクトの少なくとも一つの辺を第2のオブジェクトの一辺又は当該一辺の延長線に重ねるオブジェクト伸張部とを備える編集装置を提供する。
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【発明の効果】
【0012】
本発明によれば、簡単な操作により、オブジェクトを表形式に整列して表示することができる。
【発明を実施するための最良の形態】
【0013】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0014】
図1は、編集装置10の構成を、機能ブロックに分類して示す。編集装置10は、利用者が入力して画面上に表示された複数のオブジェクトを、利用者に煩雑な操作を要求することなく、表形式に整列して表示することを目的とする。編集装置10は、オブジェクト入力表示部100と、頂点座標格納部110と、オブジェクト伸張部120と、空白セル配置部130と、プレビュー表示部140とを備える。
【0015】
オブジェクト入力表示部100は、キーボード又はマウス等の操作により、表の各セルに表示すべき内容を、利用者により入力させる。そして、オブジェクト入力表示部100は、利用者から入力された内容を含む長方形の領域を、予め定められた編集画面上に、オブジェクトとして表示する。頂点座標格納部110は、編集画面上に表示しているオブジェクトの各頂点の座標を格納している。
【0016】
オブジェクト伸張部120は、表の作成指示を利用者から受けた場合に、オブジェクト入力表示部100により表示された複数のオブジェクトのうち第1のオブジェクトの外形を、第2のオブジェクトと重ならない範囲で伸張させる。具体的には、オブジェクト伸張部120は、頂点座標格納部110に格納された頂点の座標を変更することにより各オブジェクトを縦方向又は横方向の少なくとも一方に似伸張させる。また、オブジェクト伸張部120は、各頂点の座標を比較することによりオブジェクトの重なりを判断する。そして、オブジェクト伸張部120は、第1のオブジェクトの外形を伸張させることにより、第1のオブジェクトの少なくとも一つの辺を第2のオブジェクトの一辺又はその一辺の延長線に重ねる。
【0017】
具体的には、オブジェクト伸張部120は、第1のオブジェクトの外形を伸張させることにより、第1のオブジェクトの少なくとも一つの辺を、第2のオブジェクトの何れかの辺に外接させる。また、オブジェクト伸張部120は、編集画面上の上下方向の座標軸と平行な直線上に配列されている複数のオブジェクトの各々の左辺を、これら複数のオブジェクトの何れかの左辺の延長線に重ねる左辺伸張整列処理を行ってもよい。この結果、オブジェクト伸張部120は、第1のオブジェクトに対応するセルと第2のオブジェクトに対応するセルとが整列した表を編集画面上に表示することができる。
【0018】
空白セル配置部130は、表を表示すべき画面上の領域として予め定められた表示用領域のうち、オブジェクト伸張部120により整列された各オブジェクトに対応するセルが表示されている領域以外の領域に、表示すべき内容を含まない空白セルを表示する。プレビュー表示部140は、オブジェクト入力表示部100が利用者から新たにオブジェクトの操作を受ける毎に、既存の複数のオブジェクトに対し、オブジェクト伸張部120が伸張を行った結果作成される表の完成イメージを、プレビュー画面上に表示する。この場合、空白セル配置部130は、表の完成イメージに更に空白セルを含めて表示させてもよい。
【0019】
ここで、オブジェクト入力表示部100が利用者から受ける操作とは、例えば、オブジェクトとして表示すべき内容の入力を受けて新たにオブジェクトを配置する操作である。これに加えて、オブジェクト入力表示部100が利用者から受ける操作とは、既に入力され配置されている既存のオブジェクトを画面上で移動させる操作であってもよいし、既に入力され配置されている既存のオブジェクトの外形を変形させる操作であってもよい。
【0020】
図2は、編集装置10の動作フローを示す。編集装置10は、利用者から何らかの操作を受ける毎に、或いは、当該操作に関わらず定期的に、以下の処理を行う。オブジェクト入力表示部100は、表の各セルに表示すべき内容(例えば文字列)が、利用者から入力された場合に(S200:YES)、入力された文字列をオブジェクトとして表示する(S210)。そして、プレビュー表示部140は、オブジェクトの編集処理により、表の完成イメージを作成し(S220)、プレビュー画面上に表示する(S230)。
【0021】
次に、オブジェクト伸張部120は、表の作成指示を利用者から受けた場合に(S240:YES)、オブジェクトの編集処理により、画面上に表示されている複数のオブジェクトを整列させる(S250)。即ち、オブジェクト伸張部120は、各オブジェクトを伸張させることにより、表の作成指示を受けた時点でプレビュー表示部140によりプレビュー画面上に表示されている表を作成し、編集画面上に表示する。
【0022】
図3は、オブジェクト伸張部120がオブジェクトを編集する処理の詳細を示す。オブジェクト伸張部120は、各オブジェクトの左端及び右端のX座標、並びに、上端及び下端のY座標を頂点座標格納部110から取得する(S300)。ここで、変数l[]は、各オブジェクトの左端の座標を格納する配列変数である。同様に、変数r[]、変数t[]、及び変数b[]の各々は、各オブジェクトの右端の座標、上端の座標、及び下端の座標の各々を格納する配列変数である。即ち、オブジェクトの数をnとし、第i番目のオブジェクトの左端の座標をl[i]、右端の座標をr[i]、上端の座標をt[i]、下端の座標をb[i]とする。また、以降の説明において、第i番目のオブジェクトをオブジェクトiと呼ぶ。
【0023】
次に、オブジェクト伸張部120は、新たな配列変数x[]に、l[]の内容をコピーし、新たな配列変数y[]に、r[]の内容をコピーする(S305)。次に、オブジェクト伸張部120は、各オブジェクトが横書きの文字列を含むか否かを判断する(S310)。横書きの文字列を含む場合には(S310:YES)、オブジェクト伸張部120は、x[]及びy[]を用いて、上下方向の座標軸と平行な直線上に配列されている複数のオブジェクトの各々の左辺を、これら複数のオブジェクトの何れかの左辺の延長線に重ねる左辺伸張整列処理を行う(S320)。
【0024】
次に、オブジェクト伸張部120は、左辺伸張整列処理を行った当該複数のオブジェクトの何れかよりも全体が左側に表示されている各オブジェクトの外形を伸張させることにより、伸張させたそれらのオブジェクトの右辺を、当該複数のオブジェクトの何れかの左辺、又は、当該左辺の延長線に重ねる右辺伸張連接処理を行う(S330)。なお、S330において、更に、オブジェクト伸張部120は、右隣にオブジェクトを有していないオブジェクトについては、そのオブジェクトの右辺を、編集対象の全てのオブジェクトのうち最も右側にあるオブジェクトの右辺の延長線に重ねる処理を行う。ここで、左辺伸張整列処理は、後述する上辺伸張整列処理と同一の処理であるので、これらの処理をまとめて伸張整列処理1と呼び、図4で詳細を説明する。また、右辺伸張連接処理は、後述する下辺伸張連接処理と同一の処理であるので、これらの処理をまとめて伸張連接処理1と呼び、図5で詳細を説明する。
【0025】
一方、縦書きの文字列を含む場合には(S310:NO)、オブジェクト伸張部120は、x[]及びy[]を用いて、上下方向の座標軸と平行な直線上に配列されている複数のオブジェクトの各々の右辺を、これら複数のオブジェクトの何れかの右辺の延長線に重ねる右辺伸張整列処理を行う(S380)。この処理を、伸張整列処理1と区別するために伸張整列処理2と呼ぶ。
【0026】
次に、オブジェクト伸張部120は、右辺伸張整列処理を行った当該複数のオブジェクトの何れかよりも全体が右側に表示されている各オブジェクトの外形を伸張させることにより、伸張させたそれらのオブジェクトの左辺を、当該複数のオブジェクトの何れかの右辺、又は、当該右辺の延長線に重ねる左辺伸張連接処理を行う(S390)。この処理を、伸張連接処理1と区別するために伸張連接処理2と呼ぶ。なお、S390において、更に、オブジェクト伸張部120は、左隣にオブジェクトを有していないオブジェクトについては、そのオブジェクトの左辺を、編集対象の全てのオブジェクトのうち最も左側にあるオブジェクトの左辺の延長線に重ねる処理を行う。そして、オブジェクト伸張部120は、l[]にu[]の内容をコピーし、r[]にs[]の内容をコピーする(S335)。これにより、伸張先の座標を計算した計算結果が、オブジェクトの実際の座標に反映される。
【0027】
このように、横書きの場合には、利用者が配置したオブジェクトの左辺を基準とし、縦書きの場合には、利用者が配置したオブジェクトの右辺を基準とすることができる。これにより、利用者が入力した内容に応じて配列の基準位置を変更することができる。以上の処理に代えて、オブジェクト伸張部120は、各オブジェクトが横書きの文字列を含む場合であっても、右から左に向かって文字を配列する言語の文字列を含む場合においては、右辺伸張整列処理及び左辺伸張連接処理を行ってもよい。
【0028】
次に、オブジェクト伸張部120は、x[]にt[]の内容をコピーし、y[]にb[]の内容をコピーする(S338)。次に、オブジェクト伸張部120は、x[]及びy[]を用いて、左右方向の座標軸と平行な直線上に配列されている複数のオブジェクトの各々の上辺を、これら複数のオブジェクトの何れかの上辺の延長線に重ねる上辺伸張整列処理を行う(S340)。
【0029】
次に、オブジェクト伸張部120は、上辺伸張整列処理を行った当該複数のオブジェクトの何れかよりも全体が上側に表示されている各オブジェクトの外形を伸張させることにより、伸張させたそれらのオブジェクトの下辺を、当該複数のオブジェクトの何れかの下辺、又は、当該下辺の延長線に重ねる下辺伸張連接処理を行う(S350)。そして、オブジェクト伸張部120は、t[]にu[]の内容をコピーし、b[]にs[]の内容をコピーする(S360)。これにより、伸張先の座標を計算した計算結果が、オブジェクトの実際の座標に反映される。
【0030】
空白セル配置部130は、表を表示すべき画面上の領域として予め定められた表示用領域のうち、オブジェクト伸張部120により整列された各オブジェクトに対応するセルが表示されている領域以外の領域に、表示すべき内容を含まない空白セルを表示する(S370)。これにより、表全体の外形を例えば矩形等に整形することができる。
【0031】
図4は、オブジェクトの左辺又は上辺を伸張することにより整列する伸張整列処理1の詳細を示す。オブジェクト伸張部120は、変数x[]及びy[]を入力とする。オブジェクト伸張部120は、新たな変数iに、1からnまでの整数を順次代入した場合について、以下の処理を繰り返す(S400)。まず、オブジェクト伸張部120は、新たな変数vに0を代入する(S410)。ここで、vは、このステップに至るまでに判断の対象とした、オブジェクトiよりも全体が左側にあるオブジェクトのうち、右辺が最も右側にあるオブジェクトの右端の座標を保持する。
【0032】
ここで、本実施例において、編集画面及びプレビュー画面の各々は、上下方向及び左右方向の各々を座標軸とする2次元平面を構成する。そして、左右方向の座標軸上の右方向を、座標値が増加する正の方向とする。また、左右方向の座標軸上の左方向を、座標値が減少する負の方向とする。また、上下方向の座標軸上の下方向を、座標値が増加する正の方向とする。また、上下方向の座標軸上の上方向を、座標値が減少する負の方向とする。また、各座標の座標値を0以上の整数とする。即ち、S410において、オブジェクト伸張部120は、座標平面上で最も左側の座標を、vに代入する。
【0033】
続いて、オブジェクト伸張部120は、新たな変数jに、1からnまでの整数を順次代入した場合について、以下の処理を繰り返す(S420)。まず、オブジェクト伸張部120は、新たな配列変数w[]について、w[j]にx[i]を代入する(S430)。次に、オブジェクト伸張部120は、y[j]≦x[i]か否かを判断する(S440)。即ち、オブジェクト伸張部120は、オブジェクトjの全体が、オブジェクトiよりも左側であるか否かを判断する。
【0034】
y[j]≦x[i]である場合に(S440:YES)、オブジェクト伸張部120は、v<y[j]か否かを判断する(S450)。即ち、オブジェクト伸張部120は、オブジェクトjの右辺が、これまで判断の対象とした、オブジェクトiより全体が左側にある何れのオブジェクトの右辺よりも右側であるか否かを判断する。v<y[j]である場合に(S450:YES)、オブジェクト伸張部120は、vにy[i]を代入する(S460)。この処理を繰り返すことにより、vは、オブジェクトiよりも全体が左側にあるオブジェクトのうち、右辺が最も右側にあるオブジェクトの右端の座標を保持する。
【0035】
一方、y[j]≦x[i]でない場合に(S440:NO)、オブジェクト伸張部120は、x[j]≦x[i]<y[j]か否かを判断する(S470)。即ち、オブジェクト伸張部120は、オブジェクトj及びオブジェクトiが、上下方向を示す座標軸と平行な直線上に配列されており、かつ、オブジェクトjの左辺がオブジェクトiの左辺より左側であるか否かを判断する。この条件が成立すれば、オブジェクトjは、オブジェクトiの左辺を整列させる対象の候補となる。x[j]≦x[i]<y[j]である場合に(S470:YES)、オブジェクト伸張部120は、w[j]にx[j]を代入する(S480)。
【0036】
以上の処理を、オブジェクト伸張部120は、変数jに、1からnまでの整数を順次代入した場合について繰り返す(S485)。次に、オブジェクト伸張部120は、算出したv及びw[]と、x[i]とを用いて、整列されたオブジェクトを表示すべき表示位置を算出する(S490)。以上の処理を、オブジェクト伸張部120は、変数iに、1からnまでの整数を順次代入した場合について繰り返す(S495)。この結果、整列後の各オブジェクトの左辺の座標が、配列変数u[]に格納される。また、y[]は入力時のまま出力される。
【0037】
図5は、オブジェクトの右辺又は下辺を伸張する伸張連接処理1の詳細を示す。オブジェクト伸張部120は、変数u[]及びy[]を入力とする。そして、オブジェクト伸張部120は、新たな変数iに、1からnまでの整数を順次代入した場合について、次の処理を繰り返す(S500)。オブジェクト伸張部120は、y[i]、算出したu[]、及びy[]の最大値を用いて、オブジェクトiを伸張させた結果右辺又は下辺を表示すべき表示位置を算出する(S510)。この結果得られた表示位置をs[i]とする。オブジェクト伸張部120は、この処理を、変数iに、1からnまでの整数を順次代入した場合について繰り返す(S520)。
【0038】
図6は、表示位置を算出する処理の詳細を示す。オブジェクト伸張部120は、変数p、配列変数q[]、及び変数rを入力とする。即ち、S490におけるv、w[]、及びx[i]の各々、又は、S510におけるy[i]、u[]、及びy[]の最大値の各々が、変数p、配列変数q[]、及び変数rの各々に代入される。
【0039】
まず、オブジェクト伸張部120は、p>max(q[])か否かを判断する(S600)。即ち、S490においては、オブジェクトiの左辺を整列する整列先の候補となる他のオブジェクトが存在しないか否かを判断する。また、S510においては、オブジェクトiの右側で他のオブジェクトに至るまでの間に、オブジェクトiを伸張するための余白がないか否かを判断する。
【0040】
p>max(q[])である場合に(S600:YES)、オブジェクト伸張部120は、新たな変数zに、rの内容をコピーする(S605)。S490の処理において、変数zは、伸張整列処理後の座標を保持する変数であるから、この場合には、伸張整列処理は行われない。一方、S510の処理においては、オブジェクトiの右辺を、編集対象の全てのオブジェクトのうち最も右側にあるオブジェクトの右辺の延長線に重ねることができる。p>max(q[])でない場合に(S600:NO)、オブジェクト伸張部120は、新たな変数zに、q[]の最大値を代入する(S610)。そして、オブジェクト伸張部120は、変数jに、1からnまでの整数を順次代入した場合について、以下の処理を繰り返す(S620)。
【0041】
オブジェクト伸張部120は、p≦q[j]<zか否かを判断する(S630)。p≦q[j]<zである場合に(S630:YES)、オブジェクト伸張部120は、zにq[j]を代入する(S640)。以上の処理を、オブジェクト伸張部120は、変数jに、1からnまでの整数を順次代入した場合について繰り返す(S650)。
【0042】
これにより、S490において、オブジェクト伸張部120は、他のオブジェクトの右端よりも右側に表示され、かつオブジェクトiと上下方向の同一直線上に配列されている複数のオブジェクトのうち、左辺が最も左側にあるオブジェクトの左辺の座標を、zとして算出することができる。また、S510においては、オブジェクト伸張部120は、オブジェクトiの右辺がオブジェクトiの右側にある他のオブジェクトに外接する座標、又は、編集対象の全てのオブジェクトのうち最も右側にあるオブジェクトの右辺の座標を、zとして算出することができる。
【0043】
なお、上辺伸張整列処理及び下辺伸張連接処理については、図4から図6の説明における、左側、右側、左辺、及び右辺を、それぞれ、上側、下側、上辺、及び下辺に置き換えることにより説明されるので、より詳細な説明を省略する。
【0044】
図7は、オブジェクトの右辺を伸張することにより整列する伸張整列処理2の詳細を示す。オブジェクト伸張部120は、変数x[]及びy[]を入力とする。オブジェクト伸張部120は、新たな変数iに、1からnまでの整数を順次代入した場合について、以下の処理を繰り返す(S700)。まず、オブジェクト伸張部120は、新たな変数vに無限大の数値を代入する(S710)。ここで、vは、このステップに至るまでに判断の対象とした、オブジェクトiよりも全体が右側にあるオブジェクトのうち、左辺が最も左側にあるオブジェクトの左端の座標を保持する。なお、本例において、各座標の座標値の上限は有限であることを前提とするので、オブジェクト伸張部120は、vに、座標値の上限値以上の予め定められた値を代入してもよい。
【0045】
続いて、オブジェクト伸張部120は、新たな変数jに、1からnまでの整数を順次代入した場合について、以下の処理を繰り返す(S720)。まず、オブジェクト伸張部120は、新たな配列変数w[]について、w[j]にy[i]を代入する(S730)。次に、オブジェクト伸張部120は、x[j]≧y[i]か否かを判断する(S740)。即ち、オブジェクト伸張部120は、オブジェクトiの全体が、オブジェクトjよりも右側であるか否かを判断する。
【0046】
x[j]≧y[i]である場合に(S740:YES)、オブジェクト伸張部120は、v>x[j]か否かを判断する(S750)。即ち、オブジェクト伸張部120は、オブジェクトjの左辺が、これまで判断の対象とした、オブジェクトiより全体が右側にある何れのオブジェクトの左辺よりも左側であるか否かを判断する。v>x[j]である場合に(S750:YES)、オブジェクト伸張部120は、vにx[j]を代入する(S760)。この処理を繰り返すことにより、vは、オブジェクトiよりも全体が右側にあるオブジェクトのうち、左辺が最も左側にあるオブジェクトの左端の座標を保持する。
【0047】
一方、x[j]≧x[i]でない場合に(S740:NO)、オブジェクト伸張部120は、x[j]<y[i]≦y[j]か否かを判断する(S770)。即ち、オブジェクト伸張部120は、オブジェクトj及びオブジェクトiが、上下方向を示す座標軸と平行な直線上に配列されており、かつ、オブジェクトjの右辺がオブジェクトiの右辺より右側であるか否かを判断する。この条件が成立すれば、オブジェクトjは、オブジェクトiの右辺を整列させる対象の候補となる。x[j]<y[i]≦y[j]である場合に(S770:YES)、オブジェクト伸張部120は、w[j]にy[j]を代入する(S780)。
【0048】
以上の処理を、オブジェクト伸張部120は、変数jに、1からnまでの整数を順次代入した場合について繰り返す(S785)。次に、オブジェクト伸張部120は、算出したv及びw[]と、y[i]とを用いて、整列されたオブジェクトを表示すべき表示位置を算出する(S790)。以上の処理を、オブジェクト伸張部120は、変数iに、1からnまでの整数を順次代入した場合について繰り返す(S795)。この結果、整列後の各オブジェクトの右辺の座標が、配列変数u[]に格納される。また、x[]は入力時のまま出力される。
【0049】
図8は、オブジェクトの左辺を伸張する伸張連接処理2の詳細を示す。オブジェクト伸張部120は、変数x[]及びs[]を入力とする。そして、オブジェクト伸張部120は、新たな変数iに、1からnまでの整数を順次代入した場合について、次の処理を繰り返す(S800)。オブジェクト伸張部120は、x[i]、算出したs[]、及びx[]の最小値を用いて、オブジェクトiを伸張させた結果左辺を表示すべき表示位置を算出する(S810)。この結果得られた表示位置をu[i]とする。オブジェクト伸張部120は、この処理を、変数iに、1からnまでの整数を順次代入した場合について繰り返す(S820)。
【0050】
図9は、表示位置を算出する処理の詳細を示す。オブジェクト伸張部120は、変数p、配列変数q[]、及び変数rを入力とする。即ち、S790におけるv、w[]、及びy[i]の各々、又は、S810におけるx[i]、s[]、及びx[]の最小値の各々が、変数p、配列変数q[]、及び変数rの各々に代入される。
【0051】
まず、オブジェクト伸張部120は、p<min(q[])か否かを判断する(S910)。即ち、S790においては、オブジェクトiの右辺を整列する整列先の候補となる他のオブジェクトが存在しないか否かを判断する。また、S810においては、オブジェクトiの左側で他のオブジェクトに至るまでの間に、オブジェクトiを伸張するための余白がないか否かを判断する。
【0052】
p<min(q[])である場合に(S900:YES)、オブジェクト伸張部120は、新たな変数zに、rの内容をコピーする(S605)。S790の処理において変数zは、伸張整列処理後の座標を保持する変数であるから、この場合には、伸張整列処理は行われない。一方、S810の処理においては、オブジェクトiの左辺を、編集対象の全てのオブジェクトのうち最も左側にあるオブジェクトの左辺の延長線に重ねることができる。p<min(q[])でない場合に(S900:NO)、オブジェクト伸張部120は、新たな変数zに、q[]の最小値を代入する(S910)。そして、オブジェクト伸張部120は、変数jに、1からnまでの整数を順次代入した場合について、以下の処理を繰り返す(S920)。
【0053】
オブジェクト伸張部120は、p≧q[j]>zか否かを判断する(S930)。p≧q[j]>zである場合に(S930:YES)、オブジェクト伸張部120は、zにq[j]を代入する(S940)。以上の処理を、オブジェクト伸張部120は、変数jに、1からnまでの整数を順次代入した場合について繰り返す(S950)。
【0054】
これにより、S790において、オブジェクト伸張部120は、他のオブジェクトの左端よりも左側に表示され、かつオブジェクトiと上下方向の同一直線上に配列されている複数のオブジェクトのうち、右辺が最も右側にあるオブジェクトの右辺の座標を、zとして算出することができる。また、S810においては、オブジェクト伸張部120は、オブジェクトiの左辺がオブジェクトiの左側にある他のオブジェクトに外接する座標、又は、編集対象の全てのオブジェクトのうち最も左側にあるオブジェクトの左辺の座標を、zとして算出することができる。
【0055】
このように、オブジェクト伸張部120は、複数のオブジェクトの各々に対して伸張整列処理及び伸張連接処理を行うことにより、各オブジェクトに対応するセルを編集画面上に敷き詰めた表を作成することができる。なお、図3から図9までにおいて説明した各処理は、オブジェクト伸張部120に代えて、プレビュー表示部140が行ってもよい。プレビュー表示部140が行う処理は、オブジェクト伸張部120が行う処理と略同一であるので、説明を省略する。
【0056】
図10は、利用者によりオブジェクト40が入力された場合に表示される編集画面及びプレビュー画面の一例を示す。(a)は、オブジェクト入力表示部100により表示される編集画面を示す。(b)は、プレビュー表示部140によりプレビュー画面上に表示される表の完成イメージを示す。なお、表の完成イメージとは、オブジェクト伸張部120により作成される表そのものであってもよいし、当該表のサイズを縮小等することにより作成されるダイジェスト情報であってもよい。また、プレビュー画面は、GUIとしてウィンドウシステムを採用したシステムにおいて、例えば編集画面とは異なるウィンドウに表示される画面である。これに代えて、プレビュー画面は、編集画面内に表示されてもよい。以上の説明は、図11から図15までの各々についても同様であるので、以降の各図における説明を省略する。
【0057】
編集画面にオブジェクト30が表示されている状態において、オブジェクト入力表示部100は、利用者からオブジェクト40の入力を受ける。そして、オブジェクト入力表示部100は、オブジェクト30と、オブジェクト40とを編集画面上に表示する。この結果、オブジェクト入力表示部100は、各々が互いに縦方向及び横方向を同一とする長方形であるオブジェクト30及びオブジェクト40を、オブジェクト30及びオブジェクト40の間に余白を空けて表示する。
【0058】
プレビュー表示部140は、オブジェクト入力表示部100が利用者から新たなオブジェクトであるオブジェクト40の入力を受けたので、オブジェクト入力表示部100がオブジェクトを伸張させた結果作成される表の完成イメージをプレビュー画面上に表示する。例えば、オブジェクト30の外形が伸張されることにより、オブジェクト30の下辺は、オブジェクト40の上辺に外接する。また、オブジェクト40の外形が伸張されることにより、オブジェクト40の右辺は、編集対象の全てのオブジェクトのうち最も右辺が右側にあるオブジェクト30の右辺の延長線に重なる。このように、利用者が複数のオブジェクトを余白を空けて配列した場合であっても、その余白を詰めるように各オブジェクトを伸張し、表形式に整列することができる。
【0059】
図11は、利用者によりオブジェクト50が入力された場合に表示される編集画面及びプレビュー画面の一例を示す。編集画面にオブジェクト30及びオブジェクト40が表示されている状態において、オブジェクト入力表示部100は、利用者からオブジェクト50の入力を受ける。そして、オブジェクト入力表示部100は、オブジェクト30と、オブジェクト40と、オブジェクト50とを編集画面上に表示する。
【0060】
この結果、例えば、オブジェクト入力表示部100は、オブジェクト30、オブジェクト40、及びオブジェクト50を、オブジェクト30及びオブジェクト40の間、並びに、オブジェクト30及びオブジェクト50の間に余白を空けて表示する。また、オブジェクト40の上辺とオブジェクト50の上辺とは同一直線上になく、不揃いである。
【0061】
これに対して、プレビュー表示部140は、オブジェクト入力表示部100が利用者から新たなオブジェクトであるオブジェクト50の入力を受けたので、オブジェクト入力表示部100がオブジェクトを伸張させた結果作成される表の完成イメージをプレビュー画面上に表示する。
【0062】
例えば、オブジェクト30の外形が伸張されることにより、オブジェクト30の下辺は、オブジェクト40の上辺に外接する。また、オブジェクト50の外形が伸張されることにより、オブジェクト50の右辺は、編集対象の全てのオブジェクトのうち最も右辺が右側にあるオブジェクト30の右辺の延長線に重なる。また、オブジェクト50の上辺は、左右方向に隣接するオブジェクト40の上辺の延長線に重なる。このように、利用者が複数のオブジェクトを余白を空けて配列した場合であっても、その余白を詰めるように各オブジェクトを伸張し、表形式に整列することができる。また、各辺が同一直線上になく不揃いな場合には、各辺が同一直線上に重なるように整列することができる。
【0063】
図12は、利用者によりオブジェクト60が入力された場合に表示される編集画面及びプレビュー画面の一例を示す。編集画面にオブジェクト30、オブジェクト40、及びオブジェクト50が表示されている状態において、オブジェクト入力表示部100は、利用者からオブジェクト60の入力を受ける。そして、オブジェクト入力表示部100は、オブジェクト30と、オブジェクト40と、オブジェクト50と、オブジェクト60とを編集画面上に表示する。
【0064】
この結果、例えば、オブジェクト入力表示部100は、各オブジェクトを、オブジェクト30及びオブジェクト40の間、オブジェクト30及びオブジェクト50の間、並びに、オブジェクト30及びオブジェクト60の間に余白を空けて表示する。また、オブジェクト40、オブジェクト50、及びオブジェクト60の各々の上辺は、互いに同一直線上になく、不揃いである。
【0065】
これに対して、プレビュー表示部140は、オブジェクト入力表示部100が利用者から新たなオブジェクトであるオブジェクト60の入力を受けたので、オブジェクト入力表示部100がオブジェクトを伸張させた結果作成される表の完成イメージをプレビュー画面上に表示する。例えば、オブジェクト30の外形が伸張されることにより、オブジェクト30の下辺は、オブジェクト40の上辺に外接する。また、オブジェクト50の上辺は、左右方向に隣接するオブジェクト40の上辺の延長線に重なる。同様に、オブジェクト60の上辺は、左右方向に隣接するオブジェクト40の上辺の延長線に重なる。
【0066】
ここで、オブジェクト50の上辺は、オブジェクト60及びオブジェクト40のうち何れの上辺の延長線に重ねてもよいとも考えられる。しかしながら、オブジェクト50の上辺を、オブジェクト60の上辺の延長線に重ねてしまうと、オブジェクト40と、オブジェクト50及びオブジェクト60とが不揃いになってしまう。そこで、好ましくは、オブジェクト伸張部120は、オブジェクト40の上辺を、左右方向の直線上に配列される複数のオブジェクトのうち最も上辺が上側にあるオブジェクトであるオブジェクト40の上辺の延長線に重ねる。これにより、より多くのオブジェクトを同一の直線に沿って整列させることができる。
【0067】
図13は、利用者によりオブジェクト70が入力された場合に表示される編集画面及びプレビュー画面の一例を示す。編集画面にオブジェクト30、オブジェクト40、オブジェクト50、及びオブジェクト60が表示されている状態において、オブジェクト入力表示部100は、利用者からオブジェクト70の入力を受ける。そして、オブジェクト入力表示部100は、オブジェクト30と、オブジェクト40と、オブジェクト50と、オブジェクト60と、オブジェクト70とを編集画面上に表示する。
【0068】
この結果、例えば、オブジェクト入力表示部100は、各オブジェクトを、オブジェクト30及びオブジェクト40の間、オブジェクト30及びオブジェクト50の間、並びに、オブジェクト30及びオブジェクト60の間に余白を空けて表示する。また、オブジェクト40、オブジェクト50、及びオブジェクト60の各々の上辺は、互いに同一直線上になく、不揃いである。また、オブジェクト50及びオブジェクト70の間にも余白が空いている。
【0069】
一方、プレビュー表示部140は、オブジェクト入力表示部100が利用者から新たなオブジェクトであるオブジェクト70の入力を受けたので、オブジェクト入力表示部100がオブジェクトを伸張させた結果作成される表の完成イメージをプレビュー画面上に表示する。例えば、オブジェクト30の外形が伸張されることにより、オブジェクト30の下辺は、オブジェクト40の上辺に外接する。また、オブジェクト50の上辺は、左右方向に隣接するオブジェクト40の上辺の延長線に重なる。同様に、オブジェクト60の上辺は、左右方向に隣接するオブジェクト40の上辺の延長線に重なる。
【0070】
また、オブジェクト50の下辺は、オブジェクト70の上辺に外接する。しかしながら、オブジェクト60の下辺は、オブジェクト70の上辺より上側にあるので、オブジェクト60の下辺は、オブジェクト70の上辺の位置までしか伸張されない。同様に、オブジェクト70の右辺は、オブジェクト60の左辺より左側にあるので、オブジェクト60の左辺の位置までしか伸張されない。このため、表を表示すべき画面上の領域である編集画面で、整列された各オブジェクトに対応するセルが表示されている領域以外の領域が生じる。
【0071】
そこで、好ましくは、空白セル配置部130は、セルが表示されている領域以外の当該領域に、表示すべき内容を含まない空白セルを表示する。これにより、表全体の外形を例えば矩形等に整形することができる。
【0072】
図14は、利用者によりオブジェクト80が入力された場合に表示される編集画面及びプレビュー画面の一例を示す。編集画面にオブジェクト30、オブジェクト40、オブジェクト50、オブジェクト60、及びオブジェクト70が表示されている状態において、オブジェクト入力表示部100は、利用者からオブジェクト80の入力を受ける。そして、オブジェクト入力表示部100は、オブジェクト30と、オブジェクト40と、オブジェクト50と、オブジェクト60と、オブジェクト70と、オブジェクト80とを編集画面上に表示する。
【0073】
この結果、例えば、オブジェクト入力表示部100は、各オブジェクトを、オブジェクト30及びオブジェクト40の間、オブジェクト30及びオブジェクト50の間、並びに、オブジェクト30及びオブジェクト60の間に余白を空けて表示する。また、オブジェクト40、オブジェクト50、及びオブジェクト60の各々の上辺は、互いに同一直線上になく、不揃いである。また、オブジェクト50及びオブジェクト70の間、並びに、オブジェクト60及びオブジェクト80の間にも余白が空いている。
【0074】
一方、プレビュー表示部140は、オブジェクト入力表示部100が利用者から新たなオブジェクトであるオブジェクト80の入力を受けたので、オブジェクト入力表示部100がオブジェクトを伸張させた結果作成される表の完成イメージをプレビュー画面上に表示する。例えば、オブジェクト30の外形が伸張されることにより、オブジェクト30の下辺は、オブジェクト40の上辺に外接する。
【0075】
また、オブジェクト50の上辺は、左右方向に隣接するオブジェクト40の上辺の延長線に重なる。同様に、オブジェクト60の上辺は、左右方向に隣接するオブジェクト40の上辺の延長線に重なる。また、オブジェクト70の上辺は、左右方向の同一直線上に配列されたオブジェクト80の上辺の延長線に重なる。また、オブジェクト80の左辺は、上下方向の同一直線上に配列されたオブジェクト60の左辺に重なる。また、オブジェクト40及びオブジェクト70の下辺は、オブジェクト80の下辺に重なる。
【0076】
以上、図10から図14に示すように、本実施例における編集装置10によれば、各オブジェクトを、所定の方向の辺の位置を基準として整列することができると共に、オブジェクト間の余白を埋めるようにオブジェクトを伸張することができる。この際、整列の基準位置は、当初配列したオブジェクトの位置に基づいて自動的に決定されるので、利用者に対する作業負担は非常に小さい。また、表全体のレイアウトを、利用者がオブジェクトを配列した位置を反映しつつも、適度にシンプルな構造とすることができる。また、利用者は、新たにオブジェクトを入力する毎に、実際にオブジェクトが配列される編集画面とは別のプレビュー画面において、表の完成イメージを確認することができる。これにより、表作成の失敗を避け、作業能率を高めることができる。
【0077】
図15は、編集装置10として機能するコンピュータ500のハードウェア構成の一例を示す。コンピュータ500は、ホストコントローラ1082により相互に接続されるCPU1000、RAM1020、及びグラフィックコントローラ1075を有するCPU周辺部と、入出力コントローラ1084によりホストコントローラ1082に接続される通信インターフェイス1030、ハードディスクドライブ1040、及びCD−ROMドライブ1060を有する入出力部と、入出力コントローラ1084に接続されるBIOS1010、フレキシブルディスクドライブ1050、及び入出力チップ1070を有するレガシー入出力部とを備える。
【0078】
ホストコントローラ1082は、RAM1020と、高い転送レートでRAM1020をアクセスするCPU1000及びグラフィックコントローラ1075とを接続する。CPU1000は、BIOS1010及びRAM1020に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィックコントローラ1075は、CPU1000等がRAM1020内に設けたフレームバッファ上に生成する画像データを取得し、表示装置1080上に表示させる。例えば、RAM1020は、図1に示す頂点座標格納部110として機能してもよい。これに代えて、グラフィックコントローラ1075は、CPU1000等が生成する画像データを格納するフレームバッファを、内部に含んでもよい。
【0079】
入出力コントローラ1084は、ホストコントローラ1082と、比較的高速な入出力装置である通信インターフェイス1030、ハードディスクドライブ1040、及びCD−ROMドライブ1060を接続する。通信インターフェイス1030は、ネットワークを介して外部の装置と通信する。ハードディスクドライブ1040は、コンピュータ500が使用するプログラム及びデータを格納する。CD−ROMドライブ1060は、CD−ROM1095からプログラム又はデータを読み取り、RAM1020を介して入出力チップ1070に提供する。
【0080】
また、入出力コントローラ1084には、BIOS1010と、フレキシブルディスクドライブ1050や入出力チップ1070等の比較的低速な入出力装置とが接続される。BIOS1010は、コンピュータ500の起動時にCPU1000が実行するブートプログラムや、コンピュータ500のハードウェアに依存するプログラム等を格納する。フレキシブルディスクドライブ1050は、フレキシブルディスク1090からプログラム又はデータを読み取り、RAM1020を介して入出力チップ1070に提供する。入出力チップ1070は、フレキシブルディスク1090や、例えばパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して各種の入出力装置を接続する。
【0081】
コンピュータ500に提供されるプログラムは、フレキシブルディスク1090、CD−ROM1095、又はICカード等の記録媒体に格納されて利用者によって提供される。プログラムは、入出力チップ1070及び/又は入出力コントローラ1084を介して、記録媒体から読み出されコンピュータ500にインストールされて実行される。プログラムがコンピュータ500等に働きかけて行わせる動作は、図1から図14において説明した編集装置10における動作と同一であるから、説明を省略する。
【0082】
以上に示したプログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク1090、CD−ROM1095の他に、DVDやPD等の光学記録媒体、MD等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ500に提供してもよい。
【0083】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【図面の簡単な説明】
【0084】
【図1】図1は、編集装置10の構成を、機能ブロックに分類して示す。
【図2】図2は、編集装置10の動作フローを示す。
【図3】図3は、オブジェクト伸張部120がオブジェクトを編集する処理の詳細を示す。
【図4】図4は、オブジェクトの左辺又は上辺を伸張することにより整列する伸張整列処理1の詳細を示す。
【図5】図5は、オブジェクトの右辺又は下辺を伸張する伸張連接処理1の詳細を示す。
【図6】図6は、表示位置を算出する処理の詳細を示す。
【図7】図7は、オブジェクトの右辺を伸張することにより整列する伸張整列処理2の詳細を示す。
【図8】図8は、オブジェクトの左辺を伸張する伸張連接処理2の詳細を示す。
【図9】図9は、表示位置を算出する処理の詳細を示す。
【図10】図10は、利用者によりオブジェクト40が入力された場合に表示される編集画面及びプレビュー画面の一例を示す。
【図11】図11は、利用者によりオブジェクト50が入力された場合に表示される編集画面及びプレビュー画面の一例を示す。
【図12】図12は、利用者によりオブジェクト60が入力された場合に表示される編集画面及びプレビュー画面の一例を示す。
【図13】図13は、利用者によりオブジェクト70が入力された場合に表示される編集画面及びプレビュー画面の一例を示す。
【図14】図14は、利用者によりオブジェクト80が入力された場合に表示される編集画面及びプレビュー画面の一例を示す。
【図15】図15は、編集装置10として機能するコンピュータ500のハードウェア構成の一例を示す。
【符号の説明】
【0085】
10 編集装置
30 オブジェクト
40 オブジェクト
50 オブジェクト
60 オブジェクト
70 オブジェクト
80 オブジェクト
100 オブジェクト入力表示部
110 頂点座標格納部
120 オブジェクト伸張部
130 空白セル配置部
140 プレビュー表示部
500 コンピュータ

【特許請求の範囲】
【請求項1】
画面上でオブジェクトを編集する編集装置であって、
利用者から入力された内容を前記オブジェクトとして画面上に表示するオブジェクト入力表示部と、
前記オブジェクト入力表示部により表示された複数の前記オブジェクトのうち第1の前記オブジェクトの外形を、第2の前記オブジェクトと重ならない範囲で伸張させることにより、前記第1のオブジェクトの少なくとも一つの辺を前記第2のオブジェクトの一辺又は当該一辺の延長線に重ねるオブジェクト伸張部と
を備える編集装置。
【請求項2】
前記オブジェクト入力表示部は、各々が表のセルに表示すべき内容を含む前記複数のオブジェクトを前記画面上に表示し、
前記オブジェクト伸張部は、前記第1のオブジェクトの外形を伸張させることにより、前記第1のオブジェクトに対応するセルと前記第2のオブジェクトに対応するセルとが整列した表を前記画面上に作成する
請求項1記載の編集装置。
【請求項3】
表を表示すべき画面上の領域として予め定められた表示用領域のうち、前記オブジェクト伸張部により整列された各オブジェクトに対応するセルが表示されている領域以外の領域に、表示すべき内容を含まない空白セルを表示する空白セル配置部を更に備える
請求項2記載の編集装置。
【請求項4】
前記オブジェクト入力表示部が利用者から新たにオブジェクトの操作を受ける毎に、既存の複数のオブジェクトの各々に対し、前記オブジェクト伸張部がオブジェクトを伸張させた結果作成される表の完成イメージを画面上に表示するプレビュー表示部を更に備え、
前記オブジェクト伸張部は、表の作成指示を利用者から受けた場合に、前記複数のオブジェクトの各々を伸張させることにより、前記作成指示を受けた時点で前記プレビュー表示部により表示されている表を作成する
請求項2記載の編集装置。
【請求項5】
前記オブジェクト入力表示部は、前記複数のオブジェクトを、前記第1のオブジェクト及び前記第2のオブジェクトの間に余白を空けて表示し、
前記オブジェクト伸張部は、前記第1のオブジェクトの外形を伸張させることにより、前記第1のオブジェクトの少なくとも一つの辺を、前記第2のオブジェクトの何れかの辺に外接させる
請求項1記載の編集装置。
【請求項6】
前記オブジェクト入力表示部は、前記複数のオブジェクトとして、互いに縦方向及び横方向を同一とする複数の長方形を表示し、
前記オブジェクト伸張部は、前記第1のオブジェクトを縦方向及び横方向の少なくとも一方に伸長させる
請求項1記載の編集装置。
【請求項7】
前記画面上に表示しているオブジェクトの頂点の座標を格納する頂点座標格納部を更に備え、
前記オブジェクト伸張部は、前記頂点座標格納部に格納された頂点の座標を変更することにより前記オブジェクトの外形を伸張させる
請求項6記載の編集装置。
【請求項8】
前記オブジェクト入力表示部は、前記画面上の座標軸と平行な辺を有する複数の長方形を、前記複数のオブジェクトとして表示し、
前記オブジェクト伸張部は、何れかの前記オブジェクトの外形を伸張させることにより、上下方向の座標軸と平行な直線上に配列されている複数のオブジェクトの各々の左辺を、当該複数のオブジェクトの何れかの左辺の延長線に重ねる左辺伸張整列処理を行う
請求項1記載の編集装置。
【請求項9】
前記オブジェクト伸張部は、上下方向を示す座標軸と平行な直線上に配列されている複数のオブジェクトの各々の全体が、他のオブジェクトの右端よりも右側に表示されていることを条件として、当該複数のオブジェクトについて前記左辺伸張整列処理を行う
請求項8記載の編集装置。
【請求項10】
前記オブジェクト伸張部は、前記左辺伸張整列処理として、何れかの前記オブジェクトの外形を伸張させることにより、当該複数のオブジェクトのうち左辺が最も左側にあるオブジェクトの左辺の延長線に、当該複数のオブジェクトのうち他のオブジェクトの左辺を重ねる
請求項9記載の編集装置。
【請求項11】
前記オブジェクト伸張部は、前記左辺伸張整列処理を行った場合に、更に、当該複数のオブジェクトの何れかよりも全体が左側に表示されている各オブジェクトの外形を伸張させることにより、伸張させた当該オブジェクトの右辺を、当該複数のオブジェクトの何れかの左辺、又は、当該左辺の延長線に重ねる右辺伸張連接処理を行う
請求項8記載の編集装置。
【請求項12】
前記オブジェクト伸張部は、各オブジェクトが横書きの文字列を含む場合に、前記左辺伸張整列処理を行い、各オブジェクトが縦書きの文字列を含む場合に、上下方向を示す座標軸と平行な直線上に配列されている複数のオブジェクトの各々の右辺を、当該複数のオブジェクトの何れかの右辺の延長線に重ねる右辺伸張整列処理を行う
請求項8記載の編集装置。
【請求項13】
前記オブジェクト伸張部は、前記右辺伸張整列処理を行った場合に、更に、当該複数のオブジェクトの何れかよりも全体が右側に表示されている各オブジェクトの外形を伸張させることにより、伸張させた当該オブジェクトの左辺を、当該複数のオブジェクトの何れかの右辺、又は、当該右辺の延長線に重ねる左辺伸張連接処理を行う
請求項12記載の編集装置。
【請求項14】
前記オブジェクト入力表示部は、前記画面上の座標軸と平行な辺を有する複数の長方形を、前記複数のオブジェクトとして表示し、
前記オブジェクト伸張部は、何れかの前記オブジェクトの外形を伸張させることにより、左右方向の座標軸と平行な直線上に配列されている複数のオブジェクトの各々の上辺を、当該複数のオブジェクトの何れかの上辺の延長線に重ねる上辺伸張整列処理を行う
請求項1記載の編集装置。
【請求項15】
前記オブジェクト伸張部は、前記上辺伸張整列処理を行った場合に、更に、当該複数のオブジェクトの何れかよりも全体が上側に表示されている各オブジェクトの外形を伸張させることにより、伸張させた当該オブジェクトの下辺を、当該複数のオブジェクトの何れかの上辺、又は、当該上辺の延長線に重ねる右辺伸張連接処理を行う
請求項14記載の編集装置。
【請求項16】
画面上でオブジェクトを編集する編集装置としてコンピュータを機能させるプログラムであって、
前記コンピュータを、
利用者から入力された内容を前記オブジェクトとして画面上に表示するオブジェクト入力表示部と、
前記オブジェクト入力表示部により表示された複数の前記オブジェクトのうち第1の前記オブジェクトの外形を、第2の前記オブジェクトと重ならない範囲で伸張させることにより、前記第1のオブジェクトの少なくとも一つの辺を前記第2のオブジェクトの一辺又は当該一辺の延長線に重ねるオブジェクト伸張部と
して機能させるプログラム。
【請求項17】
コンピュータにより、画面上でオブジェクトを編集させる編集方法であって、
利用者から入力された内容を前記オブジェクトとして画面上に表示するオブジェクト入力表示段階と、
前記オブジェクト入力表示段階において表示された複数の前記オブジェクトのうち第1の前記オブジェクトの外形を、第2の前記オブジェクトと重ならない範囲で伸張させることにより、前記第1のオブジェクトの少なくとも一つの辺を前記第2のオブジェクトの一辺又は当該一辺の延長線に重ねるオブジェクト伸張段階と
を備える編集方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2006−107268(P2006−107268A)
【公開日】平成18年4月20日(2006.4.20)
【国際特許分類】
【出願番号】特願2004−295136(P2004−295136)
【出願日】平成16年10月7日(2004.10.7)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【復代理人】
【識別番号】100104156
【弁理士】
【氏名又は名称】龍華 明裕
【Fターム(参考)】