JPH05204363A - ドットマトリクス装置における輪郭字体文字生成のための高速垂直走査−変換・充填方法及びその装置 - Google Patents
ドットマトリクス装置における輪郭字体文字生成のための高速垂直走査−変換・充填方法及びその装置Info
- Publication number
- JPH05204363A JPH05204363A JP4190262A JP19026292A JPH05204363A JP H05204363 A JPH05204363 A JP H05204363A JP 4190262 A JP4190262 A JP 4190262A JP 19026292 A JP19026292 A JP 19026292A JP H05204363 A JPH05204363 A JP H05204363A
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- data
- transition
- polysegment
- conversion
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—Two-dimensional [2D] image generation
- G06T11/20—Drawing from basic elements
- G06T11/23—Drawing from basic elements using straight lines or curves
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S345/00—Computer graphics processing and selective visual display systems
- Y10S345/947—Font character edge processing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
- Dot-Matrix Printers And Others (AREA)
- Image Generation (AREA)
Abstract
(57)【要約】
【目的】 走査線とポリセグメントとの交差点の計算を
頻繁に要求しないで画像スパンの個々の遷移画素を確定
すること。 【構成】 ドットマトリクス装置において輪郭字体文字
を生成する高速垂直走査−変換及び充填方法及びその装
置は、スプラインデータを正規化ポリセグメントデータ
に変換する正規化ポリセグメント生成エンジンと、各ポ
リセグメントに対する遷移画素の場所を識別するか又は
識別を実行できないことを指示するデシジョンテーブル
遷移器装置(DT)、各ポリセグメントに対する遷移画
素の位置を計算する交差遷移計算装置(IT)、及び正
規化ポリセグメントデータと、DT装置及びIT装置か
ら受信した入力とに応答して、各遷移画素のX座標及び
Y座標に対応する信号を発生するように動作する遷移画
素座標生成装置から構成される垂直走査変換エンジン
と、x及びy座標セグメントに応答して、ビットマップ
印刷装置及びビットマップ表示装置を駆動するときに使
用するためのビットマップ化文字画像データを生成する
ように動作するパリティ充填エンジンとを含む。
頻繁に要求しないで画像スパンの個々の遷移画素を確定
すること。 【構成】 ドットマトリクス装置において輪郭字体文字
を生成する高速垂直走査−変換及び充填方法及びその装
置は、スプラインデータを正規化ポリセグメントデータ
に変換する正規化ポリセグメント生成エンジンと、各ポ
リセグメントに対する遷移画素の場所を識別するか又は
識別を実行できないことを指示するデシジョンテーブル
遷移器装置(DT)、各ポリセグメントに対する遷移画
素の位置を計算する交差遷移計算装置(IT)、及び正
規化ポリセグメントデータと、DT装置及びIT装置か
ら受信した入力とに応答して、各遷移画素のX座標及び
Y座標に対応する信号を発生するように動作する遷移画
素座標生成装置から構成される垂直走査変換エンジン
と、x及びy座標セグメントに応答して、ビットマップ
印刷装置及びビットマップ表示装置を駆動するときに使
用するためのビットマップ化文字画像データを生成する
ように動作するパリティ充填エンジンとを含む。
Description
【0001】
【産業上の利用分野】本発明は、一般に、電子的に記憶
されている画像データをドットマトリクス出力装置を駆
動するために使用できる形態に変換する方法及び装置に
関する。本発明は、特に、陰極線管及びドット印刷装置
などのドットマトリクス出力装置を含む効率の良い実時
間処理システムにおいてスプライン輪郭フォーマットの
文字/図形の形状充填を実行するために使用される走査
−変換理論を実現する改良された方法及び装置に関し、
そのような方法及び装置では、画像データを図形/数学
的フォーマットから表示装置又は印刷装置用のフォーマ
ット(すなわち、一連のドット/画素)に変換する。
されている画像データをドットマトリクス出力装置を駆
動するために使用できる形態に変換する方法及び装置に
関する。本発明は、特に、陰極線管及びドット印刷装置
などのドットマトリクス出力装置を含む効率の良い実時
間処理システムにおいてスプライン輪郭フォーマットの
文字/図形の形状充填を実行するために使用される走査
−変換理論を実現する改良された方法及び装置に関し、
そのような方法及び装置では、画像データを図形/数学
的フォーマットから表示装置又は印刷装置用のフォーマ
ット(すなわち、一連のドット/画素)に変換する。
【0002】
【従来の技術】元の輪郭フォーマットから何らかの二次
元形状を生成するために要求される2つの不可欠なプロ
セスは、「走査−変換」と、「形状−充填」である。走
査−変換は、表示すべき画像輪郭の数学的表示に整合す
る装置画素ドットのパターンを選択するプロセスであ
り、充填は、走査−変換プロセスから生成された輪郭画
素ドットにより境界を規定された内側領域の中に入る装
置画素ドットをターンオンするプロセスである。今日の
適用状態を見ると、画像の大半は、たとえば、活版印刷
文字などは充填の使用を要求するが、従来の技術による
多くの走査−変換方法は画質や性能を最適化しない。印
刷又は表示される文字は真正のデザインを許容しうる速
度で複製することが望ましい。様々な活版印刷デザイナ
ーは活字のデザインを記憶するためにベクトル,アー
ク,Beziers、Bスプラインなどの様々に異なる
フォーマットを選択できるのであるが、市販の製品は様
々に異なるフォーマットに対していくつかの独立した方
法を使用するのではなく、利用できる様々な字体規格に
適応するために1組の普遍的な走査−変換・充填方法を
使用することがより望ましい。
元形状を生成するために要求される2つの不可欠なプロ
セスは、「走査−変換」と、「形状−充填」である。走
査−変換は、表示すべき画像輪郭の数学的表示に整合す
る装置画素ドットのパターンを選択するプロセスであ
り、充填は、走査−変換プロセスから生成された輪郭画
素ドットにより境界を規定された内側領域の中に入る装
置画素ドットをターンオンするプロセスである。今日の
適用状態を見ると、画像の大半は、たとえば、活版印刷
文字などは充填の使用を要求するが、従来の技術による
多くの走査−変換方法は画質や性能を最適化しない。印
刷又は表示される文字は真正のデザインを許容しうる速
度で複製することが望ましい。様々な活版印刷デザイナ
ーは活字のデザインを記憶するためにベクトル,アー
ク,Beziers、Bスプラインなどの様々に異なる
フォーマットを選択できるのであるが、市販の製品は様
々に異なるフォーマットに対していくつかの独立した方
法を使用するのではなく、利用できる様々な字体規格に
適応するために1組の普遍的な走査−変換・充填方法を
使用することがより望ましい。
【0003】J.E.Bresenhamによる科学論
文「Algorithm forComputer C
ontrol of a Digital Plott
er」(IBM Systems Journal第4
巻第1号、1965年刊)の中に報告されているこの分
野の初期の研究によれば、文字輪郭形状を充填する走査
−変換方法は実際の文字デザインより黒く、肉太の形状
を生成し、また、ポイントサイズが小さいとき及び/又
は特定の画像ごとに利用可能な画素の数に制約のある低
分解能のラスタ装置の場合には視覚的に最も目立つ悪影
響をうける。その数のBresenhamの研究論文
「A Linear Algorithm for I
ncremental Digital Displa
y ofCircular Arcs」(Commun
ication of theACM,20(2),1
977年2月刊、100〜106ページ;J.D.Fo
leyとA.Van Damの「Fundamenta
ls of Interactive Compute
r Graphics」,Addison−Wesle
y Publishing Co.,1982年刊,4
33〜436,461ページをさらに参照)には、特定
のアーク活字に特に適用される走査−変換概念が記載さ
れている。充填方法についてなされた研究は走査−変換
プロセスに関する研究とは別であったので、それらの独
立した発見を組合わせて、首尾一貫した矛盾のない解決
方法を提供することはできない。
文「Algorithm forComputer C
ontrol of a Digital Plott
er」(IBM Systems Journal第4
巻第1号、1965年刊)の中に報告されているこの分
野の初期の研究によれば、文字輪郭形状を充填する走査
−変換方法は実際の文字デザインより黒く、肉太の形状
を生成し、また、ポイントサイズが小さいとき及び/又
は特定の画像ごとに利用可能な画素の数に制約のある低
分解能のラスタ装置の場合には視覚的に最も目立つ悪影
響をうける。その数のBresenhamの研究論文
「A Linear Algorithm for I
ncremental Digital Displa
y ofCircular Arcs」(Commun
ication of theACM,20(2),1
977年2月刊、100〜106ページ;J.D.Fo
leyとA.Van Damの「Fundamenta
ls of Interactive Compute
r Graphics」,Addison−Wesle
y Publishing Co.,1982年刊,4
33〜436,461ページをさらに参照)には、特定
のアーク活字に特に適用される走査−変換概念が記載さ
れている。充填方法についてなされた研究は走査−変換
プロセスに関する研究とは別であったので、それらの独
立した発見を組合わせて、首尾一貫した矛盾のない解決
方法を提供することはできない。
【0004】1986年12月2日にシゲキ・ツジオカ
他に対し発行された名称「Filled Shaped
Generating Apparatus」の米国
特許第4,626,838号には、多角形充填機能をよ
り速い速度で実行するために、内側充填及びパリティ走
査線充填の概念をハードウェアモジュールにおいて採用
する方法が開示されている。ツジオカの構成では、マイ
クロプロセッサを使用して、Bresenhamアルゴ
リズムの走査−変換機能を実行する。マイクロプロセッ
サにより生成されたポリセグメントをハードウェア充填
モジュールに供給する。このモジュールは1つの「充填
開始/終了点生成回路」と、1つの「充填開始/終了点
メモリ」と、1つの「輪郭メモリ」と、1つの「充填回
路」とを具備する。モジュールに供給した結果、内側ビ
ットマップが得られ、そのビットマップは「再生メモ
リ」に書込まれて、陰極線管(CRT)に表示される。
ツジオカ他の方法では、ポリセグメントを表わす座標値
は整数の形態をとる。整数値は「充填開始/終了点生成
回路」へ送られ、そこで、ポリセグメントの線分ごとに
充填開始点のアドレスと、充填終了点のアドレスとを計
算する。座標は整数であって、実数形態ではないので、
文字のセリフなどの微妙な曲線の性質はプロセスの中で
失われてしまうこともあるだろう。ツジオカ他の方法に
おいては、多角形の内側を充填し且つ多角形の輪郭をペ
イントするために、「輪郭メモリ」と「充填開始/終了
点メモリ」という2つの別個のメモリを使用する。
他に対し発行された名称「Filled Shaped
Generating Apparatus」の米国
特許第4,626,838号には、多角形充填機能をよ
り速い速度で実行するために、内側充填及びパリティ走
査線充填の概念をハードウェアモジュールにおいて採用
する方法が開示されている。ツジオカの構成では、マイ
クロプロセッサを使用して、Bresenhamアルゴ
リズムの走査−変換機能を実行する。マイクロプロセッ
サにより生成されたポリセグメントをハードウェア充填
モジュールに供給する。このモジュールは1つの「充填
開始/終了点生成回路」と、1つの「充填開始/終了点
メモリ」と、1つの「輪郭メモリ」と、1つの「充填回
路」とを具備する。モジュールに供給した結果、内側ビ
ットマップが得られ、そのビットマップは「再生メモ
リ」に書込まれて、陰極線管(CRT)に表示される。
ツジオカ他の方法では、ポリセグメントを表わす座標値
は整数の形態をとる。整数値は「充填開始/終了点生成
回路」へ送られ、そこで、ポリセグメントの線分ごとに
充填開始点のアドレスと、充填終了点のアドレスとを計
算する。座標は整数であって、実数形態ではないので、
文字のセリフなどの微妙な曲線の性質はプロセスの中で
失われてしまうこともあるだろう。ツジオカ他の方法に
おいては、多角形の内側を充填し且つ多角形の輪郭をペ
イントするために、「輪郭メモリ」と「充填開始/終了
点メモリ」という2つの別個のメモリを使用する。
【0005】1988年5月17日にAdrian H
awesへ発行された名称「Area Filling
Hardware for a Color Gra
phics Frame Buffer」の米国特許第
4,745,575号には、領域充填を実行するための
ハードウェアを使用する方式が記載されている。マイク
ロプロセッサを使用して、Bresenhamの走査−
変換アルゴリズムを実行する。走査−変換用マイクロプ
ロセッサにより生成されたポリセグメントをハードウェ
ア充填モジュールに供給する。Hawesの方法は多角
形領域の輪郭を記憶するために単一の補助メモリを使用
し、走査−変換される多角形に関連するあらゆる水平充
填スパンについて充填開始点と、充填終了点の情報を記
憶する。この構成はBresenhamの整数アルゴリ
ズムに基づいているので、これを輪郭字体に適用したと
きにはツジオカ他の方法と同じ画質の問題が生じる。た
だし、Hawesの構成では1組のメモリが省略されて
いる。
awesへ発行された名称「Area Filling
Hardware for a Color Gra
phics Frame Buffer」の米国特許第
4,745,575号には、領域充填を実行するための
ハードウェアを使用する方式が記載されている。マイク
ロプロセッサを使用して、Bresenhamの走査−
変換アルゴリズムを実行する。走査−変換用マイクロプ
ロセッサにより生成されたポリセグメントをハードウェ
ア充填モジュールに供給する。Hawesの方法は多角
形領域の輪郭を記憶するために単一の補助メモリを使用
し、走査−変換される多角形に関連するあらゆる水平充
填スパンについて充填開始点と、充填終了点の情報を記
憶する。この構成はBresenhamの整数アルゴリ
ズムに基づいているので、これを輪郭字体に適用したと
きにはツジオカ他の方法と同じ画質の問題が生じる。た
だし、Hawesの構成では1組のメモリが省略されて
いる。
【0006】R.D.Hershによる科学論文「Ve
rtical Scan−Conversion fo
r Filling Purposes」(Proce
eding Computer Graphics I
nternational88,ジュネーブ,Spri
nger Verlag,1988年刊)は、走査−変
換方法の研究について報告しており、走査・変換及び充
填の方式の互いに矛盾する問題を解決するための方法を
記載している。スプラインを、非整数の頂点を有する可
変長のポリセグメントに細分する。ポリセグメントと走
査線との交差点から、アルゴリズムは始まりと終わりの
標識として水平スパンごとに2つの遷移画素を確定す
る。各遷移画素は黒から白又は白から黒への色の変化を
指示する。2つの遷移画素の間には内側画素があり、内
側画素は「パリティ走査線充填方法」を適用することに
より充填される。交差点を計算し且つ遷移画素の場所を
規定するために実行される幾何学的計算は、多くの時間
を要する。分解能が高くなるにつれて、実行すべき計算
は多くなる。
rtical Scan−Conversion fo
r Filling Purposes」(Proce
eding Computer Graphics I
nternational88,ジュネーブ,Spri
nger Verlag,1988年刊)は、走査−変
換方法の研究について報告しており、走査・変換及び充
填の方式の互いに矛盾する問題を解決するための方法を
記載している。スプラインを、非整数の頂点を有する可
変長のポリセグメントに細分する。ポリセグメントと走
査線との交差点から、アルゴリズムは始まりと終わりの
標識として水平スパンごとに2つの遷移画素を確定す
る。各遷移画素は黒から白又は白から黒への色の変化を
指示する。2つの遷移画素の間には内側画素があり、内
側画素は「パリティ走査線充填方法」を適用することに
より充填される。交差点を計算し且つ遷移画素の場所を
規定するために実行される幾何学的計算は、多くの時間
を要する。分解能が高くなるにつれて、実行すべき計算
は多くなる。
【0007】1990年6月26日にChristop
her Hassettへ発行された名称「Metho
d and Apparatus for Enhan
ced Speed Graphic Image P
rocessing」の米国特許第4,937,761
号には、ハードウェアを使用して輪郭字体を描出する方
法が記載されている。Hassettの方法では、線又
は曲線を走査−変換(Hassettの特許においては
「不連続点変換」という用語で表わしている)してポリ
セグメントを得た後に、そのポリセグメントを表わす座
標値を実数で符号化する。Hassettの方法によれ
ば、走査−変換したポリセグメントをターゲットマーキ
ングエンジンの座標分解能にさらに変換する。その「変
換」プロセスの間に、ポリセグメントに対してスケーリ
ングアップ演算又はスケーリングダウン演算を適用して
も良い。Hassettの方法はディザリング方式を利
用して、ポリラインセグメントを平滑化し、それらのセ
グメントを「変換」過程の間にさらに走査−変換する。
最終的な走査−変換、ディザリング済みのポリセグメン
トをディザリング済み画像輪郭形状及び充填すべき内側
画素のマップとして分離し、その後、それらを組合わせ
てラスタオペレータに入力する。Hassettの方法
は、走査−変換した座標値の小数部を保持することによ
り、輪郭点の確定と、充填開始点及び充填終了点の確定
に際しさらに高い精度を示す。ところが、輪郭点と、充
填開始点/充填終了点とを記憶するために2つの別個の
メモリが必要である。最終ビットマップ画像は、輪郭画
像と、全ての開始点/終了点をパリティ充填することに
よって得られる充填画像とを組合わせることにより形成
される。オブジェクトの輪郭は従来通りの走査−変換ア
ルゴリズム(1例としてBresenhamのアルゴリ
ズムを使用する)により生成されるので、Hasset
tの方式においてビットマップ画像の画質を向上させる
ためにディザリング方式を使用する。
her Hassettへ発行された名称「Metho
d and Apparatus for Enhan
ced Speed Graphic Image P
rocessing」の米国特許第4,937,761
号には、ハードウェアを使用して輪郭字体を描出する方
法が記載されている。Hassettの方法では、線又
は曲線を走査−変換(Hassettの特許においては
「不連続点変換」という用語で表わしている)してポリ
セグメントを得た後に、そのポリセグメントを表わす座
標値を実数で符号化する。Hassettの方法によれ
ば、走査−変換したポリセグメントをターゲットマーキ
ングエンジンの座標分解能にさらに変換する。その「変
換」プロセスの間に、ポリセグメントに対してスケーリ
ングアップ演算又はスケーリングダウン演算を適用して
も良い。Hassettの方法はディザリング方式を利
用して、ポリラインセグメントを平滑化し、それらのセ
グメントを「変換」過程の間にさらに走査−変換する。
最終的な走査−変換、ディザリング済みのポリセグメン
トをディザリング済み画像輪郭形状及び充填すべき内側
画素のマップとして分離し、その後、それらを組合わせ
てラスタオペレータに入力する。Hassettの方法
は、走査−変換した座標値の小数部を保持することによ
り、輪郭点の確定と、充填開始点及び充填終了点の確定
に際しさらに高い精度を示す。ところが、輪郭点と、充
填開始点/充填終了点とを記憶するために2つの別個の
メモリが必要である。最終ビットマップ画像は、輪郭画
像と、全ての開始点/終了点をパリティ充填することに
よって得られる充填画像とを組合わせることにより形成
される。オブジェクトの輪郭は従来通りの走査−変換ア
ルゴリズム(1例としてBresenhamのアルゴリ
ズムを使用する)により生成されるので、Hasset
tの方式においてビットマップ画像の画質を向上させる
ためにディザリング方式を使用する。
【0008】
【発明が解決しようとする課題】本発明の目的は、走査
線とポリセグメントとの交差点の計算を頻繁に要求する
ことなく、画像走査スパンの個々の遷移画素を確定する
ための垂直走査−変換プロセスを加速する装置及び方法
を提供することである。
線とポリセグメントとの交差点の計算を頻繁に要求する
ことなく、画像走査スパンの個々の遷移画素を確定する
ための垂直走査−変換プロセスを加速する装置及び方法
を提供することである。
【0009】
【課題を解決するための手段】簡単にいえば、本発明の
好ましい一実施例は、スプラインデータを正規化ポリセ
グメントデータに変換する正規化ポリセグメント生成エ
ンジンと、各ポリセグメントに対して遷移画素の場所を
識別するか又は識別を実行できないことを指示するデシ
ジョンテーブル(決定表)遷移器(DT)装置、各ポリ
セグメントに対して遷移画素の位置を計算する交差点遷
移計算装置(IT)及び正規化ポリセグメントデータ
と、DT装置及びIT装置から受信した入力とに応答し
て、各遷移画素のX座標とY座標に対応する信号を発生
するように動作する遷移画素座標生成装置から構成され
る垂直走査変換エンジンと、X及びY座標セグメントに
応答して、ビットマップ印刷装置又はビットマップ表示
装置を駆動するときに使用するためのビットマップ化文
字画像データを生成するように動作するパリティ充填エ
ンジンとを含む。
好ましい一実施例は、スプラインデータを正規化ポリセ
グメントデータに変換する正規化ポリセグメント生成エ
ンジンと、各ポリセグメントに対して遷移画素の場所を
識別するか又は識別を実行できないことを指示するデシ
ジョンテーブル(決定表)遷移器(DT)装置、各ポリ
セグメントに対して遷移画素の位置を計算する交差点遷
移計算装置(IT)及び正規化ポリセグメントデータ
と、DT装置及びIT装置から受信した入力とに応答し
て、各遷移画素のX座標とY座標に対応する信号を発生
するように動作する遷移画素座標生成装置から構成され
る垂直走査変換エンジンと、X及びY座標セグメントに
応答して、ビットマップ印刷装置又はビットマップ表示
装置を駆動するときに使用するためのビットマップ化文
字画像データを生成するように動作するパリティ充填エ
ンジンとを含む。
【0010】輪郭文字スプラインを不連続画素表示にさ
らに良く近似するために、本発明はポリセグメントを1
つの画素の対角線より短い長さに制限する。現在開始点
から次の到達点までの距離がx変位及びy変位に関して
1つの画素の対角線より長くならないように保証するこ
とを先取する「適応制御」と呼ばれる正規化プロセスを
利用しているために、それらのポリセグメントは「正規
化ポリセグメント」と呼ばれる。全てのポリセグメント
を正規化した後、本発明の装置の回路はより高い効率を
示すことができ、また、設計サイズの縮小を実現するこ
とができる。
らに良く近似するために、本発明はポリセグメントを1
つの画素の対角線より短い長さに制限する。現在開始点
から次の到達点までの距離がx変位及びy変位に関して
1つの画素の対角線より長くならないように保証するこ
とを先取する「適応制御」と呼ばれる正規化プロセスを
利用しているために、それらのポリセグメントは「正規
化ポリセグメント」と呼ばれる。全てのポリセグメント
を正規化した後、本発明の装置の回路はより高い効率を
示すことができ、また、設計サイズの縮小を実現するこ
とができる。
【0011】正規化ポリセグメントの概念を採用する
と、現在点(CP)ごとに、それについて可能な次の点
(NP)は現在画素の中に位置するか又は現在画素に隣
接する8つの画素の中に位置することになるので、問題
を解決する労力の範囲は狭まる。曲線を近似する精度を
増すために、各画素を4つの象限に分割する。従って、
現在画素の4つの象限の中の1つにある開始点(CP)
から到達しうる点は、現在画素と隣接する画素の中にあ
る36の象限の内側に入ると考えられる。そのあらゆる
組合わせを144個のエントリを有するデシジョンテー
ブルにマッピングする。
と、現在点(CP)ごとに、それについて可能な次の点
(NP)は現在画素の中に位置するか又は現在画素に隣
接する8つの画素の中に位置することになるので、問題
を解決する労力の範囲は狭まる。曲線を近似する精度を
増すために、各画素を4つの象限に分割する。従って、
現在画素の4つの象限の中の1つにある開始点(CP)
から到達しうる点は、現在画素と隣接する画素の中にあ
る36の象限の内側に入ると考えられる。そのあらゆる
組合わせを144個のエントリを有するデシジョンテー
ブルにマッピングする。
【0012】適応制御した正規化ポリセグメントと、デ
シジョンテーブルにおいて実現される垂直走査−変換方
式との組合わせは高画質の文字画像充填を可能にすると
共に、曲線のゆがみを最小限に抑えることにより活字デ
ザインの保全性を維持する。対を成すDTとITは、従
来の計算集中方法と比較して、遷移画素を求める速度を
増す。本発明及びその装置は様々な輪郭字体フォーマッ
トを支援するための高速出力及び真正に近い画質を提供
する。
シジョンテーブルにおいて実現される垂直走査−変換方
式との組合わせは高画質の文字画像充填を可能にすると
共に、曲線のゆがみを最小限に抑えることにより活字デ
ザインの保全性を維持する。対を成すDTとITは、従
来の計算集中方法と比較して、遷移画素を求める速度を
増す。本発明及びその装置は様々な輪郭字体フォーマッ
トを支援するための高速出力及び真正に近い画質を提供
する。
【0013】
【実施例】本発明は、オブジェクトの多種多様な図形/
数学的フォーマットを表示又は印刷すべきラスタ画像に
変換するプロセスをスピードアップするために、レーザ
ープリンタ、陰極線管、電子写真印刷機などの様々なド
ットマトリクス装置に適用することができる垂直走査方
法及び垂直走査装置に関する。ここで説明する装置は、
特に、本発明を実現することにより実現されるレーザー
プリンタ及び表示装置のための回路を指向している。そ
のような回路は実時間アプリケーションでマルチフォー
マット輪郭字体文字生成を処理することができる。しか
しながら、同一の方式を使用して走査−変換プロセスを
改善するために、他のドットマトリクスアプリケーショ
ンやドットマトリクス装置にも本発明を適応できること
は言うまでもない。
数学的フォーマットを表示又は印刷すべきラスタ画像に
変換するプロセスをスピードアップするために、レーザ
ープリンタ、陰極線管、電子写真印刷機などの様々なド
ットマトリクス装置に適用することができる垂直走査方
法及び垂直走査装置に関する。ここで説明する装置は、
特に、本発明を実現することにより実現されるレーザー
プリンタ及び表示装置のための回路を指向している。そ
のような回路は実時間アプリケーションでマルチフォー
マット輪郭字体文字生成を処理することができる。しか
しながら、同一の方式を使用して走査−変換プロセスを
改善するために、他のドットマトリクスアプリケーショ
ンやドットマトリクス装置にも本発明を適応できること
は言うまでもない。
【0014】直覚的にいえば、画素は印刷紙の上又はC
RT画面に現れる実際の出力ビットである。デスクトッ
プ出版の分野における近年の開発によって、エンドユー
ザーは印刷又は表示すべき文書を構成するための書体、
スタイル、ポイントサイズ及び充填方法(シェーディン
グ、パターン充填など)を選択する上で、多大な融通性
と自由を与えられることになった。それらの異なる活字
に関する入力フォーマットは、アーク、Bezierな
どの好ましいフォーマットを有すると思われる様々な活
字製造会社/字体設計者が記憶させたデータである。本
発明は、均一な方式であるポリセグメントを使用して様
々な字体フォーマットを処理することにより、入力の互
換性を与える。さらに、実時間で処理しなければならな
いデータや活字の量は膨大なものとなりうるので、本発
明では、性能を向上させる一方で、ポイントサイズが小
さいとき又は分解能が低いときでも高い視覚的読みやす
さと高い画質を発揮させるために、小さな正規化ポリセ
グメントと、デシジョンテーブルとを利用する。
RT画面に現れる実際の出力ビットである。デスクトッ
プ出版の分野における近年の開発によって、エンドユー
ザーは印刷又は表示すべき文書を構成するための書体、
スタイル、ポイントサイズ及び充填方法(シェーディン
グ、パターン充填など)を選択する上で、多大な融通性
と自由を与えられることになった。それらの異なる活字
に関する入力フォーマットは、アーク、Bezierな
どの好ましいフォーマットを有すると思われる様々な活
字製造会社/字体設計者が記憶させたデータである。本
発明は、均一な方式であるポリセグメントを使用して様
々な字体フォーマットを処理することにより、入力の互
換性を与える。さらに、実時間で処理しなければならな
いデータや活字の量は膨大なものとなりうるので、本発
明では、性能を向上させる一方で、ポイントサイズが小
さいとき又は分解能が低いときでも高い視覚的読みやす
さと高い画質を発揮させるために、小さな正規化ポリセ
グメントと、デシジョンテーブルとを利用する。
【0015】ポイントサイズが小さいとき、文字形状を
形成するために利用できる画素の数は限られる。文字形
状を生成し、充填する方式は、その文字を読む者に対す
る視学的印象を大きく左右する。図1及び図2は、印刷
サンプルの2つの例を示す。図1は、101及び102
で示す活字の色の濃い肉太の文字を生成するBrese
nhamの走査−変換方法を使用して生成されたプリン
トを示す。これと比較して、本発明の垂直走査−変換方
法は、103及び104で示すように、よりあざやかな
文字を生成する。2つの例は共に4ポイント、8ポイン
ト及び12ポイントのサイズを使用する。ポイントサイ
ズ4では、垂直走査−変換方法はBresenhamの
方法より読みやすい文字を生成する。ポイントサイズ8
及び12では、Bresenhamのサンプルは正規設
計の書体ではなく肉太の書体のように見える。
形成するために利用できる画素の数は限られる。文字形
状を生成し、充填する方式は、その文字を読む者に対す
る視学的印象を大きく左右する。図1及び図2は、印刷
サンプルの2つの例を示す。図1は、101及び102
で示す活字の色の濃い肉太の文字を生成するBrese
nhamの走査−変換方法を使用して生成されたプリン
トを示す。これと比較して、本発明の垂直走査−変換方
法は、103及び104で示すように、よりあざやかな
文字を生成する。2つの例は共に4ポイント、8ポイン
ト及び12ポイントのサイズを使用する。ポイントサイ
ズ4では、垂直走査−変換方法はBresenhamの
方法より読みやすい文字を生成する。ポイントサイズ8
及び12では、Bresenhamのサンプルは正規設
計の書体ではなく肉太の書体のように見える。
【0016】図3は、輪郭の周囲の色(黒又は白)がそ
れら2つの走査−変換方法によりどのようにして確定さ
れるかを図式的に示す。111で示すBresenha
mの走査−変換方法の場合、輪郭113の上に位置する
全ての画素は色の濃い境界画素115である。境界画素
の内側の画素は内側画素115と呼ばれて、充填され
る。Bresenhamの方法は輪郭と、2つの隣接す
る画素中心との距離114を比較する。画素中心から境
界輪郭までの距離が短いほうの画素を「オン」(黒色充
填)として確定する。これに対し、112で示す垂直走
査−変換がオンする境界画素117の数は少ない。輪郭
の内側に入る画素面積が50%を越える画素のみを黒色
充填する。Bresenhamの方法ではオンされる
が、垂直走査−変換ではオンされない画素を陰影のない
破線の円118により示してある。図4に示すように、
垂直走査−変換は、画素面積の50%を越えて充填経路
131,132に入る画素のみをオンする。この方式
は、画素の中心が輪郭の内側に入っているならば、その
内側に面積の50%を越える面積が入っている確率は非
常に高いことを示唆する。画素133の面積の50%未
満の部分しか充填経路の内側に入っていない場合には、
その画素は白色のままである。それとは対照的に、Br
esenhamの方法は充填部分の中の面積を測定する
のではなく、オン(136)又はオフ(135)の特性
を確定するために、輪郭134から画素中心までの距離
137を測定する。輪郭134の傾きが45度未満であ
る場合、輪郭を水平に近いセグメントであると考え、輪
郭セグメントの垂直方向に上と下に位置する2つの隣接
画素135,136を比較する。垂直に近い輪郭セグメ
ント141の場合、Bresenhamの方法はセグメ
ント141に隣接する2つの水平画素138,140を
比較する。
れら2つの走査−変換方法によりどのようにして確定さ
れるかを図式的に示す。111で示すBresenha
mの走査−変換方法の場合、輪郭113の上に位置する
全ての画素は色の濃い境界画素115である。境界画素
の内側の画素は内側画素115と呼ばれて、充填され
る。Bresenhamの方法は輪郭と、2つの隣接す
る画素中心との距離114を比較する。画素中心から境
界輪郭までの距離が短いほうの画素を「オン」(黒色充
填)として確定する。これに対し、112で示す垂直走
査−変換がオンする境界画素117の数は少ない。輪郭
の内側に入る画素面積が50%を越える画素のみを黒色
充填する。Bresenhamの方法ではオンされる
が、垂直走査−変換ではオンされない画素を陰影のない
破線の円118により示してある。図4に示すように、
垂直走査−変換は、画素面積の50%を越えて充填経路
131,132に入る画素のみをオンする。この方式
は、画素の中心が輪郭の内側に入っているならば、その
内側に面積の50%を越える面積が入っている確率は非
常に高いことを示唆する。画素133の面積の50%未
満の部分しか充填経路の内側に入っていない場合には、
その画素は白色のままである。それとは対照的に、Br
esenhamの方法は充填部分の中の面積を測定する
のではなく、オン(136)又はオフ(135)の特性
を確定するために、輪郭134から画素中心までの距離
137を測定する。輪郭134の傾きが45度未満であ
る場合、輪郭を水平に近いセグメントであると考え、輪
郭セグメントの垂直方向に上と下に位置する2つの隣接
画素135,136を比較する。垂直に近い輪郭セグメ
ント141の場合、Bresenhamの方法はセグメ
ント141に隣接する2つの水平画素138,140を
比較する。
【0017】本発明はポリセグメント方式を利用して様
々な字体フォーマットを処理する。図5に破線で示すス
プライン151(湾曲輪郭セグメント)を、より短いポ
リセグメント152と呼ばれる直線に分割して、スプラ
イン曲線に近似させる。ポリセグメントに分割する方法
は、後に、高画質と高速動作を得るための決定的な過程
であることがわかる。それらのポリセグメントは走査線
との交差点を生成するために使用される。
々な字体フォーマットを処理する。図5に破線で示すス
プライン151(湾曲輪郭セグメント)を、より短いポ
リセグメント152と呼ばれる直線に分割して、スプラ
イン曲線に近似させる。ポリセグメントに分割する方法
は、後に、高画質と高速動作を得るための決定的な過程
であることがわかる。それらのポリセグメントは走査線
との交差点を生成するために使用される。
【0018】図6に示すように、走査線161とポリセ
グメントとが交差するところ162,164には、必
ず、遷移画素として選択された画素163,165があ
る。遷移画素は、中心点が交差箇所のすぐ右側に位置し
ている画素として定義される。遷移画素は充填すべき水
平スパンの始まり又は水平スパンの終わりの後の1つの
画素、言いかえれば色の変化(黒から白、又は白から
黒)を表わす。
グメントとが交差するところ162,164には、必
ず、遷移画素として選択された画素163,165があ
る。遷移画素は、中心点が交差箇所のすぐ右側に位置し
ている画素として定義される。遷移画素は充填すべき水
平スパンの始まり又は水平スパンの終わりの後の1つの
画素、言いかえれば色の変化(黒から白、又は白から
黒)を表わす。
【0019】図7に示すように、1つのスパンの第1の
遷移画素171は充填プロセスの始まりを指示する。充
填プロセスは、次の画素が他方の遷移画素173である
と予測するまで継続する。1つのスパンで充填すべき最
後の画素は、対を成す遷移画素のうち第2の遷移画素1
73の前に位置する画素172である。
遷移画素171は充填プロセスの始まりを指示する。充
填プロセスは、次の画素が他方の遷移画素173である
と予測するまで継続する。1つのスパンで充填すべき最
後の画素は、対を成す遷移画素のうち第2の遷移画素1
73の前に位置する画素172である。
【0020】ところが、ポリセグメント方式は図8及び
図9に示すような異なる結果を生じる場合がある。図8
では、ポリセグメント221,222の長さが異なり、
一部のポリセグメントは他のポリセグメントよりはるか
に長い。図9では、全てのポリセグメント231,23
2が1つの画素の対角線の長さより短い長さを有する。
それらのセグメントは、本発明の装置に設けられた適応
制御サブシステムにより正規化されている。含まれるポ
リセグメントの数が多くなればデータの量は増えるが、
それぞれの交差事象の複雑さは軽減される。本発明の装
置ではパイプライン方式を採用しているので、簡略化さ
れた構成によって得られる性能の向上はデータ流れのオ
ーバヘッドをしのぐ。
図9に示すような異なる結果を生じる場合がある。図8
では、ポリセグメント221,222の長さが異なり、
一部のポリセグメントは他のポリセグメントよりはるか
に長い。図9では、全てのポリセグメント231,23
2が1つの画素の対角線の長さより短い長さを有する。
それらのセグメントは、本発明の装置に設けられた適応
制御サブシステムにより正規化されている。含まれるポ
リセグメントの数が多くなればデータの量は増えるが、
それぞれの交差事象の複雑さは軽減される。本発明の装
置ではパイプライン方式を採用しているので、簡略化さ
れた構成によって得られる性能の向上はデータ流れのオ
ーバヘッドをしのぐ。
【0021】以下に詳細に説明するが、本発明を具現化
した装置に対する入力は基準化文字輪郭データの形態を
とる。先に示唆した通り、まず、Lien他の名称「M
ethod and Apparatus for R
endering Vectors Using Br
esenham Parameters」による米国特
許第4,855,935号に記載されているような適切
なポリセグメント生成エンジンを使用して、輪郭データ
を正規化ポリセグメントに変換する。次に、垂直走査−
変換を実行して、印刷装置又は表示装置を駆動するとき
に使用するためのビットマップ化画像データを生成す
る。ここで、本発明の好ましい実施例を説明する前に、
いくつかの用語を定義すると共に、垂直走査−変換プロ
セスの機能を説明する。
した装置に対する入力は基準化文字輪郭データの形態を
とる。先に示唆した通り、まず、Lien他の名称「M
ethod and Apparatus for R
endering Vectors Using Br
esenham Parameters」による米国特
許第4,855,935号に記載されているような適切
なポリセグメント生成エンジンを使用して、輪郭データ
を正規化ポリセグメントに変換する。次に、垂直走査−
変換を実行して、印刷装置又は表示装置を駆動するとき
に使用するためのビットマップ化画像データを生成す
る。ここで、本発明の好ましい実施例を説明する前に、
いくつかの用語を定義すると共に、垂直走査−変換プロ
セスの機能を説明する。
【0022】ドットマトリクス装置においては、1つの
画素が独立した単位であり、黒色又は白色のいずれかを
表わすために整数値を有する。ところが、輪郭形状を近
似するためにさらに精密な計算を行うときには、各画素
を非整数、すなわち、小数又は整数と小数により測定し
ても良い。図10の場合、x,y座標を使用して画素2
40を規定している。1つの画素は1単位の幅(x方
向)と、1単位の高さ(y方向)とを有するといわれ
る。この定義によれば、画素の中心242は(x+0.
5,y+0.5)の場所値を有し、点244(x,y)
はその画素の開始アドレスである。境界の定義に関して
いえば、隣接する画素が共用しうる共通の境界は存在し
ない。図11に示す通り、各画素は左辺250と、底辺
252とを「所有」している。従って、それら2つの辺
の上に位置する点は、いずれも、現在画素の一部である
と考えられる。現在画素の上辺254はその上方の画素
に属し、右辺256はその右側にある画素に属する。こ
の境界定義は、起こりうる重複条件に起因するあいまい
さを回避する。
画素が独立した単位であり、黒色又は白色のいずれかを
表わすために整数値を有する。ところが、輪郭形状を近
似するためにさらに精密な計算を行うときには、各画素
を非整数、すなわち、小数又は整数と小数により測定し
ても良い。図10の場合、x,y座標を使用して画素2
40を規定している。1つの画素は1単位の幅(x方
向)と、1単位の高さ(y方向)とを有するといわれ
る。この定義によれば、画素の中心242は(x+0.
5,y+0.5)の場所値を有し、点244(x,y)
はその画素の開始アドレスである。境界の定義に関して
いえば、隣接する画素が共用しうる共通の境界は存在し
ない。図11に示す通り、各画素は左辺250と、底辺
252とを「所有」している。従って、それら2つの辺
の上に位置する点は、いずれも、現在画素の一部である
と考えられる。現在画素の上辺254はその上方の画素
に属し、右辺256はその右側にある画素に属する。こ
の境界定義は、起こりうる重複条件に起因するあいまい
さを回避する。
【0023】遷移画素(TX)の決定実行プロセスを管
理し且つあいまいなケースを識別するために、図12及
び図13に示すように各画素280を4つの象限に分割
する。それら4つの象限は左周りの方向にQ1(28
1),Q2(282),Q3(283),Q4(28
4)とラベル付けされている。画素に関する境界定義を
象限にも適用する。境界に沿って付した数字からわかる
通り、Q1及びQ2の上部の境界285(図13)はそ
の上の画素287の象限Q3及びQ4に「属し」てい
る。また、右側の境界286はその右側の画素288の
象限Q2及びQ3に「属し」ている。
理し且つあいまいなケースを識別するために、図12及
び図13に示すように各画素280を4つの象限に分割
する。それら4つの象限は左周りの方向にQ1(28
1),Q2(282),Q3(283),Q4(28
4)とラベル付けされている。画素に関する境界定義を
象限にも適用する。境界に沿って付した数字からわかる
通り、Q1及びQ2の上部の境界285(図13)はそ
の上の画素287の象限Q3及びQ4に「属し」てい
る。また、右側の境界286はその右側の画素288の
象限Q2及びQ3に「属し」ている。
【0024】方向特性によってポリセグメントを定義す
るために、図14を参照する。各ポリセグメント300
は「現在画素」CX304の中に位置する開始点CP3
02と、「次画素」NX308の中に位置する終端点N
P306とを有する。画素CXは4つの象限、すなわ
ち、c1,c2,c3,c4を有し、画素NPもn1,
n2,n3及びn4の4つの象限を有する。正規化ポリ
セグメント300には、現在点CPがいかにして次の点
NPに向かって動くかに応じて、方向を割り当てられ
る。
るために、図14を参照する。各ポリセグメント300
は「現在画素」CX304の中に位置する開始点CP3
02と、「次画素」NX308の中に位置する終端点N
P306とを有する。画素CXは4つの象限、すなわ
ち、c1,c2,c3,c4を有し、画素NPもn1,
n2,n3及びn4の4つの象限を有する。正規化ポリ
セグメント300には、現在点CPがいかにして次の点
NPに向かって動くかに応じて、方向を割り当てられ
る。
【0025】図15は、NX方向の定義を示す。詳細に
いえば、現在画素CXの中に開始点CPを有するポリセ
グメントは、E,NE,N,NW,W,SW,S,SE
とラベル付けされた隣接画素の中の1つの中か、又はC
X自体の中に次の点NPを有する。従って、ポリセグメ
ントの方向は次の点が入っている隣接画素の磁針方向と
して指定される。
いえば、現在画素CXの中に開始点CPを有するポリセ
グメントは、E,NE,N,NW,W,SW,S,SE
とラベル付けされた隣接画素の中の1つの中か、又はC
X自体の中に次の点NPを有する。従って、ポリセグメ
ントの方向は次の点が入っている隣接画素の磁針方向と
して指定される。
【0026】図16に示すように、その方向と座標系と
を組合わせることにより、各ポリセグメントの場所と方
向をデシジョンテーブルに記録できる。現在画素は開始
点が位置しうる4つの象限を有し且つ9画素の範囲内に
36の着陸点を有しているので、終端点の組合わせは1
44通りある。デシジョンテーブルをコンパクトにし且
つ実際の事象に幾何学的に対応させるために、デシジョ
ンテーブルのあらゆる情報は考えられる9つのNX画素
の36個の象限の4つの内角に蓄積される。本発明は、
それらの象限にX方向には「1〜12」、y方向には
「a〜l」と索引付けすることにより、記録保持方式を
実行する。それらの索引は144個の記憶セルを表わ
し、各セルは2j,8dなどのポインタを有する。たと
えば、図16に示すように、1つのポリセグメント32
0は1つの特定の次画素NXの第2の象限n2で終わ
る。開始点が現在画素CXの第2の象限c2で始まる場
合、このポリセグメントのIDはc2−−>n2とな
り、取り出して拡大した画素NXの中に表わしてあるよ
うに、画素NXの第2の象限n2の左上角に位置するセ
ルに記憶される。同様に、現在画素の第4の象限のCP
で始まり、次画素NXの第1の象限のNPで終わる第2
のポリセグメント322は、対応するIDc4−−>n
1を有し、それは象限n1の右下角のセルに記憶され
る。方向とCX−NXの関係づけに従って、各ポリセグ
メントの動き(場所と方向)に対応する決定(デシジョ
ン)(ID)はあらかじめ規定され、そのxとyにより
識別されるセルに記憶される。たとえば、ポリセグメン
ト320及び322に関する決定はテーブルの場所9i
及び12jにそれぞれ記憶されることになる。
を組合わせることにより、各ポリセグメントの場所と方
向をデシジョンテーブルに記録できる。現在画素は開始
点が位置しうる4つの象限を有し且つ9画素の範囲内に
36の着陸点を有しているので、終端点の組合わせは1
44通りある。デシジョンテーブルをコンパクトにし且
つ実際の事象に幾何学的に対応させるために、デシジョ
ンテーブルのあらゆる情報は考えられる9つのNX画素
の36個の象限の4つの内角に蓄積される。本発明は、
それらの象限にX方向には「1〜12」、y方向には
「a〜l」と索引付けすることにより、記録保持方式を
実行する。それらの索引は144個の記憶セルを表わ
し、各セルは2j,8dなどのポインタを有する。たと
えば、図16に示すように、1つのポリセグメント32
0は1つの特定の次画素NXの第2の象限n2で終わ
る。開始点が現在画素CXの第2の象限c2で始まる場
合、このポリセグメントのIDはc2−−>n2とな
り、取り出して拡大した画素NXの中に表わしてあるよ
うに、画素NXの第2の象限n2の左上角に位置するセ
ルに記憶される。同様に、現在画素の第4の象限のCP
で始まり、次画素NXの第1の象限のNPで終わる第2
のポリセグメント322は、対応するIDc4−−>n
1を有し、それは象限n1の右下角のセルに記憶され
る。方向とCX−NXの関係づけに従って、各ポリセグ
メントの動き(場所と方向)に対応する決定(デシジョ
ン)(ID)はあらかじめ規定され、そのxとyにより
識別されるセルに記憶される。たとえば、ポリセグメン
ト320及び322に関する決定はテーブルの場所9i
及び12jにそれぞれ記憶されることになる。
【0027】可能である144の決定を全て検査するこ
とにより、ポリセグメントの解析を7つの明確に異なる
決定に分類できることが明らかとなる。図17には、そ
れら7つの決定を判断トリーの形で記載してある。可能
な決定は図中符号340〜352により表わされてい
る。唯一つの決定は「非確定」であり、さらに解析を要
求する。「無意味」決定は、ポリセグメントの長さが1
つの画素の寸法の「正規化ポリセグメント」制約を越え
るようなものである。その他の型のポリセグメントに関
する遷移画素は、デシジョンテーブル単独で確定でき
る。
とにより、ポリセグメントの解析を7つの明確に異なる
決定に分類できることが明らかとなる。図17には、そ
れら7つの決定を判断トリーの形で記載してある。可能
な決定は図中符号340〜352により表わされてい
る。唯一つの決定は「非確定」であり、さらに解析を要
求する。「無意味」決定は、ポリセグメントの長さが1
つの画素の寸法の「正規化ポリセグメント」制約を越え
るようなものである。その他の型のポリセグメントに関
する遷移画素は、デシジョンテーブル単独で確定でき
る。
【0028】図18は、長さが1画素の対角線を越える
ポリセグメント400に関する「無意味」型の決定の1
例を示す。全てのポリセグメントは、以下に説明するよ
うに、適応制御により正規化されているので、このケー
スは起こるはずがない。図19のポリセグメントはあい
まいなケースである。すなわち、画素中心の右側の交差
点402は遷移画素として現在画素の右側に位置する画
素を選択することを要求するが、中心の左側の交差点4
04は遷移画素として現在画素を選択することを要求す
る。この型をデシジョンテーブルにより直ちに確定し
て、確定的決定を得るのは不可能であり、別の方法でこ
れを処理しなければならない。
ポリセグメント400に関する「無意味」型の決定の1
例を示す。全てのポリセグメントは、以下に説明するよ
うに、適応制御により正規化されているので、このケー
スは起こるはずがない。図19のポリセグメントはあい
まいなケースである。すなわち、画素中心の右側の交差
点402は遷移画素として現在画素の右側に位置する画
素を選択することを要求するが、中心の左側の交差点4
04は遷移画素として現在画素を選択することを要求す
る。この型をデシジョンテーブルにより直ちに確定し
て、確定的決定を得るのは不可能であり、別の方法でこ
れを処理しなければならない。
【0029】図20及び図21は、決定の型の別の2つ
の例を示す。「TX存在せず」は、走査線410と全く
交差しないポリセグメントに関する決定である。「TX
はCXである」は、点412及び414における交差を
表わす決定であって、遷移画素として現在画素CXを選
択することを要求する。
の例を示す。「TX存在せず」は、走査線410と全く
交差しないポリセグメントに関する決定である。「TX
はCXである」は、点412及び414における交差を
表わす決定であって、遷移画素として現在画素CXを選
択することを要求する。
【0030】図22は、交差点416及び418が現在
画素の右側の画素(CX+1)を遷移画素として選択す
ることを要求する場合を示す。図23は、次画素NXを
遷移画素として選択させるような交差点420及び42
2の型を示し、従って、「TXはNXである」。最後の
決定の型は、図24に示す「TXは(NX+1)であ
る」。この場合、交差点424及び426は次画素の右
側の画素(すなわち、NX+1)を遷移画素として識別
させる。
画素の右側の画素(CX+1)を遷移画素として選択す
ることを要求する場合を示す。図23は、次画素NXを
遷移画素として選択させるような交差点420及び42
2の型を示し、従って、「TXはNXである」。最後の
決定の型は、図24に示す「TXは(NX+1)であ
る」。この場合、交差点424及び426は次画素の右
側の画素(すなわち、NX+1)を遷移画素として識別
させる。
【0031】図25は、430として、144個の決定
エントリを余すところなくマッピングした図表である。
各エントリは特定の決定の型を表わす簡略記号により表
示されている。144個のエントリのうち、44個のエ
ントリは「無意味」である。残る100個の有意味エン
トリのうち、「非決定」であるのはわずか28個であ
る。これは、正規の全ポリセグメントの約28パーセン
トはこのデシジョンテーブルにより処理できないことを
示唆している。本発明が特定して適用される輪郭字体文
字生成の用途では、あいまいな事象は稀であるので、そ
の比は通常は28パーセントよりさらに低い。
エントリを余すところなくマッピングした図表である。
各エントリは特定の決定の型を表わす簡略記号により表
示されている。144個のエントリのうち、44個のエ
ントリは「無意味」である。残る100個の有意味エン
トリのうち、「非決定」であるのはわずか28個であ
る。これは、正規の全ポリセグメントの約28パーセン
トはこのデシジョンテーブルにより処理できないことを
示唆している。本発明が特定して適用される輪郭字体文
字生成の用途では、あいまいな事象は稀であるので、そ
の比は通常は28パーセントよりさらに低い。
【0032】図16は、終端点を指定したポリセグメン
トに分割されている曲線の1例を示す。開始点450
と、終端点452とを有するポリセグメント448はc
3−−>S:n3とタグ付けされている。すなわち、そ
の開始点は現在画素の第3の象限に位置し、また、終端
点は次画素の第3の象限に位置し、移動方向は南に向か
っている。図16の定義に従えば、このポリセグメント
に関する決定は5lに「記憶」される。同様に、ポリセ
グメント454及び456に関する決定は5jにそれぞ
れ記憶される。
トに分割されている曲線の1例を示す。開始点450
と、終端点452とを有するポリセグメント448はc
3−−>S:n3とタグ付けされている。すなわち、そ
の開始点は現在画素の第3の象限に位置し、また、終端
点は次画素の第3の象限に位置し、移動方向は南に向か
っている。図16の定義に従えば、このポリセグメント
に関する決定は5lに「記憶」される。同様に、ポリセ
グメント454及び456に関する決定は5jにそれぞ
れ記憶される。
【0033】図27では、デシジョンテーブル方式を適
用することにより曲線を充填している。曲線は17個の
ポリセグメントに分割されており、そのうち2つのポリ
セグメント、すなわち、ポリセグメント456及び45
8のみが「?」で指示するように「非決定」であり、デ
シジョンテーブルルックアップ方式を越える追加計算を
要求する。
用することにより曲線を充填している。曲線は17個の
ポリセグメントに分割されており、そのうち2つのポリ
セグメント、すなわち、ポリセグメント456及び45
8のみが「?」で指示するように「非決定」であり、デ
シジョンテーブルルックアップ方式を越える追加計算を
要求する。
【0034】デシジョンテーブルは、標準的な境界定義
に従う一般的なケースと、いくつかの特殊なケースとを
解決するためにエントリによってあらかじめ確定され
る。たとえば、図28に示す通り、遷移画素は走査線4
62と平行ではないポリセグメント460により確定さ
れる。走査線460上の464のような水平のポリセグ
メントは走査線の上方又は下方の水平ポリセグメント、
すなわち、c1−−>E:n2として取り扱われ、その
決定は、ポリセグメントが走査線上にあるか否かにかか
わらず、テーブルの場所<10e>に記憶されて、「T
X存在せず」の決定を指示する。テーブルがそのような
条件の下で遷移画素を遷移させてしまう場合には、衝突
の状況が起こり、いくつかの特定の遷移画素をオン,オ
フとドグルさせて、後の充填プロセスを侵害するであろ
う。
に従う一般的なケースと、いくつかの特殊なケースとを
解決するためにエントリによってあらかじめ確定され
る。たとえば、図28に示す通り、遷移画素は走査線4
62と平行ではないポリセグメント460により確定さ
れる。走査線460上の464のような水平のポリセグ
メントは走査線の上方又は下方の水平ポリセグメント、
すなわち、c1−−>E:n2として取り扱われ、その
決定は、ポリセグメントが走査線上にあるか否かにかか
わらず、テーブルの場所<10e>に記憶されて、「T
X存在せず」の決定を指示する。テーブルがそのような
条件の下で遷移画素を遷移させてしまう場合には、衝突
の状況が起こり、いくつかの特定の遷移画素をオン,オ
フとドグルさせて、後の充填プロセスを侵害するであろ
う。
【0035】「非決定」の場合には、交差点の厳密な位
置を規定するために幾何学的計算を採用しなければなら
ない。許容しうる精度をもってTXについての決定を実
行するために、計算に際して部分画素格子システムを導
入する。部分画素格子の単位は1つの画素の16分の1
であり、これは図29及び図30に示すようにデータを
記録するために16ビット語を使用する。初めの12ビ
ット(I0〜I11)は整数部として使用されるが、そ
の符号は正,負のいずれであっても良い。言いかえれ
ば、第1のビットI11は符号ビットであり、第2のビ
ットI10から12番目のビットI0までは整数値であ
る。16ビット語のうち下位の4ビットF0〜F3は小
数部を表わすために使用される。従って、図30に指示
する通り、1つの画素座標値は符号と、整数部と、小数
部とから構成されている。有効画素値の範囲は−204
8×0から2047×15までであり、この2047×
15は整数部2047と、小数部15/16とを有する
数を表わす。
置を規定するために幾何学的計算を採用しなければなら
ない。許容しうる精度をもってTXについての決定を実
行するために、計算に際して部分画素格子システムを導
入する。部分画素格子の単位は1つの画素の16分の1
であり、これは図29及び図30に示すようにデータを
記録するために16ビット語を使用する。初めの12ビ
ット(I0〜I11)は整数部として使用されるが、そ
の符号は正,負のいずれであっても良い。言いかえれ
ば、第1のビットI11は符号ビットであり、第2のビ
ットI10から12番目のビットI0までは整数値であ
る。16ビット語のうち下位の4ビットF0〜F3は小
数部を表わすために使用される。従って、図30に指示
する通り、1つの画素座標値は符号と、整数部と、小数
部とから構成されている。有効画素値の範囲は−204
8×0から2047×15までであり、この2047×
15は整数部2047と、小数部15/16とを有する
数を表わす。
【0036】次に、図面の図22を参照すると、500
は輪郭字体文字発生器の形態をとる本発明の実現形態を
示す。これは、基本的には、504で示す基準化文字輪
郭スプラインデータ入力を受信し、506で示すように
正規化ポリセグメントデータと呼ばれる6つの対応する
情報を生成する正規化ポリセグメント生成エンジン50
2と;正規化ポリセグメントデータに応答して、510
及び511で示す遷移画素座標データと、512で示す
ような、現在データ入力が遷移画素を識別しないことを
指示する代替表示とを生成する垂直走査変換エンジン5
08と;510,511及び512の入力に応答して、
516で示す文字ビットマップデータを生成するパリテ
ィ充填エンジン514という3つの主要機能素子から構
成されている。
は輪郭字体文字発生器の形態をとる本発明の実現形態を
示す。これは、基本的には、504で示す基準化文字輪
郭スプラインデータ入力を受信し、506で示すように
正規化ポリセグメントデータと呼ばれる6つの対応する
情報を生成する正規化ポリセグメント生成エンジン50
2と;正規化ポリセグメントデータに応答して、510
及び511で示す遷移画素座標データと、512で示す
ような、現在データ入力が遷移画素を識別しないことを
指示する代替表示とを生成する垂直走査変換エンジン5
08と;510,511及び512の入力に応答して、
516で示す文字ビットマップデータを生成するパリテ
ィ充填エンジン514という3つの主要機能素子から構
成されている。
【0037】指示した通り、正規化ポリセグメント生成
エンジン502により生成される出力506は、現在ポ
リセグメント開始点CPのx座標及びy座標の整数部と
小数部(図29及び図30)を表わす2つの16ビット
語CPx及びCPyと、現在ポリセグメント終端点NP
のx座標及びy座標を表わす2つの16ビット語NPx
及びNPyと、現在ポリセグメントの傾きのx成分dx
とy成分dyをそれぞれ示す2組の5データビットとか
ら構成されている。成分dxはNPx−CPxの小数部
に対応する4つのデータビットと、符号ビットI11
(図29)とから構成されている。同様に、成分dyは
NPy−CPyの小数部に対応する4つのデータビット
と、符号ビットとから構成されている。
エンジン502により生成される出力506は、現在ポ
リセグメント開始点CPのx座標及びy座標の整数部と
小数部(図29及び図30)を表わす2つの16ビット
語CPx及びCPyと、現在ポリセグメント終端点NP
のx座標及びy座標を表わす2つの16ビット語NPx
及びNPyと、現在ポリセグメントの傾きのx成分dx
とy成分dyをそれぞれ示す2組の5データビットとか
ら構成されている。成分dxはNPx−CPxの小数部
に対応する4つのデータビットと、符号ビットI11
(図29)とから構成されている。同様に、成分dyは
NPy−CPyの小数部に対応する4つのデータビット
と、符号ビットとから構成されている。
【0038】垂直走査変換エンジン508はデシジョン
テーブル遷移器(DT)装置518と、交差点遷移器
(IT)装置520と、出力装置522という3つの基
本機能素子から構成されている。DT装置518は、本
質的には、図25に示す144の決定を実現する「ルッ
クアップテーブル」であり、524で示す10ビット入
力に応答して、図17に示す判断トリーに対応する4つ
の1ビット出力を生成するように動作する。すなわち、
出力として、信号線530の表示はDT装置により遷移
画素の決定を実行できるか否か(すなわち、現在画素デ
ータが「決定」であり、従って、テーブル出力は「真」
であるか否か)を示し、信号線532の表示は遷移画素
TXが現在画素CXに関連している又は次画素NXに関
連していることを示し、信号線534の表示は遷移画素
TXが信号線532のデータ、現在画素CX又は次画素
NXのいずれかに従属すること、あるいは現在画素の右
側の画素(CX+1)又は次画素の右側の画素(NX+
1)であることを示し、最後に、信号線512の表示は
いずれかの遷移画素がCX,CX+1,NX又はNX+
1の中に存在するか否かを示す。
テーブル遷移器(DT)装置518と、交差点遷移器
(IT)装置520と、出力装置522という3つの基
本機能素子から構成されている。DT装置518は、本
質的には、図25に示す144の決定を実現する「ルッ
クアップテーブル」であり、524で示す10ビット入
力に応答して、図17に示す判断トリーに対応する4つ
の1ビット出力を生成するように動作する。すなわち、
出力として、信号線530の表示はDT装置により遷移
画素の決定を実行できるか否か(すなわち、現在画素デ
ータが「決定」であり、従って、テーブル出力は「真」
であるか否か)を示し、信号線532の表示は遷移画素
TXが現在画素CXに関連している又は次画素NXに関
連していることを示し、信号線534の表示は遷移画素
TXが信号線532のデータ、現在画素CX又は次画素
NXのいずれかに従属すること、あるいは現在画素の右
側の画素(CX+1)又は次画素の右側の画素(NX+
1)であることを示し、最後に、信号線512の表示は
いずれかの遷移画素がCX,CX+1,NX又はNX+
1の中に存在するか否かを示す。
【0039】交差点遷移器(IT)装置520は、52
6で示す19ビット入力からCX,CX+1,NX又は
NX+1が遷移画素であるか否かを数学的に判定し、遷
移画素であれば、信号線536及び538に識別出力を
発生する計算装置である。ところが、IT装置520の
動作はDT装置518と比べてはるかに遅いので、信号
線530のデータがテーブル出力は「非決定」であるこ
とを指示しない限り、IT装置の出力は無視される。
6で示す19ビット入力からCX,CX+1,NX又は
NX+1が遷移画素であるか否かを数学的に判定し、遷
移画素であれば、信号線536及び538に識別出力を
発生する計算装置である。ところが、IT装置520の
動作はDT装置518と比べてはるかに遅いので、信号
線530のデータがテーブル出力は「非決定」であるこ
とを指示しない限り、IT装置の出力は無視される。
【0040】出力装置522は、信号線530の入力に
応答して信号線532及び534のデータの2つのビッ
ト又は信号線536及び538の2つのビットのいずれ
かを選択し、540で示す画素座標データ入力の48ビ
ットを操作して、信号線510及び511へ遷移画素座
標データを発生する論理回路を含む。
応答して信号線532及び534のデータの2つのビッ
ト又は信号線536及び538の2つのビットのいずれ
かを選択し、540で示す画素座標データ入力の48ビ
ットを操作して、信号線510及び511へ遷移画素座
標データを発生する論理回路を含む。
【0041】先に指示したように、DT装置518は図
25の144個のエントリを含むマップ430を図32
に示す真理値表によって実現するために回路符号化方式
を使用する。本発明はスイッチ理論の周知のKarna
ughマップ方式を利用して、構成を簡略にしている。
その結果、図33に示す論理回路が得られる。図33の
中で入力信号に付した接尾辞「F3」は入力語の小数部
の最上位ビットを指示し、接尾辞「I0」は入力語の整
数部の最下位ビットを指示する。図31に示したような
dx及びdyの符号ビットはdxsign,dysignとして
指示されている。X座標値のけた上げ又は借り(CPx
I0とNPxI0の排他的論理和)は「cbx」であ
り、また、cbyはy座標値のけた上げ又は借り(CP
yとNPxI0の排他的論理和)を示す。DT装置51
8は524で示すような10個の入力信号を受信し、次
の4つの出力信号を発生する。
25の144個のエントリを含むマップ430を図32
に示す真理値表によって実現するために回路符号化方式
を使用する。本発明はスイッチ理論の周知のKarna
ughマップ方式を利用して、構成を簡略にしている。
その結果、図33に示す論理回路が得られる。図33の
中で入力信号に付した接尾辞「F3」は入力語の小数部
の最上位ビットを指示し、接尾辞「I0」は入力語の整
数部の最下位ビットを指示する。図31に示したような
dx及びdyの符号ビットはdxsign,dysignとして
指示されている。X座標値のけた上げ又は借り(CPx
I0とNPxI0の排他的論理和)は「cbx」であ
り、また、cbyはy座標値のけた上げ又は借り(CP
yとNPxI0の排他的論理和)を示す。DT装置51
8は524で示すような10個の入力信号を受信し、次
の4つの出力信号を発生する。
【0042】(1)信号線512の「no_TX_at
_all」は、交差点が存在していなければ1に等し
く、そうでなければ0である; (2)信号線530の「deterministic」
は、DT装置がTXを確定することができる場合は1に
等しくそうでなければ0である; (3)信号線532の「NX_DT」は、遷移画素のx
座標TXxがNXx又は(NXx+1)であれば1に等
しく、TXxがCXx又は(CXx+1)であれば0で
ある; (4)信号線534の「right_DT」は、TXx
がCX又はNXの右側の次画素アドレスであれば1に等
しく、TXxがCX又はNXであれば0である。
_all」は、交差点が存在していなければ1に等し
く、そうでなければ0である; (2)信号線530の「deterministic」
は、DT装置がTXを確定することができる場合は1に
等しくそうでなければ0である; (3)信号線532の「NX_DT」は、遷移画素のx
座標TXxがNXx又は(NXx+1)であれば1に等
しく、TXxがCXx又は(CXx+1)であれば0で
ある; (4)信号線534の「right_DT」は、TXx
がCX又はNXの右側の次画素アドレスであれば1に等
しく、TXxがCX又はNXであれば0である。
【0043】図34には、550として1つの交差点の
拡大図を示し、IT装置520が交差点を幾何学的に位
置規定するために使用するアルゴリズムを表示してあ
る。ドットマトリクス装置においてそのような走査線と
ポリセグメントとの交差点を見出すために、幾何学を利
用して交差点IPを求めることができる。ポリセグメン
トは所定の方法により生成されるので、ポリセグメント
上のそれぞれの点の座標を記録することができる。従っ
て、既知の因子として現在点CPと次の点NPがあり、
走査線がdyの値を確定するための固定因子であると
き、dxは容易に取り出される。 CP+(dx,dy)=NP CP+(dx′,dy′)=IP
拡大図を示し、IT装置520が交差点を幾何学的に位
置規定するために使用するアルゴリズムを表示してあ
る。ドットマトリクス装置においてそのような走査線と
ポリセグメントとの交差点を見出すために、幾何学を利
用して交差点IPを求めることができる。ポリセグメン
トは所定の方法により生成されるので、ポリセグメント
上のそれぞれの点の座標を記録することができる。従っ
て、既知の因子として現在点CPと次の点NPがあり、
走査線がdyの値を確定するための固定因子であると
き、dxは容易に取り出される。 CP+(dx,dy)=NP CP+(dx′,dy′)=IP
【0044】DT装置518と並行して動作するIT装
置520はポリセグメントと交差走査線との交差点55
1のX座標(IPx)を計算する。そのプロセスは、I
Pxが現在画素中心の右側にあるか又は左側にあるかを
結論づけ、次に、TXxを確定することができる。 dx′=(dy′*dx)/dy IPx=CPx+dx
置520はポリセグメントと交差走査線との交差点55
1のX座標(IPx)を計算する。そのプロセスは、I
Pxが現在画素中心の右側にあるか又は左側にあるかを
結論づけ、次に、TXxを確定することができる。 dx′=(dy′*dx)/dy IPx=CPx+dx
【0045】図35は、そのプロセスをいかにして実現
するかを示すブロック線図である。IT装置520はd
y′=IPy−CPyの計算を開始する。2つの条件を
検査する: (1)|dy′|>0であれば、dy′sign=dysign (2)|dy′|=0であれば、dy′sign=0 (すなわち、dy′はdyと同じ符号を有する) IPyはy座標値に関しては常に画素中心レベルに位置
しているので、IPyはdy′sign固定小数値を有し、
従って、IPyFは[3..0]=1000である。こ
のようにして、4ビット2の補数器560と、4ビット
加算器562とによりdy′の値を計算することができ
る。
するかを示すブロック線図である。IT装置520はd
y′=IPy−CPyの計算を開始する。2つの条件を
検査する: (1)|dy′|>0であれば、dy′sign=dysign (2)|dy′|=0であれば、dy′sign=0 (すなわち、dy′はdyと同じ符号を有する) IPyはy座標値に関しては常に画素中心レベルに位置
しているので、IPyはdy′sign固定小数値を有し、
従って、IPyFは[3..0]=1000である。こ
のようにして、4ビット2の補数器560と、4ビット
加算器562とによりdy′の値を計算することができ
る。
【0046】(1)|dx′|>0であれば、dx′
sign=dxsignであり且つ(2)|dx′|=0であれ
ば、dxsign=0であるので、dx′も常にdxと同じ
符号を有する。(dy′*dx)及び[(dy′*dx)
/dy]を計算するプロセスの間、符号ビットを一時的
に無視することができる。そして、絶対値を計算した
後、dx′にdx符号ビットを割り当てることによりd
x′の符号ビットを回復できる。従って、4ビット絶対
値発生器564でdxをその絶対値|dx|に変換し、
単純な4×4アレイ乗算器566を使用して、(|d
y′|*|dx|) の値を計算することができる。同じ
方式を適用することにより、4ビット絶対値発生器56
8でdyをその絶対値|dy|に変換し、単純な8×4
除算器570を使用して、絶対値|dx′|を計算す
る。最後に、4ビット絶対値発生器572で、dx符号
ビットを組込み、右の2の補数値に変換することによ
り、|dx′|をdx′に変換する。|dx′|=0の
ときにdx′signを0に設定するために、2入力AND
ゲート574と、4入力ORゲート576とが必要であ
る。
sign=dxsignであり且つ(2)|dx′|=0であれ
ば、dxsign=0であるので、dx′も常にdxと同じ
符号を有する。(dy′*dx)及び[(dy′*dx)
/dy]を計算するプロセスの間、符号ビットを一時的
に無視することができる。そして、絶対値を計算した
後、dx′にdx符号ビットを割り当てることによりd
x′の符号ビットを回復できる。従って、4ビット絶対
値発生器564でdxをその絶対値|dx|に変換し、
単純な4×4アレイ乗算器566を使用して、(|d
y′|*|dx|) の値を計算することができる。同じ
方式を適用することにより、4ビット絶対値発生器56
8でdyをその絶対値|dy|に変換し、単純な8×4
除算器570を使用して、絶対値|dx′|を計算す
る。最後に、4ビット絶対値発生器572で、dx符号
ビットを組込み、右の2の補数値に変換することによ
り、|dx′|をdx′に変換する。|dx′|=0の
ときにdx′signを0に設定するために、2入力AND
ゲート574と、4入力ORゲート576とが必要であ
る。
【0047】5ビット2進加算器578は、遷移画素の
アドレスを確定するために使用される。 CPxsign CPxF3 CPxF2 CPxF1 CPxF0 + dx′sign dx′3 dx′2 dx′1 dx′0 ──────────────────────────────────── = Isign IPxF3 IPxF2 IPxF1 IPxF0 従って、比較器580の2つの出力信号はIPxF3に
等しい「right_IT」と、CPxsignとIsignの
排他的論理和に等しい「NX_IT」とである。NX_
ITは、TXxがNXxに相対している場合は1に設定
され、TXxがCXxに相対している場合には0に設定
される。信号「right_IT」は、TXxがCX又
はNxのすぐ右側の画素である場合は1に設定され、T
XがCX又はNXである場合には0に設定される。
アドレスを確定するために使用される。 CPxsign CPxF3 CPxF2 CPxF1 CPxF0 + dx′sign dx′3 dx′2 dx′1 dx′0 ──────────────────────────────────── = Isign IPxF3 IPxF2 IPxF1 IPxF0 従って、比較器580の2つの出力信号はIPxF3に
等しい「right_IT」と、CPxsignとIsignの
排他的論理和に等しい「NX_IT」とである。NX_
ITは、TXxがNXxに相対している場合は1に設定
され、TXxがCXxに相対している場合には0に設定
される。信号「right_IT」は、TXxがCX又
はNxのすぐ右側の画素である場合は1に設定され、T
XがCX又はNXである場合には0に設定される。
【0048】図36に示される出力装置522は、信号
線540の入力データとして12ビット整数項CPx
I,NPxI,CPyI及びNPyIを使用してCX又
はNXに関して遷移アドレスTXを選択するために必要
な論理を含む。走査線が所定のポリセグメントと交差す
る場合、遷移画素TXyのy座標はCXy又はNXyの
いずれかと等しく、一方、遷移画素TXxのx座標はC
Xx,CXx+1,NXx又はNXx+1に等しい。先
に指示した通り、TXyはDT装置(NX_DT信号)
からの入力532によってのみ確定される。信号線53
0の入力「deterministic」が1に等しけ
れば、TXxをDT装置により信号線532の入力「N
X_DT」と、信号線534の「right_DT」と
を経て確定できる。そうでない場合には、TXxはIT
装置により信号線536の入力「NX_IT」と、信号
線538の「right_IT」とを経て確定される。
マルチプレクサ590〜596は適切な入力信号を選択
するために使用され、12ビット加算器598は、TX
xがCXx+1又はNXx+1に等しいとき、その入力
オペランドの値に1を加算する。
線540の入力データとして12ビット整数項CPx
I,NPxI,CPyI及びNPyIを使用してCX又
はNXに関して遷移アドレスTXを選択するために必要
な論理を含む。走査線が所定のポリセグメントと交差す
る場合、遷移画素TXyのy座標はCXy又はNXyの
いずれかと等しく、一方、遷移画素TXxのx座標はC
Xx,CXx+1,NXx又はNXx+1に等しい。先
に指示した通り、TXyはDT装置(NX_DT信号)
からの入力532によってのみ確定される。信号線53
0の入力「deterministic」が1に等しけ
れば、TXxをDT装置により信号線532の入力「N
X_DT」と、信号線534の「right_DT」と
を経て確定できる。そうでない場合には、TXxはIT
装置により信号線536の入力「NX_IT」と、信号
線538の「right_IT」とを経て確定される。
マルチプレクサ590〜596は適切な入力信号を選択
するために使用され、12ビット加算器598は、TX
xがCXx+1又はNXx+1に等しいとき、その入力
オペランドの値に1を加算する。
【0049】図形オブジェクトの全ての遷移画素を確定
した後、パリティ充填エンジン514によりパリティ走
査線充填方式を使用して内側の充填を実行することがで
きる。すなわち、1対の遷移画素のうち第1の遷移画素
から始めて、第1の遷移画素を含めた画素に黒色を書込
み、1対の遷移画素のうち第2の遷移画素から始めて、
第2の遷移画素を含めた画素に白色を書込む。レーザー
プリンタ又は表示装置における文字生成プロセスをスピ
ードアップする装置に関して本発明を説明したが、プロ
ッタ,植字装置又は他の同様の装置などの他のドットマ
トリクス装置にも本発明を実現できることは当業者には
理解されるであろう。従って、特許請求の範囲は本発明
の真の趣旨の中に含まれるあらゆる変更,変形及び用途
を対象にするものである。
した後、パリティ充填エンジン514によりパリティ走
査線充填方式を使用して内側の充填を実行することがで
きる。すなわち、1対の遷移画素のうち第1の遷移画素
から始めて、第1の遷移画素を含めた画素に黒色を書込
み、1対の遷移画素のうち第2の遷移画素から始めて、
第2の遷移画素を含めた画素に白色を書込む。レーザー
プリンタ又は表示装置における文字生成プロセスをスピ
ードアップする装置に関して本発明を説明したが、プロ
ッタ,植字装置又は他の同様の装置などの他のドットマ
トリクス装置にも本発明を実現できることは当業者には
理解されるであろう。従って、特許請求の範囲は本発明
の真の趣旨の中に含まれるあらゆる変更,変形及び用途
を対象にするものである。
【図1】Bresenhamの走査−変換方法と、本発
明の適応制御を伴う垂直走査−変換方法とを比較して示
す図。
明の適応制御を伴う垂直走査−変換方法とを比較して示
す図。
【図2】Bresenhamの走査−変換方法と、本発
明の適応制御を伴う垂直走査−変換方法とを比較して示
す図。
明の適応制御を伴う垂直走査−変換方法とを比較して示
す図。
【図3】Bresenhamの方法と、本発明の垂直走
査−変換方法とから得られる画素配列を示す拡大図。
査−変換方法とから得られる画素配列を示す拡大図。
【図4】Bresenhamの方法と、本発明の垂直走
査−変換方法とが境界セグメントに沿って画素の色(黒
色又は白色)をいかにして確定するかを示す図。
査−変換方法とが境界セグメントに沿って画素の色(黒
色又は白色)をいかにして確定するかを示す図。
【図5】活字の形状を近似するためにスプラインをいか
にしてより小さなポリセグメント片に分解するかを示す
図。
にしてより小さなポリセグメント片に分解するかを示す
図。
【図6】走査線とポリセグメントとの交差点の位置を規
定することにより遷移画素を確定する方法を示す図。
定することにより遷移画素を確定する方法を示す図。
【図7】遷移画素を識別した後の充填の結果を示す図。
【図8】様々な長さのポリセグメントによって充填され
た文字を示す図。
た文字を示す図。
【図9】長さが全て1つの画素の対角線より短い正規化
ポリセグメントによって充填された文字を示す図。
ポリセグメントによって充填された文字を示す図。
【図10】x,y座標系における画素単位の定義を示す
図。
図。
【図11】x,y座標系における画素単位の定義を示す
図。
図。
【図12】象限及び境界の定義を示す図。
【図13】象限及び境界の定義を示す図。
【図14】ポリセグメントの動きの規約を示す図。
【図15】ポリセグメントの動きの方向を示す図。
【図16】現在画素(CX)と考えられる9つの次画素
(NX)の場所の関係を、象限及びポリセグメントの方
向の概念と、デシジョンテーブルの情報をいかにしてN
X象限に記憶するかということと共に示す図。
(NX)の場所の関係を、象限及びポリセグメントの方
向の概念と、デシジョンテーブルの情報をいかにしてN
X象限に記憶するかということと共に示す図。
【図17】デシジョンテーブルエントリの可能な全ての
決定の型を示す図。
決定の型を示す図。
【図18】ポリセグメントの型と、それに関連する決定
カテゴリのいくつかの例を示す図。
カテゴリのいくつかの例を示す図。
【図19】ポリセグメントの型と、それに関連する決定
カテゴリのいくつかの例を示す図。
カテゴリのいくつかの例を示す図。
【図20】ポリセグメントの型と、それに関連する決定
カテゴリのいくつかの例を示す図。
カテゴリのいくつかの例を示す図。
【図21】ポリセグメントの型と、それに関連する決定
カテゴリのいくつかの例を示す図。
カテゴリのいくつかの例を示す図。
【図22】ポリセグメントの型と、それに関連する決定
カテゴリのいくつかの例を示す図。
カテゴリのいくつかの例を示す図。
【図23】ポリセグメントの型と、それに関連する決定
カテゴリのいくつかの例を示す図。
カテゴリのいくつかの例を示す図。
【図24】ポリセグメントの型と、それに関連する決定
カテゴリのいくつかの例を示す図。
カテゴリのいくつかの例を示す図。
【図25】完全なデシジョンテーブルのレイアウトを示
す図。
す図。
【図26】ポリセグメントの動きデータをいかにして、
どこに記録するかの1例を示す図。
どこに記録するかの1例を示す図。
【図27】図26に示したのと同じ例のデシジョンテー
ブルとの対照検査後の結果を示す図。
ブルとの対照検査後の結果を示す図。
【図28】1つの境界条件と、それに対する特別の規則
を示す図。
を示す図。
【図29】16ビットデータ語のフォーマットを示す
図。
図。
【図30】画素スペースを表わすためのシステムを示す
図。
図。
【図31】本発明に従った輪郭字体文字発生器の実現形
態を示すブロック線図。
態を示すブロック線図。
【図32】図35のデシジョンテーブルを具体化した真
理値表を示す図。
理値表を示す図。
【図33】図32の真理値表を論理回路に設計した場合
を示す図。
を示す図。
【図34】走査線−ポリセグメント交差点の場所を規定
するために使用される数学的方法を示す図。
するために使用される数学的方法を示す図。
【図35】IT装置の論理回路構成を示す図。
【図36】図31に示した出力装置の主要な機能素子を
示すブロック線図。
示すブロック線図。
500 輪郭字体文字発生器 502 正規化ポリセグメント生成エンジン 508 垂直走査変換エンジン 514 パリティ充填エンジン 518 デシジョンテーブル遷移器(DT)装置 520 交差点遷移器(IT)装置 522 出力装置
フロントページの続き (72)発明者 ジェイムズ・シイ・ワイ・ラング アメリカ合衆国 95129 カリフォルニア 州・サン ホゼ・キャスル グレン アヴ ェニュ・5574
Claims (2)
- 【請求項1】 スプライン輪郭フォーマットの画像デー
タをドットマトリクス印刷装置及び/又はドットマトリ
クス表示装置を駆動するのに適するビットマップ化デー
タに変換する装置において、 スプラインデータを、各ポリセグメントの長さが印刷又
は表示すべき1つの画素の寸法に対して所定の関係を有
するような正規化ポリセグメントデータに変換する正規
化ポリセグメントデータ生成手段と;前記正規化ポリセ
グメントデータに応答して、1列分の画素の中の各画素
の特定の1点を通過する基準線と交差する各ポリセグメ
ントに対して、データ状態の遷移が起こる画素として定
義される遷移画素の場所を規定する遷移画素データを発
生するように動作する垂直走査変換手段と;前記遷移画
素データに応答して、それに対応するビットマップ化デ
ータを生成するように動作するパリティ走査充填手段と
を具備する装置。 - 【請求項2】 スプライン輪郭フォーマットの画像デー
タをドットマトリクス印刷装置及び/又はドットマトリ
クス表示装置を駆動するのに適するビットマップ化デー
タに変換する方法において、 スプラインデータを、各ポリセグメントの長さが印刷又
は表示すべき1つの画素の寸法に対して所定の関係を有
するような正規化ポリセグメントデータに変換する過程
と;前記正規化ポリセグメントデータを使用して、1列
分の画素の中の各画素の特定の1点を通過する基準線と
交差する各ポリセグメントに対して、データ状態の遷移
が起こる画素として定義される遷移画素の場所を規定す
る遷移画素データを発生する過程と;前記遷移画素デー
タを使用して、それに対応するビットマップ化データを
生成する過程とから成る方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US730,181 | 1976-10-06 | ||
| US07/730,181 US5276790A (en) | 1991-07-12 | 1991-07-12 | Fast vertical scan-conversion and filling method and apparatus for outline font character generation in dot matrix devices |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH05204363A true JPH05204363A (ja) | 1993-08-13 |
Family
ID=24934289
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4190262A Pending JPH05204363A (ja) | 1991-07-12 | 1992-06-25 | ドットマトリクス装置における輪郭字体文字生成のための高速垂直走査−変換・充填方法及びその装置 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US5276790A (ja) |
| JP (1) | JPH05204363A (ja) |
| TW (1) | TW211608B (ja) |
Families Citing this family (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0540463A (ja) * | 1991-08-08 | 1993-02-19 | Hitachi Ltd | 多階調文字発生装置 |
| JP3164617B2 (ja) * | 1991-11-07 | 2001-05-08 | 株式会社日立製作所 | 文字図形変形処理装置および方法 |
| DE69314688T2 (de) * | 1992-04-23 | 1998-02-19 | Heidenhain Gmbh Dr Johannes | Numerische Steuerungseinrichtung und Verfahren zur Steuerung der Bewegung eines Werkzeuges |
| TW262547B (ja) * | 1992-11-30 | 1995-11-11 | Canon Kk | |
| JP3413432B2 (ja) * | 1994-05-30 | 2003-06-03 | 富士ゼロックス株式会社 | 文字展開処理装置 |
| JPH0816144A (ja) * | 1994-06-29 | 1996-01-19 | Fujitsu Ltd | アウトラインフォント展開方法およびアウトラインフォント展開装置 |
| US5909519A (en) * | 1996-05-21 | 1999-06-01 | Hewlett-Packard Company | Method for printing pseudo-bold characters at arbitrary orientations, scaling, and resolutions |
| JP3013808B2 (ja) * | 1997-05-19 | 2000-02-28 | 日本電気株式会社 | 解像度変換方法およびこれを用いた表示制御装置 |
| US6091860A (en) * | 1997-11-12 | 2000-07-18 | Pagemasters, Inc. | System and method for processing pixels for displaying and storing |
| JP4387611B2 (ja) * | 2001-06-07 | 2009-12-16 | 富士通マイクロエレクトロニクス株式会社 | 描画装置及び描画方法 |
| GB2400780B (en) * | 2003-04-17 | 2006-07-12 | Research In Motion Ltd | System and method of converting edge record based graphics to polygon based graphics |
| CN101246550B (zh) * | 2008-03-11 | 2011-05-18 | 华为终端有限公司 | 图像文字识别方法及装置 |
| US9413477B2 (en) * | 2010-05-10 | 2016-08-09 | Microsoft Technology Licensing, Llc | Screen detector |
| US9311708B2 (en) | 2014-04-23 | 2016-04-12 | Microsoft Technology Licensing, Llc | Collaborative alignment of images |
| US9508011B2 (en) | 2010-05-10 | 2016-11-29 | Videosurf, Inc. | Video visual and audio query |
| US11915071B1 (en) | 2022-10-26 | 2024-02-27 | Kyocera Document Solutions Inc. | Caching outline characters in printed documents |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH02213897A (ja) * | 1989-02-15 | 1990-08-24 | Yamaha Corp | 曲線発生回路 |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5971093A (ja) * | 1982-10-18 | 1984-04-21 | 株式会社日立製作所 | 塗潰し図形発生装置 |
| DE3376594D1 (en) * | 1983-12-22 | 1988-06-16 | Ibm | Area filling hardware for a colour graphics frame buffer |
| US4759965A (en) * | 1985-08-06 | 1988-07-26 | Canon Kabushiki Kaisha | Ceramic, preparation thereof and electronic circuit substrate by use thereof |
| US4949281A (en) * | 1987-04-23 | 1990-08-14 | H. Berthold Ag | Method and apparatus for generating and producing two-dimensional graphic object by polynominal parametric curves |
| US4855935A (en) * | 1987-05-08 | 1989-08-08 | Sun Microsystems, Inc. | Method and apparatus for rendering vectors using bresenham parameters |
| US4937761A (en) * | 1987-11-04 | 1990-06-26 | Blueprint Technologies Incorporated | Method and apparatus for enhanced speed graphic image processing |
-
1991
- 1991-07-12 US US07/730,181 patent/US5276790A/en not_active Expired - Lifetime
- 1991-09-10 TW TW080107149A patent/TW211608B/zh not_active IP Right Cessation
-
1992
- 1992-06-25 JP JP4190262A patent/JPH05204363A/ja active Pending
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH02213897A (ja) * | 1989-02-15 | 1990-08-24 | Yamaha Corp | 曲線発生回路 |
Also Published As
| Publication number | Publication date |
|---|---|
| US5276790A (en) | 1994-01-04 |
| TW211608B (en) | 1993-08-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3483946B2 (ja) | フォント処理装置及びフォント処理方法 | |
| US5159668A (en) | Method and apparatus for manipulating outlines in improving digital typeface on raster output devices | |
| JPH05204363A (ja) | ドットマトリクス装置における輪郭字体文字生成のための高速垂直走査−変換・充填方法及びその装置 | |
| US5719595A (en) | Method and apparauts for generating a text image on a display with anti-aliasing effect | |
| US5355449A (en) | Method and apparatus for outline font character generation in dot matrix devices | |
| US5028848A (en) | Tile vector to raster conversion method | |
| US5428728A (en) | Method and apparatus for outline font character generation in dot matrix devices | |
| JPH076233A (ja) | 曲線を描く装置及び方法 | |
| JPH08106276A (ja) | スクリーン上でのテキスト表示方法 | |
| US5489920A (en) | Method for determining the optimum angle for displaying a line on raster output devices | |
| KR100317549B1 (ko) | 문자채움처리를위해연쇄코드를사용하는비트맵문자변환방법 | |
| JP3009525B2 (ja) | ベクトル画像描画装置 | |
| US5553219A (en) | Font outline and bit map generator synthesizing filling data with selected outline data or duplicate outline data | |
| JPH03119387A (ja) | デジタル活字面の輪郭を形成する方法およびその装置 | |
| Lejun et al. | A new contour fill algorithm for outlined character image generation | |
| JP3085175B2 (ja) | 描画装置 | |
| US6504543B1 (en) | Polygon drawing method and polygon drawing apparatus | |
| JP2919712B2 (ja) | 文字発生方法および装置 | |
| JPH11109943A (ja) | フォント処理装置およびフォント処理用プログラムを記録した記録媒体 | |
| JP2888270B2 (ja) | 図形処理装置及びその方法 | |
| JPH06118935A (ja) | 文字データ発生装置 | |
| JP3493745B2 (ja) | 図形描画装置 | |
| KR940007818B1 (ko) | 그레이 스케일 폰트의 생성방법 | |
| JP3244411B2 (ja) | キャラクタイメージデータ生成方法及び装置並びにキャラクタ出力方法及び装置 | |
| JP3294249B2 (ja) | 画像処理装置 |