JPH06149209A - キャラクタ作成/出力方法および装置 - Google Patents

キャラクタ作成/出力方法および装置

Info

Publication number
JPH06149209A
JPH06149209A JP4286105A JP28610592A JPH06149209A JP H06149209 A JPH06149209 A JP H06149209A JP 4286105 A JP4286105 A JP 4286105A JP 28610592 A JP28610592 A JP 28610592A JP H06149209 A JPH06149209 A JP H06149209A
Authority
JP
Japan
Prior art keywords
character
elements
thickness
code
line
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP4286105A
Other languages
English (en)
Other versions
JP2598858B2 (ja
Inventor
Shuji Fukuzumi
修治 福住
Shiro Kawada
嗣郎 川田
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP4286105A priority Critical patent/JP2598858B2/ja
Publication of JPH06149209A publication Critical patent/JPH06149209A/ja
Application granted granted Critical
Publication of JP2598858B2 publication Critical patent/JP2598858B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Controls And Circuits For Display Device (AREA)
  • Digital Computer Display Output (AREA)
  • Document Processing Apparatus (AREA)

Abstract

(57)【要約】 【目的】 キャラクタを構成する要素相互のバランス、
およびキャラクタの形が崩れることを防ぎつつ、キャラ
クタの線幅を変更する。 【構成】 形態の異なる複数のキャラクタ要素をキャラ
クタ要素の種類ごとに記憶し、種類を特定する要素コー
ドを入力し、1つまたは複数のキャラクタ要素に基づい
てキャラクタを合成するときのキャラクタ要素のライン
の太さを示す情報を入力し、要素コードおよびラインの
太さを示す情報を用いてキャラクタ要素を記憶手段から
選択することにより、キャラクタのラインの太さに適応
した最適な要素を選択する。またこれにより、キャラク
タのラインの太さを変更する際に字形が崩れることおよ
び要素間のバランスが崩れることを防止する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、プリンタおよびディス
プレイ等の出力手段に用いるキャラクタを作成し、およ
び/または出力する方法および装置に関する。
【0002】
【従来の技術】従来キャラクタを印刷するプリンタ、キ
ャラクタを表示するディスプレイ等の出力手段(装置)
に多く用いられているキャラクタとしては、図12
(a)ないし(c)に示すような、(a)ビット・マッ
プ・キャラクタ,(b)ランレングス・キャラクタ,
(c)アウトライン・キャラクタ等がある。
【0003】しかしこれらのキャラクタはいずれも、太
さ(線幅)の変更が困難である。
【0004】線幅を変える方法としては、従来、図13
(a)ないし(d)に示すような、(a)(円)内挿
法,(b)輪郭増減法,(c)インターポレーション
法,(d)骨格点線幅法(アウトラインスケルトン法)
等がある。
【0005】例えば(d)の骨格点線幅法において文字
を拡大・縮小するときは、キャラクタの骨格の座標を示
すスケルトンに、ある一定の変数(文字枠制御情報とい
う)を乗じる。また線幅の変更は、線幅ベクトルに対し
て、ある一定の変数(線幅制御情報という)を乗じる。
【0006】
【発明が解決しようとする課題】しかしながら、図13
(a)〜(d)に示したいずれかの方式を用いて線幅変
更を施してみると、字形が崩れたり、書体の文字要素間
のバランスが崩れたりする等、種々の問題が存在するこ
とがキャラクタ開発の過程で明らかとなってきた。
【0007】図14を用いてこれらの問題点を例示す
る。
【0008】図14の左側の太字の線幅を細くして、中
央の中字を経て右側の細字に変更する場合、太字は専門
の文字デザイナーにとって正常な字形と見られるが、細
字は、口(クチ)の右下の空間が広くなりすぎ正常な字
形と見られない。これを解決するために、口の左下部分
に伸びている縦線(ゲタと呼ばれる)G1と同様のもの
を、線幅を細くするに従って口の右下にも徐々に伸ばす
方法が考えられる。
【0009】図15は、線幅を少し細くした例(中字)
であるが、この場合口の右下にも少しゲタG2が出てい
る。しかしこの例では、右下のゲタG2が小であるの
で、ゴミまたは印刷のよごれなどが付着しているように
見えてしまうことがある。
【0010】従ってこのような場合のゲタは、少しずつ
出すのではなく、段階的に、急に出さなければならな
い。
【0011】また、字形の線幅を最太字(オリジナル字
形という)から、徐々に細くする場合、字素相互のバラ
ンスが崩れるという欠点があった。
【0012】そこで、本発明の目的は、字形および文字
要素間のバランスの崩れを防止しつつ線幅に応じた最適
なキャラクタを作成する方法および装置を提供すること
にある。
【0013】本発明の他の目的は、前記キャラクタ作成
方法により作成されたキャラクタのデータベースを用い
て、キャラクタを出力する方法および装置を提供するこ
とにある。
【0014】
【課題を解決するための手段】このような目的を達成す
るために請求項1に記載のキャラクタ作成方法は、形態
の異なる複数のキャラクタ要素をキャラクタ要素の種類
ごとに記憶手段に記憶させておき、該記憶手段の前記種
類を特定する要素コードを入力するステップと、前記1
つまたは複数のキャラクタ要素に基づいて前記キャラク
タを合成するときの前記1つまたは複数のキャラクタ要
素のラインの太さを示す情報を入力するステップと、前
記要素コードおよび前記ラインの太さを示す情報を用い
て前記1つまたは複数のキャラクタ要素を前記記憶手段
から選択するステップと、その選択された1つまたは複
数のキャラクタ要素に基づいて前記キャラクタを合成す
る際に、当該選択された1つまたは複数のキャラクタ要
素に対応するラインの太さを示す情報に基づいて当該1
つまたは複数のキャラクタ要素のラインの太さを指定す
るステップとを具えたことを特徴とする。
【0015】請求項2に記載のキャラクタ出力方法は、
請求項1に記載のキャラクタ作成方法を用いて作成し
た、各キャラクタに対応付けた前記要素コードおよび前
記太さを示す情報を格納する、キャラクタデータベース
と、形態の異なる複数のキャラクタ要素をキャラクタの
種類ごとに格納する要素データベースとを記憶してお
き、前記キャラクタデータベースの1つのキャラクタを
特定するキャラクタコードを入力するステップと、前記
キャラクタコードを用いて前記キャラクタデータベース
から前記1つまたは複数のキャラクタ要素の種類を特定
する要素コードおよび前記1つまたは複数のキャラクタ
要素のラインの太さを示す情報を検索するステップと、
前記要素コードおよび前記ラインの太さを示す情報に基
づいて前記1つまたは複数のキャラクタ要素を選択する
ステップと、前記選択された1つまたは複数のキャラク
タ要素に基づいて前記キャラクタを合成する際に当該選
択された1つまたは複数のキャラクタ要素に対応するラ
インの太さを示す情報に基づいて当該1つまたは複数の
キャラクタ要素のラインの太さを指定するステップと、
合成されたキャラクタを出力するステップとを具えたこ
とを特徴とする。
【0016】請求項3に記載のキャラクタ作成装置は、
形態の異なる複数のキャラクタ要素をキャラクタ要素の
種類ごとに記憶させた記憶手段と、前記種類を特定する
要素コードを入力する手段と、前記1つまたは複数のキ
ャラクタ要素に基づいて前記キャラクタを合成するとき
の前記1つまたは複数のキャラクタ要素のラインの太さ
を示す情報を入力する手段と、前記要素コードおよび前
記ラインの太さを示す情報を用いて前記1つまたは複数
のキャラクタ要素を前記記憶手段から選択する手段と、
その選択した1つまたは複数のキャラクタ要素に基づい
て前記キャラクタを合成する際に、当該選択された1つ
または複数のキャラクタ要素に対応するラインの太さを
示す情報に基づいて当該1つまたは複数のキャラクタ要
素のラインの太さを指定する手段とを具えたことを特徴
とする。
【0017】請求項4に記載のキャラクタ出力装置は、
請求項3に記載のキャラクタ作成装置を用いて作成し
た、各キャラクタに対応付けた前記要素コードおよび前
記太さを示す情報を格納する、キャラクタデータベース
と、形態の異なる複数のキャラクタ要素をキャラクタの
種類ごとに格納する要素データベースと、前記キャラク
タデータベースの1つのキャラクタを特定するキャラク
タコードを入力する手段と、前記キャラクタコードを用
いて前記キャラクタデータベースから前記1つまたは複
数のキャラクタ要素の種類を特定する要素コードおよび
前記1つまたは複数のキャラクタ要素のラインの太さを
示す情報を検索する手段と、前記要素コードおよび前記
ラインの太さを示す情報に基づいて前記1つまたは複数
のキャラクタ要素を選択する手段と、前記選択された1
つまたは複数のキャラクタ要素に基づいて前記キャラク
タを合成する際に当該選択された1つまたは複数のキャ
ラクタ要素に対応するラインの太さを示す情報に基づい
て当該1つまたは複数のキャラクタ要素のラインの太さ
を指定する手段と、合成されたキャラクタを出力する手
段とを具えたことを特徴とする。
【0018】
【作用】本発明によれば形態の異なる複数のキャラクタ
要素をキャラクタ要素の種類ごとに記憶し、前記種類を
特定する要素コードを入力し、前記1つまたは複数のキ
ャラクタ要素に基づいて前記キャラクタを合成するとき
の前記1つまたは複数のキャラクタ要素のラインの太さ
を示す情報を入力し、前記要素コードおよび前記ライン
の太さを示す情報を用いて前記1つまたは複数のキャラ
クタ要素を前記記憶手段から選択し、その選択した1つ
または複数のキャラクタ要素に基づいて前記キャラクタ
を合成する際に、当該選択された1つまたは複数のキャ
ラクタ要素に対応するラインの太さを示す情報に基づい
て当該1つまたは複数のキャラクタ要素のラインの太さ
を指定することにより、キャラクタのラインの太さに適
応した最適な要素を選択することができる。またこれに
より、キャラクタのラインの太さを変更する際に字形が
崩れることおよび要素間のバランスが崩れることを防止
することができる。
【0019】さらに、本発明によれば各キャラクタに対
応付けた前記要素コードおよび前記太さを示す情報を格
納する、キャラクタデータベースと、形態の異なる複数
のキャラクタ要素をキャラクタの種類ごとに格納する要
素データベースとを記憶しておき、前記キャラクタデー
タベースの1つのキャラクタを特定するキャラクタコー
ドを入力し、前記キャラクタコードを用いて前記キャラ
クタデータベースから前記1つまたは複数のキャラクタ
要素の種類を特定する要素コードおよび前記1つまたは
複数のキャラクタ要素のラインの太さを示す情報を検索
し、前記要素コードおよび前記ラインの太さを示す情報
に基づいて前記1つまたは複数のキャラクタ要素を選択
することによりキャラクタのラインの太さに適応した最
適なフォントを出力することができる。
【0020】
【実施例】以下、図面を参照して、本発明の実施例を詳
細に説明する。
【0021】実施例1 図1および図2は、それぞれ、本発明キャラクタ作成装
置の外観図およびハードウエアブロック図の一実施例を
示すブロック図である。
【0022】図1および図2において、1はキャラクタ
作成者からの入力を行うキーボードである。
【0023】2は作成中のキャラクタ等をキャラクタ作
成者に対して出力するディスプレイであり、たとえば回
動可能に保持され、非使用時はキーボード1に重なるよ
うに折りたたんで収納されるようにすることができる。
【0024】3はフロッピーディスク駆動装置であり、
フロッピーディスクの読み取り、書き込み等に用いられ
る。
【0025】4はハードディスクであり、本発明キャラ
クタ発生方法を実行させるプログラム等のファイルが記
録されている。
【0026】このファイルは、フロッピーディスクに記
録されたファイルをフロッピーディスク駆動装置3で読
み取り、ハードディスク4に転送して記録したものでも
よい。
【0027】ハードディスク4にはキャラクタ作成者に
より作られたキャラクタデータベース8およびキャラク
タを構成する要素の要素データベース9等も記憶され
る。
【0028】5はキャラクタ作成に必要な処理を行うC
PUであり、本装置の内部に格納されている。
【0029】6はROMであり、キャラクタ発生装置の
起動に必要なイニシャルプログラム等が記録されてい
る。
【0030】なお、前記キャラクタデータベース8,要
素データベース9,キャラクタ発生方法を実行させるプ
ログラム等のファイルの一部または全部は、ハードディ
スクに代えてROM6に記録しておいても良い。
【0031】7はRAMであり、プログラムの動作に必
要なスタックデータの他、ディスプレイ2に表示する画
像データが記録される。
【0032】なお、画像データを記録する画像メモリ
は、物理的にはスタックデータ等を記録するRAM7と
分離していても良い。さらに前記画像メモリは、ディス
プレイ2に直結する構成で配置されていても良い。
【0033】図3は、キャラクタデータベース8に記憶
されている要素を取り出し、これを変更して出力文字ボ
ックス内に位置決めするプロセスを示す。
【0034】図3において、81はキャラクタを特定す
るキャラクタコードである。キャラクタの呼び出しはキ
ャラクタコードの指定により行う。82は出力文字ボッ
クスの外形のx,y方向のドット数を示すアウトプット
ボックスサイズ(OBS)である。OBS82は、通常
各キャラクタに共通であるが、いわゆる半角文字等の場
合はOBSの横幅、すなわちx成分の値(OBSx)を
1/2にしても良い。
【0035】83はキャラクタを構成する1つの要素の
番号を示す要素コード、84はその要素をキャラクタに
合成する位置をキャラクタの左下を基準とするx,y座
標で示すコオーディネイトポイント(CP)、85は文
字ボックス内の要素の大きさをx,y座標で示すインプ
ットボックスサイズ(IBS)、86は要素をインプッ
トボックスサイズに合成する際の要素のライン幅をx,
y方向についてそれぞれ百分率(%)により指定するラ
インサイズ(LS)であり、絶対線幅と称呼する。要素
のx,y方向の原線幅をそれぞれ0x,0y、合成した
要素のx,y方向の線幅をそれぞれSx,Syとする
と、LSは、
【0036】
【数1】
【0037】と定義される。
【0038】図3ではキャラクタコードM000123
で特定されるキャラクタの複数の要素のうち、1つの要
素M050001のみを呼び出すプロセスを示す。1つ
のキャラクタが複数の要素を呼び出す場合には、複数の
要素コード83、ならびにそれぞれの要素コードに対応
するCP84,IBS85およびLS86をキャラクタ
データベース8に格納する。
【0039】図3に示される処理を行うためのマイクロ
コードは次の通りである。
【0040】 (キャラクタコート゛)(要素コート゛) (x),(y) (x),(y) (x),(y) M000123 OBS:110,76 CALL , M050001 , IBS: 34,20 , LS : 50%,50% , CP : 12,35 なお、これらのキャラクタ合成機能を、プリンタまたは
DTP(ディスクトップパブリッシング)システムに組
み込み、ユーザの入力した線幅制御情報に基づいてプリ
ンタの電源投入時にフォントを作成することもできる。
【0041】図3において、91は要素の外形のx,y
方向のドット数を示すデザインボックスサイズ(DB
S;DBSxとDBSy)であり、要素データベース9
に格納されている。なお、図4においては要素は1つの
ストロークであったが、例えばキャラクタ「問」の
「口」のように複数のストロークからなる部首をこの要
素としてもよい。
【0042】図4は、出力キャラクタ「問」を発生する
ために、要素データベース9に記憶されている5つの要
素を示す。
【0043】図4においては、DBSx=DBSy=1
60,OBSx=OBSy=160,IBSx=IBS
y=80である。この出力キャラクタを発生するための
マイクロコードは次の通りである。
【0044】 (キャラクタコート゛)(要素コート゛) (x),(y) (x),(y) (x),(y) M000456 OBS:160,160 CALL , M000001 , IBS: 80, 80 , LS : 50%, 50% , CP : 40, 8 CALL , M000002 , IBS:160,160 , LS :100%,100% , CP : X2, Y2 CALL , M000003 , IBS:160,160 , LS :100%,100% , CP : X3, Y3 1つの要素コードは1種類(1クラス)のキャラクタ要
素を表わし、図4に示す例では、キャラクタ要素「口」
の種類の要素の数は3であり、そして1つの種類(クラ
ス)の要素コードM000001に対して3つの互いに
異なるパターン(M000001.A:M00000
1.BおよびM000001.C)が要素データベース
9に記憶されており、要素コードM000002に対し
ては1つのパターンが記憶されており、そして要素コー
ドM000003に対して1つのパターンが記憶されて
いる。上記A,BおよびCをサブコードと呼ぶ。
【0045】かかる部首または要素の作成方法および部
首または要素からキャラクタを合成する方法については
公知の文献(特開昭63−224965号)に記されて
いるので、ここでは詳細な説明は省略する。
【0046】ここで、ある文字幅のキャラクタを最適に
作成した場合でも、同一の要素を用いてLS86等を変
化すると、キャラクタ「問」の例に見られるように、字
形または要素間のバランスが崩れる場合がある。
【0047】そこでキャラクタの要素、例えば前記
「問」の「口」の部分を、キャラクタのライン幅に応じ
て複数作成しそれぞれにサブコードを割り当てるととも
に、前記LS86等のパラメータに応じて1つの最適な
サブコードを選択する。
【0048】要素の切替は、概念的には、線幅の、ボッ
クスサイズに対する比率が、前記合成に際して減少する
割合を示す相対線幅γに基づいて行う。
【0049】ここに要素のデザインボックス(DBS9
1)のx,y方向の長さを、それぞれDBSx,DBS
y、要素を合成するインプットボックスサイズ(IBS
85)のx,y方向の長さを、それぞれIBSx,IB
Syとすると、相対線幅γは次のように計算できる。
【0050】
【数2】
【0051】例えば、キャラクタ「問」の「口」のデザ
インボックスサイズを図4の例のように160×160
ドットとし、 IBSx=IBSy=80, LSx=LSy=50% とした場合は、
【0052】
【数3】
【0053】となる。
【0054】なお、要素のデザインボックスサイズ(D
BS91)の値は、キャラクタデザイナが字素、部首等
をデザインする際に自由に定めることができる。通常
は、DBS91の値は、キャラクタで用いられる大きさ
と概ね同一にする。なお、相対線幅は通常0%〜100
%の間にある。その理由は、要素は通常、DBS91に
おける最太線幅(すなわちLSx =LSy =100%)
でデザインするからである。
【0055】前記計算によって求めた相対線幅γを、キ
ャラクタデザイナが予め定めた切替ポイントと比較して
最適な要素への切替を行う。切替を行う際のCPU5の
動作を図5を用いて説明する。
【0056】図5において、ステップS1ではキャラク
タデザイナもしくはオペレータによって要素コードが順
番に入力される。
【0057】前記入力された要素コードを、要素コード
データベースから検索し(ステップS2)、1つの要素
コードに対して複数個の要素パターンがあるか否かを調
べる(ステップS3)。
【0058】ステップS3で、複数の要素がないすなわ
ち1つしか要素パターンがないと判断した場合は、この
要素パターンを選択する(ステップS11)。
【0059】要素コードM000002もしくはM00
0003が入力された時は、図4に示されるようにこれ
ら要素コードに対して1つのパターンしか存在しないの
で、この1つのパターンが選択される(ステップS1
1)。
【0060】要素コードM000001が入力された時
には、図4に示されるように、この要素コードに対して
は3つのパターンM000001.A,M00000
1.BおよびM000001.Cが存在するのでステッ
プS3の答はYESであり、動作はステップS4に進
む。ステップS4ではDBS91の値(図4の例ではD
BSx=DBSy=160)、次に、ステップS5にお
いてIBSの値すなわちIBSx=IBSy=80およ
びLSx=LSy=50%が入力される。
【0061】DBS91,IBS85およびLS86か
ら、前記計算式に従ってαおよびβを計算する(ステッ
プS6)。
【0062】前記αおよびβからγを計算する(ステッ
プS7)。この場合はγ=100%である。
【0063】前記γを予めオペレータから入力した切替
ポイント、または、予めROM6あるいはハードディス
ク4に記憶した切替ポイントと比較する(ステップS
8)。この場合、切替ポイントすなわち閾値が70%で
あると仮定する。
【0064】ステップS8でγが切替ポイントより小さ
ければ、サブコードCの要素を選択する(ステップS
9)。ステップS8でγが切替ポイントと等しいか、切
替ポイントより大きければ、サブコードAの要素を選択
する(ステップS10)。
【0065】このようにして1つの要素コードに対して
予め用意されている3つの要素パターン(図4のM00
0001.A,M000001.BおよびM00000
1.C)のうち1つを、相対線幅と切替ポイントとの比
較の結果に基づいて選択する。説明中の例では相対線幅
の値100%≧70%なので図4に示すようにサブコー
ドAのパターンが選択される。
【0066】ここで切替ポイントは各キャラクタの各要
素に応じて異なっていてもよい。また、1つのキャラク
タコードに対応する要素を3つ以上設け、複数の切替ポ
イントを用いてこれらの要素の1つを選択してもよい。
【0067】図6に、6種類の切替ポイントを用いて切
替を行う場合の一例を示す。
【0068】図6の例においては、キャラクタデザイナ
が入力する切替係数(K)111が1から3の場合は切
替ポイントは1つであり、2つの要素のいずれかを選択
する。切替係数Kが4から6の場合は切替ポイントが2
つあり、3つの要素のいずれかを選択する。
【0069】より具体的には、図6において切替係数K
=1の場合は、切替ポイントは70%なので、前記相対
線幅γが γ≧0.7 であればサブコードAの要素を選択し、 γ<0.7 であれば要素Cを選択する。
【0070】同様に例えば切替係数K=4の場合は切替
ポイントは75%および50%なので、 γ≧0.75 であればサブコードAの要素を選択し、 0.75>γ≧0.5 であればサブコードBの要素を選択し、 0.5>γ であればサブコードCの要素を選択する。選択した要素
を、CP84、LS86、およびIBS85に基づいて
キャラクタを合成する。
【0071】なお、切替係数と切替ポイントとの関係を
記録する切替テーブルは、ROM6またはハードディス
ク4に予め記憶しておくものとする。
【0072】複数の切替ポイントを用いてキャラクタデ
ザイナが要素およびキャラクタを作成する場合のデータ
フローを図7に示す。図7において、フェーズ1では要
素を作成して要素データベース9に格納する。フェーズ
2ではフェーズ1で作成した要素データベース9を用い
てキャラクタ118を作成する。
【0073】フェーズ1の要素作成は、次の手順で行
う。まず要素コード83およびサブコード(A,Bまた
はC)103がキャラクタデザイナ101によって入力
される。次に要素コード83のサブコード91がキャラ
クタデザイナ101によって入力される。さらに、要素
コード83およびサブコード103に対応した座標デー
タ105,直線・曲線補間データ106,塗りつぶしデ
ータ107等がキャラクタデザイナ101によって指定
される。
【0074】ここで、1つの要素コード83に対応する
サブコード103は複数存在する場合があるが、この場
合、各サブコード103のDBS91は同一である。
【0075】次にフェーズ2のキャラクタ作成手順を説
明する。まずキャラクタデザイナ101によってキャラ
クタコード81が入力される。
【0076】次に、フェーズ1で作成した要素の1つを
指定する要素コード83が入力される。さらにその要素
コード83をキャラクタ118に合成する際のCP8
4,IBS85,K111およびLS86がキャラクタ
デザイナ101によって入力される。CPU5は、入力
されたKに対応する切替ポイント115を切替テーブル
114から検索する。また、CPU5は、要素コード8
3に対応するDBS91をステップS11で作成された
要素データベース9から検索する。CPU5はこのDB
S91,LS86,K111およびIBS85により演
算を行い(ステップS11)、相対線幅γ116を求め
る。
【0077】切替ポイント115および相対線幅γ11
6を比較して(ステップS12)、前記選択方法により
サブコード103を選択する。
【0078】前記要素コード83および前記サブコード
103により前記要素データベース9を検索し、DBS
91および座標データ105などを含む要素データ11
7を得る。
【0079】この要素データ117を、LS86,IB
S85,CP84に従ってキャラクタ118に合成す
る。
【0080】このようにしてキャラクタの作成に必要な
全ての要素の合成を行うことにより、キャラクタ(フォ
ント)118が作成される。キャラクタを作成するフェ
ーズで要素の形を修正する必要が発見された場合や、要
素を追加して作成する要素が発見された場合は、フェー
ズ1に戻り要素を作成する。
【0081】キャラクタが完成すると、CPU5は完成
したキャラクタ118のキャラクタコード81,キャラ
クタに対応した1つまたは複数の要素コード83,各要
素コードに対応したLS86,切替係数K111,IB
S85およびCP84をキャラクタデータベース8に格
納する。
【0082】切替係数K=1から6のそれぞれにおいて
「問」の文字を合成した結果を図8および図9に示す。
図8において、専門のキャラクタデザイナによると、相
対線幅γ=40%のキャラクタはK=3の場合にバラン
スが悪いとのことであった。相対線幅60%において
は、K=1およびK=2のいずれのキャラクタが望まし
いかについて、キャラクタデザイナの意見が分かれた。
【0083】図9においては、K=4のキャラクタが望
ましいとのことであった。
【0084】Kの値は組立てられた文字の空間の大きさ
および変化状態による。そこで、Kの値はキャラクタの
作成および各種線幅でのキャラクタの前記ディスプレイ
2への表示を通じてキャラクタデザイナが経験によって
決定する。
【0085】以下では、「問」という文字を例にして、
文字要素の自動切替法について説明してきた。
【0086】図10の(A)〜(F)を用いて他の文字
に対しての本発明による自動切替の例を説明する。
【0087】(A)「栖」の場合… このケースでは、
【0088】
【外1】
【0089】すべきだが、スペースがなくて、跳ねられ
ない。しかし、細字になると、上に跳ねるスペースがで
きてくるので、
【0090】
【外2】
【0091】(B)「女」の場合…
【0092】
【外3】
【0093】細字になると下に突き出る。これは、太字
では、スペースが少ないが、細字になると、
【0094】
【外4】
【0095】スペースができてくるので、下に突き出た
方が、バランスが良いからである。これは「ゲタ」の一
種である。
【0096】(C)「要」の場合… 「西」の部分は、
細くなるに従って、下に2本のゲタがでる。また、
「女」は細くなるに従って、1本のゲタが出る。このケ
ースは、同時に複数の文字要素が自動切替される例であ
る。
【0097】(D)「崎」の場合… 「山」の部分は、
太字のときは、1本のゲタしか出ていないが、細字にな
ると、2本のゲタが出る。「山」の部分は、太字のとき
は、2本のゲタが出ると煩雑になるので、左下に1本の
ゲタしか出さない方が良いが、細字になると、2本のゲ
タを出した方が、バランスが良い。また、この字の
「口」の部分は、細字になると、右下に空きができるの
で、ここにゲタが出る。このケースは、複数の文字要素
が自動切替される例である。
【0098】(E)「力」の場合… 太字の場合は、
【0099】
【外5】
【0100】斜めに切替わる。太字も細字も、このよう
にするとバランスが良い。
【0101】(F)「敏」の場合… この例は
【0102】
【外6】
【0103】太字の場合は、垂直だが、細字になると、
若干、斜めになる。
【0104】実施例2 以上の実施例においては、キャラクタを構成する要素の
種類を切替えたが、キャラクタが部首から構成され、か
つ、部首が要素から構成される場合においては、部首を
構成する要素を上述の実施例と同様の方法で切り換える
ことができることは当業者にとって明らかである。
【0105】実施例3 本発明を、キャラクタ出力装置に用いた場合の実施例を
以下に説明する。
【0106】ここで、「キャラクタ出力装置」とは、入
力された文字コードのキャラクタを出力する装置をい
い、この装置は先の「キャラクタ作成装置」のように外
部からIBS85,K111,LS86,要素コード8
3,CP84を入力しない。
【0107】キャラクタ出力装置としては、例えば印刷
用原稿作成/構成装置、DTPの他プリンタ,ワークス
テーション等を用いることができる。ワークステーショ
ンに本発明を適用した場合の一実施例を以下に説明す
る。
【0108】ここで、ワークステーションの外観は図1
のようであり、およびハードウエアの構成は図2を援用
するものとする。ハードディスク4に記憶された要素デ
ータベース9には、実施例1と同様に1つの要素コード
に対応する複数の要素が格納されている場合がある。キ
ャラクタデータベース8の1つのキャラクタのデータ構
成は、前述の構成と同一である。ただし、切替ポイント
が複数種類ある場合は、切替ポイントを示す切替係数K
111を各要素83に対応付けてキャラクタデータベー
ス8に格納する。
【0109】図11にキャラクタ作成時のデータフロー
を示す。
【0110】121はワークステーションのオペレータ
である。122はオペレータI/Fであり、ワードプロ
セッシングまたはDTP(ディスクトップパブリッシン
グ)等のアプリケーションソフトウエア、およびこれら
のソフトウエア動作に必要なシステムソフトウエア等を
含むものである。オペレータI/F122からキャラク
タコード81,キャラクタの配置位置を示すF−CP1
23,出力キャラクタライン幅の原キャラクタライン幅
に対する割合を示すF−LS124および出力キャラク
タサイズの原キャラクタサイズに対する割合を示すFS
R125等が出力される。ステップS21では、LS8
6にF−LS124を乗じて、選択された要素を合成す
る際のライン幅を求める。ステップS22では、CP8
4にF−CP123を加えて選択された要素を合成する
位置を求める。ステップS23ではOBS82にFSR
125を乗じて選択された要素を合成するボックスサイ
ズを求める。ステップS21,S22およびS23の出
力に応じて文字情報を修正して、RAM7の画像メモリ
上にキャラクタ(フォント)118が完成する。
【0111】
【発明の効果】以上から明らかなように、本発明によれ
ば、線幅の異なる各種キャラクタを作成することができ
る。さらに加えて、本発明によれば、線幅変更の際に、
字形および要素間のバランスが崩れることを防ぐことが
できる。
【図面の簡単な説明】
【図1】本発明キャラクタ作成装置の一実施例を示す外
観図である。
【図2】本発明キャラクタ作成装置のハードウエアの一
実施例を示すブロック図である。
【図3】要素を文字ボックスへ移すプロセスを示す図で
ある。
【図4】要素を合成する様子を示す説明図である。
【図5】本発明における要素の選択手順を示すフローチ
ャートである。
【図6】本発明における複数の切替ポイントの説明図で
ある。
【図7】本発明におけるキャラクタおよびキャラクタデ
ータベースの作成プロセスのデータフロー図である。
【図8】2段切替の各種切替係数において本発明により
作成されたキャラクタの説明図である。
【図9】3段切替の各種切替係数において本発明により
作成されたキャラクタの説明図である。
【図10】本発明キャラクタ作成方法により作成された
各種文字の説明図である。
【図11】本発明キャラクタ出力装置におけるキャラク
タ出力プロセスのデータフロー図である。
【図12】従来多く用いられているキャラクタの構成の
説明図である。
【図13】従来の線幅コントロール方法の4例の説明図
である。
【図14】従来の技術で線幅変換を行った結果の説明図
である。
【図15】従来の技術で線幅変換を行った結果の説明図
である。
【符号の説明】
1 キーボード 2 ディスプレイ 3 フロッピーディスク駆動装置 4 ハードディスク 5 CPU 6 ROM 7 RAM 8 キャラクタデータベース 9 要素データベース 81 キャラクタコード 82 アウトプットボックスサイズ(OBS) 83 要素コード 84 コオーディネイトポイント(CP) 85 インプットボックスサイズ(IBS) 86 絶対線幅(LS) 91 デザインボックスサイズ(DBS) 101 キャラクタデザイナ 103 サブコード 105 座標データ 106 直線・曲線補間データ 107 塗りつぶしデータ 111 切替係数(K) 114 切替テーブル 115 切替ポイント 116 相対線幅(γ) 117 要素データ 118 キャラクタ(フォント) 121 オペレータ 122 オペレータI/F 123 F−CP 124 F−LS 125 FSR 126 文字情報
───────────────────────────────────────────────────── フロントページの続き (72)発明者 川田 嗣郎 東京都中央区日本橋箱崎町19番地21 日本 アイ・ビー・エム株式会社 箱崎事業所内

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 1つまたは複数のキャラクタ要素に基づ
    いてキャラクタを作成する方法において、 形態の異なる複数のキャラクタ要素をキャラクタ要素の
    種類ごとに記憶手段に記憶させておき、該記憶手段の前
    記種類を特定する要素コードを入力するステップと、 前記1つまたは複数のキャラクタ要素に基づいて前記キ
    ャラクタを合成するときの前記1つまたは複数のキャラ
    クタ要素のラインの太さを示す情報を入力するステップ
    と、 前記要素コードおよび前記ラインの太さを示す情報を用
    いて前記1つまたは複数のキャラクタ要素を前記記憶手
    段から選択するステップと、 その選択された1つまたは複数のキャラクタ要素に基づ
    いて前記キャラクタを合成する際に、当該選択された1
    つまたは複数のキャラクタ要素に対応するラインの太さ
    を示す情報に基づいて当該1つまたは複数のキャラクタ
    要素のラインの太さを指定するステップとを具えたこと
    を特徴とするキャラクタ作成方法。
  2. 【請求項2】 請求項1に記載のキャラクタ作成方法を
    用いて作成した、各キャラクタに対応付けた前記要素コ
    ードおよび前記太さを示す情報を格納する、キャラクタ
    データベースと、形態の異なる複数のキャラクタ要素を
    キャラクタの種類ごとに格納する要素データベースとを
    記憶しておき、 前記キャラクタデータベースの1つのキャラクタを特定
    するキャラクタコードを入力するステップと、 前記キャラクタコードを用いて前記キャラクタデータベ
    ースから前記1つまたは複数のキャラクタ要素の種類を
    特定する要素コードおよび前記1つまたは複数のキャラ
    クタ要素のラインの太さを示す情報を検索するステップ
    と、 前記要素コードおよび前記ラインの太さを示す情報に基
    づいて前記1つまたは複数のキャラクタ要素を選択する
    ステップと、 前記選択された1つまたは複数のキャラクタ要素に基づ
    いて前記キャラクタを合成する際に当該選択された1つ
    または複数のキャラクタ要素に対応するラインの太さを
    示す情報に基づいて当該1つまたは複数のキャラクタ要
    素のラインの太さを指定するステップと、 合成されたキャラクタを出力するステップとを具えたこ
    とを特徴とするキャラクタ出力方法。
  3. 【請求項3】 1つまたは複数のキャラクタ要素に基づ
    いてキャラクタを作成する装置において、 形態の異なる複数のキャラクタ要素をキャラクタ要素の
    種類ごとに記憶させた記憶手段と、 前記種類を特定する要素コードを入力する手段と、 前記1つまたは複数のキャラクタ要素に基づいて前記キ
    ャラクタを合成するときの前記1つまたは複数のキャラ
    クタ要素のラインの太さを示す情報を入力する手段と、 前記要素コードおよび前記ラインの太さを示す情報を用
    いて前記1つまたは複数のキャラクタ要素を前記記憶手
    段から選択する手段と、 その選択した1つまたは複数のキャラクタ要素に基づい
    て前記キャラクタを合成する際に、当該選択された1つ
    または複数のキャラクタ要素に対応するラインの太さを
    示す情報に基づいて当該1つまたは複数のキャラクタ要
    素のラインの太さを指定する手段とを具えたことを特徴
    とするキャラクタ作成装置。
  4. 【請求項4】 請求項3に記載のキャラクタ作成装置を
    用いて作成した、各キャラクタに対応付けた前記要素コ
    ードおよび前記太さを示す情報を格納する、キャラクタ
    データベースと、形態の異なる複数のキャラクタ要素を
    キャラクタの種類ごとに格納する要素データベースと、 前記キャラクタデータベースの1つのキャラクタを特定
    するキャラクタコードを入力する手段と、 前記キャラクタコードを用いて前記キャラクタデータベ
    ースから前記1つまたは複数のキャラクタ要素の種類を
    特定する要素コードおよび前記1つまたは複数のキャラ
    クタ要素のラインの太さを示す情報を検索する手段と、 前記要素コードおよび前記ラインの太さを示す情報に基
    づいて前記1つまたは複数のキャラクタ要素を選択する
    手段と、 前記選択された1つまたは複数のキャラクタ要素に基づ
    いて前記キャラクタを合成する際に当該選択された1つ
    または複数のキャラクタ要素に対応するラインの太さを
    示す情報に基づいて当該1つまたは複数のキャラクタ要
    素のラインの太さを指定する手段と、 合成されたキャラクタを出力する手段とを具えたことを
    特徴とするキャラクタ出力装置。
JP4286105A 1992-10-23 1992-10-23 キャラクタ作成/出力方法および装置 Expired - Fee Related JP2598858B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4286105A JP2598858B2 (ja) 1992-10-23 1992-10-23 キャラクタ作成/出力方法および装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4286105A JP2598858B2 (ja) 1992-10-23 1992-10-23 キャラクタ作成/出力方法および装置

Publications (2)

Publication Number Publication Date
JPH06149209A true JPH06149209A (ja) 1994-05-27
JP2598858B2 JP2598858B2 (ja) 1997-04-09

Family

ID=17700002

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4286105A Expired - Fee Related JP2598858B2 (ja) 1992-10-23 1992-10-23 キャラクタ作成/出力方法および装置

Country Status (1)

Country Link
JP (1) JP2598858B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007035615A1 (en) * 2005-09-15 2007-03-29 Microsoft Corporation Positioning screen elements

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61190381A (ja) * 1985-02-20 1986-08-25 富士通株式会社 ドツト文字パタ−ンの作成方式
JPS62159279A (ja) * 1985-12-27 1987-07-15 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション 文字発生装置
JPS63224965A (ja) * 1987-03-11 1988-09-20 インタ−ナショナル・ビジネス・マシ−ンズ・コ−ポレ−ション 文字発生装置
JPH01257995A (ja) * 1988-04-08 1989-10-16 Nippon Telegr & Teleph Corp <Ntt> 文字図形生成装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61190381A (ja) * 1985-02-20 1986-08-25 富士通株式会社 ドツト文字パタ−ンの作成方式
JPS62159279A (ja) * 1985-12-27 1987-07-15 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション 文字発生装置
JPS63224965A (ja) * 1987-03-11 1988-09-20 インタ−ナショナル・ビジネス・マシ−ンズ・コ−ポレ−ション 文字発生装置
JPH01257995A (ja) * 1988-04-08 1989-10-16 Nippon Telegr & Teleph Corp <Ntt> 文字図形生成装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007035615A1 (en) * 2005-09-15 2007-03-29 Microsoft Corporation Positioning screen elements
US7576749B2 (en) 2005-09-15 2009-08-18 Microsoft Corporation Positioning screen elements

Also Published As

Publication number Publication date
JP2598858B2 (ja) 1997-04-09

Similar Documents

Publication Publication Date Title
JP4418044B2 (ja) デジタルフォントにおけるキャラクタを表示する方法、デジタルフォントのキャラクタを画定する方法、及びデジタルフォントにおけるキャラクタを発生する方法
US5450536A (en) Technique for automatically resizing tables
JP4101491B2 (ja) 合成フォント編集装置、合成フォント編集プログラム及びそれを記録した記録媒体
US6236407B1 (en) Method for creating graphical images
JPH06149209A (ja) キャラクタ作成/出力方法および装置
JPH10283492A (ja) レイアウト組版方法
JP3192915B2 (ja) 文字画像複合データ表示印刷方法および装置
JP3280160B2 (ja) 文書処理装置および文書処理方法
US6728935B1 (en) Apparatus for setting attributes to character strings and graphic objects
JP3170155B2 (ja) フォント展開装置
JP3037023B2 (ja) 文字発生装置
JPH087012A (ja) データの出力様式編集方法および装置
JP3032417B2 (ja) 文字発生装置
JP3355265B2 (ja) 中抜け文字塗りつぶし方法及びその装置
JP3127959B2 (ja) 文字生成処理装置、文字生成処理方法、及びコンピュータ読み取り可能な記録媒体
JPH0969098A (ja) 文書作成装置
JPH08186708A (ja) 画像拡大装置
JP2965429B2 (ja) 文字出力装置
JPH09174798A (ja) カーニング処理方法およびその装置
JPH07200856A (ja) 図形作成装置および図形作成方法
JP2895885B2 (ja) チラシ・カタログ類の割付装置
JPH08186707A (ja) 画像拡大装置
JPH07271779A (ja) ワードプロセッサの文書印刷方式
JPH08221411A (ja) 文書作成処理装置
JPH0711749B2 (ja) キャラクタ作成/出力方法および装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees