(57)【要約】【課題】本発明の課題は、表の特定の列を削除あるいは追加することで表の列の構成を変更して、変更した表を所定の幅に拡大や縮小する表組み編集装置、方法、プログラム、及び記録媒体を提供することである。【解決手段】列幅値を有する列を配列した表組みデータを用いる表組み編集装置において、指定した列を削除または追加する変更指示の入力を受け付けて、受け付けた変更指示に従って、前記表組みデータに対して、指定された列のデータを削除または追加する列編集手段と、該列編集手段が列を削除または追加した表組みデータに対して、各列の列幅値の比率を維持しながら、列幅値を調整して、列編集前の表の表幅値を維持する列幅調整手段と、を備えることを特徴とする表組み編集装置である。【選択図】図１
2010003046.tif 000002
【特許請求の範囲】
【請求項１】
列幅値を有する列を配列した表組みデータを用いる表組み編集装置において、
指定した列を削除または追加する変更指示の入力を受け付けて、受け付けた変更指示に従って、前記表組みデータに対して、指定された列のデータを削除または追加する列編集手段と、
該列編集手段が列を削除または追加した表組みデータに対して、各列の列幅値の比率を維持しながら、列幅値を調整して、列編集前の表の表幅値を維持する列幅調整手段と、
を備えることを特徴とする表組み編集装置。
【請求項２】
前記列幅調整手段は、
列編集前の表組みデータが有する各列の列幅値を全て加算して、列編集前の表の表幅値を算出する表幅算出手段と、
前記列編集手段が表から列を削除した場合には、前記表幅算出手段が算出した表幅値と一致するように、前記列編集手段が列を削除した表組みデータの各列幅値を拡大する列幅拡大手段と、
前記列編集手段が表に列を追加した場合には、前記表幅算出手段が算出した表幅値と一致するように、前記列編集手段が列を追加した表組みデータの各列幅値を縮小する列幅縮小手段と、
から構成される、
ことを特徴とする請求項１に記載の表組み編集装置。
【請求項３】
前記列幅拡大手段は、
列を削除された表組みデータの全ての列幅値を用いて各列の列幅値の比率を算出して、前記表幅算出手段が算出した表幅値に対して、前記算出した各列の列幅値の比率を適用して、表幅値を各列の列幅値の比率で按分して、対応する列の列幅値を算出し、
前記列幅縮小手段は、
追加された列の列幅値と列編集前の表組みデータが有する全ての列の列幅値を用いて列幅値の比率を算出して、表幅算出手段が算出した表幅値に対して、前記算出した各列の列幅値の比率を適用して、列編集前の表の表幅値を各列の列幅値の比率で按分して、対応する列の列幅値を算出する、
ことを特徴とする請求項２に記載の表組み編集装置。
【請求項４】
列幅値を有する列を配列した表組みデータを用いる表組み編集方法であって、
（１）指定した列を削除または追加する変更指示の入力を受け付けて、受け付けた変更指示に従って、表組みデータに対して、指定された列を削除または追加する列編集ステップと、
（２）列を削除または追加した表に対して、表の各列の列幅値の比率を維持しながら、列編集前の表の表幅値を保持するように、以下のステップを実行して各列の列幅値を調整する列幅調整ステップと、
（２−１）列編集前の表組みデータが有する各列の列幅値を全て加算して、列編集前の表の表幅値を算出する表幅算出ステップと、
（２−２）表から列を削除した場合には、前記表幅算出ステップで算出した表幅値と一致するように、列が削除された表組みデータの各列幅値を拡大する列幅拡大ステップと、
（２−３）表に列を追加した場合には、前記表幅算出ステップで算出した表幅値と一致するように、列が追加された表組みデータの各列幅値を縮小する列幅縮小ステップと、
を含んだ手順でなされることを特徴とする表組み編集方法。
【請求項５】
コンピュータに組込むことによって、コンピュータを請求項１から請求項３のいずれか１項に記載の表組み編集装置として動作させることを特徴とするコンピュータプログラム。
【請求項６】
請求項５に記載のコンピュータプログラムを記録したコンピュータ読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表組み編集を行う装置、方法、プログラム、及び記録媒体に関するものである。
本発明は特に、表組みを変更する作業において、表の体裁を維持するための調整作業の能率を向上させる場合に有用である。
【背景技術】
【０００２】
規則的な構造を持った情報は、表形式に編集（＝表組み）することで、読みやすい体裁にすることができる。
たとえば、カタログやチラシに掲載する商品情報は、商品名・商品コード・価格・商品の特徴などの規則的な構造を持ったテキスト情報であるので、これを表組みに編集することが適している。
以下に、表組み作業とその問題点を説明する。
《１．表の割付》
最近のカタログやチラシは、情報誌としての側面も備えており、表組みした商品情報と、読み物としての文章とを併記したものも多い。自動組版では、表や文章を紙面に割り付ける。
たとえば、特許文献１では、段組された紙面に表や文章を割り付けるときに、表が大きくて１つの段に収まらないときには、その表を複数の段に分割して、各段では無駄な空白が生じないように分割した表を拡大処理して割り付ける技術が開示されている。
【０００３】
《２．表の変更》
従来の自動組版における表組組版では、表の構成を変更した場合には、割付体裁が整わない事態が発生していた。たとえば、表の列を削除した場合には、表の幅は、削除した列の幅分だけ短くなり、当初の割付体裁が崩れてしまうということが生じた。
そこで、ＤＴＰ（Ｄｅｓｋ  Ｔｏｐ  Ｐｕｂｌｉｓｈｉｎｇ）編集者は、表の幅を元の状態に戻すための拡大処理の作業や、拡大処理した表の文字列の割り付ける修正処理の作業を行う必要があった。
また、逆に、表に列を追加した場合には、表の幅は、追加した列の幅分だけ長くなるので、ＤＴＰ編集者は、同様に、表の幅を元の状態に戻すための縮小処理の作業や、縮小処理した表の文字列の割り付ける修正処理の作業を行う必要があった。
【０００４】
【特許文献１】特開２００６−３３８２９４号公報（段落００６４−段落００７７、図７）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の技術では、表の特定の列を削除あるいは追加することで表の列の構成を変更して、変更した表を所定の幅に拡大や縮小することはできない。
【０００６】
本発明は以上のような点を解決するためになされたものであって、本発明の課題は、表の特定の列を削除あるいは追加することで表の列の構成を変更して、変更した表を所定の幅に拡大や縮小する表組み編集装置、方法、プログラム、及び記録媒体を提供することである。
【課題を解決するための手段】
【０００７】
本発明は、以下の各態様に記載の手段により、前記課題を解決する。
すなわち、本願の第１の発明は、列幅値を有する列を配列した表組みデータを用いる表組み編集装置において、指定した列を削除または追加する変更指示の入力を受け付けて、受け付けた変更指示に従って、前記表組みデータに対して、指定された列のデータを削除または追加する列編集手段と、該列編集手段が列を削除または追加した表組みデータに対して、各列の列幅値の比率を維持しながら、列幅値を調整して、列編集前の表の表幅値を維持する列幅調整手段と、を備えることを特徴とする表組み編集装置である。
【０００８】
このように、表中の列を削除したり、表に列を追加したりしても、表組みにて当初設定された表の幅を維持することが可能である。従って、表の列を追加・削除しても、表のデザイン性を失う事なく自動的に表組の体裁を整えることが可能である。
【０００９】
本願の第２の発明は、前記列幅調整手段は、列編集前の表組みデータが有する各列の列幅値を全て加算して、列編集前の表の表幅値を算出する表幅算出手段と、前記列編集手段が表から列を削除した場合には、前記表幅算出手段が算出した表幅値と一致するように、前記列編集手段が列を削除した表組みデータの各列の列幅値を拡大する列幅拡大手段と、前記列編集手段が表に列を追加した場合には、前記表幅算出手段が算出した表幅値と一致するように、前記列編集手段が列を追加した表組みデータの各列の列幅値を縮小する列幅縮小手段と、から構成される、ことを特徴とする請求項１に記載の表組み編集装置である。
【００１０】
本願の第３の発明は、前記列幅拡大手段は、列を削除された表組みデータの全ての列幅値を用いて各列の列幅値の比率を算出して、前記表幅算出手段が算出した表幅値に対して、前記算出した各列の列幅値の比率を適用して、表幅値を各列の列幅値の比率で按分して、対応する列の列幅値を算出し、前記列幅縮小手段は、追加された列の列幅値と列編集前の表組みデータが有する全ての列の列幅値を用いて列幅値の比率を算出して、表幅算出手段が算出した表幅値に対して、前記算出した各列の列幅値の比率を適用して、列編集前の表の表幅値を各列の列幅値の比率で按分して、対応する列の列幅値を算出する、
ことを特徴とする請求項２に記載の表組み編集装置である。
【００１１】
本願の第４の発明は、列幅値を有する列を配列した表組みデータを用いる表組み編集方法であって、
（１）指定した列を削除または追加する変更指示の入力を受け付けて、受け付けた変更指示に従って、表組みデータに対して、指定された列を削除または追加する列編集ステップと、
（２）列を削除または追加した表に対して、表の各列の列幅値の比率を維持しながら、列編集前の表の表幅値を保持するように、以下のステップを実行して各列の列幅値を調整する列幅調整ステップと、
（２−１）列編集前の表組みデータが有する各列の列幅値を全て加算して、列編集前の表の表幅値を算出する表幅算出ステップと、
（２−２）表から列を削除した場合には、前記表幅算出ステップで算出した表幅値と一致するように、列が削除された表組みデータの各列の列幅値値を拡大する列幅拡大ステップと、
（２−３）表に列を追加した場合には、前記表幅算出ステップで算出した表幅値と一致するように、列が追加された表組みデータの各列の列幅値を縮小する列幅縮小ステップと、
を含んだ手順でなされることを特徴とする表組み編集方法である。
【００１２】
本願の第５の発明は、コンピュータに組込むことによって、コンピュータを請求項１から請求項３のいずれか１項に記載の表組み編集装置として動作させることを特徴とするコンピュータプログラムである。
【００１３】
本願の第６の発明は、請求項５に記載のコンピュータプログラムを記録したコンピュータ読取り可能な記録媒体である。
【発明の効果】
【００１４】
本願発明によれば、表のデザイン性を失う事なく自動的に表組の体裁を整えることが可能である。
【発明を実施するための最良の形態】
【００１５】
以下、図面等を参照しながら、本発明の実施の形態について、更に詳しく説明する。
【００１６】
図１は、本発明による表組み編集装置１００の概要を説明する図である。
【００１７】
表組み編集装置１００は、既存の文書編集プログラムを備えたパーソナルコンピュータに、後述する専用プログラムを搭載したものである。
表組み編集装置１００は、表示部１０３と入力部１０２を備える。入力部１０２は、マウス１０２ａやキーボード１０２ｂからなる。
【００１８】
表組み編集装置１００は、表組みデータを記憶する記憶部を有する。
表組みデータの例としては、商品カタログの商品情報を表に割り付けたデータなどがある。
【００１９】
図２は表組み編集装置１００の大まかな処理の流れを説明する。
ここで、表とは、列方向と行方向に配列された升目と、升目に配列されたデータ（たとえあば、文字列や画像）から構成されるものである。列方向に配列された升目を、列と称する。
《１．表の表示》
ＤＴＰ編集者は、表組み編集装置１００の表示部に、表組みデータを用いて表を表示する。（図２（１））。
《２．列の変更》
ＤＴＰ編集者は、表を構成する列を削除する変更指示、あるいは、列を追加する変更指示を入力する（同（２））。
表組み編集装置１００は、表示された表に対して、変更指示に基づいて、列の削除や追加をして、変更前の表の表幅値になるように各列の列幅値を調整した表を表示する（同（３））。
【００２０】
なお、列が削除された場合には、表組み編集装置１００は、残された列の幅の比率を維持しながら、列幅値を拡大して、変更前の表（以下、列編集前の表）の表幅値にする。
列が追加された場合には、表組み編集装置１００は、各列の列幅値の比率を維持しながら、列幅値を縮小して、列編集前の表の表幅値にする。
【００２１】
図３と図４を用いて、表の列を追加・削除変更の説明をする。
【００２２】
図３は、表の列を削除するときの例を説明する図である。
【００２３】
図３の（ａ）には、列編集前の表１９ａが例示されている。
変更前の表１９ａは、４つの列９１ａ／ｂ／ｃ／ｄから構成されている。各列９１ａ／ｂ／ｃ／ｄは、列に割り付けられた文字列の数に応じて列幅値が設定されている。
【００２４】
図３の（ｂ）には、表の列を削除した表１９ｂが例示されている。
列を削除した表１９ｂは、列編集前の表１９ａから、列９１ｄを削除した状態のもので列幅値調整前である。
列を削除した表（以下、列幅値調整前の表）１９ｂは、３列９１ａ／ｂ／ｃから構成されている。
【００２５】
図３の（ｃ）には、列幅値調整をした表１９ｃが例示されている。
列幅値調整後の表１９ｃは、列幅値調整前の表１９ｂを用いて列幅値調整をした表である。
列幅値調整後の表１９ｃの３列９１ａ／ｂ／ｃの幅の比率は、列幅値調整前の表１９ｂの３列９１ａ／ｂ／ｃの幅の比率と等しい。
列幅値調整表１９ｃの表幅は、列編集前の表１９ａの幅と等しい。
【００２６】
図４は、表の列を追加するときの例を説明する図である。
【００２７】
図４の（ａ）には、列編集前の表１９ａが例示されている。
変更前の表１９ａは、３列９１ａ／ｂ／ｃから構成されている。各列９１ａ／ｂ／ｃは、列に割り付けられた文字列の数に応じて列幅値が設定されている。
【００２８】
図４の（ｂ）には、列を追加した表１９ｂが例示されている。
列を追加した表１９ｂは、列編集前の表１９ａに、列９１ｄを追加した状態のもので列幅値調整前である。
【００２９】
図４の（ｃ）には、列幅値調整をした表１９ｃが例示されている。
列を追加した表１９ｂは、４列９１ａ／ｂ／ｃ／ｄから構成されている。
列幅値調整をした表１９ｃは、列幅値調整前の表１９ｂから列幅値調整をした表である。
列幅値調整をした表１９ｃの４列１９３ａ／ｂ／ｃ／ｄの幅の比率は、列幅値調整前の表１９ｂの４列１９１ａ／ｂ／ｃ／ｄの幅の比率と等しい。
列幅値調整表１９ｃの表幅は、列編集前の表１９ａの幅と等しい。
【００３０】
図５は、表組データを説明する図である。
図５の（ａ）は、表組データの形式である。
表組データ１９１は、表組み定義部１９１ａと割付文字部１９１ｂとから構成される。
表組み定義部１９１ａは、最大列数と、列幅の値の集合とを有する。
なお、列幅の値の集合において、列幅の値の配列は、表の列の配列に対応している。
最大列数は、整数値である。最大列数とは、表組みが可能な最大の列の数である。
列幅の値は、数値である。
割付文字部１９１ｂは、各列に割り付ける文字列である。
文字列は、表の升目に配列された文字列を、行方向に並べたものである。
【００３１】
図５の（ｂ）は、表組データの例である。
表組み定義部１９１ａは、「4、30、40、50、60」である。
割付文字部１９１ｂは、「番号、サイス、色、味、12-1、L、赤、甘い、12-2、M、青、酸っぱい、・・・」である。
表組データの例の意味は、表組みできる最大の列の個数が、「4」個で、表組みされている列の幅の値が、それぞれ「30」、「40」、「50」、「60」（単位ポイント）である４列の表であるということである。また、この表の各行に割り付けられた文字は、「番号  サイス  色  味」「  12-1  L  赤  甘い」、「12-2  M  青  酸っぱい」などということである。
【００３２】
図６は、表組み編集装置１００の詳細な構成図である。
表組み編集装置１００は、ＣＰＵ１０１と、入力部１０２と、表示部１０３と、記憶部１０９と、専用プログラムと、備える。
【００３３】
ＣＰＵ１０１は、中央演算装置である。
入力部１０２は、マウス１０２ａやキーボード１０２ｂである。
入力部１０２は、キーボード１０２ｂやマウス１０２ａや表示部１０３に表示されたソフトキーボードを用いてもよい。
表示部１０３は、液晶表示装置や有機ＥＬ表示装置である。
【００３４】
記憶部１０９は、半導体メモリや磁気メモリである。
記憶部１０９は、表組みデータ１９１と、専用プログラムとを記憶する。
表組みデータ１９１は、列データから構成されるデータである。
【００３５】
このほかに、列編集手段１１０と、列幅調整手段１２０と、を備える。これらの各手段は、それぞれの専用プログラムによって実現され、専用プログラムがＣＰＵ１０１に解釈・実行されることによって機能する。
【００３６】
列編集手段１１０は、指定した列を削除または追加する変更指示の入力を受け付けて、受け付けた変更指示に従って、表組みデータ１９１に対して、指定された列のデータを削除または追加する。
たとえば、列を削除する変更指示の入力を受け付けた場合には、列編集手段１１０は、表組み定義部１９１ａに対して、削除された列の列幅値を削除し、割付文字部１９１ｂに対して、削除された列に割り付けられた文字列を削除する。
あるいは、列を追加する変更指示の入力を受け付けた場合には、列編集手段１１０は、追加された列の列幅値を算出して、表組み定義部１９１ａの追加された列の列幅値を格納する位置に追加し、追加された列に割り付ける文字列を割付文字部１９１ｂに追加する。
【００３７】
列幅調整手段１２０は、表幅算出手段１３０と、列幅拡大手段１４０と、列幅縮小手段１５０と、から構成される。
【００３８】
列幅調整手段１２０は、列編集手段１１０が列データを削除または追加した表組みデータ１９１に対して、表組みデータの各列の列幅値の比率を維持しながら、列編集前の表の表幅値を保持するように、列幅値を調整する。
【００３９】
表幅算出手段１３０は、列編集前の表組みデータが有する列幅値を全て加算して、列編集前の表の表幅値を算出する。
列編集手段１１０が表から列を削除した場合には、列幅拡大手段１４０は、表幅算出手段１３０が算出した表幅値と一致するように、列編集手段１１０が列を削除した表組みデータ１９１の各列幅値を拡大する。
列編集手段１１０が表に列を追加した場合には、列幅縮小手段１５０は、表幅算出手段１３０が算出した表幅値と一致するように、列編集手段１１０が列を追加した表組みデータ１９１の各列幅値を縮小する。
【００４０】
図７は、表組み変更処理のフローチャートである。
（１）表組み編集装置１００は、表組みデータを用いて、表を表示する。（ステップＳ１１０）
（２）列編集手段１１０は、指定した列を削除または追加する変更指示の入力を受け付ける。（ステップＳ１２０）
（３）受け付けた変更指示は、列の追加か、削除かを判定する。
列を削除する変更指示の入力を受け付けた場合には、ステップＳ１４０に進む。
列を追加する変更指示の入力を受け付けた場合には、ステップＳ１４０に進む。（ステップＳ１３０）
（４）列を追加した表の列数が、表組データ１９１が有する最大数表組み定義部１９１ａに含まれる最大列数を超えるか否かを判定する。
超えない場合には、ステップＳ１５０に進む。超えた場合には、ステップＳ１９０に進む。（ステップＳ１４０）
（５）列編集手段１１０は、追加された列に割り付ける文字列を、追加された列の位置に相当する割付文字部１９１ｂに、追加する。次に、列編集手段１１０は、追加された列に割り付ける文字列を用いて、追加された列の幅値を算出する。（ステップＳ１５０）
（６）表幅算出手段１３０は、列編集前の表組みデータが有する各列の列幅値を全て加算して、列編集前の表組みの表幅値を算出する。（ステップＳ１６０）
（７）列幅縮小手段１５０は、表幅算出手段１３０が算出した表幅値と一致するように、列編集手段１１０が列を追加した表組みデータ１９１の各列の列幅値を縮小して、終了する。（ステップＳ１７０）
（８）表組み編集装置１００は、列を追加できない旨の警告表示をして、終了する。（ステップＳ１８０）
（９）表幅算出手段１３０は、列編集前の表組みデータが有する各列の列幅値を全て加算して、列編集前の表組みの表幅値を算出する。
（ステップＳ１９０）
（１０）列幅拡大手段１４０は、表幅算出手段１３０が算出した表幅値と一致するように、列編集手段１１０が列を削除した表組みデータ１９１の各列幅値を拡大して、終了する。（ステップＳ２００）
【図面の簡単な説明】
【００４１】
【図１】本発明による表組み編集装置１００の概要を説明する図
【図２】表組み編集装置１００の大まかな処理の流れを説明する。
【図３】表の列を削除するときの例を説明する図
【図４】表の列を追加するときの例を説明する図
【図５】表組データを説明する図
【図６】表組み編集装置１００の詳細な構成図
【図７】表組み変更処理のフローチャート
【符号の説明】
【００４２】
１００  表組み編集装置
１９ａ  列編集前の表、変更前の表
１９ｂ  列幅調整前の表
１９ｃ  列幅調整後の表
９１ａ／ｂ／ｃ／ｄ  列
１１０  列編集手段
１２０  列幅調整手段
１３０  表幅算出手段
１４０  列幅拡大手段
１５０  列幅縮小手段
１９１  表組みデータ
１９１ａ  表組み定義部
１９１ｂ  割付文字部
【図１】
2010003046.tif 000003
【図２】
2010003046.tif 000004
【図３】
2010003046.tif 000005
【図４】
2010003046.tif 000006
【図５】
2010003046.tif 000007
【図６】
2010003046.tif 000008
【図７】
2010003046.tif 000009