JPH1031472A - 段階的表現可能フォント、その変換方法およびレンダリング方法 - Google Patents
段階的表現可能フォント、その変換方法およびレンダリング方法Info
- Publication number
- JPH1031472A JPH1031472A JP9084193A JP8419397A JPH1031472A JP H1031472 A JPH1031472 A JP H1031472A JP 9084193 A JP9084193 A JP 9084193A JP 8419397 A JP8419397 A JP 8419397A JP H1031472 A JPH1031472 A JP H1031472A
- Authority
- JP
- Japan
- Prior art keywords
- information
- font
- character
- point
- stepwise
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/22—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
- G09G5/24—Generation of individual character patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0002—Handling the output data
- G06K2215/004—Generic data transformation
- G06K2215/0042—Rasterisation
- G06K2215/0045—Converting outline to bitmap
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Controls And Circuits For Display Device (AREA)
- Dot-Matrix Printers And Others (AREA)
Abstract
り可変できる段階的表現可能フォントを提供すること。 【解決手段】 段階的表現可能フォントは環境と目的に
よりフォントディスプレイの速度とフォントの品位(Qua
lity) を適切に相互調節できる機能を持っている。例え
ば、ハードウェアの速度が相対的に遅くてフォントの高
品位が要求されない場合、フォントのデータ中一部のみ
を伝送してディスプレイし、ハードウェアの速度が相対
的に速いかまたは高品位のフォントが要求されるほど漸
進的に多いデータを伝送してディスプレイする。従って
環境が許容しない場合品位を犠牲にする代りに最小限の
データ伝送としてフォントをディスプレイできるし、環
境が許容すれば全てのデータを伝送して既存の全てのデ
ータが持っているフォントの品位をそのまま具現でき
る。
Description
ト(font)に関するものであり、特に段階的に(Progressi
vely) レンダリング(RENDERING:表現)できるアウトラ
インフォント、その変換方法およびレンダリング方法に
関するものである。
の基礎たる韓国特許出願第1996−9927号(19
96年04月02日出願)の明細書の記載に基づくもの
であって、当該韓国特許出願の番号を参照することによ
って当該韓国特許出願の明細書の記載内容が本明細書の
一部分を構成するものとする。
S、例えばウィンドウズ3.1、ウィンドウズ95、ウ
ィンドウズNT、OS/2、ユニックス(UNIX)Xウィン
ドウ、マッキントッシュ(macintosh) システム7、ディ
スプレイ・ポストスクリプト(Display Postscript)等は
フォントを内蔵しているし、これをリソース(resource)
として使用してCRT等の出力装置に内蔵されたフォン
トをディスプレイ(display) している。
及されているものはアドビ(Adobe)社のポストスクリプ
ト(postscript)フォントとマイクロソフト(Microsoft)
社またはアップル(Apple) 社のツルー・タイプ(True Ty
pe) フォントがある。
トに割当されたコードマップ(codemap)に関する情報と
コントロールポイント(control point) の連結関係とし
てフォントの形態を示すグリフ(glyph) に関する情報お
よびその他フォントのラスタライズに必要な制御情報で
構成される。上記情報は一体のフォントを構成するため
に1ファイルに貯蔵されている。
よび漢字)のフォントを構成するデータの大きさは1〜
10メガバイド(MB)程度になる。これによりネット
ワーク環境下でフォントを伝送するためには多量のデー
タを伝送しなければならなかった。
用者のコンピュータ画面にディスプレイするためにはま
ず上記使用者のコンピュータのラスタライジャ(rasteri
zor)が必要なフォントファイルを読み込まなければなら
ないし、このときのデータ伝送は1コンピュータ内では
コンピュータ内のバスを通り、ネットワーク・コンピュ
ータ(ここで既存のコンピュータであってもネットワー
ク環境下で作動するコンピュータの総称をネットワーク
・コンピュータという)の場合はネットワークを通して
行われる。上記のどの場合であってもハードウェアが支
援できる速度より速いデータ伝送が必要である場合は従
来の方法の適用は困難である。
合、上記フォントファイルとラスタライジャ等がネット
ワーク上で互いに異なる場所に分散されていることもで
きる。この場合、使用者のコンピュータのラスタライジ
ャが必要であるフォントファイルが、まずネットワーク
を通じて伝送されなければならないからディスプレイす
る速度が遅くなり現実的使用において問題がある。
ernet)環境で米国の使用者が韓国内のウェブサイト(web
site) のデータをブラウジング(browsing)するには、上
記データがハングルである場合には米国の使用者が韓国
内のウェブサイトから提供するデータをディスプレイす
るためにハングルフォントについての情報を持っていな
ければならない。もしハングルフォント情報がなければ
国内のウェブサイトからハングルフォント情報をまず伝
送してから所望の国内ウェブサイトのデータを伝送しな
ければディスプレイできない。このようにするときハン
グルフォントのデータの大きさが大きい場合、データ伝
送にあまりに多くの時間が要求されるので実時間ディス
プレイに問題を生じる。
スを通じてフォントデータが伝送される場合、テキスト
ファイルを速くブラウジングするには、従来は1フォン
トについての該当グリフ情報を全部読んでからフォント
を表現したから、上記フォントの該当グリフ情報のデー
タ量が多い場合、これを速い時間でディスプレイするこ
とができない。すなわち、本をめくる速度程度にブラウ
ジングしながら大略的情報のみを得るにはブラウジング
の速度に問題がある。
スプレイにフォントキャッシング等の速度向上の方法を
利用している。しかし、この方法はフォントの種類が多
様でキャッシュの範囲を越える場合にディスプレイ速度
上の問題がそのまま残る。
るためになされたもので、フォントを構成しているデー
タ量を必要により可変できる段階的表現可能フォントを
提供することにその目的がある。上記段階的表現可能フ
ォントは環境と目的によりフォントディスプレイの速度
とフォントの品位(Quality) を適切に相互調節できる機
能を持っている。例えば、ハードウェアの速度が相対的
に遅くかつフォントの高品位が要求されない場合、フォ
ントのデータ中一部のみを伝送してディスプレイし、ハ
ードウェアの速度が相対的に速く高品位のフォントが要
求されるほど漸進的に多くのデータを伝送してディスプ
レイする。従って環境が許容しない場合、品位を犠牲に
する代りに最小限の量のデータ伝送としてフォントをデ
ィスプレイできるし、環境が許容すれば全てのデータを
伝送して既存の全てのデータが持っているフォントの品
位をそのまま具現できる。
に本発明は、各文字のグリフ(glyph) 情報を包含する段
階的表現可能フォントにおいて、上記各文字のグリフ情
報は、上記文字を形成するコントロールポイントの座
標、上記文字を段階的に伝送またはレンダリング可能に
し、上記文字を段階的に伝送またはレンダリングすると
きの上記コントロールポイントの包含順序を示すレベル
情報、および上記文字を段階的にレンダリングするとき
上記コントロールポイント間の段階的連結関係を動的に
表現するインデックス情報を包含することを特徴とす
る。
明を詳細に説明する。
タ構造を図示したもので、アウトラインフォントは各文
字に割当されたコード情報を示すコードマップ、上記ア
ウントラインフォントを構成している文字について文字
別に持っているグリフ情報、その他の制御情報でなって
いる。
造を図示したもので、上記従来の文字別グリフ情報は各
文字毎に文字を構成するのに必要な閉曲線の個数、文字
のボックス指定情報、コントロールポイントのオン/オ
フ情報、コントロールポイントの座標、コントロールポ
イント間の連結情報、ヒンティング(hinting) を包含し
たその他の制御情報でなる。図3は上記従来の
した一例を図示したもので、参照番号250は閉曲線の
個数、252はボックス情報、254は各閉曲線の端に
あるコントロールポイントの番号、256はオン/オフ
情報、258はコントロールポイントの座標を示し、上
記オン/オフ情報(250)とコントロールポイントの
座標(258)の羅列順序は連結情報を示す。
の閉曲線では反時計方向を正方向、時計方向を負方向と
し、内側の閉曲線では時計方向を正方向、反時計方向を
負方向とする。すなわち、これによると第0閉曲線では
反時計方向が正方向、時計方向が負方向になり、第1閉
曲線では時計方向が正方向、反時計方向が負方向にな
る。
ble)フォントは各文字のコードマップ、各文字のグリフ
情報、ヒンティング等のその他の制御情報を包含するア
ウトラインフォントである。図4はPRフォントの文字
別グリフ情報のデータ構造を図示したもので、上記各文
字についてのグリフ情報は各文字毎に文字を構成するの
に必要な閉曲線の数、上記文字を形成するコントロール
ポイントの座標、上記文字を段階的にレンダリングする
とき上記コントロールポイントの順序を示すレベル情
報、上記文字を段階的にレンダリングするとき上記コン
トロールポイント間の閉曲線上での連結関係を示すイン
デックス情報およびヒンティング等を包含したその他の
制御情報からなる。図5は本発明によるPRフォント中
の
タイプフォントの基本グラフィック・プリミティブ(Gra
phic Primitive) である2次曲線(Quadratic Bezier -
Bernstein 曲線)を使用しているが、ポストスクリプト
(Postscript)フォントの基本グラフィック・プリミティ
ブ(Graphic Primitive) である3次曲線(Cubic Bezier-
Bernstein 曲線)を使用しても本発明の範囲を逸脱し
ない。
閉曲線の開始ポイントの番号、354はレベルの個数、
356は各レベルの終了ポイントの番号、358はコン
トロールポイントの座標を示す。360は各コントロー
ルポイントでの曲線の正方向と負方向の方向ベクトルを
示すもので、もし正方向と負方向の方向ベクトルが平行
になれば一つのみ表示する。362はインデックス情報
を示す。ここで項目360は各該当ポイントの正方向と
負方向のオフポイントに代置できる。これは特に例えば
ポストスクリプトのように3次曲線(Cubic Bezier - Be
rstein曲線)を利用したPRフォントの場合適用可能で
ある。
的により伝送速度とフォントの品位を任意に決定できる
長所を持っている。しかし上述のようにPRフォントの
形式は既存のアウトラインフォントとは相異なるから、
既存のアウトラインフォントがPRフォントのデータを
PRフォント形式のデータに変換する過程が要求され
る。従って以下では既存のアウトラインフォントのデー
タをPRフォント形式のデータに変換する過程について
詳細に説明する(この過程はオフラインプロセス(Off-l
ine Process)として処理される)。
加することにより既存のアウトラインフォントをPRフ
ォントとして容易に変換できることである。
フォントに変換する方法についての流れ図を図示したも
ので、これについての説明は次の通りである。
ンフォントデータを受け取る。ここで既存のフォントは
図1のようにコードマップ、グリフ情報、ヒンティング
を包含したその他の制御情報等を包含する。
ントデータを受け取ってから、上記既存のアウトライン
フォントを構成する各文字について文字別該当グリフ情
報を抽出する。ここで上記各文字別グリフ情報は図2の
ように各文字毎に文字を構成するのに必要な閉曲線の
数、文字のボックス指定情報、コントロールポイントの
オン/オフ情報、コントロールポイントの座標、コント
ロールポイント間の連結情報、ヒンティング等のその他
の制御情報等を持っている。図3はこれについての一例
である。
文字のグリフ情報を各文字別に図4のようなPRフォン
トのレベル情報とインデックス情報を包含したグリフ情
報に変換する。例えば、上記図3のようにグリフ情報が
上記ステップ420を経た結果は図5と同じになる。
中、オンポイント(以下ポイントという)の順序を定め
てその順序により各ポイントに番号を付与してこの順序
に従ってレベル情報、すなわちレベルの個数、各レベル
が包含するポイントの個数を指定する。このときこのレ
ベル情報はPRフォントの各レベル別の伝送速度、各レ
ベルで実現されなければならないフォントの美的表現の
程度等を考慮して使用者が具体的に指定したり所定のア
ルゴリズムにより自動的に指定できる。
4の閉曲線の個数、コントロールポイントの座標、レベ
ル情報を完成する。
である。図7は図3をディスプレイした結果である。こ
こで表示された31個の点は図3のオンポイントであ
り、各オンポイントには上記で定められた順序により1
から31までの番号が各々付与されている。この番号の
順序により図5の項目358を完成する。すなわち図3
のオンポイントのみのx座標とy座標を上記で定められ
た番号の順に羅列する。ここでレベルの個数は第1レベ
ルから第7レベルまでの7個に定められ、この情報が図
5の項目354になる。または第1レベルは第1ポイン
トから第8ポイント、第2レベルは第9ポイントから第
10ポイント、第3レベルは第11ポイントから第14
ポイント、第4レベルは第15ポイントから第17ポイ
ント、第5レベルは第18ポイントから第20ポイン
ト、第6レベルは第21ポイントから第24ポイント、
第7レベルは第25ポイントから第31ポイントを各々
包含していると仮定して各レベルの終了ポイントの番号
を利用して図5の項目356を完成する。
0は各コントロールポイントでの曲線の正方向と負方向
の方向ベクトルを示すもので、もし正方向と負方向の方
向ベクトルが平行なら一つのみを表示し、これは図3の
オフポイントの座標により計算される。
トの連結状態を利用して図4のインデックス情報を完成
する。これを図5を例として説明すれば次の通りであ
る。
閉曲線とする。従って図7の外側の閉曲線が第1閉曲線
になる。次には第1ポイント以後のポイント中の第1閉
曲線上にないポイント中、番号が最小であるポイントを
探す。この例では第5ポイントになる。第5ポイントを
包含する閉曲線を第2閉曲線とする。すなわち図7の内
側の閉曲線が第2閉曲線になる。上記の結果を図5の項
目352に記録する。すなわち図5の項目352は各閉
曲線の開始ポイントの番号が閉曲線の番号順に記録され
る。
上での段階的連結状態を示すインデックスを配するが、
これについての一般的アルゴリズムを既述すれば次の通
りである。
してt個の閉曲線を持っている(第1閉曲線,第2閉曲
線,…,第t閉曲線とする)とし、一般的に第s(1≦
s≦t)閉曲線は
る。
なり、第s(1≦s≦t)閉曲線はNs −Ns-1 個のオ
ンポイントを包含している。
→{1,2,…,Nt }が次のように付与されたと仮定
すれば、すなわち1≦n≦Nt であるnについてNEX
T(n)とは、Pnから正方向に閉曲線に従うとき最初
に合う点がPNEXT(n) になるように定義され、これを公
式で表現すれば次の通りである。
t }→{1,2,…,Nt }はNEXTの逆関数と定義
され、これを公式で表現すれば次の通りである。
前のグリフ情報が持っている情報である。
することだと仮定する。
数φ:{1,2,…,Nt }→{1,2,…,Nt }の
ように表現され、φは次のような条件を満足する関数で
ある。
は
れた元来のグリフ情報と関数φで付与された使用者が定
めた情報を使用して
インデックスをINDEX(n)とすれば、
とは関数INDEX:{1,2,…,Nt }→{1,
2,…,Nt }を決定することと同じである。
る数字が点Q4 に関する情報であり、その中の、項目3
62に属する数字‘3’が点Q4 の該当インデックスに
なる。すなわち、INDEX(4)=3である。
t )はQ1 ,Q2 ,…,Qn-1 ,Qnが閉曲線で連結さ
れている状態をみたとき、Q1 ,Q2 ,…,Qn-1 ,Q
n 中Qn から開始して負方向に閉曲線に従うとき最初に
合う点の番号(Qの番号)に定義され、INDEX
(n)を求めるアルゴリズムを流れ図として表現すれば
図8と同じである。
項目362を完成する例を図7を使用して説明すれば次
の通りである。第1ポイントは、それを包含する第1閉
曲線上に以前のポイントが第1ポイント自身しかないか
ら自身の番号である1をインデックスとする。第2ポイ
ントは、第1閉曲線に属するポイントであり、現在まで
第1閉曲線に属するポイントは第1,第2ポイントしか
ないから、第2ポイントのインデックスは第1ポイント
を指示する1になる。第3ポイントは第1閉曲線に属し
て図7のコントロールポイントの羅列順序から第1,第
2,第3ポイント中で負方向に第2ポイントにもっとも
近く連結されていることがわかるから、第3ポイントの
インデックスは第2ポイントを表示する2になる。第4
ポイントは第1閉曲線に属して図7のコントロールポイ
ントの羅列順序から第1,第2,第3,第4ポイント中
の負方向に第3ポイントにもっとも近く連結されている
ことがわかるから、第4ポイントのインデックスは第3
ポイントを表示する3になる。
るように第1ポイントがある第1閉曲線とは異なる第2
閉曲線の開始点だから第1ポイントとは連結されていな
い。同時に第5ポイントが入っている第2閉曲線のポイ
ントはまだ第5ポイント自身しかないから第5ポイント
のインデックスは自身を表示する5になる。第6ポイン
トは第2閉曲線に属するポイントであり現在まで第2閉
曲線に属するポイントは第5,第6ポイントしかないか
ら、第6ポイントのインデックスは第5ポイントを表示
する5になる。第7ポイントは第2閉曲線に属して図7
のコントロールポイントの羅列順序から第1,第2,第
3,第4,第5,第6,第7ポイント中の負方向に第6
ポイントにもっとも近く連結されていることがわかるか
ら、第7ポイントのインデックスは第6ポイントを表示
する6になる。第8ポイントは第2閉曲線に属して図7
のコントロールポイント羅列順序から第1,第2,第
3,第4,第5,第6,第7,第8ポイント中の負方向
に第7ポイントにもっとも近く連結されていることがわ
かるから、第8ポイントのインデックスは第7ポイント
を表示する7になる。上記のような方法で各オンポイン
ト毎にインデックスを配して項目362を完成する。
トラインフォント中のポストスクリプト等のように3次
曲線(Cubic Bezier - Bernstein 曲線)を使用したフォ
ントのグリフ情報も上記のような方法でPRフォント形
式のグリフ情報として変換できる。ただし、このときに
は図5の項目360に記録された方向ベクトルの代りに
各ポイント(すなわちオンポイント)の閉曲線上の正方
向と負方向に隣接したオフポイント、あるいはある方向
に閉曲線が直線である場合その事実を表示する情報が入
ることになる。またこのとき各レベル毎の段階的レンダ
リングでオフポイントの位置決定に必要な近似常数も変
換したPRフォントのグリフ情報に包含される。上記の
近似常数は該当レベルでフォントをレンダリングしたと
きのフォントのアウトラインが元のフォントのアウトラ
インにもっとも近似させるように決定される。このとき
近似の方法としては2曲線間のL2-norm ,Hausdorff Di
stance等の方法を使用できる。
制御情報に変換するとき、特にヒンディング情報が重要
であり、このヒンティング情報を変換する方法には大き
く分類して、定めた各レベル毎に該当ヒンティング情報
を持っているようにする方法と、レベル情報に関係なし
に元のヒンティング情報をそのままに利用してPRフォ
ントレンダリングの最終段階でのみヒンティングを適用
するようにする方法の2種類がある。前者の方法はPR
フォントをレベルにより段階的にレンダリングするとき
各々の段階でのヒンティングを可能し、後者の方法はP
Rフォントの伝送速度、ディスプレイ速度等の問題のた
めに中間段階でのヒンティングが必要でないかそうでな
ければ無意味であるとき使用する。ここで前者での各レ
ベル別ヒンティング情報を付加する方法は使用目的と環
境等により変更できる。
文字のグリフ情報を図4のようなPRフォント形式のグ
リフ情報に変換できる。
ラインフォントデータファイル中でグリフ情報を除外し
たデータに上記変換された全体グリフ情報を付加してP
Rフォントファイルを生成する。
てフォントを段階的に伝送してレンダリングする方法に
ついて詳細に記述する。図9はこの過程の流れ図を示す
ものである。ここでデータの伝送は通常下位レベルのグ
リフ情報から伝送される。すなわち、例えば図5の項目
380,382,384,386,388,390,3
92の順に伝送されて一回に1以上の上記項目を伝送す
ることもできる。
伝送環境等により伝送レベルが決定され、すでに伝送さ
れたレベルを除外したレベルに属するデータを決定す
る。例えば図5のデータ中ですでに伝送されたものが第
1,第2レベル、すなわち図5の項目380,382で
あり、レベル5までのデータが伝送されなければならな
い場合、実際に伝送されなければならないデータは第
3,第4,第5レベル、すなわち図5の項目384,3
86,388になる。
のデータが所定のレベルまで伝送されたとき、このデー
タのみを利用してフォントのアウトラインを計算する。
これを以下に詳細に説明する。まず伝送されたレベルま
でのポイントの座標、曲線の方向ベクトル、インデック
ス情報、閉曲線の個数、レベル情報を持ったレンダリン
グすべき閉曲線の個数、各閉曲線上での伝送されたレベ
ルまでのポイントの連結状態を決定する。
でのポイントの連結状態を決定する過程を一般的に説明
すれば次の通りである。
した用語と数式をそのまま使用する。
めからm個の点についてのインデックス情報を持ってい
ると仮定する。
付与されている。
r}→{1,2,…,r}、1≦r≦Nt を次のように
定義する。すなわちFOWARDr (n)、1≦r≦N
t 、1≦n≦rというのはQ1 ,Q2 ,…,Qr の点
中、Qnから出発してQnが入っている閉曲線の正方向
に従うとき最初に合う点の番号である。よってFOWA
RDr という関数はQ1 ,Q2 ,…,Qr の閉曲線上で
の連結状態を示す情報であり、この過程の目的はQm が
包含される前Q1 ,Q2 ,…,Qm-1 の閉曲線上の連結
状態を示す関数FOWARDm-1 とINDEX(n)
(1≦n≦m)によって関数FOWARDm を求めるこ
とで、関数FOWARDm は次のような公式により求め
る。
例として説明すれば次のようである。例えば図5のデー
タ中第1レベルすなわち項目380が伝送されたと仮定
すれば、このときレンダリングすべき閉曲線の数は2
個、すなわち第1,第2閉曲線になり、第1ポイントか
ら第8ポイントまでの8個のポイント、すなわち図5の
項目380に該当するポイントがこの2閉曲線上にある
ことになる。
線上のポイントの連結状態を図示したもので、これは閉
曲線上で第1ポイントに負方向にもっとも隣接するポイ
ントが現在まで第1ポイント自身である事実を示すイン
デックス情報から決定されたものである。
て各閉曲線上のポイントの連結状態を図示したもので、
これは第2ポイントのインデックスが1すなわち第1ポ
イントが第2ポイントに負方向にもっとも隣接するポイ
ントであるという情報から得られる。
利用して各閉曲線上のポイントの連結状態を図示したも
ので、これは第3ポイントのインデックスが2すなわち
第2ポイントが第3ポイントに負方向にもっとも隣接す
るポイントであるという情報から得られる。
のみを利用して各閉曲線上のポイントの連結状態を図示
したもので、これは第4ポイントのインデックスが3す
なわち第3ポイントが第4ポイントに負方向にもっとも
隣接するポイントであるという情報から得られる。
イントのみを利用して各閉曲線上のポイントの連結状態
を図示したもので、これは第5ポイントのインデックス
が5すなわち第5ポイント自身が第5ポイントに負方向
にもっとも隣接するポイントであるという情報から得ら
れる。
第6ポイントのみを利用して各閉曲線上のポイントの連
結状態を図示したもので、これは第6ポイントのインデ
ックスが5すなわち第5ポイントが第6ポイントに負方
向にもっとも隣接するポイントであるという情報から得
られる。
第6,第7ポイントのみを利用して各閉曲線上のポイン
トの連結状態を図示したもので、これは第7ポイントの
インデックスが6すなわち第6ポイントが第7ポイント
に負方向にもっとも隣接するポイントであるという情報
から得られる。
イントの閉曲線上での連結状態を決定すれば図17のよ
うになる。
イントの連結状態を知っている状況で次の番号のポイン
トが追加されれば、追加されたポイントのインデックス
を利用してそのポイントまでの連結状態がわかる。この
方法は各ポイントが変化しないインデックスをファイル
内に持っているからPRフォントファイルの大きさを減
らすことができると同時に、各ポイントが閉曲線に追加
されるごとにポイントの連結状態を動的に求めてメモリ
上に貯蔵できる長所がある。
に2次曲線(Quadratic Bezier - Bernstein)を利用する
場合は各閉曲線ごとにその上の各隣接2オンポイントの
間を2オンポイントの座標、曲線の方向ベクトルを利用
して2次曲線として結ぶ。ここで一般的にP1 ,P2 の
2点があり、各点での曲線の方向ベクトルを各々v1,
v2 とするとき、P1 ,P2 を結ぶ2次曲線c(t)は
次の通りである。
と点P2 を通り方向がv2 である直線の交点である。も
しP1 ,P2 での曲線の方向ベクトルの代りに該当オフ
ポイントQを知っていると、P1 ,P2 を結ぶ2次曲線
c(t)は次の通りである。
ezier - Bernstein)を利用する場合は各閉曲線ごとにそ
の上の各隣接2オンポイント間を、2オンポイントの座
標、該当オフポイントの座標、該当近似常数を利用して
3次曲線で結ぶ。ここでP1 ,P2 を結ぶ3次曲線c
(t)は次の通りである。
2 −P2 )であり、Q1 ,Q2 はP1 ,P2 に各々該当
するオフポイントであり、a,bは上記の式に表現され
る3次曲線がPRフォントの最終段階でレンダリングさ
れるフォントのアウトラインに近似するようにL2-norm,
Hausdorff Distance 等の所定の近似規則により決定さ
れた近似常数である。
ルまでのデータを利用してフォントのアウトラインが作
られる。図18,図19,図20,図21,図22,図
23,図24は各々図5の第1,第2,第3,第4,第
5,第6,第7レベルまでのデータのみにより計算され
た
と、ステップ430ではヒンティング等のその他の情報
を利用してラスタライズしてディスプレイする。
よって段階的にレンダリングする時、各々の段階でのヒ
ンティング情報を利用して段階別にヒンティングした
り、PRフォントの伝送速度、ディスプレイ速度等の問
題のため中間段階でのヒンティングが必要でないかまた
は無意味であるときにはPRフォントレンダリングの最
終段階でのみヒンティングを適用する。
されたレベル情報により段階的に表現可能にするもの
の、1つの欠点がある。すなわち、1レベルでラスタラ
イズされた文字を次の段階でもっと精密に表現するには
以前に計算されたラスタライズ・ビットマップ(Raster
Bitmap) イメージを捨て、再び計算して新たなビットマ
ップを作らなければならない。なぜなら新たなレベルの
追加された情報から得たビットマップのパターンが以前
のレベルとどのような関係にあるかをアルゴリズムで迅
速に求められない。これによる再計算は全体的な時間を
増加させる。上記方式の長所は既存の書体を全然変形さ
せず与えられたコントロールポイントにレベル情報のみ
付与したものだから、PRフォントを作ることが容易で
ある。反面ラスタライズ(rasterize) 時に速度の減少を
招来する。
変換(Medial Axis Transform) である。中心軸変換で平
面上の図形はそれに最大に内接する円の集合として表現
され、再構成される。このとき最大内接円の中心の集ま
りを中心軸(Medial Axis) とし、各中心軸の点を中心と
する最大内接円の半径の情報を追加することを中心軸変
換(Medial Axis Transform) という。中心軸変換はBlum
が最初に計算して以後これまで活発に研究されたし、D.
T. Lee, R. L. Drysdale, M. Held, V. Srinivasan,
L. R. Nackman, C. K. Yap 等により中心軸変換を求め
る方法が提示されている。しかしこの場合、境界となる
曲線(Boundary Curve)はライン・セグメント(Line Segm
ent)や円弧(Circular Arc)に限定されて、これが一般的
曲線の形態をもつ場合については本発明者により研究さ
れて解決された。
点を中心とする最大内接円が図形の境界曲線(Boundary
Curve)と合う点を接点とするが、参照番号2350は中
心軸の点を示し、2352は2350を中心とする最大
内接円であり、2354は2接点を示す。
314で示した最大内接円の間に位置した図形の部分を
2316で示した。
内接円(それに対応する接点)がレベルとして選択され
ない場合の境界曲線を示した。図26では2310で示
された最大内接円(それに対応する接点)がレベルとし
て選択された場合の境界曲線を示した。図25→図26
に変る過程でわかるように2310がレベルとして選択
された結果は図形で2312と2314間に位置した図
形の部分(すなわち2316)のみに影響が及び、残り
の部分は全然影響が及ばないことがわかる。図25→図
26に進行する過程は2310,2320,2330が
追加されたことでその効果も該当される部分にのみ影響
が及ぶことがわかる。
たビットマップは大部分そのまま使用できるし、レベル
情報の追加は該当した部分にのみ局所的に影響が及ぶこ
とがわかる。これを局所的ラスタラインジング(localiz
ed Rasterizing) 方式という。
は中心軸変換に立脚したデータで構成された字素に特に
容易に適用され、これを通じて本発明はその速度と質を
バランスよく適用できるようになる。
トを構成しているデータ量を必要により可変できる段階
的表現可能フォントの形成を可能にし、上記段階的表現
可能フォントは環境と目的によりフォントディスプレイ
の速度とフォントの品位を適切に相互調節できる機能を
持っている。
技術分野で通常の知識を有する者によって本発明の技術
的思想を逸脱しない範囲内でいろいろな置換、変形およ
び変更が可能であるから、前述の実施例および添付した
図面に限定されることはない。
である。
る。
図である。
変換する方法についてのフローチャートである。
例示する図である。
例示する図である。
る。
図である。
を示す図である。
結状態を示す図である。
トの連結状態を示す図である。
ポイントの連結状態を示す図である。
である。
である。
である。
である。
である。
である。
である。
である。
の例を示す図である。
の例を示す図である。
Claims (9)
- 【請求項1】 各文字のグリフ情報を包含する段階的表
現可能フォントにおいて、上記各文字のグリフ情報は、 上記文字を形成するコントロールポイントの座標、 上記文字を段階的に伝送またはレンダリング可能にし、
上記文字を段階的に伝送またはレンダリングするときの
上記コントロールポイントの包含順序を示すレベル情
報、および上記文字を段階的にレンダリングするとき上
記コントロールポイント間の段階的連結関係を動的に表
現するインデックス情報を包含することを特徴とする段
階的表現可能フォント。 - 【請求項2】 上記各文字のグリフ情報はヒンティング
等の制御情報を包含していることを特徴とする請求項1
記載の段階的表現可能フォント。 - 【請求項3】 各レベルで上記ヒンティング等の段階的
制御情報を包含していることを特徴とする請求項2記載
の段階的表現可能フォント。 - 【請求項4】 上記各文字のグリフ情報は、上記各コン
トロールポイントでの曲線の方向のベクトルについての
情報を包含していることを特徴とする請求項3記載の段
階的表現可能フォント。 - 【請求項5】 上記コントロールポイントは中心軸の点
に対応する最大内接円の接点であることを特徴とする請
求項1記載の段階的表現可能フォント。 - 【請求項6】 各文字のグリフ情報を包含する段階的表
現可能フォントにおいて、上記各文字のグリフ情報は、 上記文字を形成するための接点としてコントロールポイ
ントを包含する最大内接円情報、 上記文字を段階的に伝送またはレンダリングし、上記文
字を段階的に伝送またはレンダリングするときの上記最
大内接円の各々の包含順序を示すレベル情報、および上
記文字を段階的にレンダリングするとき上記最大内接円
間の段階的連結関係を動的に表現するインデックス情報
を包含することを特徴とする段階的表現可能フォント。 - 【請求項7】 上記最大内接円の情報を利用して局所的
ラスタライズを可能にすることを特徴とする請求項5ま
たは6記載の段階的表現可能フォント。 - 【請求項8】 アウトラインフォントファイルのグリフ
データから上記アウトラインフォントを構成する各文字
について文字別に該当グリフ情報を抽出する第1ステッ
プ、 上記抽出した各文字のグリフ情報を、上記文字を段階的
に伝送またはレンダリングするためのレベル情報および
インデックス情報を包含したグリフ情報に変換する第2
ステップ、および上記アウトラインフォントファイル中
でグリフ情報を除外したデータに上記変換されたグリフ
情報を付加して段階的表現可能フォントファイルを生成
する第3ステップを包含していることを特徴とする段階
的表現可能フォントの変換方法。 - 【請求項9】 使用者の要求または使用環境によりレン
ダリングするレベルを決定し、上記決定したレベルまで
のレンダリングに必要な情報中既に貯蔵している情報を
除外した追加データのみ出力装置に伝送する第1ステッ
プ、 上記伝送したレベルまでのデータのみを利用して文字の
各レベル毎のアウトラインを計算する第2ステップ、お
よびヒンティング等の制御情報を利用して各レベル毎に
フォントをレンダリングして文字を段階的に表現する第
3ステップを包含することを特徴とする段階的表現可能
フォントのレンダリング方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1996-9927 | 1996-04-02 | ||
KR1019960009927A KR0172581B1 (ko) | 1996-04-02 | 1996-04-02 | 단계적 표현 가능형 폰트 그 변환 방법 및 렌더링 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1031472A true JPH1031472A (ja) | 1998-02-03 |
JP3168170B2 JP3168170B2 (ja) | 2001-05-21 |
Family
ID=19454915
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP08419397A Expired - Lifetime JP3168170B2 (ja) | 1996-04-02 | 1997-04-02 | 段階的表現可能フォント、その変換方法およびレンダリング方法 |
Country Status (8)
Country | Link |
---|---|
US (1) | US6232987B1 (ja) |
JP (1) | JP3168170B2 (ja) |
KR (1) | KR0172581B1 (ja) |
CN (1) | CN1126051C (ja) |
DE (1) | DE19713654B4 (ja) |
FR (1) | FR2747209B1 (ja) |
GB (1) | GB2313277B (ja) |
TW (1) | TW359782B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007517251A (ja) * | 2003-12-31 | 2007-06-28 | ノキア コーポレイション | フォントのスケーリングのための構成 |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6501475B1 (en) * | 1999-10-22 | 2002-12-31 | Dynalab Inc. | Glyph-based outline font generation independent of resolution |
US6992671B1 (en) * | 1999-12-09 | 2006-01-31 | Monotype Imaging, Inc. | Method and apparatus for compressing Bezier descriptions of letterforms in outline fonts using vector quantization techniques |
US6911980B1 (en) * | 1999-12-10 | 2005-06-28 | Adobe Systems Incorporated | Manipulation of curves and surfaces |
US7055095B1 (en) | 2000-04-14 | 2006-05-30 | Picsel Research Limited | Systems and methods for digital document processing |
US7009626B2 (en) | 2000-04-14 | 2006-03-07 | Picsel Technologies Limited | Systems and methods for generating visual representations of graphical data and digital document processing |
US6781600B2 (en) | 2000-04-14 | 2004-08-24 | Picsel Technologies Limited | Shape processor |
US7576730B2 (en) | 2000-04-14 | 2009-08-18 | Picsel (Research) Limited | User interface systems and methods for viewing and manipulating digital documents |
JP2002162958A (ja) * | 2000-11-28 | 2002-06-07 | Pioneer Electronic Corp | 画像表示方法および装置 |
US7239318B2 (en) * | 2001-03-23 | 2007-07-03 | Rise Kabushikikaisha | Method and computer software program product for processing characters based on outline font |
US7385612B1 (en) | 2002-05-30 | 2008-06-10 | Adobe Systems Incorporated | Distortion of raster and vector artwork |
DE10260135B4 (de) * | 2002-12-20 | 2006-11-09 | OCé PRINTING SYSTEMS GMBH | Verfahren, Computerprogrammprodukt und Dokumentenausgabesystem zur Verarbeitung eines Dokumentendatenstroms |
US7710422B2 (en) * | 2004-07-26 | 2010-05-04 | Microsoft Corporation | Font representations |
JP5017031B2 (ja) * | 2007-09-13 | 2012-09-05 | キヤノン株式会社 | 画像処理装置、画像処理方法、画像処理プログラム、並びに、記憶媒体 |
TWI409800B (zh) * | 2008-10-13 | 2013-09-21 | Dynacomware Taiwan Inc | 根據筆劃基礎字型資料產生低解像度中文小字品質顯示的方法和裝置 |
CN101814189B (zh) * | 2009-02-19 | 2011-08-17 | 中国科学院微电子研究所 | 一种图形挖空方法 |
US8947438B2 (en) | 2011-08-01 | 2015-02-03 | Microsoft Corporation | Reducing font instructions |
US9245361B2 (en) | 2011-09-01 | 2016-01-26 | Microsoft Technology Licensing, Llc | Consolidating glyphs of a font |
WO2014205632A1 (en) * | 2013-06-24 | 2014-12-31 | Adobe Systems Incorporated | Gravity point drawing method |
WO2015141260A1 (ja) * | 2014-03-17 | 2015-09-24 | 株式会社河合楽器製作所 | 手書き音楽記号認識装置およびプログラム |
KR20150145774A (ko) * | 2014-06-19 | 2015-12-31 | 삼성전자주식회사 | 필기 애니메이션을 제공하는 전자장치 및 방법 |
CN113515919B (zh) * | 2021-09-14 | 2022-01-07 | 北京江融信科技有限公司 | 一种生成中文TrueType字体的方法及系统 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4620287A (en) * | 1983-01-20 | 1986-10-28 | Dicomed Corporation | Method and apparatus for representation of a curve of uniform width |
JPS6364090A (ja) | 1986-09-05 | 1988-03-22 | 松下電器産業株式会社 | 2値文字パタ−ンのベクトル化における線幅指定方法 |
JP2642363B2 (ja) | 1987-11-26 | 1997-08-20 | 富士通株式会社 | 図形データ転送方法 |
US5562350A (en) * | 1988-04-18 | 1996-10-08 | Canon Kabushiki Kaisha | Output apparatus that selects a vector font based on character size |
AU629210B2 (en) * | 1988-10-26 | 1992-10-01 | Sun Microsystems, Inc. | Method and apparatus for minimizing the visual degradation of digital typefaces |
JP3013089B2 (ja) | 1990-05-24 | 2000-02-28 | 富士通株式会社 | 自然画表現方式 |
GB2245739B (en) | 1990-07-03 | 1994-05-11 | Roke Manor Research | Character encoding systems |
EP0481787B1 (en) * | 1990-10-19 | 1997-01-15 | Canon Kabushiki Kaisha | Output method and apparatus |
US5301267A (en) | 1991-09-27 | 1994-04-05 | Adobe Systems Incorporated | Intelligent font rendering co-processor |
US5448686A (en) | 1992-01-02 | 1995-09-05 | International Business Machines Corporation | Multi-resolution graphic representation employing at least one simplified model for interactive visualization applications |
JP3391822B2 (ja) | 1992-05-08 | 2003-03-31 | 株式会社リコー | アウトラインフォントファイル圧縮方法 |
JP3224142B2 (ja) | 1992-05-20 | 2001-10-29 | 株式会社リコー | ヒンティング処理方法 |
US5526477A (en) | 1994-01-04 | 1996-06-11 | Digital Equipment Corporation | System and method for generating glyphs of unknown characters |
EP0672982B1 (en) | 1994-03-18 | 2002-07-31 | Hewlett-Packard Company, A Delaware Corporation | Printer system with compressed font procedure that enables memory conservation |
US5734388A (en) * | 1994-05-16 | 1998-03-31 | Agfa Division, Bayer Corporation | Method and apparatus for data compression of digital data to produce a scaleable font database |
US5781714A (en) * | 1994-05-27 | 1998-07-14 | Bitstream Inc. | Apparatus and methods for creating and using portable fonts |
JPH08146936A (ja) * | 1994-11-21 | 1996-06-07 | Fujitsu Ltd | アウトラインフォントデータの処理方法および装置 |
JPH09134157A (ja) * | 1995-11-09 | 1997-05-20 | Fujitsu Ltd | ヒント付け方法及びフォントファイル構成方法 |
KR100219072B1 (ko) | 1996-04-02 | 1999-09-01 | 김영환 | 중심축 변환을 이용한 폰트 및 그 폰트 서체의 변형 및 라스터라이징 방식 |
US5852448A (en) * | 1996-09-20 | 1998-12-22 | Dynalab Inc. | Stroke-based font generation independent of resolution |
-
1996
- 1996-04-02 KR KR1019960009927A patent/KR0172581B1/ko not_active IP Right Cessation
-
1997
- 1997-03-31 US US08/828,553 patent/US6232987B1/en not_active Expired - Lifetime
- 1997-04-02 FR FR9704008A patent/FR2747209B1/fr not_active Expired - Fee Related
- 1997-04-02 CN CN97103763A patent/CN1126051C/zh not_active Expired - Fee Related
- 1997-04-02 GB GB9706677A patent/GB2313277B/en not_active Expired - Fee Related
- 1997-04-02 JP JP08419397A patent/JP3168170B2/ja not_active Expired - Lifetime
- 1997-04-02 DE DE19713654A patent/DE19713654B4/de not_active Expired - Lifetime
- 1997-04-09 TW TW086104526A patent/TW359782B/zh not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007517251A (ja) * | 2003-12-31 | 2007-06-28 | ノキア コーポレイション | フォントのスケーリングのための構成 |
Also Published As
Publication number | Publication date |
---|---|
GB2313277B (en) | 2000-06-21 |
CN1126051C (zh) | 2003-10-29 |
KR0172581B1 (ko) | 1999-03-30 |
GB2313277A (en) | 1997-11-19 |
US6232987B1 (en) | 2001-05-15 |
JP3168170B2 (ja) | 2001-05-21 |
TW359782B (en) | 1999-06-01 |
GB9706677D0 (en) | 1997-05-21 |
FR2747209B1 (fr) | 1999-04-16 |
DE19713654A1 (de) | 1997-10-30 |
DE19713654B4 (de) | 2008-02-28 |
KR970071228A (ko) | 1997-11-07 |
FR2747209A1 (fr) | 1997-10-10 |
CN1172991A (zh) | 1998-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3168170B2 (ja) | 段階的表現可能フォント、その変換方法およびレンダリング方法 | |
EP2498218B1 (en) | Generating, storing, and displaying graphics using sub-pixel bitmaps | |
US7483592B2 (en) | Method and apparatus for magnifying computer screen display | |
US20020113797A1 (en) | Systems and methods for representing and displaying graphics | |
US6917369B2 (en) | Method and apparatus for rendering cell-based distance fields using texture mapping | |
EP2031563A2 (en) | Method for rendering a region of a composite glyph | |
JPH06309466A (ja) | グラフィカル・イメージの表示装置及び方法 | |
JPH03208094A (ja) | 種々の寸法の記号映像のアウトラインを処理する方法およびコンピュータ表示装置 | |
WO2005088536A1 (en) | Method, apparatus and system for rendering using a cache | |
US6933952B2 (en) | Method for antialiasing a set of objects represented as a set of two-dimensional distance fields in object-order | |
WO2008036771A2 (en) | Rendering and encoding glyphs | |
US5489920A (en) | Method for determining the optimum angle for displaying a line on raster output devices | |
KR20080094850A (ko) | 폰트들의 스케일링 장치 | |
McQueen III et al. | Infinifont: a parametric font generation system | |
US20220366621A1 (en) | Systems for Generating Anti-Aliased Vector Objects | |
CN101957837B (zh) | 一种笔划矢量字库的存取方法 | |
US20040189665A1 (en) | Method and apparatus for antialiasing a set of objects represented as a set of two-dimensional distance fields in image-order | |
JP3104643B2 (ja) | 画像処理装置及び画像処理方法 | |
JP2000148126A (ja) | 画像表示装置及び方法 | |
JP2562458B2 (ja) | コンピュータシステム用文字発生方法 | |
JP2007213046A (ja) | 画像表示装置及び画像表示プログラム | |
JP2907007B2 (ja) | 文字表示装置 | |
JP4198098B2 (ja) | 表示装置、プログラムおよび記録媒体 | |
JPH1039736A (ja) | 動的文字生成方法及び動的文字表示方法 | |
Vadura | Library for OSM Rendering on Smartphones |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080309 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090309 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100309 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100309 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110309 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110309 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120309 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130309 Year of fee payment: 12 |