JP5043769B2 - 文書レイアウト編集装置、文書レイアウト編集方法、及びコンピュータプログラム - Google Patents
文書レイアウト編集装置、文書レイアウト編集方法、及びコンピュータプログラム Download PDFInfo
- Publication number
- JP5043769B2 JP5043769B2 JP2008182046A JP2008182046A JP5043769B2 JP 5043769 B2 JP5043769 B2 JP 5043769B2 JP 2008182046 A JP2008182046 A JP 2008182046A JP 2008182046 A JP2008182046 A JP 2008182046A JP 5043769 B2 JP5043769 B2 JP 5043769B2
- Authority
- JP
- Japan
- Prior art keywords
- distance
- page
- document
- objects
- layout
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/106—Display of layout of documents; Previewing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Processing Or Creating Images (AREA)
- Document Processing Apparatus (AREA)
- Editing Of Facsimile Originals (AREA)
Description
前者の方法では、ユーザは、オブジェクト間の距離に注意しながら各種のオブジェクトを配置してレイアウトを行う必要がある。
一方、後者の方法では、仮に、1文書を取り込んだ結果、オブジェクト間の距離が統一的な規則になっていたとしても、複数の文書をマージ(merge)すると、複数の異なる規則が文書内で共存することになり得る。例えば、ページ境界を跨いでオブジェクトを移動し、複数の文書をページ毎にマージするという技術を念頭に置いた場合、複数の規則が同一ページ内で共存することが起こり得る。これはオブジェクト間の距離の規則の不統一に繋がる。
前述した特許文献1に記載の技術によれば、イメージ画像として取りこんだ文書の文字列の間隔を均一にすることはできる。しかしながら、一般的に文書上の表現においては、単純に全ての間隔を均一にすればよいのではなく、例えば、タイトル文字列と本文段落、本文段落と挿入図の間隔等、意味を持ってオブジェクトの間隔の大きさを使い分けることが必要である。この使い分けが1文書におけるオブジェクト間の距離の規則となる。特許文献1に記載の技術では、このように、複数のオブジェクト間の距離を使い分けることができない。
また、前述した特許文献2に記載の技術おいても、文字オブジェクトの視認上の行間の連続性だけが問題とされており、文書全体にわたるオブジェクトの距離の規則の統一という問題を解決するものにはなり得ない。
しかしながら、オブジェクトを個々に選択し位置を変更する作業は煩雑である。更に、統一感をもったレイアウトを設計するには、レイアウト技能の熟練を要する。
また、文書を取り込んでPDFに変換する場合、取り込んだ元々の文書にもレイアウト上の意図があるはずである。そこで、できるだけ元の文書のレイアウトが持っていたオブジェクト間の距離の規則を大きく崩さずに全体をレイアウトし直すことが望ましい。しかしながら、そのような修正作業はきわめて煩雑で困難である。
(第1の実施形態)
以下に、図面を参照しながら、本発明の第1の実施形態について説明する。
図1は、ページレイアウトを実行する文書レイアウト編集装置を有するシステムの構成の一例を示す図である。
図1において、コンピュータモジュール101には、入力/出力インタフェイス(I/Oインタフェイス)143を介して、キーボード132やマウス133のようなポインティングデバイス等の入力装置が接続される。また、コンピュータモジュール101には、ディスプレイ装置144や、状況に応じてはローカルプリンタ145を含む出力装置が接続される。入力/出力インタフェイス(I/Oインタフェイス)138は、コンピュータモジュール101をネットワーク107に接続し、コンピュータモジュール101を、外部の他のコンピュータ装置と通信可能に接続する。ネットワーク107としては、例えば、ローカルエリアネットワーク(LAN)やワイドエリアネットワーク(WAN)やインターネットが挙げられる。
更に、コンピュータモジュール101は、例えばハードディスクドライブ(HDD)140やフレキシブルディスクドライブ(FDD)141を含む記憶装置139を有している。図1には示していないが、磁気テープドライブ等が記憶装置139に含まれることもある。CD−ROMドライブ142は、不揮発性のデータソースとして提供される。
コンピュータモジュール101は、LINUX(登録商標)やWINDOWS(登録商標)のようなオペレーションシステムや、相互接続バス134を介して通信を行うコンピュータモジュール101のコンポーネント135〜143を利用して処理を実行する。
以下に示すフローチャートで示された手順を実現するソフトウェアは、例えば記憶装置139を含む"コンピュータモジュール101の可読媒体"に格納される。ソフトウェアは、コンピュータモジュール101の可読媒体からメモリユニット136にロードされ、プロセッサユニット(CPU)135によって実行される。コンピュータモジュール101でコンピュータプログラム製品を使用することにより、文書レイアウト編集装置を、ドキュメントのレイアウト編集に有利な装置として作動することができる。
図2に示すオブジェクトリスト200は、例えばHDD140に格納される。本実施形態では、コンピュータモジュール101は、図2に示すようなオブジェクトリスト200を用いることにより、文書内のオブジェクトの情報を管理する。図2に示すように、各オブジェクトの情報がリスト構造になってオブジェクトリスト200に格納されている。また、各オブジェクトの情報には、オブジェクトID201と、オブジェクト種類202と、左上座標203と、右下座標204と、オブジェクト固有情報205とが含まれている。ここで、左上座標203及び右下座標204は、オブジェクトの位置を示す情報である。
図3に示すように、左上座標203aが(20,34)、右下座標204aが(81,65)の位置にある長方形のオブジェクト301の情報は、図3の右図に示す内容でオブジェクトリスト200に格納(登録)される。
次に、ステップS502において、レイアウト処理部は、新しいオブジェクトグループGを生成する。ここで、オブジェクトグループGは、オブジェクトリストLOと同等の形式を有し、且つ、レイアウト処理部が1つのオブジェクトとして操作することのできるデータ形式を有する。
次に、ステップS503において、レイアウト処理部は、生成したオブジェクトグループGに、ステップS501で取得したオブジェクトを追加する。
次に、ステップS504において、レイアウト処理部は、オブジェクトグループGに追加したオブジェクトを、オブジェクトリストLOから削除する。
次に、ステップS512において、レイアウト処理部は、オブジェクトグループGの中のオブジェクトGOを1つ取得する。
次に、ステップS513において、レイアウト処理部は、オブジェクトグループGの中から、オブジェクトGOを取得できたか否かを判定する。この判定の結果、オブジェクトグループGの中から、オブジェクトGOを取得できない場合には、前述したステップS502に戻る。
一方、オブジェクトグループGの中から、オブジェクトGOを取得できた場合には、ステップS514に進む。ステップS514に進むと、レイアウト処理部は、ステップS511で取得したオブジェクトPOと、ステップS512で取得したオブジェクトGOとの間の垂直方向の距離を計算する。
図6に示すように、本実施形態では、オブジェクト間の距離とは、オブジェクト601、602を包む外接矩形の間の最短距離のことをいう。図6に示す例では、オブジェクト601は長方形のオブジェクトであるのに対し、オブジェクト602は楕円のオブジェクトである。したがって、レイアウト処理部は、楕円のオブジェクト602の外接矩形603を作成し、この外接矩形603と長方形のオブジェクト601との垂直方向の最短距離604を、2つのオブジェクト601、602の間の垂直方向の距離として計算する。
ここで閾値とは、システムで定められる一定の大きさの距離のことであり、本実施形態では、この距離の閾値でブロック化するオブジェクト同士を垂直方向で分離している。
図7に示すように、ページ701上で、オブジェクト711とオブジェクト712とがブロック化され、1つのブロック721にブロック化されている。同様に、オブジェクト713とオブジェクト714とが1つのブロック722に、オブジェクト715とオブジェクト716とが1つのブロック723に夫々ブロック化されている。尚、オブジェクト711とオブジェクト712はとなりあっているため、両者の垂直方向の差異は0とみなされる。その結果、両者の垂直方向の差異が閾値値以内に収まるため、両者がブロック化されている。
図7に示すように、本実施形態では、ページレイアウトを変更するに際し、最も小さい区分けによるオブジェクトの距離を全て考慮するのではなく、ある程度のまとまったオブジェクト群からなる「ブロックの距離」を考慮するようにしている。そのため、本実施形態では、ページレイアウトを変更(設定)する手順においては、ブロックを変更(設定)対象とする場合を例に挙げて説明することにする。尚、本発明では、「オブジェクト」と記載する場合、図7に示したようにして複数のオブジェクトを纏めた「ブロック(以下の説明では、オブジェクトブロックと称することもある)」のことも包含しているものとする。
図9は、図8に示したオブジェクト間の垂直方向(縦方向)の距離のインデックスと、実際のオブジェクト間の垂直方向(縦方向)の距離との対応の一例を表形式で示す図である。
図10の下部に、前述した距離1〜8がインデックス(index)として並べられている。一方、デンドログラムの縦軸は、各オブジェクト間の距離(distance)である。例えば、図8及び図9を参照すると、距離1と距離7の値の差は「1」しかなく、これらの距離1、7を、最も近い値を有する1つのグループとみなすことができる。そこで、図10に示すように、距離1、7の2つのインデックスが最初のグループ(クラスタ1)を形成している。次に近い距離は、距離2と距離4、或いは距離4と距離5であり、どちらも値の差が「2」である。そこで、これら距離2、4、5の3つのインデックスが新しいグループ(クラスタ2)を形成している。
更に、図10に示すデンドログラムのように、クラスタ1とクラスタ2とをさらに統一したクラスタ3を形成し、このクラスタ3と距離8とを統一する、というように、統一する距離のインデックスの数を順次増やしていくことができる。どの程度距離を統一するかは、ユーザが選択すべき項目である。全ての距離を完全に統一してしまうと、元々ユーザがあえて異なる距離にしたいと思っていた部分まで統一してしまい、ページレイアウトとしてはメリハリのないレイアウトになってしまう虞がある。そこで、本実施形態では、ある程度近い値の距離のグループ同士を別々に統一し、値の差の大きい距離のグループを統一せずにそのままの状態にすることを1つ目の目的としている。
図11に示す例では、ユーザインタフェイス領域1101の中を自由に動かせるボタン1102を、ユーザがマウスポインタ1103で操作する。
以上のように本実施形態では、例えば、距離調整ユーザインタフェイス1100を用いることにより、操作手段の一例が実現される。
図12(a)に示す初期状態から、図12(b)に示すように、ユーザがユーザインタフェイス領域1101上でボタン1102を上に寄せた状態でやや右に移動すると、デンドログラムの第1階層まで距離が統一される。すなわち、距離1、7が同じ代表値に統一される。ボタン1102は上寄せであるため、距離1、7のうち小さい方の値(=「5」)が代表値となり、距離1、7が、この代表値に統一される(ページ800bを参照)。
このようにして、図12(d)、図13(a)〜図13(c)に示すように、ユーザは、ばらついていたオブジェクト間の距離が徐々に統一され、ページレイアウトが整えられていく状態を見ることができる(ページ800d〜800gを参照)。図13(c)に示すページ800gでは、全ての距離1〜7が、同じ小さな値(=「5」)に統一されてしまうが、元々のレイアウトの製作意図からすると、図13(b)に示す状態で距離の統一を止めるのが適切である可能性が高い。
図14及び図15に示すように、デンドログラムの階層の上り方は、図12及び図13に示したものと同じであるが、各図の状態で得られる代表値は、クラスタ中の距離の値を平均した値になっている。そのため、図14及び図15に示したページレイアウトは、図12及び図13に示したものよりも、オブジェクト間の距離が開いたものになっている(図12、図13のページ800b〜800gと、図14、図15のページ800h〜800mを参照)。
図16及び図17に示すように、デンドログラムの階層の上り方は、図12及び図13、図14及び図15と同じであるが、各図の状態で得られる代表値は、クラスタ中の距離の値のうち、もっとも大きい値になっている。そのため、図16及び図17に示したページレイアウトは、図14及び図15に示したものよりも、オブジェクト間の距離が更に開いたものになっている(図14、図15のページ800h〜800mと、図16、図16の800o〜800s、800uを参照)。
具体的に説明すると、図17(b)に示すページ800sのようにオブジェクトがページ800sからはみ出している場合には、オブジェクト間の距離の代表値を変更してページ800tのように、全てのオブジェクトがページ800tに収まるようにする。また、図17(c)に示すページ800uのようにオブジェクトがはみ出している場合にも、オブジェクト間の距離の代表値を変更してページ800vのように、全てのオブジェクトがページ800vに収まるようにする。
オブジェクト間の距離の代表値を変更する方法として、例えば次の方法がある。すなわち、対象となるページ内の全てのオブジェクトを垂直方向(上下方向)に並べたサイズ(高さ)をページの高さから引いた値(余白部分)を、はみ出した状態での各オブジェクト間の距離の大きさの比率によって案分するという方法等がある。
以上のように、本実施形態の距離調整ユーザインタフェイス1100では、「どの程度距離を統一するか」ということと、「近い距離同士をどの値に統一するか」ということとを同時に設定できるようにしている。
尚、本実施形態では、距離調整ユーザインタフェイス1100(ボタン1102)の操作に応じて、図12〜図17に示すようなページ800a〜800vの様子が、ディスプレイ装置144に逐次表示されるようにしている。
ステップS1801において、レイアウト処理部は、図6に示したようなオブジェクト間の距離の定義に基づいて、全てのオブジェクトブロック間の距離を抽出し、オブジェクトブロックにインデックスを付ける処理を行う。ここでのオブジェクトブロックは、図5に示したフローチャートによって、オブジェクトをある程度のまとまりにグループ化された状態を想定する。そのため、単に「オブジェクト」と記載された場合であっても、その記載を「オブジェクトブロック」とすることができる。一方、「オブジェクトブロック」と記載された場合であっても、その記載を単なる「オブジェクト」とすることができる。
以上のように本実施形態では、例えば、ステップS1801の処理を行うことにより、抽出手段の一例が実現される。
図21は、オブジェクトブロックと距離の情報をまとめるリストLBの構造の一例を示す図である。
図21において、リストLB内には、オブジェクトID2101と、オブジェクトID2101により識別されるオブジェクトの位置2102とが格納される。更に、リストLB内には、オブジェクトID2101により識別されるオブジェクトとそのオブジェクトに続くオブジェクトとの間の距離を識別する距離ID2103と、距離ID2103で識別される距離の大きさ2104とが格納される。これらの情報が繰り返し連なってリストLBに格納される。
そして、ステップS1804において、レイアウト処理部は、距離調整ユーザインタフェイス1100の入力状態をオペレーティングシステムから取得する。
次に、ステップS1805において、レイアウト処理部は、距離調整ユーザインタフェイス1100の入力状態を示す情報と、ステップS1802で得られたリストLBの情報とをクラスタ分析処理部に渡す。そして、クラスタ分析処理部は、これらの情報に基づいて、クラスタ分析処理を実行する。このステップS1805の処理の詳細については、図19を参照しながら後述する。
そして、クラスタ分析処理が完了したら、ステップS1806において、レイアウト処理部は、次の処理を行う。すなわち、レイアウト処理部は、クラスタ分析処理の実行結果を、クラスタ分析処理部から取得し、取得した情報に基づいて、図21に示したリストLBにおける"オブジェクト間の距離の大きさ2104"の値を、最終代表値に変更する。
次に、ステップS1807において、再レイアウト処理部は、リストLBの情報と、クラスタ分析処理の実行結果の情報とをレイアウト処理部から受け取る。そして、受け取った情報に基づいて、オブジェクトブロックをページ上で再レイアウトする再レイアウト処理を実行する。このステップS1807の処理の詳細については、図19を参照しながら後述する。
クラスタ分析処理は、現在のページレイアウトに基づくオブジェクトの位置を分析し、距離調整ユーザインタフェイス1100の状態によって、オブジェクト間の距離の値を調整する処理である。クラスタ分析処理の実行が、クラスタ分析処理部において開始されると、まず、図19のステップS1901に処理が移行するようになっている。
次に、ステップS1902において、クラスタ分析処理部は、そのリストLDに基づいて、全ての距離の大きさの値をペアにし、各ペアでの距離の値の差を計算する。
次に、ステップ1903において、クラスタ分析処理部は、リストLDに、距離の値のペアが1ペア以上残っているか否かを判定する。
次に、ステップS1905において、クラスタ分析処理部は、ステップS1904で見つけたペアの値をリストLDから削除する。
次に、ステップS1906において、クラスタ分析処理部は、ステップS1905でリストLDから削除した"2つの距離の値"を纏めて、クラスタを生成する。
以上のように本実施形態では、例えば、ステップS1906の処理を行うことにより纏め手段の一例が実現される。
次に、ステップS1908において、クラスタ分析処理部は、ステップS1906で生成したクラスタを、オブジェクトの間の新しい距離の要素としてリストLDに追加する(1908)。
次に、ステップS1909において、クラスタ分析処理部は、クラスタ化済みの距離のインデックスとクラスタの情報とをリストLRに保存する。
図22は、クラスタに関する情報を纏めるリストLRの構造の一例を示す図である。
図22において、クラスタ化されたオブジェクト間の距離を識別する距離ID2201〜2204等が、クラスタを識別する情報と関連付けられてリスト化される。そして、その距離ID2201〜2204に対応するクラスタを識別するクラスタID2203、2204等が、そのクラスタにおける代表値(統一値)と関連付けられてリスト化される。
この判定の結果、計算済みのクラスタの階層と、距離調整ユーザインタフェイス1100の入力状態とが一致しない場合には、前述したステップS1902に戻る。そして、クラスタが距離の要素として追加されたリストLDも対象に含めて、再度クラスタ化の処理を繰り返す。
以上のように本実施形態では、例えば、ステップS1907、S1909〜S1911の処理と、前述した図18のステップS1806の処理とを行うことにより、統一手段の一例が実現される。
再レイアウト処理は、クラスタ分析処理の結果得られたオブジェクト間の距離の統一結果に基づいて、実際にページレイアウト上のオブジェクト間の距離を調整する処理である。再レイアウト処理の実行が、再レイアウト処理部において開始されると、まず、図20のステップS2001に処理が移行するようになっている。また、ステップS2001に処理が移行する際には、再レイアウト処理部は、前述したリストLB、LRの情報をレイアウト処理部等から入力している。
次に、ステップS2002において、再レイアウト処理部は、未選択のオブジェクトのうち、先頭の項目の情報をリストLBから取得する。
次に、ステップS2003において、再レイアウト処理部は、ステップS2002で取得した項目が、ページ上の最初のオブジェクトか否かを判定する。この判定の結果、ステップS2002で取得したオブジェクトが、ページ上の最初のオブジェクトでなければ、後述するステップS2021に進む。
次に、ステップS2013において、再レイアウト処理は、配置開始位置SPを、ステップS2002で取得したオブジェクトの高さ分だけ、例えば下方に移動する。
次に、ステップS2014において、再レイアウト処理部は、移動した配置開始位置SPが、ページサイズを超えているか否かを判定する。この判定の結果、移動した配置開始位置SPが、ページサイズを超えている場合には、後述するステップS2024に進む。
一方、移動した配置開始位置SPが、ページサイズを超えていない場合には、ステップS2030に進む。ステップS2030に進むと、再レイアウト処理部は、リストLBの全てのオブジェクトについて処理したか否かを判定する。この判定の結果、リストLBの全てのオブジェクトについて処理していない場合には、前述したステップS2002に進み、リストLBに登録されている次の項目について処理を行う。
一方、リストLBの全てのオブジェクトについて処理している場合には、図18のステップS1803に進む。
一方、リストLBから取得した項目がオブジェクトである場合には、ステップS2012に進む。ステップS2012に進むと、再レイアウト処理部は、オブジェクト配置開始位置SPに、取得したオブジェクトを移動させる。そして、前述したステップS2013に進み、配置開始位置SPを、取得したオブジェクトの高さ分だけ移動する。
次に、ステップS2023において、再レイアウト処理は、配置開始位置SPを、ステップS2022で取得した代表値の分だけ、例えば下方に移動する。そして、前述したステップS2014に進み、移動した配置開始位置SPが、ページサイズを超えているか否かを判定する。
以上のように本実施形態では、例えば、ステップS2023の処理を行うことにより、変更手段の一例が実現される。
以上のように本実施形態では、例えば、ステップS2024の処理を行うことにより、修正手段の一例が実現される。
よって、例えば、ドロー系アプリケーションにおけるオブジェクトの編集においては、大ざっぱにオブジェクトを配置し、後でオブジェクト間の距離を整えて整形するといった利用法を提供することができ、ページレイアウトの作業が従来よりも簡便になる。また、ページレイアウトを行う技能の低いユーザでも、文書内で統一されたオブジェクト間の距離の規則を容易に形成することができる。よって、文書全体の見栄えを容易に向上することができる。
また、距離調整ユーザインタフェイス1100操作の結果を、ページレイアウト上に逐次反映しユーザに視認させることができる。このため、ユーザは、オブジェクトの間隔が狭い範囲から広い範囲まで、オブジェクトの間隔が段階的に統一されていく状態を逐次確認しながら、距離調整インタフェイスに対する入力操作を行うことができる。そのため、非熟練者であっても自分の求めるレイアウトを確認することが可能になる。
次に、本発明の第2の実施形態について説明する。前述した第1の実施形態では、1ページ内部のページレイアウトを調整する方法を例に挙げて説明したが、本実施形態では、ページレイアウトを文書全体にわたって変更する方法を例に挙げて説明する。本実施形態と第1の実施形態との違いは、リストLBの内容の一部と、再レイアウト処理の一部である。したがって、本実施形態の説明において、第1の実施形態と同一の部分については、図1〜図22に付した符号と同一の符号を付すこと等により、詳細な説明を省略する。
図24では、ページ2401とページ2402とが存在し、オブジェクトブロック2403をページ2402からページ2401に移動して再配置する様子を示している。ページ2401のオブジェクト間の距離を調整することによってオブジェクトブロック間の距離が詰まり、ページ下部に余白2404が生じた場合には、ページ2402からオブジェクトブロック2403を取り除き、ページ2402を不要なページにできる。このようにすれば、不要なページを文書から削除することができ、印刷ページ数を削減することを目的とした「節約印刷」にとっては有効な手法になる。
図25は、文書の全ページについて、オブジェクトブロックと距離の情報をまとめるリストLBの構造の一例を示す図である。
図25において、オブジェクトID2101や位置2102、距離ID2103や距離の大きさ2104がリストLBに含まれる点は、図21に示したリストLBと同様である。しかし、実施形態のリストLBでは、ページ毎のオブジェクトを区切る情報として、ページID2501とそのページのページサイズ2502とがリストLBに挿入されており、この点が図21に示したリストLBと異なる。図25では、リストLBにおける各データ要素が、実際のページ上のオブジェクトとどう対応するかを矢印で示している。尚、ここでは、文書中の全ページを繋いだ一続きの長い領域を仮想的に考え、そのうえで再レイアウト処理を実行することを想定している。
図23のステップS2003において、ステップS2002で取得した項目が、ページ上の最初のオブジェクトでないと判定された場合には、ステップS2301に進む。そして、再レイアウト処理部は、リストLBから取得した項目が、オブジェクト、距離、及びページ境界の何れであるかを判定する。
次に、ステップS2322において、再レイアウト処理部は次の処理を行う。すなわち、再レイアウト処理部は、ステップS2321で取得したオブジェクトの位置と、ページレイアウト(再レイアウト)を行っている最中のページに含まれるオブジェクトの情報とに基づいて、そのページにおいて空けるべき距離を計算する。
図24に示すように、例えばページ2401の下部の余白に、次ページのオブジェクトブロック2403が再配置される場合、オブジェクトブロック2403とオブジェクトブロック2405との間の距離を決定する必要がある。オブジェクトブロック2403とオブジェクトブロック2405は、元々は属するページが違っている。したがって、元々は隣り合う関係になかったオブジェクトブロック間の余白をどう取るかが問題となる。
以上のように本実施形態では、例えば、ステップS2322の処理を行うことにより、決定手段の一例が実現される。
以上のように本実施形態では、例えば、ステップS2322の処理を行うことにより、変更手段に加えて第2の変更手段の一例も実現される。
また、ステップS2014において、移動した配置開始位置SPが、ページサイズを超えていると判定された場合には、ステップS2311に進む。ステップS2311に進むと、再レイアウト処理部は、配置開始位置値SPの値を次ページの上端にリセットする。そしてステップS2012に進み、オブジェクト配置開始位置SPに、取得したオブジェクトを移動させる。
次に、本発明の第3の実施形態について説明する。前述した第1及び第2の実施形態では、何れも専用のアプリケーションソフトウェアで各処理を行う場合を例に挙げて説明した。これに対し、本実施形態では、プリンタドライバで各処理を行う場合を例に挙げて説明する。このように本実施形態と前述した第1、第2の実施形態との違いは、処理を行う主体が異なる。したがって、本実施形態の説明において、前述した第1、第2の実施形態と同一の部分については、図1〜図25に付した符号と同一の符号を付すこと等により、詳細な説明を省略する。
本実施形態のシステムも、第1、第2の実施形態と同様に、ホストコンピュータとなるコンピュータモジュール101と、これに接続されたローカルプリンタ145とを備える(図1を参照)。コンピュータモジュール101は、ローカルプリンタ145に対する描画命令を含んだ印刷ジョブデータを生成するためのプリンタドライバを有する。
コンピュータモジュール101においてオペレーティングシステム(OS)2602が稼動し、OS2602上でアプリケーション2601とプリンタドライバ2604とが動作する。アプリケーション2601及びプリンタドライバ2604は、OS2602内部のAPI(Application Program Interface)システム2603を利用・経由しながら互いに協調して印刷処理を行う。APIシステム2603には、GDI(Graphic Device Interface)等が含まれる。
OS2602及びAPIシステム2603を介してプリンタドライバ2604で生成された印刷ジョブデータは、ローカルプリンタ145のコントローラ2611に送られる。コントローラ2611は、印刷ジョブデータに含まれる描画命令に基づくデータを印刷バッファ2612に展開する。印刷エンジン2613は、印刷バッファ2612に展開されたデータを使って描画処理を行う。
以上のような前提のもとで、図18〜図20に示したフローチャートの処理をプリンタドライバ2604にて実現し、CPU135において実行することで、本実施形態においても、前述した第1、第2の実施形態と同様の効果が得られる。
UI処理部は、オブジェクト間の距離を自動的に調整するかどうかのユーザによる選択操作を、画面2701内のボタンコントロール2704の操作によって受け取ることができる。プリンタドライバ2604は、図11に示した距離調整ユーザインタフェイス1100と同様の操作を提供する"領域2705とボタン2706"のユーザによる操作内容に基づいて、オブジェクト間の距離を自動調整する場合の設定値を入力することができる。図27に示す例では、ボタン2702がユーザによって押下されることによって、設定値がプリンタドライバ2604に伝えられ保存される。尚、図27に示すボタン2703がユーザによって押下されると、画面2701内の設定はキャンセルされる。
以上のように本実施形態では、例えば、図27に示す画面2701を用いることにより、操作手段の一例が実現される。
プリンタドライバ2604は、現在の印刷対象となっている文書を参照し、その文書のページレイアウト上に配置されているオブジェクトの位置を調整する処理を行う。ユーザによる所定の操作をプリンタドライバ2604が検出すると、まず、ステップS3101に処理が移行するようになっている。
ステップS3101において、プリンタドライバ2604は、全てのオブジェクトブロック間の距離を抽出し、オブジェクトブロックにインデックスを付ける処理を行う。
以上のように本実施形態では、例えば、ステップS3101の処理を行うことにより、抽出手段の一例が実現される。
次に、ステップS3102において、プリンタドライバ2604は、ステップS3101で抽出した情報を、リストLBに纏める。ここで利用されるリストLBのデータ構造は、第1又は第2の実施形態で使われたものと同等となる。
一方、オブジェクト間の距離の自動調整を行うことが設定されている場合には、ステップS3121に進む。ステップS3121に進むと、プリンタドライバ2604は、距離調整ユーザインタフェイスの入力状態を示す情報と、ステップS3102で得られたリストLBの情報とに基づいて、クラスタ分析処理を実行する。このステップS3121の処理は、図19に示した処理と同一であるので、ここでは、その説明を省略する。以上のように本実施形態では、例えば、図19のステップS1906の処理を行うことにより、纏め手段の一例が実現される。
以上のように本実施形態では、例えば、図19のステップS1907、S1909〜S1911の処理と、ステップS3122の処理とを行うことにより、統一手段の一例が実現される。
次に、ステップS3123において、プリンタドライバ2604は、リストLBの情報と、クラスタ分析処理の実行結果の情報とに基づいて、オブジェクトブロックをページ上で再レイアウトする再レイアウト処理を実行する。このステップS3123の処理は、図20に示した処理と同一であるので、ここでは、その説明を省略する。
以上のように本実施形態では、例えば、図20のステップS2023の処理を行うことにより、変更手段、第2の変更手段の一例が実現され、図20のステップS2024の処理を行うことにより、修正手段の一例が実現される。また、例えば、図23のステップS2322の処理を行うことにより、決定手段の一例が実現される。
尚、本実施形態では、図28の全ての処理をプリンタドライバ2604が行うようにしたが、必ずしもこのようにする必要はない。例えば、ステップS3121の処理については、第1、第2の実施形態で説明したクラスタ分析処理部が実行し、ステップS3123の処理については、第1、第2の実施形態で説明した再レイアウト処理部が実行するようにしてもよい。
次に、本発明の第4の実施形態を説明する。前述した第1〜第3の実施形態では、文書レイアウト編集装置を、パーソナルコンピュータ等のホストコンピュータに適用した場合を例に挙げて説明した。これに対し、本実施形態では、プリンタ・複写機・FAX等の機能を複合的に有するMFP等の画像形成装置に文書レイアウト編集装置を適用した場合を例に挙げて説明する。このように本実施形態と、第1〜第3の実施形態とは、文書レイアウト編集装置を適用する対象が異なる。したがって、本実施形態の説明において、第1〜第3の実施形態と同一の部分については、図1〜図28に付した符号と同一の符号を付すこと等により、詳細な説明を省略する。
図29に示す印刷システムでは、ホストコンピュータ40及び3台の画像形成装置10、20、30がLAN50に接続されている。ただし、印刷システムにおけるホストコンピュータ及び画像形成装置の接続数は、これに限定されることはない。また、ホストコンピュータ及び画像形成装置の接続方法もLANに限られることはない。例えば、WAN(公衆回線)等の任意のネットワーク、USB等のシリアル伝送方式、セントロニクスやSCSI等のパラレル伝送方式等を採用することも可能である。
図30は、画像形成装置10の外観構成の一例を示す図である。
スキャナ部13は、原稿上の画像を露光走査して得られた反射光をCCDに入力することで画像の情報を電気信号に変換し、画像データとしてコントローラユニット11に対して出力する。
原稿は原稿フィーダ2901のトレイ2902にセットされる。ユーザが操作部12から読み取り開始を指示すると、コントローラユニット11からスキャナ部13に原稿読み取り指示が与えられる。スキャナ部13は、この原稿読み取り指示を受けると、原稿フィーダ2901のトレイ2902から原稿を1枚ずつフィードして、原稿の読み取り動作を行う。
スキャン部3002は、原稿フィーダ2901から入力された画像3001をスキャンして画像化する。その後、像域分離部3003は、スキャンされた画像を公知の技術によって像域分離し、複数のブロックに分割する。符号部3004は、複数のブロックを、位置等のデータに変換する。再レイアウト部3005は、位置等のデータに基づいてオブジェクト間の距離を調整して再レイアウトする。そして、印刷部3006は、再レイアウト済みの情報を印刷する。こうして出力画像3007がプリンタ部14から出力される。
図32において、コントローラユニット11は、スキャナ部13やプリンタ部14と電気的に接続されている。また、図29に示したように、コントローラユニット11は、LAN50を介して、ホストコンピュータ40や外部の装置等と相互に接続されている。このようにすることによって、画像形成装置10は、画像データやデバイス情報の入出力を行うことが可能となっている。
ネットワークI/F3205は、LAN50及びシステムバス3200に接続し、情報の入出力を行う。
スキャナ画像処理部3214は、スキャナ部13からスキャナI/F3215を介して受け取った画像データに対して、補正、加工、及び編集を行う。尚、スキャナ画像処理部3214は、受け取った画像データがカラー原稿か白黒原稿か、文字原稿か写真原稿か等を判定する。そして、スキャナ画像処理部3214は、その判定結果を画像データに付随させる。こうした付随情報を属性データと称する。
プリンタ画像処理部3217は、外部から送られた画像データを受け取り、受け取った画像データに対して画像処理を施す。画像処理を施した後の画像データは、プリンタI/F3218を介してプリンタ部14に出力される。
再レイアウト部3005は、図28に示したフローチャートによる処理を実行し、像域分離された画像データを再レイアウトすることによって、画像形成装置10上で、レイアウト調整(オブジェクト間の距離の調整)を実施する。図28に示したフローチャートによる処理は、第3の実施形態と同じであるので、その詳細な説明を省略する。
このように本実施形態では、再レイアウト部3005によって、抽出手段、変更手段、修正手段、第2の変更手段、決定手段の一例が実現される。また、図11、図27に示したような距離調整インタフェイスを操作部12に表示してユーザによる操作を受け付けることにより、操作手段の一例が実現される。
前述した本発明の実施形態における文書レイアウト編集装置を構成する各手段、並びに文書レイアウト編集方法の各ステップは、コンピュータのRAMやROMなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
1100 距離調整ユーザインタフェイス
1101 ユーザインタフェイス領域
1102 ボタン
1103 マウスポインタ
Claims (6)
- 文書における互いに隣り合うオブジェクトの間の距離を抽出する抽出手段と、
前記抽出手段により抽出された複数の距離の値の差に基づいて、当該複数の距離を1つ又は複数のグループに纏める纏め手段と、
前記纏め手段により纏められた距離を代表値に統一する統一手段と、
前記文書における互いに隣り合うオブジェクトの間の距離が、当該距離に対応する前記代表値になるように、当該オブジェクトの配置を変更する変更手段とを有することを特徴とする文書レイアウト編集装置。 - 前記文書における互いに隣り合うオブジェクトの間の距離を調整する操作をユーザに行わせるための操作手段を有し、
前記統一手段は、前記纏め手段により得られたグループのうち、前記操作手段の操作の結果に対応するグループを選択し、選択したグループに属する距離を、前記操作手段の操作の結果に基づく代表値に統一することを特徴とする請求項1に記載の文書レイアウト編集装置。 - 前記変更手段によりオブジェクトの配置が変更された結果、前記オブジェクトが、当該オブジェクトが配置されていたページからはみ出すと判定された場合、当該ページに配置されていたオブジェクトが、当該ページに収まるように、前記代表値を修正する修正手段を有することを特徴とする請求項1又は2に記載の文書レイアウト編集装置。
- 前記文書におけるオブジェクトを、当該オブジェクトが配置されていたページと異なるページに配置するに際し、配置するページを変更するオブジェクトの属性と、当該オブジェクトの移動先となるページのオブジェクトとの属性とに基づいて、前記配置するページを変更するオブジェクトと、当該オブジェクトの移動先となるページで当該オブジェクトと互いに隣り合うことになるオブジェクトとの間の距離を決定する決定手段と、
前記決定手段により決定された距離に基づいて、前記配置するページを変更するオブジェクトの配置を変更する第2の変更手段とを有することを特徴とする請求項1〜3の何れか1項に記載の文書レイアウト編集装置。 - 文書における互いに隣り合うオブジェクトの間の距離を抽出する抽出ステップと、
前記抽出ステップにより抽出された複数の距離の値の差に基づいて、当該複数の距離を1つ又は複数のグループに纏める纏めステップと、
前記纏め手段により纏められた距離を代表値に統一する統一ステップと、
前記文書における互いに隣り合うオブジェクトの間の距離が、当該距離に対応する前記代表値になるように、当該オブジェクトの配置を変更する変更ステップとを有することを特徴とする文書レイアウト編集方法。 - 文書における互いに隣り合うオブジェクトの間の距離を抽出する抽出ステップと、
前記抽出ステップにより抽出された複数の距離の値の差に基づいて、当該複数の距離を1つ又は複数のグループに纏める纏めステップと、
前記纏め手段により纏められた距離を代表値に統一する統一ステップと、
前記文書における互いに隣り合うオブジェクトの間の距離が、当該距離に対応する前記代表値になるように、当該オブジェクトの配置を変更する変更ステップとをコンピュータに実行させることを特徴とするコンピュータプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008182046A JP5043769B2 (ja) | 2008-07-11 | 2008-07-11 | 文書レイアウト編集装置、文書レイアウト編集方法、及びコンピュータプログラム |
US12/500,494 US20100011287A1 (en) | 2008-07-11 | 2009-07-09 | Apparatus and method for editing document layout and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008182046A JP5043769B2 (ja) | 2008-07-11 | 2008-07-11 | 文書レイアウト編集装置、文書レイアウト編集方法、及びコンピュータプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010020646A JP2010020646A (ja) | 2010-01-28 |
JP5043769B2 true JP5043769B2 (ja) | 2012-10-10 |
Family
ID=41506205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008182046A Expired - Fee Related JP5043769B2 (ja) | 2008-07-11 | 2008-07-11 | 文書レイアウト編集装置、文書レイアウト編集方法、及びコンピュータプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20100011287A1 (ja) |
JP (1) | JP5043769B2 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110078194A1 (en) * | 2009-09-28 | 2011-03-31 | Oracle International Corporation | Sequential information retrieval |
US10013641B2 (en) * | 2009-09-28 | 2018-07-03 | Oracle International Corporation | Interactive dendrogram controls |
US10552710B2 (en) * | 2009-09-28 | 2020-02-04 | Oracle International Corporation | Hierarchical sequential clustering |
WO2013133806A1 (en) | 2012-03-06 | 2013-09-12 | Hewlett-Packard Development Company, L.P. | Probabilistic content layout model flowing multiple compositions over multiple pages via multiple breakpoints |
CN103064920B (zh) * | 2012-12-20 | 2014-03-05 | 优视科技有限公司 | 移动终端中的页面字体大小缩放方法及装置 |
US10521161B2 (en) * | 2017-09-29 | 2019-12-31 | Ricoh Company, Ltd. | Information processing device, communication system, and recording medium storing instructions |
US11176310B2 (en) * | 2019-04-01 | 2021-11-16 | Adobe Inc. | Facilitating dynamic document layout by determining reading order using document content stream cues |
US20230306185A1 (en) * | 2020-10-23 | 2023-09-28 | Gary Bloom | Text editor for literary works with rhyme or rhythm |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05108793A (ja) * | 1991-10-18 | 1993-04-30 | Ricoh Co Ltd | 文書編集装置 |
US5642473A (en) * | 1994-10-17 | 1997-06-24 | Xerox Corporation | Paper saving reprographic device |
US5956737A (en) * | 1996-09-09 | 1999-09-21 | Design Intelligence, Inc. | Design engine for fitting content to a medium |
JP4082351B2 (ja) * | 2003-03-12 | 2008-04-30 | セイコーエプソン株式会社 | レイアウトシステム及びレイアウトプログラム、並びにレイアウト方法 |
US20050080645A1 (en) * | 2003-07-08 | 2005-04-14 | Counts Mary C. | Systems and methods for providing information for collectibles |
US7092552B2 (en) * | 2003-07-30 | 2006-08-15 | Xerox Corporation | System and method for measuring and quantizing document quality |
JP4110105B2 (ja) * | 2004-01-30 | 2008-07-02 | キヤノン株式会社 | 文書処理装置及び文書処理方法及び文書処理プログラム |
JP4095592B2 (ja) * | 2004-08-06 | 2008-06-04 | キヤノン株式会社 | 情報処理装置、情報処理方法ならびにプログラム |
US7552386B2 (en) * | 2005-06-10 | 2009-06-23 | Microsoft Corporation | Methods and systems for treating overflow conditions and for re-sizing printable content |
GB2431758A (en) * | 2005-10-27 | 2007-05-02 | Hewlett Packard Development Co | Grouping of information items on a page |
JP4912139B2 (ja) * | 2006-12-22 | 2012-04-11 | キヤノン株式会社 | 情報処理装置 |
-
2008
- 2008-07-11 JP JP2008182046A patent/JP5043769B2/ja not_active Expired - Fee Related
-
2009
- 2009-07-09 US US12/500,494 patent/US20100011287A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
JP2010020646A (ja) | 2010-01-28 |
US20100011287A1 (en) | 2010-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5043769B2 (ja) | 文書レイアウト編集装置、文書レイアウト編集方法、及びコンピュータプログラム | |
JP3962721B2 (ja) | 文書処理装置及び文書処理方法 | |
EP1696337A2 (en) | Document processing apparatus, document processing method and computer program | |
US7882432B2 (en) | Information processing apparatus having font-information embedding function, information processing method therefor, and program and storage medium used therewith | |
JP4817556B2 (ja) | 情報処理装置、情報処理装置における文書処理方法およびプログラム | |
US20160062707A1 (en) | Information processing apparatus, and print control method | |
US8244035B2 (en) | Image processing apparatus and control method thereof | |
JP4095512B2 (ja) | 文書変換方法及び装置 | |
US7864199B2 (en) | Image processing apparatus and control method thereof | |
US20070127055A1 (en) | Information processing apparatus and information processing method | |
US20090204888A1 (en) | Document processing apparatus, document processing method, and storage medium | |
JP5161647B2 (ja) | 文書処理装置、文書処理方法、プログラム及び記憶媒体 | |
JP4785655B2 (ja) | 文書処理装置及び文書処理方法 | |
JP2004192248A (ja) | 文書処理装置及び方法 | |
US8788936B2 (en) | Information processing apparatus and method | |
JP2007049388A (ja) | 画像処理装置及びその制御方法、プログラム | |
JP5393104B2 (ja) | 印刷制御装置、印刷制御方法、およびプログラム | |
JP2004206170A (ja) | 文書処理方法および装置 | |
US20190138581A1 (en) | Information processing apparatus, information processing method, and non-transitory computer-readable medium | |
JP4673200B2 (ja) | 印刷処理システムおよび印刷処理方法 | |
JP2006293598A (ja) | 文書処理システム | |
JP2009110391A (ja) | 情報処理装置および制御方法および制御プログラム | |
JP2010157099A (ja) | 印刷制御装置、印刷制御方法、及びコンピュータプログラム | |
JP2009140441A (ja) | 画像処理装置及び検索方法 | |
JP4549379B2 (ja) | 文書処理装置及び文書処理方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110708 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120606 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120612 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120712 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5043769 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150720 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |