JPH08194459A - アウトライン文字描画装置 - Google Patents

アウトライン文字描画装置

Info

Publication number
JPH08194459A
JPH08194459A JP7006117A JP611795A JPH08194459A JP H08194459 A JPH08194459 A JP H08194459A JP 7006117 A JP7006117 A JP 7006117A JP 611795 A JP611795 A JP 611795A JP H08194459 A JPH08194459 A JP H08194459A
Authority
JP
Japan
Prior art keywords
stem
outline
character
width
coordinate system
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.)
Withdrawn
Application number
JP7006117A
Other languages
English (en)
Inventor
昌宏 ▲高▼澤
Masahiro Takazawa
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP7006117A priority Critical patent/JPH08194459A/ja
Priority to US08/504,670 priority patent/US5777627A/en
Publication of JPH08194459A publication Critical patent/JPH08194459A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves

Abstract

(57)【要約】 【目的】描画する文字の品質を向上することである。 【構成】フォント辞書5には、文字のアウトラインを幾
何学的に定義した複数のデータ15が格納されている。
パス構築部3は、クライアント1から送られる文字コー
ドに対応するデータ15を抽出し、座標変換、ステム幅
調整、曲線の折れ線近似等の処理を行い、共通メモリ6
に幾何学的に表現されたグラフィック・パス16を作成
する。データ15は、文字定義時に想定した展開規則に
ついての識別子を有している。展開規則とは、グラフィ
ック・パス16により表現される文字をビットマップ展
開する際に使用する規則であり、例えば、ピクセルを座
標の格子点上に打つもの等がある。規則記憶部7には、
複数の展開規則がそれぞれ識別子に対応して格納されて
おり、ビットマップ展開部4は、データ15の展開規則
についての識別子に対応する展開規則に従って、ビット
マップ展開する。

Description

