JP4603855B2 - レイアウト装置、コンピュータプログラム、及び記録媒体 - Google Patents

レイアウト装置、コンピュータプログラム、及び記録媒体 Download PDF

Info

Publication number
JP4603855B2
JP4603855B2 JP2004319453A JP2004319453A JP4603855B2 JP 4603855 B2 JP4603855 B2 JP 4603855B2 JP 2004319453 A JP2004319453 A JP 2004319453A JP 2004319453 A JP2004319453 A JP 2004319453A JP 4603855 B2 JP4603855 B2 JP 4603855B2
Authority
JP
Japan
Prior art keywords
memo
layout
content
data
display
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
Application number
JP2004319453A
Other languages
English (en)
Other versions
JP2006133870A (ja
Inventor
大輔 山下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2004319453A priority Critical patent/JP4603855B2/ja
Publication of JP2006133870A publication Critical patent/JP2006133870A/ja
Application granted granted Critical
Publication of JP4603855B2 publication Critical patent/JP4603855B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、所定の領域に情報をレイアウトして出力するレイアウト装置に関する。特に文字、文字列、及び画像等で構成されるコンテンツとコンテンツに対応するメモとが、所定の領域において関連する配置になるよう、コンテンツ及びメモのレイアウトを決定し、表示又は印刷するレイアウト装置に関する。
情報技術の発展に伴い、文字、図形、及び画像等、並びにそれらが複合した情報からなる多種多様なコンテンツが電子化されるようになった。電子化されたコンテンツは、表示デバイス及びプリンタ等の出力装置により視覚的情報に変換され、表示又は印刷された状態で利用される。電子化されたコンテンツは、従来の紙媒体等に記録されたコンテンツと異なり、レイアウトの変更が容易であるという特徴を有する。例えば、表示デバイスの解像度、ユーザの好み等に応じて、文字又は画像のサイズ、表示位置、及び1行の文字数等を随時変更しながら表示できる。また例えば、印刷用紙のサイズに応じて、文字、図形、及び画像等の位置及び大きさ等を設定し、その設定に基づいてコンテンツを印刷できる。
一方、紙媒体等に記録された従来のコンテンツは、筆記具を用いて直接にメモの書込等をすることが容易であるという特徴を有する。例えば、書類の重要な部分を囲む目印等を記入してその部分を強調したり、注釈、補足、及びルビ等を書込んだりすることは容易である。
電子化されたコンテンツにおいても、従来の紙媒体と同様にメモを添付できるようにするための技術が開発され普及している。このような技術では、文字、画像、及び手書きデータ等からなるメモのデータを、電子化されたコンテンツと併せて表示する。ただし、電子化されたコンテンツは上記のとおりレイアウト変更が容易であるため、コンテンツを構成する特定の文字又は画像にメモを関連付けて表示するには、表示又は印刷された時点での文字又は画像の配置に追従するようにメモを再配置する必要がある。
特許文献1には、文書データのレイアウトが変更された場合に、関連する図形のデータを自動的に移動させる自動レイアウト機能付き文書処理装置が開示されている。この文書処理装置は、予め用意されたレイアウト規則に基づき文書データを適正位置に自動的に移動させる。この際、文書データと互いに関連する位置関係を有する図形データの存在を判定する。図形データが存在したならば、その図形データを対応する文書データの移動方向及び移動量に応じて移動させる。この装置により、文書データの表示位置の移動に応じてその文書データに関連する図形データの表示位置も移動した状態で表示できる。
また特許文献2には、出力媒体中のコンテンツが配置されていない余白部分を利用して、メモがコンテンツに追従して表示されるよう自動的に表示を変更する表示方法が開示されている。この表示方法では、文字、文字列、及び画像等の要素が配置されたコンテンツのレイアウトの中から余白範囲を特定する。また、メモを表わすメモデータとコンテンツを表わすコンテンツデータとを関連付ける情報を取得する。特定した余白範囲の、関連付けられた要素の近くの位置にメモデータを配置し、メモとコンテンツとの重なりが少なくなるようなメモのレイアウトを記述したメモレイアウトデータを生成する。メモは、メモレイアウトデータにしたがい、余白範囲にレイアウトされ表示される。コンテンツのレイアウトが変更された場合でも、変更後の余白範囲の参照部分付近にメモが配置され、表示される。
特開平5−298290 特開2003−308310
メモの中には、メモとコンテンツとの位置関係、及び相対的な大きさが重要な意味を持つものが存在する。例えば、文字や画像を丸く囲むようなメモは、コンテンツのレイアウトが変更されても、囲むべき文字及び画像等を適切に囲むよう配置されるべきである。このようなメモは、コンテンツとの位置関係や相対的な大きさが維持されたまま表示されるのが望ましい。
特許文献1に記載の文書処理装置を用いてメモのレイアウトを行なうと、文書データの表示位置に追従するようにメモの表示位置を移動させて、当該図形データを表示することができる。しかし、コンテンツを構成する文字及び図形等を拡大したり縮小したりした場合、メモを移動させるだけでは、メモがコンテンツに対して適切に関連するようにメモを表示することはできない。よって特許文献1に記載の文書処理装置では、コンテンツの表示態様の変化に対応できない。
特許文献2に記載の表示方法では、メモとコンテンツとの関連付け表示、すなわちメモデータとコンテンツデータとの参照関係の表示を自動的に変更できる。しかし、メモとコンテンツとの位置関係及び相対的な大きさが維持されない場合がある。例えば、コンテンツを構成する文字の表示サイズを変更しても、それに応じてメモデータが自動的に拡大、縮小されるわけではない。また例えば、コンテンツのレイアウトが変更され、メモと関連付けられた文字列が複数行に分割された場合、コンテンツとメモの相対的な位置関係が崩れてしまうおそれがある。
それゆえに本発明の目的は、コンテンツとメモとを併せて表示する際に、表示されたコンテンツとメモとの位置関係及びサイズが可能な限り維持される態様でメモをレイアウトし出力するレイアウト装置を提供することである。
本発明の別の目的は、コンテンツの所望の部分に関連付けて表示されるメモを生成し、コンテンツの表示変更に柔軟に対応して当該メモをレイアウトすることができるレイアウト装置を提供することである。
本発明の第1の局面に係るレイアウト装置は、コンテンツを構成するコンテンツ要素の所定の領域におけるレイアウトを決定するためのコンテンツレイアウト手段と、コンテンツとともに所定の領域に出力されるべきメモを構成するメモ要素と、メモ要素を出力すべきメモ出力領域のコンテンツ要素に対する相対位置を示す定義情報とを準備するためのメモ準備手段と、メモ要素の所定の領域におけるレイアウトを、コンテンツ要素の所定の領域におけるレイアウト、及び定義情報をもとに決定するためのメモレイアウト手段と、コンテンツ要素のレイアウト、及びメモレイアウト手段により決定されたメモ要素のレイアウトにしたがい、コンテンツ及びメモを所定の出力媒体に出力するための出力手段とを含む。
メモ準備手段は、メモ要素と、コンテンツ要素に対するメモの相対位置を示す定義情報とを準備する。所定の領域においてコンテンツ要素をレイアウトが決定されると、メモレイアウト手段は、当該レイアウトと定義情報とをもとに、メモ要素のレイアウトを決定する。この決定にしたがい出力手段がコンテンツとメモとを出力する。これによりメモは、コンテンツ要素のレイアウトに応じて適切な領域にレイアウトされる。よって、コンテンツとの相対的な位置関係が維持されたレイアウトでメモを出力することができる。
好ましくは、メモレイアウト手段は、所定の領域におけるコンテンツ要素のレイアウト及び定義情報をもとに、所定の領域においてメモ要素を出力させるべき領域を判別するためのメモ出力領域判別手段と、メモ要素の、出力させるべき領域に適合する出力位置及び出力サイズを決定するための決定手段とを含む。
メモは、定義情報によりコンテンツ要素と関連付けられる。メモ出力領域判別手段は、このようにメモと特定の関係にあるコンテンツ要素の所定の領域におけるレイアウトをもとに、メモを出力させるべき領域を判別する。よって、当該コンテンツ要素のレイアウトに応じた領域が、メモを出力させるべき領域として判別される。決定手段は、出力させるべき領域に適合するようにメモ要素の出力位置及び出力サイズを決定する。よって、メモ要素の出力位置及び出力サイズを、コンテンツ要素のレイアウトに適合するように決定できる。すなわち、メモ要素を出力させるべき領域を、コンテンツ要素とメモ要素との相対的な位置関係が維持されるように決定できる。
より好ましくは、メモレイアウト手段はさらに、出力させるべき領域の連続性に基づき、メモ要素の加工の要否を判定するための判定手段と、判定手段による判定の結果にしたがい、加工を要すると判定されたメモ要素を所定の方法で加工して、複数のメモ要素を作成するための加工手段とを含む。
例えば、コンテンツ要素のレイアウトが不連続であるために、メモの表示位置及びサイズの変更によっては、メモとコンテンツ要素との相対的な位置関係を維持できなくなる場合がある。判定手段は、表示させるべき領域の連続性に基づきメモの加工の要否を判定する。この判定の結果にしたがい、加工手段がメモを加工して複数のメモを作成する。加工により作成された複数のメモ要素の出力位置及び出力サイズはそれぞれ、決定手段により決定される。コンテンツとメモの相対的な位置関係に適合するようにメモ要素を加工し、加工によって作成されたメモ要素の各々をレイアウトできる。
加工手段は、判定手段による判定の結果にしたがい、メモを分割することにより、複数のメモ要素を作成するための分割手段を含んでもよい。
加工手段は、判定手段による判定の結果にしたがい、メモを複製することにより、複数のメモ要素を作成するための複製手段を含んでもよい。
出力手段は、コンテンツ要素のレイアウトと、メモレイアウト手段により決定されたレイアウトとにしたがい、コンテンツと、加工手段により作成された複数のメモ要素を出力媒体に出力するための手段を含んでもよい。複数のメモ要素は、互いに関連付けられる。
加工手段により作成されたメモ要素が互いに関連付けられることにより、これら作成されたメモ要素同士の関係が分かるようにメモ要素を出力媒体に出力できる。よって、メモ要素を加工して、複数のメモを作成した場合にも、コンテンツとメモ要素との関係が維持されるよう、コンテンツとメモ要素とを出力することができる。
好ましくは、メモ準備手段は、所定の領域へのメモの入力を受けて、メモを構成するメモ要素と所定の領域においてメモが入力されたメモ入力領域を示す領域指定データとを準備するためのデータ準備手段と、領域指定データと所定の領域におけるコンテンツ要素のレイアウトとに基づき、定義情報を作成するための定義情報作成手段とを含む。
データ準備手段は、所定の領域へのメモの入力を受けて、メモ要素と、メモが入力されたメモ入力領域を示す領域指定データとを準備する。定義情報作成手段は、領域指定データと、所定の領域におけるコンテンツ要素のレイアウトとをもとに定義情報を作成する。定義情報は、メモ出力領域を、コンテンツ要素に対する相対位置で示す情報である。したがって、作成された定義情報により、入力されたメモを出力媒体に出力する際のレイアウトが、コンテンツ要素のレイアウトに応じて決定できるようになる。
より好ましくは、定義情報作成手段は、メモ入力領域と予め定める関係にある領域にレイアウトされたコンテンツ要素を特定するためのメモ関連コンテンツ要素特定手段と、コンテンツ要素とメモ入力領域との相対位置を算出するための相対位置算出手段と、定義情報を、メモ関連コンテンツ要素特定手段により特定されたコンテンツ要素、及び相対位置算出手段により算出された相対位置をもとに作成するための手段とを含む。
メモ関連コンテンツ要素特定手段は、メモ入力領域に関連するコンテンツ要素を特定する。相対位置算出手段は、特定されたコンテンツ要素とメモ入力領域との相対位置を算出する。作成するための手段が作成する定義情報は、メモ出力領域を、領域指定データが示すメモ入力領域によってではなく、領域指定データが準備された際にメモ関連コンテンツ要素特定手段により特定されたコンテンツ要素によって示す。すなわち、メモ出力領域は、メモを出力する際のコンテンツ要素のレイアウトに応じて決定されるようになり、それらコンテンツ要素とメモ要素との相対的な位置関係が維持される。
さらに好ましくは、メモ関連コンテンツ要素特定手段は、メモ入力領域と重なる領域にレイアウトされたコンテンツ要素を特定するための手段を含む。
相対位置算出手段は、特定するための手段により特定されたコンテンツ要素とメモ入力領域との相対位置を算出するための手段を含んでもよい。
さらに好ましくは、相対位置算出手段は、メモ入力領域の予め定める複数の特徴点に対して、それら特徴点の所定の領域における位置から最短距離にレイアウトされたコンテンツ要素をそれぞれ特定し、当該各コンテンツ要素とメモ入力領域との相対位置を算出するための手段を含む。
特定領域の特徴点に対し、それぞれ最短距離にあるコンテンツ要素と特徴点との相対位置を算出することにより、当該最短距離にある各コンテンツ要素、及び当該コンテンツ要素との相対位置によってメモ表示領域を定義することが可能となる。よって、効率的にメモ表示領域を定義できる。
メモ入力領域は、予め定められた多角形領域を含んでもよい。算出するための手段は、多角形領域の各頂点に対して、それら頂点の所定の領域における位置から最短距離にレイアウトされたコンテンツ要素を特定し、各コンテンツ要素とメモ入力領域との相対位置を算出するための頂点関連要素相対位置算出手段を含む。
さらに好ましくは、作成するための手段は、メモ関連コンテンツ要素特定手段により特定されたコンテンツ要素、及び相対位置算出手段により算出された相対位置をもとに定義情報を作成し、定義情報を記録するための手段を含む。
より好ましくは、データ準備手段は、ユーザによるメモの編集操作を受けたことに応答して、当該編集操作に対応する操作信号を発生するための操作手段と、操作手段が発生する操作信号にしたがい、メモを構成するメモ要素と、所定の領域においてメモ要素が占める領域とを特定し、メモ要素、及びメモ要素が占める領域を示すデータを準備するための手段とを含む。
ユーザが操作手段に対してメモの編集操作を行なうと、その操作に対応する操作信号が発生し、準備するための手段は、操作信号にしたがいメモ要素と領域指定データとを準備する。この領域指定データに基づき定義情報が作成されるため、ユーザによるメモの編集操作によって、自動的にコンテンツ要素と関連する態様で出力されるようなメモを生成することができる。
好ましくは、レイアウト装置はさらに、メモ準備手段により準備されたメモと、定義情報とを併せて記録するための記録手段を含む。メモレイアウト手段は、記録手段により記録されたメモの所定の領域におけるレイアウトを、コンテンツ要素のレイアウト、及び記録手段により記録された定義情報をもとに決定するための手段を含む。
メモ準備手段が準備したメモと、定義情報とを併せて記録することにより、メモを、コンテンツと関連付けた状態で記録することができる。よって、記録された定義情報に基づき、いつでもコンテンツとメモの相対的な位置関係が維持されるようにメモのレイアウトを決定できる。
レイアウト装置はさらに、決定するための手段により決定されたレイアウトをもとに、記録手段により記録された定義情報を更新するための手段を含んでもよい。
決定するための手段が決定したレイアウトをもとに、記録された定義情報を更新することにより、メモとコンテンツとの相対的な位置関係を、コンテンツの態様に柔軟に対応して適切に維持することができる。
好ましくは、コンテンツレイアウトは、所定の出力設定に基づき、コンテンツを構成するコンテンツ要素の所定の領域におけるレイアウトを決定するためのコンテンツレイアウト決定手段を含む。メモレイアウト手段は、コンテンツレイアウト決定手段によりコンテンツ要素の所定の領域におけるレイアウトが決定されたことに応答して、メモ要素の所定の領域におけるレイアウトを、コンテンツレイアウト手段により決定されたコンテンツ要素のレイアウト、及び定義情報をもとに決定するためのメモレイアウト決定手段を含む。
所定の出力設定にしたがいコンテンツ要素のレイアウトが決定されたことに応答して、メモレイアウト決定手段は、メモ要素のレイアウトを決定するため、コンテンツ要素のレイアウトに応じて自動的にメモ要素のレイアウトを決定することが可能になる。
より好ましくは、レイアウト装置はさらに、出力設定を更新するための出力設定更新手段を含む。コンテンツレイアウト決定手段は、出力設定更新手段により出力設定が更新されたことに応答して、当該更新された出力設定に基づき、コンテンツを構成するコンテンツ要素の所定の領域におけるレイアウトを再決定するためのコンテンツレイアウト再決定手段を含む。メモレイアウト決定手段は、コンテンツレイアウト再決定手段による再決定に応答して、メモ要素の所定の領域におけるレイアウトを、決定されたコンテンツ要素のレイアウト、及び定義情報をもとに再決定するためのメモレイアウト再決定手段を含む。
出力設定の変更によりコンテンツレイアウト再決定手段がコンテンツ要素のレイアウトを変更した場合にも、メモレイアウト再決定手段が、その時点でのコンテンツ要素のレイアウトに応じてメモ要素のレイアウトを決定することができる。よって、コンテンツのレイアウト変更に柔軟に対応してメモ要素のレイアウトを決定することができる。
出力設定更新手段は、ユーザによるコンテンツの出力設定操作を受けたことに応答して、当該出力設定操作に対応する操作信号を発生するための操作手段と、操作手段が発生する操作信号にしたがい、出力設定を更新するための手段とを含んでもよい。
ユーザが、所望の態様でコンテンツが出力されるよう出力設定操作を行なった場合においても、その出力設定操作に応じて、コンテンツ要素のレイアウトを変更でき、さらにその時点でのコンテンツのレイアウトに応じてメモ要素のレイアウトを決定することができる。
出力手段は、コンテンツ要素のレイアウト、及びメモレイアウト手段により決定されたメモ要素のレイアウトにしたがい、コンテンツ及びメモを予め定める画面に表示するための表示手段を含んでもよい。所定の領域は、画面上の領域を含む。
出力手段は、コンテンツ要素のレイアウト、及びメモレイアウト手段により決定されたメモ要素のレイアウトにしたがい、コンテンツ及びメモを予め定める印刷媒体に印刷するための印刷手段を含んでもよい。所定の領域は、印刷媒体上の領域を含む。
本発明の第2の局面に係るコンピュータプログラムは、コンピュータにより実行されると、当該コンピュータを上記したいずれかのレイアウト装置として動作させる。したがって、このコンピュータプログラムをコンピュータで実行することにより、上記した本発明の第1の局面の作用及び効果をコンピュータで実現することができる。
本発明の第3の局面に係る記録媒体は、本発明の第2の局面に係るコンピュータプログラムを記録した、コンピュータで読取可能な記録媒体である。この記録媒体に記録されたコンピュータプログラムをコンピュータで読取り実行することにより、本発明の第1の局面の作用及び効果を実現できる。
本発明の第1の局面によると、所定の領域上でのコンテンツ要素のレイアウトが定まると、おのずからメモ出力領域も定まるようになる。メモは、コンテンツ要素のレイアウトに応じて適切な領域にレイアウトされるようになるため、コンテンツとの相対的な位置関係が維持されるレイアウトでメモを出力することができる。メモは定義情報によりコンテンツ要素と関連付けられる。コンテンツ要素のレイアウトに応じた領域が、メモを出力させるべき領域として判別され、コンテンツ要素とメモ要素との相対的な位置関係が維持されるようにメモを表示させるべき領域を決定できる。
また、コンテンツ要素のレイアウトが不連続な場合等であっても、コンテンツとメモの相対的な位置関係が崩れないように、メモ要素を加工しレイアウトすることができ、コンテンツとメモの相対的な位置関係を高度に維持できる。
メモ出力領域を、領域指定データが示す領域によってではなく、領域指定データが準備された際に特定されたコンテンツ要素によって定めることができる。また、メモ入力領域の特徴点に対し、それぞれ最短距離にあるコンテンツ要素と特徴点との相対位置を算出することにより、定義情報で効率的にメモ出力領域を決定できる。さらに、ユーザによるメモの編集操作によって、自動的にコンテンツ要素と関連する態様で表示されるようなメモを生成することができる。
定義情報をメモと併せて記録することにより、定義情報に基づき、いつでもコンテンツとメモの相対的な位置関係が維持されるようにメモ要素のレイアウトを決定できる。定義情報を更新することにより、メモとコンテンツとの相対的な位置関係を、コンテンツの態様に柔軟に対応して適切に維持することができる。また、コンテンツのレイアウトに応じて自動的にメモのレイアウトを決定し表示することが可能になる。コンテンツのレイアウトが変更された場合にも、その時点でのコンテンツのレイアウトに応じてメモのレイアウトを決定することができる。すなわち、コンテンツのレイアウト変更に柔軟に対応してメモのレイアウトを行なうことができる。
以下、図面を参照しつつ本発明の一実施の形態に係るレイアウト装置として機能する表示装置について説明する。なお、以下の説明に用いる図面では、同一の部品に同一の符号を付してある。それらの名称及び機能も同一である。したがって、それらについての詳細な説明は繰返さない。
まず、本実施の形態に係る表示装置によるレイアウト及び表示の対象となるコンテンツ及びメモについて、概要を説明する。図1にコンテンツ及びメモの一例を示す。図1を参照して、コンテンツ40は、文字、文字列、及び画像等の要素(以下、この要素を「表示対象要素」と呼ぶ。)42A,42B,…の集まりである。図1に示す例では、コンテンツ40は表示対象要素42A,42B,…からなる文字列「このあたりの記述は大事な箇所ですので必ずチェックをお願いします。・・・・」である。
表示対象要素42A,42B,…が所定の順序等にしたがいレイアウトされ表示されると、コンテンツ40はユーザにとって視覚的に利用可能な情報になる。コンテンツを表示させる媒体(以下、この媒体を「出力媒体」と呼ぶ。)上での表示対象要素42A,42B,…の位置は、出力媒体に応じて定められる条件及びユーザによる文字サイズ等の指定によって決まる。出力媒体に応じて定められる条件とは、例えば当該出力媒体において表示対象要素42A,42B,…を表示させることができない端の部分、ウィンドウ枠等の表示に使われるためコンテンツ40の表示に使えない部分、及びコンテンツ40を見やすくするために定められた余白部分等である。本明細書では、出力媒体に応じて定められるこれらの制限がない部分、すなわち表示対象要素42A,42B,…を表示できる部分を「レイアウト可能範囲」と呼ぶ。
コンテンツ40は、それを表示する際の設定等により異なる態様で表示される。例えば、コンテンツ40のレイアウト可能範囲、文字のサイズ及びフォント、表示対象要素42A,42B,…同士の間隔、並びに改行位置等の設定によりコンテンツ40の表示態様が変更される。本明細書では、コンテンツ40をレイアウトし表示させる範囲を、「(コンテンツの)レイアウト範囲」と呼ぶ。一般に、レイアウト範囲は、レイアウト可能範囲と同じ範囲、又はレイアウト可能範囲より上下左右に余白を取った分だけ狭い範囲となる。
メモ44は、コンテンツ40に対してユーザが入力する目印、注釈等の情報である。メモ44は、文字列、画像、図形、及び手書き入力の筆跡等の要素(以下、メモの要素を「メモ要素」と呼ぶ。)からなる。図1に示す例では、メモ44は、コンテンツ40中の「大事な箇所」という部分を丸く囲むように手書き入力された目印である。メモ44はコンテンツと独立した情報であるが、多くの場合、コンテンツを構成する表示対象要素の一部又は全部と対応関係にある。
メモ44は、コンテンツ40の表示態様が変更された後の表示においても、コンテンツ40の関連する部分「大事な箇所」を強調するように表示されることが望ましい。すなわち、メモ44は、コンテンツ40を構成する表示対象要素に対し変更前と同じ位置関係にあることが望ましい。
そこで、本実施の形態に係る表示装置は、メモ44をコンテンツ40の表示対象要素42A,42B,…に関連付けるとともに、メモ44と関連付けられた表示対象要素42A,42B,…のメモ44に対する相対位置を特定する。また、メモ44を、メモ要素を示すメモ要素データ、並びにメモ44と関連付けられた表示対象要素及びその相対位置を示す関連付けデータとを含むメモデータとして記録する。メモ44を表示する際には、記録した関連付けデータに基づき、表示対象要素42A,42B,…のレイアウトに応じた位置にメモをレイアウトする。さらに、コンテンツ40の表示態様の変更等がなされ、メモ44を表示対象要素42A,42B,…と関連付けるのが困難なレイアウトとなった場合には、コンテンツ40との関連性が維持されるように、メモを加工する。
図2に、メモの加工例を概略的に示す。図2を参照して、本実施の形態に係る表示装置は、コンテンツとの関連性が維持されるように、メモ44Aの「サイズ変更」、「分割」、及び「複製」を行なう。
「サイズ変更」は、加工前のメモ44Aの幅及び高さの少なくとも一方を変更する加工である。サイズ変更は、メモ44Aに関連付けられた表示対象要素が出力媒体上で占める領域の幅又は高さが変化した場合に行なわれる。メモ44Aをサイズ変更すると、メモ44Aは、メモ44Aとは異なるサイズのメモ44Bに変化する。
「分割」は、それぞれメモ44Aのメモ要素の一部分からなる、新たな分割メモ44C及びメモ44Dを作成する加工である。分割は、例えばメモ44Aに関連付けられている文字列が途中で改行された場合等、レイアウトの変更により、メモ44Aに関連付けられた表示対象要素が出力媒体上で占める領域が、互いに所定の関係を有する複数の領域に分離した場合に行なわれる。
「複製」は、メモ44Aとは別に、加工前のメモ44Aと同様な複製メモ44Eを作成する加工である。複製は、例えばメモ44Aに関連付けられた表示対象要素の表示媒体上での位置関係にずれが生じたり、分離したりしたために、メモ44Aのサイズ変更、及び分割のいずれを行なってもメモ44Aとコンテンツとの相対的な位置関係が維持できない場合に行なわれる。
本実施の形態に係る表示装置は、メモ44Aの表示位置及びサイズ変更、分割、及び複製を組合せてメモ44Aを変更し、コンテンツと併せて表示することにより、コンテンツとメモとの関係を維持する。
図3に、本実施の形態に係る表示装置の構成をブロック図形式で示す。図3を参照して、表示装置50は、図1に示すコンテンツ40、メモ44、及びそれらの表示の際に参照すべきデータを記憶する記憶部60と、コンテンツ40及びその表示態様の変更、並びにメモ44の作成、追加、削除、及び変更等を表示装置50に指示するためのユーザによる操作を受けて、その操作に応じた操作信号を発生する操作部62と、操作部62が発生した操作信号に応じて、記憶部60に記憶されたデータに基づくコンテンツ40及びメモ44のレイアウトの決定、コンテンツ40及びメモ44を表示するための出力信号の生成、並びに記憶部60へのデータの記録及び更新を行なうデータ処理部64と、本実施の形態における出力媒体であり、データ処理部64により生成された出力信号を受けて表示する表示パネル66とを含む。
記憶部60が記憶するデータは、コンテンツ40を構成する表示対象要素42A,42B,…、及びそれらのレイアウトを示すコンテンツデータ70と、メモ44を構成するメモ要素及びメモ要素のレイアウトを示すデータ、並びにメモ44と関連付けられた表示対象要素及びその相対位置を示す関連付けデータを含むメモデータ72と、表示パネル66上のコンテンツ40及びメモ44のレイアウト可能範囲、文字のサイズ及びフォント、表示対象要素42A,42B,…同士の間隔、並びに改行位置等、コンテンツ40の表示に関する設定を示す表示設定データ74とを含む。
表示装置50はさらに、制御部80に接続され、制御部80が外部の記憶装置及びプリンタ等とデータ処理部64との間でコンテンツデータ70等の授受を仲介するインタフェース部68を含む。
操作部62及び表示パネル66は、グラフィカル・ユーザ・インタフェース(GUI)を実現する装置及びソフトウェアの組合せを含む。図4に、操作部62及び表示パネル66の一例を示す。図4を参照して、表示パネル66は、液晶表示パネルを含む。操作部62は、表示パネル66と一体に構成されたタッチパネル100及びタッチパネル上の任意の点を示すための入力ペン102によって構成されたポインティングデバイス、並びに当該ポインティングデバイスと表示パネル66との組合せによりGUIを実現するソフトウェアを含む。操作部62はさらに、上記したポインティングデバイスと同様にGUIを実現する図示しないマウス及びソフトウェアの組合せ、並びに文字等を入力するための図示しないキーボードを含む。
再び図3を参照して、データ処理部64は、操作部62に対する操作をユーザに促すためのメッセージの生成、操作信号に基づく表示設定データ74の変更、及びメモデータ72の編集を行なうとともに、表示装置50の各機能部に対して所定の手順でコンテンツデータ70及びメモデータ72の集配信を行ない、表示装置50の各機能部を制御する制御部80と、制御部80からコンテンツデータ70の配信を受け、表示設定データ74に基づきコンテンツデータ70により示される各表示対象要素の表示パネル66上でのレイアウトを決定するコンテンツレイアウト部82とを含む。
データ処理部64はさらに、制御部80からコンテンツデータ70及びメモデータ72を受けて表示対象要素とメモ要素との対応関係を特定し、メモをどの表示対象要素に対応するようにレイアウトして表示すべきかを示す関連付けデータを作成してメモデータ72に付与し記憶部60に格納する記録部84と、制御部80からコンテンツデータ70及びメモデータ72を受け、コンテンツデータ70及びメモデータ72に付与された関連付けデータに基づきメモ44の加工を行ない、メモ44の表示パネル66上でのレイアウトを決定するメモレイアウト部86と、コンテンツレイアウト部82及びメモレイアウト部86によりそれぞれ決定されたコンテンツ40のレイアウト及びメモ44のレイアウトに基づき、表示パネル66に対する出力信号を生成して表示パネル66に供給する表示制御部88を含む。なお、表示制御部88は、制御部80により出力されるメッセージを出力信号に変換して表示パネル66に供給する機能も有する。
以下、図3に示すコンテンツデータ70について説明する。図5に、コンテンツデータ70の一例を示す。図5を参照して、コンテンツデータ70は、表示対象要素ごとの表示対象要素データ120A,120B,120C,…を含む。これらはいずれも同様のデータ構造を有する。例えば、表示対象要素データ120Aは、表示対象要素の「種類」122と、表示対象要素を識別するための「データ位置」132と、表示対象要素自体を示す「内容」134とを含む。表示対象要素データ120Aはさらに、表示対象要素の位置を示す座標値「X」124及び座標値「Y」126、表示対象要素の大きさを示す幅「W」128及び高さ「H」130を含む。
「種類」122は、表示対象要素の種類を、文字(TEXT)、画像(IMAGE)等の所定の文字列によって示す。「データ位置」132は、表示対象要素が互いに識別可能となるように付与された番号等の情報である。本実施の形態では、「データ位置」132は、コンテンツの表示時に左上から数えた順序を示す。「内容」134は、表示対象要素自体を示す。例えば、「種類」が文字(TEXT)の表示対象要素において「内容」134は、文字コード、フォント、及び色等の情報を含む。種類が画像(IMAGE)の表示対象要素において「内容」134は、その画像の画素データ等を含む。座標値「X」124及び座標値「Y」126は表示対象要素の位置を示す。本実施の形態では、表示対象要素の位置は表示対象要素に外接する矩形領域の左上端部の位置を示す。幅「W」128及び高さ「H」130はそれぞれ、上記した矩形領域の幅及び高さを示す。なお本明細書では、「種類」122、「データ位置」132、並びに「内容」134をまとめて「(表示対象要素の)構成要素データ」と呼ぶ。また、座標値「X」124、座標値「Y」126、幅「W」128、及び高さ「H」130をまとめて、「(表示対象要素の)レイアウトデータ」と呼ぶ。
コンテンツは、予め定められた構造によりレイアウトされることがある。例えば、図1に示すコンテンツ40は、行を単位とする行構造によりレイアウトされている。このように行構造を有するコンテンツ40に対応するコンテンツデータ70は、表示対象要素データ120A,120B,120C,…に加えて、コンテンツ40のレイアウトの構造を示す、行単位のレイアウトデータ(以下、「行レイアウトデータ」と呼ぶ。)140を含む。図6に、行レイアウトデータ140の一例を示す。図6を参照して、行レイアウトデータ140は、行ごとの行要素データ142A,142B,142C,…を含む。これらはいずれも同様のデータ構造を有する。例えば行要素データ142Aは、行を構成する表示対象要素を示す表示対象要素配列152と、表示パネル66において行を構成する表示対象要素に外接する矩形領域の位置を示す座標値「X」144及び座標値「Y」146、並びに当該外接する矩形領域のサイズを示す幅「W」148及び高さ「H」150とを含む。
表示対象要素配列152は、行を構成する表示対象要素の図5に示す「データ位置」132を、行内での表示対象要素のレイアウト順に格納した配列である。例えば、行要素データ142Aが示す行は、「データ位置」が1番から5番までの表示対象要素により構成される。
以下、図3に示すメモデータ72について説明する。図7に、メモデータ72の一例を示す。図7を参照して、メモデータ72は、メモ要素ごとのメモ要素データ160A,160B,160C,…を含む。これらはいずれも同様のデータ構造を有する。例えばメモ要素データ160Aは、メモ要素の「種類」162と、メモ要素自体を示す「内容」172と、メモ要素の位置を示す座標値「X」164及び座標値「Y」166と、サイズを示す幅「W」168及び高さ「H」170とを含む。本明細書では、メモ要素の「種類」162及び「内容」172をまとめて「(メモ要素の)構成要素データ」と呼ぶ。また、座標値「X」164、座標値「Y」166、幅「W」168、及び高さ「H」170をまとめて、「(メモ要素の)レイアウトデータ」と呼ぶ。メモ要素データ160Aはさらに、当該メモ要素をコンテンツ40のどの表示対象要素に対応するように表示すべきかを示す関連付けデータ180を含む。
図8に、関連付けデータ180の一例を示す。図8を参照して、関連付けデータ180は、メモ要素と表示対象要素との相対的な位置関係を示す相対位置データ182と、表示対象要素の内、当該メモ要素と関連するものを示す関連表示対象要素リスト184とを含む。
相対位置データ182は、メモ要素に外接する矩形領域の左上、左下、右上、及び右下の各頂点に近接する表示対象要素をそれぞれ示す頂点要素データ186A,186B,186C,及び186Dを含む。これら頂点要素データはいずれも同じデータ構造を有する。例えば頂点要素データ186Aは、メモ要素に外接する矩形領域の左上頂点に近接する表示対象要素の「データ位置」190と、メモ要素に外接する矩形領域の左上端を原点とする局所座標系におけるその表示対象要素の位置を示す相対座標値「RX」192及び「RY」194と、その表示対象要素の幅「W」196及び高さ「H」198とを含む。相対座標値「RX」192及び「RY」194は局所座標系における表示対象要素の位置により決定される値であると同時に、表示対象要素の位置によってメモ要素に外接する矩形領域の頂点の位置を定義するものともなる。すなわち、これらの相対座標値は、表示対象要素に対するメモの外接矩形領域の相対位置を示すものとなる。
関連表示対象要素リスト184は、行ごとのエントリ200A,200B,…を含む。これらエントリはいずれも同じデータ構造を有する。例えばエントリ200Aは、関連表示対象要素リスト184において行を識別するための「行番号」202と、その行を構成する表示対象要素の「データ位置」を格納した表示対象要素配列204とを含む。表示対象要素配列204に格納される「データ位置」に対応する表示対象要素はそれぞれ、メモ要素に外接する矩形領域と重なる領域に表示される表示対象要素である。
図3に示す表示設定データ74は、表示パネル66のレイアウト可能範囲、コンテンツを構成する表示対象要素の文字サイズ等に関する設定情報を含む。これらの設定情報は、表示パネル66の性能等に基づき予め定められ記憶部60に記憶される。又は、ユーザによる指示にしたがい制御部80により更新され、記憶部60に記憶される。
以下、図3に示すデータ処理部64の各機能部の詳細な構成を示す。
図9に、図3に示す制御部80の構成を示す。図9を参照して、制御部80は、記憶部60、インタフェース部68、コンテンツレイアウト部82、記録部84、及びメモレイアウト部86の間でコンテンツデータ70の集配を行ない、各機能部に対しコンテンツデータ70の処理を要求するコンテンツデータ集配部220と、記憶部60、記録部84、及びメモレイアウト部86の間でメモデータ72の集配を行ない、各機能部に対しメモデータ72の処理を要求するメモデータ集配部222と、図3に示す操作部62に接続され、操作信号を受けてその操作内容を解析する操作信号解析部224と、操作信号解析部224による解析結果に応じて記憶部60内の表示設定データ74を更新してコンテンツレイアウト部82に与える表示設定処理部226と、操作信号解析部224による解析結果に応じてメモデータを生成し、メモデータを記録部84に与えるメモデータ編集部228と、メモデータ集配部222、操作信号解析部224、及びメモデータ編集部228による処理の状況に応じて、ユーザに対して操作を促すメッセージを生成して表示制御部88に与えるメッセージ生成部230とを含む。
メモデータ編集部228は、操作信号を、図7に示すメモデータ72の「内容」172に格納すべきデータに変換する。例えば、図4に示すポインティングデバイス100及び102によるユーザの入力に応じて、操作信号を指示点の位置及び軌跡を示すストロークデータに変換する。さらに、必要に応じて、ストロークデータを手書き文字認識してテキストデータに変換する。さらに、キーボード等から得られる文字、又は文字認識したテキストデータに対し仮名漢字変換を行ない、仮名漢字混じりのテキストデータに変換する。
図10に、図3に示すコンテンツレイアウト部82の構成を示す。図10を参照して、コンテンツレイアウト部82は、コンテンツデータ70及び表示設定データ74を取得し、コンテンツデータ70及び表示設定データ74に基づいてレイアウト可能範囲及びレイアウト範囲を特定するレイアウト範囲特定部242と、表示対象要素の表示パネル66上でのレイアウトを決定してコンテンツデータ70のレイアウトデータ124,…,128(図5参照)及び行レイアウトデータ140(図6参照)を更新し、図3に示す制御部80及び表示制御部88に出力するレイアウト決定部244とを含む。
図11に、図3に示す記録部84の構成を示す。図11を参照して、記録部84は、制御部80よりコンテンツデータ70の表示対象要素データ120A,…(図5参照)及びメモデータ72をもとに、メモに関連付けるべき表示対象要素を特定し関連表示対象要素リスト184(図8参照)を生成するメモ関連表示対象要素取得部260と、メモデータ72とメモ関連表示対象要素取得部260によりメモに関連付けられた表示対象要素の表示対象要素データ120A,…とをもとに、メモに対する表示対象要素の相対位置を算出し相対位置データ182(図8参照)を生成する相対位置算出部262と、生成された関連表示対象要素リスト184(図8参照)、及び相対位置データ182をもとに関連付けデータ180を生成し、メモデータ72に付与して記憶部60に記憶させる関連付けデータ記録部264とを含む。
図12に、図3に示すメモレイアウト部86の構成を示す。図12を参照して、メモレイアウト部86は、記憶部60、制御部80、及びコンテンツレイアウト部82に接続され、コンテンツデータ70及びメモデータ72を取得する取得部280と、取得部280により取得されたコンテンツデータ70及びメモデータ72を受け、メモデータ72の関連付けデータ180(図8参照)に示されるメモと表示対象要素との関係にしたがってメモを表示することが可能か否かを判定し、メモの加工方法を決定する判定部282とを含む。
メモレイアウト部86はさらに、判定部282による決定にしたがい、取得部280が取得したコンテンツデータ70及びメモデータ72をもとに、メモ要素が分割された状態で表示されるよう分割メモを作成し、メモデータ72を変更する分割メモ作成部284と、判定部282による決定にしたがい、取得部280が取得したコンテンツデータ70及びメモデータ72をもとに、メモ44が複製された状態で表示されるよう複製メモを作成しメモデータ72を変更する複製メモ作成部286とを含む。
メモレイアウト部86はさらに、判定部282、分割メモ作成部284、及び複製メモ作成部286の少なくとも1つからメモデータを受け、取得部280により取得されたコンテンツデータ70に基づいてメモ44の表示パネル66における表示位置を算出してメモデータを更新するメモ表示位置算出部288と、メモ表示位置算出部288が更新したメモデータを受け、取得部280により取得されたコンテンツデータ70に基づいてメモの表示パネル66における表示サイズを算出しメモデータ72を更新し、図3に示す制御部80及び表示制御部88に出力するメモ表示サイズ算出部290とを含む。
本実施の形態は、コンピュータハードウェアと、そのコンピュータハードウェアにより実行されるプログラムと、コンピュータハードウェアに格納されるデータとにより実現される。図13に、表示装置50の機能を実現するコンピュータハードウェアの構成を示す。
図13を参照して、コンピュータ300は、表示パネル66と、図4に示すタッチパネル100及び入力ペン102からなるポインティングデバイス301、キーボード302、マウス304からなる入力デバイス群306と、表示パネル66に接続され、内部にグラフィックメモリ308を有するグラフィックサブシステム310と、CPU(中央処理装置)312とを含む。コンピュータ300はさらに、グラフィックサブシステム310、入力デバイス群306の各デバイス、及びCPU312に接続されたバス316と、バス316に接続されたメモリデバイス318を含む。メモリデバイス318は、ブートアッププログラム等を記憶する読出専用メモリ(Read−Only Memory:ROM)320、並びにプログラム命令、システムプログラム、及び作業データ等を記憶するDRAM(Dynamic Random Accesss Memory)322、並びにフラッシュメモリ324を含む。コンピュータ300はさらに、バス316並びにネットワーク及び外部機器に接続される外部インタフェース326とを含む。
コンピュータ300は、外部インタフェース326を介して、CD−ROM(Compact Disc Read−Only Memory)ドライブ330、FD(Flexible Disc)ドライブ332、及びハードディスクドライブ(HDD)334等の外部記憶装置、プリンタ336、並びに外部端末装置338に接続される。なお、これらの外部機器は、バス316に直接に接続されてもよい。また、外部インタフェース326は、ローカルエリアネットワーク(LAN)への接続を提供するネットワークアダプタボードを含んでもよい。なお、入力デバイス群306を構成する各装置は、上記した外部機器と同様に、外部インタフェース326を介してバス316に接続されてもよい。
コンピュータ300に表示装置50の機能を実現させるためのコンピュータプログラムは、外部インタフェース326に接続された外部記憶装置330、332、又は334に記憶され、メモリデバイス318に転送される。又は、プログラムは図示しないネットワークを通じてコンピュータ300に送信されメモリデバイス318に記憶されてもよい。プログラムは、実行の際にDRAM322にロードされる。外部インタフェース326に接続された外部記憶装置330、332、334から、又はネットワークを介して、直接にDRAM322にプログラムをロードしてもよい。
このプログラムは、コンピュータ300に本実施の形態の表示装置50の機能を実現させる複数の命令を含む。これらの機能を実現させるのに必要な基本的機能のいくつかはコンピュータ上で動作するオペレーティングシステム(OS)又はサードパーティのプログラム、若しくはコンピュータにインストールされる各種ツールキットのモジュールにより提供される。したがって、このプログラムはこの実施の形態の表示装置50の機能を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令のうち、所望の結果が得られるように制御されたやり方で適切な機能又は「ツール」を呼出すことにより、上記した表示装置50の動作を実行する命令のみを含んでいればよい。コンピュータの動作は周知であるので、ここでは繰返さない。
図14に、コンピュータを表示装置50として動作させるプログラムの制御構造をフローチャートで示す。図14を参照して、プログラム360が開始されると、ステップ(以下、単に「S」と表記する。)362においてコンテンツデータ70を取得する。S364では、表示設定データ74に基づきコンテンツ40のレイアウトを決定しコンテンツデータ70を更新するコンテンツレイアウト処理を行なう。コンテンツレイアウト処理の詳細については図15を参照しつつ後述する。続くS366では、S364で決定されたレイアウトにしたがいコンテンツ40を表示パネル66に表示させる。S368では、メモデータ72の存在の有無を判定する。メモデータ72が存在すればS370に進む。さもなければS376に進む。
S370では、記憶されているメモデータ72を取得する。S372では、取得したメモデータ72をもとに、メモ44のレイアウトを決定するメモレイアウト処理を行なう。メモレイアウト処理の詳細については図16を参照しつつ後述する。続くS374では、S372で決定されたレイアウトにしたがいメモ44を表示パネル66に表示させる。
S376では、コンテンツ40の表示設定を変更するか否かをユーザによる指示に基づき判定する。ユーザより変更する旨の指示を得たならばS378に進む。さもなければS380に進む。S378では、変更する旨の指示にしたがい表示設定データ74を更新し、S364に戻る。
S380では、メモ44の記録を行なうか否かを、ユーザによる指示に基づき判定する。ユーザよりメモ44を記録する指示を得たならばS382に進む。さもなければS384に進む。S382では、S380で得た指示にしたがいメモデータ72を編集し、関連付けデータ180を付与してメモデータ72を記録するメモ記録処理を行なう。メモ記録処理の詳細については図17を参照しつつ後述する。S384では、プログラム360を終了するか否かを、ユーザによる指示に基づき判定する。終了する旨の指示を得たならばプログラム360を終了する。さもなければS368に戻る。
図15に、図14に示すS364で実行されるコンテンツレイアウト処理の制御構造を示す。図15を参照して、コンテンツレイアウト処理400が開始されると、S402では、表示設定データ74を取得し、その中から表示パネル66のレイアウト可能範囲を特定する。S404では、コンテンツデータ70及び表示設定データ74に基づき、コンテンツ40のレイアウト範囲を特定する。S406では、特定したレイアウト範囲をもとに、表示パネル66上でのコンテンツ40のレイアウトを決定し、コンテンツデータ70中のレイアウトデータ124、126、128、及び130(図5参照)並びに行レイアウトデータ140(図6参照)を更新し、コンテンツレイアウト処理400を終了する。
図16に、図14に示すS372で実行されるメモレイアウト処理の制御構造を示す。図16を参照して、メモレイアウト処理420が開始されると、S422において、メモデータ72内の関連付けデータ180(図7参照)から相対位置データ182を取得する。S424では、関連付けデータ180の関連表示対象要素リスト184を取得し、メモ44に関連付けられた表示対象要素を特定する。S426では、関連表示対象要素リスト184(図8参照)に示すエントリ200A,200B,…の中から処理対象となるエントリ(以下、「処理対象行」と呼ぶ。)を1行目と定め、処理対象行の表示対象要素配列204に格納されている、各表示対象要素EN(N=1,2,…)の「データ位置」を取得し、S428に進む。
S428からS436までの一連のステップでは、関連表示対象要素リスト184と行レイアウトデータ140とを照合し、処理対象行及びその前行のエントリにおける表示対象要素配列204を構成する各表示対象要素のコンテンツ40の行構造上での位置関係に基づき、メモ44を分割又は複製するか否かの判定を、以下のようにして行なう。
S428では、処理対象行を構成する表示対象要素が、行構造上複数の行にわたってレイアウトされている状態にあるか否かを次のようにして判定する。すなわち、まず、処理対象行に含まれる表示対象要素ENのうち、先頭に位置する表示対象要素E1の「データ位置」と、コンテンツデータ70の行レイアウトデータ140(図6参照)において表示対象要素E1を含む行要素L1とを特定する。次に、表示対象要素ENのうち処理対象行の2番目以降に位置するものの「データ位置」が、行要素L1の表示対象要素配列152に格納されているか否かを判定する。表示対象要素ENのうち行要素L1に含まれていないものがあるならば、処理対象行に含まれる表示対象要素が複数行にわたってレイアウトされていることになるため、判定結果はYESとなる。処理は後述するS438に進み、分割メモを作成する処理を行なう。さもなければ、処理対象行に含まれる表示対象要素が全て同一の行にレイアウトされていることになるため、判定結果はNOとなり、処理はS430に進む。
S430では、処理対象行の表示対象要素と、その前行のエントリにおける表示対象要素配列204を構成する表示対象要素とが、コンテンツ40の行構造上、同一の行に位置するものであるか否かを次のようにして判定する。すなわち、まず、関連表示対象要素リスト184における処理対象行の前行のエントリを参照し、当該前行のエントリにおける表示対象要素配列204の最後に位置する表示対象要素EP1の「データ位置」を取得する。次に、行レイアウトデータ140(図6参照)から、表示対象要素配列に表示対象要素EP1を含む行要素LP1を特定する。さらに、処理対象行に含まれる表示対象要素ENのうち、当該処理対象行の最後に位置する表示対象要素ED1の「データ位置」が、行要素LP1の表示対象要素配列152に含まれているか否かを判定する。表示対象要素ED1の「データ位置」が行要素LP1の表示対象要素配列152に含まれているならば、行要素L1と行要素LP1とは同一の行要素であることになるため、判定結果はYESとなり、処理はS432に進む。さもなければ、行要素LP1と行要素L1とは別の行要素となるため判定結果はNOとなり、処理はS434に進む。ただし、処理対象の行が関連表示対象要素リスト184における1行目である場合は、判定結果をNOとし、処理はS434に進む。
S432では、行要素L1(=LP1)の表示対象要素配列152を走査し、処理対象行及び関連表示対象要素リスト184における処理対象の前行を構成する表示対象要素が、行要素L1内で連続する位置にあるか否かを判定する。例えば、表示対象要素EP1の次の要素として処理対象行の先頭にある表示対象要素E1が格納されているならば、現在のレイアウトにおいて、処理対象行を構成する表示対象要素E1と前行のエントリにおける表示対象要素配列204を構成する表示対象要素とが、行要素L1内で連続する位置にあることになる。さもなければ、表示対象要素EP1と表示対象要素E1との間に、メモに関連付けられていない表示対象要素が挟まっていることになる。処理対象行及び関連表示対象要素リスト184における処理対象の前行を構成する表示対象要素の全てが連続する位置にあるならば、判定結果はYESとなる。処理は後述するS440に進み、複製メモを作成する処理を行なう。処理対象行及び関連表示対象要素リスト184における処理対象の前行を構成する表示対象要素のいずれかの間に、メモに関連付けられていない表示対象要素が挟まっているならば、判定結果はNOとなる。処理は後述するS438に進み、分割メモを作成する処理を行なう。
処理がS430からS434に進んだ場合、処理対象行の表示対象要素を含む行要素L1と、処理対象行の前行のエントリにおける表示対象要素配列204を構成する表示対象要素を含む行要素LP1とが、上記のとおり別の行であることになる。S434では、行レイアウトデータ140を走査し、現在のコンテンツのレイアウトにおいて行要素L1と行要素LP1との間に、他の行要素が挟まった状態にあるか否かを判定する。他の行要素が挟まった状態にあれば判定結果はYESとなり、処理は後述するS440に進み複製メモを作成する処理を行なう。さもなければ、行要素L1と行要素LP1とは互いに隣接する行を示すものであることになり、処理はS436に進む。ただし、処理対象が関連表示対象要素リスト184における1行目である場合は、判定結果をNOとし、処理はS436に進む。
S436では、処理対象行を構成する表示対象要素と、関連表示対象要素リスト184における前行のエントリにおける表示対象要素配列204を構成する表示対象要素とが、行要素L1及び行要素LP1において、行を横断する方向(以下、この方向を「列方向」と呼ぶ。)に連続する位置にあるか否かを次のようにして判定する。すなわち、まず、処理対象行の先頭に位置する表示対象要素E1の「データ位置」が行要素L1の表示対象要素配列152の何番目に格納されているかを特定し、その位置を示すインデックス値を取得する。また、関連表示対象要素リスト184における前行のエントリの表示対象要素配列204において先頭に位置する表示対象要素EP0を特定し、表示対象要素EP0の行要素LP1の表示対象要素配列152におけるインデックス値を取得する。次に、表示対象要素E1のインデックス値と表示対象要素EP0のインデックス値とを照合し、両者が一致するか否かを判定する。インデックス値が一致するならば、表示対象要素E1と表示対象要素EP0とは列方向に連続する位置にあることになる。すなわち処理対象行を構成する表示対象要素と、関連表示対象要素リスト184における前行のエントリにおける表示対象要素配列204を構成する表示対象要素とが列方向に連続する位置にあることになる。そのため判定結果はYESとなり、処理は後述するS444に進む。さもなければ、表示対象要素E1と表示対象要素EP0とは列方向に不連続な位置にあることになる。すなわち処理対象行を構成する表示対象要素が関連表示対象要素リスト184における前行のエントリにおける表示対象要素配列204を構成する表示対象要素に対して、行方向にずれた位置にあることになる。そのため、判定結果はNOとなり、処理は後述するS440に進み、複製メモを作成する処理を行なう。ただし、処理対象が関連表示対象要素リスト184における1行目である場合は、判定結果をYESとし、処理はS444に進む。
処理が、上記したS428又はS432からS438に進むと、S438では、複数行に分散された各表示対象要素のレイアウトデータと、関連付けデータ180の相対位置データ182とに基づき、次のようにして、処理対象行の表示対象要素に関連付けるための分割メモ(図2参照)を作成する。すなわち、まず、行レイアウトデータ140(図6参照)と関連表示対象要素リスト184(図8参照)とを照合し、コンテンツがどの位置で改行されているかを特定し、メモの分割位置を設定する。また、処理対象行に対してメモを表示した場合のメモの外接矩形領域を特定し、設定した分割位置で、特定したメモの外接矩形領域を分割する。続いて、分割前のメモの外接矩形領域にあわせて表示したメモを仮定し、当該メモのうち分割後の外接矩形領域において表示されるべき部分からなるメモ要素を、分割後の外接矩形領域ごとに作成し、それぞれ分割メモのメモ要素とする。また、各分割メモの外接矩形領域の表示パネル66上での位置及びサイズを特定する。このようにして作成された分割メモのメモ要素及び各分割メモの位置及びサイズをもとに、各分割メモのメモ要素データ160A,…(図7参照)を作成する。さらに、特定された改行位置に基づき各分割メモの関連表示対象要素リスト184を作成する。処理はS442に進む。
処理が上記したS432、S434、又はS436からS440に進むと、S440では、処理対象の行においてメモと関連付けられた各表示対象要素のレイアウトデータと、関連付けデータ180の相対位置データ182とに基づき、処理対象行の表示対象要素に関連付けるための複製メモ(図2参照)を作成する。すなわち、まず、新たなメモ要素データを準備し、メモ要素データ160A,…(図7参照)と同一の「内容」172を格納する。このメモ要素データが、複製メモについてのメモ要素データとなる。続いて、処理対象の前行を構成する一群の表示対象要素、及び当該前行の表示対象要素と連続する位置にある処理対象行の表示対象要素を、複製メモの関連表示対象要素とし、関連表示対象要素リスト184を作成する。処理はS442に進む。
S442では、S438又はS440で新たに作成された、分割メモ又は複製メモのメモ要素データ160A,…について、新たに作成された関連表示対象要素リスト184に基づいて頂点関連要素を特定して新たな相対位置データ182を作成する。関連表示対象要素リスト184と合せて関連付けデータ180を作成し、分割メモ又は複製メモのメモ要素データ160A,…に付与する。処理はS444に進む。
上記したS428からS442までの処理により、1つの処理対象行についてのメモ44の処理が完了する。処理が、上記したS436又はS442からS444に進むと、S444では、関連表示対象要素リスト184に、処理対象行の次行分のエントリが存在するか否かを判定する。次の行のエントリが存在するならばS446に進む。さもなければS448に進む。S446では、関連表示対象要素リスト184における次の行を処理対象に定め、処理対象に含まれる各表示対象要素の「データ位置」を取得してS428に戻る。
S448では、コンテンツデータ70内の各表示対象要素のレイアウトデータと、メモデータ72に付与された関連付けデータ180の相対位置データ182とに基づいて、メモの外接矩形領域の各頂点座標を算出する。
S450では、S448で算出した頂点座標をもとに、メモ44のサイズを変更する必要があるか否かを判定する。サイズ変更が必要であるならば、S452に進む。さもなければ、メモレイアウト処理420を終了する。S452では、S448で算出した頂点座標をもとに、コンテンツのその時点でのレイアウトに対応するメモ要素の幅及び高さを算出してメモ44のサイズを変更し、コンテンツレイアウト処理420を終了する。
図17に、図14に示すS382において実行されるメモ記録処理の制御構造を示す。図17を参照して、メモ記録処理480が開始されると、S482において、ユーザによる編集の指示を受けて、その操作信号を文字、画像、又は手書きデータ等に変換し、メモデータ72(図7参照)を更新する。
S484では、コンテンツデータ70に基づきメモ44に関連する表示対象要素を次のようにして特定し、それらの表示対象要素についての「データ位置」及びレイアウトデータを取得する。すなわち、まず、メモデータ72(図7参照)のレイアウトデータ164,…,170をもとに、メモの外接矩形領域を特定する。続いて、コンテンツデータ70(図5参照)に示される各表示対象要素のレイアウトデータ124,…,130をもとに、各表示対象要素の外接矩形領域を特定し、その外接矩形領域がメモの外接矩形領域と重なる表示対象要素を選び、それらの「データ位置」132(図5参照)を取得する。
S486では、S484で取得した「データ位置」及び表示対象要素のレイアウトデータをもとに、メモ44に対する表示対象要素の相対位置を次のようにして算出する。すなわち、まず、メモの外接矩形領域の各頂点の位置を特定する。次に、S484で選ばれた表示対象要素のうちそれら各頂点から最も近い位置にあるものを選び、それぞれメモの頂点関連要素とする。さらに、メモの外接矩形領域の左上頂点を原点とする相対座標系を設定し、コンテンツデータ70により示される頂点関連要素の位置を取得し、相対座標系における座標値に変換することにより、相対位置を得る。
S488では、S484で取得した「データ位置」及びレイアウトデータと、S486で算出した相対位置とをもとに、メモ44の関連付けデータ180(図8参照)を作成する。S490では、S482で更新したメモデータ72にS488で作成された関連付けデータ180を付与して記録する。
表示装置50は以下のように動作する。表示装置50の動作には、コンテンツデータ70に基づいてコンテンツ40のレイアウトを決定し当該コンテンツ40を表示する動作と、メモ44をコンテンツ40に関連付けてメモデータ72として記録する動作と、メモデータ72に基づきメモ44を表示する動作とがある。また、表示装置50は、ユーザに操作を促すメッセージを作成して表示し、ユーザからの指示操作を受けて次に行なうべき動作を決定する。
まず、表示装置50がコンテンツを表示させる動作について説明する。図9を参照して、制御部80のコンテンツデータ集配部220は、図3に示す記憶部60から又はインタフェース部68を介して外部の記憶装置等から、コンテンツデータ70を取得し図3に示すコンテンツレイアウト部82に与える。
図10を参照して、コンテンツデータ70は、コンテンツレイアウト部82のレイアウト範囲特定部242及びレイアウト決定部244に与えられる。レイアウト範囲特定部242は、コンテンツデータ70が与えられたことに応答して、図3に示す記憶部60から表示設定データ74を取得する。レイアウト範囲特定部242は、表示設定データ74に基づいて表示パネル66におけるレイアウト可能範囲を特定する。レイアウト範囲特定部242は、特定したレイアウト可能範囲、並びに表示設定データ74により示される1行の文字数、余白、及び文字サイズ等をもとに、コンテンツ40のレイアウト範囲を特定する。レイアウト範囲特定部242は、コンテンツのレイアウト範囲をレイアウト決定部244に通知する。
レイアウト決定部244は、与えられたコンテンツデータ70(図5参照)とレイアウト範囲の通知とをもとに、レイアウト範囲内での各表示対象要素42A,42B,…のレイアウトすなわち表示対象要素の位置とサイズとを決定する。レイアウト決定部244は、決定したレイアウトに基づき表示対象要素のレイアウトデータ124、126、128、及び130(図5参照)、並びに行レイアウトデータ140(図6参照)を生成又は更新する。レイアウト決定部244は、更新されたコンテンツデータ70を、図3に示す制御部80及び表示制御部88に与える。
図3を参照して、表示制御部88は、コンテンツレイアウト部82より与えられたコンテンツデータ70を出力信号に変換して表示パネル66に出力する。表示パネル66は、表示制御部88からの出力信号を表示する。以上の動作により、コンテンツ40の各表示対象要素42A,42B,…が、決定されたレイアウトにしたがって表示パネル66上に表示される。
図18(A)に、表示パネル66によるコンテンツ40の表示例を示す。図18を参照して、表示パネル66におけるコンテンツのレイアウト可能範囲500内に、レイアウト範囲502が定められる。さらに、レイアウト範囲502内に表示対象要素42A,42B,…が、行構造にしたがいレイアウトされ、表示される。
図9を参照して、制御部80のコンテンツデータ集配部220は、コンテンツレイアウト部82からコンテンツデータ70が与えられたことに応答して、当該コンテンツデータ70を記憶部60、記録部84、及びメモレイアウト部86(図3参照)に与え、処理が完了したことをメモデータ集配部222に通知する。記憶部60は、与えられたコンテンツデータ70を記憶する。記録部84及びメモレイアウト部86は、与えられたコンテンツデータ70を一時的に保持する。
以下に、メッセージを表示し、ユーザからの指示操作を受けて次に行なうべき動作を決定する動作を説明する。
上記したコンテンツデータ集配部220からの通知に応答して、メモデータ集配部222は、記憶部60からのメモデータ72の取得を試みる。メモデータ72の取得に成功した場合、メモデータ集配部222は、メモデータ72をメモレイアウト部86(図3参照)に与えてメモのレイアウトを決定し表示する動作を実行させ、その後にメッセージ生成部230に通知を与える。この動作については後述する。メモデータの取得に失敗した場合、メモデータ集配部222は、その時点でメッセージ生成部230に通知を与える。
メモデータ集配部222からの通知に応答して、メッセージ生成部230は、コンテンツ40の表示設定の変更指示をユーザに促すためのメッセージを表示制御部88(図3参照)に与える。表示制御部88は、与えられたメッセージを表示パネル66に表示させる。
ユーザが図3に示す操作部62を用いて、表示設定の変更を指示する操作を行なうと、操作部62はその操作に応じた操作信号を発する。図9に示す制御部80の操作信号解析部224は、発生した操作信号を解析し操作内容を特定する。操作内容が表示設定の変更を指示するものであることに応答して、操作信号解析部224は、その指示を表示設定処理部226に与え、表示設定の変更に伴う一連の動作を開始させる。表示設定の変更に伴う一連の動作については後述する。操作内容が表示設定の変更を行なわない旨の指示であることに応答して、操作信号解析部224は、メッセージ生成部230に通知を与える。
メッセージ生成部230は、操作信号解析部224からの通知に応答して、メモの作成又は更新をユーザに促すメッセージを表示制御部88(図3参照)に与える。表示制御部88は、コンテンツの表示に併せて、与えられたメッセージが表示されるよう出力信号を生成し、表示パネル66に表示させる。
ユーザが、表示されたメッセージに応じ、操作部62を用いてメモ44の入力操作を行なうと、操作部62は操作に応じた信号を発生する。制御部80の操作信号解析部224は、操作部62で発生した操作信号を解析し、操作内容を特定する。操作信号がメモ44の入力操作であると特定されたことに応答して、操作信号解析部224は操作信号をメモデータ編集部228に与え、メモ44を記録する動作を開始させる。メモ44を記録する動作については後述する。操作内容がメモ44の作成又は更新を行なわない旨の指示であることに応答して、操作信号解析部224は、メッセージ生成部230に通知を与える。メッセージ生成部230は、操作信号解析部224からの通知に応答して、表示装置50の一連の動作を終了するか否かの選択をユーザに促すメッセージを表示制御部88(図3参照)に与える。表示制御部88は、コンテンツの表示に併せて、与えられたメッセージが表示されるよう出力信号を生成し、表示パネル66に表示させる。
ユーザが、表示されたメッセージに応じ、操作部62を用いて操作を行なうと、操作部62は、操作に応じた信号を発生する。制御部80の操作信号解析部224は、操作部62で発生した操作信号を解析し、操作内容を特定する。操作信号が動作の終了を指示するものであると特定されたことに応答して、表示装置50は、一連の動作を終了する。さもなければ、操作信号解析部224は、メモデータ集配部222に処理の開始を要求し、一連の動作を継続する。
以下、表示装置50が、コンテンツ40の表示対象要素42A,42B,…に関連付けてメモ44を記録する動作について説明する。
例えば、図18(A)に示すコンテンツ40が表示パネル66に表示された後、ユーザが、メッセージに応じて、図18(B)に示すように、コンテンツ40中の「大事な箇所」が表示されている部分を囲む位置にメモ44の入力を行なったものとする。
図3を参照して、操作部62は、この入力操作に応じた信号を発生する。制御部80の操作信号解析部224(図9参照)が上記のとおり操作信号を解析し、その操作がメモ44の入力操作であると特定すると、操作信号解析部224は、当該操作信号をメモデータ編集部228に与える。
メモデータ編集部228は、与えられた操作信号からメモ44の図7に示す種類162を特定し、操作信号をメモ44の内容172に変換する。図18(B)に示す例では、与えられた操作信号からメモの種類162がストロークデータであることを特定し、さらに、操作信号から指示点の位置及び軌跡を同定することにより当該操作信号をストロークデータに変換する。メモデータ編集部228はさらに操作信号をもとに、図18(B)に示すメモ44の外接矩形領域510を特定し、その左上端の位置(X,Y)、並びに外接矩形領域の幅W及び高さHを求めて、メモ44のレイアウトデータ164,…,170(図7参照)を作成する。メモデータ編集部228は、メモ44の種類162、内容172とメモのレイアウトデータ164,…,170とを合せてメモデータ72を作成して記録部84に与える。ただし、この時点では、メモ要素と表示対象要素との関連付けは行われておらず、メモデータ72には適切な関連付けデータ180が付与されていない状態にある。
図11を参照して、記録部84のメモ関連表示対象要素取得部260には、コンテンツデータ70が既に与えられている。メモ関連表示対象要素取得部260は、制御部80からメモデータ72が与えられたことに応答して、メモデータ72(図7参照)のレイアウトデータ164,…,170をもとに、図18(B)に示すメモ44の外接矩形領域510を特定する。また、メモ関連表示対象要素取得部260は、コンテンツデータ70(図5参照)に示される各表示対象要素のレイアウトデータ124,…,130をもとに、各表示対象要素の外接矩形領域を特定する。メモ関連表示対象要素取得部260は、表示対象要素42A,42B,…のうち、その外接矩形領域がメモ44の外接矩形領域510と重なるものを選び、それらの「データ位置」132(図5参照)を取得する。図18(B)に示す例では、文字列「大事な箇所」を構成する表示対象要素が選ばれる。メモ関連表示対象要素取得部260は、選んだ各表示対象要素の「データ位置」を、行レイアウトデータ140(図6参照)に示される表示対象要素の行構造に基づき行ごとにまとめ、図8に示す関連表示対象要素リスト184を作成する。メモ関連表示対象要素取得部260は、作成した関連表示対象要素リスト184を相対位置算出部262と関連付けデータ記録部264とに与える。
相対位置算出部262は、与えられた関連表示対象要素リスト184(図8参照)をもとに、選ばれた表示対象要素の外接矩形領域510を特定する。図19に、メモ44と選ばれた表示対象要素との位置関係を概略的に示す。図19を参照して、上記のとおりメモ44の外接矩形領域510は、選ばれた表示対象要素520A,…,520Eの外接矩形領域522A,…,522Eの各々と重なっている。相対位置算出部262は、メモデータ72(図7参照)のレイアウトデータ164,…,170をもとに、メモ44の外接矩形領域510の各頂点524A,524B,524C,及び524Dの位置を特定する。相対位置算出部262は、メモ44の外接矩形領域510の各頂点524A,…,524Dから最も近い位置にある表示対象要素を選び、それぞれメモ44の頂点関連要素とする。例えば、外接矩形領域510の左上頂点524Aの頂点関連要素は、表示対象要素「大」520Aである。
次に相対位置算出部262は、メモ44の外接矩形領域510の左上端524Aを原点とする相対座標系526を設定し、頂点関連要素(例えば表示対象要素520A)の左上端528の位置「X」及び「Y」を、相対座標系526における座標値「RX」及び「RY」に変換する。相対位置算出部262は、各頂点関連要素のデータ位置、相対座標系における座標値「RX」及び「RY」、並びに各頂点関連要素の幅「W」及び高さ「H」をもとに、図8に示す相対位置データ182を作成する。相対位置算出部262は、作成した相対位置データ182を関連付けデータ記録部264に与える。
関連付けデータ記録部264は、与えられた関連表示対象要素リスト184と相対位置データ182とを合せて関連付けデータ180を作成し、メモデータ72(図7参照)に付与して、図3に示す記憶部60に格納する。
以上の動作により、メモ44はコンテンツ40の表示対象要素42A,42B,…に関連付けられ、メモデータ72として記憶部60に記憶される。
以下に、表示装置50がメモデータ72に基づきメモ44を表示する動作について説明する。
図3を参照して、記憶部60は、記録部84より与えられたメモデータ72を記憶するとともに、制御部80に対して出力する。図9に示す制御部80のメモデータ集配部222は、記憶部60からメモデータ72を取得すると、当該メモデータ72をメモレイアウト部86に与え、メモの表示を要求する。
図12を参照して、メモレイアウト部86の取得部280は、予めコンテンツデータ70をコンテンツレイアウト部82より受けている。取得部280はコンテンツデータ70とメモデータ72とを受けると、コンテンツデータ70の行レイアウトデータ140(図6参照)と、メモデータ72の関連付けデータ180(図8参照)とを判定部282に与える。判定部282は、関連付けデータ180の関連表示対象要素リスト184と、行レイアウトデータ140とを照合し、メモの分割又は複製が必要か否かを判定する。ここでは、分割及び複製が必要ないと判定されたものとする。この場合、判定部282は、コンテンツデータ70及びメモデータ72をメモ表示位置算出部288に与える。
メモ表示位置算出部288は、判定部282からコンテンツデータ70及びメモデータ72が与えられたことに応答して、図8に示す関連付けデータ180の相対位置データ182を参照し、メモ44の外接矩形領域の各頂点の表示パネル66上での位置を算出する。
例えば、図19に示すメモ44の外接矩形領域510の左上頂点524Aの表示パネル66上での位置は次のように算出される。ここに、頂点関連要素520Aについての頂点要素データ186A(図8参照)により示される頂点関連要素520Aの相対座標を(RX,RY)、幅をW、高さをHとし、コンテンツデータ70(図5参照)により示される、頂点関連要素520Aの左上頂点528の表示パネル66上での座標を(XA1,YA1)、幅をWA1、高さをHA1とする。メモ44の左上頂点524Aの表示パネル66上での座標を(XL,YL)とすると、XL=XA1−RX×(WA1/W)、YL=YA1−RY×(HA1/H)となる。メモ表示位置算出部288は、同様にしてメモ44の外接矩形領域の各頂点について、表示パネル66上での座標を算出する。
メモ表示位置算出部288は、メモデータ72により示されるメモ44の位置「X」164及び「Y」166(図7参照)の値を、算出したメモの左上端の位置「XL」及び「YL」に更新する。メモ表示位置算出部288は、メモデータ72と算出した各頂点の表示パネル66上での座標とをメモ表示サイズ算出部290に与える。
メモ表示サイズ算出部290は、メモ表示位置算出部288より与えられた、外接矩形領域510(図19参照)の頂点524A,…,524Dの座標を用いて、現在のコンテンツ40のレイアウトに対応するメモ44の幅W’及び高さH’を算出する。メモ表示サイズ算出部290は、与えられたメモデータの幅「W」168及び高さ「H」170(図7参照)を、メモ表示サイズ算出部290により算出された、メモ44の幅W’及び高さH’に変更する。メモ表示サイズ算出部290は、処理後のメモデータ72を制御部80及び表示制御部88に与える。
図9に示す制御部80のメモデータ集配部222は、与えられたメモデータ72を図3に示す記録部84に与えるとともに、当該メモデータ72を記憶部60に格納し、メッセージ生成部230に通知を与える。図3に示す表示制御部88は、与えられたメモデータ72のレイアウトデータにより示される位置及びサイズで、メモの構成要素データにより示されるメモの要素が表示されるよう、出力信号を生成し、表示パネル66に表示させる。
以上の動作により、図18(B)に示すように、ユーザにより入力されたメモとコンテンツ40との位置関係と同じ位置関係で、コンテンツ40とメモ44とが表示パネル66上に表示される。
以下に、表示装置50が、表示設定の変更に伴い、コンテンツ40の表示を変更する動作について説明する。
上記のとおり、ユーザがメッセージに応じて表示設定の変更を指示する操作を行なうと、図3に示す操作部62がその操作に応じた信号を発生する。図9に示す制御部80の操作信号解析部224は操作内容を解析し、操作信号が表示設定の変更指示であると特定されると、当該表示設定の変更指示を表示設定処理部226に与える。
表示設定処理部226は、表示設定の変更指示に応答して、図3に示す記憶部60から表示設定データ74を取得し、与えられた指示にしたがい表示設定データ74を変更する。表示設定処理部226は、変更した表示設定データ74を記憶部60に記憶させるとともに、図3に示すコンテンツレイアウト部82に与える。
図10を参照して、コンテンツレイアウト部82のレイアウト範囲特定部242は、制御部80から表示設定データ74を受けると、図9に示す制御部80のコンテンツデータ集配部220にコンテンツデータ70を要求する。この要求に応答して、コンテンツデータ集配部220は、記憶部60からコンテンツデータ70を取得し、コンテンツレイアウト部82に与える。図10を参照して、レイアウト範囲特定部242及びレイアウト決定部244は、上記した動作と同様の動作で新たな表示設定データ74に基づきコンテンツ40のレイアウト範囲及びレイアウトを決定し、コンテンツデータ70の行レイアウトデータ140(図6参照)及び各表示対象要素のレイアウトデータ124,…,130(図5参照)を更新する。更新されたコンテンツデータ70は、図3に示す制御部80及び表示制御部88に与えられる。
制御部80のコンテンツデータ集配部220(図9参照)は、与えられたコンテンツデータ70を記憶部60、記録部84、及びメモレイアウト部86に与え、メモデータ集配部222に通知を与える。表示制御部88は、与えられたコンテンツデータ70を出力信号に変換し、表示パネル66に表示させる。
以上の動作により、コンテンツ40の表示は、表示設定の変更に応じたものとなるが、この時点では、メモ44は、コンテンツ40の表示態様の変更に追従していないので、図3に示す制御部80及びメモレイアウト部86は、以下の動作によりメモ44のレイアウトを変更する。
図9を参照して、制御部80のコンテンツデータ集配部220からの通知に応答して、メモデータ集配部222は、記憶部60からのメモデータ72の取得を試みる。この試みが成功すると、メモデータ集配部222は取得しメモレイアウト部86に与えてメモのレイアウト決定及び表示を要求する。
図12を参照して、メモレイアウト部86の取得部280は、新たにメモデータ72を受けると、コンテンツデータ70及びメモデータ72を判定部282に与える。判定部282は、コンテンツデータ70の行レイアウトデータ140とメモデータの関連表示対象要素リスト184とを照合し、関連表示対象要素リスト184(図8参照)に示すエントリ200A,200B,…ごとに、以下のようにして、メモ44の分割及び複製の要否を判定する。
判定部282は判定に先立ち、関連表示対象要素リスト184(図8参照)のエントリ200A,200B,…のうち1行目に対応するものを処理対象行に定め、処理対象行の表示対象要素配列204を取得しておく。
判定部282は、処理対象行に含まれる表示対象要素が、現時点のコンテンツのレイアウトにおいて複数の行にわたってレイアウトされている状態にあるか否かを判別する。複数の行にわたってレイアウトされているならば、処理対象行に含まれる表示対象要素の外接矩形領域は、改行位置で分離された状態にある。この場合、判定部282は、処理対象行に含まれる表示対象要素に関連付けてメモを表示するには、メモの分割を行ない分割メモ(図2参照)を作成する必要があると判定する。判定部282は、分割メモ作成部284に対して処理対象行についての分割メモの作成を要求し、当該処理対象行を、分割及び複製の要否の判定対象から除外する。複数の行にわたってレイアウトされていなければ、当該処理対象行については、分割メモを作成する必要はない。ただし、関連表示対象要素リスト184における次の行のエントリに含まれる表示対象要素との位置関係により、分割又は複製の処理が必要となる場合がある。そのため、当該処理対象行についての判定を保留しておく。
判定部282は、関連表示対象要素リスト184(図8参照)のエントリ200A,200B,…のうち次の行に対応するものを、新たな処理対象行に定め、処理対象行の表示対象要素配列204を取得する。判定部282は、新たな処理対象行についても同様に、処理対象行に含まれる表示対象要素が、複数の行にわたってレイアウトされている状態にあるか否かを判別して、分割メモの作成の要否を判定する。分割が必要であるという判定結果を得た場合、判定部282は、上記した同様の動作で当該処理対象行についての分割メモの作成を要求し、処理対象行を、分割及び複製の要否の判定対象から除外する。この判定により、分割メモの作成が必要ないと判定された場合、判定部282は、前行分のエントリについての判定が保留されたままになっているかを確認する。保留されていなければ、当該処理対象行についての判定を保留しておく。
前行分のエントリについての判定が保留されたままになっている場合、判定部282は、前行分のエントリに含まれる表示対象要素と、処理対象行に含まれる表示対象要素との関係に基づき、以下のようにして、メモ44の分割及び複製の要否を判定する。
判定部282は、処理対象行の表示対象要素と、その前行のエントリに含まれる表示対象要素とが、コンテンツ40の現在のレイアウトにおいて、同一の行に位置するものであるか否かを判定する。両者の表示対象要素が同一の行に位置する場合、保留されている前行分の表示対象要素及び処理対象行以降のエントリに含まれる表示対象要素すなわち未判定の表示対象要素が表示パネル66上で占める領域は、次に示すいずれかの状態になる。すなわち、前行分のエントリに含まれる表示対象要素の占める領域が、処理対象行以降のエントリに含まれる表示対象要素の占める領域から分離した状態になるか、又は突出した状態になるかのいずれかである。このいずれの状態においても、1つのメモ要素をサイズ変更するだけでは、メモと各表示対象要素との相対的な位置関係を維持することができない。よってこの場合判定部282は、分割メモ又は複製メモ(図2参照)の作成が必要であると判定する。判定部282はさらに、分割メモを作成するか、複製メモを作成するかを次のように決定する。
すなわち、判定部282は、処理対象行に含まれる表示対象要素と前行分のエントリに含まれる表示対象要素とが同一行内で連続する位置にあるかを判定する。両者が連続する位置にあるとの判定結果を得ると、判定部282は、複製メモを作成することでメモとコンテンツとの対応関係を維持することを決定する。この場合、判定部282は、複製メモ作成部286に対し、前行分のエントリを含む、判定を保留していた各エントリに含まれる表示対象要素についての複製メモの作成を要求し、当該各エントリを分割及び複製の要否の判定対象から除外する。両者が連続する位置にないとの判定結果を得ると、判定部282は、分割メモを作成することでメモとコンテンツとの対応関係を維持することを決定する。この場合、判定部282は、分割メモ作成部284に対し、処理対象行及びその前行分のエントリに含まれる表示対象要素についての分割メモの作成を要求し、当該処理対象行及びその前行分のエントリを分割及び複製の要否の判定対象から除外する。判定部282は、この決定の後、さらに次の行に対応するものを、新たな処理対象行に定め、処理対象行の表示対象要素配列204を取得する。
前行分のエントリについての判定が保留されたままになっており、かつ、処理対象行の表示対象要素と前行分のエントリに含まれる表示対象要素とが、コンテンツ40の現在のレイアウトにおいて互いに別の行にあるとの判定結果を得た場合、判定部282は次に、列方向すなわち行を横断する方向での、両者の連続性を判別する。すなわち判定部282はまず、コンテンツ40の現時点でのレイアウトにおいて、処理対象行が位置する行と前行分の表示対象要素が位置する行との間に、さらに別の行が挟まった状態にあるか否かを判定する。両者の間に別の行が挟まった状態にある場合、前行分の表示対象要素及び処理対象行以降のエントリに含まれる表示対象要素すなわち未判定の表示対象要素が表示パネル66上で占める領域は、両者の間に挟まった行により分断された状態となる。この場合、判定部282は、複製メモを作成することでメモとコンテンツとの対応関係を維持することを決定する。そして複製メモ作成部286に対し、前行分のエントリを含む、判定を保留していた各エントリに含まれる表示対象要素についての複製メモの作成を要求し、当該各エントリを判定の対象から除外する。判定部282は、処理対象行についての判定を保留し、関連表示対象要素リスト184における次の行に対応するものを、新たな処理対象行に定める。
処理対象行が位置する行と前行分の表示対象要素が位置する行との間に、さらに別の行が挟まった状態にない場合、すなわち現在のコンテンツ40のレイアウトにおいて、両者が隣接する行に存在する場合、判定部282は、両者が行方向にずれているか否かを判別する。両者にずれがある場合、メモ要素のサイズ変更又は分割によっては、メモと各表示対象要素との相対的な位置関係を維持することができない。この場合、判定部282は、複製メモを作成することでメモとコンテンツとの対応関係を維持することを決定し、複製メモ作成部286に対し、前行分のエントリを含む、判定を保留していた各エントリに含まれる表示対象要素についての複製メモの作成を要求し、当該保留していたエントリを判定の対象から除外する。判定部282は、処理対象行についての判定を保留し、関連表示対象要素リスト184における次の行に対応するものを、新たな処理対象行に定める。
処理対象行が位置する行と前行分の表示対象要素が位置する行との間に別の行も行方向のずれもない状態にある場合、処理対象行の表示対象要素に関連付けられるメモ要素についてサイズ変更を行なうことで、前行分の表示対象要素とメモとの相対的な位置関係を維持することもできると判定される。この場合、判定部282は、前行分のエントリ及び処理対象行についての判定を保留し、関連表示対象要素リスト184における次の行に対応するものを新たな処理対象行に定める。
判定部282は、以上の判定及び加工の要求を、関連表示対象要素リスト184(図8参照)の各エントリについて行なう。全てのエントリについて以上の判定及び加工の要求を行なった状態で、判定が保留されているエントリがあれば、1つのメモ要素を変形することによって、メモとこれらのエントリに含まれる各表示対象要素との相対関係は維持できることになる。判定部282は、メモデータ72の関連表示対象要素リスト184を、これら判定が保留されたエントリからなるリストに変更し、当該変更したメモデータをメモ表示位置算出部288に与える。
以上の判定の結果に応じて、図12に示すメモレイアウト部86の各機能部は、メモ44のレイアウトを変更して、メモデータ72の更新を行なう。以下、メモ44のレイアウトを変更する動作を例示する。
まず、メモ44の表示位置及びサイズを変更する際の動作を以下に説明する。
図20に、コンテンツ40のレイアウト変更に応じてメモのサイズを変更する動作による、表示パネル66上でのコンテンツ40とメモ44の位置関係の変化を概略的に示す。図20(A)を参照して、表示パネル66に、コンテンツ40Aと、コンテンツ40A中の文字列「大事な箇所」を囲むメモ44とが表示されていたものとする。ここで、ユーザが表示を「拡大」するよう表示設定を変更し、その変更に伴い、コンテンツ40Aの表示が、図20(B)に示す表示40Bのように変化したものとする。図20(B)においては、メモ44に関連付けられるべき表示対象要素「大事な箇所」のサイズが拡大している。そのため、相対位置データ182(図8参照)に示される各頂点関連要素の位置も変化していることとなる。メモ44の表示位置及びサイズを変更せずに表示パネル上に表示すると、その表示は、図20(B)に示すメモ44のようになり、コンテンツとメモとの関連性が破綻してしまう。
そこでメモ表示位置算出部288は、メモの表示位置を決定する際に、まず、図8に示す相対位置データ182の「データ位置」190を参照し、頂点関連要素である文字「大」及び「所」を特定する。続いてコンテンツデータ70を参照し、現時点のレイアウトにおいて図20(C)に示すこれら頂点関連要素の外接矩形領域542A及び542Bの左上端544A及び544Bを特定する。メモ表示位置算出部288は、特定した左上端544A及び544B、並びに相対位置データ182により示される相対座標「RX」192及び「RY」194をもとに、上記した動作と同様の動作でメモの外接矩形領域の各頂点の座標を算出し、メモデータ72の座標値「X」164及び「Y」166(図7参照)を更新する。メモ44の外接矩形領域は、図20(C)に示す矩形領域546のようになる。
図12に示すメモ表示サイズ算出部290は、図20(C)に示す矩形領域546に合せてメモ44が表示されるよう、メモデータ72の幅「W」168及び高さ「H」170(図7参照)を変更する。メモ表示サイズ算出部290は、処理後のメモデータ72を制御部80及び表示制御部88に与える。表示制御部88による表示パネル66上での表示においては、図20(D)のように、表示対象要素のサイズに応じたサイズで、メモ550が表示されるようになり、コンテンツとメモとの位置関係が維持される。
図21に、メモ表示位置算出部288及びメモ表示サイズ算出部290によるメモの表示位置及びサイズの変更によるレイアウトの変化の、別の一例を示す。図21(A)を参照して、コンテンツ560Aは「とても大事な内容が記述されています。必ずチェックをお願いします。・・・・」という文字列であるものとする。表示パネル66上には、このコンテンツ560Aのレイアウトに対応して、メモ562Aがレイアウトされ表示されていたものとする。メモ562Aは、文字列「とても大事な内容が記述されています。」に関連付けられているものとする。
このようにレイアウトされたコンテンツ560Aに対して、ユーザがルビの表示を指示したものとする。その結果、その表示が、図21(B)に示すコンテンツ560Bのようになったとする。コンテンツ560Bのレイアウトでは、漢字にルビが振られているため、結果としてコンテンツの各行間に、図21(A)に示すコンテンツ560Aよりも大きな幅の行間が生まれている。
図12に示すメモ表示位置算出部288及びメモ表示サイズ算出部290は、メモの頂点関連要素をもとに、メモの表示位置及びサイズを決定する。そのため、メモ562Aは、図21(B)に示すメモ562Bのように変形し、コンテンツとメモとの相対位置関係が維持される。
以下に、図12に示す分割メモ作成部284が、判定部282からの要求にしたがい、メモ44をもとに分割メモを作成する動作について説明する。
図22に、コンテンツ40のレイアウトの変化に応じてメモを分割する処理による表示パネル66での表示の変化の一例を示す。図22(A)を参照して、表示パネル66に、コンテンツ580Aと、コンテンツ580A中の文字列「たいへん大事です。」を囲むメモ582とが表示されているものとする。ここで、ユーザによる指示にしたがい表示設定を変更した結果、コンテンツ180Aの表示が、図22(B)に示すコンテンツ580Bの表示のように変化したものとする。図22(B)においては、コンテンツ580Bは、「たいへ」と「ん大事です。」との間で改行されている。このような場合、図12に示す判定部282から分割メモ作成部284に、文字列「たいへん大事です。」に対応する分割メモの作成要求が与えられる。
図22(B)に示すコンテンツ580Bのレイアウトに対して、分割メモ作成部284はまず、行レイアウトデータ140(図6参照)と関連表示対象要素リスト184(図8参照)とを照合し、コンテンツがどの位置で改行されているかを特定する。次に分割メモ作成部284は、関連付けデータ180の相対位置データ182に基づき、メモ582の分割すべき位置を示す分割線を設定する。
図23に分割線の一例を示す。図23を参照して、分割線600は、コンテンツ580Bの改行位置、すなわちメモ582に関連付けられた表示対象要素「たいへん大事です。」中の「へ」と「ん」との間に設定される。分割メモ作成部284は、分割線600の位置をもとに、分割により新たに生成されるメモの外接矩形領域602及び604を設定し、新たな第1のメモ612及び第2のメモ614を作成する。分割メモ作成部284は、第1の矩形領域612及び第2の矩形領域614の表示パネル66上での位置及びサイズを特定する。図23に示す例では、分割により生成される第1の矩形領域602の幅はW1となり、第2の矩形領域604の幅はW2となる。分割メモ作成部284はさらに、分割前のメモ582の関連付けデータに基づき第1の矩形領域602及び第2の矩形領域604が関連する表示対象要素を特定する。分割メモ作成部284は、第1のメモ612及び614の関連付けデータを生成して、新たなメモデータを作成する。図23に示す例では、メモ612の関連付けデータにおいて関連する表示対象要素は「たいへ」となり、メモ614の関連付けデータおいて関連する表示対象要素は「ん大事です。」となる。
以上のようにして新たに作成したメモデータについて、コンテンツデータとの関連付けデータを作成する。分割メモ作成部284は、作成したメモデータ72と、コンテンツデータ70とをメモ表示位置算出部288に与える。メモ表示位置算出部288及びメモ表示サイズ算出部290は、上記した動作と同様の動作で、メモ612及びメモ614の表示位置及びサイズを決定して、メモデータ72を更新し、図3に示す表示制御部88及び制御部80に与える。表示制御部88は、与えられたメモデータ72を表示パネル66に出力する。
図22(C)に、更新されたメモデータ72に基づくメモ612及び614の表示の一例を示す。分割により新たに生成されたメモ612及び614はそれぞれ、関連付けられた表示対象要素に対応する位置に表示される。
以下に、複製メモ作成部286によるメモの複製の動作について説明する。図24に、メモの複製の動作に伴う表示パネル66上での表示の変化の概略を示す。図24(A)を参照して、表示パネル66上にコンテンツ620Aが表示され、その内の表示対象要素「40%」及び表示対象要素「20%」を囲むようなメモ622が記録されていたものとする。ここで、ユーザによる表示設定にしたがいコンテンツのレイアウトを変更した結果、コンテンツ620Aの表示が、図24(B)に示すコンテンツ620Bの表示のようになったものとする。図24(B)では、表示対象要素「20%」と表示対象要素「40%」との間に、別の行が挟まった形でレイアウトされているため、表示対象要素「40%」624Aと表示対象要素「20%」624Bとが離れた位置にレイアウトされている。このような場合、図12に示す判定部282から複製メモ作成部284に、複製メモの作成要求が与えられる。
複製メモ作成部286はまず、表示対象要素「40%」624Aと表示対象要素「20%」624Bとにそれぞれ対応する、メモ622と同一のメモ要素からなるメモを準備する。複製メモ作成部286はさらに、準備したメモをそれぞれ、表示対象要素「40%」624Aと表示対象要素「20%」624Bとに関連付け、新たな関連付けデータを作成する。以上の動作により、メモ622に関するメモデータと同じメモ要素からなり関連表示対象要素リスト184(図8参照)に示す表示対象要素、及び相対位置データ182に示す頂点関連要素のみが異なる複数のメモデータが作成される。複製メモ作成部286は、このようにして作成したメモデータ、及びコンテンツデータ70を図12に示すメモ表示位置算出部288に与える。メモ表示位置算出部288及びメモ表示サイズ算出部290は、上記した動作と同様の動作で、新たなメモの表示位置及びサイズを計算して、メモデータ72を更新し、図3に示す表示制御部88及び制御部80に与える。表示制御部88は、与えられたメモデータ72を表示パネル66に出力する。
図24(C)に、複製メモ作成部286により作成されたメモデータに基づく、表示パネル66へのメモの表示例を示す。図24(C)を参照して、表示パネル66には、複製により新たに作成されたメモ626A及び626Bがそれぞれ、関連付けられるべき表示対象要素である「40%」及び「20%」に対応する位置に表示される。
なお、メモの分割又は複製を行なった場合、新たに作成されたメモ同士の関係が分かるように表示してもよい。図25に、図24(C)に示す複製メモ626A及び626Bの表示において、さらにメモ同士を関連付けた表示の一例を示す。図25に示す例では、表示パネル66に表示されている、複製により新たに作成されたメモ626A及び626Bを互いに関連付けるように破線640A及び640Bが表示される。
以上のようにして、本実施の形態に係る表示装置は、メモとコンテンツとを、コンテンツ中の表示対象要素、及びそれら表示対象要素とメモとの相対的な位置関係によって関連付けて記録する。メモを表示する際には、コンテンツを構成する表示対象要素のレイアウトに基づき、表示対象要素との相対的な位置関係が維持されるようにメモのレイアウトを決定して表示する。そのため、表示設定の変更等に伴いコンテンツのレイアウトが変更された後においても、メモと関連する位置に適切な大きさで表示されるようになる。
さらに、表示対象要素のレイアウトに応じて、メモを分割又は複製して表示するため、メモは、関連する表示対象要素に対して適切な位置に表示されることになる。
なお、上記した実施の形態では、メモの外接矩形領域の各頂点に近接する表示対象要素についてのみ、相対位置「RX」及び「RY」を算出して相対位置データを作成し、関連付けデータとしてメモデータに付与した。しかし、本発明は、このような実施の形態には限定されない。図26に関連付けデータの別の一例を示す。図26を参照して、この関連付けデータ700では、相対位置データ702A,702B,…は、関連表示対象要素リスト704に格納された全ての表示対象要素についての相対位置情報を含む。
上記した実施の形態では、操作部62は、図4に示すタッチパネル100及び入力ペン102からなるポインティングデバイス、並びにマウス、及びキーボードを含むものであった。しかし、本発明はこのような実施の形態には限定されない。例えば、ボタンにより構成された入力装置であってもよいし、マイクによる音声入力等を実現する入力装置を用いることも可能である。
上記した実施の形態では、表示パネル66は、液晶表示パネルを含むものであった。しかし、本発明はこのような実施の形態には限定されない。例えば、プラズマディスプレイパネル、エレクトロルミネッセント(EL)装置、及び陰極線管等の装置であってもよい。また、コンテンツ及びメモの出力媒体は、これらの装置に限らず、印刷用紙等の媒体であってもよい。
この場合、表示装置50は、コンテンツ及びメモの印刷物におけるレイアウトを決定して、そのレイアウトに基づいて印刷データを生成し、出力する。表示装置50の記憶部60が、外部のプリンタでの印刷出力に関する設定データを保持する。この設定データは、用紙サイズ及び解像度等の情報を含むものとなる。またこの場合、コンテンツレイアウト部82は、この設定データに基づきコンテンツの印刷物上でのレイアウトを決定する。メモレイアウト部86は、決定された印刷レイアウトに基づきメモのレイアウトを決定する。コンテンツとメモとは、決定されたレイアウトにしたがい表示制御部88により合成され、印刷データに変換されて、インタフェース部68(図3参照)を介して外部のプリンタに出力される。
上記した実施の形態においては,表示設定データ74は、予め記憶部60に記憶されユーザによる操作に基づき適宜更新されるものであった。しかし、本発明はこのような実施の形態には限定されない。例えば、表示設定データ74は、他の記憶媒体に記憶され、必要に応じて制御部80がインタフェース部68を介して取得するようにしてもよい。また、表示設定データ74により示されるレイアウト可能範囲は、予め準備され格納されているデータであってもよいし、動的にその設定値を得るようにしてもよい。例えば表示パネル66に表示されるウィンドウのサイズをレイアウト可能範囲とする場合、コンテンツ及びメモのレイアウトを決定する際に、制御部80が、ウィンドウサイズデータを参照するためのウィンドウサイズ取得API(Application Program Interface)を呼出すようにしてもよい。この場合、ウィンドウサイズ取得APIによりレイアウト可能範囲として、ウィンドウのサイズが算出される。制御部80は、算出されたウィンドウサイズのデータをコンテンツレイアウト部82等に与える。また例えば、コンテンツ及びメモを上記のようにプリンタによって印刷する場合には、制御部80がインタフェース部68を介してプリンタにアクセスして、用紙サイズの設定値を取得するようにしてもよい。
上記した実施の形態では、コンテンツ及びメモのレイアウトデータは、2次元の座標空間上での位置及びサイズを示すものであった。しかし、本発明はこのような実施の形態には限定されない。コンテンツの位置を示すデータと、それを実際的な又は仮想の空間上でレイアウトし表示するために必要なデータがあればよい。また、コンテンツデータは、図5及び図6に示す構成のものに限定するものではなく、一般的に知られているデータ構造等であって、表示を行なうために必要な情報を含むものであればよい。
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内でのすべての変更を含む。
コンテンツ及びメモの一例を示す概要図である。 本実施の形態に係る表示装置が行なうメモの加工例を示す概略図である。 表示装置50の機能的構成を示すブロック図である。 操作部62及び表示パネル66の一例を示す外観図である。 コンテンツデータ70の構成の一例を示す図である。 行レイアウトデータ140の構成の一例を示す図である。 メモデータ72の構成の一例を示す図である。 関連付けデータ180の構成の一例を示す図である。 制御部80の機能的構成を示すブロック図である。 コンテンツレイアウト部82の機能的構成を示すブロック図である。 記録部84の機能的構成を示すブロック図である。 メモレイアウト部86の機能的構成を示すブロック図である。 表示装置50を実現するコンピュータのハードウェア構成を示すブロック図である。 表示装置50を実現するプログラムの制御構造を示すフローチャートである。 コンテンツレイアウト処理の制御構造を示すフローチャートである。 メモレイアウト処理の制御構造を示すフローチャートである。 メモ記録処理の制御構造を示すフローチャートである。 表示パネル66によるコンテンツ40及びメモ44の表示例を示す図である。 メモ44と選ばれた表示対象要素との位置関係を示す概略図である。 コンテンツ40のレイアウト変更に伴う、メモ44のレイアウトの変化例を示す図である。 コンテンツのレイアウト変更に伴う、メモのレイアウトの別の変化例を示す図である。 コンテンツのレイアウト変更に応じてメモを分割する処理によるコンテンツ及びメモの表示の変化例を示す図である。 分割線の一例を示す概略図である。 コンテンツのレイアウト変更に応じてメモを複製する処理によるコンテンツ及びメモの表示の変化例を示す図である。 メモ同士を関連付けた表示の一例を示す図である。 関連付けデータの別の一例を示す図である。
符号の説明
50 表示装置、60 記憶部、62 操作部、64 データ処理部、66 表示パネル、68 インタフェース部、70 コンテンツデータ、72 メモデータ、74 表示設定データ、80 制御部、82 コンテンツレイアウト部、84 記録部、86 メモレイアウト部、88 表示制御部、100 タッチパネル、102 入力ペン、120A〜120C 表示対象要素データ、140 行レイアウトデータ、160A〜160C メモ要素データ、180,700 関連付けデータ、182,702A,702B 相対位置データ、184,704 関連表示対象要素リスト、220 コンテンツデータ集配部、222 メモデータ集配部、224 操作信号解析部、226 表示設定処理部、228 メモデータ編集部、230 メッセージ生成部、242 レイアウト範囲特定部、244 レイアウト決定部、260 メモ関連表示対象要素取得部、262 相対位置算出部、264 関連付けデータ記録部、280 取得部、282 判定部、284 分割メモ作成部、286 複製メモ作成部、288 メモ表示位置算出部、290 メモ表示サイズ算出部、500 レイアウト可能範囲、502 レイアウト範囲

Claims (19)

  1. コンテンツを構成するコンテンツ要素の所定の領域におけるレイアウトを決定するためのコンテンツレイアウト手段と、
    コンテンツとともに前記所定の領域に出力されるべきメモを構成するメモ要素と、当該メモ要素を出力すべきメモ出力領域の前記コンテンツ要素に対する相対位置を示す定義情報とを準備するためのメモ準備手段と、
    前記メモ要素の前記所定の領域におけるレイアウトを、前記コンテンツ要素の前記所定の領域におけるレイアウト、及び前記定義情報をもとに決定するためのメモレイアウト手段と、
    前記コンテンツ要素のレイアウト、及び前記メモレイアウト手段により決定された前記メモ要素のレイアウトにしたがい、前記コンテンツ及び前記メモを所定の出力媒体に出力するための出力手段とを含む、レイアウト装置において、
    前記メモレイアウト手段は、
    前記コンテンツ要素の前記所定の領域におけるレイアウト及び前記定義情報をもとに、前記所定の領域において前記メモ要素を出力させるべき領域を判別するためのメモ出力領域判別手段と、
    前記メモ要素の、前記出力させるべき領域に適合する出力位置及び出力サイズを決定するための決定手段と、
    前記出力させるべき領域の連続性に基づき、前記メモ要素の加工の要否を判定するための判定手段と、
    前記判定手段による判定の結果にしたがい、加工を要すると判定されたメモ要素を所定の方法で加工して、複数のメモ要素を作成するための加工手段とを含み、
    前記加工手段は、
    前記判定手段によって、前記出力させるべき領域が改行位置で分離された状態にあると判定された場合、又は、前記出力させるべき領域が分断され、分断された領域が同一の行において分離した状態にあると判定された場合に、前記メモ要素を分割することにより、前記複数のメモ要素を作成するための分割手段と、
    前記判定手段によって、前記出力させるべき領域が分断され、分断された領域が同一の行において連続した状態にあると判定された場合、前記出力させるべき領域が分断され、分断された領域の間に他の行が挟まった状態であると判定された場合、又は、前記出力させるべき領域が分断され、分断された領域が互いに隣接する行に存在し、かつ、行方向にずれている状態にあると判定された場合に、前記メモ要素を複製することにより、前記複数のメモ要素を作成するための複製手段と、
    作成された前記複数のメモ要素に対応する新たな定義情報を準備し、前記メモ準備手段によって準備された定義情報を更新する更新手段と、を含み、
    前記メモ出力領域判別手段は、前記複数のメモ要素が作成された場合には、前記コンテンツ要素の前記所定の領域におけるレイアウト及び前記更新された定義情報をもとに、前記所定の領域において前記複数のメモ要素を出力させるべき領域を判別する、レイアウト装置。
  2. 前記出力手段は、前記コンテンツ要素のレイアウトと、前記メモレイアウト手段により決定されたレイアウトとにしたがい、前記コンテンツと前記加工手段により作成された複数のメモ要素とを前記出力媒体に出力するための手段を含み、前記複数のメモ要素は互いに関連付けられている、請求項1に記載のレイアウト装置。
  3. 前記メモ準備手段は、
    前記所定の領域へのメモの入力を受けて、当該メモを構成するメモ要素と、前記所定の領域においてメモが入力されたメモ入力領域を示す領域指定データとを準備するためのデータ準備手段と、
    前記領域指定データと、前記所定の領域における前記コンテンツ要素のレイアウトとに基づき、前記定義情報を作成するための定義情報作成手段とを含む、請求項1に記載のレイアウト装置。
  4. 前記定義情報作成手段は、
    前記メモ入力領域と予め定める関係にある領域にレイアウトされたコンテンツ要素を特定するためのメモ関連コンテンツ要素特定手段と、
    前記コンテンツ要素と前記メモ入力領域との相対位置を算出するための相対位置算出手段と、
    前記定義情報を、前記メモ関連コンテンツ要素特定手段により特定されたコンテンツ要素、及び前記相対位置算出手段により算出された相対位置をもとに作成するための手段とを含む、請求項3に記載のレイアウト装置。
  5. 前記メモ関連コンテンツ要素特定手段は、前記メモ入力領域と重なる領域にレイアウトされたコンテンツ要素を特定するための手段を含む、請求項4に記載のレイアウト装置。
  6. 前記相対位置算出手段は、前記特定するための手段により特定されたコンテンツ要素と前記メモ入力領域との相対位置を算出するための手段を含む、請求項5に記載のレイアウト装置。
  7. 前記相対位置算出手段は、前記メモ入力領域の予め定める複数の特徴点に対して、当該特徴点の前記所定の領域における位置から最短距離にレイアウトされたコンテンツ要素をそれぞれ特定し、当該各コンテンツ要素と前記メモ入力領域との相対位置を算出するための手段を含む、請求項4に記載のレイアウト装置。
  8. 前記メモ入力領域は、予め定められた多角形状の領域を含み、前記算出するための手段は、前記多角形状の領域の各頂点に対して、当該頂点の前記所定の領域における位置から最短距離にレイアウトされたコンテンツ要素を特定し、当該各コンテンツ要素と前記メモ入力領域との相対位置を算出するための頂点関連要素相対位置算出手段を含む、請求項7に記載のレイアウト装置。
  9. 前記作成するための手段は、前記メモ関連コンテンツ要素特定手段により特定されたコンテンツ要素、及び前記相対位置算出手段により算出された相対位置をもとに前記定義情報を作成し記録するための手段を含む、請求項4に記載のレイアウト装置。
  10. 前記データ準備手段は、
    ユーザによるメモの編集操作を受けたことに応答して、当該編集操作に対応する操作信号を発生するための操作手段と、
    前記操作手段が発生する操作信号にしたがい、前記メモを構成するメモ要素と、前記所定の領域において当該メモ要素が占める領域とを特定し、当該メモ要素、及び当該メモ要素が占める領域を示すデータを準備するための手段とを含む、請求項3に記載のレイアウト装置。
  11. さらに、前記メモ準備手段により準備されたメモと、前記定義情報とを併せて記録するための記録手段を含み、
    前記メモレイアウト手段は、前記記録手段により記録された前記メモの前記所定の領域におけるレイアウトを、前記コンテンツ要素のレイアウト、及び前記記録手段により記録された前記定義情報をもとに決定するための手段を含む、請求項1に記載のレイアウト装置。
  12. さらに、前記決定するための手段により決定された前記レイアウトをもとに、前記記録手段により記録された前記定義情報を更新するための手段を含む、請求項11に記載のレイアウト装置。
  13. 前記コンテンツレイアウト手段は、
    所定の出力設定に基づき、コンテンツを構成するコンテンツ要素の前記所定の領域におけるレイアウトを決定するためのコンテンツレイアウト決定手段を含み、
    前記メモレイアウト手段は、前記コンテンツレイアウト決定手段により前記コンテンツ要素の前記所定の領域におけるレイアウトが決定されたことに応答して、前記メモ要素の前記所定の領域におけるレイアウトを、前記コンテンツレイアウト手段により決定された前記コンテンツ要素のレイアウト、及び前記定義情報をもとに決定するためのメモレイアウト決定手段を含む、請求項1に記載のレイアウト装置。
  14. さらに、前記出力設定を更新するための出力設定更新手段を含み、
    前記コンテンツレイアウト決定手段は、前記出力設定更新手段により前記出力設定が更新されたことに応答して、当該更新された出力設定に基づき、前記コンテンツを構成するコンテンツ要素の前記所定の領域におけるレイアウトを再決定するためのコンテンツレイアウト再決定手段を含み、
    前記メモレイアウト決定手段は、前記コンテンツレイアウト再決定手段による再決定に応答して、前記メモ要素の前記所定の領域におけるレイアウトを、決定された前記コンテンツ要素のレイアウト、及び前記定義情報をもとに再決定するためのメモレイアウト再決定手段を含む、請求項13に記載のレイアウト装置。
  15. 前記出力設定更新手段は、
    ユーザによるコンテンツの出力設定操作を受けたことに応答して、当該出力設定操作に対応する操作信号を発生するための操作手段と、
    前記操作手段が発生する操作信号にしたがい、前記出力設定を更新するための手段とを含む、請求項14に記載のレイアウト装置。
  16. 前記出力手段は、前記コンテンツ要素のレイアウト、及び前記メモレイアウト手段により決定された前記メモ要素のレイアウトにしたがい、前記コンテンツ及び前記メモを予め定める画面に表示するための表示手段を含み、前記所定の領域は、前記画面上の領域を含む、請求項1に記載のレイアウト装置。
  17. 前記出力手段は、前記コンテンツ要素のレイアウト、及び前記メモレイアウト手段により決定された前記メモ要素のレイアウトにしたがい、前記コンテンツ及び前記メモを予め定める印刷媒体に印刷するための印刷手段を含み、前記所定の領域は、前記印刷媒体上の領域を含む、請求項1に記載のレイアウト装置。
  18. コンピュータを、請求項1から請求項17のいずれかに記載の各手段として機能させる、コンピュータプログラム。
  19. 請求項18に記載のコンピュータプログラムを記録した、コンピュータで読取可能な記録媒体。
JP2004319453A 2004-11-02 2004-11-02 レイアウト装置、コンピュータプログラム、及び記録媒体 Expired - Fee Related JP4603855B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004319453A JP4603855B2 (ja) 2004-11-02 2004-11-02 レイアウト装置、コンピュータプログラム、及び記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004319453A JP4603855B2 (ja) 2004-11-02 2004-11-02 レイアウト装置、コンピュータプログラム、及び記録媒体

Publications (2)

Publication Number Publication Date
JP2006133870A JP2006133870A (ja) 2006-05-25
JP4603855B2 true JP4603855B2 (ja) 2010-12-22

Family

ID=36727399

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004319453A Expired - Fee Related JP4603855B2 (ja) 2004-11-02 2004-11-02 レイアウト装置、コンピュータプログラム、及び記録媒体

Country Status (1)

Country Link
JP (1) JP4603855B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010106669A1 (ja) * 2009-03-19 2010-09-23 富士通株式会社 電子文書暗号化装置、電子文書暗号化方法及び電子文書暗号化プログラムならびに電子文書復号装置
JP5003846B2 (ja) * 2009-09-02 2012-08-15 富士通株式会社 暗号化装置、復号装置、暗号化方法及び復号方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002082937A (ja) * 2000-06-21 2002-03-22 Microsoft Corp インクの分類、係留、および変換

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002082937A (ja) * 2000-06-21 2002-03-22 Microsoft Corp インクの分類、係留、および変換

Also Published As

Publication number Publication date
JP2006133870A (ja) 2006-05-25

Similar Documents

Publication Publication Date Title
JP2531887B2 (ja) デ―タ処理システムにおいてユ―ザダイアログ表示を主要アプリケ―ションに図式的に関連付ける方法及び装置
EP0774135A1 (en) Method and apparatus for data alteration by manipulation of representational graphs
JP2010176320A (ja) 画像処理方法、そのプログラム及び画像処理装置
JP2009258966A (ja) 表示制御装置および表示制御方法
JP6035971B2 (ja) 情報処理装置、プログラム及び画像処理システム
US20110193810A1 (en) Touch type display apparatus, screen division method, and storage medium thereof
US20090147301A1 (en) Host apparatus for image forming apparatus and printing account management method thereof
US6734855B2 (en) Image editing system and method, image processing system and method, and recording media therefor
JP4603855B2 (ja) レイアウト装置、コンピュータプログラム、及び記録媒体
JP2018067298A (ja) 手書き内容編集装置および手書き内容編集方法
JP2996933B2 (ja) 図面表示装置
JP6065433B2 (ja) 投影装置、投影システム、プログラム
JP3025462B2 (ja) 画像表示システム及び記録媒体
US20150261430A1 (en) Document data distribution system and program
JP4780049B2 (ja) 情報処理システム及び情報処理プログラム
JP3951492B2 (ja) 画像処理装置
JP2001154779A (ja) マウスカーソル制御方法
JP2020170969A (ja) 文書出力プログラム、文書出力方法及び文書出力システム
JP2001005911A (ja) 文字入力装置及び表示制御方法
JP7356263B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JPH11306369A (ja) 画像データ編集装置
JP4509173B2 (ja) 情報処理装置及びその制御方法、プログラム、並びに、コンピュータ読み取り可能な記憶媒体
JP5797042B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP2915879B2 (ja) 文書処理装置及び方法
JP5361315B2 (ja) 情報処理装置及び情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070302

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090430

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090512

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100105

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100305

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: 20100907

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: 20101004

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131008

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees