JPH10171789A - 文字処理方法及び装置 - Google Patents
文字処理方法及び装置Info
- Publication number
- JPH10171789A JPH10171789A JP8342378A JP34237896A JPH10171789A JP H10171789 A JPH10171789 A JP H10171789A JP 8342378 A JP8342378 A JP 8342378A JP 34237896 A JP34237896 A JP 34237896A JP H10171789 A JPH10171789 A JP H10171789A
- Authority
- JP
- Japan
- Prior art keywords
- character
- font
- feed width
- substitute
- requested
- 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.)
- Withdrawn
Links
Landscapes
- Document Processing Apparatus (AREA)
Abstract
(57)【要約】
【課題】本発明は、要求フォントを代替フォントに置換
する文字処理方法及び装置に関し、要求フォントを代替
フォントに置換して出力する際、僅かな追加データを用
いるだけで各文字を適切な位置に配置することができ、
出力される文字が前後の文字と重なり合うことがない文
字処理方法及び装置を提供することを目的とする。 【解決手段】フォント使用要求111を受けて代替フォ
ント決定部130は、フォントデータベース170を参
照して、要求フォント113が存在しない場合は代替フ
ォント131を選択する。文字送り幅決定部140は要
求フォント113の送り幅情報をフォントデータベース
170より取得し、これを印刷時の文字送り幅とする。
文字位置調整部150は、後述の文字位置調整方法によ
り文字送り幅内に文字が適切に納まるように印字位置を
調整する。この調整された印字位置に従って文字印字部
160は文字を印刷して印字結果180を得る。
する文字処理方法及び装置に関し、要求フォントを代替
フォントに置換して出力する際、僅かな追加データを用
いるだけで各文字を適切な位置に配置することができ、
出力される文字が前後の文字と重なり合うことがない文
字処理方法及び装置を提供することを目的とする。 【解決手段】フォント使用要求111を受けて代替フォ
ント決定部130は、フォントデータベース170を参
照して、要求フォント113が存在しない場合は代替フ
ォント131を選択する。文字送り幅決定部140は要
求フォント113の送り幅情報をフォントデータベース
170より取得し、これを印刷時の文字送り幅とする。
文字位置調整部150は、後述の文字位置調整方法によ
り文字送り幅内に文字が適切に納まるように印字位置を
調整する。この調整された印字位置に従って文字印字部
160は文字を印刷して印字結果180を得る。
Description
【0001】
【発明の属する技術分野】本発明は、要求フォントを代
替フォントに置換する文字処理方法及び装置に関する。
替フォントに置換する文字処理方法及び装置に関する。
【0002】
【従来の技術】フォントに含まれる各々の文字は文字サ
イズ毎に特定の送り幅を持っている。一般に、同一サイ
ズで全文字の送り幅がすべて同じフォントを固定送り幅
フォントと呼び、送り幅が異なる文字を含むフォントを
プロポーショナルフォントと呼んでいる。
イズ毎に特定の送り幅を持っている。一般に、同一サイ
ズで全文字の送り幅がすべて同じフォントを固定送り幅
フォントと呼び、送り幅が異なる文字を含むフォントを
プロポーショナルフォントと呼んでいる。
【0003】固定送り幅フォントにしてもプロポーショ
ナルフォントにしても、各文字は描面原点からの相対位
置に描画される。例えば、縦40ドット、横40ドット
の文字を描画する場合、描面原点が(400,200)
であるとすると、(400,200)−(439,23
9)の領域に文字は描画される。
ナルフォントにしても、各文字は描面原点からの相対位
置に描画される。例えば、縦40ドット、横40ドット
の文字を描画する場合、描面原点が(400,200)
であるとすると、(400,200)−(439,23
9)の領域に文字は描画される。
【0004】各文字の送り幅とは、この描画原点の移動
量であると言うことができる。図10を用いてこの描画
原点の移動量について説明する。例えば、プロポーショ
ナルフォントの場合、「あ」「い」「う」の3文字の送
り幅がそれぞれ、30、33、28であるとする。この
とき、(100,200)の描画原点から3文字を続け
て描画しようとすると、各文字の描画原点は、順に(1
30,200)、(163,200)、(191,20
0)と更新される。
量であると言うことができる。図10を用いてこの描画
原点の移動量について説明する。例えば、プロポーショ
ナルフォントの場合、「あ」「い」「う」の3文字の送
り幅がそれぞれ、30、33、28であるとする。この
とき、(100,200)の描画原点から3文字を続け
て描画しようとすると、各文字の描画原点は、順に(1
30,200)、(163,200)、(191,20
0)と更新される。
【0005】従来、例えばWindows(マイクロソ
フト社の商標)を基本ソフトとするパーソナルコンピュ
ータの表示装置において、文字を表示させるために要求
されたフォントが存在しない場合は、当該表示装置が備
えているフォントを代替使用して表示させる方法が取ら
れている。また、プリンタ等の印字装置においても同様
に印字のために要求されたフォントの代わりに似たフォ
ントを使用して印刷させる方法がある。このとき、表示
や印刷のために要求されたフォント(以下、要求フォン
ト)と代替使用させるフォント(以下、代替フォント)
とで、フォント中の各文字の文字送り幅が異なることが
ある。特にアルファベットや記号はフォントのデザイン
によって文字幅が異なることが多い。また、近年では平
仮名やカタカナなどの和文文字も文字毎に文字の送り幅
が異なるフォントも多く存在する。
フト社の商標)を基本ソフトとするパーソナルコンピュ
ータの表示装置において、文字を表示させるために要求
されたフォントが存在しない場合は、当該表示装置が備
えているフォントを代替使用して表示させる方法が取ら
れている。また、プリンタ等の印字装置においても同様
に印字のために要求されたフォントの代わりに似たフォ
ントを使用して印刷させる方法がある。このとき、表示
や印刷のために要求されたフォント(以下、要求フォン
ト)と代替使用させるフォント(以下、代替フォント)
とで、フォント中の各文字の文字送り幅が異なることが
ある。特にアルファベットや記号はフォントのデザイン
によって文字幅が異なることが多い。また、近年では平
仮名やカタカナなどの和文文字も文字毎に文字の送り幅
が異なるフォントも多く存在する。
【0006】このため、要求フォントの代わりに代替フ
ォントを使用し、代替フォント固有の文字送り幅を用い
て単純に文字を並べてしまうと、要求フォントを使用す
ることを想定して作成された文書のレイアウトを崩して
しまうことになる。例えば、要求フォントを使用して1
行に40文字入っていたとしても、代替フォントを使用
すると1行に35文字しか入らないかもしれない。この
場合、行の端から文字がはみ出して読むことができなく
なってしまう。
ォントを使用し、代替フォント固有の文字送り幅を用い
て単純に文字を並べてしまうと、要求フォントを使用す
ることを想定して作成された文書のレイアウトを崩して
しまうことになる。例えば、要求フォントを使用して1
行に40文字入っていたとしても、代替フォントを使用
すると1行に35文字しか入らないかもしれない。この
場合、行の端から文字がはみ出して読むことができなく
なってしまう。
【0007】これを解決するために、文字形状(文字マ
スク)は代替フォントを使いつつ、送り幅は要求フォン
トの送り幅を使用することによってレイアウトを崩さな
いようにする方法が従来知られている。例えば、特開平
8−118731号公報には、文字の所定の位置同士を
一致させることにより送り幅を一致させる装置、方法が
開示されている。そして、文字の先頭同士を一致させる
方法では、要求フォントで表示した場合の原点と一致す
るように代替フォントの原点をあわせて各文字を配置し
ている。また、文字の中央同士をあわせる方法では、文
字の中央を一致させるように、代替フォントの各文字を
配置する装置、方法が開示されている。
スク)は代替フォントを使いつつ、送り幅は要求フォン
トの送り幅を使用することによってレイアウトを崩さな
いようにする方法が従来知られている。例えば、特開平
8−118731号公報には、文字の所定の位置同士を
一致させることにより送り幅を一致させる装置、方法が
開示されている。そして、文字の先頭同士を一致させる
方法では、要求フォントで表示した場合の原点と一致す
るように代替フォントの原点をあわせて各文字を配置し
ている。また、文字の中央同士をあわせる方法では、文
字の中央を一致させるように、代替フォントの各文字を
配置する装置、方法が開示されている。
【0008】また、特開平7−56909号公報には、
各文字の前後の余白を調整して、要求された文字と送り
幅をあわせる装置、方法が開示されている。
各文字の前後の余白を調整して、要求された文字と送り
幅をあわせる装置、方法が開示されている。
【0009】また、特開平7−56909号公報に記載
された技術を実現するためには、各文字の余白部と文字
部の大きさに関する情報が必要となる。これを自動的に
取得するために、特開平8−129373号公報では、
文字幅に関する情報をバウンディングボックス(文字の
最小外接矩形)から取得する装置、方法が開示されてい
る。
された技術を実現するためには、各文字の余白部と文字
部の大きさに関する情報が必要となる。これを自動的に
取得するために、特開平8−129373号公報では、
文字幅に関する情報をバウンディングボックス(文字の
最小外接矩形)から取得する装置、方法が開示されてい
る。
【0010】
【発明が解決しようとする課題】しかしながら、特開平
8−118731号公報に開示された方法では、文字の
送り幅のみを情報としているため、送り幅中でボディ
(実際に文字マスクがある領域)が左右に偏った文字が
あると、その文字は前後の文字と重なり合って不適切な
表示となってしまうという問題を有している。図11を
用いて、文字の送り幅のみをあわせたフォント置換例を
説明する。図11(a)は固定送り幅フォントの文字送
り幅とボディの関係を示している。図示の通り、「{」
や「}」のボデイは送り幅の端に寄っている。図11
(b)は、プロポーショナルフォントの送り幅とボディ
の関係を示している。各文字のボディサイズに送り幅を
あわせているので、送り幅内でのボディの偏りは生じな
い。
8−118731号公報に開示された方法では、文字の
送り幅のみを情報としているため、送り幅中でボディ
(実際に文字マスクがある領域)が左右に偏った文字が
あると、その文字は前後の文字と重なり合って不適切な
表示となってしまうという問題を有している。図11を
用いて、文字の送り幅のみをあわせたフォント置換例を
説明する。図11(a)は固定送り幅フォントの文字送
り幅とボディの関係を示している。図示の通り、「{」
や「}」のボデイは送り幅の端に寄っている。図11
(b)は、プロポーショナルフォントの送り幅とボディ
の関係を示している。各文字のボディサイズに送り幅を
あわせているので、送り幅内でのボディの偏りは生じな
い。
【0011】図11(c)は、プロポーショナルフォン
トを要求フォントとし、固定送り幅フォントを代替フォ
ントとしてフォントの置き換えを行った例を示してい
る。代替フォントとして用られる固定送り幅フォントで
は、文字によって送り幅内でボディが偏りを有するの
で、要求フォントであるプロポーショナルフォントの対
応する文字の送り幅にあわせて、単純に描画原点から各
文字を描画してしまうと、前後の文字が重なってしま
う。なお、図においては、文字の重なりを見やすくする
ために「あ」の文字を下方にずらして表示している。
トを要求フォントとし、固定送り幅フォントを代替フォ
ントとしてフォントの置き換えを行った例を示してい
る。代替フォントとして用られる固定送り幅フォントで
は、文字によって送り幅内でボディが偏りを有するの
で、要求フォントであるプロポーショナルフォントの対
応する文字の送り幅にあわせて、単純に描画原点から各
文字を描画してしまうと、前後の文字が重なってしま
う。なお、図においては、文字の重なりを見やすくする
ために「あ」の文字を下方にずらして表示している。
【0012】このような文字が重なってしまう不具合を
解決する方法として、特開平7−56909号公報に開
示された方法がある。しかし、この方法では各フォント
の各文字について前後の余白と文字部の大きさをデータ
として持たせる必要が生じ、保持すべきデータが膨大に
なってしまうという問題が生じる。さらに、この方法は
文字の配置のための情報を必要とするが、特開平8−1
29373号公報に開示された技術を併用したとしても
文字幅に開する情報しか取得することができず、現実に
実施することが困難であった。
解決する方法として、特開平7−56909号公報に開
示された方法がある。しかし、この方法では各フォント
の各文字について前後の余白と文字部の大きさをデータ
として持たせる必要が生じ、保持すべきデータが膨大に
なってしまうという問題が生じる。さらに、この方法は
文字の配置のための情報を必要とするが、特開平8−1
29373号公報に開示された技術を併用したとしても
文字幅に開する情報しか取得することができず、現実に
実施することが困難であった。
【0013】本発明の目的は、要求フォントを代替フォ
ントに置換して出力する際、僅かな追加データを用いる
だけで各文字を適切な位置に配置することができ、出力
される文字が前後の文字と重なり合うことがない文字処
理方法及び装置を提供することにある。
ントに置換して出力する際、僅かな追加データを用いる
だけで各文字を適切な位置に配置することができ、出力
される文字が前後の文字と重なり合うことがない文字処
理方法及び装置を提供することにある。
【0014】
【課題を解決するための手段】上記目的は、印字の際に
要求される要求フォントに対して、当該要求フォントに
替わる代替フォントを決定し、要求フォントの各文字の
送り幅を取得し、文字送り方向における代替フォントの
各文字の描画原点からボディ中点までの距離に基づく各
文字のボディセンター値を取得して、代替フォントの各
文字の描画開始位置を生成し、代替フォントの各文字を
描画開始位置から出力することを特徴とする文字処理方
法によって達成される。
要求される要求フォントに対して、当該要求フォントに
替わる代替フォントを決定し、要求フォントの各文字の
送り幅を取得し、文字送り方向における代替フォントの
各文字の描画原点からボディ中点までの距離に基づく各
文字のボディセンター値を取得して、代替フォントの各
文字の描画開始位置を生成し、代替フォントの各文字を
描画開始位置から出力することを特徴とする文字処理方
法によって達成される。
【0015】また、上記目的は、印字の際に要求される
要求フォントに対して、当該要求フォントに替わる代替
フォントを決定し、要求フォントの各文字の送り幅及び
文字配置属性を取得し、代替フォントの各文字の送り幅
を取得して、代替フォントの各文字の描画開始位置を生
成し、代替フォントの各文字を描画開始位置から出力す
ることを特徴とする文字処理方法によって達成される。
要求フォントに対して、当該要求フォントに替わる代替
フォントを決定し、要求フォントの各文字の送り幅及び
文字配置属性を取得し、代替フォントの各文字の送り幅
を取得して、代替フォントの各文字の描画開始位置を生
成し、代替フォントの各文字を描画開始位置から出力す
ることを特徴とする文字処理方法によって達成される。
【0016】そして、上記文字処理方法において、ボデ
ィセンター値あるいは文字配置属性は、代替フォントの
各文字の送り幅とバウンディングボックス(文字の最小
外接矩形)を取得して生成される。また、各文字のボデ
ィセンター値あるいは文字配置属性は、複数のフォント
間で共有されるようにしてもよい。また、要求フォント
の各文字の送り幅、及び各文字のボディセンター値ある
いは文字配置属性は、所定の範囲を有するデフォルト値
と異なるときのみ取得するようにしてもよい。また、各
文字の文字配置属性は、文字送り方向に対して「前
詰」、「中央置き」、「後詰」の属性を含んでいる。
ィセンター値あるいは文字配置属性は、代替フォントの
各文字の送り幅とバウンディングボックス(文字の最小
外接矩形)を取得して生成される。また、各文字のボデ
ィセンター値あるいは文字配置属性は、複数のフォント
間で共有されるようにしてもよい。また、要求フォント
の各文字の送り幅、及び各文字のボディセンター値ある
いは文字配置属性は、所定の範囲を有するデフォルト値
と異なるときのみ取得するようにしてもよい。また、各
文字の文字配置属性は、文字送り方向に対して「前
詰」、「中央置き」、「後詰」の属性を含んでいる。
【0017】さらに、上記目的は、印字の際に要求され
る要求フォントに対して、当該要求フォントに替わる代
替フォントを決定する代替フォント決定部と、要求フォ
ントの各文字の送り幅と、文字送り方向における代替フ
ォントの各文字の描画原点からボディ中点までの距離に
基づくボディセンター値とにより、代替フォントの各文
字の描画開始位置を調整する文字位置調整部と、代替フ
ォントの各文字を描画開始位置から出力する印字部とを
有することを特徴とする文字処理装置によって達成され
る。
る要求フォントに対して、当該要求フォントに替わる代
替フォントを決定する代替フォント決定部と、要求フォ
ントの各文字の送り幅と、文字送り方向における代替フ
ォントの各文字の描画原点からボディ中点までの距離に
基づくボディセンター値とにより、代替フォントの各文
字の描画開始位置を調整する文字位置調整部と、代替フ
ォントの各文字を描画開始位置から出力する印字部とを
有することを特徴とする文字処理装置によって達成され
る。
【0018】またさらに、上記目的は、印字の際に要求
される要求フォントに対して、当該要求フォントに替わ
る代替フォントを決定する代替フォント決定部と、要求
フォントの各文字の送り幅及び文字配置属性と、代替フ
ォントの各文字の送り幅とにより、代替フォントの各文
字の描画開始位置を調整する文字位置調整部と、代替フ
ォントの各文字を描画開始位置から出力する印字部とを
有することを特徴とする文字処理装置によって達成され
る。
される要求フォントに対して、当該要求フォントに替わ
る代替フォントを決定する代替フォント決定部と、要求
フォントの各文字の送り幅及び文字配置属性と、代替フ
ォントの各文字の送り幅とにより、代替フォントの各文
字の描画開始位置を調整する文字位置調整部と、代替フ
ォントの各文字を描画開始位置から出力する印字部とを
有することを特徴とする文字処理装置によって達成され
る。
【0019】このように、本発明による文字処理方法及
び装置によれば、要求フォントを代替フォントに置換し
て出力する際、代替フォントデータの文字送り幅とバウ
ンディングボックスから各文字のボディセンター値ある
いは文字配置属性という僅かな追加データを用いるだけ
で各文字を適切な位置に配置することができるようにな
り、出力される文字が前後の文字と重なり合うことがな
い文字処理方法及び装置を実現することができる。
び装置によれば、要求フォントを代替フォントに置換し
て出力する際、代替フォントデータの文字送り幅とバウ
ンディングボックスから各文字のボディセンター値ある
いは文字配置属性という僅かな追加データを用いるだけ
で各文字を適切な位置に配置することができるようにな
り、出力される文字が前後の文字と重なり合うことがな
い文字処理方法及び装置を実現することができる。
【0020】
【発明の実施の形態】本発明の第1の実施の形態による
文字処理方法及び装置を図1乃至図5を用いて説明す
る。本実施の形態では、フォント置換機能を有するプリ
ンタに文字処理装置を適用した例について説明する。な
お、本実施の形態及び以降の他の実施の形態において
は、文字の送り方向は表示領域の左から右に向かって順
に文字が表示されていくものとして説明する。
文字処理方法及び装置を図1乃至図5を用いて説明す
る。本実施の形態では、フォント置換機能を有するプリ
ンタに文字処理装置を適用した例について説明する。な
お、本実施の形態及び以降の他の実施の形態において
は、文字の送り方向は表示領域の左から右に向かって順
に文字が表示されていくものとして説明する。
【0021】図1は、フォント置換機能を有するプリン
タの構成図を示している。図1において、印刷要求を出
すクライアント110とプリンタ120が接続されてい
る。この接続は印刷指示のためのものであるので、実際
はフロッピーディスクなどの記録媒体を介しても構わな
い。
タの構成図を示している。図1において、印刷要求を出
すクライアント110とプリンタ120が接続されてい
る。この接続は印刷指示のためのものであるので、実際
はフロッピーディスクなどの記録媒体を介しても構わな
い。
【0022】クライアントからは少なくとも印刷すべき
フォントの種類を指示するフォント使用要求111と印
刷すべき文字種を指示する文字印刷要求112がプリン
タ120に送られてくる。
フォントの種類を指示するフォント使用要求111と印
刷すべき文字種を指示する文字印刷要求112がプリン
タ120に送られてくる。
【0023】クライアント110はフォント使用要求1
11をプリンタに発行する。ここで指示されたフォント
が要求フォント113である。このフォント使用要求1
11を受け取ったプリンタ120は、プリンタ内の代替
フォント決定部130にこの指示を渡す。代替フォント
決定部130は、フォントデータベース170を参照し
て、要求フォントが存在するかどうかを確認する。図1
の構成図ではフォントデータベース170はプリンタ内
に存在するが、これに限るものではない。例えば、クラ
イアント内にデータベースが存在しネットワークを通し
て参照することも可能である。
11をプリンタに発行する。ここで指示されたフォント
が要求フォント113である。このフォント使用要求1
11を受け取ったプリンタ120は、プリンタ内の代替
フォント決定部130にこの指示を渡す。代替フォント
決定部130は、フォントデータベース170を参照し
て、要求フォントが存在するかどうかを確認する。図1
の構成図ではフォントデータベース170はプリンタ内
に存在するが、これに限るものではない。例えば、クラ
イアント内にデータベースが存在しネットワークを通し
て参照することも可能である。
【0024】要求フォントが存在する場合はそれを使用
するのでフォントの置き換えは起こらない。要求された
フォントが存在しない場合は、プリンタが持っているフ
ォントの中から適切なフオントを選択する。ここで選択
されたフォントが代替フォント131である。次に実際
に印刷する文字を指定するため、クライアントは文字印
刷要求112を発行する。
するのでフォントの置き換えは起こらない。要求された
フォントが存在しない場合は、プリンタが持っているフ
ォントの中から適切なフオントを選択する。ここで選択
されたフォントが代替フォント131である。次に実際
に印刷する文字を指定するため、クライアントは文字印
刷要求112を発行する。
【0025】この文字印刷要求112は文字コードに関
する情報を含んでいる。文字印刷要求112を受け取っ
たプリンタは文字送り幅決定部140に文字コードを与
える。文字送り幅決定部140は要求フォント113の
文字送り幅情報をフォントデータベース170より取得
し、これを印刷時の文字送り幅とする。文字位置調整部
150は、後述の文字位置調整方法により文字送り幅内
に文字が適切に納まるように印字位置を調整する。この
調整された印字位置に従って文字印字部160は文字を
印刷して印字結果180を得る。
する情報を含んでいる。文字印刷要求112を受け取っ
たプリンタは文字送り幅決定部140に文字コードを与
える。文字送り幅決定部140は要求フォント113の
文字送り幅情報をフォントデータベース170より取得
し、これを印刷時の文字送り幅とする。文字位置調整部
150は、後述の文字位置調整方法により文字送り幅内
に文字が適切に納まるように印字位置を調整する。この
調整された印字位置に従って文字印字部160は文字を
印刷して印字結果180を得る。
【0026】次に、文字位置調整部150について図2
を用いてより詳細に説明する。文字位置調整部150
は、必要なデータに基づいて所定の文字位置調整法によ
り文字位置調整値を生成する文字位置調整値生成部15
0aと、生成された文字位置調整値150bに基づいて
描画原点を移動させる文字描画原点移動部150cとを
有している。
を用いてより詳細に説明する。文字位置調整部150
は、必要なデータに基づいて所定の文字位置調整法によ
り文字位置調整値を生成する文字位置調整値生成部15
0aと、生成された文字位置調整値150bに基づいて
描画原点を移動させる文字描画原点移動部150cとを
有している。
【0027】文字位置調整部150で用いる文字位置調
整方法として、文字配置属性法とボディセンター法とい
う2つの文字位置調整方法がある。ここで、簡単にこれ
らの文字位置調整方法を説明すると、文字配置属性法と
は、各文字の配置属性(右詰、左詰、中央置き)と、要
求フォントの文字送り幅及び代替フォントの文字送り幅
の情報を用いて、フォント置換の際の各文字の位置調整
値を取得する方法である。一方、ボディセンター法と
は、各文字のボディの中央までの距離のデータと要求フ
ォントの文字送り幅の情報を用いて、フォント置換の際
の各文字の位置調整値を取得する方法である。
整方法として、文字配置属性法とボディセンター法とい
う2つの文字位置調整方法がある。ここで、簡単にこれ
らの文字位置調整方法を説明すると、文字配置属性法と
は、各文字の配置属性(右詰、左詰、中央置き)と、要
求フォントの文字送り幅及び代替フォントの文字送り幅
の情報を用いて、フォント置換の際の各文字の位置調整
値を取得する方法である。一方、ボディセンター法と
は、各文字のボディの中央までの距離のデータと要求フ
ォントの文字送り幅の情報を用いて、フォント置換の際
の各文字の位置調整値を取得する方法である。
【0028】本実施の形態における文字位置調整部15
0では、文字位置調整方法として文字配置属性法を採用
したので、以下にこの方法を詳細に説明する。なお、本
実施の形態においてボディセンター法を採用することは
もちろん問題ないが、説明の煩雑さを避けるため、ボデ
ィセンター法については、第2の実施の形態において説
明することとする。
0では、文字位置調整方法として文字配置属性法を採用
したので、以下にこの方法を詳細に説明する。なお、本
実施の形態においてボディセンター法を採用することは
もちろん問題ないが、説明の煩雑さを避けるため、ボデ
ィセンター法については、第2の実施の形態において説
明することとする。
【0029】さて、文字位置調整部150の文字位置調
整値生成部150aでは、文字配置属性法を用いるた
め、次の情報が使用される。
整値生成部150aでは、文字配置属性法を用いるた
め、次の情報が使用される。
【0030】(1)要求フォントの文字の送り幅(以
下、「要求文字送り幅」という)、(2)要求フォント
の文字配置属性(以下、「文字配置属性」という)、
(3)代替フォントの文字の送り幅(以下、「代替文字
送り幅」という)。
下、「要求文字送り幅」という)、(2)要求フォント
の文字配置属性(以下、「文字配置属性」という)、
(3)代替フォントの文字の送り幅(以下、「代替文字
送り幅」という)。
【0031】フォントを置き換える場合、要求フォント
のフォントデータ自身はプリンタ120内に存在しない
ため、「要求文字送り幅」のデータは文字位置調整部1
50からアクセスできる場所に格納されているものとす
る。
のフォントデータ自身はプリンタ120内に存在しない
ため、「要求文字送り幅」のデータは文字位置調整部1
50からアクセスできる場所に格納されているものとす
る。
【0032】代替フォントはプリンタ120が持ってい
るフォントであるため、フォント自身から「代替文字送
り幅」を取得することが可能である。また、「要求文字
送り幅」データと同様に文字位置調整部150からアク
セスできる場所に、「代替文字送り幅」データを格納し
ておくことも可能である。
るフォントであるため、フォント自身から「代替文字送
り幅」を取得することが可能である。また、「要求文字
送り幅」データと同様に文字位置調整部150からアク
セスできる場所に、「代替文字送り幅」データを格納し
ておくことも可能である。
【0033】要求フォントの「文字配置属性」には、少
なくとも文字毎に「右詰」、「左詰」、「中央置き」の
3属性がある。一般に、「文字配置属性」はフォント間
で共通であるので、文字毎の配置属性を全フォントで共
通とすることもできる。こうすると、「文字配置属性」
のデータ量を削減することができるようになる。また、
殆どの文字の「文字配置属性」は「中央置き」であるか
ら、「中央置き」属性以外の文字についてのみ、当該文
字の文字コードと対応付けて当該「文字配置属性」(す
なわち、「右詰」又は「左詰」のいずれか)を記録する
ようにしてもよい。このようにすれば、さらに「文字配
置属性」のデータ量を削減することができるようにな
る。
なくとも文字毎に「右詰」、「左詰」、「中央置き」の
3属性がある。一般に、「文字配置属性」はフォント間
で共通であるので、文字毎の配置属性を全フォントで共
通とすることもできる。こうすると、「文字配置属性」
のデータ量を削減することができるようになる。また、
殆どの文字の「文字配置属性」は「中央置き」であるか
ら、「中央置き」属性以外の文字についてのみ、当該文
字の文字コードと対応付けて当該「文字配置属性」(す
なわち、「右詰」又は「左詰」のいずれか)を記録する
ようにしてもよい。このようにすれば、さらに「文字配
置属性」のデータ量を削減することができるようにな
る。
【0034】このような「文字配置属性」に従って、以
下に示す式から得られる文字位置調整値150bだけ文
字送り方向に文字描画原点をずらすようにするのが、文
字配置属性法による文字位置調整方法である。
下に示す式から得られる文字位置調整値150bだけ文
字送り方向に文字描画原点をずらすようにするのが、文
字配置属性法による文字位置調整方法である。
【0035】文字配置属性が「右詰」である場合、 文字位置調整値150b=要求文字送り幅−代替文字送り幅・・・(式1)
【0036】文字配置属性が「左詰」である場合、 文字位置調整値150b=0・・・(式2)
【0037】文字配置属性が「中央置き」である場合、 文字位置調整値150b=(要求文字送り幅−代替文字送り幅)/2 ・・・(式3)
【0038】次に、図3を用いてフォント置換プリンタ
での動作フローについて説明する。まず、クライアント
110から入力された指示(ステップS310)が印刷
終了の指示であるか否かが判断され(ステップS32
0)、印刷終了の指示であれば用紙を排出して印刷を終
了する(ステップS360)。印刷終了指示でなけれ
ば、フォント指定の指示であるか否かが判断される(ス
テップS330)。フォント指定の指示である場合、ス
テップS340で、指示されたフォントが存在するかど
うかを確認する。フォントが存在する場合はそのフォン
トを使用するように設定し(ステップS341)、次の
指示を待つためステップS310に戻る。この場合、以
降の印字ではフォント置換は行わない。
での動作フローについて説明する。まず、クライアント
110から入力された指示(ステップS310)が印刷
終了の指示であるか否かが判断され(ステップS32
0)、印刷終了の指示であれば用紙を排出して印刷を終
了する(ステップS360)。印刷終了指示でなけれ
ば、フォント指定の指示であるか否かが判断される(ス
テップS330)。フォント指定の指示である場合、ス
テップS340で、指示されたフォントが存在するかど
うかを確認する。フォントが存在する場合はそのフォン
トを使用するように設定し(ステップS341)、次の
指示を待つためステップS310に戻る。この場合、以
降の印字ではフォント置換は行わない。
【0039】フォントがプリンタ120に存在しない場
合、フォントデータベース170のデータを使用して、
要求フォント113を代替して印字するための代替フォ
ント131を選択し(ステップS342)、次の指示を
待つためステップS310に戻る。これにより、以降の
印字ではフォント置換を行う。
合、フォントデータベース170のデータを使用して、
要求フォント113を代替して印字するための代替フォ
ント131を選択し(ステップS342)、次の指示を
待つためステップS310に戻る。これにより、以降の
印字ではフォント置換を行う。
【0040】ステップS330でフォント指定指示でな
い場合は、文字印字指示であるのでステップS350に
進み、ステップS351でフォント置換を行うかどうか
を確認する。ステップS330でのフォント指定指示の
結果、フォント置換を行わない場合には、ステップS3
55で要求フォントを使用して印字する。印字したら次
の指示を待つためステップS310に戻る。
い場合は、文字印字指示であるのでステップS350に
進み、ステップS351でフォント置換を行うかどうか
を確認する。ステップS330でのフォント指定指示の
結果、フォント置換を行わない場合には、ステップS3
55で要求フォントを使用して印字する。印字したら次
の指示を待つためステップS310に戻る。
【0041】フォント置換を行う場合は、ステップS3
52で文字位置調整部150から文字位置調整値150
bを取得する。次いでステップS353で、現在の文字
描画開始位置(原点)に文字位置調整値150bを加え
て、文字の描画位置を調整して指定の文字を描画する。
次に、現在の文字描画開始位置に要求文字送り幅を加え
て、次の文字描画開始位置とする(ステップS35
4)。次の指示を待つためステップS310に戻る。
52で文字位置調整部150から文字位置調整値150
bを取得する。次いでステップS353で、現在の文字
描画開始位置(原点)に文字位置調整値150bを加え
て、文字の描画位置を調整して指定の文字を描画する。
次に、現在の文字描画開始位置に要求文字送り幅を加え
て、次の文字描画開始位置とする(ステップS35
4)。次の指示を待つためステップS310に戻る。
【0042】次に、本実施の形態の文字位置調整部15
0における文字配置属性法によるフォント置換処理の具
体的な手順を図4を用いて説明する。図4は文字位置調
整部150の動作フローを示している。例として、座標
(100,200)を始点とし、「{」、「あ」、
「亜」、「}」の4文字を連続して描画するものとす
る。このとき、表1に示したフォントが要求フォントで
あり、表2に示したフォントが代替フォントであるとす
る。
0における文字配置属性法によるフォント置換処理の具
体的な手順を図4を用いて説明する。図4は文字位置調
整部150の動作フローを示している。例として、座標
(100,200)を始点とし、「{」、「あ」、
「亜」、「}」の4文字を連続して描画するものとす
る。このとき、表1に示したフォントが要求フォントで
あり、表2に示したフォントが代替フォントであるとす
る。
【0043】
【表1】
【0044】
【表2】
【0045】この表1及び表2の情報は文字位置調整部
150からアクセスできる領域に格納されている。な
お、本実施の形態では文字配置属性法を用いるので、表
2中のボディセンター値は使用しないのでデータとして
は無意味である。また、文字サイズと送り幅には強い相
関関係があり、多くは比例関係にある。このため、送り
幅やボディセンター値をあるサイズのものだけ記憶さ
せ、他のサイズはその値から導出するようにしてもよ
い。
150からアクセスできる領域に格納されている。な
お、本実施の形態では文字配置属性法を用いるので、表
2中のボディセンター値は使用しないのでデータとして
は無意味である。また、文字サイズと送り幅には強い相
関関係があり、多くは比例関係にある。このため、送り
幅やボディセンター値をあるサイズのものだけ記憶さ
せ、他のサイズはその値から導出するようにしてもよ
い。
【0046】以下、描画順序に従って文字描画開始位置
の決定と、次の文字描画開始位置の更新について説明す
る。まず、「{」の処理について説明する。ステップS
401で、「{」の文字の要求文字送り幅が取得され
る。表1に示すように「{」の要求文字送り幅は50で
ある。次に、ステップS402で、「{」の代替文字送
り幅が取得される。表2に示すように、「{」の代替文
字送り幅は100である。ステップS403で要求文字
送り幅と代替文字送り幅とが等しいかどうかが判断さ
れ、この場合、両者の送り幅は等しくないので、ステッ
プS405において、「文字配置属性」を取得する。ス
テップS406に移行して「{」の「文字配置属性」が
「右詰」であることが分かるのでステップS409にお
いて、上記式(1)を用いて文字位置調整値が求められ
る。
の決定と、次の文字描画開始位置の更新について説明す
る。まず、「{」の処理について説明する。ステップS
401で、「{」の文字の要求文字送り幅が取得され
る。表1に示すように「{」の要求文字送り幅は50で
ある。次に、ステップS402で、「{」の代替文字送
り幅が取得される。表2に示すように、「{」の代替文
字送り幅は100である。ステップS403で要求文字
送り幅と代替文字送り幅とが等しいかどうかが判断さ
れ、この場合、両者の送り幅は等しくないので、ステッ
プS405において、「文字配置属性」を取得する。ス
テップS406に移行して「{」の「文字配置属性」が
「右詰」であることが分かるのでステップS409にお
いて、上記式(1)を用いて文字位置調整値が求められ
る。
【0047】式(1)は、 文字位置調整値=要求文字送り幅−代替文字送り幅 であるから、この式に、「要求文字送り幅」=50、
「代替文字送り幅」=100を代入して、文字位置調整
値=−50を得る。ステップS410で、得られた文字
位置調整値が出力され、現在の文字描画開始位置(10
0,200)に対して、文字位置調整値−50を加えた
座標(50,200)から代替フォントの「{」が印字
される。また、文字描画開始位置は、「要求文字送り
幅」を加えて、座標(150,200)に更新される
(図3のステップS353、354参照)。
「代替文字送り幅」=100を代入して、文字位置調整
値=−50を得る。ステップS410で、得られた文字
位置調整値が出力され、現在の文字描画開始位置(10
0,200)に対して、文字位置調整値−50を加えた
座標(50,200)から代替フォントの「{」が印字
される。また、文字描画開始位置は、「要求文字送り
幅」を加えて、座標(150,200)に更新される
(図3のステップS353、354参照)。
【0048】次に、「あ」の処理に移行する。ステップ
S401で、「あ」の文字の要求文字送り幅が取得され
る。表1に示すように「あ」の要求文字送り幅は90で
ある。次に、ステップS402で、「あ」の代替文字送
り幅が取得される。表2に示すように、「あ」の代替文
字送り幅は100である。ステップS403で要求文字
送り幅と代替文字送り幅とが等しいかどうかが判断さ
れ、この場合、両者の送り幅は等しくないので、ステッ
プS405において、「文字配置属性」を取得する。ス
テップS406に移行して「あ」の「文字配置属性」が
「中央置き」であることが分かるのでステップS407
において、上記式(3)を用いて文字位置調整値が求め
られる。
S401で、「あ」の文字の要求文字送り幅が取得され
る。表1に示すように「あ」の要求文字送り幅は90で
ある。次に、ステップS402で、「あ」の代替文字送
り幅が取得される。表2に示すように、「あ」の代替文
字送り幅は100である。ステップS403で要求文字
送り幅と代替文字送り幅とが等しいかどうかが判断さ
れ、この場合、両者の送り幅は等しくないので、ステッ
プS405において、「文字配置属性」を取得する。ス
テップS406に移行して「あ」の「文字配置属性」が
「中央置き」であることが分かるのでステップS407
において、上記式(3)を用いて文字位置調整値が求め
られる。
【0049】式(3)は、 文字位置調整値=(要求文字送り幅−代替文字送り幅)
/2 であるから、この式に、「要求文字送り幅」=90、
「代替文字送り幅」=100を代入して、文字位置調整
値=−5を得る。ステップS410で、得られた文字位
置調整値が出力され、現在の文字描画開始位置(15
0,200)に対して、文字位置調整値−5を加えた座
標(145,200)から代替フォントの「あ」が印字
される。また、文字描画開始位置は、「要求文字送り
幅」を加えて、座標(240,200)に更新される。
/2 であるから、この式に、「要求文字送り幅」=90、
「代替文字送り幅」=100を代入して、文字位置調整
値=−5を得る。ステップS410で、得られた文字位
置調整値が出力され、現在の文字描画開始位置(15
0,200)に対して、文字位置調整値−5を加えた座
標(145,200)から代替フォントの「あ」が印字
される。また、文字描画開始位置は、「要求文字送り
幅」を加えて、座標(240,200)に更新される。
【0050】次に、「亜」の処理に移行する。ステップ
S401で、「亜」の文字の要求文字送り幅が取得され
る。表1に示すように「亜」の要求文字送り幅は100
である。次に、ステップS402で、「亜」の代替文字
送り幅が取得される。表2に示すように、「亜」の代替
文字送り幅は100である。ステップS403で要求文
字送り幅と代替文字送り幅とが等しいかどうかが判断さ
れ、この場合、両者の送り幅は等しくなるので、ステッ
プS404に移行し、文字位置調整値=0とする。ステ
ップS410で、得られた文字位置調整値が出力され、
現在の文字描画開始位置(240,200)に対して、
文字位置調整値0を加えた座標(240,200)から
代替フォントの「亜」が印字される。また、文字描画開
始位置は、「要求文字送り幅」を加えて、座標(34
0,200)に更新される。
S401で、「亜」の文字の要求文字送り幅が取得され
る。表1に示すように「亜」の要求文字送り幅は100
である。次に、ステップS402で、「亜」の代替文字
送り幅が取得される。表2に示すように、「亜」の代替
文字送り幅は100である。ステップS403で要求文
字送り幅と代替文字送り幅とが等しいかどうかが判断さ
れ、この場合、両者の送り幅は等しくなるので、ステッ
プS404に移行し、文字位置調整値=0とする。ステ
ップS410で、得られた文字位置調整値が出力され、
現在の文字描画開始位置(240,200)に対して、
文字位置調整値0を加えた座標(240,200)から
代替フォントの「亜」が印字される。また、文字描画開
始位置は、「要求文字送り幅」を加えて、座標(34
0,200)に更新される。
【0051】次に、「}」の処理について説明する。ス
テップS401で、「}」の文字の要求文字送り幅が取
得される。表1に示すように「}」の要求文字送り幅は
50である。次に、ステップS402で、「}」の代替
文字送り幅が取得される。表2に示すように、「}」の
代替文字送り幅は100である。ステップS403で要
求文字送り幅と代替文字送り幅とが等しいかどうかが判
断され、この場合、両者の送り幅は等しくないので、ス
テップS405において、「文字配置属性」を取得す
る。ステップS406に移行して「}」の「文字配置属
性」が「左詰」であることが分かるのでステップS40
8において、上記式(2)を用いて文字位置調整値が求
められる。式(2)は、文字位置調整値=0である。ス
テップS410で、得られた文字位置調整値が出力さ
れ、現在の文字描画開始位置(340,200)に対し
て、文字位置調整値0を加えた座標(340,200)
から代替フォントの「}」が印字される。また、文字描
画開始位置は、「要求文字送り幅」を加えて、座標(3
90,200)に更新される。
テップS401で、「}」の文字の要求文字送り幅が取
得される。表1に示すように「}」の要求文字送り幅は
50である。次に、ステップS402で、「}」の代替
文字送り幅が取得される。表2に示すように、「}」の
代替文字送り幅は100である。ステップS403で要
求文字送り幅と代替文字送り幅とが等しいかどうかが判
断され、この場合、両者の送り幅は等しくないので、ス
テップS405において、「文字配置属性」を取得す
る。ステップS406に移行して「}」の「文字配置属
性」が「左詰」であることが分かるのでステップS40
8において、上記式(2)を用いて文字位置調整値が求
められる。式(2)は、文字位置調整値=0である。ス
テップS410で、得られた文字位置調整値が出力さ
れ、現在の文字描画開始位置(340,200)に対し
て、文字位置調整値0を加えた座標(340,200)
から代替フォントの「}」が印字される。また、文字描
画開始位置は、「要求文字送り幅」を加えて、座標(3
90,200)に更新される。
【0052】次に、「文字配置属性」の取得手順につい
て説明する。図5は「文字配置属性」を取得する際の文
字処理装置の動作フローである。「{」、「あ」、
「亜」、「}」の4文字の「文字配置属性」を取得する
手順を示す。表3はこれらの文字の代替フォントの送り
幅とバウンディングボックス(Bbox)を示してい
る。これらの値は、文字位置調整部150からアクセス
可能な領域に格納されている。また、表3におけるボデ
ィセンター値と配置属性は、送り幅とバウンディングボ
ックスに基づいて取得されたものである。
て説明する。図5は「文字配置属性」を取得する際の文
字処理装置の動作フローである。「{」、「あ」、
「亜」、「}」の4文字の「文字配置属性」を取得する
手順を示す。表3はこれらの文字の代替フォントの送り
幅とバウンディングボックス(Bbox)を示してい
る。これらの値は、文字位置調整部150からアクセス
可能な領域に格納されている。また、表3におけるボデ
ィセンター値と配置属性は、送り幅とバウンディングボ
ックスに基づいて取得されたものである。
【0053】
【表3】
【0054】まず、「{」の処理について説明する。ス
テップS501で、「文字配置属性」を調査すべき文字
があるか否かが判断され、文字がなければステップS5
11で「文字配置属性」のフローを終了する。ステップ
S502で「{]の文字送り幅100を取得する(表3
参照)。次に、ステップS503でバウンディングボッ
クス(55,0)−(95,100)を取得する(表3
参照)。次に、ステップS504でバウンディングボッ
クスのX方向の中点の座標値(すなわち、ボディセンタ
ー値)75を計算により取得する。
テップS501で、「文字配置属性」を調査すべき文字
があるか否かが判断され、文字がなければステップS5
11で「文字配置属性」のフローを終了する。ステップ
S502で「{]の文字送り幅100を取得する(表3
参照)。次に、ステップS503でバウンディングボッ
クス(55,0)−(95,100)を取得する(表3
参照)。次に、ステップS504でバウンディングボッ
クスのX方向の中点の座標値(すなわち、ボディセンタ
ー値)75を計算により取得する。
【0055】ステップS505において、ステップS5
04で求めたバウンディングボックスのX方向の中点の
座標値が、文字送り幅の1/3より小さいかどうかが判
断される。ステップS504で取得されたバウンディン
グボックスのX方向の中点の座標値75は、ステップS
502で取得された「{]の文字送り幅100の1/3
より大きいので「左詰」属性ではないと判断される。
04で求めたバウンディングボックスのX方向の中点の
座標値が、文字送り幅の1/3より小さいかどうかが判
断される。ステップS504で取得されたバウンディン
グボックスのX方向の中点の座標値75は、ステップS
502で取得された「{]の文字送り幅100の1/3
より大きいので「左詰」属性ではないと判断される。
【0056】次に、ステップS506において、ステッ
プS504で求めたバウンディングボックスのX方向の
中点の座標値が、文字送り幅の2/3より小さいかどう
かが判断される。ステップS504で取得されたバウン
ディングボックスのX方向の中点の座標値75は、ステ
ップS502で取得された「{]の文字送り幅100の
2/3より大きいので「右詰」属性であると判断される
(ステップS508)。得られた「文字配置属性」=
「右詰」は、文字位置調整部150がアクセスできる領
域に格納される(ステップS510)。
プS504で求めたバウンディングボックスのX方向の
中点の座標値が、文字送り幅の2/3より小さいかどう
かが判断される。ステップS504で取得されたバウン
ディングボックスのX方向の中点の座標値75は、ステ
ップS502で取得された「{]の文字送り幅100の
2/3より大きいので「右詰」属性であると判断される
(ステップS508)。得られた「文字配置属性」=
「右詰」は、文字位置調整部150がアクセスできる領
域に格納される(ステップS510)。
【0057】次に、「あ」の処理について説明する。ス
テップS501で、「文字配置属性」を調査すべき文字
があるか否かが判断され、文字がなければステップS5
11で「文字配置属性」のフローを終了する。ステップ
S502で「あ」の文字送り幅100を取得する(表3
参照)。次に、ステップS503でバウンディングボッ
クス(10,0)−(90,100)を取得する(表3
参照)。次に、ステップS504でバウンディングボッ
クスのX方向の中点の座標値50を計算により取得す
る。
テップS501で、「文字配置属性」を調査すべき文字
があるか否かが判断され、文字がなければステップS5
11で「文字配置属性」のフローを終了する。ステップ
S502で「あ」の文字送り幅100を取得する(表3
参照)。次に、ステップS503でバウンディングボッ
クス(10,0)−(90,100)を取得する(表3
参照)。次に、ステップS504でバウンディングボッ
クスのX方向の中点の座標値50を計算により取得す
る。
【0058】ステップS505において、ステップS5
04で求めたバウンディングボックスのX方向の中点の
座標値が、文字送り幅の1/3より小さいかどうかが判
断される。ステップS504で取得されたバウンディン
グボックスのX方向の中点の座標値50は、ステップS
502で取得された「あ」の文字送り幅100の1/3
より大きいので「左詰」属性ではないと判断される。
04で求めたバウンディングボックスのX方向の中点の
座標値が、文字送り幅の1/3より小さいかどうかが判
断される。ステップS504で取得されたバウンディン
グボックスのX方向の中点の座標値50は、ステップS
502で取得された「あ」の文字送り幅100の1/3
より大きいので「左詰」属性ではないと判断される。
【0059】次に、ステップS506において、ステッ
プS504で求めたバウンディングボックスのX方向の
中点の座標値が、文字送り幅の2/3より小さいかどう
かが判断される。ステップS504で取得されたバウン
ディングボックスのX方向の中点の座標値50は、ステ
ップS502で取得された「あ」の文字送り幅100の
2/3より小さいので「中央置き」属性であると判断さ
れる(ステップS509)。得られた「文字配置属性」
=「中央置き」は、ステップS510での属性の記録が
されることなく、フローは次の文字の配置属性取得に進
む。
プS504で求めたバウンディングボックスのX方向の
中点の座標値が、文字送り幅の2/3より小さいかどう
かが判断される。ステップS504で取得されたバウン
ディングボックスのX方向の中点の座標値50は、ステ
ップS502で取得された「あ」の文字送り幅100の
2/3より小さいので「中央置き」属性であると判断さ
れる(ステップS509)。得られた「文字配置属性」
=「中央置き」は、ステップS510での属性の記録が
されることなく、フローは次の文字の配置属性取得に進
む。
【0060】「中央置き」の配置属性を記録しないの
は、殆どの文字の「文字配置属性」は「中央置き」であ
るので、「中央置き」属性以外の文字についてのみ、当
該文字の文字コードと対応付けて「文字配置属性」(す
なわち、「右詰」又は「左詰」のいずれか)を記録する
ようにして、「文字配置属性」のデータ量を削減するこ
とを意図しているからである。
は、殆どの文字の「文字配置属性」は「中央置き」であ
るので、「中央置き」属性以外の文字についてのみ、当
該文字の文字コードと対応付けて「文字配置属性」(す
なわち、「右詰」又は「左詰」のいずれか)を記録する
ようにして、「文字配置属性」のデータ量を削減するこ
とを意図しているからである。
【0061】次に、「亜」の処理について説明する。ス
テップS501で、「文字配置属性」を調査すべき文字
があるか否かが判断され、文字がなければステップS5
11で「文字配置属性」のフローを終了する。ステップ
S502で「亜」の文字送り幅100を取得する(表3
参照)。次に、ステップS503でバウンディングボッ
クス(5,0)−(95,100)を取得する(表3参
照)。次に、ステップS504でバウンディングボック
スのX方向の中点の座標値50を計算により取得する。
テップS501で、「文字配置属性」を調査すべき文字
があるか否かが判断され、文字がなければステップS5
11で「文字配置属性」のフローを終了する。ステップ
S502で「亜」の文字送り幅100を取得する(表3
参照)。次に、ステップS503でバウンディングボッ
クス(5,0)−(95,100)を取得する(表3参
照)。次に、ステップS504でバウンディングボック
スのX方向の中点の座標値50を計算により取得する。
【0062】ステップS505において、ステップS5
04で求めたバウンディングボックスのX方向の中点の
座標値が、文字送り幅の1/3より小さいかどうかが判
断される。ステップS504で取得されたバウンディン
グボックスのX方向の中点の座標値50は、ステップS
502で取得された「亜」の文字送り幅100の1/3
より大きいので「左詰」属性ではないと判断される。
04で求めたバウンディングボックスのX方向の中点の
座標値が、文字送り幅の1/3より小さいかどうかが判
断される。ステップS504で取得されたバウンディン
グボックスのX方向の中点の座標値50は、ステップS
502で取得された「亜」の文字送り幅100の1/3
より大きいので「左詰」属性ではないと判断される。
【0063】次に、ステップS506において、ステッ
プS504で求めたバウンディングボックスのX方向の
中点の座標値が、文字送り幅の2/3より小さいかどう
かが判断される。ステップS504で取得されたバウン
ディングボックスのX方向の中点の座標値50は、ステ
ップS502で取得された「亜」の文字送り幅100の
2/3より小さいので「中央置き」属性であると判断さ
れる(ステップS509)。得られた「文字配置属性」
が「中央置き」であるので、ステップS510での属性
の記録がされることなく、フローは次の文字の配置属性
取得に進む。
プS504で求めたバウンディングボックスのX方向の
中点の座標値が、文字送り幅の2/3より小さいかどう
かが判断される。ステップS504で取得されたバウン
ディングボックスのX方向の中点の座標値50は、ステ
ップS502で取得された「亜」の文字送り幅100の
2/3より小さいので「中央置き」属性であると判断さ
れる(ステップS509)。得られた「文字配置属性」
が「中央置き」であるので、ステップS510での属性
の記録がされることなく、フローは次の文字の配置属性
取得に進む。
【0064】次に、「}」の処理について説明する。ス
テップS501で、「文字配置属性」を調査すべき文字
があるか否かが判断され、文字がなければステップS5
11で「文字配置属性」のフローを終了する。ステップ
S502で「}」の文字送り幅100を取得する(表3
参照)。次に、ステップS503でバウンディングボッ
クス(5,0)−(45,100)を取得する(表3参
照)。次に、ステップS504でバウンディングボック
スのX方向の中点の座標値25を計算により取得する。
テップS501で、「文字配置属性」を調査すべき文字
があるか否かが判断され、文字がなければステップS5
11で「文字配置属性」のフローを終了する。ステップ
S502で「}」の文字送り幅100を取得する(表3
参照)。次に、ステップS503でバウンディングボッ
クス(5,0)−(45,100)を取得する(表3参
照)。次に、ステップS504でバウンディングボック
スのX方向の中点の座標値25を計算により取得する。
【0065】ステップS505において、ステップS5
04で求めたバウンディングボックスのX方向の中点の
座標値が、文字送り幅の1/3より小さいかどうかが判
断される。ステップS504で取得されたバウンディン
グボックスのX方向の中点の座標値25は、ステップS
502で取得された「}」の文字送り幅100の1/3
より小さいので「左詰」属性であると判断される。得ら
れた「文字配置属性」=「左詰」は、文字位置調整部1
50がアクセスできる領域に格納される(ステップS5
10)。
04で求めたバウンディングボックスのX方向の中点の
座標値が、文字送り幅の1/3より小さいかどうかが判
断される。ステップS504で取得されたバウンディン
グボックスのX方向の中点の座標値25は、ステップS
502で取得された「}」の文字送り幅100の1/3
より小さいので「左詰」属性であると判断される。得ら
れた「文字配置属性」=「左詰」は、文字位置調整部1
50がアクセスできる領域に格納される(ステップS5
10)。
【0066】以上説明したように本実施の形態による文
字処理装置及びその方法によれば、要求フォントを代替
フォントに置換して出力する際、表3に示したような代
替フォントデータの文字送り幅とバウンディングボック
スから各文字の「文字配置属性」を取得し、それらのう
ち、「左詰」及び「右詰」属性だけをその文字コードと
対応させて記憶させるだけであるから、僅かな追加デー
タを用いるだけで各文字を適切な位置に配置することが
できるようになる。そして、文字位置調整部150で上
述の「文字配置属性法」を用いたことにより、出力され
る文字が前後の文字と重なり合うことがない文字処理方
法及び装置を実現することができる。
字処理装置及びその方法によれば、要求フォントを代替
フォントに置換して出力する際、表3に示したような代
替フォントデータの文字送り幅とバウンディングボック
スから各文字の「文字配置属性」を取得し、それらのう
ち、「左詰」及び「右詰」属性だけをその文字コードと
対応させて記憶させるだけであるから、僅かな追加デー
タを用いるだけで各文字を適切な位置に配置することが
できるようになる。そして、文字位置調整部150で上
述の「文字配置属性法」を用いたことにより、出力され
る文字が前後の文字と重なり合うことがない文字処理方
法及び装置を実現することができる。
【0067】次に、本発明の第2の実施の形態による文
字処理方法及び装置を図6乃至図8を用いて説明する。
本実施の形態では、フォント置換機能を有するプリンタ
ドライバに文字処理装置を適用した例について説明す
る。図6は、フォント置換機能を持ったプリンタドライ
バを使用してプリンタに印字する場合の構成図である。
クライアント600内の印刷指示部610から印刷すべ
きフォントをフォント使用要求611によって、プリン
タドライバ620に指示する。ここで指示されたフォン
トが要求フォント613である。
字処理方法及び装置を図6乃至図8を用いて説明する。
本実施の形態では、フォント置換機能を有するプリンタ
ドライバに文字処理装置を適用した例について説明す
る。図6は、フォント置換機能を持ったプリンタドライ
バを使用してプリンタに印字する場合の構成図である。
クライアント600内の印刷指示部610から印刷すべ
きフォントをフォント使用要求611によって、プリン
タドライバ620に指示する。ここで指示されたフォン
トが要求フォント613である。
【0068】プリンタドライバ620はフォントデータ
ベース670を参照して、印刷しようとしているプリン
タ660がフォントを持っているかどうかを確認する。
図6ではフォントデータベース670はクライアント6
00内にあるが、これに限るものではない。例えば、プ
リンタ660内にあるデータベースをネットワークを通
じて参照することも可能である。ここで、プリンタ66
0がフォントを持っている場合、要求フォント613を
そのまま利用するためフォントの置き換えの必要はな
い。ここで、要求フォント613がプリンタ660に存
在しない場合、フォントデータベース670より適切な
フォントを選択する。これが代替フォント631であ
る。
ベース670を参照して、印刷しようとしているプリン
タ660がフォントを持っているかどうかを確認する。
図6ではフォントデータベース670はクライアント6
00内にあるが、これに限るものではない。例えば、プ
リンタ660内にあるデータベースをネットワークを通
じて参照することも可能である。ここで、プリンタ66
0がフォントを持っている場合、要求フォント613を
そのまま利用するためフォントの置き換えの必要はな
い。ここで、要求フォント613がプリンタ660に存
在しない場合、フォントデータベース670より適切な
フォントを選択する。これが代替フォント631であ
る。
【0069】次に、印刷すべき文字を指定するため、ク
ライアント600の印刷指示部610は文字印刷要求6
12をプリンタドライバ620に指示する。この文字印
刷要求612は文字コードに関する情報を含んでいる。
文字印刷要求612を受け取ったプリンタドライバ62
0は文字送り幅決定部640に文字コードを与える。文
字送り幅決定部640は要求フォント613の送り幅情
報をフォントデータベース670より取得し、これを印
刷時の文字送り幅とする。
ライアント600の印刷指示部610は文字印刷要求6
12をプリンタドライバ620に指示する。この文字印
刷要求612は文字コードに関する情報を含んでいる。
文字印刷要求612を受け取ったプリンタドライバ62
0は文字送り幅決定部640に文字コードを与える。文
字送り幅決定部640は要求フォント613の送り幅情
報をフォントデータベース670より取得し、これを印
刷時の文字送り幅とする。
【0070】文字位置調整部650は、後述の文字位置
調整方法により文字送り幅内に文字が適切に印字される
ように、印字立置を調整する。プリンタドライバ620
は上記の代替フォント631を使うことを指示する代替
フォント使用要求632と文字印刷要求651、文字位
置調整指示652を含んだ印刷指示をプリンタ660ヘ
送付し、印字結果680が得られる。
調整方法により文字送り幅内に文字が適切に印字される
ように、印字立置を調整する。プリンタドライバ620
は上記の代替フォント631を使うことを指示する代替
フォント使用要求632と文字印刷要求651、文字位
置調整指示652を含んだ印刷指示をプリンタ660ヘ
送付し、印字結果680が得られる。
【0071】次に、文字位置調整部650について図7
を用いてより詳細に説明する。文字位置調整部650
は、必要なデータに基づいて所定の文字位置調整法によ
り文字位置調整値を生成する文字位置調整値生成部65
0aと、生成された文字位置調整値650bに基づいて
描画原点を移動させる文字描画原点移動部650cとを
有している。
を用いてより詳細に説明する。文字位置調整部650
は、必要なデータに基づいて所定の文字位置調整法によ
り文字位置調整値を生成する文字位置調整値生成部65
0aと、生成された文字位置調整値650bに基づいて
描画原点を移動させる文字描画原点移動部650cとを
有している。
【0072】文字位置調整部650で用いる文字位置調
整方法として、第1の実施の形態で説明したように文字
配置属性法とボディセンター法という2つの文字位置調
整方法がある。本実施の形態における文字位置調整部6
50では、文字位置調整方法としてボディセンター法を
採用したので、以下にこの方法を詳細に説明する。な
お、本実施の形態において第1の実施の形態で詳述した
文字配置属性法を採用してももちろん問題ない。
整方法として、第1の実施の形態で説明したように文字
配置属性法とボディセンター法という2つの文字位置調
整方法がある。本実施の形態における文字位置調整部6
50では、文字位置調整方法としてボディセンター法を
採用したので、以下にこの方法を詳細に説明する。な
お、本実施の形態において第1の実施の形態で詳述した
文字配置属性法を採用してももちろん問題ない。
【0073】さて、文字位置調整部650の文字位置調
整値生成部650aでは、ボディセンター法を用いるた
め、次の情報が使用される。
整値生成部650aでは、ボディセンター法を用いるた
め、次の情報が使用される。
【0074】(1)要求フォントの文字の送り幅(以
下、「要求文字送り幅」という)、(2)要求フォント
のボデイセンターの中央までの距離(以下、「ボディセ
ンター値」という)、(3)代替フォントの文字の送り
幅(以下、「代替文字送り幅」という)。
下、「要求文字送り幅」という)、(2)要求フォント
のボデイセンターの中央までの距離(以下、「ボディセ
ンター値」という)、(3)代替フォントの文字の送り
幅(以下、「代替文字送り幅」という)。
【0075】フォントを置き換える場合、要求フォント
の「要求文字送り幅」のデータは文字位置調整部650
からアクセスできる場所に格納されているものとする。
代替フォントはプリンタドライバ620が持っているフ
ォントであるため、フォント自身から「代替文字送り
幅」を取得することが可能である。また、「要求文字送
り幅」データと同様に文字位置調整部650からアクセ
スできる場所に、「代替文字送り幅」データを格納して
おくことも可能である。
の「要求文字送り幅」のデータは文字位置調整部650
からアクセスできる場所に格納されているものとする。
代替フォントはプリンタドライバ620が持っているフ
ォントであるため、フォント自身から「代替文字送り
幅」を取得することが可能である。また、「要求文字送
り幅」データと同様に文字位置調整部650からアクセ
スできる場所に、「代替文字送り幅」データを格納して
おくことも可能である。
【0076】ボディセンター法による文字位置調整で
は、「代替文字送り幅」と「要求文字送り幅」を比較し
て、両者の幅が異なる場合のみ文字位置調整を行うよう
にするものである。そして、文字位置調整する場合は、
「要求文字送り幅」と「ボディセンター値」を使用して
次式により文字位置調整値を生成する。
は、「代替文字送り幅」と「要求文字送り幅」を比較し
て、両者の幅が異なる場合のみ文字位置調整を行うよう
にするものである。そして、文字位置調整する場合は、
「要求文字送り幅」と「ボディセンター値」を使用して
次式により文字位置調整値を生成する。
【0077】 文字位置調整値650b=要求文字送り幅/2−ボディーセンター値 ・・・(式4) なお、「ボディセンター値」の取得手順は、第1の実施
の形態における図5を用いた「文字配置属性」を取得す
る際の文字処理装置の動作フロー内で明らかにされてい
るのでここでは説明を省略する。
の形態における図5を用いた「文字配置属性」を取得す
る際の文字処理装置の動作フロー内で明らかにされてい
るのでここでは説明を省略する。
【0078】次に、本実施の形態の文字位置調整部65
0におけるボディセンター法によるフォント置換処理の
具体的な手順を図8を用いて説明する。図8は文字位置
調整部650の動作フローを示している。
0におけるボディセンター法によるフォント置換処理の
具体的な手順を図8を用いて説明する。図8は文字位置
調整部650の動作フローを示している。
【0079】例として、座標(100,200)を始点
とし、「{」、「あ」、「亜」、「}」の4文字を連続
して描画するものとする。このとき、表1に示したフォ
ントが要求フォントであり、表2に示したフォントが代
替フォントであるとする。この表1及び表2の情報は文
字位置調整部650からアクセスできる領域に格納され
ている。以下、描画順序に従って文字描画開始位置の決
定と、次の文字描画開始位置の更新について説明する。
とし、「{」、「あ」、「亜」、「}」の4文字を連続
して描画するものとする。このとき、表1に示したフォ
ントが要求フォントであり、表2に示したフォントが代
替フォントであるとする。この表1及び表2の情報は文
字位置調整部650からアクセスできる領域に格納され
ている。以下、描画順序に従って文字描画開始位置の決
定と、次の文字描画開始位置の更新について説明する。
【0080】まず、「{」の処理について説明する。ス
テップS811で、「{」の文字の要求文字送り幅が取
得される。表1に示すように「{」の要求文字送り幅は
50である。次に、ステップS812で、「{」の代替
文字送り幅が取得される。表2に示すように、「{」の
代替文字送り幅は100である。ステップS813で要
求文字送り幅と代替文字送り幅とが等しいかどうかが判
断され、この場合、両者の送り幅は等しくないので、ス
テップS814において、代替フォントのボディセンタ
ー値75を取得する。ここで、ボディセンター値はフォ
ント間で共通の代表値を使用しても実用上問題ない。ス
テップS815に移行して、上記式(4)を用いて文字
位置調整値が求められる。
テップS811で、「{」の文字の要求文字送り幅が取
得される。表1に示すように「{」の要求文字送り幅は
50である。次に、ステップS812で、「{」の代替
文字送り幅が取得される。表2に示すように、「{」の
代替文字送り幅は100である。ステップS813で要
求文字送り幅と代替文字送り幅とが等しいかどうかが判
断され、この場合、両者の送り幅は等しくないので、ス
テップS814において、代替フォントのボディセンタ
ー値75を取得する。ここで、ボディセンター値はフォ
ント間で共通の代表値を使用しても実用上問題ない。ス
テップS815に移行して、上記式(4)を用いて文字
位置調整値が求められる。
【0081】式(4)は、 文字位置調整値=要求文字送り幅/2−ボディセンター
値 であるから、この式に、「要求文字送り幅」=50、
「ボディセンター値」=75を代入して、文字位置調整
値=−50を得る。ステップS817で、得られた文字
位置調整値が出力され、現在の文字描画開始位置(10
0,200)に対して、文字位置調整値−50を加えた
座標(50,200)から代替フォントの「{」が印字
される。また、文字描画開始位置は、「要求文字送り
幅」を加えて、座標(150,200)に更新される。
値 であるから、この式に、「要求文字送り幅」=50、
「ボディセンター値」=75を代入して、文字位置調整
値=−50を得る。ステップS817で、得られた文字
位置調整値が出力され、現在の文字描画開始位置(10
0,200)に対して、文字位置調整値−50を加えた
座標(50,200)から代替フォントの「{」が印字
される。また、文字描画開始位置は、「要求文字送り
幅」を加えて、座標(150,200)に更新される。
【0082】次に、「あ」の処理について説明する。ス
テップS811で、「あ」の文字の要求文字送り幅が取
得される。表1に示すように「あ」の要求文字送り幅は
90である。次に、ステップS812で、「あ」の代替
文字送り幅が取得される。表2に示すように、「あ」の
代替文字送り幅は100である。ステップS813で要
求文字送り幅と代替文字送り幅とが等しいかどうかが判
断され、この場合、両者の送り幅は等しくないので、ス
テップS814において、代替フォントのボディセンタ
ー値50を取得する。ステップS815に移行して、上
記式(4)を用いて文字位置調整値が求められる。
テップS811で、「あ」の文字の要求文字送り幅が取
得される。表1に示すように「あ」の要求文字送り幅は
90である。次に、ステップS812で、「あ」の代替
文字送り幅が取得される。表2に示すように、「あ」の
代替文字送り幅は100である。ステップS813で要
求文字送り幅と代替文字送り幅とが等しいかどうかが判
断され、この場合、両者の送り幅は等しくないので、ス
テップS814において、代替フォントのボディセンタ
ー値50を取得する。ステップS815に移行して、上
記式(4)を用いて文字位置調整値が求められる。
【0083】文字位置調整値=要求文字送り幅/2−ボ
ディセンター値 この式に、「要求文字送り幅」=90、「ボディセンタ
ー値」=50を代入して、文字位置調整値=−5を得
る。ステップS817で、得られた文字位置調整値が出
力され、現在の文字描画開始位置(150,200)に
対して、文字位置調整値−5を加えた座標(145,2
00)から代替フォントの「あ」が印字される。また、
文字描画開始位置は、「要求文字送り幅」を加えて、座
標(240,200)に更新される。
ディセンター値 この式に、「要求文字送り幅」=90、「ボディセンタ
ー値」=50を代入して、文字位置調整値=−5を得
る。ステップS817で、得られた文字位置調整値が出
力され、現在の文字描画開始位置(150,200)に
対して、文字位置調整値−5を加えた座標(145,2
00)から代替フォントの「あ」が印字される。また、
文字描画開始位置は、「要求文字送り幅」を加えて、座
標(240,200)に更新される。
【0084】次に、「亜」の処理について説明する。ス
テップS811で、「亜」の文字の要求文字送り幅が取
得される。表1に示すように「亜」の要求文字送り幅は
100である。次に、ステップS812で、「亜」の代
替文字送り幅が取得される。表2に示すように、「亜」
の代替文字送り幅は100である。ステップS813で
要求文字送り幅と代替文字送り幅とが等しいかどうかが
判断され、この場合、両者の送り幅は等しくなるので、
ステップS816に移行して、文字位置調整値=0を得
る。ステップS817で、得られた文字位置調整値が出
力され、現在の文字描画開始位置(240,200)に
対して、文字位置調整値0を加えた座標(240,20
0)から代替フォントの「亜」が印字される。また、文
字描画開始位置は、「要求文字送り幅」を加えて、座標
(340,200)に更新される。
テップS811で、「亜」の文字の要求文字送り幅が取
得される。表1に示すように「亜」の要求文字送り幅は
100である。次に、ステップS812で、「亜」の代
替文字送り幅が取得される。表2に示すように、「亜」
の代替文字送り幅は100である。ステップS813で
要求文字送り幅と代替文字送り幅とが等しいかどうかが
判断され、この場合、両者の送り幅は等しくなるので、
ステップS816に移行して、文字位置調整値=0を得
る。ステップS817で、得られた文字位置調整値が出
力され、現在の文字描画開始位置(240,200)に
対して、文字位置調整値0を加えた座標(240,20
0)から代替フォントの「亜」が印字される。また、文
字描画開始位置は、「要求文字送り幅」を加えて、座標
(340,200)に更新される。
【0085】次に、「}」の処理について説明する。ス
テップS811で、「}」の文字の要求文字送り幅が取
得される。表1に示すように「}」の要求文字送り幅は
50である。次に、ステップS812で、「}」の代替
文字送り幅が取得される。表2に示すように、「}」の
代替文字送り幅は100である。ステップS813で要
求文字送り幅と代替文字送り幅とが等しいかどうかが判
断され、この場合、両者の送り幅は等しくないので、ス
テップS814において、代替フォントのボディセンタ
ー値25を取得する。ステップS815に移行して、上
記式(4)を用いて文字位置調整値が求められる。
テップS811で、「}」の文字の要求文字送り幅が取
得される。表1に示すように「}」の要求文字送り幅は
50である。次に、ステップS812で、「}」の代替
文字送り幅が取得される。表2に示すように、「}」の
代替文字送り幅は100である。ステップS813で要
求文字送り幅と代替文字送り幅とが等しいかどうかが判
断され、この場合、両者の送り幅は等しくないので、ス
テップS814において、代替フォントのボディセンタ
ー値25を取得する。ステップS815に移行して、上
記式(4)を用いて文字位置調整値が求められる。
【0086】式(4)は、 文字位置調整値=要求文字送り幅/2−ボディセンター
値 であるから、この式に、「要求文字送り幅」=50、
「ボディセンター値」=25を代入して、文字位置調整
値=0を得る。ステップS817で、得られた文字位置
調整値が出力され、現在の文字描画開始位置(340,
200)に対して、文字位置調整値0を加えた座標(3
40,200)から代替フォントの「}」が印字され
る。また、文字描画開始位置は、「要求文字送り幅」を
加えて、座標(390,200)に更新される。
値 であるから、この式に、「要求文字送り幅」=50、
「ボディセンター値」=25を代入して、文字位置調整
値=0を得る。ステップS817で、得られた文字位置
調整値が出力され、現在の文字描画開始位置(340,
200)に対して、文字位置調整値0を加えた座標(3
40,200)から代替フォントの「}」が印字され
る。また、文字描画開始位置は、「要求文字送り幅」を
加えて、座標(390,200)に更新される。
【0087】以上説明したように本実施の形態による文
字処理装置及びその方法によっても、第1の実施の形態
で得られた効果と同様に、要求フォントを代替フォント
に置換して出力する際、表3に示したような代替フォン
トデータの文字送り幅とバウンディングボックスから各
文字の「ボディセンター値」という僅かな追加データを
用いるだけで各文字を適切な位置に配置することができ
るようになる。そして、文字位置調整部650で上述の
「ボディセンター法」を用いたことにより、出力される
文字が前後の文字と重なり合うことがない文字処理方法
及び装置を実現することができる。
字処理装置及びその方法によっても、第1の実施の形態
で得られた効果と同様に、要求フォントを代替フォント
に置換して出力する際、表3に示したような代替フォン
トデータの文字送り幅とバウンディングボックスから各
文字の「ボディセンター値」という僅かな追加データを
用いるだけで各文字を適切な位置に配置することができ
るようになる。そして、文字位置調整部650で上述の
「ボディセンター法」を用いたことにより、出力される
文字が前後の文字と重なり合うことがない文字処理方法
及び装置を実現することができる。
【0088】本発明の第3の実施の形態による文字処理
方法及び装置を図9を用いて説明する。本実施の形態で
は、フォント置換機能を有する画像表示装置に文字処理
装置を適用した例について説明する。図9は、フォント
置換機能を持った画像表示装置の構成を示している。図
9において、文書データ表示指示部900はフォント使
用要求911を画像描画部920に発行する。ここで指
示されたフォントが要求フォント913である。このフ
ォント使用要求911を受け取った画像描画部920
は、代替フォント決定部930にこの指示を渡す。代替
フォント決定部930は、フォントデータベース970
を参照して、要求フォントが存在するかどうかを確認す
る。図9の構成図ではフォントデータベースは文書表示
装置内のプリンタ内に存在するが、これに限るものでは
ない。
方法及び装置を図9を用いて説明する。本実施の形態で
は、フォント置換機能を有する画像表示装置に文字処理
装置を適用した例について説明する。図9は、フォント
置換機能を持った画像表示装置の構成を示している。図
9において、文書データ表示指示部900はフォント使
用要求911を画像描画部920に発行する。ここで指
示されたフォントが要求フォント913である。このフ
ォント使用要求911を受け取った画像描画部920
は、代替フォント決定部930にこの指示を渡す。代替
フォント決定部930は、フォントデータベース970
を参照して、要求フォントが存在するかどうかを確認す
る。図9の構成図ではフォントデータベースは文書表示
装置内のプリンタ内に存在するが、これに限るものでは
ない。
【0089】要求フォントが存在する場合は、それを使
用するためフォントの置き換えは起こらない。ここで要
求されたフォントが存在しない場合は、文書表示装置9
00が持っているフォントの中から適切なフォントを選
択する。ここで選択されたフォントが代替フォント93
1である。
用するためフォントの置き換えは起こらない。ここで要
求されたフォントが存在しない場合は、文書表示装置9
00が持っているフォントの中から適切なフォントを選
択する。ここで選択されたフォントが代替フォント93
1である。
【0090】次に実際に描画する文字を指定するため、
文書データ表示指示部910は文字印刷要求912を発
行する。この文字印刷要求912は文字コードに関する
情報を含んでいる。文字印刷要求912を受け取った画
像描画部920は文字送り幅決定部940に文字コード
を与える。文字送り幅決定部940は要求フォント91
3の送り幅情報をフォントデータベース970より取得
し、これを表示時の文字送り幅とする。
文書データ表示指示部910は文字印刷要求912を発
行する。この文字印刷要求912は文字コードに関する
情報を含んでいる。文字印刷要求912を受け取った画
像描画部920は文字送り幅決定部940に文字コード
を与える。文字送り幅決定部940は要求フォント91
3の送り幅情報をフォントデータベース970より取得
し、これを表示時の文字送り幅とする。
【0091】文字位置調整部950は、第1及び第2の
実施の形態において説明した文字位置調整部150、6
50と同等であり、また「文字配置属性法」、「ボディ
センター法」のいずれかの文字位置調整方法により文字
送り幅内に文字が適切に納まるように表示立置を調整す
る。この調整された表示位置に従って文字表示部960
は文字を表示する。
実施の形態において説明した文字位置調整部150、6
50と同等であり、また「文字配置属性法」、「ボディ
センター法」のいずれかの文字位置調整方法により文字
送り幅内に文字が適切に納まるように表示立置を調整す
る。この調整された表示位置に従って文字表示部960
は文字を表示する。
【0092】本実施の形態における文字処理方法及び装
置は文字が画像表示される点を除き、第1及び第2の実
施の形態における文字処理方法及び装置と同様に動作
し、同様の効果を奏するものである。従って、本実施の
形態におけるこれらの動作等の説明は省略する。
置は文字が画像表示される点を除き、第1及び第2の実
施の形態における文字処理方法及び装置と同様に動作
し、同様の効果を奏するものである。従って、本実施の
形態におけるこれらの動作等の説明は省略する。
【0093】本発明は、上記実施の形態に限らず種々の
変形が可能である。例えば、上記実施の形態において
は、文字の送り方向は表示領域の左から右に向かって順
に文字が表示されていくものとして説明した。しかし、
本発明はこれに限るものではなく、縦書きやアラビア文
字のような右から左への文字送りにも当然適用可能であ
る。
変形が可能である。例えば、上記実施の形態において
は、文字の送り方向は表示領域の左から右に向かって順
に文字が表示されていくものとして説明した。しかし、
本発明はこれに限るものではなく、縦書きやアラビア文
字のような右から左への文字送りにも当然適用可能であ
る。
【0094】
【発明の効果】以上の通り、本発明によれば、フォント
の置き換え時に僅かな追加データで各文字を適切な位置
に置くことができるようになる。また、必要な追加デー
タを少ない労力で得ることができる。
の置き換え時に僅かな追加データで各文字を適切な位置
に置くことができるようになる。また、必要な追加デー
タを少ない労力で得ることができる。
【図1】本発明の第1の実施の形態による文字処理装置
をフォント置換機能を有するプリンタに適用した構成図
である。
をフォント置換機能を有するプリンタに適用した構成図
である。
【図2】本発明の第1の実施の形態による文字処理装置
における文字位置調整部の構成を示す図である。
における文字位置調整部の構成を示す図である。
【図3】本発明の第1の実施の形態による文字処理装置
におけるフォント置換プリンタ動作フローを示す図であ
る。
におけるフォント置換プリンタ動作フローを示す図であ
る。
【図4】本発明の第1の実施の形態による文字処理装置
における文字配置属性法での文字位置調整部の動作フロ
ーを示す図である。
における文字配置属性法での文字位置調整部の動作フロ
ーを示す図である。
【図5】本発明の第1の実施の形態による文字処理装置
における文字配置属性法での文字配置属性取得手順を示
す図である。
における文字配置属性法での文字配置属性取得手順を示
す図である。
【図6】本発明の第2の実施の形態による文字処理装置
をプリンタドライバに適用した構成図である。
をプリンタドライバに適用した構成図である。
【図7】本発明の第2の実施の形態による文字処理装置
における文字位置調整部の構成を示す図である。
における文字位置調整部の構成を示す図である。
【図8】本発明の第2の実施の形態による文字処理装置
におけるボディセンター法での文字位置調整部の動作フ
ローを示す図である。
におけるボディセンター法での文字位置調整部の動作フ
ローを示す図である。
【図9】本発明の第3の実施の形態による文字処理装置
を表示装置に適用した構成図である。
を表示装置に適用した構成図である。
【図10】従来の文字処理装置における文字の描画と描
画原点の移動例を示す図である。
画原点の移動例を示す図である。
【図11】従来の文字処理装置におけるフォント置換例
を示す図である。
を示す図である。
110、600 クライアント 111 フォント使用要求 112、612、651、912 文字印刷要求 113、613、913 要求フォント 120、660 プリンタ 130、630、930 代替フォント決定部 131、631、931 代替フォント 140、640、940 文字送り幅決定部 150、650 文字位置調整部 160 文字印字部 170、670、970 フォントデータベース 180、680 印字結果 610 印刷指示部 611、911 フォント使用要求 620 プリンタドライバ 632 代替フォント使用要求 652 文字位置調整指示 900 文書データ表示指示部 920 画像描画部 910 文書データ表示指示部
Claims (13)
- 【請求項1】印字の際に要求される要求フォントに対し
て、当該要求フォントに替わる代替フォントを決定し、 前記要求フォントの各文字の送り幅を取得し、文字送り
方向における前記代替フォントの各文字の描画原点から
ボディ中点までの距離に基づく各文字のボディセンター
値を取得して、前記代替フォントの各文字の描画開始位
置を生成し、 前記代替フォントの各文字を前記描画開始位置から出力
することを特徴とする文字処理方法。 - 【請求項2】請求項1記載の文字処理方法において、 前記ボディセンター値は、前記代替フォントの各文字の
送り幅とバウンディングボックス(文字の最小外接矩
形)とを用いて生成されることを特徴とする文字処理方
法。 - 【請求項3】請求項1又は2記載の文字処理方法におい
て、 前記各文字のボディセンター値は、複数のフォント間で
共有されることを特徴とする文字処理方法。 - 【請求項4】請求項1乃至3のいずれかに記載の文字処
理方法において、 前記代替フォントの各文字の描画開始位置を生成するに
際し、 前記要求フォントの各文字の送り幅は、所定のデフォル
ト値と異なるときのみ取得することを特徴とする文字処
理方法。 - 【請求項5】請求項1乃至4のいずれかに記載の文字処
理方法において、 前記代替フォントの各文字の描画開始位置を生成するに
際し、 前記各文字のボディセンター値は、所定のデフォルト値
と異なるときのみ取得することを特徴とする文字処理方
法。 - 【請求項6】印字の際に要求される要求フォントに対し
て、当該要求フォントに替わる代替フォントを決定し、 前記要求フォントの各文字の送り幅及び文字配置属性を
取得し、前記代替フォントの各文字の送り幅を取得し
て、前記代替フォントの各文字の描画開始位置を生成
し、 前記代替フォントの各文字を前記描画開始位置から出力
することを特徴とする文字処理方法。 - 【請求項7】請求項6記載の文字処理方法において、 前記各文字の文字配置属性は、前記要求フォントの各文
字の送り幅とバウンディングボックス(文字の最小外接
矩形)を取得して生成されることを特徴とする文字処理
方法。 - 【請求項8】請求項6又は7に記載の文字処理方法にお
いて、 前記各文字の文字配置属性は、文字送り方向に対して
「前詰」、「中央置き」、「後詰」の属性を含むことを
特徴とする文字処理方法。 - 【請求項9】請求項6乃至8のいずれかに記載の文字処
理方法において、 前記各文字の文字配置属性は、複数のフォント間で共有
されることを特徴とする文字処理方法。 - 【請求項10】請求項6乃至9のいずれかに記載の文字
処理方法において、 前記代替フォントの各文字の描画開始位置を生成するに
際し、 前記各文字の文字配置属性は、所定のデフォルト値と異
なるときのみ取得することを特徴とする文字処理方法。 - 【請求項11】印字の際に要求される要求フォントに対
して、当該要求フォントに替わる代替フォントを決定す
る代替フォント決定部と、 前記要求フォントの各文字の送り幅と、文字送り方向に
おける前記代替フォントの各文字の描画原点からボディ
中点までの距離に基づくボディセンター値とにより、前
記代替フォントの各文字の描画開始位置を調整する文字
位置調整部と、 前記代替フォントの各文字を前記描画開始位置から出力
する印字部とを有することを特徴とする文字処理装置。 - 【請求項12】印字の際に要求される要求フォントに対
して、当該要求フォントに替わる代替フォントを決定す
る代替フォント決定部と、 前記要求フォントの各文字の送り幅及び文字配置属性
と、前記代替フォントの各文字の送り幅とにより、前記
代替フォントの各文字の描画開始位置を調整する文字位
置調整部と、 前記代替フォントの各文字を前記描画開始位置から出力
する印字部とを有することを特徴とする文字処理装置。 - 【請求項13】請求項1乃至10のいずれかに記載の文
字処理方法を実施させるプログラムが記録されているこ
とを特徴とする読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8342378A JPH10171789A (ja) | 1996-12-09 | 1996-12-09 | 文字処理方法及び装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8342378A JPH10171789A (ja) | 1996-12-09 | 1996-12-09 | 文字処理方法及び装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH10171789A true JPH10171789A (ja) | 1998-06-26 |
Family
ID=18353269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8342378A Withdrawn JPH10171789A (ja) | 1996-12-09 | 1996-12-09 | 文字処理方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH10171789A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015060356A (ja) * | 2013-09-18 | 2015-03-30 | コニカミノルタ株式会社 | データ生成装置及びデータ生成プログラム並びにデータ生成方法 |
-
1996
- 1996-12-09 JP JP8342378A patent/JPH10171789A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015060356A (ja) * | 2013-09-18 | 2015-03-30 | コニカミノルタ株式会社 | データ生成装置及びデータ生成プログラム並びにデータ生成方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5404436A (en) | Computer method and apparatus for converting compressed characters for display in full size | |
JP2004151832A (ja) | 印刷製版における検版 | |
JPH04128970A (ja) | 文書処理システム | |
JPH09134158A (ja) | 文字処理方法及び処理装置 | |
JPH10171789A (ja) | 文字処理方法及び装置 | |
US20030058260A1 (en) | Image processing apparatus and method, and computer-readable memory | |
JP4140363B2 (ja) | 画像処理装置および画像処理方法 | |
JP3775130B2 (ja) | 文書処理装置および方法 | |
JP3487917B2 (ja) | 電子ファイル装置 | |
JP3189345B2 (ja) | 文字表示処理方法 | |
JP2009048467A (ja) | 拡大縮小印刷方法 | |
JP3814330B2 (ja) | 文字処理装置、文字処理方法、及び、メモリ | |
JP4844364B2 (ja) | 画像処理装置及びプログラム | |
JP2878715B2 (ja) | 文書作成装置 | |
JP5560934B2 (ja) | プリンタドライバ | |
JP3863416B2 (ja) | 描画装置およびその制御方法 | |
EP0418868B1 (en) | Image processing system | |
JPH08132703A (ja) | 文字出力方法及びその装置 | |
JP2576856B2 (ja) | 文章作成装置 | |
JPH1095144A (ja) | 文書作成装置 | |
JP2001086320A (ja) | 情報処理方法及び情報処理装置 | |
JPH06130930A (ja) | ビットイメージデータ生成方法及び装置 | |
JP2005074809A (ja) | 印刷制御装置、印刷装置、印刷制御方法、印刷方法、その記録媒体およびプログラム | |
JPH08293033A (ja) | 情報処理装置 | |
JP2009087269A (ja) | 印刷装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20040302 |