【発明の詳細な説明】
【0001】(目次) 産業上の利用分野 従来の技術 発明が解決しようとする課題 課題を解決するための手段 作用 実施例 発明の効果
【0002】
【産業上の利用分野】本発明は、文字描画装置に関し、
特に、文字のアウトライン(外周線)を幾何学的に定義
したアウトライン・データが設定されたフォント辞書を
備え、クライアントから指定された文字コードに対応す
るアウトライン・データにより定義された文字をビット
マップ展開して、ディスプレイやプリンタ等に表示する
アウトライン文字描画装置に関する。
【0003】
【従来の技術】アウトライン文字描画装置は、フォント
辞書を備えている。フォント辞書には、描画対象として
の各文字のアウトラインを幾何学的に定義してなる複数
のアウトライン・データが予め格納されている。アウト
ライン・データは、必要に応じてパラメタを伴う複数の
オペレータにより構成されている。アウトライン文字描
画装置は、文字コードの入力を受けて、対応するアウト
ライン・データの各オペレータに基づき、文字定義時の
座標系である文字座標系から文字描画時の座標系である
装置座標系への座標変換処理、整数化処理、曲線の折れ
線近似処理等の処理を実施し、幾何学的に表現された文
字を、所定の展開規則に従ってビットマップ展開して、
ディスプレイ等の表示装置に表示する。
【0004】ビットマップ展開に用いられる展開規則と
しては、ピクセルを座標の格子上に打つもの、ピクセル
を座標と座標の間に打つもの等があり、従来は、これら
のうちのいづれか1つを採用し、全てのアウトライン・
データのビットマップへの展開にその展開規則を固定的
に使用している。
【0005】また、前記座標変換等の処理に伴い文字を
描画した際に、水平及び垂直ステムの不揃いが発生する
場合がある。なお、ステムとは、文字の一部であって、
アウトラインの一部とこれに対向するアウトラインとで
構成される茎の部分をいい、水平ステムとはx軸に平行
なステムを、垂直ステムとはy軸に平行なステムをい
う。このため、ステムを構成するアウトラインの一方を
移動することにより、ステム幅(ステムを構成するアウ
トライン間の幅)の調整を行い、これに伴いステム幅調
整のために移動したアウトラインに連続する曲線形状の
アウトラインについても調整を行うようにしている。
【0006】
【発明が解決しようとする課題】しかし、従来は、ビッ
トマップ展開に使用する展開規則が固定的であるため、
描画された文字の品質が低いという問題があった。ま
た、ステム幅調整において、曲線部分を折れ線近似した
後に調整を行っているため、調整のための計算量が膨大
となり、処理が遅いという問題もあった。特に、曲線部
分の多い文字、微妙に傾けた文字、あるいは出力サイズ
の小さい文字について、これらの問題が顕著であった。
【0007】よって、本発明の目的は、描画する文字の
品質を向上することである。また、本発明の他の目的
は、処理の高速化を実現することである。
【0008】
【課題を解決するための手段】本発明のアウトライン文
字描画装置は、描画すべき文字を幾何学的に定義した複
数のパス構築オペレータ、及び幾何学的に表現された文
字をビットマップに展開する際に使用する展開規則を指
定する識別子をパラメタとして持つ展開規則オペレータ
を含む複数のアウトライン・データが格納された辞書記
憶手段と、複数の展開規則がそれぞれ識別子に対応して
格納された規則記憶手段と、前記辞書記憶手段の前記ア
ウトライン・データを、文字定義時の座標系である文字
座標系から文字描画時の座標系である装置座標系に変換
する座標変換手段と、前記アウトライン・データの展開
規則オペレータのパラメタとしての識別子に対応する展
開規則を、前記規則記憶手段から抽出し、前記座標変換
手段により処理されたデータにより表現される文字を、
該規則記憶手段から抽出した展開規則に従って、ビット
マップ展開するビットマップ展開手段と、を備えて構成
される。
【0009】また、本発明のアウトライン文字描画装置
は、文字を幾何学的に定義した直線描画オペレータ及び
複数の制御点をパラメタとして持つ曲線描画オペレータ
を含む複数のアウトライン・データが格納された辞書記
憶手段と、前記辞書記憶手段の前記アウトライン・デー
タを、文字定義時の座標系である文字座標系から文字描
画時の座標系である装置座標系に変換する座標変換手段
と、文字の一部であるステムを構成するアウトラインの
組みのいずれか一方についての装置座標系での座標を移
動することによりステム幅を調整するとともに、ステム
幅調整のために移動したアウトラインに連続する曲線に
ついての装置座標系での制御点を該アウトラインの移動
量に応じて移動するステム幅調整手段と、前記ステム幅
調整手段により移動された前記制御点に基づき、折れ線
近似された曲線を生成する折れ線近似手段と、を備えて
構成される。
【0010】
【作用】本発明によると、辞書記憶手段に格納されるア
ウトライン・データを構成するオペレータとして、展開
規則オペレータを創設し、ビットマップ展開時に使用す
る展開規則を選択できるようにしたから、文字をアウト
ライン・データとして定義する際に想定した展開規則に
従って、ビットマップ展開することができるようにな
り、描画した文字の品質を向上することができる。
【0011】また、本発明によると、ステム幅調整のた
めに移動するアウトラインに連続する曲線について、制
御点を該アウトラインの移動量に応じて移動した後に、
折れ線近似処理を行うようにしたから、処理すべきデー
タ量が少なくなり、処理の高速化を図ることができる。
【0012】
【実施例】以下、本発明の実施例を図面に基づいて説明
することにする。図1は本発明実施例の全体構成を示す
ブロック図である。図1において、1は本アウトライン
文字描画装置に文字の描画を依頼するアプリケーション
プログラム等のクライアントである。本アウトライン文
字描画装置は、アウトライン文字処理制御部2、要素パ
ス構築部3、ビットマップ展開部(ビットマップ展開手
段)4、フォント辞書記憶部(辞書記憶手段)5、共通
メモリ6及び規則記憶部(規則記憶手段)7を備えてい
る。要素パス構築部3は、図2に示されているように、
ディスパッチャ部8、オペレータ処理部9、座標変換部
(座標変換手段)10、ステム幅調整部(ステム幅調整
手段)11、折れ線近似部(折れ線近似手段)12、フ
ラグ設定部(フラグ設定手段)13、及び有効範囲記憶
部(有効範囲記憶手段)14を有している。
【0013】クライアント1は描画すべき文字の文字コ
ード、該文字を描画すべき位置、及び出力形式(全塗
り、白抜き、ハッチ等)等を本アウトライン文字描画装
置に送り、これらのデータはアウトライン文字処理制御
部2に送られる。アウトライン文字処理制御部2は、こ
のアウトライン文字描画装置の全体の制御を行うもので
あり、クライアント1からの文字コードをフォント辞書
記憶部5の対応するアウトライン・データへのポインタ
に変換し、文字の描画位置と該ポインタを要素パス構築
部3に送る。
【0014】フォント辞書記憶部5には、描画対象とし
ての各文字のアウトライン(外周線)を幾何学的に定義
したデータである複数のアウトライン・データ15が格
納されている。アウトライン・データ15は、例えば、
図3乃至図5に示されているように、各種のオペレータ
により構成される。オペレータとは、文字のアウトライ
ンを図形として生成するための命令、あるいは文字の描
画に際して行う各種の処理を指定するための命令であ
る。
【0015】オペレータには、例えば、図3に示されて
いるように、描画位置移動オペレータ、線分描画オペレ
ータ、水平線分描画オペレータ、垂直線分描画オペレー
タ等の座標変位をパラメタとして持つ図形描画オペレー
タ、開始点への接続オペレータ、及び終了オペレータ等
のパス構築オペレータがある。また、例えば、図4に示
されているように、水平及び垂直ステムのステム範囲
(水平ステムについては、下端及び上端のy座標、垂直
ステムについては、左端及び右端のx座標)をパラメタ
として持つ水平ステム範囲オペレータ、垂直ステム範囲
オペレータ等のヒント・オペレータがある。さらに、図
5に示されるように、図形描画オペレータの一つとし
て、第1乃至第3制御点についての座標変位をパラメタ
として持つ曲線描画オペレータがある。
【0016】開始点への接続オペレータはパラメタを持
たない。アウトライン・データの最後にはその終了を示
す終了オペレータが置かれる。アウトライン・データ
は、文字を定義した際に使用した座標系(以下、文字座
標系)において作成される。なお、ステムとは、文字の
一部であって、アウトラインの一部とこれに対向するア
ウトラインとで構成される茎の部分をいい、水平ステム
とはx軸に平行なステムを、垂直ステムとはy軸に平行
なステムをいう。
【0017】ヒント・オペレータのパラメタとしてのス
テム範囲について具体的に説明すると、例えば、図6に
示されているような文字の場合には、水平ステムとして
のステムAについては上端の座標y1及び下端の座標y
2がステム範囲である。水平ステムB、C及び垂直ステ
ムD、Eについても同様である。ステムAを例にとる
と、座標y1を通るx軸に平行な直線上に存在するアウ
トラインと座標y2を通るx軸に平行な直線上に存在す
るアウトラインは、互いに組みの関係にあり、これらに
よりステムが構成されることを意味する。
【0018】また、図7に示されているような文字の場
合には、垂直ステムとしてのステムHについては左端の
座標x5及び右端の座標x6がステム範囲である。水平
ステムF、G及び垂直ステムIについても同様である。
ステムHを例にとると、座標x5を通るy軸に平行な直
線上に存在するアウトラインと座標x6を通るy軸に平
行な直線上に存在するアウトラインは、互いに組みの関
係にあり、これらによりステムが構成されることを意味
する。なお、ステムを構成するアウトラインが曲線の場
合には、曲線を作る4つの制御点(カレントポイントを
含む)のうち始点側及び終点側制御点の少なくとも一方
がステム範囲の境界線(例えば、図7において、座標x
5を通るy軸に平行な直線)上に存在しなければならな
い。
【0019】図1及び図2において、要素パス構築部3
のオペレータ処理部9は、各種のオペレータに対応して
グラフィック・パスを作成する処理を行い、ディスパッ
チャ部8は、フォント辞書記憶部5を参照し、アウトラ
イン文字処理制御部2から送られた前記ポインタに対応
するアウトライン・データ15の各オペレータを検出
し、これに対応するオペレータ処理部9に処理を振り分
ける。
【0020】また、要素パス構築部3の座標変換部10
は、座標値の文字座標系から装置座標系への変換、相対
座標の絶対座標への変換等の座標変換処理を行う。ステ
ム幅調整部11は、ステム幅の不揃いを調整するため、
ステムを構成するアウトラインの組みのいずれか一方を
移動する処理を行う。
【0021】折れ線近似部12は、複数の制御点を所定
の曲線により近似して連続した曲線を算出し、これを微
小な直線の集合としての折れ線で表現したデータに変換
する。なお、近似に使用する該所定の曲線としては、例
えば、カレント・ポイント(現描画位置)と曲線描画オ
ペレータのパラメタで与えられる3点の合計4点を制御
点とするベジエ(Bezier)曲線が採用される。
【0022】オペレータ処理部9は、座標変換部10、
ステム幅調整部11、及び折れ線近似部12と協調し
て、グラフィック・パス16を作成して、共通メモリ
(要素パス構築部3及びビットマップ展開部4が共通し
て使用するメモリ)6に格納する。グラフィック・パス
16とは、例えば、図8に示されているように、複数の
パス要素18(a〜f)から構成され、各パス要素18
は、次のパス要素の格納位置を示すポインタ、要素型、
及び必要に応じてx座標、y座標等のパラメタにより構
成されるデータである。
【0023】なお、図8は図3に示したアウトライン・
データに基いて処理した場合のグラフィック・パスを示
しており、図8では、簡単のため、座標変換処理は相対
座標の絶対座標への変換のみで文字座標系からの装置座
標系への変換は行っていない。
【0024】図8に示したグラフィック・パスの意味を
図9を参照して説明する。まず、最初のパス要素18a
は、開始点は座標(x,y)=(0,100)であるこ
とを示し、次のパス要素18bはその前のパス要素18
aが示す座標(0,100)から座標(50,150)
まで線分を引くことを示し、以下順次同様にして、最後
のパス要素18fはその前のパス要素18eが示す座標
(100,0)から最初のパス要素18aが示す座標ま
で線分を引くことを示している。但し、実際にはアウト
ライン・データを装置座標系に変換したものが描画する
文字となるので、文字座標系で定義された文字の形状が
描画結果と必ずしも一致するわけではない。
【0025】図1において、要素パス構築部3は、グラ
フィック・パス16の作成が完了すると、アウトライン
文字処理制御部2にパス作成完了を通知する。これを受
けて、アウトライン文字処理制御部2は、クライアント
1から指示された出力形式をビットマップ展開部4に送
る。
【0026】ビットマップ展開部4は、共通メモリ6内
のグラフィック・パス16により表現される文字を、展
開規則に従ってビットマップ展開してピクセルで表現さ
れた展開データ17を作成し、共通メモリ6に格納す
る。アウトライン文字処理制御部2は、クライアント1
からの描画指示を受けて、展開データ17に基づき、該
文字をディスプレイ等の表示装置に出力する。
【0027】ここで、フォント辞書記憶部5に格納され
るアウトライン・データ15は、細部まで詳細に定義す
るために、想定される文字の描画サイズより大きなサイ
ズ(例えば、1000×1000ドット)で作成されて
いる。また、文字座標系から装置座標系への写像を与え
る変換行列の成分は整数とは限らない(例えば、1.5
%)。さらに、個々のアウトライン・データは相対ベク
トル(座標変位)の形で指定されることが多いので、文
字座標系から装置座標系への変換の際に、誤差が集積さ
れる可能性がある。従って、フォント辞書記憶部5に格
納されたアウトライン・データ15が全て整数の座標で
あっても、装置座標系では必ずしも整数とはならない。
【0028】従って、装置座標系では、文字を構成する
個々のアウトラインの座標を実数(固定小数又は浮動小
数)として処理するが、文字をビットマップ展開する
際、実数である座標を整数であるピクセルに対応させな
ければならない。この対応を取るために、展開規則及び
実数を整数に対応させる整数化規則が用いられる。
【0029】展開規則としては、ピクセルを座標の格子
上に打つもの(以下、展開規則1)、ピクセルを座標と
座標の間に打つもの(以下、展開規則2)等がある。整
数化規則としては、小数点以下を切り捨て、切上げ又は
四捨五入するもの、また、小数点以下を処理した後に整
数を加算又は減算するものがある。これらの展開規則及
び整数化規則は規則記憶部7に格納されている。
【0030】実数を整数に対応させてビットマップ展開
を行うと、描画した時に、本来同じ太さでなければなら
ないはずのステム幅が不揃いになることが、しばしば起
こる。そして、特に問題となるのは、ステム幅の違いが
明確に判別できる水平ステムと垂直ステムである。
【0031】例えば、図10に示すような文字座標系で
の文字を、1.5%に縮小して装置座標系での文字に変
換すると、図11に示されるようになるが、これを小数
点以下切り捨てにより展開規則1で展開した場合には、
図12に示されるような結果となり、小数点以下切り捨
てにより展開規則2で展開した場合には、図13に示さ
れるような結果となる。展開規則1で展開した場合に
は、図12から明らかなように、上下の水平ステムにお
いては上側が太く下側が細く、左右の垂直ステムにおい
ては左側が細く右側が太くなっている。また、展開規則
2で展開した場合には、図13から明らかなように、左
側の垂直ステム及び下側の水平ステムが消失してしまっ
ている。
【0032】このような不都合が生じることを是正する
ため、前述した水平ステム範囲又は垂直ステム範囲を与
えるヒント・オペレータが設けられているのである。ア
ウトライン・データのヒント・オペレータを参照するこ
とにより、水平又は垂直ステムを構成する文字のアウト
ラインの組みの抽出(特定)を行い、ビットマップ展開
の際に、整数ステム幅と目標ステム幅を比較して、一致
しない場合には目標ステム幅に合わせて実ステム幅を調
整するようにしている。このステム幅調整処理について
は、後述する。
【0033】以下、本発明実施例の特徴的部分について
詳述する。 (1)展開規則オペレータ 従来は、文字のビットマップ展開に用いる展開規則は装
置に依存しており、アウトライン・データを作成(定
義)する際に想定した文字とビットマップ展開に用いる
展開規則が必ずしも一致しておらず、描画すると文字が
歪む等の品質の低下が発生した。
【0034】そこで、幾何学的に表現された文字をビッ
トマップに展開する際に使用する展開規則を指定する識
別子をパラメタとして持つ展開規則オペレータを創設
し、ビットマップ展開部4は、複数の展開規則がそれぞ
れ識別子に対応して格納された規則記憶部7から、アウ
トライン・データの展開規則オペレータのパラメタとし
ての識別子に対応する展開規則を抽出し、該抽出した展
開規則を使用して、ビットマップ展開処理を行うように
している。
【0035】従って、文字をアウトライン・データとし
て定義する際に想定した展開規則に従って、ビットマッ
プ展開することができるようになり、描画した文字の品
質を向上することができる。展開規則オペレータの例を
図14に示す。
【0036】展開規則オペレータの識別子をビットマッ
プ展開部4に送る方法としては、要素パス構築部3がグ
ラフィック・パス16の作成が完了したことをアウトラ
イン文字処理制御部2に通知する際に、該識別子をも通
知し、アウトライン文字処理制御部2がビットマップ展
開部4に渡す方法と、図15に示されるように、パス要
素の一つとしてグラフィック・パス16に加える方法が
考えられる。
【0037】なお、前述した整数化規則をも展開規則の
一部に含めて、整数化規則をもオペレータにより指定で
きるようにすることができる。 (2)曲線を含むステムの幅調整 ステム幅を調整しようとするステムに曲線が含まれてい
る場合には、曲線を折れ線近似した後に補正(調整)を
行うようにしている。しかし、幅調整が曲線形状に及ぼ
す微妙な影響を、文字の形状を崩さないように、元の曲
線を近似して得た折れ線に反映するのは、実際には非常
に複雑な処理が必要で、曲線の多い文字では描画速度が
遅くなる等の性能の低下をもたらす原因となる。
【0038】そこで、アウトライン・データが曲線描画
オペレータを含む場合には、ステム幅調整のために移動
するアウトラインに連続する曲線についての制御点を該
アウトラインの移動量に応じて移動し、その後に、折れ
線近似処理を行うようにした。従って、曲線についての
制御点を補正(調整)するだけで済むから、処理が簡略
化され、処理速度を向上することができる。
【0039】具体的に説明すると、曲線描画オペレータ
に対応するグラフィック・パスの要素として図16に示
されるような曲線パス要素を創設して、曲線の折れ線近
似処理を実施せずに、曲線パス要素を含むグラフィック
・パスを作成する。この段階でステム幅調整処理が行わ
れたならば、移動されたアウトラインに連続する曲線に
ついての制御点を該移動されたアウトラインの移動量と
同じ分だけ移動する。
【0040】即ち、図17に示されるような文字の一部
について、黒丸で示す点a1〜a4は制御点を示すもの
として、垂直ステムの右側のアウトラインS1を左に移
動する場合を考えると、図18に示されるようになる。
なお、図18において、白丸は移動前の制御点を示す。
また、この例では、移動する制御点としてアウトライン
S1に関係する点a1及びa2を移動しており、点a3
及びa4は移動していない。その後、曲線パス要素に基
づき折れ線近似処理を実施して、該グラフィック・パス
の曲線パス要素を、折れ線近似された複数の線分パス要
素と入れ換える。 (3)回転により斜めとなったステムのステム幅調整 文字座標系から装置座標系への一般の変換では、文字座
標系で水平ステム又は垂直ステムであったものが、必ず
しも装置座標系で水平又は垂直ステムになるとは限ら
ず、斜めになる場合も少なくない。しかし、従来はステ
ムが文字座標系から装置座標系への変換後も水平又は垂
直ステムのいずれかである場合、即ち、文字座標系から
装置座標系への変換が、平行移動、縮尺変換(スケーリ
ング)、鏡像反転(ミラーリング)及び90°の倍数の
回転の場合のみを対象としており、文字座標系で水平又
は垂直ステムだったものが装置座標系への変換によって
斜めになった場合には、ステム幅の調整ができず、自由
度が低いとともに、描画した文字の品質の低下を招いて
いた。
【0041】また、ステム幅の調整に用いる目標ステム
幅としては、ヒント・オペレータのステム範囲を装置座
標系に変換したものに基づき、装置座標系にてステムを
構成するアウトラインの抽出(特定)を行い、装置座標
系にて両座標間の幅を求め、これを整数化したものを採
用していた。従来は、装置座標系において水平又は垂直
ステムのみをステム幅調整の対象としていたため、ステ
ムの特定が容易であり、水平ステムについてはy座標同
士の差、垂直ステムについてはx座標同士の差により容
易に該目標ステム幅を求めることができたのであるが、
装置座標系にて斜めになったステムについては、ステム
の特定や幅の算出は複雑な処理となる。
【0042】そこで、アウトライン・データのヒント・
オペレータのステム範囲に基づき、文字の一部であるス
テムを構成するアウトラインの組みを文字座標系にて抽
出する。そして、ステムを構成するアウトラインの組み
についての文字座標系での座標をそれぞれ装置座標系に
変換した後にそれぞれ整数化した座標間の該アウトライ
ンに直交する方向の幅を所定の展開規則に従ってビット
マップ展開したピクセル数で表したものを、整数実ステ
ム幅とし、ステムを構成するアウトラインの組みについ
ての文字座標系での座標間の該アウトラインに直交する
方向の幅を装置座標系に変換した後に整数化したもの
を、目標ステム幅とし、該整数実ステム幅と該目標ステ
ム幅の差を第1補正量として、該第1補正量に基づき、
ステムを構成するアウトラインの組みのうちのいずれか
一方についての装置座標系での座標を移動することによ
りステム幅を調整する。
【0043】なお、アウトラインの移動は、第1補正量
の装置座標系でのx方向成分及びy方向成分を補正値と
して、装置座標系における移動すべきアウトラインにつ
いてのx及びy座標を補正することにより行われる。
【0044】このように、ステムを構成するアウトライ
ンの抽出を文字座標系にて行うようにしたから、装置座
標系で斜めになるステムについてもその特定のための処
理が簡略であり、計算誤差により抽出が適正に行えない
ということもない。また、文字座標系でのステム幅を装
置座標系に変換したものを目標ステム幅としたから、例
えば、装置座標系において一方のアウトラインについて
の座標点から他方のアウトラインに引いた垂線と該他方
のアウトラインとの交点を求めて、これら2点間の幅を
算出するというような複雑な処理を行う必要はなく、高
速処理を実現でき、処理性能が高い。 (4)ステム消失対策 前述したステム幅調整において、用いる整数化規則によ
っては、整数ステム幅と比較する目標ステム幅が「0」
となってしまう場合があり、文字をビットマップ展開し
た場合に、図13に示したものと同様に、描画されるべ
きステムが消失することがある。また、ステムが消失し
たか否かを特別な方法で検出することも可能ではある
が、処理負担を増大させる原因となる。
【0045】そこで、ステム幅調整の際に実ステム幅と
比較する目標ステム幅が「0」となった場合には、該目
標ステム幅を強制的に「1」に設定するようにした。こ
れにより、処理負担を増大させることなくステムが消失
することが防止され、描画する文字の品質を向上するこ
とができる。 (5)移動実績有無フラグ 一本の水平又は垂直ステムであっても、その太さを途中
で変更したい場合があるため、ステム範囲はアウトライ
ン・データの途中で任意に変更することができるように
なっているのが一般的である。しかし、従来はステムを
構成するアウトラインの組みのいずれを動かすかは固定
的に決定されており、ステム幅が途中で変更になると、
正しく処理できないことがあった。
【0046】例えば、水平ステムなら上側を、垂直ステ
ムなら右側を動かすとした場合のステム幅調整の例を、
図19(a)〜(d)に示す。まず、図19(a)はス
テム幅調整を行うべき元の形状である。アウトラインA
−B及びアウトラインC−Dにより構成されるステム幅
の調整において、このステムは本来の幅よりも太いもの
とすると、図19(b)に示されるように、アウトライ
ンA−BをアウトラインC−Dに近づけてアウトライン
A′−B′とする。
【0047】次に、アウトラインA′−B′及びアウト
ラインE−Fにより構成されるステム幅の調整におい
て、このステムは目標ステム幅と同じだとすると、図1
9(c)に示されるように、調整は行わない。次に、ア
ウトラインA′−B′及びアウトラインG−Hにより構
成されるステム幅の調整において、このステムは目標ス
テム幅よりも細いものとすると、図19(d)に示され
るように、アウトラインA′−B′をアウトラインG−
Hから遠ざけてアウトラインA−Bとする。図19
(a)と図19(d)の比較から明らかなように、調整
後の形状が調整前の形状に戻ってしまっている。これで
は、調整の意味がない。
【0048】そこで、ステムを構成するアウトラインの
それぞれについて、ステム幅調整のために移動された実
績の有無を示すフラグが設定されるフラグ設定部13を
設けている。ステム幅調整部11は、フラグ設定部13
を参照して「移動実績無し」となっているアウトライン
を、移動するアウトラインとしてステム幅を調整すると
ともに、フラグ設定部13の該移動したアウトラインに
ついての移動実績有無フラグを「移動実績有り」に変更
する。
【0049】これを、図20(a)〜(d)を参照し
て、具体的に説明する。まず、図20(a)はステム幅
調整を行うべき元の形状である。この段階で、ステム幅
の調整は行っていないので、ステムを構成する全てのア
ウトラインについての移動実績有無フラグは「移動実績
無し」に設定されている。
【0050】アウトラインA−B及びアウトラインC−
Dにより構成されるステム幅の調整において、このステ
ムは本来の幅よりも太いものとすると、図20(b)に
示されるように、アウトラインA−BをアウトラインC
−Dに近づけてアウトラインA′−B′とする。ここ
で、アウトラインA−B(A′−B′)についての移動
実績有無フラグを「移動実績有り」に変更する。
【0051】次に、アウトラインA′−B′及びアウト
ラインE−Fにより構成されるステム幅の調整におい
て、このステムは目標ステム幅と同じだとすると、図2
0(c)に示されるように、調整は行わない。従って、
移動実績有無フラグは変更しない。次に、アウトライン
A′−B′及びアウトラインG−Hにより構成されるス
テム幅の調整において、このステムは目標ステム幅より
も細いものとする。
【0052】ここで、アウトラインA′−B′又はアウ
トラインG−Hのいずれかを移動することになるが、こ
のとき、アウトラインA−B(A′−B′)についての
移動実績有無フラグは「移動実績有り」であり、アウト
ラインG−Hについての移動実績有無フラグは「移動実
績無し」であるから、移動するアウトラインとしてアウ
トラインG−Hを選択し、図20(d)に示されるよう
に、アウトラインG−HをアウトラインA′−B′から
遠ざけてG′−H′とする。図19(d)と図20
(d)を比較すれば明らかなように、調整後の形状が調
整前の形状に戻ってしまうという不都合が防止されてい
ることが理解できる。 (6)アウトライン形状 例えば、図21に示されるような文字のステム範囲に対
応する、アウトライン文字描画装置内で取り扱うアウト
ライン情報としては、図22及び図23に示されるよう
に、線分の両端の座標を羅列するかたちで保持してい
る。なお、図22は水平アウトライン情報を示し、図2
3は垂直アウトライン情報を示す。
【0053】例えば、図21のアウトラインb1につい
てのアウトライン情報は、図22の最上段に表示されて
いるように、始点x=10、終点x=20、y=20と
なっている。その意味は、始点(x=10,y=2
0)、終点(x=20,y=20)間を結ぶ水平線は、
ステムを構成するアウトラインであることを示す。そし
て、このようなアウトライン情報に基づき、図24に示
されるようなグラフィック・パスを作成している。
【0054】しかし、ステム幅調整処理において、例え
ば、図21のアウトラインb1とアウトラインb2は一
直線上に連続する水平線であるにもかかわらず、アウト
ラインb1を移動処理した後に、アウトラインb2を同
様に移動処理することになり、重複する処理が必要であ
った。即ち、同じ点(図21のx=20,y=20の
点)について2回移動処理を実施することになり、処理
の効率が悪い。
【0055】また、水平又は垂直ステムならば、移動す
るアウトラインについての座標を目標ステム幅となるよ
うに、新たな座標に書き換えればよいから、同じ座標を
複数回書き換えても文字が崩れることはないが、斜めの
ステムの場合には、移動するアウトラインについての座
標に、調整量に相当する変位を加算又は減算することに
なるので、同じ座標を複数回書き換えると、文字の形状
が崩れる場合がある。
【0056】そこで、ステム幅調整部11は、ステムを
構成するアウトラインの組みのいずれか一方を移動する
際に、該移動するアウトラインに連続する他のアウトラ
インが該アウトラインと同一のアウトライン形状を有す
る場合には、該アウトラインと該他のアウトラインを一
括的に移動するようにした。
【0057】具体的に説明すると、図25及び図26に
示されるようなアウトライン情報を採用し、図27に示
されるようなグラフィック・パスを作成するようにし
た。なお、図25は水平アウトライン情報を、図26は
垂直アウトライン情報を示す。このアウトライン情報で
は、形状が変化しない点の情報は持たず、水平線と垂直
線の交点(例えば、図21において、x=70,y=2
0の点)の座標のみで表現し、アウトライン形状が変化
しない中間点(例えば、図21において、x=20,Y
=20の点)の座標を省略している。
【0058】そして、図27に示されているように、グ
ラフィック・パスの各パス要素には、形状データを設定
するフィールドを設け、そこにアウトライン形状を示す
形状データ(水平、垂直、斜め)を設定するようにし
た。直線パス要素の場合には、図27に示されるよう
に、形状のフィールドは1個とする。曲線パス要素の場
合には、一般に始点側と終点側で形状が異なるため、図
28に示されるように、形状のフィールドを2個とし、
あるいは形状のフィールドを1個として2個の形状デー
タを混合したかたちで持つようにすることができる。
【0059】ステム幅調整処理においては、まず、アウ
トライン情報として持っている線分又は曲線についての
座標を調整量分だけ移動し、次いで、グラフィック・パ
スを各パス要素の形状データを参照しつつ逆に辿って、
アウトライン形状が変化するところまで、順次座標を移
動することによりステム幅の調整を行う。このようにす
ることにより、同じ座標を複数回書き換えることなく、
ステム幅の調整が可能であり、処理の高効率化を図れる
とともに、文字の崩れも防止することができる。なお、
アウトライン情報の情報量も少なくなっており、これに
よる処理負担の軽減も同時に達成されている。 (7)実数で取り扱った場合のステム幅調整 上記のステム幅調整処理においては、ステムを構成する
アウトラインの移動量を整数値で求めている。しかし、
常に移動量を整数値とすると、曲線につながるステム
(英字「O」のように、ステム全体が曲線である場合も
含む)や、もともと水平又は垂直ステムだったが回転等
により斜めになったものを幅調整した結果、文字全体の
バランスが崩れる状況が発生する場合がある。
【0060】図29乃至図31は、曲線を含むステム
を、水平ステムでは下側のアウトラインを、垂直ステム
では右側のアウトラインを移動することにより幅調整を
行うとした場合の例である。ここでは、一組のアウトラ
イン(例えば、図29において、アウトラインc1及び
c2)で囲まれた領域と共通部分を持つピクセルが表示
対象で、実ステム幅の算出に用いる整数化規則は「装置
座標上でアウトラインの組みの上又は右は小数部切り上
げ、下又は左は小数部切り捨て」であり、目標ステム幅
の算出に用いる整数化規則は「小数部を切り捨て」であ
る。
【0061】以下の説明に用いる用語を定義すると、前
記定義による実ステム幅は整数化されているので整数実
ステム幅といい、整数化していないもの、即ち、ステム
を構成するアウトラインの組みについての文字座標系で
の座標をそれぞれ装置座標系に変換した座標間の該アウ
トラインに直交する方向の幅を実数で表したものを実数
実ステム幅という。
【0062】図29は幅調整前の状態であり、実数実ス
テム幅は水平及び垂直共に「1.5」、整数実ステム幅
はそれぞれ「2」、目標ステム幅はそれぞれ「1」であ
る。これにステム幅調整処理を施す。図30は整数実ス
テム幅を垂直及び水平共に目標ステム幅「1」に一致さ
せるため、移動量を「1」として、整数実ステム幅から
それぞれ「1」を引き、ステム幅調整処理を実施して整
数実ステム幅を「1」にしたものである。この場合の実
数実ステム幅は「1.5」−「1.0」=「0.5」と
なる。
【0063】そして、ステム幅調整に伴い、移動するア
ウトライン(この例では、下側のアウトライン)に連続
する曲線について、移動量を「1」として制御点が移動
されることになる。図30に示したものの描画結果を観
察すると、曲線部分について、調整量「1」とすると、
水平及び垂直部分と比較して曲線部分が細くなり、文字
全体としてのバランスが悪い。
【0064】これを解決するため、ステム幅調整部11
に、以下のような処理を実行させるようにした。ここ
で、理解を容易にするため、既に定義した用語も含め
て、以下の説明に使用する用語を定義しておく。
【0065】ステムを構成するアウトラインの組みにつ
いての文字座標系での座標をそれぞれ装置座標系に変換
した後にそれぞれ整数化した座標間の該アウトラインに
直交する方向の幅を所定の展開規則に従ってビットマッ
プに展開したピクセル数で表した幅を、整数実ステム幅
h′とする。
【0066】ステムを構成するアウトラインの組みにつ
いての文字座標系での座標間の該アウトラインに直交す
る方向の幅を装置座標系に変換した後に整数化した整数
値としての幅を、目標ステム幅Hとする。
【0067】ステムを構成するアウトラインの組みにつ
いての文字座標系での座標をそれぞれ装置座標系に変換
した座標間の該アウトラインに直交する方向の実数値と
しての幅を、実数実ステム幅hとする。
【0068】整数実ステム幅h′と目標ステム幅Hの差
(h′−H)を第1補正量Dとし、実数実ステム幅hと
整数実ステム幅h′の差(h−h′)を第2補正量dと
する。なお、第1補正量Dは整数であり、第2補正量d
は−1<d<+1なる実数である。
【0069】そして、ステム幅調整部11は、移動すべ
きアウトラインについての座標を、第1補正量Dの装置
座標系でのx成分及びy成分に基づき移動し、さらに第
2補正量dの装置座標系でのx成分及びy成分に基づき
移動する。
【0070】次いで、該ステム幅調整のために移動した
アウトラインに連続する曲線についての装置座標系での
制御点を、第1補正量Dの装置座標系でのx成分及びy
成分に基づき移動し、さらに第2補正量dの装置座標系
でのx成分及びy成分に基づき移動する。
【0071】但し、第1補正量D及び第2補正量dの双
方により調整した結果、整数実ステム幅h′が目標ステ
ム幅Hと一致しなくなる場合があるが、この場合には、
第1補正量Dのみにより補正し、第2補正量dによる補
正は実施しない。
【0072】折れ線近似部12は、ステム幅調整部11
により移動された制御点に基づき、折れ線近似された曲
線を生成する。図29の場合には、整数実ステム幅は
h′=「2」、目標ステム幅はH=「1」、実数実ステ
ム幅はh=「1.5」であるから、第1補正量D、第2
補正量dは、D=「1」、d=「−0.5」となり、
「D+d」=「0.5」を移動量としてステム幅の調整
及び制御点の移動が行われる。調整後の整数実ステム幅
はh′=「1」となり、実数実ステム幅もh=「1.
0」となる。このような調整を行った後の描画結果が図
31に示されている。
【0073】図30と図31を比較すれば明らかなよう
に、水平及び垂直部分の整数実ステム幅は両図共に目標
ステム幅と一致しているが、図31の曲線部分は、図3
0の曲線部分よりも太くなっており、文字全体として観
察したときに、水平、垂直部分と曲線部分の太さのバラ
ンスが適正になっている。
【0074】ここで、第2補正量dは実数であるから、
計算誤差等により「0」に極めて近い値となっても
「0」になることは少ない。従って、上記のような処理
を常に厳密に実施すると、第1補正量Dが「0」であっ
ても、第2補正量dが「0」でない場合には、アウトラ
インの移動を行うことになり、処理負担の増大を招き、
性能が低下することが懸念される。
【0075】この問題の対策としては、文字を描画すべ
き表示装置(ディスプレイ、プリンタ等)の解像度や出
力する文字の大きさに応じて、予め第2補正量dの有効
範囲を定めておき、有効範囲外の場合には、第2補正量
dを「0」とみなして、処理するようにすると良い。な
お、第2補正量dの有効範囲としては、600dpi
(ドット/インチ)の解像度のプリンタの場合には、例
えば、d>0.25、d<−0.25とすることができ
る。 (8)隣り合うステムとの関係を考慮したアウトライン
の移動 ステム幅調整は、ステムのどちら側のアウトラインを動
かすかを予め決めておくことにより行ている。また、前
述したように、フラグ設定部13を用いて、移動実績の
無いアウトラインのみを、移動するアウトラインとして
いる。しかし、文字のデザインと描画サイズによって
は、描画時に文字の潰れが発生することがある。
【0076】図32乃至図34は、ステム幅調整と文字
の潰れについての例である。ここでは、一組のアウトラ
インで囲まれた領域と共通部分を持つピクセルが表示対
象で、整数ステム幅の算出に用いる整数化規則は「装置
座標上でアウトラインの組みの上又は右は小数部切り上
げ、下又は左は小数部切り捨て」であり、目標ステム幅
の算出に用いる整数化規則は「小数部を四捨五入」であ
る。
【0077】図32に示されているように、ステム幅調
整前において、ステムAとステムB間の空白がなくな
る、いわゆる潰れが発生している。これにステム幅調整
を施すことになるが、どちら側のアウトラインを動かす
かで、潰れが解消できたり、できなかったりする。図3
3は、ステムAの上側のアウトラインをステムAの下側
のアウトラインに近づけた場合であるが、潰れが解消さ
れていない。
【0078】この問題の対策として、ステム幅調整のた
めに移動するアウトラインを以下のように決定するよう
にした。即ち、ステム幅の調整をすべき被調整ステムと
該被調整ステムの両側に並列する第1並列ステム及び第
2並列ステムとの間の離間寸法に相当する第1ピクセル
数及び第2ピクセル数をそれぞれ求める。
【0079】そして、第1ピクセル数と第2ピクセル数
が同一の場合には、被調整ステムを構成するアウトライ
ンの組みのいずれか一方を、移動するアウトラインとす
る。第1ピクセル数が第2ピクセル数よりも大きい場合
には、被調整ステムを太らせるときには、被調整ステム
の第1並列ステム側のアウトラインを、移動するアウト
ラインとする。被調整ステムを細らせるときには、該被
調整ステムの該第2並列ステム側のアウトラインを、移
動するアウトラインとする。
【0080】第1ピクセル数が第2ピクセル数よりも小
さい場合には、被調整ステムを太らせるときには、被調
整ステムの第2並列ステム側のアウトラインを移動する
アウトラインとし、被調整ステムを細らせるときには、
被調整ステムの第1並列ステム側のアウトラインを、移
動するアウトラインとする。なお、上述のステム幅の調
整方法は、そのステムを成すアウトラインのどちらも移
動実績がない場合に適用される。どちらかのアウトライ
ンが移動されているならば、前記の移動実績有無フラグ
のところで述べた通り、動かすことのできるアウトライ
ンは一意に確定してしまうためである。
【0081】また、ステム幅の調整をすべき被調整ステ
ムを構成するアウトラインの組みの一方を移動すると、
移動するアウトライン側に並列するステムとの離間寸法
に相当するピクセル数が不足する場合があるが、このよ
うな場合には、該被調整ステムについてのステム幅の調
整は行わないようにする。
【0082】移動するアウトラインを前記のように決定
することにより、文字の潰れを解消できる、あるいはス
テム幅調整により文字の潰れが発生してしまうことが防
止される。
【0083】図32に示した例において、移動するアウ
トラインを前記のように決定すると、ステムAの下側の
アウトラインをステムAの上側のアウトラインに近づけ
る方向に移動することになり、図34に示されるよう
に、ステムAとステムBの間の潰れが解消されることに
なる。なお、前記の説明では、ステム幅調整によりステ
ム幅を細らせる場合を例として説明しているが、ステム
幅を太らせる場合にも同様である。
【0084】
【発明の効果】以上説明したように、本発明によると、
曲線部分の多い文字、微妙に傾けた文字、あるいは出力
サイズの小さい文字の場合を含めて、描画した文字の品
質を向上することができるという効果を奏する。また、
処理負担が軽減され、処理の高速化を実現することがで
きるという効果を奏する。
【図面の簡単な説明】
【図1】本発明実施例の全体構成を示すブロック図であ
る。
【図2】本発明実施例の要部構成を示すブロック図であ
る。
【図3】アウトライン・データの一例を示す図である。
【図4】アウトライン・データの他の例を示す図であ
る。
【図5】アウトライン・データのさらに他の例を示す図
である。
【図6】ステム範囲を説明するための図である。
【図7】ステム範囲を説明するための図である。
【図8】グラフィック・パスの一例を示す図である。
【図9】図8のグラフィック・パスの意味を説明するた
めの図である。
【図10】文字座標系での文字の一例を示す図である。
【図11】装置座標系での文字の一例を示す図である。
【図12】展開規則1による展開結果を示す図である。
【図13】展開規則2による展開結果を示す図である。
【図14】展開規則オペレータを示す図である。
【図15】展開規則についてのパス要素を示す図であ
る。
【図16】グラフィック・パスにおける曲線パス要素を
示す図である。
【図17】制御点の調整の説明図(調整前)である。
【図18】制御点の調整の説明図(調整後)である。
【図19】ステム幅調整の説明図である。
【図20】改良したステム幅調整の説明図である。
【図21】アウトライン情報の説明図である。
【図22】水平アウトライン情報を示す図である。
【図23】垂直アウトライン情報を示す図である。
【図24】グラフィック・パスを示す図である。
【図25】改良した水平アウトライン情報を示す図であ
る。
【図26】改良した垂直アウトライン情報を示す図であ
る。
【図27】改良したグラフィック・パスを示す図であ
る。
【図28】形状付き曲線パス要素を示す図である。
【図29】曲線を含むステムのステム幅調整の説明図
(調整前)である。
【図30】曲線を含むステムのステム幅調整の説明図
(調整後)である。
【図31】改良した曲線を含むステムのステム幅調整の
説明図(調整後)である。
【図32】ステム幅調整の説明図(調整前)である。
【図33】ステム幅調整の説明図(調整後)である。
【図34】改良したステム幅調整の説明図(調整後)で
ある。
【符号の説明】
1 クライアント 2 アウトライン文字処理制御部 3 要素パス構築部 4 ビットマップ展開部 5 フォント辞書記憶部 6 共通メモリ 7 規則記憶部 8 ディスパッチャ部 9 オペレータ処理部 10 座標変換部 11 ステム幅調整部 12 折れ線近似部 13 フラグ設定部 14 有効範囲記憶部 15 アウトライン・データ 16 グラフィック・パス 17 展開データ

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 描画すべき文字を幾何学的に定義した複
    数のパス構築オペレータ、及び幾何学的に表現された文
    字をビットマップに展開する際に使用する展開規則を指
    定する識別子をパラメタとして持つ展開規則オペレータ
    を含む複数のアウトライン・データが格納された辞書記
    憶手段と、 複数の展開規則がそれぞれ識別子に対応して格納された
    規則記憶手段と、 前記辞書記憶手段の前記アウトライン・データを、文字
    定義時の座標系である文字座標系から文字描画時の座標
    系である装置座標系に変換する座標変換手段と、 前記アウトライン・データの展開規則オペレータのパラ
    メタとしての識別子に対応する展開規則を、前記規則記
    憶手段から抽出し、前記座標変換手段により処理された
    データにより表現される文字を、該規則記憶手段から抽
    出した展開規則に従って、ビットマップ展開するビット
    マップ展開手段と、を備えたことを特徴とするアウトラ
    イン文字描画装置。
  2. 【請求項2】 文字を幾何学的に定義した直線描画オペ
    レータ及び複数の制御点をパラメタとして持つ曲線描画
    オペレータを含む複数のアウトライン・データが格納さ
    れた辞書記憶手段と、 前記辞書記憶手段の前記アウトライン・データを、文字
    定義時の座標系である文字座標系から文字描画時の座標
    系である装置座標系に変換する座標変換手段と、 文字の一部であるステムを構成するアウトラインの組み
    のいずれか一方についての装置座標系での座標を移動す
    ることによりステム幅を調整するとともに、ステム幅調
    整のために移動したアウトラインに連続する曲線につい
    ての装置座標系での制御点を該アウトラインの移動量に
    応じて移動するステム幅調整手段と、 前記ステム幅調整手段により移動された前記制御点に基
    づき、折れ線近似された曲線を生成する折れ線近似手段
    と、を備えたことを特徴とするアウトライン文字描画装
    置。
  3. 【請求項3】 文字を幾何学的に定義したパス構築オペ
    レータ、並びに水平及び垂直ステムをなすアウトライン
    の位置を示すステム範囲をパラメタとして持つヒント・
    オペレータを含む複数のアウトライン・データが格納さ
    れた辞書記憶手段と、 前記辞書記憶手段の前記アウトライン・データを、文字
    定義時の座標系である文字座標系から文字描画時の座標
    系である装置座標系に変換する座標変換手段と、 前記アウトライン・データのヒント・オペレータのステ
    ム範囲に基づき、文字の一部であるステムを構成するア
    ウトラインの組みを文字座標系にて抽出し、該ステムを
    構成するアウトラインの組みについての文字座標系での
    座標をそれぞれ装置座標系に変換した後にそれぞれ整数
    化した座標間の該アウトラインに直交する方向の幅を所
    定の展開規則に従ってビットマップ展開したピクセル数
    で表したものを、整数実ステム幅とし、ステムを構成す
    るアウトラインの組みについての文字座標系での座標間
    の該アウトラインに直交する方向の幅を装置座標系に変
    換した後に整数化したものを、目標ステム幅とし、該整
    数実ステム幅と該目標ステム幅の差を第1補正量とし
    て、該第1補正量に基づき、ステムを構成するアウトラ
    インの組みのうちのいずれか一方についての装置座標系
    での座標を移動することによりステム幅を調整するステ
    ム幅調整手段と、を備えたことを特徴とするアウトライ
    ン文字描画装置。
  4. 【請求項4】 前記ステム幅調整手段は、前記目標ステ
    ム幅が「0」となった場合には、前記目標ステム幅を強
    制的に「1」に設定するようにしたことを特徴とする請
    求項3に記載のアウトライン文字描画装置。
  5. 【請求項5】 ステムを構成するアウトラインについ
    て、ステム幅調整のために移動された実績の有無を示す
    フラグが設定されるフラグ設定手段を、さらに備え、 前記ステム幅調整手段は、前記フラグ設定手段を参照し
    て移動実績の無いアウトラインを、移動するアウトライ
    ンとしてステム幅を調整するとともに、該フラグ設定手
    段の該移動したアウトラインについてのフラグを移動実
    績有りに変更するようにしたことを特徴とする請求項3
    に記載のアウトライン文字描画装置。
  6. 【請求項6】 前記ステム幅調整手段は、ステム幅を調
    整するためにステムを構成するアウトラインの組みのい
    ずれか一方を移動する際に、該移動するアウトラインに
    連続する他のアウトラインが該アウトラインと同一のア
    ウトライン形状を有する場合には、該アウトラインと該
    他のアウトラインを一括的に移動するようにしたことを
    特徴とする請求項3に記載のアウトライン文字描画装
    置。
  7. 【請求項7】 複数の制御点をパラメタとして持つ曲線
    描画オペレータの制御点に基づき、折れ線近似された曲
    線を生成する折れ線近似手段を、さらに備え、 前記辞書記憶手段のアウトライン・データは、前記曲線
    描画オペレータを含み、 前記ステム幅調整手段は、ステムを構成するアウトライ
    ンの組みについての文字座標系での座標をそれぞれ装置
    座標系に変換した座標間の該アウトラインに直交する方
    向の実数値としての幅を、実数実ステム幅とし、該実数
    実ステム幅と前記整数実ステム幅の差を第2補正量とし
    て、前記第2補正量に基づき、前記ステム幅調整のため
    に移動したアウトラインについての装置座標系での座標
    を、さらに移動するとともに、該ステム幅調整のために
    移動したアウトラインに連続する曲線についての装置座
    標系での制御点を、前記第1及び第2補正量に基づき移
    動し、 前記折れ線近似手段は、前記ステム幅調整手段により移
    動された前記制御点に基づき、折れ線近似された曲線を
    生成するようにしたことを特徴とする請求項3に記載の
    アウトライン文字描画装置。
  8. 【請求項8】 文字を出力すべき表示装置の解像度及び
    出力する文字の大きさに応じて予め決められた、前記第
    2補正量についての有効範囲が格納された有効範囲記憶
    手段を、さらに備え、 前記ステム幅調整手段は、前記第2補正量が該有効範囲
    記憶手段に格納された対応する有効範囲外の場合には、
    前記第2補正量を「0」とみなして処理するようにした
    ことを特徴とする請求項7に記載のアウトライン文字描
    画装置。
  9. 【請求項9】 前記ステム幅調整手段は、ステム幅の調
    整をすべき被調整ステムと該被調整ステムに並列する第
    1並列ステムとの離間寸法に相当する第1ピクセル数、
    及び該被調整ステムの該第1並列ステムと反対側に並列
    する第2並列ステムとの離間寸法に相当する第2ピクセ
    ル数をそれぞれ求め、 該第1ピクセル数が該第2ピクセル数よりも大きい場合
    には、該被調整ステムを太らせるときには、該被調整ス
    テムの該第1並列ステム側のアウトラインを移動するア
    ウトラインとし、該被調整ステムを細らせるときには、
    該被調整ステムの該第2並列ステム側のアウトラインを
    移動するアウトラインとし、 該第1ピクセル数が該第2ピクセル数よりも小さい場合
    には、該被調整ステムを太らせるときには、該被調整ス
    テムの該第2並列ステム側のアウトラインを移動するア
    ウトラインとし、該被調整ステムを細らせるときには、
    該被調整ステムの該第1並列ステム側のアウトラインを
    移動するアウトラインとするようにしたことを特徴とす
    る請求項3又は5に記載のアウトライン文字描画装置。
  10. 【請求項10】 前記ステム幅調整手段は、ステム幅の
    調整をすべき被調整ステムを構成するアウトラインの組
    みの一方を移動すると、該移動するアウトライン側に並
    列するステムとの離間寸法に相当するピクセル数が不足
    する場合には、該被調整ステムについてのステム幅の調
    整は行わないようにしたことを特徴とする請求項9に記
    載のアウトライン文字描画装置。
