(57)【特許請求の範囲】
【請求項１】
グリフからなるすぐ前の行と相対的にグリフからなる現在の行の位置を計算する方法において、
受取り手段が、グリフからなる行を包含する文書を受取り且つ格納手段内に格納するステップ、グリフからなる各行は少なくとも１個のグリフを有しており、各グリフは前端と後端とを持っているエムボックス内に包含されており、前記エムボックスは前記グリフによって表わされるキャラクタのタイプサイズによって決定されるサイズを持っており、グリフからなる行はその行の最大のエムボックスの前端と平行であり且つそれと一致すべく定義された前ラインと、前記グリフからなる行の最大のエムボックスの後端と平行であり且つそれと一致して定義された後ラインと、前記グリフからなる行の前ラインと後ラインとの間の距離として定義されたラインハイトとを包含しており、
前記受取り手段が、エムボックスと相対的に行送り方向に沿っての一つの位置を特定する行送りメトリックを受取るステップ、
前記受取り手段が、前記現在の行に対する行送り値を受取るステップ、
計算手段が、前記受取り手段によって受取られた前記行送りメトリックにより特定される位置を前記すぐ前の行の行送り測定点の位置として計算するステップ、
前記計算手段が、前記受取り手段によって受取られた前記現在の行に対する行送り値及び前記すぐ前の行の行送り測定点の位置から前記現在の行の行送り測定点の位置を計算するステップ、
前記計算手段が、前記現在の行内における最大のエムボックスの前端と後端との間の距離として前記現在の行のラインハイトを計算して前記現在の行の位置を計算するステップ、
からなることを特徴とする方法。
【請求項２】
請求項１において、前記行送りメトリックは、エムボックスの前端と後端との中間にある垂直位置を特定することを特徴とする方法。
【請求項３】
請求項１において、前記行送りメトリックは、エムボックスの後端においての垂直位置を特定することを特徴とする方法。
【請求項４】
請求項１において、前記行送りメトリックは、エムボックスの前端と後端とを包含しており且つそれらの間の点における垂直位置を特定することを特徴とする方法。
【請求項５】
請求項１において、前記現在の行の行送り測定点の位置を計算する場合に、前記計算手段が、
前記すぐ前の行の行送り測定点の位置から前記現在の行の行送り値に対応する距離だけ行進行方向に移動した位置を計算する、
ことを特徴とする方法。
【請求項６】
請求項５において、グリフからなる行の後ラインと前記特定された行送りメトリックとの間にオフセットが存在する場合があり、且つ前記現在の行の位置を計算する場合に、前記計算手段が、
前記行送り値に対応する距離と前記現在の行内の最大エムボックスの前端との差としてオフセットを計算し、
前記現在の行の行送り測定点の位置から前記計算したオフセットに対応する距離だけ行進行方向と反対方向に移動した位置を前記現在の行の前ラインとして計算し、
前記現在の行のラインハイトに対応する距離だけ前記行進行方向へ移動した位置を後ラインとして計算する、
ことを特徴とする方法。
【請求項７】
請求項１において、前記現在の行の行送り測定点の位置を計算する場合に、前記計算手段が、
前記すぐ前の行の行送り測定点の位置から前記すぐ前の行の行送り値に対応する距離だけ前記行進行方向に移動した位置を前記現在の行の行送り測定点として計算する、
ことを特徴とする方法。
【請求項８】
請求項６において、グリフからなる行の後ラインと前記特定された行送りメトリックとの間にオフセットが存在する場合があり、且つ前記現在の行の位置を計算する場合に、前記計算手段が、
前記現在の行に対して存在する場合にそのオフセットを計算し、
前記現在の行の行送り測定点の位置から前記計算したオフセットに対応する距離だけ行進行方向に移動した位置を前記現在の行の後ラインとして計算し、
前記現在の行のラインハイトに対応する距離だけ前記行進行方向と反対方向に移動した位置を前記現在の行の前ラインとして計算する、
ことを特徴とする方法。
【請求項９】
請求項１乃至８の内のいずれか１項において、
前記受取り手段が、行進行方向が前記文書内において上から下への方向である前方行送りモデルか又は行進行方向が前記文書内において下から上への方向である後方行送りモデルのいずれかを特定する入力を受取り、
前記計算手段が、前記入力により特定された行進行方向において前記現在の行の位置を計算する、
ことを特徴とする方法。
【請求項１０】
グリフからなるすぐ前の行と相対的にグリフからなる現在の行の位置を計算するコンピュータプログラムにおいて、コンピュータをして、
グリフからなる各行は少なくとも１個のグリフを有しており、各グリフは前端と後端とを持っているエムボックス内に包含されており、前記エムボックスは前記グリフによって表わされるキャラクタのタイプサイズによって決定されるサイズを持っており、グリフからなる行はその行の最大のエムボックスの前端と平行であり且つそれと一致すべく定義された前ラインと、前記グリフからなる行の最大のエムボックスの後端と平行であり且つそれと一致して定義された後ラインと、前記グリフからなる行の前ラインと後ラインとの間の距離として定義されたラインハイトとを包含している状態において、グリフからなる行を包含する文書を受取り且つ格納手段内に格納する手順、
エムボックスと相対的に行送り方向に沿っての一つの位置を特定する行送りメトリックを受取る手順、
前記現在の行に対する行送り値を受取る手順、
前記受取り手段によって受取られた前記行送りメトリックにより特定される位置を前記すぐ前の行の行送り測定点の位置として計算する手順、
前記受取り手段によって受取られた前記現在の行に対する行送り値及び前記すぐ前の行の行送り測定点の位置から前記現在の行の行送り測定点の位置を計算する手順、
前記現在の行内における最大のエムボックスの前端と後端との間の距離として前記現在の行のラインハイトを計算して前記現在の行の位置を計算する手順、
を実行させることを特徴とするコンピュータプログラム。
【請求項１１】
請求項１０において、前記行送りメトリックは、エムボックスの前端と後端との中間にある垂直位置を特定することを特徴とするコンピュータプログラム。
【請求項１２】
請求項１０において、前記行送りメトリックは、エムボックスの後端においての垂直位置を特定することを特徴とするコンピュータプログラム。
【請求項１３】
請求項１０において、前記行送りメトリックは、エムボックスの前端と後端とを包含しており且つそれらの間の点における垂直位置を特定することを特徴とするコンピュータプログラム。
【請求項１４】
請求項１０において、前記現在の行の行送り測定点の位置を計算する場合に、コンピュータをして、
前記すぐ前の行の行送り測定点の位置から前記現在の行の行送り値に対応する距離だけ行進行方向に移動した位置を計算する手順、
を実行させることを特徴とするコンピュータプログラム。
【請求項１５】
請求項１４において、グリフからなる行の後ラインと前記特定された行送りメトリックとの間にオフセットが存在する場合があり、且つ前記現在の行の位置を計算する場合に、コンピュータをして、
前記行送り値に対応する距離と前記現在の行内の最大エムボックスの前端との差としてオフセットを計算する手順、
前記現在の行の行送り測定点の位置から前記計算したオフセットに対応する距離だけ行進行方向と反対方向に移動した位置を前記現在の行の前ラインとして計算する手順、
前記現在の行のラインハイトに対応する距離だけ前記行進行方向へ移動した位置を後ラインとして計算する手順、
を実行させることを特徴とするコンピュータプログラム。
【請求項１６】
請求項１０において、前記現在の行の行送り測定点の位置を計算する場合に、コンピュータをして、
前記すぐ前の行の行送り測定点の位置から前記すぐ前の行の行送り値に対応する距離だけ前記行進行方向に移動した位置を前記現在の行の行送り測定点として計算する手順、
を実行させることを特徴とするコンピュータプログラム。
【請求項１７】
請求項１５において、グリフからなる行の後ラインと前記特定された行送りメトリックとの間にオフセットが存在する場合があり、且つ前記現在の行の位置を計算する場合に、コンピュータをして、
前記現在の行に対して存在する場合にそのオフセットを計算する手順、
前記現在の行の行送り測定点の位置から前記計算したオフセットに対応する距離だけ行進行方向に移動した位置を前記現在の行の後ラインとして計算する手順、
前記現在の行のラインハイトに対応する距離だけ前記行進行方向と反対方向に移動した位置を前記現在の行の前ラインとして計算する手順、
を実行させることを特徴とするコンピュータプログラム。
【請求項１８】
請求項１０乃至１７の内のいずれか１項において、コンピュータをして、
行進行方向が前記文書内において上から下への方向である前方行送りモデルか又は行進行方向が前記文書内において下から上への方向である後方行送りモデルのいずれかを特定する入力を受取る手順、
前記入力により特定された行進行方向において前記現在の行の位置を計算する手順、
を実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はディスクトップパブリッシング（ＤＴＰ）及び行送りに関するものである。
【０００２】
【従来の技術】
ＤＴＰ文書は、典型的に、グリフからなる複数個の行を有しており、グリフは、通常、文字等のキャラクタを表わすものであるが、更に、記号及びブランクスペースを表わすことも可能である。文書内において、グリフからなる行は垂直に、水平に、又は何等かのそれらの組合わせで配列される。この配列は文書全体に対して又は文書のいずれか一部に対して適用することが可能である。
【０００３】
キャラクタ、記号又はブランクスペースが文書に付加され且つグリフからなる現在の行に充填されると、最後に充填された行と平行で且つそれに隣接して新たな行が付加される。行進行という用語は上述したように行を付加する態様のことを意味している。行進行方向は行が付加される方向である。例えば、ＤＴＰ文書の典型的な頁において、行は頁の上部からその頁の底部へ付加される。従って、行進行方向は上から下である。
【０００４】
グリフは、通常、エムボックス（エムスペースとも言われる）と呼称される仮想ボディ内に包含されている。エムボックスは1個のグリフの周りの外側の枠であり、ディメンジョンとサイズとを持っている。エムボックスのディメンジョン及びサイズは、夫々、そのグリフの形状及びそのグリフによって表されるキャラクタのタイプポイントによって決定される。通常、エムボックスのディメンジョンはグリフグループ毎に異なっている。特に、関連するグリフからなるグループの場合には、典型的に、そのグループ内の全てのグリフを枠にはめることが可能な固定したディメンジョンのエムボックスが存在している。関連したグループのグリフは同一のフォントに属するキャラクタを表わすものを包含しているがそれに制限されるものではない。中国語−日本語−韓国語（ＣＪＫ）ＤＴＰシステムにおいては、エムボックスのディメンジョンは等間隔の全幅ＣＪＫ表意キャラクタのスタンダードのエスケープメント即ち送りと一致し、従って「表意エムボックス」と呼ばれる。通常、エムボックスのサイズは枠をはめたグリフによって表されるキャラクタのタイプサイズによって決定される。例えば、タイプサイズ１０のキャラクタを表わすグリフの枠を形成するエムボックスはタイプサイズ１２のキャラクタを表す同一のグリフのフレームを形成するエムボックスよりも一層小さい。
【０００５】
表意エムボックス内のどこにグリフを配置させるか（又は、類推的に、与えられたグリフに対してどこにエムボックスを位置決めさせるか）はＤＴＰシステムの規約に依存する。欧文ＤＴＰシステムにおいては、グリフの主要部分はベースライン上にある。上昇する部分又は下降する部分は夫々のアセンダーライン又はディセンダーラインへ延在する。そこからグリフが描かれるゼロ点（即ち原点）は、従来、ベースラインの左側端部にあるものとして定義される。欧文規約においては、このゼロ点はエムボックス内のグリフの位置を決定する。図５Ａはキャラクタ「ｄ」を表わすグリフ５０２の枠を形成するエムボックス５００の１つの例を示している。このグリフの主要部分はベースライン５０４上に乗っており且つ上昇するステムはアセンダーライン５０６へ向かって延在している。ゼロ点５０８は図示した如くに位置されている。図５Ｂはキャラクタ「ｙ」を表わすグリフ５１０の枠を形成するエムボックス５００の別の例を示している。このグリフの主要部分はベースライン５０４上に載っており且つ下降するステムはディセンダーライン５１２へ向かって延在している。図５Ｃから明らかなように、グリフ５０２及び５１０はそれらのベースラインが同一線上となるようにそれらのエムボックスを配設することにより１つの行内に並べることが可能である。
【０００６】
ＣＪＫＤＴＰシステムにおいては、通常、エムボックス内においてベースラインとゼロ点が存在しているが、表意キャラクタを表すグリフはゼロ点に関して任意の点に位置されている。記述された欧文規約に従って定義されたデジタルフォントで正しい日本語のタイポグラフィ即ち活版印刷を実施するためには、ゼロ点（即ち、欧文ベースライン）に関してどこに表意エムボックスを配置させるかを計算することが必要である。例えば、あるフォントでは、それらの表意キャラクタが欧文ベースラインの上側に８８％で下側に１２％配置されるように設計されている。このようなフォントにおいては、表意エムボックスはその高さの１２％がベースラインの下側であるように定義されている。
【０００７】
図６Ａは表意キャラクタを表わすグリフ６０２の枠を形成しているエムボックス６００の一例を示している。エムボックス６００に関してのグリフ６０２の位置はベースライン６０４の上側において特定された百分率によって決定され、そのことは、欧文ＤＴＰシステムにおけるものとは異なり、エムボックス内の同一の位置に必ずしも普遍的に位置されているものではない。即ち、ＣＪＫＤＴＰシステムにおいては、ベースライン６０４の位置は任意的であり且つ変化する場合がある。この場合には、グリフ６０２の約８８％がベースライン６０４の上側にある。図６Ｂは８８％の基準を使用して位置決めした別のグリフ６０６の枠を形成しているエムボックス６０６の例を示している。図６Ｃから明らかなように、グリフ６０２及び６０６は、それらのベースラインが直線となるようにそれらのエムボックスを配置させることにより１つの行においてラインアップ即ち一列に並ぶものではない。
【０００８】
ＤＴＰシステムにおいてどのようにしてグリフのラインが定義されているかは、又、ＤＴＰシステムの規約に依存する。グリフのラインは、通常、上部ラインと底部ラインとを包含している。欧文ＤＴＰシステムはグリフからなる現在の行におけるエムボックスのベースラインと一致するようにグリフからなる現在の行の底部ラインを設定する。グリフからなる現在の行の上部ラインはグリフからなる前の行におけるエムボックスのベースラインと一致するように設定される。この規約は、グリフからなる１つの行におけるグリフが適切にラインアップ即ち一列に並ぶことを確保する。
【０００９】
図７は欧文ライン定義の一例を示している。図示したように、グリフからなる行７０４の上部ライン７０２はグリフ７０８からなる前の行におけるエムボックスのベースライン７０６と一致するように定義されている。グリフ７０８からなる行の底部ライン７１０はグリフ７０４からなる行におけるエムボックスのベースライン７１２と一致するように定義されている。
【００１０】
ＣＪＫＤＴＰシステムは適切なグリフのアライメント即ち整列を確保するために前述したパラグラフにおいて説明した技術を使用することは不可能である。何故ならば、上述したようにＣＪＫグリフはゼロ点に関して任意の点に位置されるからである。ＣＪＫＤＴＰシステムはグリフからなる現在の行における最大のエムボックスのトップエッジ即ち上端と一致するようにグリフからなる現在の行の上部ラインを設定する。グリフからなる現在の行の底部ラインは該最大のエムボックスの底部であるように設定される。ＣＪＫグリフ及び欧文グリフを整列させることは、２００１年２月１２日付で出願した「行送りを決定する方法（Ｍｅｔｈｏｄ  ｆｏｒ  Ｄｅｔｅｒｍｉｎｉｎｇ  Ｌｉｎｅ  Ｌｅａｄｉｎｇ）」という名称のＰＣＴ出願番号ＵＳ０１０４４９９号において記載されており、尚、その特許出願の記載内容を引用によって本明細書に取込む。ＣＪＫグリフと欧文グリフとを整列させることについては、更に、２００１年２月１２日付で出願した「フォントにおけるＣＪＫエムボックスを計算する方法（Ｍｅｔｈｏｄ  ｆｏｒＣａｌｃｕｌａｔｉｎｇ  ＣＪＫ  Ｅｍｂｏｘｅｓ  ｉｎ  Ｆｏｎｔｓ）」という名称の米国特許出願（代理人ドケット番号０７８４４−４１２００１）においても記載されており、その特許出願の記載内容も引用によって本明細書に取込む。
【００１１】
図８はＣＪＫライン定義の一例を示している。図示したように、グリフ８０４からなる行の上部ライン８０２はグリフ８０４からなる行における最も大きなエムボックス８０８のトップエッジ即ち上端８０６と一致するように定義されている。グリフ８０４からなる行の底部ライン８１０は最も大きなエムボックス８０８の底端８１２と一致するように定義されている。更に、隣接する行の間にアキと呼ばれるスペース即ち間隔が存在する場合がある。適切なアライメント即ち整合状態を確保するために、ＣＪＫＤＴＰシステムは、典型的に、グリフをエムボックスの中心に位置決めさせ且つエムボックスの中心によってグリフからなる行内においてエムボックスを整合状態とさせる。
【００１２】
行送りとはグリフからなる隣接する行の間の距離のことを意味している。殆どのＤＴＰシステムは欧文規約及びＣＪＫ規約の両方に対して同一の態様で行送りを測定する。特に、行送りはグリフからなる現在の行のベースラインからグリフからなるすぐ前の行のベースラインへの尺度である。図９は欧文行送りモデルの一例を示している。然しながら、この行送りモデルは、ＣＪＫＤＴＰシステムに適用された場合には、見た目が綺麗でない行配置となる場合がある。図示したように、矢印９０２で示した行送りはグリフからなる現在の行９０６におけるベースライン９０４からグリフからなる前の行９１０におけるベースライン９０８への尺度である。ＣＪＫＤＴＰシステムにおいて欧文行送りモデルを使用することによって発生する１つの問題は、前述したように、ＣＪＫのライン定義が欧文のライン定義と同一ではないということである。欧文行送りモデルを強制的にＣＪＫＤＴＰシステムに適用することは、通常、グリフからなる行の間に不規則的な距離を発生させることとなる。何故ならば、前述したように、これらのシステムはライン乃至は行の定義が異なっており且つＣＪＫシステムはゼロ点に関して任意の点にグリフを位置決めさせるものだからである。
【００１３】
【発明が解決しようとする課題】
本発明は、以上の点に鑑みなされたものであって、上述した如き従来技術の欠点を解消し、改良した行送り技術を提供することを目的とする。
【００１４】
【課題を解決するための手段】
本発明は、任意の点から行送りを計算するための方法及び装置、更に機械読取可能な媒体上に格納可能なコンピュータプログラムを提供している。
【００１５】
一般的に、１つの側面においては、本発明はグリフからなるすぐ前の行と相対的にグリフからなる現在の行の位置を計算する方法を提供している。本方法は、グリフからなる行を包含する文書を受取ることを包含している。グリフからなる各行は少なくとも１個のグリフを有している。各グリフは前端と後端とを持っているエムボックス内に包含されている。該エムボックスはグリフによって表わされるキャラクタのタイプサイズによって決定されるサイズ即ち寸法を有している。グリフからなる１つの行は、グリフからなるその行の最も大きなエムボックスの前端と平行であり且つそれと一致して定義されている前ラインと、グリフからなるその行の最も大きなエムボックスの後端と平行であり且つそれと一致すべく定義されている後ラインと、グリフからなるその行の前ラインと後ラインとの間の距離として定義されているラインハイト（行高さ）とを包含している。本方法は、エムボックスと相対的な基準点を表わす行送りメトリック（距離）を特定する入力を受取ることを包含している。本方法は、グリフからなる現在の行に対する行送り値及びグリフからなるすぐ前の行に対する行送り値を受取ることを包含している。本方法は、グリフからなるすぐ前の行のラインハイト即ち行高さを計算することを包含している。本方法は、行送りメトリック及びグリフからなるすぐ前の行のラインハイトからグリフからなるすぐ前の行の行送り測定点の位置を計算することを包含している。本方法は、受取った行送り値のうちの１つ及びグリフからなるすぐ前の行の行送り測定点の計算した位置からグリフからなる現在の行の行送り測定点の位置を計算することを包含している。本方法はグリフからなる現在の行のラインハイトを計算することを包含しており、更に、行送りメトリック、グリフからなる現在の行のラインハイト、グリフからなる現在の行の行送り測定点の計算した位置からグリフからなる現在の行の位置を計算することを包含している。
【００１６】
本発明は以下の利点のうちの１つ又はそれ以上を実現するために実施することが可能である。本発明に基づくＤＴＰシステムは柔軟性があり且つ欧文ＤＴＰシステムとＣＪＫＤＴＰシステムの両方に適用可能である。本システムはエムボックスの中心等のユーザによって選択可能な任意の点から行送りを計算することが可能である。本システムは柔軟性があり且つ前方又は後方行送りモデルのいずれかを使用することが可能である。
【００１７】
【発明の実施の形態】
以下の説明では、主に、水平方向の組版について説明するが、本発明の行送り技術は水平方向の組版のみならず垂直方向の組版についても同様に適用可能であることに注意すべきである。
【００１８】
図１は本発明の１実施例に基づく電子組版ＤＴＰシステム１を示している。ＤＴＰシステム１は、電子組版及びレイアウト編集等を行うためのＤＴＰ処理制御装置２と処理中のデータを表示するためのディスプレイ装置３と、例えばこれらに制限されるものではないが、グラフィック、テキスト、制御命令等の種々のタイプのデータを入力するための入力装置５と、処理したデータを出力するための出力装置６とを具備している。ＤＴＰ処理制御装置２は、タイプセッティング即ち組版を制御する組版制御装置２ａと、レイアウト編集を制御するレイアウト制御装置２ｂと、ディスプレイ上に出力されるか又は印刷されるべきテキストの属性に関するフォント情報を格納しているフォントファイル２ｃとを有している。特に、フォントファイル２ｃは欧文フォント及びこれらに制限されるものではないが例えば日本語、中国語、韓国語等の表意キャラクタに対するフォントであるＣＪＫフォント８を有している。更に、組版制御装置２ａは隣接する行の行送りを計算する行送り装置７を有している。
【００１９】
ディスプレイ装置３は、これらに制限されるものではないが、例えばＣＲＴ又はＬＣＤ等の種々のタイプの表示装置とすることが可能である。入力装置５はキーボード、ポインティングデバイス（例えば、マウス、トラックボール、トラックポイント）、スキャナ、又は通信インターフェースとすることが可能である。更に、出力装置６はプリンタ又は外部メモリ装置とすることが可能である。ＤＴＰ処理制御装置２はＣＰＵ等のプロセッサ、メモリ、又は該メモリ内にロードされ且つプロセッサによって処理される行送りルーチンを包含する電子組版処理プログラムを有することが可能である。一方、ＤＴＰ処理制御装置２は部分的に又はその全体をハードウエア又はファームウエアとして実現することも可能である。
【００２０】
図２は汎用コンピュータシステムにおいて実現した場合の本発明の１つの側面に基づく行送り機能を包含するＤＴＰシステム１０を示している。図２に示したシステム１０はＣＰＵ１１、メモリ１２、ＣＲＴ１３、ハードディスク１４、キーボード１５、マウス１６、ＣＤ−ＲＯＭドライブ１７、ＦＤドライブ１８、プリンタ１９を具備している。これらのユニットはバス９を介して接続されており且つそれを介して共同的な作業を行う。システム１０は行送りプログラム７′及びその他の電子組版プログラムを有している。行送りプログラムはその他の電子組版プログラム内に包含させることが可能である。行送りプログラムを包含する電子組版プログラムがＣＤ−ＲＯＭドライブ１７又はＦＤドライブ１８を使用することによってシステム１０内にインストールされ、且つハードディスク１４等のメモリ内に格納されており、それは、更に、フォントファイル２ｃを格納することも可能である。行送りプログラム７′又は行送りプログラム７′を包含する電子組版プログラムがキーボード１５又はマウス１６を操作するユーザによって実行されると、行送りプログラムはメモリ１２内へロードされ且つＣＰＵ１１によって実行される。１つの実現例においては、行送りプログラムを格納しているコンピュータによって読取可能な格納媒体（例えば、ＣＤ−ＲＯＭ、ＦＤ、テープ又は半導体メモリ）が供給され、従って汎用コンピュータシステムが本発明に基づく行送り機能を提供するＤＴＰシステムへ変換させることが可能である。
【００２１】
図３は本発明に基づく行送り方法３００を示している。図示したように、方法３００を実施するＤＴＰシステムはドキュメント即ち文書を受取る（ステップ３０２）。該文書は任意のＤＴＰ文書とすることが可能であり且つグリフからなる複数個の行を包含している。行の進行方向は上から下である。一方、行の進行方向は上から下、下から上、右から左、左から右の任意の組み合わせとすることが可能である。該文書におけるグリフからなる各行は少なくとも１個のグリフを有しており、それはキャラクタ、記号、ブランクスペースの任意の組み合わせを表わすことが可能である。各グリフはエムボックス内に枠がはめられており、該エムボックスは、この場合にはトップエッジ即ち上端であるグリフからなる前の行の側部上の前端と、この場合にはボトムエッジ即ち底端であるグリフからなる次の行の側部上の後端とを有している。前述したように、エムボックスのディメンジョンは、通常、フォント毎に異なる。エムボックスのサイズはそのエムボックスによって枠がはめられているグリフによって表わされるキャラクタのタイプサイズによって決定される。該文書内のグリフからなる行は欧文又はＣＪＫのいずれかの行定義に従うことが可能である。
【００２２】
本システムは文書内のグリフからなる１つの行を選択する入力を受取る（ステップ３０４）。選択された行はグリフからなる現在の行と呼ばれる。本システムへの入力はこれに制限されるものではないがユーザ入力を包含している。
【００２３】
本システムは行送りメトリックを特定する入力を受取る（ステップ３０６）。行送りメトリックは、エンボックスと相対的に行送り方向に沿っての位置を特定する。この相対的な位置はエムボックスの前端及び後端と平行なラインとして考えることが可能である。図３Ａは行送りメトリックの前述した具体例の１つの例を示している。この例においては、行の進行方向は上から下である。この具体例においては、入力が行送りメトリック３０１を特定し、それはエムボックス３０７の上端３０３と底端３０５の中間にある垂直位置を表わしている。一方、行送りメトリックはエムボックス３０７と相対的な垂直位置を表わすことが可能な例えば点３０９及び３１１等の任意の点とすることが可能である。
【００２４】
図３に示したように、本システムはグリフからなる現在の行及びすぐその前の行に対する行送り値を決定する（ステップ３０８）。例えば、グリフからなる１つの行の行送り値はグリフからなるその行における最大のエムボックスの行送り値として設定することが可能である。一方、本システムはユーザ又はコンピュータプログラムから行送り値を受取ることが可能であり、該プログラムはデフォルトの行送り値を格納しているか又は行送り値を計算する。
【００２５】
本システムはグリフからなるすぐ前の行の前ラインと後ラインとの間の垂直距離を計算することによってグリフからなるすぐ前の行のラインハイトを計算する（ステップ３１０）。一方、ＣＪＫライン定義を具備するシステムにおいては、本システムはその行内の最も大きなエムボックスのハイト即ち高さを計算することによってラインハイト即ち行高さを計算する。
【００２６】
本システムはグリフからなるすぐ前の行の行送り測定点を決定する（ステップ３１２）。グリフからなる現在の行の行送り測定点はグリフからなる現在の行と相対的な垂直位置であり、そこから行送り矢印（例えば、図９の行送り矢印９０２）が発生することが可能である。この同一の垂直位置は、又、グリフからなるすぐ前の行から発生する行送り矢印が終端する垂直位置でもある。即ち、現在の行とすぐ前の行との間の距離を表わす行送り矢印はグリフからなるすぐ前の行の行送り測定点において発生し且つグリフからなる現在の行の行送り測定点で終了する。
【００２７】
行送り測定点を決定するために、本システムは行送りメトリックと計算されたラインハイトとを使用する。本システムは、グリフからなる現在の行における最大のエムボックスを探し出し、次いで、グリフからなる現在の行と相対的なこの最大のエムボックスの垂直位置を決定することによって行送り測定点を計算する。そのエムボックス位置は使用中のＤＴＰ規約に依存する。欧文ＤＴＰライン定義の場合には、グリフからなる現在の行の上部ラインはグリフからなるすぐ前の行におけるエムボックスのベースラインと一致し、且つグリフからなる現在の行の底部ラインはグリフからなる現在の行におけるエムボックスのベースラインと一致する。ＣＪＫＤＴＰライン定義の場合には、グリフからなる１つの行の上部ラインはグリフからなる現在の行における最大のエムボックスの上端と一致し且つグリフからなる現在の行の底部ラインは最大のエムボックスの底部エッジと一致する。最大のエムボックスが垂直方向において正確に位置決めされると、本システムは行送りメトリック（それはこの最大のエムボックスと相対的な垂直位置を特定する）を使用して行送り測定点の位置を決定する。
【００２８】
本システムはグリフからなる現在の行の行送り測定点を決定する（ステップ３１４）。現在の行の行送り測定点を決定するために、本システムはステップ３０８において受取った行送り値のうちの１つを選択する。後方行送りモデルの場合には、本システムはグリフからなる現在の行の行送り値を選択する。前方行送りモデルの場合には、本システムはグリフからなるすぐ前の行の行送り値を選択する。本システムはグリフからなるすぐ前の行の行送り測定点によって表わされる垂直位置において開始し且つグリフからなる現在の行の行送り測定点の垂直位置である新たな垂直位置へ選択された最大の行送り値に対応する距離下方向へ移動する。
【００２９】
本システムはグリフからなる現在の行のラインハイトを計算する（ステップ３１６）。このステップにおいて関与する計算は、本システムがグリフからなるすぐ前の行に対するラインハイトを計算するステップ３１０におけるものと同様である。
【００３０】
本システムはグリフからなる現在の行の位置を計算する（ステップ３１８）。本システムはグリフからなる現在の行における最大のエムボックスと相対的にグリフからなる現在の行の行送り測定点の垂直位置を知得しているので、本システムはこの計算を実施することが可能である。行送りメトリックはこの関係を特定する。更に、本システムはこの最大のエムボックスと相対的に現在の行の垂直位置を知得している。
【００３１】
図４Ａ−４Ｃは方法３００において実施される計算の１つの具体例を例示している。ＤＴＰシステムは文書及びグリフからなる現在の行を特定する入力を受取り、それから本システムはグリフからなるすぐ前の行４００を選択する。図４Ａに示したように、このグリフからなる行はＣＪＫライン定義に従っており且つグリフからなる行４００内に包含されている最大のエムボックス４０６によって定義されるように上部ライン４０２と底部ライン４０４とを包含している。本システムは、又、エムボックス４０６の上端４０８から７５％である行送りメトリックを特定する入力を受取る。これらの入力から、本システムはグリフからなるすぐ前の行４００に対する行送り測定点の垂直位置を計算する。特に、本システムは上端４０８と行送りメトリックとの間の垂直オフセット４１０を計算する。次いで、本システムはこのオフセット４１０を使用して上部ライン４０２において開始し且つ計算されたオフセット４１０に対応する距離下方向へ移動することによって行送り測定点の垂直位置を位置決めさせる。グリフからなるすぐ前の行４００に対する行送り測定点の垂直位置は点４１２として示してある。象徴的に、本システムはグリフからなるすぐ前の行４００の上に最大のエムボックス４０６及びその行送りメトリックを重畳させることによって行送り測定点を決定する。
【００３２】
図４Ｂに示したように、本システムは、次いで、点４１２からグリフからなるすぐ前の行の行送り値に対応する距離４１４下方向へ移動する（これに制限されるものではないが、前方行送りモデルを仮定）。点４１６として示したその結果得られる位置はグリフからなる現在の行の行送り測定点である。
【００３３】
図４Ｃに示したように、本システムはグリフからなる現在の行における最大のエムボックス４２２の上端４２０との間のオフセット４１８を計算する。この垂直位置はグリフからなる現在の行の上部ラインの垂直位置を表わしている。この垂直位置は、又、最大のエムボックス４２２の上端４２１の垂直位置を表わしている。象徴的に、本システムは最大のエムボックス４２２を重畳させ、従ってその行送りメトリックはグリフからなる現在の行の行送り測定点（点４１６によって表わしてある）と同一の垂直位置にある。最大のエムボックス４２２の上端４２０はグリフからなる現在の行の上部ラインの垂直位置を表わしている。
【００３４】
図４Ｄに示したように、本システムは前述したステップから計算された垂直位置においてグリフからなる現在の行の上部ライン４２４を設定する。底部ライン４２６を計算するために、本システムは上部ライン４２４の垂直位置において開始し且つグリフからなる現在の行の底部ラインを表わす垂直位置へグリフからなる現在の行のラインハイトに対応する距離４２８下方向へ移動する。本システムはグリフからなる現在の行４３０の位置を決定する。
【００３５】
本発明はデジタル電子回路、又はコンピュータハードウエア、ファームウエア、ソフトウエア、又はそれらの組み合わせで実現することが可能である。本発明装置はプログラム可能なプロセッサによって実行させるために機械読取可能な格納装置内に格納させることの可能なコンピュータプログラム又はコンピュータプログラムプロダクトとして実現することが可能である。本発明方法のステップは入力されたデータを処理し且つ出力を発生させることにより本発明の機能を実施する命令からなるプログラムを実行するプログラム可能なプロセッサによって実施することが可能である。本発明はデータ記憶（格納）システムからデータ及び命令を受取り且つそれへデータ及び命令を送信すべく結合されている少なくとも１個のプログラム可能なプロセッサ、少なくとも１個の入力装置、少なくとも１個の出力装置を包含するプログラム可能なシステム上で実行可能な１つ又はそれ以上のコンピュータプログラムで実現することが可能である。各コンピュータプログラムはハイレベル手順又はオブジェクト指向型プログラミング言語、又は所望により、アッセンブリ又は機械言語で実現することが可能であり、いずれの場合においても、その言語はコンパイル型か又はインタプリタ型の言語とすることが可能である。適宜のプロセッサとしては、例えば、汎用及び特別目的マイクロプロセッサの両方を包含している。一般的には、プロセッサがリードオンリメモリ及び／又はランダムアクセスメモリから命令及びデータを受取る。コンピュータの基本的な要素は命令を実行するためのプロセッサとメモリとである。一般的には、コンピュータはデータファイルを格納するための１個又はそれ以上の大量記憶装置を包含しており、このような装置としては、例えば、内部ハードディスク及び着脱自在なディスク等の磁気ディスク、磁気光学的ディスク、光学的ディスク等がある。コンピュータプログラム命令及びデータを格納するのに適した記憶装置としては、全ての形態の非揮発性メモリを包含しており、例えばＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ装置等の半導体メモリ装置、内部ハードディスク及び着脱自在なディスク等の磁気ディスク、磁気光学的ディスク、ＣＤ−ＲＯＭディスク等がある。前述したもののいずれをもＡＳＩＣ（応用特定集積回路）によって補充させるか又はその中に組込むことが可能である。
【００３６】
ユーザとの対話即ち相互作用を与えるために、本発明は、例えばユーザに対して情報を表示するためのモニタ又はＬＣＤスクリーン等のディスプレイ装置を具備すると共にそれによりユーザがコンピュータシステムへ入力を供給することが可能な例えばマウス又はトラックボール等のポインティングデバイス及びキーボードを具備するコンピュータシステム上で実現することが可能である。このコンピュータシステムはコンピュータプログラムがそれを介してユーザと対話即ち相互作用を行うグラフィカルユーザインターフェースを提供すべくプログラムすることが可能である。
【００３７】
以上、本発明を特定の実施例について説明したが、その他の実施例も本発明の技術的範囲に属するものである。例えば、本発明のステップは異なる順番で実施することが可能でありその場合にも尚且つ所望の結果を達成することが可能である。本発明に基づくＤＴＰシステムは前方行送りモデルに制限されるものではなく、前方行送りモデルのみならず後方行送りモデルもサポートすることが可能である。行送りメトリックはエムボックスと相対的な任意の点を特定することが可能であり、エムボックスの上部から開始し且つエムボックスの上部で終了することに制限されるものではない。例えば、行送りメトリックは、本システムが現在のエムボックスの底部から前のエンボックスの底部へ、現在のエムボックスの上部から前のエムボックスの上部へ、又は現在のエムボックスの中心から前のエムボックスの中心へ行送りを測定するように変更することが可能である。行送りメトリックは、更に、エムボックス外側の相対的な点を包含するエムボックスと相対的な任意の点を特定することが可能である。上述した行送り技術は任意の方向における行設定に適用することが可能であり、これらに制限されるものではないが、水平の行設定及び垂直の行設定を包含している。上述した行送り技術は任意の行進行方向に適用され、これらに制限されるものではないが、上から下、下から上、左から右、右から左の行進行方向を包含している。本システムは任意の態様でグリフからなるすぐ前の行の行送り測定点を決定することが可能であり、エムボックスの上部と行送りメトリックとの間のオフセットを計算し、エムボックスの底部と行送りメトリックとの間のオフセットを計算し、エムボックスの中間と行送りメトリックとの間のオフセットを計算し、エムボックスと相対的な任意の点と行送りメトリックとの間のオフセットを計算することを包含している。本システムがグリフからなる現在の行の行送り測定点を決定すると、本システムは任意の態様でグリフからなる現在の行の位置を計算することが可能であり、例えば、エムボックスの上部と行送りメトリックとの間のオフセットを計算すること、エムボックスの底部と行送りメトリックとの間のオフセットを計算すること、エムボックスの中間と行送りメトリックとの間のオフセットを計算すること、エムボックスと相対的に任意の点と行送りメトリックとの間のオフセットを計算することを包含している。
【００３８】
以上、本発明の具体的実施の態様について詳細に説明したが、本発明は、これら具体例にのみ制限されるべきものではなく、本発明の技術的範囲を逸脱することなしに種々の変形が可能であることは勿論である。
【図面の簡単な説明】
【図１】  本発明に基づくＤＴＰシステムを示した概略図。
【図２】  本発明に基づく別のＤＴＰシステムを示した概略図。
【図３】  行送りを計算する本発明に基づく方法を示したフローチャート。
【図３Ａ】  行送りメトリックの１つの具体例を示した概略図。
【図４Ａ】  図１の方法の１つの具体例を示した概略図。
【図４Ｂ】  図１の方法の１つの具体例を示した概略図。
【図４Ｃ】  図１の方法の１つの具体例を示した概略図。
【図４Ｄ】  図１の方法の１つの具体例を示した概略図。
【図５】  （Ａ）−（Ｃ）は欧文ＤＴＰ規約のエムボックスを示した各概略図。
【図６】  （Ａ）−（Ｃ）はＣＪＫＤＴＰ規約のエムボックスを示した各概略図。
【図７】  欧文ライン定義の一例を示した概略図。
【図８】  ＣＪＫライン定義の一例を示した概略図。
【図９】  欧文行送りモデルを示した概略図。
【符号の説明】
１  電子組版ＤＴＰシステム
２  ＤＴＰ処理制御装置
２ａ  組版制御装置
２ｂ  レイアウト制御装置
２ｃ  フォントファイル
３  ディスプレイ装置
５  入力装置
６  出力装置
７  行送り装置
８  ＣＪＫフォント
１０  ＤＴＰシステム
１１  ＣＰＵ
１２  メモリ
１３  ＣＲＴ
１４  ハードディスク
１５  キーボード
１６  マウス
１７  ＣＤ−ＲＯＭドライブ
１８  ＦＤドライブ
１９  プリンタ
【図１】
0004261149.tif 000002
【図２】
0004261149.tif 000003
【図３】
0004261149.tif 000004
【図３Ａ】
0004261149.tif 000005
【図４Ａ】
0004261149.tif 000006
【図４Ｂ】
0004261149.tif 000007
【図４Ｃ】
0004261149.tif 000008
【図４Ｄ】
0004261149.tif 000009
【図５】
0004261149.tif 000010
【図６】
0004261149.tif 000011
【図７】
0004261149.tif 000012
【図８】
0004261149.tif 000013
【図９】
0004261149.tif 000014