JPH0263856A - フォントデータ生成方式 - Google Patents

フォントデータ生成方式

Info

Publication number
JPH0263856A
JPH0263856A JP63216808A JP21680888A JPH0263856A JP H0263856 A JPH0263856 A JP H0263856A JP 63216808 A JP63216808 A JP 63216808A JP 21680888 A JP21680888 A JP 21680888A JP H0263856 A JPH0263856 A JP H0263856A
Authority
JP
Japan
Prior art keywords
font
control point
weight
character
data
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.)
Pending
Application number
JP63216808A
Other languages
English (en)
Inventor
Fumitaka Sato
文孝 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP63216808A priority Critical patent/JPH0263856A/ja
Publication of JPH0263856A publication Critical patent/JPH0263856A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/109Font handling; Temporal or kinetic typography

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Digital Computer Display Output (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Dot-Matrix Printers And Others (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) この発明はフォント●ファミリーの一部を成す任意ウェ
イトのメンバー●フォントのフォントデータを生成する
ためのフォントデータ生成方式(従来の技術) 一般に、デスクトップ−パブリッシング(DTP)のよ
うな高品質文字パターンを必要とする用途には、文字の
パターンの輪郭線を記述する方法がよく用いられている
。このような例を第13図に示す。第13図では、ゴチ
ック体のカタカナ文字「イ」の輪郭線を直線とBcz1
or3次曲線で表わすようにしたものである。即ち文字
「イ」の輪郭線を、点0から点1へは直線で、点1から
点4までは曲線で・・・というように、図中の黒丸で示
される点(ここでは点Oから点13までの14点)の座
標位置を用いて表現する。Bezler3次曲線の場合
には、図中の点22点3のように、曲線セグメント毎に
更に2点の制御点を指示して曲線の形状を指定する(こ
の場合、点22点3は曲線から外れた位置となるのが一
般的である)。
第13図の例では、上記各点の座標位置の表現の基準と
なる原点として、矩形の文字枠の左下角(A点)を用い
ている。そして、文字枠内を縦横とも1024とか40
96とかに分割する格子をとり、それを用いて各点の座
標を表わす。また、曲線の形状を表現する制御点は必ず
しも文字枠の中に入る訳ではないので、文字枠の外部の
点の座1票も表現できるように座標系を決める。以下に
述べる例では、文字枠内を縦横それぞれ1024に分割
する格子をとり、12ビツトの符号付き整数でXまたは
Y座標を表わしている。この場合、文字枠の左側と下側
の枠外領域は負数、枠の右側と上側の枠外領域は正で、
210のビット(ビット1)が“1”  (符号ビット
となるMSBはビット0、LSBはビット11)となる
。上記の表現方式によれば、制御点1点当り、X座標表
現用の12ビツトとY座標表現用の12ビツトの計24
ビットを用いて文字パターンが表現されることになる。
なお、曲線を円弧で表現する場合には、緩いカーブの円
の中心点の位置は文字枠から大きく離れるので、円弧の
表現方式によっては更にビット数を増やす必要がある。
さて、ここでは、同一書体(明朝体、ゴチック体など)
の文字群全体(例えば月S第1水準、第2水準の合計約
7000字)の文字パターンを「フォント」と呼ぶ。通
常、この種のフォントは、同じ統一された印象を与える
線幅(ウェイト)の異なる文字パターンが選択的に利用
できるように、1つの書体について複数種用意されるの
が一般的である。このようなフォント(書体が同じでウ
ェイトの異なるフォント)の集りを「フォント・ファミ
リー」と呼ぶ。またフォント・ファミリーを(開成する
各フォントを、メンバー・フォントと呼ぶ。1つのフォ
ント・ファミリーを構成するウェイトの異なる幾つかの
メンバー・フォントのデータは、それぞれメンバー・フ
ォント毎に記憶装置(〕+ントメモリ)に記憶される。
したがって、1つのフォント・ファミリーのフォントデ
ータを記憶するのに必要なフォントメモリの記憶容量は
、1つのメンバー・フォントのフォントデータのブタ量
にメンバー・フォント数を掛けた量となる。
例えば、第14図に示すゴチック体の文字「イ」が漂■
線幅の高品質文字パターンであるものとすると、そのパ
ターンの輪郭線の形状を記述するのに必要なデータ瓜は
、制御点の数が第13図と同じ14個、1点当りの座標
表現に必要なビット数が24ドツトであるものとすると
、14X24−336 (ビット)となる。このため、
第14図の標準線幅のゴチック体「イ」の他に第13図
に示した線幅の広いゴチック体「イ」も使えるようにす
るには、更に14X24−336(ビット)を必要とす
る。全文字について同様のことがいえるので、1つのメ
ンバー・フォントで例えば5MB (メガバイト)を要
するとすると、標準線幅の他に線幅の広いものと狭いも
のをそれぞれ1つ追加し、ウェイトの異なる3つのメン
バー・フォントを持つフォント・ファミリーを用意する
ためには、結局5X3−15 (MB)の記憶容量を要
し、ウェイトの異なるN個のメンバー・フォントを持つ
フォント・ファミリーを用意するためには、5 (MB
)のN倍もの記憶容量を要する。
さて、フォント・ファミリーを構成するウェイトの異な
る複数のメンバー・フォントは、文字デザイナによって
1文字ずつメンバー・フォント別に設計されたものであ
る。利用者は、文字デザイナによって設計されフォント
メモリ内に格納された幾つかのメンバー・フォントの中
から、所望のウェイトのフォントを指定して利用する。
しかしフォントメモリ内には、必ずしも利用者の希望す
るウェイトのフォントが格納されているとは限らない。
このような場合、利用者はフォントメモリに格納されて
いるメンバー・フォントの中から所望のウェイトに近い
ウェイトのメンバーΦフォントを不本意ながら選んで使
用することになる。また、このような利用者の要求に応
えるには、ウェイトの異なるメンバー・フォントを多数
用意しなければならず、フォントデータ量が膨大となり
、フォントメモリの必要記憶容量も極めて大きくなる。
一方、文字パターンの輪郭線を制御点を用いて記述する
方式に対し、ストローク方式も知られている。このスト
ローク方式では、文字の骨組みを太さのない線(文字の
中心線)として定義し、それと、太さおよび形状を持つ
r′ペン先」でなぞることにより、文字パターンを生成
するものである。
このストローク方式では、太さを文字毎に或は文字の部
分毎に調整する柔軟性に欠け、特に太いフォントを作成
するのは、複雑な字画を持つ漢字等に対しては難しかっ
た。
(発明が解決しようとする課Wi) 上記したように従来は、“見て美しい文字ノくターン“
を生成するために、同一の文字でも各ウェイト毎に制御
点の位置を文字デザイナが設定してフォントデータを作
成し、フォントメモリに格納するようにしていたため、
所望のウェイトのフォントを得ることが困難で、そのた
めにはウェイトの異なる極めて多数のメンバー・フォン
トを用意しなければならないという問題があった。
したがってこの発明の課題は、ウェイトの異なる僅かな
数のメンバー・フォントを用意するだけで、これらのメ
ンバー・フォントをもとに、利用者の要求するウェイト
のメンバー・フォントが、元のメンバー・フォントのパ
ターン形状との統一性を保ちながら簡単に生成できるよ
うにすることである。
[発明の構成] (課題を解決するための手段) この発明は、1つのフォント・ファミリーを構成するウ
ェイトが異なる少なくとも2つの第1メンバー・フォン
トの各文字の輪郭線を記述するための各制御点の位置を
示す制御点位置データを含むフォントデータが予め記憶
された第1フォント記憶手段と、第1メンバー・フォン
トのフォントデータをもとに生成される第2メンバー・
フォントのフォントデータが格納される第2フォント記
憶手段と、外部指定されたウェイトを示すウェイト値に
ついて、そのウェイト値をもとに、第1フォント記憶手
段に記憶されている第1メンバー・フォントの各制御点
位置データを補間して、このウェイト値に固有の第2メ
ンバー・フォントの各制御点の制御点位置データを求め
第2フォント記憶手段に順に書込む補間手段とを設けた
ことを特徴とする。
(作用つ 上記の構成において、第1フォント記憶手段に格納され
ているウェイトの異なる少なくとも2つの第2メンバー
・フォントの各文字の各制御点の位置は、“見て美しい
文字パターン°を生成するために、文字デザイナによっ
て同一の文字でもウェイト毎に個々に設定されたもので
ある。そこで、このように設定された制御点の位置を示
す制御点位置データを利用して、外部指定されたウェイ
ト値について、そのウェイトをもとに位置補間すること
で、指定ウェイト値に固有の制御点の位置を示す新たな
制御点位置データを生成することができる。したがって
、この生成動作を各文字の各制御点について繰返し行う
ことで、指定ウェイトのメンバー・フォント(第2メン
バー・フォント)のフォントデータを生成することがで
きる。
(実施例) 以下、この発明の一実施例を図面を2照して説明する。
第1図はこの発明に直接関係するフォントデータ生成処
理の手順の一実施例を示すフローチャート、第2図は第
1図の手順を実現するための高品質文字パターン生成装
置の一実施例を示すブロック構成図である。
第2図において、10はフォントデータ生成の演算等と
制御を司るCPU、11はフォントデータ生成プログラ
ム、フォントデータ伸張プログラム、圧縮フォントデー
タ、フォントデータ伸張結果等を記憶するための主メモ
リである。12は標準ウェイトS(標準線幅)、ヘビー
・ウェイトH(太線幅)、およびライト・ウェイト(細
線幅)の3つのメンバー・フォントから成るフォント・
ファミリー全体のフォントデータが、各種のフォント・
ファミリーについて予め記憶されている例えばROM構
成のフォントメモリ(以下、フォントROMと称する)
、12は高品質文字パターン生成のために実際に使用さ
れるメンバー・フォントのフォントデータを利用し易い
形式で記憶する例えば高速RAM構成のフォントメモリ
(以下、フォントRAMと称する)、14はCP U 
10.主メモリILフォントROM 12、およびフォ
ントRA M 13等を相互接続するためのバスである
。第2図の構成では、キーボード、表示装置およびプリ
ンタ(ここではレーザビーム・プリンタ)などは省略さ
れている。なお、フォントROM 12に記憶されるフ
ォントデー°夕の示す文字の曲線部分の表現には、Be
zler3次曲線、スプライン曲線、円弧などが利用さ
れる。フォントROM12の実体としては、ROMでな
くて磁気ディスク、CD−ROM等であってもよい。ま
たフォントRA M 13を用いずに、主メモリll内
にフォントRA M 13に相当するフォントデータ領
域を用意することも可能である。
ここで、第2図の装置の動作を第1図のフローチャート
を参照して説明する前に、まず本発明に直接関係するフ
ォントデータ生成の基本原理について、第3図乃至第5
図を参照して説明する。
第3図はゴチック体の標準ウェイト文字「イ」、ヘビー
・ウェイト文字「イ」およびライト・ウェイト文字「イ
」を重ね合せた状態を、文字「イ」の上端部分について
示す。ここではPw(1,j)で制御点を表わしている
。Pv(1,j)の添字Wはウェイト(線幅)を表わし
、Sは標準ウェイト、Hはへビー・ウェイト、そしてL
はライト・ウェイトを表わす。また1、jは、対象制御
点か、対象文字(図では「イ」)の輪郭線を記述する幾
つかの閉曲線(図では1つ)のうちの第1番目(i−0
,1,2・・・)の閉曲線の中の第j番目(i−0,1
,2・・・)の制御点であることを示す。そして、各制
御点の座標は、例えば制御点p s(o、o)であれば
(XS(0,0)、 YS(0,0)) 、制御点PL
(i、j)であれば(XL(1,j)、 YL(1,j
))の如<x、yの2次元座標で示す。
さて、従来はウェイトを表わすのに上記の如くH,L、
Sなどの識別子を用い、設計された個々のフォントをこ
の識別子によって識別するようにしていた。しかし、こ
の実施例では、予め用意されていない任意ウェイトのフ
ォントを作成することを目的としていることから、ウェ
イトを数値(ウェイト値と呼ぶ)Wで表わすようにして
いる。
例えば、ウェイト値Wを−1から+1までの範囲の値を
とるものとする。ここでは、+1は上記のHに、0はS
に、そして−1はLにそれぞれトロ当し、利用者は−1
から+1の間の任意の数値をウェイト値Wとして指定す
ることによって任意のウェイトのフォントを指定するこ
とができる。
今、利用者によってウェイト値Wが指定されたものとす
る。Wの値が−1,O,+1のいずれかである場合、即
ちライト・ウェイト(L)、標準ウェイト(S)または
ヘビー−ウェイト(H)のいずれかが指定された場合に
は、対応するフォントデータは第1図のフォントROM
 12に格納されていることから、従来と同じ扱いとな
るので説明を省略する。ここでは、−1,O,+1以外
のウェイト値Wが指定された場合について、最も単純な
フォントデータ(制御点データ)生成の原理を説明する
。なお、ライト・ウェイト(L)、標桑ウェイト(S)
およびヘビー・ウェイト(H)のフォントデータを成す
制御点データの形式は、例えば文字枠の原点からの絶対
値表現など、従来通りでよい。
■指定されたWが0<w<1の場合 この場合、制御点P S(1,j)とPl+(1,j)
を結ぶ線分をw:(1−w)に内分する点Pv(1,j
)を指定ウェイト値Wの対応制御点とする。即ち線形補
間によって指定ウェイト値Wの対応制御点の座標を求め
るようにしている。
■指定されたWが−i<w<oの場合 この場合、今度は制御点PS(1,j)とPL(1,j
)を結ぶ線分を−w:(1+w)に内分する点Pv(1
,j)を指定ウェイト値Wの対応制御点とする。
第4図はQ<w<1の場合のP v(1,j)のY座標
゛と制御点PH(0,0)、  PS(1,j)、  
PL(1,j)のY座標との関係を示したものである。
以上の単純な線形補間でも、大部分のフォントについて
十分満足のいく結果が得られる。しかし、次のようなフ
ォントの場合には補間方式を工夫した方が好ましい。例
えば、非常に太い線で複雑な字画を持つ文字を表現しよ
うとすると、字画の部分が近接し過ぎるので、通常はそ
れを補正するように文字パターンが設計される。このた
め、補正された後の最も太い(ウェイトの大きい)文字
、<ターンの制御点座標をもとに上記のように線形補間
すると、文字間のバランスが崩れる。これを防ぐために
は、文字毎に、更には制御点毎にウェイトによる制御点
の補間方式を切替えることが好ましい。例えば、第5図
に示すように、w < 0の領域とw > Oの領域と
を1つにして考え、Y L(i 、j) −Y S(1
、j)と、 Y S(1,j)−Y H(1,j) のうち、値が大きい方で線形補間の係数を与え(図では
前者)、他方の端の値(Y L(1,j)またはYH(
1,j))には最大値または最小値を与えているとみる
こともできる。この方式でも、フォントデータの形式は
従来と同様でよく、フォントデータの総量がH,L、S
の3フオントの場合と同じデータ量のままで、任意のウ
ェイトのフォントを得ることができる。
次に、以上のような補間原理を用いた第2図の高品質文
字パターン生成装置におけるフォントデータ生成処理に
ついて、第1図のフローチャートを参照して説明する。
まずCPUl0は、例えば利用者と表示装置の画面、キ
ーボード等を介して対話することにより、後の文書処理
で使用する必要のあるメンバー・フォントのウェイトを
指示する1つまたは複数のウェイト値から成るリストを
受取る(ステップSl)。次にCPUl0は、各文字の
輪郭を構成する各閉曲線の各制御点について、フォント
ROM 12からヘビー・ウェイトド1ライト・ウェイ
トしおよび標準ウェイトSそれぞれの制御点座標(制御
点データ)を主メモリ11に読込み、ステップSlで受
取ったリスト中のウェイト値Wについて、そのウェイト
値Wをもとに前記した方式で補間して制御点座標を求め
、そのウェイト値Wのメンバー・フォントを格納するた
めのフォントRA M 13内領域に書込む動作を、ス
テップSlで受取ったリスト中のウェイト値Wの個数だ
け実行する(ステップS2)。この際、対応制御点の属
性情報(直線セグメントの起点、曲線セグメントの中間
制御点など、どのような種類の点かを識別するための情
報)については、そのままコピーされる。なお、上記ヘ
ビー・ウェイトド1ライト・ウェイトしおよび標準ウェ
イトSの3つの制御点座標は、ステップS2での読込み
の高速化のために、(ウェイト別でなく)各文字の対応
制御点毎に3つ纏めてフォントROM 12の連続する
領域に格納されている。
CPUl0は、上記ステップS2を、各文字(ここでは
使用頻度の高いJIS第1水準の文字)の各閉曲線の各
制御点について繰返し実行する(ステップ83〜S5)
。モしてCPUl0は、以上の繰返し動作を終了すると
、フォントRA M 13に書込まれた指定ウェイト値
Wのフォントを用いて、表示装置への文書ページ表示、
レーザビーム・プリンタ(L B P)を用いた文書ペ
ージ印刷等を伴う周知の文書処理を行う(ステップS6
)。
さて、この実施例では、ステップS2の繰返し処理にお
いて上記したように指定ウェイト値Wのフォントデータ
をJIS第1水準の文字についてのみ生成するようにし
ている。これは、全ての文字についてのフォントデータ
を生成した場合、高速RAMで構成されるフォントRA
 M 13の必要記憶容量が極めて大きくなってしまう
ことを防止するためである。そこで、使用頻度の低い第
2水準の文字については、ステップS6の処理で必要と
分った時点で同処理を中断し、該当する文字(または同
文字を含む文字群)についてのみ上記ステップS2と同
様の処理を行って、その都度該当文字の各制御点の指定
ウェイト値Wの制御点座標を求め、フォントR’AM1
3に書込むようにしている(ステップS7)。そして、
この動作を終了するとステップS6の文書処理の続きを
再開する。
しかし、JIS第2水準の文字が必要となる毎に無条件
でステップS7の処理を行うのは無駄である。そこで本
実施例では、フォントRA M 13に確保される各文
字毎のフォントデータのヘッディング領域(ヘッダ部)
内に1ビツトの特定フラグ(図示せず)を設け、この特
定フラグにより、その文字(または文字群)のフォント
データがフォノ1−RAMl3に書込み済みであるか否
かを表示できるようにしている。このため第2図の装置
には、CPUl0がフォントRA M 13内のデータ
を利用しようとするとき、そのデータに固有の上記特定
フラグの状態をチエツクし、もし対応フォントデータが
フォントRA M 13に未だ書込まれていないことが
示されていれば、CPU20に割込みをかける割込み回
路(図示せず)が用意されている。この割込み回路につ
いては当業者が用意に理解できるものであり、したがっ
て詳細な説明を省略する。
上記割込み回路からの割込みが発生すると、ステップS
6の処理をしていたC P U 10はステップS6の
処理を中断してステップS7の処理を実行する。そして
CPUl0はJIS第2水準の目的とする文字(または
文字群)のフォントデータをフォントRA M 13に
書込むと対応する上記フラグを書込み済み状態に設定し
、ステップS6に戻る。
以上に述べたように、この実施例によれば、1つのフォ
ント ファミリーについてH(w−+、1) 、 L 
(w −−1) 、 S (w−0)の3つのウェイト
のフォントデータをフォントROM 12に用意してお
くことで、−1〜+1の範囲の任意のウェイト値Wで且
つ上記3つのフォントの形状との統一性を保つフォント
データを簡単こ生成できるものである。
次に、フォントROM12に格納されるH、Lの2つの
メンバー・フォントのフォントデータ量を減少する方式
について説明する。この方式は、同じ設計思想に基づい
てフォント・ファミリーとして設計されたH、L、Sの
各ウェイトのフォントの文字パターンでは、相互の対応
する制御点は第3図に示されているように互いに近接し
た位置に存在することに着目し、例えば標準ウェイトS
の文字の制御点PS([、j)を基弗として、へ゛ビー
・ウェイトHの対応制御点pH(i、j)およびライト
・ウェイトLの対応制御点P L(1,j)の位置(制
御点座標)を1目対座標で表現するようにしたものであ
る。
第6図(a)、(b)は制御点座標(制御点データ)の
基本的な表現形式を示す。まず、標準ウェイトSのメン
バー・フォントの制御点座標は、従来と同様に座標原点
(ここでは第13図に示した場合と同様に文字枠の左下
角)を基準とするX。
Y方向絶対座標値(X、Y)として、第6図(a)に示
す表現形式で表現される。ここでX、Yはそれぞれ12
ビツトの符号付き整数で表現される。
なお、第6図(a)においてXU、XLは上記Xのそれ
ぞれ上位フィールド(6ビツト)、下位フィールド(6
ビツト)であり、YU、YLは上記Yのそれぞれ上位フ
ィールド(6ビツト)、下位フィールド(6ビツト)で
ある。
これに対し、ヘビー・ウェイトHおよびライト・ウェイ
トLのメンバー・フォントの制御点座標は、標準ウェイ
トSの同じ文字の文字パターンの対応する制御点を基準
とするX、Y方向相対座標値(δX、δY)として、第
6図(b)に示す表現形式で表現される。ここでδX、
δYはそれぞれ6ビツトの符号付き整数で表現され、基
準となる制御点に対して−32〜+31の範囲で相対位
置表現できる数の対として用いられる。この表現形式に
よれば、文字枠全体に対し約±3%の範囲が表現できる
ので、通常はこれで十分である。なお、画数の少ない文
字の極太文字では、この範囲を越えることがあるが、例
外的であるのでこれについては従来通りの表現形式を適
用すればよく、このようにしてもフォント・ファミリー
全体のデータ量にはさほど影響を及ぼさない。第6図(
b)の基本表現形式を適用するだけでも、H,Lのメン
バー・フォントについて、SのメンバーΦフォントに比
較してほぼ1/2にフォントデータ量を圧縮することが
できる。
さて、メンバー・フォント全体を通してみると、同じ(
δX、δY)の値を持つ対が多数出現する。
そこで、この実施例では、第7図に示す表現形式を適用
することにより、フォント・ファミリーのフォントデー
タの一層のデータ圧縮を図るようにしている。即ち、(
δX、δY)の対のうち、出現頻度の高いものを各メン
バー・フォント毎に上位から所定数(ここでは60)選
び、これらが各エントリに設定された第8図に示すテー
ブル(デルタ・テーブルと称する)21をフォントデー
タの前に付しておくようにする。そして、第6図(b)
に示す形式の(文字パターンの輪郭の)制御点の相対座
標(δX、δY)の代わりに、同じ座標(δX、δY)
が設定されているデルタ・テーブル!l内エントリのエ
ントリ番号#Δで第7図(a)に示すように記述するよ
うにしている。ここでは、エントリ番号#ΔはO〜59
の範囲であり、2進表現すると “oooooo”〜“111011″ の範囲に納まる。一方、デルタ・テーブル21に存在し
ない(δX、δY)については、第6図(b)に示す形
式に代えて、その旨を示す所定の2値パターン “111100” に続けて第7図(b)に示すようにδX、δYを記述す
る。更に、相対座標値が−32〜+31の範囲に入らな
い制御点については、その旨を示す所定の2値パターン “111101” に続けて第7図(c)に示すように絶対座標値(X、Y
)それ自体を記述する。なお、この実施例では、相対座
標値が−32〜+31の範囲に入らない制御点でも、そ
の値の出現頻度が高いものについてはデルタ・テーブル
21に登録するようにしている。そこでデルタ・テーブ
ル21に登録するδX、δYについては、X、Y同様に
1・2ビツトの符号付きのデータで表現している。この
ようにしても、デルタ・テーブル21に必要な記憶容量
はさほど増加せず、各制御点毎に第7図(c)の形式の
座標を用いる場合に比べ、データ量を減らすことができ
る。
以上、第7図(a)〜(c)および第8図を参照して、
制御点の座標位置を示すための表現形式について説明し
た。ヘビー・ウェイトHおよびライト・ウェイトLのメ
ンバー・フォントに関する殆どの制御点は、第7図(a
)の形式で表現できる。このため、第7図(a)〜(C
)の3つの座標表現形式のいずれかを制御点に合せて選
択的に適用することにより、ヘビー・ウェイトHおよび
ライト・ウェイトLのメンバー・フォントのフォントデ
ータ量を標準ウェイトSのメンバー・フォントのそれの
ほぼ1/4に圧縮することができる。
このような表現形式を適用した場合、CPUl0は、ス
テップS2またはステップS7で前記した座標補間を行
う際には、第7図(a)または(b)の形式で表現され
たHまたはLの制御点座標に対しては、Sの対応制御点
座標を用いて絶対値表現に変換する。そして、座標補間
によって新たに生成する指定ウェイト値Wの制御点座標
は、全て絶対値で表現する。なお、標準ウェイトSの制
御点座標を、例えば先頭の制御点については絶対座標値
で、残りの制御点については先行制御点からの相対座標
値で表現することにより、標準ウェイトSのフォントデ
ータ量を減らすことも可能である。
また、新たに生成する指定ウェイト値Wの制御点座標に
ついても、この標準ウェイトSと同様の表現形式を適用
することも可能である。
なお、第7図では、上記2値パターンが“111110
”111111″ の場合の使途が示されていないが、これは本発明に直接
関係しない目的で使用されるものであることから、説明
を省略する。
ここで、ヘビー・ウェイトHまたはライト・つエイトL
のメンバー・フォント内の成る文字パターンの幾つかの
制御点に関するフォントデータの構造とデルタ・テーブ
ル21との対応例を第9図に示す。但し、ここでは、1
つの文字の1つの制御点の座標を、H,L、Sの3つの
ウェイトについて高速でフォントROM 12から読出
せるように、第10図に示す形式で纏めてフォントRO
M 12に格納するようにしている。
第10図の形式について以下に詳述する。まず成る文字
のi番目の閉曲線のj番目の制御点についての代表的な
記録形式を同図(a)に示す。
ここには、成る文字の標章ウェイトSの文字パターンの
(i番目の閉曲線のj番目の)制御点ps(+、j)の
座標X s(i、j)、 Y s(1,j)の後に、ラ
イト・ウェイトLの文字パターンの対応制御点PL(1
,j)の位置情報(相対座標値)が設定されているライ
ト ・ウェイト用デルタ・テーブル(第8図のデルタ・テー
ブル21に相当)のエントリ番号#Δ(1,j)が続き
、更にその後にヘビー・ウェイトHの文字パターンの対
応制御点P))(i、j)の位置情報が設定されている
ヘビー−ウェイト用デルタ・テーブルのエントリ番号#
ユ(1,j)が続くように記録された様子が示されてい
る。
上記した第10図(a)の記録形式が、同じ文字に関す
る標準ウェイトS1ライト・ウェイトLおよびヘビー・
ウェイトHのi番目の閉曲線のj番目の制御点(1,0
の制御点座標の一般的な記録形式である。但し、対応制
御点の位置情報(相対座標値)がデルタ・テーブルに登
録されていないライト・ウェイトしまたはヘビー・ウェ
イトHの制御点座標、更には上記のようにデルタ・テー
ブルに登録されておらず、しかも標準フォントSの対応
制御点よりも大幅に離れた(ここでは文字枠の±3%程
度以上)位置にある制御点の座標についてはこの限りで
ない。このような場合の記録形式の具体例を第10図(
b)、(c)に示す。
まず第10図(b)は、制御点P)I(1,j)の)口
封座標値がヘビー・ウェイト用デルタ・テーブルに存在
しない場合の記録形式を示す。また第10図(c)は、
制御点PL(1,j)の相対′座標値がライト・ウェイ
ト用デルタ・テーブルに存在せず、且つ制御点P!+(
1,j)の相対座標値が極めて大きく (文字枠の±3
%程度以上)ヘビー・ウェイト用デルタ・テーブルにも
存在しない場合の記録形式を示す。
さて、ヘビー・ウェイトHおよびライト・ウェイI−L
のメンバー・フォントのフォントデータ瓜を減らすとい
う目的は、第7図の形式の制御点座標で十分に達成でき
る。しかし、用途(書体)によっては、δX、δYの値
が大きくなり、符号付きの6ビツトで表現可能な範囲(
文字枠の一1/32〜+1/32、即ち約±3%の範囲
)に入らない制御点が多いものがある。このような特殊
用途の書体のフォント・ファミリーを考慮し、第7図(
a)〜(c)の形式に代えて第11図(a)〜(c)に
示す形式の制御点データを用い、第8図のデルタ・テー
ブル21に代えて第12図に示すデルタ・テーブル31
を用いることも可能である。第11図の形式が第7図の
それと異なる点は、同図(b)に示すように6ビツト表
現のδX。
δYが符号付きでなくて絶対値表現となっていることで
あり、符号sx、syをδX、δYの前に付される6ビ
ツト2値パターン “1110SxSy 中に設けるようにしたことである。この第11図(b)
の形式では、文字枠の一1/16〜+1/16、即ち約
±6%の範囲にある1δXδY1について表現できる。
[発明の効果] 以上詳述したようにこの発明によれば、1つのフォント
・ファミリーとしてウェイトの異なる僅かな数のメンバ
ー・フォントを用意するだけで、これらのメンバー・フ
ォントをもとに利用者の要求するウェイトのメンバー・
フォントが、あたかも同じ設計思想で同じフォント・フ
ァミリーのメンバー・フォントとして設計されたもので
あるかのように、元のメンバー・フォントとのパターン
形状の統一性を、保った状態で生成できる。
【図面の簡単な説明】
第1図はこの発明に直接関係するフォントデータ生成処
理手順の一実施例を示すフローチャート、第2図は第1
図の手順を実現する高品質文字パターン生成装置の一実
施例を示すブロック構成図、第3図は同一文字に関する
ウェイトの異なる3つのパターンを重ね合せた様子を示
す図、第4図および第5図は線形補間による指定ウェイ
ト値の制御点座標の生成原理を説明するための図、第6
図は制御点座標の表現形式の基本形を示す図、第7図(
a)〜(c)は制御点座標の表現形式の一実施例を示す
図、第8図は第7図(a)の形式の制御点座標でエント
リ指定されるデルタ・テーブルの構造を示す図、第9図
は第7図の形式で示す制御点座標から成るフォントデー
タの構造と第8図のデルタ・テーブルとの対応例を示す
図、第10図は同一フォント・ファミリーを構成するウ
ェイトの異なる3つの各メンバー・フォント内の同一文
字に関する対応制御点の制御点座標の記録形式の一例を
示す図、第11図および第12図はそれぞれ第7図およ
び第8図の変形例を示す図、第13図は文字パターンの
輪郭を記述するのに必要な制御点を説明するための図、
第14図は第13図の文字パターンと設計思想が同じで
線幅(ウェイト)が異なる文字パターンを示す図である
。 lO・・・CPU、11・・・主メモリ、12・・・フ
ォントROM (第1フォント記憶手段)、13・・・
フォントRAM (第2フォント記憶手段’) 、21
.31・・・デルタ・テーブル。 出願人代理人 弁理士 鈴江武彦 PH(0,0) 第3 図 第4図 第5図 第1図 (a) 第6図 第7 図 第10 図 第9図 エントリ −g 3コ 第11 図 @13 図 一シ14 図

Claims (2)

    【特許請求の範囲】
  1. (1)1つのフォント・ファミリーを構成するウェイト
    が異なる少なくとも2つの第1メンバー・フォントの各
    文字の輪郭線を記述するための各制御点の位置を示す制
    御点位置データを含むフォントデータが予め記憶された
    第1フォント記憶手段と、上記第1メンバー・フォント
    のフォントデータをもとに生成される第2メンバー・フ
    ォントのフォントデータが格納される第2フォント記憶
    手段と、外部指定されたウェイトを示すウェイト値を受
    取る受取手段と、この受取手段によって受取られたウェ
    イト値について、そのウェイト値をもとに、上記第1フ
    ォント記憶手段に記憶されている上記第1メンバー・フ
    ォントの各制御点位置データを補間して、このウェイト
    値に固有の第2メンバー・フォントの各制御点の制御点
    位置データを求め、上記第2フォント記憶手段に順に書
    込む補間手段とを具備し、外部指定のウェイトの第2メ
    ンバー・フォントのフォントデータを上記第2フォント
    記憶手段中に生成するようにしたことを特徴とするフォ
    ントデータ生成方式。
  2. (2)上記第1メンバー・フォントの1つが、標準ウェ
    イトのメンバー・フォントであり、別の1つが最大また
    は最小ウェイトのメンバー・フォントであることを特徴
    とする第1請求項記載のフォントデータ生成方式。
JP63216808A 1988-08-31 1988-08-31 フォントデータ生成方式 Pending JPH0263856A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63216808A JPH0263856A (ja) 1988-08-31 1988-08-31 フォントデータ生成方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63216808A JPH0263856A (ja) 1988-08-31 1988-08-31 フォントデータ生成方式

Publications (1)

Publication Number Publication Date
JPH0263856A true JPH0263856A (ja) 1990-03-05

Family

ID=16694210

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63216808A Pending JPH0263856A (ja) 1988-08-31 1988-08-31 フォントデータ生成方式

Country Status (1)

Country Link
JP (1) JPH0263856A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02306298A (ja) * 1989-05-20 1990-12-19 Ricoh Co Ltd ベクトルフオントによる文字パターン発生機能を備えた情報処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02306298A (ja) * 1989-05-20 1990-12-19 Ricoh Co Ltd ベクトルフオントによる文字パターン発生機能を備えた情報処理装置

Similar Documents

Publication Publication Date Title
JPH0244482A (ja) ラスタ化方法
JP2005521903A (ja) ストローク中心線技術に基づく曲線字形の復元表示方法
JP3145509B2 (ja) 文字生成方法及びその装置
JP2909273B2 (ja) アウトライン・フォントの線幅調整方法および装置
JPH0318193B2 (ja)
EP0095536B1 (en) The representation of character images in a compact form for computer storage
US5519412A (en) Pattern processing method
JP3009525B2 (ja) ベクトル画像描画装置
JPH0263856A (ja) フォントデータ生成方式
JPH0687217B2 (ja) 文字パターン発生表示装置
JP2669539B2 (ja) 文字出力方法および文字出力装置
JP3146771B2 (ja) フォントラスタライズ装置およびその方法
KR940003701B1 (ko) 컴퓨터를 사용한 문자도형 발생방법
JPH04280296A (ja) 輪郭線データ処理装置
JPH0263857A (ja) フォントデータ記録方法および同記録方法で記録されたフォントデータを利用する高品質文字パターン生成装置
JP3528620B2 (ja) 文字描画装置及び文字描画方法
JPH0392897A (ja) パターン発生装置
JPH01272460A (ja) 文字の発生方法及び装置
KR910002799B1 (ko) 컴퓨터시스템용 문자 발생방법과 그 장치
CN120516204A (zh) 一种在雕刻机上独立实现文字雕刻的方法及系统
JP2835056B2 (ja) 高品質文字パターン発生方式
TW457439B (en) High quality character generation device
JP2803746B2 (ja) 文字処理方法及びその装置
JPS62157089A (ja) ベクトル文字の作成方法
JP2965429B2 (ja) 文字出力装置