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

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

Info

Publication number
JP2598858B2
JP2598858B2 JP4286105A JP28610592A JP2598858B2 JP 2598858 B2 JP2598858 B2 JP 2598858B2 JP 4286105 A JP4286105 A JP 4286105A JP 28610592 A JP28610592 A JP 28610592A JP 2598858 B2 JP2598858 B2 JP 2598858B2
Authority
JP
Japan
Prior art keywords
character
code
specifying
elements
type
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP4286105A
Other languages
English (en)
Other versions
JPH06149209A (ja
Inventor
修治 福住
嗣郎 川田
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

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

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つの字形種類別キャラクタ要素のラインの太さを
指定するステップとを具えたことを特徴とする。
【0015】請求項2に記載のキャラクタ出力方法は、
キャラクタを構成する複数のキャラクタ要素を特定する
要素コードを前記キャラクタを特定するキャラクタコー
ドに関連付けて記憶するキャラクタデータベースにおい
て、前記キャラクタコードを特定するステップと、前記
キャラクタコードを用いて前記キャラクタデータベース
から前記キャラクタを構成する複数の要素コードを特定
するステップと、入力されたキャラクタのラインの太さ
を示す情報から前記特定された複数の要素コードに対応
するキャラクタ要素の各々について対応するラインの太
さを特定するステップと、前記複数の要素コードの内の
1つの要素コードと、前記1つの要素コードに対応する
ラインの太さを示す情報に基づいて、前記複数のキャラ
クタ要素の内の1つのキャラクタ要素の要素コードに関
連して、前記キャラクタを夫々異なる骨格形状として表
現する複数の字形種類別キャラクタ要素を記憶した要素
データベースの中から、1つの字形種類別キャラクタ要
素を選択するステップと、前記選択された1つの字形種
類別キャラクタ要素に基づいてキャラクタを合成するス
テップと、前記合成されたキャラクタを出力するステッ
プとを具えたことを特徴とする。
【0016】請求項3に記載のキャラクタ作成装置は、
キャラクタの一部を構成するキャラクタ要素に対応し
て、前記キャラクタを異なる骨格形状として表現する複
数の字形種類別キャラクタ要素を用意し、前記キャラク
タ要素を特定する要素コードに関連付けて記憶させた記
憶手段と、前記記憶手段において、1つの要素コードを
特定する手段と、前記キャラクタのラインの太さを示す
情報を特定する手段と、前記特定された1つの要素コー
ドおよび前記ラインの太さを示す情報を用いて前記複数
の字形種類別キャラクタ要素の中から1つの字形種類別
キャラクタ要素を前記記憶手段から選択する手段と、そ
の選択された1つの字形種類別キャラクタ要素に基づい
てキャラクタを合成する際に、前記ラインの太さを示す
情報に基づいて前記1つの字形種類別キャラクタ要素の
ラインの太さを指定する手段とを具えたことを特徴とす
る。
【0017】請求項4に記載のキャラクタ出力装置は、
キャラクタを構成する複数のキャラクタ要素を特定する
要素コードを前記キャラクタを特定するキャラクタコー
ドに関連付けて記憶するキャラクタデータベースと、前
記キャラクタデータベースにおいて、前記キャラクタコ
ードを特定する手段と、前記キャラクタコードを用いて
前記キャラクタデータベースから前記キャラクタを構成
する複数の要素コードを特定する手段と、入力されたキ
ャラクタのラインの太さを示す情報から前記特定された
複数の要素コードに対応するキャラクタ要素の各々につ
いて対応するラインの太さを特定する手段と、前記複数
の要素コードの内の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
に格納されている。なお、図3においては要素は1つの
ストロークであったが、例えば図4に示すように、キャ
ラクタ「問」の「口」のように複数のストロークからな
る部首をこの要素としてもよい。
【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つの互いに異なる骨格形状のパターン(M000
001.A:M000001.BおよびM00000
1.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 日 本アイ・ビー・エム株式会社 箱崎事業 所内 (56)参考文献 特開 昭61−190381(JP,A) 特開 昭62−159279(JP,A) 特開 昭63−224965(JP,A) 特開 平1−257995(JP,A)

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 キャラクタの一部を構成するキャラクタ
    要素に対応して、前記キャラクタを異なる骨格形状とし
    て表現する複数の字形種類別キャラクタ要素を用意し、
    前記キャラクタ要素を特定する要素コードに関連付けて
    記憶させた記憶手段から、1つの要素コードを特定する
    ステップと、 前記キャラクタのラインの太さを示す情報を特定するス
    テップと、 前記特定された1つの要素コードおよび前記ラインの太
    さを示す情報を用いて前記複数の字形種類別キャラクタ
    要素の中から1つの字形種類別キャラクタ要素を前記記
    憶手段から選択するステップと、 その選択された1つの字形種類別キャラクタ要素に基づ
    いてキャラクタを合成する際に、前記ラインの太さを示
    す情報に基づいて前記1つの字形種類別キャラクタ要素
    のラインの太さを指定するステップと、 を具えたことを特徴とするキャラクタ作成方法。
  2. 【請求項2】 キャラクタを構成する複数のキャラクタ
    要素を特定する要素コードを前記キャラクタを特定する
    キャラクタコードに関連付けて記憶するキャラクタデー
    タベースにおいて、前記キャラクタコードを特定するス
    テップと、 前記キャラクタコードを用いて前記キャラクタデータベ
    ースから前記キャラクタを構成する複数の要素コードを
    特定するステップと、 入力されたキャラクタのラインの太さを示す情報から前
    記特定された複数の要素コードに対応するキャラクタ要
    素の各々について対応するラインの太さを特定するステ
    ップと、 前記複数の要素コードの内の1つの要素コードと、前記
    1つの要素コードに対応するラインの太さを示す情報に
    基づいて、前記複数のキャラクタ要素の内の1つのキャ
    ラクタ要素の要素コードに関連して、前記キャラクタを
    夫々異なる骨格形状として表現する複数の字形種類別キ
    ャラクタ要素を記憶した要素データベースの中から、1
    つの字形種類別キャラクタ要素を選択するステップと、 前記選択された1つの字形種類別キャラクタ要素に基づ
    いてキャラクタを合成するステップと、 前記合成されたキャラクタを出力するステップと を具えたことを特徴とするキャラクタ出力方法。
  3. 【請求項3】 キャラクタの一部を構成するキャラクタ
    要素に対応して、前記キャラクタを異なる骨格形状とし
    て表現する複数の字形種類別キャラクタ要素を用意し、
    前記キャラクタ要素を特定する要素コードに関連付けて
    記憶させた記憶手段と、 前記記憶手段において、1つの要素コードを特定する手
    段と、 前記キャラクタのラインの太さを示す情報を特定する手
    段と、 前記特定された1つの要素コードおよび前記ラインの太
    さを示す情報を用いて前記複数の字形種類別キャラクタ
    要素の中から1つの字形種類別キャラクタ要素を前記記
    憶手段から選択する手段と、 その選択された1つの字形種類別キャラクタ要素に基づ
    いてキャラクタを合成する際に、前記ラインの太さを示
    す情報に基づいて前記1つの字形種類別キャラクタ要素
    のラインの太さを指定する手段と、 を具えたことを特徴とするキャラクタ作成装置。
  4. 【請求項4】 キャラクタを構成する複数のキャラクタ
    要素を特定する要素コードを前記キャラクタを特定する
    キャラクタコードに関連付けて記憶するキャラクタデー
    タベースと、 前記キャラクタデータベースにおいて、前記キャラクタ
    コードを特定する手段と、 前記キャラクタコードを用いて前記キャラクタデータベ
    ースから前記キャラクタを構成する複数の要素コードを
    特定する手段と、 入力されたキャラクタのラインの太さを示す情報から前
    記特定された複数の要素コードに対応するキャラクタ要
    素の各々について対応するラインの太さを特定する手段
    と、 前記複数の要素コードの内の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 JPH06149209A (ja) 1994-05-27
JP2598858B2 true 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)

Families Citing this family (1)

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

Family Cites Families (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 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション 文字発生装置
JPH07106644B2 (ja) * 1987-03-11 1995-11-15 インターナショナル・ビジネス・マシーンズ・コーポレーション 文字発生装置
JPH01257995A (ja) * 1988-04-08 1989-10-16 Nippon Telegr & Teleph Corp <Ntt> 文字図形生成装置

Also Published As

Publication number Publication date
JPH06149209A (ja) 1994-05-27

Similar Documents

Publication Publication Date Title
US5613131A (en) Auto-formatting of tables in a spreadsheet program
US6952210B1 (en) Method of generating multiple master typefaces containing kanji characters
US6008812A (en) Image output characteristic setting device
JPH09134157A (ja) ヒント付け方法及びフォントファイル構成方法
US8122351B2 (en) Document edit device and storage medium
JPH06290086A (ja) 構造データ処理装置
JP2598858B2 (ja) キャラクタ作成/出力方法および装置
JPH09134156A (ja) アウトラインフォントのストローク化及びパーツ化方法
JP2978208B2 (ja) キャラクタージェネレータにおけるフォントデータ圧縮方式
JP3192915B2 (ja) 文字画像複合データ表示印刷方法および装置
JP3032417B2 (ja) 文字発生装置
JP3037023B2 (ja) 文字発生装置
JP3280160B2 (ja) 文書処理装置および文書処理方法
JP3170155B2 (ja) フォント展開装置
JPH087012A (ja) データの出力様式編集方法および装置
CN111651161B (zh) 图形化界面构建方法、装置、计算机设备及存储介质
JP3127959B2 (ja) 文字生成処理装置、文字生成処理方法、及びコンピュータ読み取り可能な記録媒体
JPH08212361A (ja) 図形編集装置および図形編集方法
JP2866287B2 (ja) 楽譜作成装置
JP2001067425A (ja) 表データ処理装置、及び記憶媒体
JP2001256508A (ja) アニメーション作成装置および方法、ならびにコンピュータで実行可能なアニメーション作成方法のプログラムを記録したコンピュータ読取可能な記録媒体
JPH01262149A (ja) ドツト文字フオント生成機能をもつ文書出力装置
JP3396374B2 (ja) 画像処理装置及び画像処理方法
JPH1173411A (ja) テキストエディタおよびそのプログラム記憶媒体
JPH0619450A (ja) ヒンティング情報圧縮方法

Legal Events

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