JPH05341761A - 文字発生装置 - Google Patents

文字発生装置

Info

Publication number
JPH05341761A
JPH05341761A JP4145766A JP14576692A JPH05341761A JP H05341761 A JPH05341761 A JP H05341761A JP 4145766 A JP4145766 A JP 4145766A JP 14576692 A JP14576692 A JP 14576692A JP H05341761 A JPH05341761 A JP H05341761A
Authority
JP
Japan
Prior art keywords
character
correction
bit
data
template
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
Application number
JP4145766A
Other languages
English (en)
Inventor
Fumio Nagasaka
文夫 長坂
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP4145766A priority Critical patent/JPH05341761A/ja
Publication of JPH05341761A publication Critical patent/JPH05341761A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Dot-Matrix Printers And Others (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

(57)【要約】 【目的】 文字形状の複雑さに対し、文字表現に必要な
画素数が不足した場合に対しても、デザイン上の意図を
取り入れた、判読のし易い文字形状を形成する。 【構成】 文字発生手段10が、文字データ14に記載
された補正限界サイズ16と比較することで、要求文字
の大きさが補正限界サイズより小さいことを知ると、第
1に補正限界サイズより大きな文字形状をイメージメモ
リ9に発生する。次に、水平補正テンプレート20を読
み込み、この値のビットの0/1の変化に応じて、画素
配置を論理和回路8を用いて再配置する。この時、テン
プレート内のビットが同値を連続する間、水平方向で同
一直線上に並ぶ画素群は重ね合わせ処理される。また、
テンプレート内でビット値の変化があれば、前記で重ね
合わせ処理された画素群が、新規画素群として記録され
る。同様の処理を、垂直補正テンプレート19を用い垂
直方向にも行い、要求サイズまで縮小する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、パーソナルコンピュー
タ、ワードプロセッサ等の情報機器において使用される
文字発生方法に関する。さらに詳しくは、文字形状の複
雑さに対し文字形状を表す画素数が不足する場合の補正
手段に関する。
【0002】
【従来の技術】従来から広く使用されてきた文字データ
の形式としてドットフォントが有る。ドットフォント
は、画素集合により文字形状を表すデータ形式であり、
このデータ形式では、ある文字のサイズを指定すると、
文字を出力すべきデバイスの解像度によって、文字に使
用される画素数が定まる。従って文字データは解像度に
依存することになり、拡大・縮小、回転等に対する自由
度も低くなる。それに対し、パーソナルコンピュータを
使用したデスクトップパブリッシングの普及に伴い、印
刷装置の機械的仕様、解像度、印刷方式等に依存しない
文字表現形式の一つであるアウトラインフォントが開発
された。
【0003】アウトラインフォントは、文字の外形形状
を直線あるいはスプライン曲線、放物線などの曲線の組
み合わせで記述する技術であり、一文字あたりのデータ
は、文字形状の表現に必要な座標値と、曲線、直線の形
式の指定、及び係数項等のパラメータあるいは補正デー
タ等により形成される。アウトラインフォント処理系は
これらデータに基づき文字外形を演算して発生させ、外
形内部の塗り潰しを行ない文字の形状を表す画素を発生
する。このため、アウトラインフォントは、印刷装置、
CRT表示装置等の出力装置の解像度に依存せず文字形
状の記述が可能で、さらに演算処理で文字輪郭を発生す
る段階で、拡大・縮小、回転等の操作を加えることが容
易である。また、文字サイズによらず1書体につき1種
類のデータを用意するだけで良いことから、文字記憶領
域の削減の点からも有利であり、デスクトップパブリッ
シングの分野において利用されてきている。
【0004】このデスクトップパブリッシングでは、ド
キュメントの作成・修正は、低解像度のCRT・液晶パ
ネル等の表示装置を持つパーソナルコンピュータ上で行
なわれ、印刷は高解像度の電子写真等の原理を利用した
印刷装置で行なわれるわけであり、従って表示装置で見
る状態と、印刷出力が相似であることが優れたユーザイ
ンターフェースを実現する上で重要となっている。
【0005】しかし、CRT、液晶パネル等の表示装置
の解像度が、電子写真方式に代表される高密度の出力装
置の解像度に比較し1/4以下程度と低いことから、小
さな文字を表示する場合、文字形状を表現するために使
用できる画素数が不足するという問題が有り、特に文字
形状の複雑な漢字の場合に大きな問題となる。例えば、
1インチあたり300画素の解像度を持つ印刷装置にお
いて48ドットを使用し表現される文字は、同じ大きさ
で1インチあたり75画素の密度のCRT装置に表示す
る場合は12ドットしか使用できない。このドット数で
は画数の多い漢字は事実上表示不可能である。また、こ
れと等価な問題は、印刷装置において極めて微細な文字
を印刷する場合にも生じる。
【0006】この問題は、本来の文字の字体と異なる省
略形式の文字形状を使用する事で解決できるが、文字形
状の複雑さに対し充分な画素数を使用できる場合と、そ
れ以外の場合で、出力する文字データをそれぞれどのよ
うに用意するかという問題が生じる。
【0007】この問題の解決方法は明らかに次の2つ内
のいずれかになる。
【0008】(1)同一の文字であっても、場合に応じ
異なる文字データを使用する方法。
【0009】(2)同一の文字である限り、様々な画素
数の場合に応じ、一つの文字データから文字形状を生成
する方法。
【0010】上記の内、前者の方法として最も一般的な
ものは、出力デバイスが低解像度の場合及び、文字あた
りの画素数が充分でない場合に使用する文字データと、
それ以外の場合使用する文字データをそれぞれ別個に用
意する方法である。例えば、出力装置の解像度に対し、
画素数を十分多くとれる場合は、アウトラインフォント
を使用し、画素数が不十分の場合は、ドットフォントを
使用するという方法がある。しかしこの方法では、使用
可能な画素数に応じて、複数の種類のドットフォントの
元データを用意する必要がある。従って、文字データと
しては、同一文字、同一書体であるにも関わらず、文字
サイズにより複数のデータを持つ事となり、記憶領域を
多く消費する問題点が有る。また、同一文字に対し、複
数のデータを用意する事は、複数書体の使用を前提とす
るデスクトップパブリッシング分野で、文字データの保
守の容易さを損なう問題点がある。
【0011】他方、後者の方法では、どのようなサイズ
の文字形状を作り出す場合でも元のデータは同一であ
る。アウトラインフォントから、様々な文字サイズに合
わせ、文字形状の画素を発生する場合、文字形状を表す
直線、曲線の座標計算のみから文字形状を発生すると、
演算の丸め誤差により本来のデザイン上で意図された文
字形状とは異なる文字形状が発生する場合が有る。この
ため、文字形状の複雑さに対し、表示(あるいは印刷出
力)に使用できる画素数が不充分な場合は、何らかの補
正手段を用いて、文字形状の画素配置を適切な配置に置
き換える処理が必要である。これらの処理には、画素数
の不足から生じる文字外形の省略の問題とは別に、線幅
補正の問題も含まれる。ここで言う「線幅補正」とは、
例えば縦線あるいは横線が複数使用される文字形状にお
いて、個々の線幅が、文字デザイン上バランス良く見え
る様に、各位置で縦線あるいは横線を形成する画素の位
置を補正する技術である。最近では、このような文字形
状の補正に関する処理技術を総称し、慣用として「文字
のヒント処理」と呼ぶことがある。
【0012】総じてこれら補正技術は、表示に使用する
画素数が少ない場合、演算結果の座標上での丸め誤差か
ら生じる文字形状の不適切な部分をいかにして改善する
かを目的としている。
【0013】この「文字のヒント処理」に関する技術と
して、特開平2−89665号に開示の「文字発生方
式」がある。この発明では、まず文字形状は複数の輪郭
の屈曲点により記述し、このデータを、演算により拡
大、縮小する場合、演算後に座標となる位置が、画素の
密度により決まるある間隔の格子上の点となる必要があ
る。しかし、演算結果を格子上に当てはめる(整数化す
る)際に、そのままでは丸め誤差を発生し、文字のデザ
イン上のバランスに崩れを生じる屈曲点が生じる。そこ
で、これら丸め誤差の影響を受ける屈曲点を特異点と位
置付け、特異点判断手段により判別し、かつ特異点演算
手段により座標上の位置を補正するものである。
【0014】
【発明が解決しようとする課題】しかし、高機能なデス
クトップパブリッシング分野のアプリケーションには、
この従来方法で解決できない問題が残っている。それら
は、以下の2点にある。 (1)文字のレイアウトに対する自由度が高いため、ア
ウトラインフォントから、ある文字の輪郭点列が発生さ
れる際、その点列の位置が、解像度により定まる格子上
の点とはならないという問題点。
【0015】(2)輪郭点列の演算上の丸め誤差を補正
し、文字形状を発生させた場合、形状の複雑さに対し、
文字形表示に使用される画素数が不足した状況では、文
字形状が本来のデザインと異なり、他の文字と誤認され
る等の不都合をもたらすという問題点。
【0016】上記の内、(1)の問題点は特開平2−8
9665の発明での構成のうち”特異判定手段”に困難
をもたらすものである。たとえば、実際に1インチあた
り400画素の解像度を持つ電子写真方式印刷装置に印
刷される画像を、1インチあたり72画素の解像度のC
RT表示装置で編集したい場合等は、CRT表示装置上
で、アウトラインフォントの輪郭線分の端点が、格子上
の点となるとは限らない。これと類似の状況は多く、
(1)の問題点は無視できない。
【0017】さらに(2)に指摘した問題点では、図2
の様な実例を挙げることができる。実際の文字データは
より多くの格子点を持つ座標系で定義されるが、ここで
は簡単のため15×15画素の範囲21に定義したアウ
トラインフォント形式の文字データとして、漢字の
「青」を例にとる。文字形状は、範囲21においては輪
郭線群23で表される。この文字データを80%の大き
さに縮小すると、新たに12×12画素の範囲22に、
輪郭線群24が得られる。この輪郭線群24のデータか
ら、従来方法で画素発生すると、画素群25が得られ
る。この時、画素群25により形成される文字形状は、
明らかに最初のデザイン時に意図した形状から大きな崩
れを生じている。1インチあたり72画素の解像度のC
RT表示装置では、この画素群25により約4.2mm
程の大きさの文字が現われるが、この場合、漢字「青」
の他、「吉」等と誤認されるおそれもある。より形状の
複雑な文字であれば、類似する文字形状も多く、この問
題点はさらに深刻なものとなる。本発明は、この様な問
題に鑑みてなされたものであって、その目的とするとこ
ろは、文字形状の複雑さに対し、表示画素数が不十分な
場合であっても、認識しやすい省略型文字形状を発生さ
せる文字発生装置を提供することにある。
【0018】
【課題を解決するための手段】本発明の文字発生装置
は、文字の外形形状を直線あるいはスプライン曲線、放
物線などの曲線の組み合わせで形成したアウトラインフ
ォント文字データ、または、文字形状を形成する画素集
合によって記述された文字データと、個々の文字毎に、
文字形状の複雑さに応じて定めた補正限界サイズと、水
平方向および垂直方向の画素配列を補正する個々の文字
データ毎に一意に指定されるテンプレートと、前記文字
データをビットイメージデータに変換する文字発生手段
とを具備し、前記補正限界サイズより小さな画素配列に
より文字を形成する際に、前記文字発生手段により発生
されたビットイメージデータに対し、水平方向に同一線
上に位置する画素群を順次読みだし、前記水平方向のテ
ンプレート内のビット値の1/0に従い、画素群の配置
を変更する手段と、垂直方向に同一線上に位置する画素
群を順次読みだし、垂直方向のテンプレート内のビット
値の1/0に従い、画素群の配置を変更するする手段と
からなることを特徴とする。
【0019】
【実施例】図1は、本発明の実施に適した一例として挙
げられるワードプロセッサの概略構成図である。図1の
装置の使用者は、CRT表示装置3を見ながら、ポイン
ティングデバイス、キーボードから構成される入力装置
4を操作し、文書の入力、編集、印刷等を行なう。これ
ら入出力制御は、制御装置5によって行なわれ、プロセ
ッサ1で実行されるプログラムにより管理される。
【0020】印刷装置2及び、CRT表示装置3に出力
される画像データは、プロセッサ1により管理されるメ
モリであるイメージバッファ6に保持される。本実施例
において、印刷装置は1インチ当たり300ドットの画
素の密度を持ち、CRT表示装置3は1インチ当たり7
5画素の密度を持つものであり、使用者が、CRT表示
装置3に表示される画面を見ながら、ドキュメントの作
成、修正等を行なう場合、印刷装置において48×48
ドットを使用し印刷される文字は、これを同一サイズに
表示しようとした場合、CRT表示装置3では12×1
2ドットの大きさとなる。
【0021】イメージバッファ6に記録される画像デー
タは、ドキュメントの多くの部分を占める文字データの
他に、図形データも含まれ、これらデータの生成はプロ
セッサ1で処理され、印刷装置に出力する際の文字形状
の画素(文字のビットイメージ)は、印刷処理段階で生
成される。以下では、本発明に関連のある文字データ生
成について説明を行なう。
【0022】図4は、本発明の文字データ生成処理を説
明する流れ図である。
【0023】処理中のプログラムにおいて、文字の表
示、あるいは印刷装置2への出力のため、文字形状を表
す画素の生成要求が発生すると、文字発生手段10が呼
び出される。このとき、文字発生手段10には、画素発
生すべき文字を指定する文字指定レコードが、パラメー
タとして渡される。ここで、文字指定レコードは以下の
要素からなるデータ構造である。
【0024】 但し、”書体”は、ある文字について複数の文字デザイ
ンが行われた場合、文字形状の差を特定する上で使用さ
れる呼称である。上記データ構造では、この呼称に数値
を割り当てて使用する。また、文字修飾指定は、文字書
体によらず、対象の文字の形状を、斜体文字、白抜き文
字などの操作対象とする指定であり、書体と同様に、上
記データ構造で使用する場合の内部表現は数値化されて
いる。(他の実施例では、複数書体を使用しない場合、
あるいは文字修飾を使用しない場合等が考えられる。従
って、この文字指定レコードの内容は、実施例により任
意に変更されうるものである。) 文字指定レコードにより、文字コード、書体等が指定さ
れ、文字データ記憶領域から、文字データ14が読み込
まれる。文字記憶領域としては、ハードディスク等の補
助記憶装置あるいは、半導体ROMなどが使用される。
本実施例においては、文字データ14は、アウトライン
フォントとして記録されており、文字データ14には、
この文字の外形形状を記述した形状データ15と、補正
限界サイズを示すデータ16と、2種類のインデックス
17、18が含まれる。これらの役割については後述す
る。
【0025】文字発生手段10は、その作業領域である
メモリに文字データ14を読み込んだ後、サイズの指定
に従い、文字形状の画素を発生する処理S41に移行す
る。ところで、各文字には、その形状の複雑さに応じ
て、文字形状を省略することなく表現可能な限界画素数
があり、例えば、漢字の「青」という文字では、楷書体
の場合、縦方向に14画素使用しないと、文字形状を表
現できない。毛筆書体等の形状のより複雑な書体であれ
ば、必要な画素数はさらに増加する。各文字について、
その形状に補正を加える必要が生じる上限の画素数を、
本実施例では補正限界サイズと呼んでいる。前述したよ
うに、個々の文字データ14には、補正限界サイズを示
すデータ16が含まれる。本実施例では、楷書体の漢字
「青」の補正限界サイズを14として、漢字「青」の文
字形状を12ドット×12ドットの大きさで生成する要
求が発生した場合を図3の助けを借り説明して行く。
【0026】文字発生手段10は、楷書体の漢字「青」
の文字発生要求を受け取ると、補正限界サイズ16の値
と、文字指定レコード内の文字サイズ指定データにより
指定されたサイズを比較する。指定された文字サイズ
が、補正限界サイズ16の値より小さいため、補正限界
サイズ16の値より大きい展開領域31を、イメージメ
モリ9の上にとり、文字形状を発生する。ここでは、展
開領域31は、15ドット×15ドットの大きさであ
る。
【0027】文字形状の発生にあたり、文字発生手段1
0は、まず文字輪郭発生処理11を呼び出す。文字輪郭
発生処理11は、形状データ15に従い、文字輪郭とな
る座標を次々に計算する。この座標は、内部表現形式で
は、固定小数点として記録されており、実際の画素の格
子点とは、必ずしも一致した値をとるとは限らない。文
字輪郭を仮に、線分で接続していくと、図3(a)の折
れ線群32となる。次に、文字輪郭発生処理11は、文
字の輪郭となる点列を発生する。次に文字発生手段10
は、塗りつぶし処理12を呼び出し、この点列に囲まれ
た領域を塗りつぶす。この時、文字形状により最小線幅
の指定等があれば、文字形状補正処理13が呼び出され
る。以上の処理の結果、イメージメモリ9の上には図3
(a)に示す画素群33が形成される(S41)。
【0028】次に、文字発生手段10は、インデックス
18を取り出し、水平補正テンプレート20を読み込む
(S42)。垂直補正テンプレート19及び水平補正テ
ンプレート20は、補正限界サイズ16の値と等しいビ
ット長を持つビット値の配列である。但し、プロセッサ
1による取り扱いを容易にするため、最大64ビット長
までとし、8ビット単位で記録される。実際にテンプレ
ートとして使用されるのは、この内の上位ビットから数
えた有効ビット数である。文字「青」の場合、この有効
ビット長は15である。
【0029】また、テンプレート内のビットパターン
は、最終的に形成すべき文字サイズにより異なるため、
一つの文字につき、垂直補正テンプレート19、水平補
正テンプレート20ともに、複数個存在する。このため
インデックス17、18も、文字毎に、サイズに合わせ
それぞれ複数存在する。垂直補正テンプレート19及び
水平補正テンプレート20は、文字データ等と同様に、
補助記憶装置、半導体ROMなどに連続して記録されて
いる。そこでインデックス17、18は、テンプレート
の記録位置の順番を指定するものである。また、異なる
文字であっても、同じ補正テンプレートが再利用できる
場合が有り、補正テンプレートの総数は、文字総数から
定まる値とは一致しない。
【0030】日本語の処理システムでは、漢字の文字形
状の複雑さから、文字を表現できるのは、画素数が水
平、垂直ともに12画素程度使用できる場合が下限と言
える。そのため、一文字あたりに使用される補正テンプ
レートの個数も数個程度に限られる。例えば「青」で
は、補正限界サイズの値が15であることから、補正テ
ンプレートは12ドット用、13ドット用の2つのみで
ある。文字形状が14×14画素の場合は、15×15
画素の文字データから、単純に最下端と最右端のビット
列を取り除き形状データとする。
【0031】取り出された水平補正テンプレート20の
中のビット列は、図4ではビット値の配列Bmskに代
入される(S42)。
【0032】次に文字発生手段10は、この配列Bms
kの各ビットの0/1をチェックするためのループカウ
ンタi、と処理結果を記録するためのループカウンタj
の初期設定を行ない、イメージメモリ9上の展開領域3
1から、垂直方向の最右端の1行のビット配列を変数S
0に読み込む(S43)。さらにこの処理は、垂直方向
の次の1行のビット配列を変数S1に読み込む(S4
4)。
【0033】取り出された補正テンプレートに格納され
たビット値の配列の内、第i番目のビットと第i+1番
目のビットが比較され(S45)、この値が等しい場合
は、変数S0と変数S1の論理和が変数S0に代入され
る(S46)。一方、処理S45の比較の結果が等しく
なかった場合は、配列変数DVのj番目の要素DV
[j]に、変数S0の値が代入され、ループカウンタj
が+1される。(S47)次にビット位置のループカウ
ンタであるiが+1され(S48)、iの値が水平方向
の画素数を上回った場合は、次の処理へ進み、それ以外
であればS44以降を繰り返す。
【0034】以上の処理は要約すれば、補正テンプレー
トのビットパターンが、0/1のどちらか同一の値をと
る間、画素データの重ね合わせを行ない、ビットパター
ンが変更された位置で、画素データを処理結果として取
り出し、新たな文字形状画素とする処理である。図3
(b)の例で示せば、水平補正テンプレート20のビッ
トパターンが、ビットパターン34に示す値の時、上記
処理の結果、展開領域31上の画素群33は、領域35
の画素群36の位置に転送される。上記処理のうち、ビ
ット値の配列変数DVは、領域35の各画素を保持する
変数であり、その一つの要素であるDV[j]には、領
域35の垂直方向の1行中の画素が含まれる。
【0035】文字発生手段10は、次に配列Bmskに
垂直方向補正テンプレート19の値を読み込む(S5
0)。さらに領域35の画素データから、水平方向の最
上端のビット配列を変数S0に読み込み、ループカウン
タi,jの初期化を行なう(S51)。以降の処理は、
垂直方向に対する操作(S44〜S49)と同様であ
る。すなわち領域35から、水平方向の次の1列のビッ
ト値の配列を変数S1に取り込み(S52)、変数Bm
skに記録されたビットパターンが同じ値を連続するか
検査し(S53)、同じ値を続ける場合、変数S0に変
数S0と変数S1の論理和を代入する(S54)。変数
Bmskのビットパターンに変化がある場合は、現在の
変数S0の値を配列変数DH[j]に代入し、ループカ
ウンタjの値を+1する(S55)。これを、ループカ
ウンタiの値を更新しつつ(S56)、垂直方向の全画
素を処理するまで繰り返す(S57)。処理の結果を図
3(c)の例で示せば、垂直補正テンプレート19のビ
ットパターンが、ビットパターン37に示す値の時、配
列変数DHの各ビットが領域38に相当し、画素群39
が生成される。
【0036】文字発生手段10は、領域38をイメージ
メモリ7上に配置する。ワードプロセッサの処理プログ
ラムの内、文字発生手段10を呼び出した処理は、イメ
ージメモリ7から処理結果を取り出し、必要に応じイメ
ージバッファ6に転送し、文字の表示あるいは印刷出力
に使用する。
【0037】以上の説明においては、処理手順を説明す
るため、処理がプログラムの流れに相当する様に記述し
たが、本発明の補正手段は容易にハードウェアにより実
現される。図5は、ハードウェアによる実現する一例を
説明する図であり、ここでは簡単のため垂直方向の補正
の例を挙げ説明する。
【0038】処理系に対し、文字発生要求が生じると、
この要求文字サイズが補正限界サイズより小さい場合、
まずイメージメモリ9の上に、補正限界サイズを上回る
大きさで、文字のイメージデータが形成される。文字を
形成する画素の有無(表示・非表示)は、それぞれイメ
ージメモリ上でのビット値の1/0に相当する。この
時、メモリデバイスのビット配置により、何ビット単位
に1つのアドレスを与えるかは、ハードウェア構成から
任意である。図5の例においては、イメージメモリ9の
上で、64ビットのビット配列に対し一つのアドレスを
与える構成とした。データバス107は64ビット幅
で、論理和回路8は図中に示した構成が64回路並列接
続される。また同様にデータバス108も64ビット構
成であり、イメージメモリ7上でも64ビットからなる
ビットの配列に対し1つのアドレスを与えている。本実
施例の場合、ある文字の補正限界サイズが64を上回る
ことはなく、どのような文字も64×64画素の範囲で
は、文字形状を損なうこと無く画素発生される。図5の
構成において、イメージメモリ7、イメージメモリ9は
共に64×64ビットのビット配列であるが、前述のよ
うに64ビットを一つの単位としてアドレス割当される
ことから、64個のアドレスを与えられたワード値の単
純配列(一次元配列)とみなすことができる。
【0039】アドレスカウンタ101、102は、水平
方向の同一直線上にある一連の画素群にある単一のアド
レスを与え、次の水平方向の直線上の画素群に、次の単
一のアドレスを与える動作を行なう。このアドレスの更
新は、アドレスカウンタ101、102にそれぞれ入力
されるクロックパルスにより行なわれる。図3の例で
は、水平方向に同一直線上にある画素の内、最大でも1
5画素しか必要としないが、この場合であっても、イメ
ージメモリ7、9では同一アドレスのビット配列は64
ビットからなり、このうち15ビットが有効データであ
るとみなして処理が行なわれる。
【0040】文字発生手段10は、垂直補正テンプレー
ト19の値をシフトレジスタ103に書き込み、シフト
クロックは信号線106に入力される。シフトクロック
は1/4分周回路105により分周され、アドレスカウ
ンタ101及びシフトレジスタ103の値を更新する。
イメージメモリ9のデータバス107は、論理和回路8
へ接続され、垂直補正テンプレート19のビットパター
ンが連続である限り、ビットパターンの論理和を繰り返
す。垂直補正テンプレート19のビットパターンが変化
すると、微分回路104により書き込み信号が発生し、
下降エッジでアドレスカウンタ102が更新され、立ち
上がりエッジでイメージメモリ7へデータバス108の
内容が書き込まれる。次にクリア信号が発生し、信号線
109により、論理和回路8の全ビットをクリアする。
図5では、論理和回路8の1ビットの構成のみを図示し
たが、この回路は前述のようにデータバス107、10
8のビット幅に合わせ複数個並列に構成される。
【0041】この様な補正処理回路により、様々な画素
数に対し、文字形状の補正が行なわれることを、図6、
図7を用いて説明する。尚、ここでは補正テンプレート
64、71、73のビットパターン(0/1)の内、ビ
ット値1の部分を●で示した。印の無い位置はビット値
0の位置である。図6は漢字「鷽」に対する補正の処理
結果の一例で、文字「鷽」では形状を省略せず文字出力
を行なうためには、垂直方向では27画素必要である。
従って、文字データ14の中の、補正限界サイズ16の
値は26となり、展開領域として27×27ドットの領
域61をとり、文字形状の画素発生を行なう。アウトラ
インフォントでの文字形状はこの時、折れ線群62によ
り表される。この折れ線群62を輪郭とし画素発生を行
なえば、領域61内に●で示した画素群63が得られ
る。垂直方向補正テンプレート64を使用した場合、垂
直方向の画素数を制限し20ドットとした20×27ド
ットの領域65に、●で示した画素群66が得られる。
図6では垂直方向の補正の例のみを示したが、元となる
文字デザインの形状を良く残していることが分かる。さ
らに図7では、同じ文字「鷽」について垂直補正テンプ
レート71及び水平補正テンプレート73を使用した場
合の例を示している。ここで使用したテンプレートは1
5×15ドットの画素発生を行なうためのものである。
まず、垂直補正テンプレート71を使用し、15×27
ドットの領域72に、●で示した画素群75を生成す
る。次に水平補正テンプレート73を使用し、15×1
5ドットの領域74に●で示した画素群76を生成す
る。処理結果の文字形状は、画素数が不十分であるにも
かかわらず、判読できる水準であると言える。
【0042】以上の実施例は、補正テンプレート内で、
ビット値が連続する場合、文字形状画素のビットイメー
ジから、水平あるいは垂直方向の同一線上の画素を取り
出し、次々に論理和をとり、テンプレート内のビット値
に不連続が生じた段階で、論理和により重ね合わせ処理
を行なった画素群を新規画素データとして取り出し、画
素数の削減を行なった。しかし、画素データを論理和に
より重ね合わせる処理は、必ず実施されなくても、文字
形状の形成は可能であり、画素発生の自由度も増す。
【0043】以下、本発明の別の実施例として、2つの
性質の異なる補正テンプレートを用意し、文字形状の補
正を行なう例を挙げ、図8、図9、図11を用いて説明
する。図8は、図7と同様に文字「鷽」を27×27ド
ットの領域61に画素発生した後、補正テンプレートに
より15×15ドットの領域74での文字データに縮小
する場合を説明した図である。この実施例では図7の場
合と等しい補正テンプレート71、73の他に、新たに
補正テンプレート81、82を使用する。これら2つの
テンプレートは、論理和を演算する位置を指定するテン
プレートである。ここでも、テンプレート71、73、
81、82のビットパターンの内、ビット1の部分を●
で示した。印の無い位置はビット値0の位置である。
【0044】また、この例では文字データ14は、図1
1に示されるデータ構造となる。すなわち、前記した実
施例の文字データの構造に加え、さらに2種類のインデ
ックス505、506が追加される。ここで、インデッ
クス505は、垂直ドット位置補正テンプレート503
の記憶領域上での順番を保持し、インデックス506は
水平ドット位置補正テンプレート504の記憶領域上で
の順番を保持する。簡単のため、図11にはそれぞれ1
つずつインデックスを記載したが、実際の文字データで
は、画素発生する際の文字サイズに合わせ複数のドット
位置補正テンプレートを使用するため、インデックス5
05、506も、複数記録されている。垂直方向の補正
では、まず領域61に●63で示される画素群を発生す
る。次に、垂直補正テンプレート71のビットパターン
に従い、垂直方向の画素数削減を行なう。この時、図7
の例と異なる所は、ビット値のパターンが連続であり、
しかもテンプレート81のビット値が1である場合だ
け、水平方向に同一行中にある画素が取り出され、前回
の値を論理和される点である。
【0045】図9は、該補正処理をハードウエアで実現
する場合の図である。補正処理が開始されるのに先立
ち、システム内の文字発生要求に従い、補正限界サイズ
を上回るサイズでの文字形状の発生が行なわれ、その処
理結果の画素が、イメージメモリ9に記録される。図8
の例で言えば、イメージメモリ9の上に領域61が作ら
れ、画素群63が生成される。
【0046】一方、中間処理結果は、垂直方向の画素数
が削減された文字形状であり、これは図8の例で、15
×27ドットの領域72に形成される文字形状である。
図9の構成では、この中間処理結果を記録する領域72
は、イメージメモリ7の上に配置される。
【0047】画素群63が、イメージメモリ9の上に形
成されると、シフトレジスタ103に垂直補正テンプレ
ート19のビットパターンが転送される。このビットパ
ターンは、図8の例では、補正テンプレート71のビッ
トパターンである。シフトレジスタ503には、垂直ド
ット位置補正テンプレート503のビットパターンが転
送される。これは図8の例では、補正テンプレート81
のビットパターンである。次に、シフトクロックが信号
線106に入力され、1/4分周回路105により分周
され、アドレスカウンタ101及びシフトレジスタ10
3、シフトレジスタ502の値を更新する。シフトレジ
スタ502の出力は、積和演算回路501に入力され、
ビットパターンの値が1のときのみ、前回の値に論理和
される。この積和演算は、シフトレジスタ103から取
り出されるビット値が前回値と同じである限り繰り返さ
れる。しかし、シフトレジスタ103のビットパターン
が前回値から変化すると、微分回路104の働きによ
り、アドレスカウンタ102の更新と、イメージメモリ
7への書き込みが行なわれ、続いてクリア信号が発生
し、積和演算回路501の保持していた値がクリアされ
る。この様な回路により図8に示す画素群83が生成で
きる。
【0048】次に、水平方向の画素数の削減処理が行な
われる。この段階で、中間処理結果の画素群が、イメー
ジメモリ7に存在する。処理系は、この画素群から垂直
方向に同一直線上に位置する画素群(実際はビット値の
配列)を取り出し、イメージメモリ9の水平方向の同一
線上の画素として再配置する。これはすなわち、画素群
を90°回転してイメージメモリ9に転送したのに等し
い。次に、シフトレジスタ103、502にそれぞれ補
正テンプレートのビット値を転送し、上記と同様に処理
を繰り返す。図8の例では、シフトレジスタ103に、
補正テンプレート73の値を、シフトレジスタ502
に、補正テンプレート82の値を転送し処理すれば、イ
メージメモリ7には90°回転された状態で、画素群7
4が生成される。これを、15×15ドットの領域84
に転送し、処理結果としての15×15ドットの文字形
状を得ることができる。
【0049】上記の補正テンプレートを用いた2つの実
施例から明らかなように、アウトラインフォントで文字
形状を発生するのに際し、文字サイズと出力デバイスの
解像度の関係から画素数が不充分となる場合は、充分な
画素数の領域に一度画素発生を行ない、何らかのテンプ
レートを使用し、画素数を削減する方法が有効である。
この方法は、文字形状の複雑さに比較し、使用する画素
数が少ない領域に直接文字形状を発生する従来方法に比
較し、デザイン上不都合な画素と好都合な画素を取捨選
択し、形状補正を行なう点で優れている。言い換えれ
ば、補正時のデザイン上の意図がビットパターンとして
記録されたテンプレートを用意し、文字形状を補正する
処理を可能にした点で優れている。
【0050】特に、第2の実施例で明らかな様に、補正
位置に関するテンプレートを複数用意することで、より
詳細にデザイン上の要求を反映させることができる。そ
の場合であっても、文字データのデータサイズは、ドッ
トフォントを併用する場合に比較し、遥に小さなものと
なり、要求記憶スペース圧縮の点でも優れている。
【0051】以上の実施例は、補正限界サイズ以上での
文字形状発生をアウトラインフォントにより行なった。
しかし、実施例から明らかなように、補正処理は生成さ
れた画素データに対し行なわれる。従って、元となるデ
ータがドットフォントであっても、補正処理の手順とそ
の処理結果は変わるところが無いわけで、ドットフォン
トと本発明の補正手段を併せて用いる装置構成も可能で
ある。以下にその実施例を挙げこれを説明する。
【0052】図10は、ドットフォントと本発明の補正
手段を併せて用いる装置構成の実施例として好適なイン
パクトドット方式印刷装置の構成図である。
【0053】マイクロプロセッサユニット(以下MPU
と記す)304により制御されるバス303には、2つ
の入出力IC302、310が接続されている。入出力
IC302にはインターフェース301が接続され、外
部のホスト装置(例えばパーソナルコンピュータ)から
の印刷制御信号を入力する。入出力IC310には、キ
ャリッジ制御モータ311、紙送りモータ312及び4
8ドット印字ヘッド313が接続されている。MPU3
04で実行される制御プログラムは、インターフェース
301より入力される印刷制御コードの指示に従い、印
刷に必要な文字形状の画素発生を行ない、RAM305
内のイメージメモリ領域に配置する。制御プログラム
は、入力された印刷制御コードから改行コードを検出す
ると、キャリッジ制御モータ311を駆動し、印字ヘッ
ドを水平移動し、1行分のビットイメージデータを印刷
する。次に、紙送りモータ312を駆動し、1行分の幅
だけ垂直方向に印刷用紙を搬送し、次の行の印刷に備え
る。処理プログラムの動作はこの繰り返しを行なうもの
である。印字動作は、48ドット印字ヘッドに、各ドッ
ト毎の1/0データを入力し、データのビット値が1の
時、ワイアがインクリボンを叩き印刷用紙に画素が転写
されることで行なわれる。
【0054】この様な安価な印刷装置では、使用できる
MPU304の処理能力が低いことから、アウトライン
フォントを使用することは、処理速度上困難であり、多
くの場合、ドットフォントが使用されている。また複数
の文字データを持つ場合、記憶装置のコスト上昇につな
がるので、文字データは1種類の場合が多く、従来は印
刷可能な文字サイズも限られていた。図10の構成で
は、ROM306に印刷処理のプログラムコードの他、
48ドットの文字データ307が格納されている。文字
データ307は、さらに文字形状データ308と、補正
テンプレート309から構成される。ここで文字形状デ
ータ308は、文字形状のビットイメージの集合部分
と、48ドット以下の文字サイズに縮小するための補正
テンプレートへのインデックスから構成されている。一
方、補正テンプレート309の内容は、既に上記の実施
例に説明したものと同様であり、縮小したい文字サイズ
対しそれぞれ用意された、文字サイズから決まる画素数
と等しい個数の連続・不連続を有するビット値の配列で
ある。このテンプレートは各文字の各サイズ毎に水平方
向、垂直方向それぞれ必要である。309はこれらデー
タが連続して配置された領域であり、補正テンプレート
へのインデックスは、この領域309内での格納場所に
対する位置の指定と等価である。
【0055】MPU304で実行される印刷制御プログ
ラムは、インターフェース301を介してホスト装置か
ら入力された制御コードの中に、48ドット以下での文
字形状発生の指定が有った場合、まず48ドットでの文
字形状のビットイメージを文字形状データ308により
形成する。次に、指定された文字の、指定されたサイズ
に対しての補正テンプレートのインデックスから、その
テンプレートの内容(ビット値の配列)を取り出し、上
述した実施例と同様の手順で画素を再配置し、要求サイ
ズまで縮小した文字のビットイメージを生成する。処理
結果はRAM305内部のイメージバッファ領域に一度
格納され、印字に使用される。
【0056】形状の複雑な文字を画素数の少ない領域に
展開する場合、従来方法の不利は否めない。従来方法の
内、アウトラインフォントから、線幅補正などの処理に
より文字形状を生成する場合は、処理が数理的に単純に
行なわれることで、判読しにくい形状と成ることが多
い。一方、ドットフォントを画素数に合わせ個々に用意
する方法は、文字データが膨大になり、記憶領域を多く
必要とする欠点を持つ。これに対し本発明は、文字の形
状をバランス良く発生し、かつ消費する記憶領域の点で
も、ドットフォントを画素数に応じて用意する場合に比
較し、遥に少なく抑えることを実現した。
【0057】
【発明の効果】上記の実施例の示すように、漢字などの
形状の複雑な文字では、ある画素数以下で文字形状を発
生する場合、文字形状を省略せざるを得ない。この時、
単純に論理的な補正手段を用いたのでは、文字形状のバ
ランスが崩れ、認識性に乏しく判読しにくい文字形状と
なるが、本発明の手段は、補正のためのテンプレートを
用いたことで、この点を著しく改善するものであり、ド
ットフォント(ビットマップフォント)とアウトライン
フォントを併用する方法に比較し、文字データの記録に
使用する領域が抑えられる点でも大きな効果がある。
【0058】また実施例からも明らかなように、本発明
の手段の実現は、ソフトウェアでもハードウェアでも極
めて容易であり、画像の補正段階での演算が主としてパ
ターンの論理積和により行なわれることから、実行速度
の点でも優れている。さらに、本発明の補正手段が画素
生成後に適用されるため、アウトラインフォントに対し
てもドットフォントに対しても同様に使用できる。この
ため補正手段をハードウェアにより実現し専用IC化し
た場合であっても、応用分野は広く、ドットフォントを
使用した低価格なシリアルプリンタから、アウトライン
フォントを使用した高機能なワードプロセッサまで、そ
の範疇に含まれる。
【0059】さらに、文字形状をバランス良く保つた
め、文字形状の母字をデザインする際の、自由度を高
め、各種書体の開発を容易にする効果を持つ。
【図面の簡単な説明】
【図1】本発明の一実施例であるワードプロセッサの構
成図。
【図2】従来方法による文字処理の説明図。
【図3】文字形状補正の処理手順の説明図。
【図4】文字形状補正の処理の流れ図。
【図5】図4の処理をハードウエアで実現する場合の回
路図。
【図6】文字形状補正処理の説明図。
【図7】文字形状補正処理の説明図。
【図8】文字形状補正処理の説明図。
【図9】図8で示す補正処理をハードウエアで実現する
場合の回路図。
【図10】本発明を利用したインパクトドット方式印刷
装置の概略構成図。
【図11】第2実施例の文字データ構造の説明図。
【符号の説明】
1… プロセッサ 2… 印刷装置 3… CRT表示装置 4… 入力装置 5… 制御装置 6… イメージバッファ 7… イメージメモリ 8… 論理和回路 10… 文字発生手段 14… 文字データ 15… 形状データ 19… 垂直補正テンプレート 20… 水平補正テンプレート 301… パラレルインターフェース 303… バス 307… 48ドット文字データ 308… 文字形状データ 309… 補正テンプレート 313… 48ドット印字ヘッド

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 文字の外形形状を直線あるいはスプライ
    ン曲線、放物線などの曲線の組み合わせで形成したアウ
    トラインフォント文字データ、または、文字形状を形成
    する画素集合によって記述された文字データと、 個々の文字毎に、文字形状の複雑さに応じて定めた補正
    限界サイズと、 水平方向および垂直方向の画素配列を補正する個々の文
    字データ毎に一意に指定されるビット値の配列(以下こ
    れをテンプレート)と、 前記文字データをビットイメージデータに変換する文字
    発生手段と、を具備し、 前記補正限界サイズより小さな画素配列により文字を形
    成する際に、前記文字発生手段により発生されたビット
    イメージデータに対し、水平方向に同一線上に位置する
    画素群を順次読みだし、前記水平方向のテンプレート内
    のビット値の1/0に従い、画素群の配置を変更する手
    段と、 垂直方向に同一線上に位置する画素群を順次読みだし、
    垂直方向のテンプレート内のビット値の1/0に従い、
    画素群の配置を変更するする手段と、からなことを特徴
    とする文字発生装置。
JP4145766A 1992-06-05 1992-06-05 文字発生装置 Pending JPH05341761A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4145766A JPH05341761A (ja) 1992-06-05 1992-06-05 文字発生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4145766A JPH05341761A (ja) 1992-06-05 1992-06-05 文字発生装置

Publications (1)

Publication Number Publication Date
JPH05341761A true JPH05341761A (ja) 1993-12-24

Family

ID=15392671

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4145766A Pending JPH05341761A (ja) 1992-06-05 1992-06-05 文字発生装置

Country Status (1)

Country Link
JP (1) JPH05341761A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272335A (ja) * 2006-03-30 2007-10-18 Toshiba Corp 描画装置、形状データ生成装置、方法およびプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272335A (ja) * 2006-03-30 2007-10-18 Toshiba Corp 描画装置、形状データ生成装置、方法およびプログラム
JP4643485B2 (ja) * 2006-03-30 2011-03-02 株式会社東芝 描画装置、方法およびプログラム

Similar Documents

Publication Publication Date Title
US5404436A (en) Computer method and apparatus for converting compressed characters for display in full size
JP3014247B2 (ja) 文字生成方法及びその装置
JP3037854B2 (ja) 文字生成方法及びその装置
JPH05341761A (ja) 文字発生装置
JPH02270019A (ja) 高品質文字パターン発生方式
JPH03213367A (ja) 印刷装置及びその制御方法
JP2562458B2 (ja) コンピュータシステム用文字発生方法
JPH03156668A (ja) 文書作成装置
JP2637921B2 (ja) 文字記号発生装置
JP2856235B2 (ja) 文字処理装置および文字出力方法
JPH049152B2 (ja)
JP2771629B2 (ja) 文字処理装置
JPH1031471A (ja) 英語筆記体及びアラビア語を含む他言語のコンピューターを利用した印字及び表示方法と装置
JP2835056B2 (ja) 高品質文字パターン発生方式
JPH0216068A (ja) 像形成装置
JP3084817B2 (ja) 文字出力装置
JP3055306B2 (ja) データ出力装置
JP3040624B2 (ja) パターン発生装置
JPS62219180A (ja) パタ−ン発生装置
JPH02288985A (ja) データ縮小・拡大機能と展開機能とを備えた情報処理装置
JPH06337859A (ja) 文書作成装置
JPH0481894A (ja) アウトラインデータ処理装置
JPH02216593A (ja) 図形発生機能を備えた情報処理装置
JPH0531958A (ja) 画像形成装置
JP2001216291A (ja) 文字配置修正装置及び方法並びにこれに利用される記憶媒体