JP3357855B2 - フォント処理装置、フォント処理方法及び記憶媒体 - Google Patents
フォント処理装置、フォント処理方法及び記憶媒体Info
- Publication number
- JP3357855B2 JP3357855B2 JP03138399A JP3138399A JP3357855B2 JP 3357855 B2 JP3357855 B2 JP 3357855B2 JP 03138399 A JP03138399 A JP 03138399A JP 3138399 A JP3138399 A JP 3138399A JP 3357855 B2 JP3357855 B2 JP 3357855B2
- Authority
- JP
- Japan
- Prior art keywords
- font
- point
- data
- font data
- interval
- 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 - Fee Related
Links
Classifications
-
- 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
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1835—Transforming generic data
- G06K15/1836—Rasterization
- G06K15/1839—Rasterization from skeleton-coded data
-
- 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
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1835—Transforming generic data
- G06K15/1842—Geometric transformations, e.g. on raster data
- G06K15/1843—Changing size or raster resolution
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
Description
どの表示器を備えた携帯情報端末、パーソナルコンピュ
ータ、ワードプロセッサ等の電子機器において、任意サ
イズの文字表示を行い、特に低画素で視認性向上を可能
とするフォント処理装置、フォント処理方法及びその処
理を実行するプログラムが記録された記憶媒体に関す
る。
ラインフォントでは、文字サイズに拘わらず、1種類の
フォントデータを元に比例計算により、多様なサイズの
文字を表示・印刷していた。
9−287994「フォント処理装置およびフォント処
理用プログラムを記録した記録媒体」は、低画素サイズ
用のフォントデータと高画素サイズ用のフォントデータ
から任意の中間画素サイズ用のフォントデータを生成す
る文字複雑度補間処理と、隣接ストローク間の距離を補
正してストロークの接触によるつぶれを除去する線間補
正処理を用いて、低画素フォントを生成するものであっ
た。
トデータをもとに多様なサイズの文字を表示・印刷する
フォント処理装置では、小さな文字サイズにおいて、文
字を構成するストロークが接触して、文字がつぶれてし
まい、文字品質が大きく劣化するという欠点があった。
87994「フォント処理装置およびフォント処理用プ
ログラムを記録した記録媒体」は、低画素サイズ用のフ
ォントデータと高画素サイズ用のフォントデータから任
意の中間画素サイズ用のフォントデータを生成する文字
複雑度補間処理と、隣接ストローク間の距離を補正して
ストロークの接触によるつぶれを除去する線間補正処理
を用いて、小さな文字サイズにおいても文字品質の劣化
が極力少ないフォントを生成しようとするものであっ
た。しかし、この手法でも用意した低画素サイズ用フォ
ントデータの文字サイズよりも小さなデータを生成する
際には、複雑度補間処理がはたらかないため、文字の外
側にストローク省略が発生して視認性の劣化を起こす場
合があった。
ォント生成処理の例を示す。
線ストロークフォントデータである。このデータは、出
力ドット数が十分に大きいことを前提としている。この
データをもとに出力サイズ24ドットのビットマップデ
ータに変換した結果が、図5である。図5では、「遺」
の字形が正確に再現されている。ところが、図4のデー
タから14ドットサイズのビットマップデータを生成す
ると図6に示すように水平ストロークの線間につぶれが
生じて、視認性の劣化が甚だしい。これは、従来のフォ
ント生成処理が、出力ドットサイズのデータを得るため
に、数1を用いた単純な比例計算によってストロークフ
ォントデータの特徴点座標(x,y)を変換しているだけ
で、出力サイズに最適な文字形状を得ることや、つぶれ
を生じさせないようにストローク間隔を補正することを
考慮していないからである。なお、数1において、sは
出力サイズ、mは芯線ストロークデータの座標が取り得
る最大値であり、メッシュサイズと呼ぶ。
成処理の例を示す。
1の単純な変倍処理を用いる代わりに、低画素出力用に
デザインしたストロークフォントDlの特徴点座標(xl,
yl)および、高画素用のフォントDhの特徴点座標(xh,yh)
に数2に示す複雑度補間処理を適用して、サイズSの座
標データ(Xs,Ys)を得る。ここで、字形が複雑な場合、
Dlは、字画省略が行われている。Dhは、一切の字画省略
を行わずにデザインしたものである。
であり、メッシュサイズである。Rは、つぶれを起こさ
ないように座標データを補正するための補間係数であ
り、数3を用いれば、出力サイズsに応じた値を得られ
る。数3において、sl 、shは、それぞれDl 、Dhからつ
ぶれのない出力を得るときの最小画素数である。したが
って、sl ≦s ≦ shの関係が成り立つ。
対応しなければならない。そこで、Dlでは字画省略が必
要なときもストロークや特徴点の数はDhと同一とし、複
数のストロークを一本に重ねて省略したように見せてお
く。
ータ(Xs,Ys)は図3に示す流れに従って線間距離が補正
される。ステップS302は、隣接するストローク間の
距離dを求める処理であり、以降のステップでは、距離
dに応じてストロークを移動する処理を行う。dがn以
下(ステップS303)のときは、d=0すなわち、隣
接ストロークが該ストロークに重なるようにストローク
の移動量を決定する(ステップS309)。dがnより
大きく3n以下(ステップS304)のときは、d=2
nとなるようにストロークの移動量を決定する(ステッ
プS310)。dが3nよりも大きいときは、dの小数
点以下を切り捨て(ステップS305)、前ストローク
との距離がdとなるように移動したときの当該ストロー
クと次のストロークとの距離d1を求め(ステップS3
06)、d1がn以下であれば(ステップS307)、
dからnを減じた量をストロークの移動量に決定する
(ステップS308)。ステップS307の条件が成立
しないときは、dをそのままストロークの移動量にす
る。ステップS311では、dの値にしたがってストロ
ークを移動する。
化してもストローク間隔を1以上確保してつぶれが起こ
らないようにストロークの省略が行われたストロークデ
ータである。これを低画素用フォントデータとし、図4
を高画素用フォントデータとして、これらに複雑度補間
処理および線間補正処理を適用して「遺」の14ドット
フォントを生成すると図8に示すようにつぶれのない結
果が得られる。
最小11ドット用に設計された芯線ストロークデータで
あるため、出力サイズが11ドットよりも小さいときに
は、複雑度補間処理を適用できない。例えば、出力サイ
ズを9ドットとすると、図9に示すようにつぶれが発生
して視認性の低下が起きる。
に開示したフォント処理装置は、複雑度補間処理を適用
可能な画素サイズでは単純な変倍処理を行う従来のフォ
ント処理装置よりも品質のよい低画素フォントを生成で
きる。しかし、複雑度補間処理を適用できない低画素サ
イズになると、視認性が低下するという問題を持ってい
た。
ものであり、非線形変換処理を用いて、フォントを構成
するストロークの間隔がフォントデータ上の点Pの近く
では狭くなり、点Pから遠ければ広くなるようにストロ
ークを移動し、さらにストロークの間隔が1以下でつぶ
れを発生する場合にはこの間隔を0にして見かけの省略
を行う線間補正処理を施すことにより、文字外側よりも
文字中側にストローク省略を多く生じさせ、低画素フォ
ントデータの視認性を向上させることを目的とする。
明は、非線形変換処理を用いて、スケーラブルフォント
を構成するストロークの間隔がフォントデータ上の点P
の近くでは狭くなり、点Pから遠ければ広くなるように
フォントデータを変形するステップと、さらに隣接スト
ロークの接触が起こらないようにストローク間隔を補正
するステップとを備える。
クの間隔がフォントデータ上の点Pの近くでは狭くな
り、点Pから遠ければ広くなるようにフォントデータを
変形するステップにおいて、フォントの書体、文字種、
出力文字サイズ等によって、点Pをフォントデータ上の
任意の座標に設定する。また、フォントデータを変形す
るステップにおいて、フォントデータの変形量は、出力
文字サイズに応じて変化するとともに、フォントデータ
の変形量をパラメータによって設定できる。
用いて、フォントを構成するストロークの間隔がフォン
トデータ上の点Pの近くでは狭くなり、点Pから遠ければ
広くなるようにストロークを移動し、さらにストローク
の間隔が1以下でつぶれを発生する場合には、この間隔
を0にして見かけの省略を行う線間補正処理を施して、
文字外側よりも文字中側にストローク省略を多く生じさ
せることにより、つぶれがなく視認性の高い低画素フォ
ントデータを生成する装置及び方法を提供する。
明する。
点とし、X軸の正の向きが水平右向き、Y軸の正の向き
が垂直下向きとなるような座標系を用いる。
成図である。(101)はCPUであり、ROM(10
3)に格納されたプログラムにしたがって処理を行う。
また、ROM(103)には、図4や図7に示すような
文字の芯線ストロークを表す座標データも格納されてい
る。(102)はRAMであり、CPU(101)がプ
ログラムを実行する際のワークエリアやビットマップ化
したデータを格納するエリアとなる。(104)は生成
するフォントの文字コードや展開サイズを入力するため
のキーボード、(105)は、生成したビットマップデ
ータの出力に用いるプリンタ、(107)は生成した文
字データを表示するディスプレイである。さらに、(1
06)はフロッピーディスクドライブやハードディスク
ドライブなどの外部記憶装置であり、文字座標データの
格納や、生成した文字データの保存に用いることができ
る。
て、文字データを生成する処理プログラムである。
ド、展開サイズが入力される(ステップS201,S2
02)と、ROM(103)から文字の芯線ストローク
を表す座標データを取り出し(ステップS203)、指
定の展開サイズが得られるように座標計算を行い(ステ
ップS204)、ビットマップ変換する(ステップS2
05)。
0の流れ図で表される。ステップS1001では、出力
文字サイズsをshと比較し、s>shであれば、つぶれが発
生することはないので、高画素用データDhに数1を適用
して座標の変倍処理を行う(ステップS1006)。ス
テップS1001においてs>shが偽となったときは、ス
テップS1002に進み、出力文字サイズsをslと比較
する。ステップS1002においてs≧slであれば、低
画素用データDlおよび高画素用データDhに複雑度補間処
理を適用し(ステップS1005)、さらに線間補正処
理(ステップS1004)を適用する。ステップS10
02においてS≧Slが偽となったときは、低画素用デー
タDlに非線形変換(ステップS1003)を施した後、
線間補正処理する(ステップS1004)。
にステップS1005の複雑度補間処理は、特願平09
−287994において使用したものと同じである。
フォントを構成するストロークの間隔がフォントデータ
上の任意の位置に設定した点Pに近いほど狭く、点Pから
遠いほど広くなるようにストロークの移動を行う処理で
あり、数4〜数6を用いて実行される。
るようにフォントデータを平行移動する処理である。こ
こで、数4では、点Pの座標をメッシュサイズmに対する
百分率を用いて指定している。すなわち、点Pの位置
は、文字枠の左上を原点としてx軸方向にmのip%、同じ
くy軸方向jp%のところである。図11に示すストロー
クフォントデータを数4によって、平行移動した例が図
12である。このように平行移動するのは、数5に示す
非線形変換が座標原点を基準とするためである。
いほど間隔が狭く、原点から遠いほど間隔が広くなるよ
うに水平・垂直の各方向独立に移動する。また、パラメ
ータp(>0) は、文字の外側と中側における変形の比率を
制御するパラメータで、値が小さいほど変形の比率が大
きくなる。さらに、数5はフォントデータを出力サイズ
sに変倍する処理を同時に実行する。ここで、出力サイ
ズsが小さいほど外側ストロークの間隔と中側ストロー
クの間隔の比率が大きくなって、外側のつぶれが少なく
なるようになっている。
ントデータを平行移動すれば、非線形変換処理は終了で
ある。
る。変換の中心点Pおよび変形比率調整パラメータpによ
って、等間隔格子状に置かれた線分がどのように移動す
るかを示している。図13において、「×」は点Pを、
破線は変換前の等間隔格子を、実線は変換後の格子を表
している。
になり、点Pから離れるほど疎になっていることがわか
る。また、pの値によって格子間隔が変化している。す
なわち、図13の例のようにpが小さいほど、オリジナ
ルからの変形が大きく、p=10では変形がほとんどないこ
とがわかる。さらに、点Pの位置やパラメータpの大きさ
にかかわらず、格子の最外周すなわち文字枠に移動はな
く、非線形変換が文字の大きさを変えないこともわか
る。
標データからビットマップデータへの変換を行う。これ
には、 JAMES D. FOLEY著「コンピュータ・グラフィッ
クス」(日本コンピュータ協会)に記述されているBres
enhamの線分アルゴリズムが適用できる。図14は、こ
の結果得られた出力サイズ9ドットの「遺」のビットマ
ップデータである。
トのメッシュサイズを縦横ともにmで同一としたが、こ
れは異なるサイズとすることも可能である。同様に出力
フォントサイズも縦横ともにsで同一としたがこれを異
なる値として、縦横の比率が異なる文字を出力すること
も可能である。また、例では、「遺」という水平ストロ
ークの多い漢字を例に説明したが、垂直ストロークの多
い漢字についても同様な処理でつぶれがなく、視認性の
高い低画素ビットマップフォントを生成することができ
る。また、図1の実施例では、上述したフォント処理方
法をROM103に記憶されたプログラムによって実行
する場合について示したが、このプログラムは、フロッ
ピーディスクやハードディスクなどの記憶媒体に記憶す
るようにしてもよい。
るための図である。
理により座標データを求めるときの処理の流れを説明す
るための図である。
例を示すための図である。
フォントデータをもとに単純な変倍処理によって生成し
た24ドットビットマップデータの一例を示すための図で
ある。
フォントデータをもとに単純な変倍処理によって生成し
た14ドットビットマップデータの一例を示すための図で
ある。
例を示すための図である。
って生成した14ドットビットマップデータの一例を示す
ための図である。
ットビットマップデータの一例を示すための図である。
ズとなるように座標計算する処理の流れを示すための図
である。
データの平行移動を説明するための図であり、平行移動
前のストロークフォントデータを表す。
データの平行移動を説明するための図であり、平行移動
後のストロークフォントデータを表す。
するための図である。
フォントデータをもとに生成した9ドットビットマップ
データの一例を示すための図である。
Claims (9)
- 【請求項1】 スケーラブルフォントを記憶する手段
と、前記スケーラブルフォントを構成するストロークの
間隔がフォントデータ上の点Pの近くでは狭くなり、点P
から遠ければ広くなるようにフォントデータを変形する
手段と、さらに隣接ストロークの接触が起こらないよう
にストローク間隔を補正する手段とを備えたことを特徴
とするフォント処理装置。 - 【請求項2】 スケーラブルフォントを構成するストロ
ークの間隔がフォントデータ上の点Pの近くでは狭くな
り、点Pから遠ければ広くなるようにフォントデータを
変形する手段において、フォントの書体、文字種、出力
文字サイズ等によって、点Pをフォントデータ上の任意
の座標に設定することを特徴とする請求項1に記載のフ
ォント処理装置。 - 【請求項3】 スケーラブルフォントを構成するストロ
ークの間隔がフォントデータ上の点Pの近くでは狭くな
り、点Pから遠ければ広くなるようにフォントデータを
変形する手段において、フォントデータの変形量が出力
文字サイズに応じて変化することを特徴とする請求項
1、または請求項2に記載のフォント処理装置。 - 【請求項4】 スケーラブルフォントを構成するストロ
ークの間隔がフォントデータ上の点Pの近くでは狭くな
り、点Pから遠ければ広くなるようにフォントデータを
変形する手段において、フォントデータの変形量をパラ
メータによって設定できることを特徴とする請求項1、
請求項2、または請求項3に記載のフォント処理装置。 - 【請求項5】 スケーラブルフォントを記憶する手段
と、前記スケーラブルフォントを構成するストロークの
間隔がフォントデータ上の点Pの近くでは狭くなり、点P
から遠ければ広くなるようにフォントデータを変形する
ステップと、さらに隣接ストロークの接触が起こらない
ようにストローク間隔を補正するステップとを備えたこ
とを特徴とするフォント処理方法。 - 【請求項6】 スケーラブルフォントを構成するストロ
ークの間隔がフォントデータ上の点Pの近くでは狭くな
り、点Pから遠ければ広くなるようにフォントデータを
変形するステップにおいて、フォントの書体、文字種、
出力文字サイズ等によって、点Pをフォントデータ上の
任意の座標に設定することを特徴とする請求項5に記載
のフォント処理方法。 - 【請求項7】 スケーラブルフォントを構成するストロ
ークの間隔がフォントデータ上の点Pの近くでは狭くな
り、点Pから遠ければ広くなるようにフォントデータを
変形するステップにおいて、フォントデータの変形量が
出力文字サイズに応じて変化することを特徴とする請求
項5、または請求項6に記載のフォント処理方法。 - 【請求項8】 スケーラブルフォントを構成するストロ
ークの間隔がフォントデータ上の点Pの近くでは狭くな
り、点Pから遠ければ広くなるようにフォントデータを
変形するステップにおいて、フォントデータの変形量を
パラメータによって設定できることを特徴とする請求項
5から7のいずれかに記載のフォント処理方法。 - 【請求項9】請求項5から8のいずれかに記載のフォン
ト処理方法を実行するためのプログラムが記録された記
憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03138399A JP3357855B2 (ja) | 1999-02-09 | 1999-02-09 | フォント処理装置、フォント処理方法及び記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03138399A JP3357855B2 (ja) | 1999-02-09 | 1999-02-09 | フォント処理装置、フォント処理方法及び記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000231373A JP2000231373A (ja) | 2000-08-22 |
JP3357855B2 true JP3357855B2 (ja) | 2002-12-16 |
Family
ID=12329744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP03138399A Expired - Fee Related JP3357855B2 (ja) | 1999-02-09 | 1999-02-09 | フォント処理装置、フォント処理方法及び記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3357855B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7868888B2 (en) * | 2006-02-10 | 2011-01-11 | Adobe Systems Incorporated | Course grid aligned counters |
-
1999
- 1999-02-09 JP JP03138399A patent/JP3357855B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000231373A (ja) | 2000-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7945114B2 (en) | Image transform method for obtaining expanded image data, image processing apparatus and image display device therefore | |
JP3483946B2 (ja) | フォント処理装置及びフォント処理方法 | |
EP1709506B1 (en) | Iteratively solving constraints in a font-hinting language | |
US7956861B2 (en) | Method for checkerboard-based vector to raster conversion | |
JP2909273B2 (ja) | アウトライン・フォントの線幅調整方法および装置 | |
US7006107B2 (en) | Anisotropic anti-aliasing | |
JP2876942B2 (ja) | データ変換装置 | |
JP3357855B2 (ja) | フォント処理装置、フォント処理方法及び記憶媒体 | |
JP3408176B2 (ja) | フォント処理装置、フォント処理方法及び記憶媒体 | |
JP3416489B2 (ja) | フォント処理装置およびフォント処理用プログラムを記録した記録媒体 | |
JP2903917B2 (ja) | 画像編集処理装置 | |
JP2002082663A (ja) | フォント処理装置、フォント処理方法及び記憶媒体 | |
JP4930860B2 (ja) | 図形描画装置、アンチエイリアス処理方法およびプログラム | |
KR100705188B1 (ko) | 문자 폰트 표시 방법 | |
JP3114561B2 (ja) | 画像処理装置 | |
KR100691501B1 (ko) | 스냅 힌팅과 스템 힌팅을 사용한 외곽선 폰트의 비트맵이미지 변환 방법 및 그 방법이 구현된 소프트웨어를저장한 컴퓨터가 읽을 수 있는 기록매체 | |
JP3133787B2 (ja) | ハーフトーンフォント生成装置 | |
JP4726087B2 (ja) | データ処理装置、データ処理方法、電子情報機器、制御プログラムおよび可読記録媒体 | |
JP3133788B2 (ja) | ハーフトーンフォント生成装置 | |
JPH0934435A (ja) | 文字出力装置 | |
JPH11305750A (ja) | パターン生成方法及び装置並びにパターン生成プログラムが記憶されたコンピュータに読み取り可能な記録媒体及びビットマップパターンデータが記憶されたコンピュータに読み取り可能な記録媒体 | |
JPS60229766A (ja) | 補間ドツトパタ−ンの出力制御方式 | |
JPH02139263A (ja) | 文字パターン変倍装置 | |
JPH047593A (ja) | 文字発生方法 | |
JPH05249945A (ja) | 文字発生方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081004 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091004 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101004 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111004 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121004 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131004 Year of fee payment: 11 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |