JP3813499B2 - 出力処理方法、出力処理装置、出力処理プログラム、および出力処理プログラムを記録した記録媒体 - Google Patents
出力処理方法、出力処理装置、出力処理プログラム、および出力処理プログラムを記録した記録媒体 Download PDFInfo
- Publication number
- JP3813499B2 JP3813499B2 JP2001354585A JP2001354585A JP3813499B2 JP 3813499 B2 JP3813499 B2 JP 3813499B2 JP 2001354585 A JP2001354585 A JP 2001354585A JP 2001354585 A JP2001354585 A JP 2001354585A JP 3813499 B2 JP3813499 B2 JP 3813499B2
- Authority
- JP
- Japan
- Prior art keywords
- output
- output range
- range
- display target
- size
- 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
Landscapes
- Image Processing (AREA)
- Controls And Circuits For Display Device (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
Description
【発明の属する技術分野】
本発明は、文字、文字列または画像等の表示対象要素を二次元または三次元の座標空間にレイアウト(配置)して、表示装置、印刷装置等の出力装置に出力する方法、その方法を実施するための装置、プログラムおよびプログラム媒体に関する。
【0002】
【従来の技術】
従来より、例えば文字や画像が混在した文書を表示する文書閲覧ソフトウェアとして、WWW(World Wide Web)ブラウザなどが存在する。多くのWWWブラウザでは、例えば画面の表示サイズを越える横長の画像については、画面に併せて表示される横スクロールバーをユーザが操作し、画面をスクロールするなどして、画面の表示サイズを越える画像全体を見ることができるようになっている。
【0003】
このような画像をスクロールで見る場合、画像全体を一覧できない、操作が面倒であるなどの欠点があるが、特開2000−115527号公報では、表示領域に画像幅が入り切らない場合は、画像を縮小して表示する装置が述べられている。
【0004】
【発明が解決しようとする課題】
しかし、一覧すべきひとまとまりの表示対象要素が、表示画面や印刷用紙などの表示サイズを越える大きさを持っているために、表示対象要素の一部が出力先の表示可能領域から切れてしまう場合、あるいは、表示対象要素の大きさは表示可能領域より小さいが、指定された出力範囲が適切ではないため、表示対象要素の一部が表示可能領域からはみ出す場合、従来の文書表示方法によって表示画面や印刷用紙などに表示された表示対象要素について、表示対象要素の詳細、若しくは未表示部分自体、未表示部分の有無、未表示部分の割合等のような未表示部分に関する情報をユーザが得るには、余計な操作が必要になるという問題を有している。
【0005】
例えば、上記公報のように、表示可能領域から切れてしまう画像などを縮小すると、画像の詳細が得られなくなるため、さらに詳細な情報を得るためには、結局、縮小していない画像を画面に呼び出す操作と、画面をスクロールする操作とが必要である。
【0006】
また、複数の縮小した画像が表示可能領域に存在し、その内のどれかが表示可能領域からさらに切れて表示される場合には、画像の詳細が分からない上に、表示可能領域から切れた縮小画像の未表示部分について全く何の情報も得られないことになる。
【0007】
また、たとえ文書中にレイアウトされた画像の一つ一つは表示領域サイズ(表示可能範囲)を越えない場合であっても、例えばWWWブラウザを用いて文書全体をスクロールして見る際、スクロール位置によっては、画像が表示領域上で一部しか表示されないことがある。その場合、画像がそのままでは一覧できないので、一覧するためには余計なスクロール操作を行って、表示領域サイズ内に画像を移動させる必要がある。
【0008】
スクロールできる場合はまだよいが、印刷などのように出力結果をスクロールできない場合、分割された画像が複数のページに分かれて印刷されてしまい、画像全体を把握するためには複数のページを繋ぎ合わせて見るなどしなければならず、この場合にも扱いが面倒になるという欠点がある。
【0009】
また、画像の大きさが表示領域サイズを越えたり、指定した出力範囲が適切でなかったりする場合に、画像の一部を表示する方法では、未表示部分がどれだけあるのか、若しくは未表示部分が有るのか無いのか、つまり、画像の端部が表示領域サイズの端部と偶然に一致した表示状態になっているのかどうかが分からない欠点もある。この場合にも、やはり、画面をスクロールするなどして、画像の未表示部分を確認する操作が必要になる。
【0010】
本発明の目的は、上記の問題点に鑑みて、一覧すべきひとまとまりの表示対象要素の大きさが表示領域サイズを越えたり、指定した出力範囲が適切でなかったりする場合に、画面をスクロールするなどの余計な操作をしなくても、表示対象要素に関する詳細な情報を得たり、未表示部分に関する情報を即座に得ることができるレイアウトの出力処理方法、その方法を実施するための装置、プログラムおよびプログラム媒体を提供することにある。
【0011】
【課題を解決するための手段】
本発明に係る出力処理方法は、上記の課題を解決するために、座標空間に表示対象要素を配置したレイアウトの出力処理方法において、レイアウトの少なくとも一部を切り出す出力範囲の情報を得る出力範囲取得ステップと、上記切り出す出力範囲の境界によって出力範囲外に分割される表示対象要素の大きさが、基準の大きさ以上、あるいは表示対象要素の大きさに対して基準の割合以上になる場合には、該境界を含まないように出力範囲の情報を変更できるか否かを判断する出力範囲変更判断ステップと、変更できると判断した場合に、出力範囲の情報を自動変更する出力範囲変更ステップと、を有することを特徴とする。
【0012】
ここで、表示対象要素とは、文字、文字列、画像などのレイアウトされる単位を意味し、レイアウトとは、二次元または三次元の座標空間における表示対象要素の配置を意味する。したがって、本発明に係る出力処理方法によれば、座標空間における表示対象要素の配置、すなわちレイアウトに従って、出力先の表示装置、印刷装置等における出力/表示媒体に、表示対象要素が出力/表示される。分かり易くする為に「表示対象要素」と呼んでいるが、必ずしも「表示」だけに限らず、印刷やデータ出力、ファイル出力などのあらゆる出力に関わる要素を含むものである。なお、以降、単に「要素」と述べた場合は、「表示対象要素」を意味する。
【0013】
また、表示対象要素の数は、レイアウトの枠組みの中に1つ以上あれば、特に限定されない。例えば、出力先の表示媒体が印刷用紙の場合に、白い紙面中の一部領域に写真が1枚、あるいは文字が1文字、レイアウトされるような場合や、2枚の紙面にまたがるように写真が1枚、レイアウトされるような場合にも本発明が適用される。
【0014】
さらに、出力範囲の情報とは、レイアウトの少なくとも一部を切り出す範囲に関し、レイアウトの枠組みに対する位置、大きさ、形状などの属性を特定する情報である。また、当該属性は、出力先の出力/表示媒体における出力/表示可能領域の大きさ、形状などに依存して決めることもできるし、ユーザーなどが指定することもある。
【0015】
また、出力先は、レイアウトに従って表示対象要素が出力される対象であって、モニターなどの表示デバイス、プリンターなどの印刷デバイス、あるいはPDF(portable document format)の様に表示対象要素データをレイアウト情報を伴った形で記録するようなフォーマットをもつデータやファイル、3次元プリンタなどの3次元物体形成デバイスなどに当たる。
【0016】
そこで、本発明に係る出力処理方法によれば、出力範囲取得ステップによって出力範囲の情報を得るので、レイアウトの枠組みの中のどの部分を切り出して出力先の出力/表示媒体における出力/表示可能領域に出力/表示させるかが決まる。
【0017】
このとき、レイアウトの枠組みに対する位置、大きさ、形状などの属性に応じて、出力範囲の境界によって出力範囲外に分割される表示対象要素の大きさが、基準の大きさ以上、あるいは表示対象要素の大きさに対して基準の割合以上になる場合がある。この場合に、表示対象要素が、そのような状態で境界を含まないように、出力範囲の情報、すなわちレイアウトの枠組みに対する位置、大きさ、形状などの属性の一つまたは適宜の組み合わせを変更できるか否かを判断する出力範囲変更判断ステップが実行され、出力範囲の情報変更が可能と判断された場合に、出力範囲の自動変更が実行される。
【0018】
これによって、表示対象要素の出力が、出力範囲の境界で所定の割合あるいは所定の大きさ以上に分割された未表示部分を持つことがなくなり、縮小表示などせずに詳細に表示対象要素全体を一覧できる出力を作成できる効果が出てくる。
【0019】
また、スクロール操作などの余計な操作をユーザが行わなくても、表示対象要素全体を一覧できるような出力を自動的に作成できる効果が出てくる。
【0020】
同様に、スクロール操作ができないような出力形式においても、表示対象要素が分割されて出力されることがなくなるという効果が出てくる。例えば、スクロール操作ができないような出力形式として印刷の例でいえば、表示対象要素が複数のページに分かれて印刷されることがなく、印刷する用紙を大きくしたり、2枚のページにまたがる表示対象要素をどちらかのページにまとめて表示したりすることができる。
【0021】
また、ユーザあるいはコンテンツ作成者が、表示対象要素を分割して出力したくないという要望を満たすことができる効果が出てくる。例えば、表示対象要素の一部が見えてしまうことによって、その表示対象要素を見ることの面白さが半減したり、インパクトが薄れるといった問題を回避することができる。
【0022】
本発明に係る出力処理方法は、上記の課題を解決するために、前記出力範囲変更ステップにおいて、出力範囲の大きさを変更することを特徴とする。
【0023】
上記の構成により、前述の出力範囲変更判断ステップでは、表示対象要素の出力が出力範囲の境界で所定の割合あるいは所定の大きさ以上に分割される場合に、出力範囲の大きさを変更することで、表示対象要素が出力範囲の境界を含まなくなるか否かが判断される。そして、出力範囲の大きさを変更できると判断された場合に、出力範囲変更ステップで、出力範囲の大きさを自動的に変更することで、変更前の出力範囲の境界で分割されていた表示対象要素の出力が、変更後の出力範囲の境界で分割されなくすることができる。
【0024】
すなわち、表示対象要素の大きさが出力範囲の大きさより大きい場合は、出力範囲の位置をどんなに変えてもその表示対象要素は分割して出力されてしまうが、出力範囲の大きさ自体を変えることで、たとえ表示対象要素の大きさが出力範囲よりも大きい場合でも表示対象要素全体を出力させることができる効果が出てくる。例えば、ウィンドウシステムならば表示するウィンドウの大きさを変えたり、印刷ならば印刷する用紙の大きさを変えたりすることに相当する。
【0025】
本発明に係る出力処理方法は、上記の課題を解決するために、前記出力範囲変更ステップにおいて、レイアウトの枠組みにおける出力範囲の位置を変更することを特徴とする。
【0026】
上記の構成により、前述の出力範囲変更判断ステップでは、表示対象要素の出力が出力範囲の境界で所定の割合あるいは所定の大きさ以上に分割される場合に、出力範囲の位置を変更することで、表示対象要素が出力範囲の境界を含まなくなるか否かが判断される。そして、出力範囲の位置を変更できると判断された場合に、出力範囲変更ステップで、出力範囲の位置を変更することで、変更前の出力範囲の境界で分割されていた表示対象要素の出力が変更後の出力範囲の境界で分割されなくすることができる。
【0027】
出力範囲で分割されてしまう要素を避けるように出力範囲の位置をずらすことで、出力範囲の大きさが固定であっても、要素が分割して出力されてしまうことを抑制することができる効果が出てくる。一般に出力範囲の大きさは固定となっていることが多いので、先に説明した出力範囲の大きさを変更する方法を取れないことが多い。
【0028】
そこで、出力範囲の大きさは変えず、位置を変えることで表示対象要素の分割を避けることができれば、同様の効果が得られる。出力範囲の位置を変えるとは、例えば、WWWブラウザのようにスクロール操作で閲覧するような場合は、画像などの要素が分割されないようなスクロール位置にしたり、印刷ならば分割されてしまう要素をどちらかの用紙にまとめてしまうことに相当する。
【0029】
なお、出力範囲変更判断ステップで出力範囲の大きさおよび位置双方の適宜の変更を組み合わせることによって、表示対象要素の出力が出力範囲の境界を含まないようにできるかを判断してもよい。その場合、出力範囲の大きさまたは位置のいずれか一方の変更を他方に対して優先させてもよいし、両方の変更量ができるだけ小さくなるように、変更の組み合わせを決めるようにしてもよい。
【0030】
本発明に係る出力処理方法は、上記の課題を解決するために、前記出力範囲取得ステップにおいて、既に取得済みの出力範囲と隣接するもしくは一部重なる出力範囲を得ることを特徴とする。
【0031】
上記の構成により、既に取得済みの出力範囲と隣接するもしくは一部重なる出力範囲を出力範囲取得ステップで得て、それに基づいて上記出力処理を行うことで、最終的に出力される出力範囲が、既に取得済みの出力範囲と隣接するもしくは一部重なる可能性が高くなる。なお、出力範囲の位置や大きさが出力範囲変更ステップによって変更される可能性があるので、必ず隣接するもしくは一部重なるとは言い切れない。
【0032】
しかし、これによって、出力処理結果をできるだけ連続して見ることができ、内容的に途切れることなく理解できる可能性が高まるという効果が出てくる。例えば、WWWブラウザなどスクロールして閲覧するような場合は、上下にページめくりスクロールをする操作に相当し、印刷などの場合は、用紙に順に印刷する処理に相当する。
【0033】
本発明に係る出力処理方法は、上記の課題を解決するために、前記出力範囲変更ステップにおいて、既に取得済みの出力範囲と隣接するもしくは一部重なる出力範囲に自動変更することを特徴とする。
【0034】
先に説明した、出力範囲取得ステップで以前の出力範囲と隣接するもしくは一部重なる出力範囲を得る方法では、出力範囲変更ステップで出力範囲が変更されない場合は連続性が保証されるが、変更された場合は必ずしも連続性が保証されないかもしれない。そこで、出力範囲変更ステップで出力範囲が変更された後でも以前の出力範囲と隣接するもしくは一部重なる出力範囲にすることで、連続性が保証される効果が出てくる。
【0035】
本発明に係る出力処理方法は、上記の課題を解決するために、出力する表示対象要素を出力範囲変更ステップの実行対象とするかどうかを識別する情報を表示対象要素に持たせることを特徴とする。
【0036】
本発明に係る出力処理方法によれば、表示対象要素に持たせた上記情報によって、表示対象要素が出力範囲変更ステップの実行対象とすると識別できる時は、その表示対象要素が出力範囲で分割されないように出力範囲変更ステップで出力範囲を変更する。一方、実行対象としないと識別できる時は、その要素に対して出力範囲変更ステップの対象とはせず、分割されてもそのまま出力する。
【0037】
これによって、上記情報を表示対象要素に持たせるか持たせないかで、出力範囲変更ステップでの処理を行なうかどうかを指定できることになり、例えば、ユーザや著作者が要素が分割して出力することを認めるかどうかを指定できるなどの効果が出てくる。
【0038】
また、上記情報を表示対象要素に持たせるか否かを表示対象要素毎に設定する場合には、例えば、ユーザや著作者が要素毎に分割して出力することを認めるかどうかを指定できる効果も出てくる。
【0039】
なお、指定は、例えば、要素の種類(文字、画像、写真等)によって変えることもできるし、種類に関係なく個別に指定することもできる。例えば、写真は分割して出力して欲しくないが文字は構わないなどというような場合は要素の種類で指定することになり、他の図はよいがこの図だけは部分的ではなく一度に見て欲しいと著作者が思った場合などは個別に指定することになる。
【0040】
本発明に係る出力処理方法は、上記の課題を解決するために、座標空間に表示対象要素を配置したレイアウトの出力処理方法において、レイアウトの少なくとも一部を切り出す出力範囲の情報を得る出力範囲取得ステップと、上記切り出す出力範囲に含まれる表示対象要素が、該出力範囲の境界を所定の割合あるいは所定の大きさ以上含む場合には、その出力範囲に含まれる表示対象要素を他の出力に置き換える出力変換ステップを有することを特徴とする。
【0041】
本発明に係る出力処理方法によれば、出力範囲取得ステップによって出力範囲の情報を得るので、レイアウトの枠組みの中のどの部分を切り出して出力先の出力/表示媒体における出力/表示可能領域に出力/表示させるかが決まる。
【0042】
このとき、レイアウトの枠組みに対する位置、大きさ、形状などの属性に応じて、出力範囲の境界によって出力範囲外に分割される表示対象要素の大きさが、基準の大きさ以上、あるいは表示対象要素の大きさに対して基準の割合以上になる場合がある。この場合に、その表示対象要素の出力範囲に含まれる部分の出力を他の出力に置き換える出力変換ステップが自動実行される。
【0043】
これによって、何も処理を行わなければ分割して表示されるだけで、未表示部分に関する情報が何も得られない表示対象要素の出力を、他の出力に置き換えることができる。この結果、出力範囲の境界部分に接して表示されている表示対象要素の出力が、実質的に分割はされていなくて、たまたま出力範囲の境界ぎりぎりの出力なのか、許容量以上に分割して出力されているのかという未表示部分に関する情報をユーザが余計な操作をしなくてもひと目で知ることができる効果が出てくる。また、出力されていない部分を見るためには、例えばスクロールやページめくりなどの操作を必要とするか否かをユーザーがひと目で知ることができる効果もさらに出てくる。
【0044】
なお、置き換えの仕方を様々に変えることで、例えば、分割されていることを自然な形で知らせたり、どの方向に分割されているかを自然な形で知らせたり、分割されているかどうか以上の未表示部分に関する情報をユーザに伝えることができる効果が出てくる。
【0045】
例えば、図22のように要素の輪郭線だけを表示したり、図23のように要素の輪郭線を点線で表示したり、図24のように要素の輪郭線の出力範囲付近を点線で表示したり、図25のように分割の方向と未表示部分の割合を示す記号、数字等を表示したり、図26のように要素のコントラストを落して表示したりすることで、分割されていることや分割の方向を自然な形で知らせることができる効果もある。
【0046】
本発明に係る出力処理方法は、上記の課題を解決するために、前記出力変換ステップにおいて、前記出力範囲に含まれる表示対象要素を、所定の割合あるいは所定の大きさに応じた他の出力に置き換えることを特徴とする。
【0047】
これにより、出力範囲取得手段から得た出力範囲の境界を所定の割合あるいは所定の大きさ以上含む表示対象要素の場合、出力変換ステップでその割合あるいは大きさに応じた出力を作成して出力することで、許容量以上の未表示部分があるかどうかだけではなく、未表示部分の大きさに関する付加情報をユーザにひと目で伝えることができる効果が出てくる。
【0048】
例えば、特に図25のように分割されて出力されていない部分の割合を表示したりすることで、どのくらいの割合しか表示されていないのか、あるいは未表示部分がどのくらいあるのかを知ることができる効果が出てくる。さらにそれを知ることで、どのくらいスクロールすればよいかなどを知ることができる効果も出てくる。
【0049】
また、例えば図27のように要素自体の表示と他の出力の表示とを重ねたりすることで、現在表示されている部分とその割合から要素全体の様子を推測する手助けをすることができるという効果も出てくる。
【0050】
本発明に係る出力処理方法は、上記の課題を解決するために、前記出力変換ステップにおいて、出力する表示対象要素を出力変換ステップの実行対象とするかどうかを識別する情報を表示対象要素に持たせることを特徴とする。
【0051】
これによる作用と効果は、前述の出力範囲変更ステップに関して、識別する情報を要素に持たせる場合の作用、効果の説明とほぼ同様である。
【0052】
本発明に係る出力処理装置は、上記の課題を解決するために、座標空間に表示対象要素を配置したレイアウトの少なくとも一部を切り出す出力範囲の情報が入力される出力範囲取得手段と、上記切り出す出力範囲の境界によって出力範囲外に分割される表示対象要素の大きさが、基準の大きさ以上、あるいは表示対象要素の大きさに対して基準の割合以上になる場合には、該境界を含まないように出力範囲の情報を変更できるか否かを判断する出力範囲変更判断手段と、出力範囲変更判断手段が変更できると判断した場合に、出力範囲取得手段に入力された出力範囲の情報を変更する出力範囲変更手段と、を有することを特徴とする。
【0053】
上記の構成によれば、出力範囲取得手段に出力範囲の情報が入力されるので、レイアウトの枠組みの中のどの部分を切り出して出力先の出力/表示媒体における出力/表示可能領域に出力/表示させるかが決まる。
【0054】
なお、出力範囲取得手段は、出力範囲の情報を、出力処理装置が内蔵する内部メモリ、出力処理装置に装着される据え置き型ないし可搬型の外部メモリ、あるいは出力処理装置に接続されたネットワーク等から読み取られるプログラムから得てもよいし、ユーザの操作によりマウス、キーボード等の入力装置から入力されたデータとして得てもよいし、出力処理装置に接続されたプリンタ、ディスプレイ等の出力/表示装置、内部メモリ、外部メモリ、ネットワーク等からデータとして得てもよく、入力の形態は特に限定されない。
【0055】
ところで、出力範囲の情報が取得された場合、レイアウトの枠組みに対する位置、大きさ、形状などの属性に応じて、出力範囲の境界によって出力範囲外に分割される表示対象要素の大きさが、基準の大きさ以上、あるいは表示対象要素の大きさに対して基準の割合以上になる場合がある。この場合に、表示対象要素が、そのような状態で境界を含まないように、出力範囲変更判断手段が、出力範囲の情報、すなわちレイアウトの枠組みに対する位置、大きさ、形状などの属性の一つまたは適宜の組み合わせを変更できるか否かを判断する。
【0056】
そして、出力範囲変更判断手段が変更可能と判断した場合に、出力範囲変更手段が出力範囲の情報を変更する処理を実行する。
【0057】
これによる種々の効果は、上記出力処理装置の構成に対応する出力処理方法による効果として、前述したとおりである。
【0058】
本発明に係る出力処理装置は、上記の課題を解決するために、座標空間に表示対象要素を配置したレイアウトの少なくとも一部を切り出す出力範囲の情報を得る出力範囲取得手段と、上記切り出す出力範囲に含まれる表示対象要素が、該出力範囲の境界を所定の割合あるいは所定の大きさ以上含む場合には、その出力範囲に含まれる表示対象要素を他の出力に置き換える出力変換手段と、を含むことを特徴とする。
【0059】
上記の構成によれば、前述の出力処理装置と同様に、出力範囲取得手段によって取得された出力範囲の境界によって出力範囲外に分割される表示対象要素の大きさが、基準の大きさ以上、あるいは表示対象要素の大きさに対して基準の割合以上になる場合に、出力変換手段が、その表示対象要素の出力範囲に含まれる部分の出力を他の出力に置き換える処理を実行する。
【0060】
これによる種々の効果は、上記出力処理装置の構成に対応する出力処理方法による効果として、前述したとおりである。
【0061】
本発明に係る出力処理プログラムは、上記の課題を解決するために、上記出力処理方法が備える各ステップをコンピュータに実行させることを特徴とする。
【0062】
また、本発明に係る出力処理プログラムは、上記の課題を解決するために、上記出力処理装置が備える各手段として、コンピュータを機能させることを特徴とする。
【0063】
さらに、本発明に係る記録媒体は、上記の課題を解決するために、上記出力処理プログラムを記録したことを特徴とする。
【0064】
これにより、上記記録媒体、またはネットワークを介して、一般的なコンピュータに出力処理プログラムをインストールすることによって、該コンピュータを用いて上記の出力処理方法を実現する、言い換えれば、該コンピュータを出力処理装置として機能させることができる。
【0065】
【発明の実施の形態】
〔実施形態1〕
以下、本発明の実施の形態を図面を参照して説明する。
【0066】
(用語およびその概念)
「出力範囲」は、出力範囲の情報として、大きさ、形状、レイアウトの枠組みにおける位置、などの属性を持ち、これらの属性は出力先や使用状況によって異なる。例えば大きさは、表示装置に出力する時には、表示装置の表示部または表示可能領域の大きさである。また、その表示部または表示可能領域が、ウィンドウシステムを使ったOS(Operating System)上で動作する表示処理プログラムによって制御されているならば、「出力範囲」の大きさは、表示する部分のウィンドウの大きさとなる。
【0067】
また、ページなどに分割して表示レイアウトを記録するような記録形式として、例えばPDF(Portable Document Format )やプリントデバイスのページ記述言語/命令、DTP(DeskTop Publishing)ソフトの記録フォーマットなどがあるが、これらの記録形式でファイルやメモリなどの記憶手段、出力デバイスなどに出力する場合は、ページの大きさが出力範囲の大きさとなる。また、紙などに印刷する場合は、紙の大きさが出力範囲の大きさとなる。なお、これらに余白部分がある場合は、余白部分を除いた大きさとしてもよいし、余白部分を含めた大きさとしてもよい。
【0068】
出力範囲の大きさや形状は、例えば電子書籍装置などの専用装置では固定となる場合が多いが、表示処理プログラムによって制御されたウィンドウならば、ウィンドウサイズを変更することで出力範囲の大きさを変更することができる。また、出力形式が印刷ならば、出力する用紙サイズを変更することで出力範囲の大きさを変更することができる。
【0069】
出力範囲の大きさの単位は、出力先によって異なり、例えばドット、インチ、cm(センチメータ)、pt(ポイント)などがある。また、表示倍率が変われば、出力範囲の大きさも変わることになる。レイアウトで内部的に使われる論理座標系(座標空間)と出力デバイスの解像度に依存する出力座標系とでは、単位系や倍率が異なることがあるが、1対1対応関係で相互に変換可能なので、出力範囲は、どちらかの座標系における単位系や倍率に統一して考えておけば問題無い。
【0070】
次に、出力範囲の位置とは、出力したいデータの全レイアウト中(レイアウトの枠組み)のどの部分を出力するかを特定する情報を指し、例えば、上記論理座標系における座標で表される。また、WWWブラウザのように表示画面をスクロールしてレイアウトの全体を表示する場合は、スクロールバーによって指定された表示範囲のレイアウトの枠組みにおける位置であり、ページに分割して出力する形式では、何ページ目かを特定する情報である。なお、詳細は図2のレイアウトの説明で述べる。
【0071】
出力範囲の形状は矩形が最も一般的だが、任意の形状でも、本発明の出力処理方法は基本的に一緒である。
【0072】
図2は、「レイアウト」の概念を説明するものである。レイアウト全体枠1は、表示対象の全要素が上記論理座標系上に配置、すなわちレイアウトされた全体の範囲(枠組み)である。
【0073】
説明のため、レイアウト全体枠1の左上隅を上記論理座標系の原点Oとし、右側にX軸、下側にY軸を取るとする。以降、「上」はY軸の負の方向、「下」はY軸の正の方向を意味するとする。
【0074】
「表示対象要素」(以下、単に「要素」と呼ぶことがある)とは、レイアウトされる単位を指し、例えば、図や写真が入った文書データでは、それぞれの文字、文字列や、図、写真のような画像などが、表示対象要素となる。レイアウトされた要素は位置、大きさ、形状、出力表現形式を持つデータである。
【0075】
以降では、説明を簡単にするため、要素の形状は全て矩形とし、位置は矩形の左上の点の座標(X、Y)で表現し、大きさは幅と高さ(W×H)で表現することとする。
【0076】
上記出力表現形式とは、例えば文字要素の場合はその文字の字形、写真要素ならばビットマップのような画像データ形式のことである。以降、図面上で特に説明なく単なる矩形で示されている場合には、任意の要素と解釈することにする。
【0077】
ここでのレイアウトデータは、論理座標系(2次元または3次元)における表示対象要素の位置、大きさ、形状等を定めるデータであり、出力処理装置から出力される際は、レイアウト全体枠1から出力先の表示可能領域の大きさに切り出されて出力される。
【0078】
図2に示す出力範囲6、11、12は、後でも説明するように、キーボード、マウス等の入力手段を介したユーザの操作や、出力処理装置に格納された文書表示プログラムや、プリンタ等の出力先の装置によって指定された出力範囲を示している。この矩形は説明のためのもので、レイアウト上存在しているものではなく、従って、出力先の表示可能領域にこの矩形枠は表示されない。
【0079】
また、以降の説明では、出力範囲6等の幅はレイアウト全体枠1と同じとするが、線が重なって分かりにくいため、便宜上、図面ではレイアウト全体枠1より少し左右にはみ出して書いてある。実際に出力される際は、出力範囲6、11、12の内部に含まれる要素が出力される。
【0080】
なお、出力範囲も位置と大きさと形状がある。図2の例では、形状は矩形であり、例えば出力範囲6では、矩形の左上の点が(0、Y1)、幅と高さが(W1×H1)となる。なお、図2の例では、X1を0としている。以降も特に断りがない限り、処理手順としてはX軸も見ている、すなわちX座標もデータ処理の対象としているが、本例では出力範囲のX軸の位置は0としてある。
【0081】
また、ここでは説明を簡単にするため、レイアウト全体枠1と出力範囲6の幅を同じにしてあるが、同じでない場合もある。その場合、いわゆる横スクロールを使って表示させたり、別のページとして出力させたりということになる。
【0082】
取得する出力範囲はレイアウトが含まれている範囲なら任意の範囲が可能であり、例えばWWWブラウザでのリンクジャンプ機能の場合は、指定された要素を中心もしくは先頭に含むような出力範囲が得られることになる。ジャンプでなく、表示形式がいわゆる「ページめくり」、「スクロール」と呼ばれるような場合には、前回取得した、あるいは既に取得済みの出力範囲と隣接または一部重なる領域を出力範囲とすることになる。
【0083】
出力範囲の大きさを変えない場合、例えば図2に示す出力範囲6の下に隣接した出力範囲11の位置は(0、Y1+H1)となり、出力範囲6の上に隣接した出力範囲12は、位置(0、Y1−H1)となる。但し、Y1−H1<0の場合は、出力範囲12の上部が、レイアウト全体枠1の上端から外にはみ出した状態となる。すなわち、レイアウト全体枠1の上端から外には要素が存在しないので、空白を出力することになってしまう。ワードプロセッサやWWWブラウザなどでも、文書の最初を表示する際は表示範囲の最初から表示するのが一般的であり、上部に空白が出力されるような出力範囲はスクロールバーなどでは設定できないようになっていることがほとんどである。このような表示の仕方の慣習から、文書先頭の上部に空白が出力されてしまうような出力範囲の場合は、出力範囲12の位置を(0、0)とした方が操作する側に取ってなじみやすいという効果も出てくる。
【0084】
なお、隣接する出力範囲の場合、取得済みの出力範囲と重複する部分がないので、情報出力という点では効率的であるが、人間が理解する場合には内容が多少重複していないと理解しにくい場合もあり得る。紙面に印刷するなど、前後の出力結果を同時に眺めることができる場合には問題ないが、そうでない場合には多少重複していた方がよい場合もあり得る。
【0085】
以上のようにレイアウトされた表示対象要素を出力先の装置に対し出力する場合に、ひとまとまりの表示対象要素が、分割されて表示されないように、かつ表示対象要素の詳細出力情報が失われないように、出力範囲を変更する出力処理方法について以下に説明する。
【0086】
図1は、本発明の実施の一形態に係る出力処理方法を示すフローチャート図である。
【0087】
まずステップ1(以下、S1と略記する)で出力範囲(レイアウトにおける切り出し位置、大きさおよび形状のデータ)を取得し、S2に進む。出力範囲は、上記で用語に関して説明したように、固定であったり可変であったりするが、ここでは矩形形状の出力範囲に関し、所定の位置と大きさとを得るとする。例えば、図2の出力範囲6、11、12などのいずれか1つがS1で特定される。
【0088】
図3は、出力範囲を互いに隣接させるのではなく、互いに一部重複するようにした場合を示している。出力範囲の大きさは変えず、重複する高さをH5とした場合、出力範囲6の下部と一部重複する出力範囲13の位置は(0、Y1+H1−H5)となる一方、出力範囲6の上部と一部重複する出力範囲14の位置は、(0、Y1−H1+H5)となる。
【0089】
S2では、S1で取得された出力範囲についてレイアウトを得てS3へ進む。レイアウトは、上記で用語に関して説明したように、複数の表示対象要素からなる。したがって、レイアウトを得るとは、レイアウトを構成する全ての表示対象要素について、前記した位置、大きさ、形状、出力表現形式等に関するデータ(以下、レイアウトデータと呼ぶ)を取得することである。
【0090】
S3では、S2で得られたレイアウトの表示対象要素の中から、最初の表示対象要素を得てカレント要素とし、S4へ進む。レイアウトされた要素は何らかの順番で順序付けされていて、順にアクセスできるとする。
【0091】
図7は、レイアウトデータを配列の形で表現した例である。各行が各要素のレイアウトデータを表す。項目としては、位置「X」、「Y」、大きさ「W」、「H」を含む。これらは先に説明した通りである。「分割」項は、要素を分割して出力してよいかどうかを判断するフラグで、詳しくはS6で説明する。「Type」項は、要素の型(種類)を示している。文字要素(CHAR)なのか、画像要素(IMAGE)なのか、線分要素(LINE)なのかなどを示す。「Data」項は、「Type」項によって様々に解釈される。例えば文字要素の場合は、フォント情報や文字コードなどを特定するデータが入っていたり、画像要素の場合は、ビットマップデータが入っていたりする。図7の例では、それらのデータにアクセスするメモリポインタの値を格納している。これらの要素はインデックス番号によってアクセスできるとする。
【0092】
したがって、S3では、カレント要素のカレントインデックス番号ciを0に設定し、インデックス番号が0の要素を図7のレイアウトデータから得ればよい。
【0093】
なお、以降の処理では、最初の要素から最後の要素まで全ての要素について判断を行っているが、その要素のS6などでの判断を簡単な方法で事前に行えるならば、ループ処理の対象とする要素を絞り込むことで、高速な処理を行うことが可能となる。例えば、要素をまとめる「行」の様なデータ構造が存在し、出力範囲として何行目から何行目ということが分かるなら、その行の中の要素だけを処理対象とすれば良い。
【0094】
S4では、S3で得たカレント要素が全要素中の最後の要素かどうかを判断し、最後の場合は、S1で取得した出力範囲についての処理を終了し、最後でない場合はS5へ進む。図7の例で言えば、カレントインデックス番号ciと全要素数nとを比較して、n≦ciならば、最後と判断すればよい。
【0095】
S5では、カレント要素の大きさが出力範囲の大きさ以下かどうかを判定し、以下ならばS6へ進み、出力範囲よりも大きいのならばS10へ進む。カレント要素の方が出力範囲の大きさより大きい場合には、出力範囲の大きさを変えないとすれば、出力範囲の位置をどう動かしてみても、カレント要素は必ず分割されてしまうので、この方法で分割を回避することはできなくなる。
【0096】
但し、出力範囲の大きさを可変とした場合には、S5でカレント要素の大きさが現在の出力範囲の大きさより大きい場合に、さらに、カレント要素の大きさが出力範囲の最大の大きさ以下かどうかを判定する。そして、カレント要素の大きさが出力範囲の最大の大きさ以下ならばS6へ進み、出力範囲の最大の大きさよりも大きいのならばS10へ進み、そのカレント要素を分割して出力する。
【0097】
なお、S5からS11へ進むようにして、出力範囲の最大の大きさよりも大きいカレント要素の出力をスキップし、表示できないようにしてもよい。
【0098】
次に、S6では、カレント要素の範囲が出力範囲の完全に外かどうかを、判定し、完全に外の場合にはS11へ進み、完全に外で無い場合、すなわちカレント要素が出力範囲の境界を含む(出力範囲の境界によって分割される)か、あるいはカレント要素が出力範囲の中に完全に含まれる場合にはS7へ進む。但し、S5とS6とは、処理の順番を入れ替えてもよい。
【0099】
なお、この判定方法では、カレント要素が一部でも出力範囲の境界を含んでいたら出力範囲にかかっているとしたが、例えば1ドットだけ出力範囲の外に出ているとか、1%だけ外に出ている場合など、出力範囲を変更する処理をわざわざ行なわなくてもよいケース、言い換えれば、実質的に出力範囲の境界を含んでいないとみなせるケースも考えられる。
【0100】
そこで、S6で、カレント要素の範囲が出力範囲の完全に外かどうかを判定する代わりに、またはS5でカレント要素の大きさが出力範囲の大きさより大きいと判断した場合に、出力範囲の境界によって出力範囲外に分割される表示対象要素の大きさが、基準の大きさ以上、あるいは表示対象要素の大きさに対して基準の割合以上になるか否かを判断してもよい。
【0101】
これにより、カレント要素が出力範囲の境界を含む場合でも、あるいはカレント要素の大きさが出力範囲の大きさより大きい場合でも、基準量以上分割されなければ、すなわち、分割の影響が小さい場合には、出力範囲の変更処理をスキップすることもできるし、基準の設定の仕方によって、表示対象要素が僅かでも出力範囲の境界を含む場合には、出力範囲の変更処理を行うようにすることもできる。
【0102】
このように、S5およびS6の処理は、出力範囲の境界によって出力範囲外に分割される表示対象要素の大きさが、所定の大きさ以上、あるいは表示対象要素の大きさに対して所定の割合以上になる場合には、該境界を含まないように出力範囲の情報を変更できるか否かを判断する出力範囲変更判断ステップに相当している。
【0103】
ところで、カレント要素の範囲が出力範囲の完全に外かどうかの判定は、カレント要素の一部でも出力範囲に含まれているかどうかで判定する。例えば出力範囲の形状が矩形の場合、位置(X2、Y2)、大きさ(W2×H2)の要素があり、出力範囲の位置が(X1、Y1)、大きさ(W1×H1)であったとする。このとき、X2+W2<X1、あるいはX1+W1<X2、あるいはY2+H2<Y1、あるいはY1+H1<Y2のいずれかを満たしている時、完全に外であると判定する。図2の例では、出力範囲6に対して要素2、3は完全に外であり、要素5は出力範囲6の内部、要素4は完全に外ではない。
【0104】
また、出力範囲の境界によって出力範囲外に分割されるカレント要素の大きさが、所定の大きさ以上、あるいはカレント要素の大きさに対して所定の割合以上になるか否かの判定は、カレント要素の出力範囲外に分割される面積、またはカレント要素の出力範囲外に分割される面積のカレント要素の面積に対する割合を閾値と比較して行えばよい。
【0105】
例えば、境界に一部がかかっている大きさ(W2×H2)のカレント要素において、境界内部に含まれる要素の大きさが(Wi×Hi)だとする。境界の外に出ている面積が閾値T1以上の場合、すなわちT1<W2×H2−Wi×Hiの場合、出力範囲の境界を含んでいると判定すればよい。
【0106】
あるいは割合を閾値として、境界の外に出ている面積の割合が閾値T2以上の場合、すなわちT2<1−(Wi×Hi)/(W2×H2)の場合、カレント要素が出力範囲の境界を含んでいると判定すればよい。
【0107】
S7では、カレント要素が分割禁止かどうかを判断し、分割禁止の場合にはS8へ進み、分割禁止でない場合にはS10へ進む。分割禁止かどうかは、例えば、分割して表示して欲しくないような要素があるならばコンテンツデータ(レイアウトデータを作成した元のデータ)側で分割禁止の属性を持たせるように指定する場合などが考えられる。
【0108】
図7に示すレイアウトデータで「分割」の列は、元のデータ側で指定された分割禁止の属性に基づいて設定された分割の可否を示している。「OK」は分割可能、「NG」は分割禁止を意味する。文字要素(CHAR)と線分要素(LINE)は分割可能、画像要素(IMAGE)は分割禁止とした場合、図7のように分割データ60、61、63はOK、分割データ62はNGとなっている。
【0109】
なお、この例では要素の種類によって分けているが、種類に関わらず個別要素に対して、分割の可否を指定してもよい。あるいは出力範囲の大きさに応じて一括分割禁止にしたり、ユーザが見易いと思うように出力範囲の大きさに応じて分割禁止を設定する場合も考えられる。
【0110】
S8では、カレント要素の範囲が出力範囲の境界を含んでいるかどうかを判定し、含んでいる場合は連結点P1を経由してS9へ進み、含んでいない場合はS10へ進む。
【0111】
含んでいるかどうかは、カレント要素が全て出力範囲に含まれているかどうかで判定できる。例えば位置(X2、Y2)、大きさ(W2×H2)の要素があり、出力範囲の位置が(X1、Y1)、大きさ(W1×H1)であったとする。このとき、(条件1)X2<X1、かつX1+W1<X2、(条件2)Y2<Y1、かつY1+H1<Y2、の(条件1)、(条件2)をいずれも満たしている場合、含んでいないと判定する。図2の要素4は境界を含んでいて、要素5は境界を含んでいない。
【0112】
S9では、S5およびS6で、出力範囲の変更が可能と判断され、S7で分割禁止と判断された出力範囲の境界を含むカレント要素について、出力範囲の変更処理を行う。
【0113】
その後、連結点P2を経てS3へ進む。出力範囲を変更したので、最初の要素からまたやり直しとなる。処理の詳細は、後で述べる。
【0114】
なお、出力範囲の変更の仕方によっては、必ずしも最初からやり直さなくても良い場合もある。変更前の出力範囲と変更後の出力範囲でだぶっている部分で、どちらも出力範囲境界にかかっていない要素は、その要素を出力するかどうかの判断は変わらないはずなので、それらの処理については変更前の処理結果を再利用することで、処理を省くことが可能である。
【0115】
S10では、カレント要素の出力表現形式を出力先に出力して、S11へ進む。出力表現形式は動作環境、出力先、要素の種類などによって異なる。例えば文字要素ならば文字の輪郭データを出力したり、文字のビットマップデータを別途得て、ビットマップとして出力したりする。それらの出力データは要素のレイアウト位置に出力される。
【0116】
例えば印刷の場合は、印刷用紙の対応する位置に文字が印刷されることになる。グラフィックシステムを持ったシステムならば、VRAM(Video Random Access Memory)上に画素データとして書き込まれ、モニターに表示されることになる。PDFならば、対応する位置に文字を配置するデータをPDFファイルに書き込むことになる。
【0117】
なお、カレント要素の出力表現形式を出力先に直接、出力すると、S9で出力範囲を変更した結果、S3に戻って処理を再度実行する際に、S10で既に出力してしまった要素の扱いが問題となる。モニター表示やPDFなどへのデータ出力ならば、そのデータを再表示したり破棄するだけで済むが、印刷などの場合はS10の処理に従って出力範囲の一部が先に印刷された紙を破棄しなければいけない。用途によっては破棄できない場合もあるかもしれないし、モニター等における再表示にしても、表示が無用にちらついてしまう問題もある。
【0118】
これらの問題を防ぐ為に、出力先に直接出力せず、出力バッファに一旦出力し、S4で最後の要素まで処理が済んだ後に、すなわち出力範囲に含まれる要素の出力の仕方が確定した後に、出力バッファ中の出力表現形式のデータを出力先に出力するようにする方法が考えられる。この場合、S10での処理を「出力バッファへ出力」に変更し、S4での判断がYESの場合に、「出力バッファから出力先に出力」するステップを追加すればよい。
【0119】
S11では、カレント要素の次の要素を得て、カレント要素として設定して、S4へ進む。次の要素に進めることは、カレントインデックス番号ciを1増やすことに当たる。
【0120】
図1のS9の処理、すなわち出力範囲の変更の仕方はいくつか考えられる。
【0121】
図4は図2の出力範囲の大きさはそのままで、位置を変更した例である。すなわち、出力範囲6の位置を上にずらす演算処理によって、要素4を含まないような出力範囲7に自動変更している。これによって、出力範囲6で分割されるところであった要素4が、変更処理によって新たに生成された出力範囲7で分割されなくなる効果が出てくる。
【0122】
また、この変更処理によって、分割出力を禁止したい要素4の直前までの要素を全て表示した後で、前の出力範囲に隣接する次の出力範囲を出力したとすると、要素4が分割されずに一度に表示され、要素4の全体を一度に表示する効果や、要素4の表示にインパクトを持たせる効果を得ることができる。
【0123】
図2、図4で示されるように、出力範囲6の内部に分割される要素4の高さをH3とすれば、上にずらす量が最も少ない出力範囲7の位置は、(0、Y1−H3)と求められる。
【0124】
上からページをスクロールして見ている時に、分割して表示して欲しくない要素4がある場合、その手前でスクロール範囲(出力範囲)が設定されるので、前回の出力範囲と重複する部分が多くなってしまうが、出力内容が飛ぶ部分はなくなり、要素4が分割して表示されることが無くなるという効果がある。
【0125】
図8は、図1のS9の処理の一方法を説明するフローチャート図であり、図4に示す出力範囲の変更処理に対応している。
【0126】
まず、連結点P1から続くS50で、分割される要素4の出力範囲6内の高さを得て、S51へ進む。図4では、その高さはH3である。
【0127】
S51では、S50で得られた値H3だけ出力範囲6の位置を上にずらし、連結点P2へ抜ける。図3ではH3だけ上にずらすので、位置は(0、Y1−H3)となる。なお、ここではX軸を0に固定してY軸だけを扱っているが、X軸とY軸と両方処理する場合でも、それぞれ同様の処理を行なえばよい。以降の例でも同様である。
【0128】
図5は、別の変更例である。出力範囲6を下にずらす演算処理によって、要素4を含まないような出力範囲8に自動変更している。下にずらす量を最も少なくした場合は、出力範囲8の位置は、(0、Y1+H1+H4−H3)と求められる。なお、出力範囲8では、文字要素は出力範囲8の境界にかかっているが、ここでは図7のように画像要素を分割不可、文字要素を分割可能としているためである。
【0129】
図9は、図1のS9の処理の他の方法を説明するフローチャート図であり、図5に示す出力範囲の変更処理に対応している。
【0130】
まず、連結点P1から続くS60で、出力範囲6の大きさ(高さ)を得てS61へ進む。図5では、その高さはH1である。S61では、分割される要素4の出力範囲6の外の高さを得て、S62へ進む。図5では、出力範囲6の外の高さは(H4−H3)である。
【0131】
S62では、S60で得られた値とS61で得られた値を足しただけ出力範囲6の位置を下にずらす演算を行い、連結点P2へ抜ける。図5ではH1+H4−H3だけ下にずらすので、位置は(0、Y1+H1+H4−H3)と求められる。
【0132】
図10は、さらに別の変更例である。出力範囲6を下にずらす演算処理によって、要素4を全て含むような出力範囲10に自動変更している。下にずらす量が最も少なくなる出力範囲10の位置は、(0、Y1+H4−H3)と求められる。
【0133】
図11は、図1のS9の処理のさらに他の方法を説明するフローチャート図であり、図10に示す出力範囲の変更処理に対応している。
【0134】
連結点P1から続くS70で、分割される要素4の出力範囲6の外の高さを得て、S71へ進む。図10では、その高さはH4−H3である。S71では、S70で得られた値だけ出力範囲6の位置を下にずらし、連結点P2へ抜ける。図10ではH4−H3だけ下にずらすので、位置は(0、Y1+H4−H3)となる。
【0135】
次に、図6は、図2の出力範囲6の位置は(0、Y1)そのままで、大きさを変更した例である。すなわち、出力範囲6の大きさを、出力範囲6外にはみ出した要素4の高さだけ下に拡張する演算処理によって、要素4を全て含むような出力範囲9に自動変更している。これにより、出力範囲9の大きさは、(W1×(H1+H4−H3))と求められる。
【0136】
これによって、出力範囲6で分割されるところだった要素4が出力範囲9で分割されなくなる効果が出てくる。さらに、上もしくは下からページをスクロールしてみている時に、分割して表示して欲しくない要素4がある場合、出力範囲自体が自動的に拡張されて要素4を全て含むようになり、出力範囲9の位置(0、Y1)は出力範囲6と変わらないので、出力内容が飛ぶ部分が無く、かつ、要素4が分割して表示されることが無くなるという効果がある。
【0137】
先に出力範囲の説明で述べた通り、ウィンドウシステムや印刷用紙のサイズ変更など出力範囲が自由に変更できる場合には、このように出力範囲自体を変更することで、要素4を分割しないようにすることができる。
【0138】
なお、図4、図5の場合と異なり、図6で、上からスクロールしている場合には、出力範囲の変更処理によって、より先の内容を自動的に見ることができる。
【0139】
なお、図1のフローでは、S5で表示対象要素が最大の出力範囲より大きい場合はS10へ進み、その要素を分割して出力するようにしているが、S5で最大の出力範囲とカレント要素の大きさとを比較するのではなく、S1で取得した出力範囲をそのままでカレント要素の大きさと比較する場合には、S5からS9へ進むようにして、S1で取得した出力範囲の大きさをS9で変えるようにしてもよい。
【0140】
その際は、S5とS6の処理順を入れ替え、S4からS6に向かい、完全に出力範囲外とは判断されなかった場合にS5へ進むようにする必要がある。また、S9で、カレント要素が分割されないようにS1で取得した出力範囲の大きさを変更できない場合には、S10へ進み、カレント要素を分割して出力してもよいし、S9からS11へ進み、出力範囲より大きなカレント要素の出力をスキップするようにしてもよい。
【0141】
ところで、図6の出力範囲9のように出力範囲を大きくするだけでなく、逆に小さくする方法も可能である。図6の出力範囲65は、要素4が出力範囲6内に分割される高さだけ出力範囲6を小さくした例である。これにより、出力範囲65の大きさは、(W1×(H1−H3))と求められる。
【0142】
図12は、本発明の実施の一形態に係り、上述した出力処理方法を実施する出力処理装置を示す構成図である。
【0143】
すなわち、出力処理装置の要部を、出力範囲取得手段51、出力範囲変更手段52、レイアウト取得手段53、出力手段54、および出力範囲変更判断手段55の主要な機能ブロックに展開して示すことができる。
【0144】
また、これら各手段51〜55間のデータの授受の観点では、出力範囲変更手段52は、図1のS1に従って、出力範囲取得手段51から、レイアウトを切り出す出力範囲のデータを得、S2に従って、レイアウト取得手段53から図7に示すようなレイアウトデータを得る。続いて、出力範囲変更判断手段55は、S5、S6に従って、レイアウトデータに含まれる要素の大きさと出力範囲の大きさとを比べ、要素の大きさが出力範囲の大きさより大きい場合に、出力範囲の大きさを変更できるか否か判断する。
【0145】
そして、出力範囲変更手段52は、S7、S8に従って、要素が出力範囲の境界を基準以上含むと判断した場合に、S9に従って、出力範囲の境界を要素が含まなくなるように、出力範囲の大きさおよび位置の少なくとも一方を変更する。この出力範囲の変更処理によって、出力範囲の境界を含まなくなった要素のレイアウトデータが、S8およびS10に従って、出力範囲変更手段52から出力手段54に送られ、出力手段54から出力される。
【0146】
出力範囲変更手段52での具体的な変更処理方法は、図8、9、11のフローチャートで説明した処理方法と同じでよい。
【0147】
図13は、図12の各手段51〜55を具体的に実現する装置の構成例である。
【0148】
CPU(central processing unit)70は、上記出力範囲取得手段51、出力範囲変更手段52、レイアウト取得手段53、出力手段54、および出力範囲変更判断手段55として機能し、これら各手段51〜55による処理手順が記述されたプログラムを主記憶74、外部記憶75、ネットワーク77などから得る。また、CPU70は、CPU70を含めてバス78を通じ相互に接続されたグラフィックデバイス71、マウス72、キーボード73、主記憶74、外部記憶75、プリンタ76、ネットワーク77とデータのやりとりを行ないながら、既に説明した各処理を行なう。
【0149】
なお、データのやりとりをバス78を介して行う場合に限らず、データを送受信できるものならば、通信ケーブルや無線通信装置などを介してもよい。また、各手段51〜55の実現手段としては、CPUに限らず、DSP(digital signal processor)や処理手順が回路として組み込まれているロジック回路などを用いることもできる。
【0150】
主記憶74は、通常はDRAM(dynamic random access memory)やフラッシュメモリなどのメモリデバイスで構成される。外部記憶75は、HDD(hard disk drive)やPC(personal computer) カードなどの装脱着可能な記憶手段である。あるいはCPU70とネットワーク77を介して有線または無線で接続された他のネットワーク機器に取り付けられた主記憶や外部記憶を外部記憶75として用いることもできる。
【0151】
ユーザの操作を入力する手段として、マウス72やキーボード73などがある。この他にもボタンやタッチパネル、マイクによる音声入力など、様々な手段が使用可能である。
【0152】
グラフィックデバイス71は、通常はグラフィックカードなどによって実現され、VRAM(video random access memory)を有し、VRAM上のデータを表示信号に変換して、グラフィックデバイス71に接続されたモニタ79に送り、モニタ79は表示信号を画像として表示する。
【0153】
プリンタ76は、バス78を介して得た印刷データを用紙に印刷する。ネットワーク77は、ネットワークカードなどにより実現され、無線や有線などにより接続された他のネットワーク機器とデータをやりとりする。
【0154】
図12の出力範囲取得手段51としてのCPU70は、出力範囲のデータを主記憶74、外部記憶75、ネットワーク77などから読み取られるプログラムから得たり、ユーザの操作によりマウス72、キーボード73から入力されたデータとして得たり、グラフィックデバイス71、主記憶74、外部記憶75、プリンタ76、ネットワーク77からデータとして得たりする。
【0155】
例えばモニタ79上に表示されているウィンドウのサイズを出力範囲とするならば、CPU70は、主記憶74上のウィンドウサイズデータを参照したり、ウィンドウサイズ取得APIを呼び出すなどして出力範囲のデータを得る。また印刷ならば、プリンタ76、あるいは用紙設定が記録された主記憶74や外部記憶75上の用紙設定データをCPU70が参照したり、用紙サイズ取得APIを呼び出すなどして用紙サイズを得ればよい。
【0156】
出力範囲取得手段51の処理は、図1のフローチャートではS1に相当する。
【0157】
レイアウト取得手段53としてのCPU70は、主記憶74、外部記憶75、ネットワーク77などからレイアウトデータを得る。レイアウトデータは、WWWブラウザのレイアウト処理など他のプログラムなどによって既に作成されているとする。レイアウトデータの形式としては先に説明した図7のような構造が考えられる。レイアウト処理と本発明の出力処理とを逐次的に行なうことももちろん可能である。レイアウト取得手段53の処理は、図1のフローチャートではS2に相当する。
【0158】
出力範囲変更判断手段55としてのCPU70による処理は、主記憶74、外部記憶75、ネットワーク77などから出力処理プログラムを読み込み、出力範囲取得手段51から得た出力範囲とレイアウト取得手段53から得たレイアウトデータとから、出力処理プログラムに従い処理し、出力範囲変更手段52に判断を出力することで行なわれる。出力処理プログラムの中身は、フローチャートなどを元に説明してきた処理になる。
【0159】
出力範囲変更判断手段55は、図1のフローチャートでは主にS5、S6に相当する。
【0160】
出力範囲変更手段52としてのCPU70による処理は、主記憶74、外部記憶75、ネットワーク77などから出力処理プログラムを読み込み、レイアウト取得手段53から得たレイアウトデータを出力処理プログラムに従い処理し、必要に応じて変更した出力範囲に含まれる要素のレイアウトデータを出力手段54に出力することで行なわれる。出力処理プログラムの中身は、フローチャートなどを元に説明してきた処理になる。
【0161】
なお、CPUやDSPは処理手順をプログラムとして読み込むが、ロジック回路などのように処理手順が回路として組み込まれている場合はプログラムを読み込む必要はなくなる。
【0162】
出力範囲変更手段52は、図1のフローチャートでは主にS7、S8、S9とループ処理のS3、S4、S11などに相当する。
【0163】
出力手段54は、変更された出力範囲内部にレイアウトされた要素の出力表現形式を出力先(グラフィックデバイス71およびモニタ79、またはプリンタ76等)に出力する。出力表現形式は図1のS10で説明したように、例えばモニタ79に表示する場合、グラフィックデバイス71のVRAM上に画素データとして書き込まれ、モニタ79に表示される。一方、例えば印刷の場合には、プリンタ76に印刷データとして送られ、プリンタ76が印刷データを解釈して、用紙に印刷する。PDFならば、対応する位置に文字を配置するデータをPDFデータとして書き込み、主記憶74や外部記憶75、ネットワーク77などを通じて記録される。
【0164】
出力手段54の処理は、図1のフローチャートでは主にS10とループ処理のS3、S4、S11などに相当する。
【0165】
図14は、出力処理装置の外観例を示している。本体20上に表示部21、スクロールボタン22、23がある。表示部21は出力先の装置に相当し、また表示部21の大きさが出力範囲(表示可能領域)の大きさとなる。スクロールボタン22、23はユーザ操作入力として、図13のマウス72やキーボード73などに相当する。
【0166】
上スクロール用のスクロールボタン22を押すことによって、現在の出力範囲の上の部分の出力範囲を得、下スクロール用のスクロールボタン23を押すことによって、現在の出力範囲の下の部分の出力範囲を得る。これらのいわゆるページめくりやスクロール操作を行なって得られた新たな出力範囲は、図12の出力範囲取得手段51に渡されることになる。
【0167】
図15はウィンドウシステム上での表示画面例を示している。ウィンドウ24上に表示部25、スクロールバー26、スクロールバー26上に全レイアウト中での表示範囲を示すスクロール範囲ボタン27がある。ウィンドウ24は出力先の表示領域に相当し、ウィンドウ24の大きさが出力範囲の大きさとなる。スクロールバー26、スクロール範囲ボタン27はユーザ操作入力として、図13のマウス72やキーボード73などに相当する。スクロール範囲ボタン27を上下に移動させることで、上下の出力範囲を得る。
【0168】
ここで、図16は、スクロール操作と出力処理とを連動させた場合について説明する図である。最初に出力範囲12が位置(0、Y1−H1)、大きさ(W1×H1)であったとする。この時、出力範囲12で出力された結果が、図17である。
【0169】
次に、ユーザがスクロールボタン23を押すなどして、出力範囲12の下に隣接する部分のレイアウトの出力を要求したとする。単純な処理では、H1だけ下の位置(0、Y1)の出力範囲6を得る(図16では点線で示している)。
【0170】
図18は、本発明の手法を使わずに、図16の出力範囲6を出力したものである。図18の画像30は、図2の要素4が分割されて出力されたものである。このように何も処理せずにそのまま出力してしまうと、要素4が分割して出力されてしまう。
【0171】
そこで要素4が分割されないように、出力範囲6の位置を変更して、位置(0、Y1−H3)の出力範囲7を得る。この時の出力範囲7で出力されたものが図19である。ここでは要素4が含まれないので、当然、要素4は分割して出力されてはいない。また、出力範囲7と出力範囲12とは、高さH3の部分が重複しているので、内容的に飛ぶことも無い。図17と図19を比べると、「D」や「E」の行の辺りが重複しているのが分かる。
【0172】
なお、要素4が分割されないように要素4をぎりぎり含むような位置(0、Y1+H4−H3−H1)の出力範囲10(図10参照)を得るように出力範囲12を下方にずらした場合、出力範囲12と出力範囲10との間にH4−H3の空きができてしまい、内容的に飛んでしまう問題があるので、下にスクロールする場合には、出力範囲7のように一部を重複させる範囲にすることが好ましい。
【0173】
続いて図16の出力範囲7が出力された後に、再びユーザが下スクロールボタンを押すなどして、出力範囲7の下に隣接する部分のレイアウトの出力を要求したとする。次は単純にH1だけ下の位置(0、Y1−H3+H1)の出力範囲32とすればよい。この時、出力範囲32で出力されたものが図20である。要素4が全て出力範囲32に含まれるので分割されることもなく、また出力範囲7と隣接しているので、内容が飛んでしまうことも無い。下から上にスクロールする場合も考え方は同様である。
【0174】
なお、ここでは、全要素をレイアウト後、すなわち全要素のレイアウトデータを取得した後に、出力範囲を変更するようにしているが、必要と思われる範囲だけのレイアウトデータを取得する毎に出力範囲を変更したり、各要素をレイアウトしながら図1のフロー処理を行なっても同様である。
【0175】
なお、S8で、要素の大きさが出力範囲の大きさより大きい場合は問題となる。出力範囲の大きさをその要素を全て含むように変更できる時はよいが、全て含むように変更できない時は、その要素を含んだ出力範囲を出力できなくなってしまう。その場合、要素が出力範囲の境界を含んでいないと判断して、分割出力した方がよい場合がある。また、前述したように、出力範囲の大きさより大きい要素が出力範囲の境界を含んでいると判断した上で、分割禁止か否かを確認し、分割禁止でなければ、そのまま分割された要素を出力してもよい。
【0176】
〔実施形態2〕
以下、本発明の他の実施形態を図面を参照して説明する。用語などは、特に説明がない限り、実施形態1と同じ定義とする。
【0177】
図21は、本実施の形態に係る出力処理方法を示すフローチャート図である。図1と同じ記号の処理ステップは同じ処理内容であることを示しており、その重複する説明を省略する。図21のフローは図1のフローとほぼ同様だが、S9の出力範囲変更処理に代えて、S30で置換出力の処理を行い、S11に進む点で異なっている。S30では、カレント要素の出力表現形式を他の出力に置き換えて、出力先に出力して、S11へ進む。
【0178】
図22は、S30で、出力範囲6内に分割されたカレント要素の部分について、その出力表現形式を他の出力に置き換えた一例である。この例では、要素4が分割出力された図18の要素30を、要素30の存在を示す単なる枠線/輪郭線で表示している。
【0179】
これによって、ユーザには、この枠線/輪郭線内に何か要素出力があるが、分割表示を避けるために代替表示させていることが分かる。なお、枠線を図23のように点線にすると、ユーザに代替表示させていることが伝わり易くなる効果が出てくる。
【0180】
要素の本来の表示出力を見たい場合は、スクロールさせるなどして、画面に収まりきるような出力範囲を指定してやればよい。
【0181】
図24は、図22と図23とを混合したもので、要素が下方で分割されて続いていることを下方の点線でユーザに視覚的に示している。
【0182】
図27は、同様に、要素が上下右に分割されている場合に、要素が上方、下方、右方で分割されて続いていることを上方、下方、右方を指す矢印でユーザに視覚的に示している。
【0183】
図26は、本来の要素出力を見にくくなるように出力した例である。見にくくなるような出力形式としては、例えば、コントラストを落す、輝度/濃度を落す、白点や黒点を一部にまぜる(例えば1ドット置きなど)、これらの組合せなどが考えられる。
【0184】
図25は、下向きの矢印と下方で分割されて表示されていない部分の割合を数字で示している。この場合、要素の80%が出力表示されていて、残り20%が表示されていないことを示している。また、その上の部分は要素の本来の出力を分割して表示するようにしてもよいし、他の出力で置換するようにしてもよい。図では分かり易いように出力範囲の外にはみでて表示されていない要素の20%の部分を仮想的に点線で示してあるが、これは実際には出力されない。
【0185】
これらの矢印や割合表示によって、要素のどの程度が分割されて表示されていないかがユーザにひと目で分かり易くなり、どのくらいスクロールしたらよいかなどの情報を得ることができる。また、割合と共に要素の本来の出力を分割して表示するようにすれば、分割して出力されている部分から全体像を類推したり、分割して出力されている部分の内容を類推したりする補助となる効果が得られる。
【0186】
図27は、同様に、上下右に分割されている場合に、要素が上方、下方、右方で分割されて続いていることを示す上方、下方、右方の前記矢印を表示するのに加えて、要素の未表示部分の割合を表示することで、未表示部分に関する詳細情報を表示するための操作をユーザに課すことなく、その詳細情報をユーザに視覚的に示している。図25と同様、分割されて出力されていない部分を出力範囲の外に仮想的な点線で示してある。また、それ以外の部分は要素の本来の出力が分割されて表示されている。
【0187】
実施形態1のS8の補足説明でも説明したように、出力範囲より大きい要素が存在する場合、分割して出力せざるを得ないことはある。出力範囲に収まりきるように縮小表示を代替表示させる方法もあるが、詳細を見たい時は、結局、出力範囲より大きな要素表示をスクロールして見ざるを得ない。この時、図22、図23、図24、図25のように、要素が分割された出力を全く表示しない場合は、出力範囲より大きい要素が存在する時に、要素を全く表示することができないので問題となる。しかし、図27のように、分割された出力を一部でもよいから、未表示部分の有無および割合に関する詳細情報と一緒に表示するようにしておけば、必要に応じてスクロールさせるなどして要素の出力の全てを得ることができる。
【0188】
出力範囲より小さな要素の場合は、スクロール位置などを調整することで要素全体を出力させることができるので、その場合は図22、図23、図24、図25のように、要素が分割された出力を全く表示しないようにするなど、適宜組み合わせて使うこともできる。
【0189】
図28は、本実施形態に係る出力処理装置の構成を示す機能ブロック図である。実施形態1における図12の出力処理装置の構成と比較すると、出力範囲変更判断手段55が無くなり、出力範囲変更手段52が出力変換手段56に置き換わっている点が相違している。その他の各手段51、53、54については既に説明した通りである。
【0190】
出力範囲取得手段51から出力範囲を得て、レイアウト取得手段53からレイアウトデータを得、レイアウトされた要素が出力範囲の境界を含む場合は、出力変換手段56でその要素の出力を他の出力に置き換えて出力し、それ以外の出力範囲に含まれる要素はその要素の出力表現形式を、出力手段54に出力する。出力変換手段56での処理方法は、図21のフローチャートで説明した処理方法と同じでよい。なお、出力変換手段56の機能は前記CPU70が担うことになる。また、出力変換手段56は、図21のフローチャートでは、S30に相当する。
【0191】
また、実施形態1、2の方法を組み合わせて使用することもできる。例えば、出力範囲より大きい要素が存在する時に、未表示部分の割合が最も小さくなるように、出力範囲の位置および/または大きさを変更し、併せて、未表示部分の存在する方向を示す前記矢印や、未表示部分の割合を示す前記数字を表示するようにしてもよい。
【0192】
この他、例えば分割して出力したくない複数の要素がレイアウト上で接近していて、出力先の表示可能領域が、その全てを分割せずに表示するだけの大きさを持たない場合に、その複数の要素の内、前回の出力範囲に最も近い要素を優先的に表示するように、出力範囲の位置および/または大きさを変更し、それによって分割されてしまう他の要素については、実施形態2のように、他の出力に置き換えるようにしてもよい。
【0193】
さらに、分割して出力したくない要素について、実施形態1のように出力範囲の変更処理を実行するか、実施形態2のように出力範囲の置換出力処理を実行するかを、ユーザが選択して設定できるようにしてもよい。また、文字要素、画像要素等の要素の種類に応じて、出力範囲の変更処理と置換出力処理とを適宜設定し分けるようにすることもできる。
【0194】
なお、今までの説明では、すべてのレイアウトを行なった後に出力処理を行なっている例で説明したが、もちろん、レイアウトしながら出力処理を逐次的に行なってもよい。
【0195】
また、ここでは2次元平面上に平面要素をレイアウトする例で説明しているが、3次元空間上に3次元要素をレイアウトする場合でも同様の処理方法が適用可能である。
【0196】
【発明の効果】
本発明に係る出力処理方法は、以上のように、座標空間に表示対象要素を配置したレイアウトの出力処理方法において、レイアウトの少なくとも一部を切り出す出力範囲の情報を得る出力範囲取得ステップと、上記切り出す出力範囲の境界によって出力範囲外に分割される表示対象要素の大きさが、基準の大きさ以上、あるいは表示対象要素の大きさに対して基準の割合以上になる場合には、該境界を含まないように出力範囲の情報を変更できるか否かを判断する出力範囲変更判断ステップと、変更できると判断した場合に、出力範囲の情報を自動変更する出力範囲変更ステップと、を有することを特徴とする。
【0197】
これによって、表示対象要素の出力が、出力範囲の境界で所定の割合あるいは所定の大きさ以上に分割された未表示部分を持つことがなくなり、縮小表示などせずに詳細に表示対象要素全体を一覧できる出力を作成できる効果が出てくる。
【0198】
また、スクロール操作などの余計な操作をユーザが行わなくても、表示対象要素全体を一覧できるような出力を自動的に作成できる効果が出てくる。
【0199】
同様に、スクロール操作ができないような出力形式においても、表示対象要素が分割されて出力されることがなくなるという効果が出てくる。例えば、スクロール操作ができないような出力形式として印刷の例でいえば、表示対象要素が複数のページに分かれて印刷されることがなく、印刷する用紙を大きくしたり、2枚のページにまたがる表示対象要素をどちらかのページにまとめて表示したりすることができる。
【0200】
また、ユーザあるいはコンテンツ作成者が、表示対象要素を分割して出力したくないという要望を満たすことができる効果が出てくる。例えば、表示対象要素の一部が見えてしまうことによって、その表示対象要素を見ることの面白さが半減したり、インパクトが薄れるといった問題を回避することができる。
【0201】
本発明に係る出力処理方法は、以上のように、前記出力範囲変更ステップにおいて、出力範囲の大きさを変更することを特徴とする。
【0202】
上記の構成により、分割された未表示部分を持つことがなくなる効果に加えて(以降に説明するそれぞれの手法でも同様なので、この効果に関しては以下の個々の方法で説明することは省く)、表示対象要素の大きさが出力範囲の大きさより大きい場合は、出力範囲の位置をどんなに変えてもその表示対象要素は分割して出力されてしまうが、出力範囲の大きさ自体を変えることで、たとえ表示対象要素の大きさが出力範囲よりも大きい場合でも表示対象要素全体を出力させることができる効果が出てくる。例えば、ウィンドウシステムならば表示するウィンドウの大きさを変えたり、印刷ならば印刷する用紙の大きさを変えたりすることに相当する。
【0203】
本発明に係る出力処理方法は、以上のように、前記出力範囲変更ステップにおいて、レイアウトの枠組みにおける出力範囲の位置を変更することを特徴とする。
【0204】
これにより、出力範囲で分割されてしまう要素を避けるように出力範囲の位置をずらすことで、出力範囲の大きさが固定であっても、要素が分割して出力されてしまうような出力を抑制することができる効果が出てくる。
【0205】
一般に出力範囲の大きさは固定となっていることが多いので、先に説明した出力範囲の大きさを変更する方法を取れないことが多い。そこで、出力範囲の大きさは変えず、位置を変えることで表示対象要素の分割を避けることができれば、同様の効果が得られる。
【0206】
出力範囲の位置を変えるとは、例えば、WWWブラウザのようにスクロール操作で閲覧するような場合は、画像などの要素が分割されないようなスクロール位置にしたり、印刷ならば分割されてしまう要素をどちらかの用紙にまとめてしまうことに相当する。
【0207】
本発明に係る出力処理方法は、以上のように、前記出力範囲取得ステップにおいて、既に取得済みの出力範囲と隣接するもしくは一部重なる出力範囲を得ることを特徴とする。
【0208】
これによって、出力処理結果をできるだけ連続して見ることができ、内容的に途切れることなく理解することができる可能性が高まるという効果が出てくる。例えば、WWWブラウザなどスクロールして閲覧するような場合は、上下にページめくりスクロールをする操作に相当し、印刷などの場合は、用紙に順に印刷する処理に相当する。
【0209】
本発明に係る出力処理方法は、以上のように、前記出力範囲変更ステップにおいて、既に取得済みの出力範囲と隣接するもしくは一部重なる出力範囲に自動変更することを特徴とする。
【0210】
先に説明した、出力範囲取得ステップで以前の出力範囲と隣接するもしくは一部重なる出力範囲を得る方法では、出力範囲変更ステップで出力範囲が変更されない場合は連続性が保証されるが、変更された場合は必ずしも連続性が保証されないかもしれない。そこで、出力範囲変更ステップで出力範囲が変更された後でも以前の出力範囲と隣接するもしくは一部重なる出力範囲にすることで、連続性が保証される効果が出てくる。
【0211】
本発明に係る出力処理方法は、以上のように、出力する表示対象要素を出力範囲変更ステップの実行対象とするかどうかを識別する情報を表示対象要素に持たせることを特徴とする。
【0212】
これによって、上記情報を表示対象要素に持たせるか持たせないかで、出力範囲変更ステップでの処理を行なうかどうかを指定できることになり、例えば、ユーザや著作者が要素が分割して出力することを認めるかどうかを指定できるなどの効果が出てくる。
【0213】
また、上記情報を表示対象要素に持たせるか待たせないかを要素毎に設定する場合には、例えば、ユーザや著作者が要素毎に分割して出力することを認めるかどうかを指定できる効果も出てくる。
【0214】
なお、指定は、例えば、要素の種類によって変えることもできるし、種類に関係なく個別に指定することもできる。例えば、写真は分割して出力して欲しくないが文字は構わないなどというような場合は要素の種類で指定することになり、他の図はよいがこの図だけは部分的ではなく一度に見て欲しいと著作者が思った場合などは個別に指定することになる。
【0215】
本発明に係る出力処理方法は、以上のように、座標空間に表示対象要素を配置したレイアウトの出力処理方法において、レイアウトの少なくとも一部を切り出す出力範囲の情報を得る出力範囲取得ステップと、上記切り出す出力範囲に含まれる表示対象要素が、該出力範囲の境界を所定の割合あるいは所定の大きさ以上含む場合には、その出力範囲に含まれる表示対象要素を他の出力に置き換える出力変換ステップを有することを特徴とする。
【0216】
これによって、何も処理を行わなければ分割して表示されるだけで、未表示部分に関する情報が何も得られない表示対象要素の出力を、他の出力に置き換えることができる。この結果、出力範囲の境界部分に接して表示されている表示対象要素の出力が、実質的には分割はされていないくて、たまたま出力範囲の境界ぎりぎりの出力なのか、許容量以上に分割して出力されているのかという未表示部分に関する情報をユーザが余計な操作をしなくてもひと目で知ることができる効果が出てくる。また、出力されていない部分を見るためには例えばスクロールやページめくりなどの操作を必要とするか否かをユーザーがひと目で知ることができる効果もさらに出てくる。
【0217】
また、置き換えの仕方を様々に変えることで、例えば、分割されていることを自然な形で知らせたり、どの方向に分割されているかを自然な形で知らせたり、分割されているかどうか以上の未表示部分に関する情報をユーザに伝えることができる効果が出てくる。
【0218】
本発明に係る出力処理方法は、以上のように、前記出力変換ステップにおいて、前記出力範囲に含まれる表示対象要素を、所定の割合あるいは所定の大きさに応じた他の出力に置き換えることを特徴とする。
【0219】
これにより、出力範囲取得手段から得た出力範囲の境界を所定の割合あるいは所定の大きさ以上含む表示対象要素の場合、出力変換ステップでその割合あるいは大きさに応じた出力を作成して出力することで、許容量以上の未表示部分があるかどうかだけではなく、未表示部分の大きさに関する付加情報をユーザにひと目で伝えることができる効果が出てくる。
【0220】
本発明に係る出力処理方法は、以上のように、前記出力変換ステップにおいて、出力する表示対象要素を出力変換ステップの実行対象とするかどうかを識別する情報を表示対象要素に持たせることを特徴とする。
【0221】
これによる効果は、前述の出力範囲変更ステップに関して、識別する情報を要素に持たせる場合の効果と同様の効果を奏する。
【0222】
本発明に係る出力処理装置は、以上のように、座標空間に表示対象要素を配置したレイアウトの少なくとも一部を切り出す出力範囲の情報が入力される出力範囲取得手段と、上記切り出す出力範囲の境界によって出力範囲外に分割される表示対象要素の大きさが、基準の大きさ以上、あるいは表示対象要素の大きさに対して基準の割合以上になる場合には、該境界を含まないように出力範囲の情報を変更できるか否かを判断する出力範囲変更判断手段と、出力範囲変更判断手段が変更できると判断した場合に、出力範囲取得手段に入力された出力範囲の情報を自動変更する出力範囲変更手段と、を有することを特徴とする。
【0223】
これによる種々の効果は、上記出力処理装置の構成に対応する出力処理方法による効果として、前述したとおりである。
【0224】
本発明に係る出力処理装置は、以上のように、座標空間に表示対象要素を配置したレイアウトの少なくとも一部を切り出す出力範囲の情報を得る出力範囲取得手段と、上記切り出す出力範囲に含まれる表示対象要素が、該出力範囲の境界を所定の割合あるいは所定の大きさ以上含む場合には、その出力範囲に含まれる表示対象要素を他の出力に置き換える出力変換手段と、を含むことを特徴とする。
【0225】
これによる種々の効果は、上記出力処理装置の構成に対応する出力処理方法による効果として、前述したとおりである。
【0226】
本発明に係る出力処理プログラムは、以上のように、上記出力処理方法が備える各ステップをコンピュータに実行させることを特徴とする。
【0227】
また、本発明に係る出力処理プログラムは、以上のように、上記出力処理装置が備える各手段として、コンピュータを機能させることを特徴とする。
【0228】
さらに、本発明に係る記録媒体は、以上のように、上記出力処理プログラムを記録したことを特徴とする。
【0229】
これにより、上記記録媒体、またはネットワークを介して、一般的なコンピュータに出力処理プログラムをインストールすることによって、該コンピュータを用いて上記の出力処理方法を実現する、言い換えれば、該コンピュータを出力処理装置として機能させることができる。
【図面の簡単な説明】
【図1】本発明の出力処理方法による出力範囲変更処理の手順を示すフローチャート図である。
【図2】レイアウト全体の概念を説明する図である。
【図3】上記レイアウトに対して、隣り合う出力範囲を互いに重複させた例を示す説明図である。
【図4】上記レイアウトに対して、出力範囲の大きさはそのままで、位置を上に変更した例を示す説明図である。
【図5】上記レイアウトに対して、出力範囲の大きさはそのままで、位置を下に変更した例を示す説明図である。
【図6】上記レイアウトに対して、出力範囲の位置はそのままで、大きさを変更した例を示す説明図である。
【図7】レイアウトデータの配列例を示す説明図である。
【図8】図4の出力範囲変更処理の手順を示すフローチャート図である。
【図9】図5の出力範囲変更処理の手順を示すフローチャート図である。
【図10】上記レイアウトに対して、出力範囲の大きさはそのままで、位置を下に変更した例を示す説明図である。
【図11】図10の出力範囲変更処理の手順を示すフローチャート図である。
【図12】本発明の出力処理装置の機能的な構成を示すブロック図である。
【図13】上記出力処理装置の一実施形態における構成例を示すブロック図である。
【図14】上記出力処理装置の外観例を示す模式的な斜視図である。
【図15】ウィンドウシステムの出力処理プログラムによる表示例を示す説明図である。
【図16】スクロール操作と出力処理とを連動させた場合の出力範囲の変更について説明する図である。
【図17】図16のレイアウトに対して最初に指定された出力範囲における出力例を示す説明図である。
【図18】図16のレイアウトに対して次に指定された出力範囲について、変更処理を行わない場合の出力例を示す説明図である。
【図19】図16のレイアウトに対して次に指定された出力範囲について、変更処理を行った場合の出力例を示す説明図である。
【図20】図16のレイアウトに対して次に指定された出力範囲について、変更処理を行った場合の他の出力例を示す説明図である。
【図21】本発明の出力処理方法による出力変換処理の手順を示すフローチャート図である。
【図22】分割表示される要素について、枠線出力変換処理をした例を示す説明図である。
【図23】分割表示される要素について、点線枠線出力変換処理をした例を示す説明図である。
【図24】分割表示される要素について、[点線+枠線]出力変換処理をした例を示す説明図である。
【図25】分割表示される要素について、[点線+枠線+矢印+割合数字]出力変換処理をした例を示す説明図である。
【図26】分割表示される要素について、見えにくくする出力変換処理をした例を示す説明図である。
【図27】分割表示される要素について、[点線+枠線+矢印+割合数字+要素出力]の出力変換処理をした例を示す説明図である。
【図28】本発明の他の出力処理装置の機能的な構成を示すブロック図である。
【符号の説明】
1 レイアウト全体枠
2 要素(表示対象要素)
3 要素(表示対象要素)
4 要素(表示対象要素)
5 要素(表示対象要素)
6 出力範囲
7 出力範囲
8 出力範囲
9 出力範囲
10 出力範囲
11 出力範囲
12 出力範囲
13 出力範囲
14 出力範囲
32 出力範囲
51 出力範囲取得手段
52 出力範囲変更手段
55 出力範囲変更判断手段
56 出力変換手段
65 出力範囲
70 CPU(出力範囲取得手段、出力範囲変更判断手段、出力範囲変更手
段、出力変換手段)
Claims (13)
- 座標空間に表示対象要素を配置したレイアウトの出力処理方法において、
出力範囲取得手段としてCPUが、レイアウトの少なくとも一部を切り出す出力範囲であり、複数の表示対象要素が含まれる出力範囲の情報を得る出力範囲取得ステップと、
出力範囲変更判断手段としてCPUが、上記切り出す出力範囲の境界によって出力範囲外に分割される表示対象要素の大きさが、基準の大きさ(零を除く)以上、あるいは表示対象要素の大きさに対して基準の割合(零を除く)以上になる場合には、縮小表示せずに表示対象要素が全て出力範囲に含まれているように出力範囲の大きさまたは位置を変更できるか否かを判断する出力範囲変更判断ステップと、
前記出力範囲変更判断ステップにおいて、出力範囲の情報が変更できると判断された場合に、出力範囲変更手段としてCPUが、出力範囲の大きさまたは位置を自動変更する出力範囲変更ステップと、を有することを特徴とする出力処理方法。 - 前記出力範囲取得ステップにおいて、出力範囲取得手段としてCPUが、既に取得済みの出力範囲と隣接するもしくは一部重なる出力範囲を得ることを特徴とする請求項1に記載の出力処理方法。
- 前記出力範囲変更ステップにおいて、出力範囲変更手段としてCPUが、既に取得済みの出力範囲と隣接するもしくは一部重なる出力範囲に自動変更することを特徴とする請求項1または2に記載の出力処理方法。
- 前記出力範囲変更ステップにおいて、出力範囲変更手段としてCPUが、出力する表示対象要素を出力範囲変更ステップの実行対象とするかどうかを識別する情報を、表示対象要素に持たせることを特徴とする請求項1、2、3のいずれか一項に記載の出力処理方法。
- 座標空間に表示対象要素を配置したレイアウトの出力処理方法において、
出力範囲取得手段としてCPUが、レイアウトの少なくとも一部を切り出す出力範囲であり、複数の表示対象要素が含まれる出力範囲の情報を得る出力範囲取得ステップと、
上記切り出す出力範囲に含まれる表示対象要素が、該出力範囲から所定の割合あるいは所定の大きさ(いずれも零を除く)以上はみ出す場合には、出力変換手段としてCPUが、その出力範囲に含まれる表示対象要素を縮小表示せずに他の出力に置き換える出力変換ステップと、を有することを特徴とする出力処理方法。 - 前記出力変換ステップにおいて、出力変換手段としてCPUが、前記出力範囲に含まれる表示対象要素を、所定の割合あるいは所定の大きさに応じた他の出力に置き換えることを特徴とする請求項5に記載の出力処理方法。
- 前記出力変換ステップにおいて、出力する表示対象要素を出力変換ステップの実行対象とするかどうかを識別する情報を表示対象要素に持たせることを特徴とする請求項6に記載の出力処理方法。
- 前記レイアウト出力において、前記出力範囲のスクロールがなされることを特徴とする請求項1または5に記載の出力処理方法。
- 座標空間に表示対象要素を配置したレイアウトの少なくとも一部を切り出す出力範囲であり、複数の表示対象要素が含まれる出力範囲の情報が入力される出力範囲取得手段と、
上記切り出す出力範囲の境界によって出力範囲外に分割される表示対象要素の大きさが、基準の大きさ(零を除く)以上、あるいは表示対象要素の大きさに対して基準の割合( 零を除く)以上になる場合には、縮小表示せずに表示対象要素が全て出力範囲に含まれているように出力範囲の情報を変更できるか否かを判断する出力範囲変更判断手段と、
出力範囲変更判断手段が出力範囲の情報を変更できると判断した場合に、出力範囲取得手段に入力された出力範囲の大きさまたは位置を変更する出力範囲変更手段と、を有することを特徴とする出力処理装置。 - 座標空間に表示対象要素を配置したレイアウトの少なくとも一部を切り出す出力範囲であり、複数の表示対象要素が含まれる出力範囲の情報を得る出力範囲取得手段と、
上記切り出す出力範囲に含まれる表示対象要素が、該出力範囲から所定の割合あるいは所定の大きさ(いずれも零を除く)以上はみ出す場合には、その出力範囲に含まれる表示対象要素を縮小表示せずに他の出力に置き換える出力変換手段と、を含むことを特徴とする出力処理装置。 - 請求項1ないし8のいずれか一項に記載の出力処理方法が備える各ステップをコンピュータに実行させるための出力処理プログラム。
- 請求項9または10に記載の出力処理装置が備える各手段として、コンピュータを機能させるための出力処理プログラム。
- 請求項11または12に記載の出力処理プログラムを記録した記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001354585A JP3813499B2 (ja) | 2001-11-20 | 2001-11-20 | 出力処理方法、出力処理装置、出力処理プログラム、および出力処理プログラムを記録した記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001354585A JP3813499B2 (ja) | 2001-11-20 | 2001-11-20 | 出力処理方法、出力処理装置、出力処理プログラム、および出力処理プログラムを記録した記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003157442A JP2003157442A (ja) | 2003-05-30 |
JP3813499B2 true JP3813499B2 (ja) | 2006-08-23 |
Family
ID=19166420
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001354585A Expired - Fee Related JP3813499B2 (ja) | 2001-11-20 | 2001-11-20 | 出力処理方法、出力処理装置、出力処理プログラム、および出力処理プログラムを記録した記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3813499B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101429466B1 (ko) * | 2012-11-19 | 2014-08-13 | 네이버 주식회사 | 동적 페이지 분할을 이용한 웹페이지 제공 방법 및 시스템 |
-
2001
- 2001-11-20 JP JP2001354585A patent/JP3813499B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003157442A (ja) | 2003-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7821690B2 (en) | Information processing apparatus, image forming apparatus and method, and storage medium readable by computer therefor | |
US10691385B2 (en) | Image processing apparatus, image processing method, and storage medium in which a text element and an image element are arranged based on layouts in a webpage | |
JP2007110679A (ja) | 画像表示装置、画像表示方法、その方法をコンピュータに実行させるプログラム、および画像表示システム | |
JP5455456B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JPH028339B2 (ja) | ||
JP5256956B2 (ja) | 画像処理装置、画像表示システム、及びプログラム | |
JP2004118477A (ja) | 情報処理装置および方法、記録媒体、並びにプログラム | |
JP4008280B2 (ja) | 表示方法、表示装置、表示プログラム、および表示プログラムを記録した記録媒体 | |
KR101376905B1 (ko) | 화상 처리 장치, 화상 처리 방법 및 기억 매체 | |
JP2004118478A (ja) | 情報処理装置および方法、記録媒体、並びにプログラム | |
US20110320933A1 (en) | Editing apparatus, layout editing method performed by editing apparatus, and storage medium storing program | |
JP2009282827A (ja) | 表示装置 | |
JP3813499B2 (ja) | 出力処理方法、出力処理装置、出力処理プログラム、および出力処理プログラムを記録した記録媒体 | |
JP4413952B2 (ja) | 表示制御のための方法、装置、プログラム、およびプログラム媒体 | |
JP5028980B2 (ja) | 文書編集装置およびプログラム | |
JP4992399B2 (ja) | 文書編集装置およびプログラム | |
JP2011145904A (ja) | 情報表示装置及びプログラム | |
JP2005267463A (ja) | 編集装置、編集方法、プログラムおよび記録媒体 | |
JP4090785B2 (ja) | 表示制御方法、表示制御プログラム、および記録媒体 | |
JP2006243867A (ja) | 文書表示装置および文書表示システム | |
JP3813506B2 (ja) | 出力処理方法、出力処理装置、出力処理プログラム、および出力処理プログラムを記録した記録媒体 | |
EP1626333A1 (en) | Print result displaying method, layout editing method, and print control device | |
JP4090784B2 (ja) | スクロールバー表示制御方法、スクロールバー表示制御装置、スクロールバー表示制御プログラム、および記録媒体 | |
JP3733725B2 (ja) | フォームオーバレイ装置、フォームオーバレイ方法、およびオーバレイ印刷制御用プログラムを記録したコンピュータで読み取り可能な記録媒体 | |
JPH10187679A (ja) | 表処理装置及び記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040611 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20051124 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051206 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060206 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060322 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060331 |
|
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: 20060530 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060531 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100609 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100609 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110609 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120609 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120609 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130609 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |