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
Links
Landscapes
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
Description
するアウトラインフォントファイルを使用したアウトラ
インフォントの形成方法に関する。
ルコンピュータ、ワードプロセッサ、ディジタルファッ
クス等においては、その装置内に文字フォントデータが
用意されている。斯るフォントデータは、通常、ドット
パターン方式、アウトライン方式、あるいはそれらの併
用方式の何れかの方式によって保持されている。そし
て、アウトラインフォントを表示、印刷するために、そ
のフォント表現はドットパターンに変換される。
ージに変換するラスタライズにおいては、フォントファ
イルによって輪郭点の座標データと各輪郭点のヒンティ
ングに関する属性データが与えられ、実際のヒンティン
グ処理は、これら座標データと属性データを用いてラス
タライザが行っていた。
インを美しく整形するための処理をいい、例えば、特開
昭62−182884号公報に記載の文字発生方式など
種々の方法が提案されている。
e Typeなどの新しいフォーマットが提案された。
これは、フォントファイルの中にプログラムとしてのヒ
ント情報が含まれていて、ラスタライザはそれを実行す
ることによってヒンティング処理を行うものである。こ
のように、従来ラスタライザが行っていたヒンティング
処理を、フォントファイル中にプログラムとして組み込
む必要があり、このためフォントファイルのサイズが非
常に大きくなるという問題があった。
さくすることにより、ファイルサイズを圧縮したアウト
ラインフォントファイルを使用したアウトラインフォン
トの形成方法を提供することにある。
に、請求項1記載の発明では、複数のグリフデータと該
データを規定する共有データとを有し、前記各グリフデ
ータは、輪郭点の集合であるアウトライン情報と該アウ
トライン情報を制御する命令列であるヒント情報からな
り、前記共有データは、前記命令列から呼び出されるサ
ブルーチン群を含み、該各サブルーチンはアウトライン
情報を制御する命令列によって構成されているアウトラ
インフォントファイルを使用したアウトラインフォント
の形成方法であって、前記ヒント情報は、前記各輪郭点
を制御するためのサブルーチン番号列と終了条件を第1
のサブルーチンに渡すための命令列から構成され、前記
サブルーチン番号と前記輪郭点番号とが所定の対応関係
にあり、該呼び出された第1のサブルーチンは、前記受
け取った番号のサブルーチンを順次呼び出すことを特徴
としている。
ン番号は、複数のサブルーチン番号の組み合わせからな
ることを特徴としている。
フデータと輪郭点を制御するためのサブルーチンを含む
共有データによって構成される。グリフデータは、アウ
トライン情報とヒント情報からなる。アウトライン情報
は、連続的に番号を付けられた輪郭点とその座標データ
からなり、ヒント情報は、アウトライン情報を制御する
命令列から構成される。これにより、フォントファイル
中にヒント情報を含めることが可能となると共に、該ヒ
ント情報のサイズを小さくすることができる。
的に説明する。 〈実施例1〉 図1は、本実施例のアウトラインフォントファイルの構
成を示す図で、n個のグリフデータ1(グリフ1,グリ
フ2,・・・グリフn)と共有データ2によってファイ
ルが構成されている。
で、グリフデータは、アウトライン情報11とヒント情
報12からなっている。そして、アウトライン情報11
は、連続的に番号を付けられた輪郭点とその座標データ
からなり、ヒント情報12は、アウトライン情報11を
制御する命令列(例えば、点1を右に1ドットシフトす
るという命令など)から構成されている。
するためのサブルーチン群が含まれている図を示し、例
えばサブルーチン1は、輪郭点を上に1ビットシフト制
御する命令、サブルーチン2は、輪郭点を下に1ビット
シフト制御する命令、サブルーチンmは、幅を制御する
命令である。
を制御するためにサブルーチンf1(1≦f1≦m)を
呼び出し、輪郭点2を制御するためにサブルーチンf2
(1≦f2≦m)を呼び出し、・・・、輪郭点nを制御
するためにサブルーチンfn(1≦fn≦m)を呼び出
す様子を示す図である。ここに示したf1,f2,・・
・fnは、サブルーチンをn個用意することを意味する
ものではなく、f1は、点1を渡すべきサブルーチンで
あることを表している。輪郭点1からnが同一のサブル
ーチンfiによって制御されたり、あるいは各点が異な
るサブルーチンによって制御されたりする。
チン5には点1が渡され、サブルーチン5は、点1(x
1,y1)に対して例えば1ビットの右シフト処理を行
い、次いでサブルーチン7が呼び出され、サブルーチン
7には点2が渡され、点2(x2,y2)に対して所定
のヒンティング処理が行われ、以下同様にして全ての点
に対して所定のヒンティング処理が行われる。
番号を適切なサブルーチンに渡す命令構成となっている
ので、その処理順序を入れ替えてもよい。
号は1からnまで順番に並んでいるので、実施例1の点
番号に関する情報が不要になる。つまり、図5に示すよ
うに、点番号の順に、それぞれに適用されるべきサブル
ーチン番号を並べればよい。
ルーチン呼び出しが一つあるだけである。すなわち、図
6に示すようにn個の点それぞれに適用されるべきサブ
ルーチン番号f1,f2,f3,・・・fnを並べてサ
ブルーチンfpを呼び出すものである。ただし、ここで
は終了条件として点の個数(サブルーチンの個数)を与
えている。
直すと、 call 10(5,5,7,4,3,1) となる。
ローチャートであり、受け取った点の個数だけ、順次与
えられたサブルーチンを呼び出していく。上記した例で
は、 サブルーチン 10 call 5(1) call 7(2) call 4(3) call 3(4) call 1(5) となる。その際、点iにはi番目のサブルーチンを適用
していく。なお、終了条件として点の個数の他に、例え
ばサブルーチン番号列の最後にあり得ない番号を置くな
ど種々の方法を用いることができる。
のサブルーチンの種類は、それほど多くはない。そこ
で、実施例3では、一つのサブルーチン番号を渡すのに
用いたデータ長に、複数のサブルーチン番号を挿入する
ことが可能である場合、さらにファイルサイズを圧縮す
ることできる。
ルーチン呼び出しが一つあるだけである。すなわち、図
8に示すように、例えば8ビットのデータとして渡すべ
きサブルーチン番号を4ビット(1ニブル)ずつ、計2
つ組み合わせてサブルーチンfqに渡すものである。終
了条件は、実施例2と同様に点の個数を与える例を示
す。
ローチャートであり、受け取った点の個数だけ、サブル
ーチン番号列を解析し、最初の点には上位ニブルに収め
られたサブルーチン番号をまず適用し、次の点には下位
ニブルのサブルーチン番号を適用することを繰り返す。
この例では、8ビットのサブルーチン番号フィールドに
2ニブルのデータを詰める例を示したが、本実施例はこ
れに限定されるものではなく、例えば16ビットに4ニ
ブル、16ビットに5ビットずつ3データを詰めるなど
他の方法を用いることができる。
ーチンを平等に扱う例を示したが、実際には各サブルー
チンの使用頻度に差があるので、使用頻度の低いサブル
ーチンは長いデータ幅で表現し、使用頻度の高いサブル
ーチンは短いデータ幅で表現するなどの方法を採ること
によって、さらにフォントファイルサイズを圧縮するこ
とも可能である。
ば、以下に記載の効果を奏する。すなわち、グリフ数が
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
メガバイトとなり、ヒント情報のサイズをより一層小さ
くすることが可能となる。
を示す図である。
ルーチンが含まれている図である。
す様子を示す図である。
る。
す他の実施例の図である。
フローチャートである。
す、さらに他の実施例の図である。
を示すフローチャートである。
Claims (2)
- 【請求項1】 複数のグリフデータと該データを規定す
る共有データとを有し、前記各グリフデータは、輪郭点
の集合であるアウトライン情報と該アウトライン情報を
制御する命令列であるヒント情報からなり、前記共有デ
ータは、前記命令列から呼び出されるサブルーチン群を
含み、該各サブルーチンはアウトライン情報を制御する
命令列によって構成されているアウトラインフォントフ
ァイルを使用したアウトラインフォントの形成方法であ
って、前記ヒント情報は、前記各輪郭点を制御するため
のサブルーチン番号列と終了条件を第1のサブルーチン
に渡すための命令列から構成され、前記サブルーチン番
号と前記輪郭点番号とが所定の対応関係にあり、該呼び
出された第1のサブルーチンは、前記受け取った番号の
サブルーチンを順次呼び出すことを特徴とするアウトラ
インフォントファイルを使用したアウトラインフォント
の形成方法。 - 【請求項2】 前記サブルーチン番号は、複数のサブル
ーチン番号の組み合わせからなることを特徴とする請求
項1記載のアウトラインフォントファイルを使用したア
ウトラインフォントの形成方法。
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)
| 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 |
-
1992
- 1992-04-15 JP JP09500892A patent/JP3442089B2/ja not_active Expired - Lifetime
Non-Patent Citations (1)
| 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 |