JP3442089B2 - アウトラインフォントファイルを使用したアウトラインフォントの形成方法 - Google Patents

アウトラインフォントファイルを使用したアウトラインフォントの形成方法

Info

Publication number
JP3442089B2
JP3442089B2 JP09500892A JP9500892A JP3442089B2 JP 3442089 B2 JP3442089 B2 JP 3442089B2 JP 09500892 A JP09500892 A JP 09500892A JP 9500892 A JP9500892 A JP 9500892A JP 3442089 B2 JP3442089 B2 JP 3442089B2
Authority
JP
Japan
Prior art keywords
subroutine
outline
information
data
sub
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 - Lifetime
Application number
JP09500892A
Other languages
English (en)
Other versions
JPH06110440A (ja
Inventor
稔 境井
卓 岡崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP09500892A priority Critical patent/JP3442089B2/ja
Publication of JPH06110440A publication Critical patent/JPH06110440A/ja
Application granted granted Critical
Publication of JP3442089B2 publication Critical patent/JP3442089B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ヒンティング情報を有
するアウトラインフォントファイルを使用したアウトラ
インフォントの形成方法に関する。
【0002】
【従来の技術】デスクトップパブリッシング、パーソナ
ルコンピュータ、ワードプロセッサ、ディジタルファッ
クス等においては、その装置内に文字フォントデータが
用意されている。斯るフォントデータは、通常、ドット
パターン方式、アウトライン方式、あるいはそれらの併
用方式の何れかの方式によって保持されている。そし
て、アウトラインフォントを表示、印刷するために、そ
のフォント表現はドットパターンに変換される。
【0003】従来、アウトラインフォントをドットイメ
ージに変換するラスタライズにおいては、フォントファ
イルによって輪郭点の座標データと各輪郭点のヒンティ
ングに関する属性データが与えられ、実際のヒンティン
グ処理は、これら座標データと属性データを用いてラス
タライザが行っていた。
【0004】ここで、ヒンティング処理とは、アウトラ
インを美しく整形するための処理をいい、例えば、特開
昭62−182884号公報に記載の文字発生方式など
種々の方法が提案されている。
【0005】
【発明が解決しようとする課題】ところで、最近Tru
e Typeなどの新しいフォーマットが提案された。
これは、フォントファイルの中にプログラムとしてのヒ
ント情報が含まれていて、ラスタライザはそれを実行す
ることによってヒンティング処理を行うものである。こ
のように、従来ラスタライザが行っていたヒンティング
処理を、フォントファイル中にプログラムとして組み込
む必要があり、このためフォントファイルのサイズが非
常に大きくなるという問題があった。
【0006】本発明の目的は、ヒント情報のサイズを小
さくすることにより、ファイルサイズを圧縮したアウト
ラインフォントファイルを使用したアウトラインフォン
トの形成方法を提供することにある。
【0007】
【課題を解決するための手段】前記目的を達成するため
に、請求項1記載の発明では、複数のグリフデータと該
データを規定する共有データとを有し、前記各グリフデ
ータは、輪郭点の集合であるアウトライン情報と該アウ
トライン情報を制御する命令列であるヒント情報からな
り、前記共有データは、前記命令列から呼び出されるサ
ブルーチン群を含み、該各サブルーチンはアウトライン
情報を制御する命令列によって構成されているアウトラ
インフォントファイルを使用したアウトラインフォント
の形成方法であって、前記ヒント情報は、前記各輪郭点
を制御するためのサブルーチン番号列と終了条件を第1
のサブルーチンに渡すための命令列から構成され、前記
サブルーチン番号と前記輪郭点番号とが所定の対応関係
にあり、該呼び出された第1のサブルーチンは、前記受
け取った番号のサブルーチンを順次呼び出すことを特徴
としている。
【0008】請求項2記載の発明では、前記サブルーチ
ン番号は、複数のサブルーチン番号の組み合わせからな
ることを特徴としている。
【0009】
【作用】アウトラインフォントファイルは、n個のグリ
フデータと輪郭点を制御するためのサブルーチンを含む
共有データによって構成される。グリフデータは、アウ
トライン情報とヒント情報からなる。アウトライン情報
は、連続的に番号を付けられた輪郭点とその座標データ
からなり、ヒント情報は、アウトライン情報を制御する
命令列から構成される。これにより、フォントファイル
中にヒント情報を含めることが可能となると共に、該ヒ
ント情報のサイズを小さくすることができる。
【0010】
【実施例】以下、本発明の一実施例を図面を用いて具体
的に説明する。 〈実施例1〉 図1は、本実施例のアウトラインフォントファイルの構
成を示す図で、n個のグリフデータ1(グリフ1,グリ
フ2,・・・グリフn)と共有データ2によってファイ
ルが構成されている。
【0011】図2は、グリフデータ1の構成を示す図
で、グリフデータは、アウトライン情報11とヒント情
報12からなっている。そして、アウトライン情報11
は、連続的に番号を付けられた輪郭点とその座標データ
からなり、ヒント情報12は、アウトライン情報11を
制御する命令列(例えば、点1を右に1ドットシフトす
るという命令など)から構成されている。
【0012】図3は、共有データ2の中に輪郭点を制御
するためのサブルーチン群が含まれている図を示し、例
えばサブルーチン1は、輪郭点を上に1ビットシフト制
御する命令、サブルーチン2は、輪郭点を下に1ビット
シフト制御する命令、サブルーチンmは、幅を制御する
命令である。
【0013】図4は、グリフデータに含まれる輪郭点1
を制御するためにサブルーチンf1(1≦f1≦m)を
呼び出し、輪郭点2を制御するためにサブルーチンf2
(1≦f2≦m)を呼び出し、・・・、輪郭点nを制御
するためにサブルーチンfn(1≦fn≦m)を呼び出
す様子を示す図である。ここに示したf1,f2,・・
・fnは、サブルーチンをn個用意することを意味する
ものではなく、f1は、点1を渡すべきサブルーチンで
あることを表している。輪郭点1からnが同一のサブル
ーチンfiによって制御されたり、あるいは各点が異な
るサブルーチンによって制御されたりする。
【0014】すなわち、例えば、 call 5(1) call 7(2) call 4(3) call 3(4) call 1(5) のとき、まず、サブルーチン5が呼び出され、サブルー
チン5には点1が渡され、サブルーチン5は、点1(x
1,y1)に対して例えば1ビットの右シフト処理を行
い、次いでサブルーチン7が呼び出され、サブルーチン
7には点2が渡され、点2(x2,y2)に対して所定
のヒンティング処理が行われ、以下同様にして全ての点
に対して所定のヒンティング処理が行われる。
【0015】この実施例のヒンティング情報では、各点
番号を適切なサブルーチンに渡す命令構成となっている
ので、その処理順序を入れ替えてもよい。
【0016】〈実施例2〉 実施例2では、処理順番を点番号の順に限定する。点番
号は1からnまで順番に並んでいるので、実施例1の点
番号に関する情報が不要になる。つまり、図5に示すよ
うに、点番号の順に、それぞれに適用されるべきサブル
ーチン番号を並べればよい。
【0017】本実施例のヒント情報は、基本的にはサブ
ルーチン呼び出しが一つあるだけである。すなわち、図
6に示すようにn個の点それぞれに適用されるべきサブ
ルーチン番号f1,f2,f3,・・・fnを並べてサ
ブルーチンfpを呼び出すものである。ただし、ここで
は終了条件として点の個数(サブルーチンの個数)を与
えている。
【0018】前述した例を実施例2のヒント情報で書き
直すと、 call 10(5,5,7,4,3,1) となる。
【0019】図7は、サブルーチンfpの動作を示すフ
ローチャートであり、受け取った点の個数だけ、順次与
えられたサブルーチンを呼び出していく。上記した例で
は、 サブルーチン 10 call 5(1) call 7(2) call 4(3) call 3(4) call 1(5) となる。その際、点iにはi番目のサブルーチンを適用
していく。なお、終了条件として点の個数の他に、例え
ばサブルーチン番号列の最後にあり得ない番号を置くな
ど種々の方法を用いることができる。
【0020】〈実施例3〉 実際にヒンティング処理を行う場合、点を制御するため
のサブルーチンの種類は、それほど多くはない。そこ
で、実施例3では、一つのサブルーチン番号を渡すのに
用いたデータ長に、複数のサブルーチン番号を挿入する
ことが可能である場合、さらにファイルサイズを圧縮す
ることできる。
【0021】本実施例のヒント情報は、基本的にはサブ
ルーチン呼び出しが一つあるだけである。すなわち、図
8に示すように、例えば8ビットのデータとして渡すべ
きサブルーチン番号を4ビット(1ニブル)ずつ、計2
つ組み合わせてサブルーチンfqに渡すものである。終
了条件は、実施例2と同様に点の個数を与える例を示
す。
【0022】図9は、サブルーチンfqの動作を示すフ
ローチャートであり、受け取った点の個数だけ、サブル
ーチン番号列を解析し、最初の点には上位ニブルに収め
られたサブルーチン番号をまず適用し、次の点には下位
ニブルのサブルーチン番号を適用することを繰り返す。
この例では、8ビットのサブルーチン番号フィールドに
2ニブルのデータを詰める例を示したが、本実施例はこ
れに限定されるものではなく、例えば16ビットに4ニ
ブル、16ビットに5ビットずつ3データを詰めるなど
他の方法を用いることができる。
【0023】また、上記した実施例では、全てのサブル
ーチンを平等に扱う例を示したが、実際には各サブルー
チンの使用頻度に差があるので、使用頻度の低いサブル
ーチンは長いデータ幅で表現し、使用頻度の高いサブル
ーチンは短いデータ幅で表現するなどの方法を採ること
によって、さらにフォントファイルサイズを圧縮するこ
とも可能である。
【0024】
【発明の効果】以上、説明したように、本発明によれ
ば、以下に記載の効果を奏する。すなわち、グリフ数が
8000個、各グリフに含まれる輪郭点数の平均が20
0個の日本語フォントファイルを考える。また、ラスタ
ライザはスタックマシンとして実現されていて、ヒント
データなどは全てバイト列として表現されるものとす
る。また、輪郭点iに施されるサブルーチンの番号をf
iで表現する。 (1)従来ラスタライザによって行われたヒンティング
処理を、フォントファイル中に含めることが可能にな
り、従ってフォントファイルの可用性を高めることがで
きる。 (2)従来行ってきたヒンティング処理を容易に本方式
に置き換えることが可能になる。その際にヒント情報
は、各点毎に PUSH 点i,fi CALL のように、4バイトを要するものとすると、フォントフ
ァイル中のヒント情報の量は、4×200×8,000
=6,400,000となり、約6メガバイトとなり、
ヒント情報のサイズを小さくすることが可能となる。
(3)可用性を変えることなく、更にヒント情報のサイ
ズを小さくすることが可能となる。すなわち、ヒント情
報は、各グリフ毎に、 PUSH fn,fn−1,・・・,f1,n,サブル
ーチン番号fp CALL のように、n+4バイトつまり204バイトを要する。
従って、フォントファイル中のヒント情報の量は、20
4×8,000=1,632,000となり、約1.6
メガバイトとなり、ヒント情報のサイズを更に小さくす
ることが可能となる。 (4)可用性を変えることなく、より一層ヒント情報の
サイズを小さくすることが可能となる。すなわち、輪郭
点の個数nが偶数(n=2m)であり、サブルーチン番
号を4ビットずつで表現し、これらを2つずつ8ビット
に収めたものをf(1,2)と表すことにすれば、ヒン
ト情報は、各グリフ毎に、 PUSH f(n,n−1),・・・,f(2,1),
n,サブルーチン番号fp CALL のように、(n/2)+4つまり104バイトを要す
る。従って、フォントファイル中のヒント情報の量は、
104×8,000=832,000となり、約0.8
メガバイトとなり、ヒント情報のサイズをより一層小さ
くすることが可能となる。
【図面の簡単な説明】
【図1】本発明のアウトラインフォントファイルの構成
を示す図である。
【図2】グリフデータの構成を示す図である。
【図3】共有データの中に輪郭点を制御するためのサブ
ルーチンが含まれている図である。
【図4】輪郭点を制御するためにサブルーチンを呼び出
す様子を示す図である。
【図5】点番号とサブルーチン番号の対応を示す図であ
る。
【図6】輪郭点を制御するためにサブルーチンを呼び出
す他の実施例の図である。
【図7】他の実施例におけるサブルーチンの動作を示す
フローチャートである。
【図8】輪郭点を制御するためにサブルーチンを呼び出
す、さらに他の実施例の図である。
【図9】さらに他の実施例におけるサブルーチンの動作
を示すフローチャートである。
【符号の説明】
1 グリフデータ 2 共有データ 11 アウトライン情報 12 ヒント情報
フロントページの続き (56)参考文献 特開 平2−278389(JP,A) 大河内勝司,True Typeの日 本語化,インターフェース,日本,CQ 出版株式会社,1991年11月 1日,/17 /11,155−171 (58)調査した分野(Int.Cl.7,DB名) G09G 5/00 - 5/42 G06F 3/14 G06F 17/21 B41J 2/485

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数のグリフデータと該データを規定す
    る共有データとを有し、前記各グリフデータは、輪郭点
    の集合であるアウトライン情報と該アウトライン情報を
    制御する命令列であるヒント情報からなり、前記共有デ
    ータは、前記命令列から呼び出されるサブルーチン群を
    含み、該各サブルーチンはアウトライン情報を制御する
    命令列によって構成されているアウトラインフォントフ
    ァイルを使用したアウトラインフォントの形成方法であ
    って、前記ヒント情報は、前記各輪郭点を制御するため
    のサブルーチン番号列と終了条件を第1のサブルーチン
    に渡すための命令列から構成され、前記サブルーチン番
    号と前記輪郭点番号とが所定の対応関係にあり、該呼び
    出された第1のサブルーチンは、前記受け取った番号の
    サブルーチンを順次呼び出すことを特徴とするアウトラ
    インフォントファイルを使用したアウトラインフォント
    の形成方法
  2. 【請求項2】 前記サブルーチン番号は、複数のサブル
    ーチン番号の組み合わせからなることを特徴とする請求
    項1記載のアウトラインフォントファイルを使用したア
    ウトラインフォントの形成方法
JP09500892A 1992-04-15 1992-04-15 アウトラインフォントファイルを使用したアウトラインフォントの形成方法 Expired - Lifetime JP3442089B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP09500892A JP3442089B2 (ja) 1992-04-15 1992-04-15 アウトラインフォントファイルを使用したアウトラインフォントの形成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP09500892A JP3442089B2 (ja) 1992-04-15 1992-04-15 アウトラインフォントファイルを使用したアウトラインフォントの形成方法

Publications (2)

Publication Number Publication Date
JPH06110440A JPH06110440A (ja) 1994-04-22
JP3442089B2 true JP3442089B2 (ja) 2003-09-02

Family

ID=14125918

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09500892A Expired - Lifetime JP3442089B2 (ja) 1992-04-15 1992-04-15 アウトラインフォントファイルを使用したアウトラインフォントの形成方法

Country Status (1)

Country Link
JP (1) JP3442089B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0735496A1 (en) * 1995-03-30 1996-10-02 Eastern Graphics Technology Co. Ltd. A storage compression process for structural character & graphics
US8947438B2 (en) * 2011-08-01 2015-02-03 Microsoft Corporation Reducing font instructions

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
大河内勝司,True Typeの日本語化,インターフェース,日本,CQ出版株式会社,1991年11月 1日,/17/11,155−171

Also Published As

Publication number Publication date
JPH06110440A (ja) 1994-04-22

Similar Documents

Publication Publication Date Title
US5129013A (en) Graphics image editor
US5910805A (en) Method for displaying bitmap derived text at a display having limited pixel-to-pixel spacing resolution
US5990899A (en) Method for compressing journal streams
EP0537030B1 (en) Character or graphic processing method
JP3791259B2 (ja) アウトラインスムージング処理方法
JP3442089B2 (ja) アウトラインフォントファイルを使用したアウトラインフォントの形成方法
JP2833092B2 (ja) 輪郭線データの圧縮装置および復元装置
CA1309778C (en) Graphics image editor
JP3391822B2 (ja) アウトラインフォントファイル圧縮方法
JPS63235986A (ja) 文字出力装置
JP3721766B2 (ja) 文書データ処理装置およびそのプログラム記録媒体
WO2003105120A1 (ja) 表示装置、表示方法、表示プログラムおよび表示プログラムを記録した記録媒体
JPH02132492A (ja) 文字パターン作成方式
JPS62116996A (ja) ドツト図形の細線化方法
JPS63116192A (ja) イメ−ジデ−タ出力装置
JPH0524553B2 (ja)
JPH06325111A (ja) Cad装置
JPH04128794A (ja) グラフイツク編集装置
JPH07253971A (ja) 外字作成装置
JPH0264598A (ja) 図形文字の展開方法
JPH10333661A (ja) 文字作成装置および文字作成方法ならびに文字作成プログラムを記録した記録媒体
JPH0968961A (ja) キャラクタデータ変換装置
JPH06103287A (ja) 事務処理装置
JPH1040322A (ja) 印刷装置
JPH04174495A (ja) 文字パターン作成装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080620

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090620

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090620

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100620

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110620

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110620

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120620

Year of fee payment: 9

EXPY Cancellation because of completion of term