JP7006117A 1995-01-19 1995-01-19 アウトライン文字描画装置 Withdrawn JPH08194459A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7006117A JPH08194459A (ja) 1995-01-19 1995-01-19 アウトライン文字描画装置
US08/504,670 US5777627A (en) 1995-01-19 1995-07-20 Outline character drawing apparatus with stem width adjustment according to user specified bit-map development rules

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7006117A JPH08194459A (ja) 1995-01-19 1995-01-19 アウトライン文字描画装置

Publications (1)

Publication Number Publication Date
JPH08194459A true JPH08194459A (ja) 1996-07-30

Family

ID=11629571

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7006117A Withdrawn JPH08194459A (ja) 1995-01-19 1995-01-19 アウトライン文字描画装置

Country Status (2)

Country Link
US (1) US5777627A (ja)
JP (1) JPH08194459A (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5959634A (en) * 1993-12-09 1999-09-28 Canon Kabushiki Kaisha Character generating system employing thickening or narrowing of characters
US6552727B2 (en) 1998-03-27 2003-04-22 Microsoft Corp. Method for authoring hints for a font using a graphical user interface
US7236174B2 (en) * 2004-01-26 2007-06-26 Microsoft Corporation Adaptively filtering outlines of typographic characters to simplify representative control data
US7187382B2 (en) 2004-01-26 2007-03-06 Microsoft Corporation Iteratively solving constraints in a font-hinting language
US7136067B2 (en) * 2004-01-26 2006-11-14 Microsoft Corporation Using externally parameterizeable constraints in a font-hinting language to synthesize font variants
US7292247B2 (en) * 2004-01-26 2007-11-06 Microsoft Corporation Dynamically determining directions of freedom for control points used to represent graphical objects
US7265757B2 (en) * 2004-05-28 2007-09-04 Microsoft Corporation Appropriately rendering a graphical object when a corresponding outline lacks control points
US7256786B2 (en) * 2004-05-28 2007-08-14 Microsoft Corporation Appropriately rendering a graphical object when a corresponding outline has exact or inexact control points
US8253742B2 (en) * 2004-05-28 2012-08-28 Microsoft Corporation Rendering stroke pairs for graphical objects
US11443466B2 (en) * 2020-08-05 2022-09-13 Kyocera Document Solutions Inc. Image forming apparatus that randomly processes outline data in association with a character code to render a character in different forms, image forming method including randomly processing outline data in association with a character code to render a character in different forms, and non-transitory computer readable recording medium that records an information processing program that realizes the image forming method including randomly processing outline data in association with a character code to render a character in different forms

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5398311A (en) * 1987-02-25 1995-03-14 Canon Kabushiki Kaisha Character processing apparatus and method for processing character data as an array of coordinate points of contour lines
AU629210B2 (en) * 1988-10-26 1992-10-01 Sun Microsystems, Inc. Method and apparatus for minimizing the visual degradation of digital typefaces
JP2836086B2 (ja) * 1989-03-10 1998-12-14 セイコーエプソン株式会社 文字パターンデータ発生装置
US5050103A (en) * 1989-05-12 1991-09-17 Adobe Systems Incorporated Method for displaying kanji characters
JP2618528B2 (ja) * 1990-11-22 1997-06-11 株式会社日立製作所 文字描画装置と文字出力補正方法並びに文字出力装置
JP3029135B2 (ja) * 1991-04-23 2000-04-04 キヤノン株式会社 文字処理装置及び方法
JPH0511734A (ja) * 1991-06-28 1993-01-22 Toshiba Corp 文字パターン生成装置
US5301267A (en) * 1991-09-27 1994-04-05 Adobe Systems Incorporated Intelligent font rendering co-processor
US5526476A (en) * 1992-12-07 1996-06-11 Fujitsu Limited Method and apparatus for generating character patterns expressed by coordinates of a coordinate system
JP3021278B2 (ja) * 1993-08-30 2000-03-15 シャープ株式会社 均一幅線の生成装置及び均一幅線の生成方法
US5577170A (en) * 1993-12-23 1996-11-19 Adobe Systems, Incorporated Generation of typefaces on high resolution output devices
US5589851A (en) * 1994-03-18 1996-12-31 Ductus Incorporated Multi-level to bi-level raster shape converter
US5598520A (en) * 1994-09-26 1997-01-28 Microsoft Corporation Methods and apparatus for hinting a font for controlling stem width as font size and resolution of output device vary

Also Published As

Publication number Publication date
US5777627A (en) 1998-07-07

Similar Documents

Publication Publication Date Title
US5241653A (en) Apparatus and method for adjusting and displaying scaled, rasterized characters
JPH05127654A (ja) 文字図形変形処理装置
EP0592770B1 (en) Method for filling of interior pixels within a polygon
JPH08194459A (ja) アウトライン文字描画装置
JPH06162210A (ja) 画像処理装置
JPH0729021A (ja) 画像出力装置
JPS6057264B2 (ja) 2値パタ−ンの拡大方式
JPH05258073A (ja) 図形塗潰し装置
JP3146771B2 (ja) フォントラスタライズ装置およびその方法
US5428719A (en) Method and apparatus for generating high-quality pattern in accordance with an edge defining a character pattern
JP4125245B2 (ja) 文書表示方法および文書表示装置
JPH08310050A (ja) バーコード印刷装置
JP3493745B2 (ja) 図形描画装置
JP2782752B2 (ja) 文字パターン出力装置
JP2895512B2 (ja) 文字出力方式
JP3567728B2 (ja) 画像処理方法および装置
JP3039015B2 (ja) 文字処理装置
JPH04373084A (ja) 文字図形変形処理装置
JP2002197452A (ja) 画像歪み補正処理装置
JPH0668247A (ja) ディジタル画像データ変倍方法および装置
JP2727667B2 (ja) 描画装置
JPH01250178A (ja) ラスターオペレーション装置およびその方法
JPH0350686A (ja) 図形処理方式
JP3567727B2 (ja) 画像処理方法および装置
JP3164795B2 (ja) 文字図形変形処理装置および方法

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20020402