JP3814330B2 - 文字処理装置、文字処理方法、及び、メモリ - Google Patents

文字処理装置、文字処理方法、及び、メモリ Download PDF

Info

Publication number
JP3814330B2
JP3814330B2 JP06624496A JP6624496A JP3814330B2 JP 3814330 B2 JP3814330 B2 JP 3814330B2 JP 06624496 A JP06624496 A JP 06624496A JP 6624496 A JP6624496 A JP 6624496A JP 3814330 B2 JP3814330 B2 JP 3814330B2
Authority
JP
Japan
Prior art keywords
font
modification
character
information
program
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
JP06624496A
Other languages
English (en)
Other versions
JPH09254459A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP06624496A priority Critical patent/JP3814330B2/ja
Publication of JPH09254459A publication Critical patent/JPH09254459A/ja
Application granted granted Critical
Publication of JP3814330B2 publication Critical patent/JP3814330B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、フォントを用いて文字パターンを出力する文字処理装置、文字処理方法、及び、メモリに関する。
【0002】
【従来の技術】
従来、プリンタに搭載されているフォントは、ビットマップフォントが主流であった。フォントデータとして、文字のサイズ毎に文字パターンを持ち、高速に品位の高い文字を印字可能であった。しかしながら最近は、プリンタの高解像度化/多書体化にともない、パターンを記憶するメモリが巨大化したことや、変形等の自由度をもとめたことから、スケーラブルフォントが主流となってきている。
【0003】
また、ビットマップフォントとは別に、スケーラブルフォントの高速出力のために、スケーラブルフォントをあらかじめ展開したビットマップパターンとして、使用頻度の高い文字パターンのみフォントROMに格納しておき、使用頻度の低い文字は、スケーラブルデータから展開、使用するような、スケーラブルとビットマップの中間的存在のSドットフォントを搭載するプリンタもある。
【0004】
【発明が解決しようとする課題】
しかしながら、新規プリンタでない限り、従来からの互換出力のために、ビットマップフォントをなくすことは難しく、スケーラブルフォントと、ビットマップフォントと、Sドットフォントのすべてを搭載するため、フォントROMの占めるコストが大きくなっている。そのために、フォントデータを圧縮したり、より、データ量の少ないスケーラブルフォントデータを採用するなど、削減は計っているが限界がある。このことから、スケーラブルフォントを用いて、ビットマップフォントのサイズを指定、展開することによりエミュレーションし、従来互換の出力を得られるようにすることが考えられる。
【0005】
しかしながら、ビットマップフォントでは、最適なパターンの位置情報や、最適な修飾の情報(例えばアンダーラインの位置や網かけの大きさ・位置)をそれぞれのサイズ毎にデザインし、持っている。さらには、同じ、10ポイントの文字パターンといっても、実際の字の大きさは、書体毎、デザイン毎に若干ことなる。
【0006】
例えば、図7に示したように、スケーラブルフォントと、ビットマップフォントで、同じ文字サイズの漢字のパターンを比べても、枠は同じ大きさでも、その中には位置される文字のパターンの大きさや印字する際の基準位置はことなる。さらに、図8に示したように、ビットマップフォントどうしでも、文字サイズと、印字位置の関係は、それぞれ独自にデザインされており、比例関係ではない。これらにより、互換出力を、得られるパターンをスケーラブルフォントで実現するためには、フォント毎に調整が必要となる。具体的にいうなれば、解像度240dpiのプリンターの9.6ポイント(32dot×32dot)のK32M.J83というビットマップフォントは従来互換のために持たなければならず、その他に、明朝書体のスケーラブルフォントとそのスケーラブルフォントの高速出力のための10ポイントのSドットフォントを搭載しているプリンタの場合、9.6ポイントのビットマップフォントと10ポイントのSドットフォントは、文字のパターン自体の大きさとしては、ほぼ同じであるのに、上記のように、枠の大きさがことなり、印字の基準位置や、その他の情報が共有できないために双方のデータを持たなくてはならない。
【0007】
本発明は、上記のような問題点を解決するためになされたもので、従来との互換を図りながらフォントのメモリ容量を削減できる文字処理装置、文字処理方法及び、メモリを提供することを目的とする。
【0008】
【課題を解決するための手段】
上記課題を解決するために本発明の文字処理装置は、
フォントを選択する選択手段と、
前記選択手段により選択されたフォントが置き換えフォントであるか判別する判別手段と、
前記判別手段により置き換えフォントでないと判別された場合、前記選択手段により選択されたフォントに対応するフォントデータをユーザ指定のサイズでスケーリングして文字パターンを生成し、前記判別手段により置き換えフォントであると判別された場合、前記選択手段により選択されたフォントに対応するフォントデータを置換え情報の文字サイズを参照してスケーリングして文字パターンを生成する生成手段と
印字位置の調整が必要であるか判別する判定手段と、
前記判定手段により印字位置の調整が必要であると判定された場合、前記作成手段により作成された文字パターンを印字位置調整情報に従い補正した位置に描画する描画手段と、
現在印字中の文字に修飾が指定されており、修飾の補正が必要である場合、修飾の情報を印字位置調整情報に従い補正して修飾を行う修飾手段とを有することを特徴とする。
【0009】
上記課題を解決するために本発明の文字処理方法は、
フォントを選択する選択ステップと、
前記選択ステップにより選択されたフォントが置き換えフォントであるか判別する判別ステップと、
前記判別ステップにより置き換えフォントでないと判別された場合、前記選択ステップにより選択されたフォントに対応するフォントデータをユーザ指定のサイズでスケーリングして文字パターンを生成し、前記判別ステップにより置き換えフォントであると判別された場合、前記選択ステップにより選択されたフォントに対応するフォントデータを置換え情報の文字サイズを参照してスケーリングして文字パターンを生成する生成ステップと
印字位置の調整が必要であるか判別する判定ステップと、
前記判定ステップにより印字位置の調整が必要であると判定された場合、前記作成ステップにより作成された文字パターンを印字位置調整情報に従い補正した位置に描画する描画ステップと、
現在印字中の文字に修飾が指定されており、修飾の補正が必要である場合、修飾の情報を印字位置調整情報に従い補正して修飾を行う修飾ステップとを有することを特徴とする。
【0010】
上記課題を解決するために本発明のメモリは、
フォントを選択する選択プログラムと、
前記選択プログラムにより選択されたフォントが置き換えフォントであるか判別する判別プログラムと、
前記判別プログラムにより置き換えフォントでないと判別された場合、前記選択プログラムにより選択されたフォントに対応するフォントデータをユーザ指定のサイズでスケーリングして文字パターンを生成し、前記判別プログラムにより置き換えフォントであると判別された場合、前記選択プログラムにより選択されたフォントに対応するフォントデータを置換え情報の文字サイズを参照してスケーリングして文字パターンを生成する生成プログラムと
印字位置の調整が必要であるか判別する判定プログラムと、
前記判定プログラムにより印字位置の調整が必要であると判定された場合、前記作成ステップにより作成された文字パターンを印字位置調整情報に従い補正した位置に描画する描画プログラムと、
現在印字中の文字に修飾が指定されており、修飾の補正が必要である場合、修飾の情報を印字位置調整情報に従い補正して修飾を行う修飾プログラムとを記憶したことを特徴とする。
【0011】
【発明の実施の形態】
(第1の発明の実施の形態)
本発明の実施の形態の構成を説明する前に、本発明の実施の形態を適用するに好適なレーザビームプリンタの構成について図1を参照しながら説明する。なお、本発明の実施の形態を適用するプリンタは、レーザビームプリンタに限られるものではなく、他のプリント方式のプリンタでも良いことは言うまでもない。
【0012】
図1は本発明を適用可能な第1の出力装置の構成を示す断面図であり、例えばレーザビームプリンタ(LBP)の場合を示す。
【0013】
図において、1000はLBP本体であり、外部に接続されているホストコンピュータから供給される印刷情報(文字コード等)やフォーム情報あるいはマクロ命令等を入力して記憶するとともに、それらの情報に従って対応する文字パターンやフォームパターン等を作成し、記録媒体である記録紙等に像を形成する。1012は操作のための複数のスイッチおよびLED/LCD表示器等が配されている操作パネルである。1001はLBP本体1000全体の制御およびホストコンピュータから供給される文字情報等を解析するプリンタ制御ユニットである。このプリンタ制御ユニット1001は、主に文字情報を対応する文字パターンのビデオ信号に変換してレーザドライバ1002に出力する。レーザドライバ1002は半導体レーザ1003を駆動するための回路であり、入力されたビデオ信号に応じて半導体レーザ1003から発射されるレーザ光1004をオン・オフ切り換えする。レーザ光1004は回転多面鏡1005で左右方向に振らされて静電ドラム1006上を走査露光する。これにより、静電ドラム1006上には文字パターンの静電潜像が形成されることになる。この潜像は、静電ドラム1006周囲に配設された現像ユニット1007により現像された後、記録紙に転写される。この記録紙にはカットシートを用い、カットシート記録紙はLBP1000に装着した用紙カセット1008に収納され、給紙ローラ1009および搬送ローラ1010と搬送ローラ1011とにより、装置内に取り込まれて、静電ドラム1006に供給される。またLBP本体1000には、図示しないカードスロットまたはROMSIMMのスロットを少なくとも1個以上備え、内蔵フォントに加えてオプションフォントカード,言語系の異なる制御カード(エミュレーションカード)を追加接続できるように構成されている。
【0014】
図2は本発明の実施の形態を示すプリンタ制御システムの構成を説明するブロック図である。ここでは、レーザビームプリンタ(図1)を例にして説明する。なお、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、LAN等のネットワークを介して処理が行われるシステムであっても本発明を適用できることは言うまでもない。
【0015】
図において、3000はホストコンピュータで、ROM3のプログラム用ROMに記憶された文書処理プログラム等に基づいて図形,イメージ,文字,表(表計算等を含む)等が混在した文書処理を実行するCPU1を備え、システムデバイス4に接続される各デバイスをCPU1が総括的に制御する。
【0016】
また、このROM3のプログラム用ROMには、前記文書処理を実行した結果出力される情報をプリンタが解析可能なデータへ変換/プリンタ用言語を付加するプリンタドライバ等CPU1の制御プログラム等を記憶し、ROM3のフォント用ROMには上記文書処理の際に使用するフォントデータ等を記憶し、ROM3のデータ用ROMは上記文書処理等を行う際に使用する各種データを記憶する。2はRAMで、CPU1の主メモリ,ワークエリア等として機能する。5はキーボードコントローラ(KBC)で、キーボード9や不図示のポインティングデバイスからのキー入力を制御する。6はCRTコントローラ(CRTC)で、CRTディスプレイ(CRT)10の表示を制御する。7はメモリコントローラ(MC)で、ブートプログラム、,種々のアプリケーション,フォントデータ,ユーザファイル,編集ファイル等を記憶するハードディスク(HD)、フロッピーディスク(FD)等の外部メモリ11とのアクセスを制御する。8はプリンタコントローラ(PRTC)で、所定の双方向性インタフェース(インタフェース)21を介してプリンタ1500に接続されて、プリンタ1000との通信制御処理を実行する。なお、CPU1は、例えばRAM2上に設定された表示情報RAMへのアウトラインフォントの展開(ラスタライズ)処理を実行し、CRT10上でのWYSIWYGを可能としている。また、CPU1は、CRT10上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。
【0017】
プリンタ1000において、12はプリンタCPUで、ROM13のプログラム用ROMに記憶された制御プログラム等或は外部メモリ14に記憶された制御プログラム等に基づいてシステムバス15に接続される各種のデバイスとのアクセスを総括的に制御し、印刷部インタフェース16を介して接続される印刷部(プリンタエンジン)17に出力情報としての画像信号を出力する。また、このROM13のプログラムROMには、図4、図6のフローチャートで示されるようなCPU12の制御プログラム等を記憶する。ROM13のフォント用ROMには上記出力情報を生成する際に使用するフォントデータ等を記憶し、ROM13のデータ用ROMにはハードディスク等の外部メモリ14が無いプリンタの場合には、ホストコンピュータ上で利用される情報等を記憶している。CPU12は入力部18を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ3000に通知可能に構成されている。19はCPU12の主メモリ、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。なお、RAM19は、出力情報展開領域、環境データ格納領域、フォントテーブル作成領域等に用いられる。前述したハードディスク(HD)、ICカード等の外部メモリ14は、メモリコントローラ(MC)20によりアクセスを制御される。外部メモリ14は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、18は前述した操作パネルで操作のためのスイッチおよびLED表示器等が配されている。
【0018】
以上のように、このように構成されたプリンタ制御システムにおいて、フォント選択を行ない、文字パターンを出力する。図5、図6を用いて、以下に、フォント選択についての説明を行なう。
【0019】
フォント選択の方法としては、フォントの名称を指定する方法と、フォントの属性により指定する方法とがある。フォントの属性による選択方法とは、フォントの属性を数種規定し、フォント毎にその情報をテーブル(フォントテーブル)に記憶、属性の優先順位が高いものから、指定された属性と異なるフォントを候補から落していき、最後に残ったフォントを、選択する方法である。
【0020】
図5は、プリンタ立ち上げ時にRAM19内に作成されるフォントテーブルの詳細であり、印刷装置内(フォントROM13/外部メモリ14/RAM19)に持っているフォント全ての名称・属性・ポインタ及びフラグによって構成されている。このテーブル内のフォントの順番は、内蔵されているフォントから、フォントカード(外部フォントメモリ)内フォント、ユーザー登録フォントの順に並んでいる。
【0021】
このテーブルの中から、指定されたフォントを検索し、印字を行う。
【0022】
名称選択については、このテーブルないから指定された名称のフォントを検索することにより選択し、また、属性選択については、属性の優先順位に従い、ふるいにかけていく。
【0023】
属性の優先順位は、高い方から、
グラフィックセット(パターンの並びを定義する)
文字ピッチ(文字の幅)
文字サイズ(文字の高さ)
スタイル(直立体等の属性を表す)
ストロークウェイト(文字のストロークの幅を示す)
主書体番号(明朝/ゴシック等の書体デザイン)
副書体番号(書体デザインの細かい違いを識別する)
となっており、この優先順位に従いフォントが決定される。
【0024】
図6はCPU12の属性選択処理手順を説明するためのフローチャートである。なお、このフローチャートに係るプログラムはROM13に記憶されている。
【0025】
コマンドで、フォントの属性指示がきた場合には、その時点で設定されている他の属性も含めて、フォントの検索処理を行う。
【0026】
まずステップS1でフォントテーブル内フォント全てのフラグをセットする。そして、ステップS2で指定されたグラフィックセット以外のフォントのフラグをすべてクリアした後、フラグの立っているフォントが1つになっているかを調べる(ステップS3)。1つになっていた場合には、そのフォントを用いて印字を行う。また、フラグの立っているフォントがなくなっていた場合には、グラフィックセットの選択規則に乗っ取り、現在設定されているグラフィックセットのフォントのフラグがセットされる(ステップS4)。更に、フラグのセットされているふぉんとが複数個残っていた場合には、ステップS5に進み、指定された文字ピッチ以外のフォントのフラグをクリアし、前記グラフィックセットの場合と同様に、残ったフォントの数をチェックし(ステップS6)、1つならば決定、1つもなければその属性の選択基準に従い処理され(ステップS7)、複数個残った場合には次の属性の処理に進む。以下、文字サイズ、スタイル、ストロークウェイト、書体、副書体と、同様に処理を行う。そして、最後まで1つに絞れなかった場合には、フォントテーブル内一番最後にあるフラグがセットされたフォントを選択する(ステップS23)。
【0027】
そして、文字出力のための文字コードを受信したさいには、上記フォント選択で選択されたフォントを用いて文字パターン出力を行なう。
【0028】
スケーラブルフォントであった場合には、制御コマンドによって指定された文字サイズ及び、文字のピッチから、指定通りの文字パターンを生成する。
【0029】
連続して、文字コードを受信した場合には、特別に移動のコマンドが来ない限り、フォントの情報として規定されている移動量分位置を移動する。また、アンダーラインや網掛け修飾、白黒反転処理についても、フォントの情報として規定されている修飾情報に従い修飾される。
【0030】
また、生成した文字パターンはRAM19上にある1ページ分のイメージエリアに展開された排紙コマンドによって印刷部17に送られる。
【0031】
これら、フォントの情報は、前記RAM19内に作成されるフォントテーブル内フォントポインタに示されたアドレスに決まったフォーマットにしたがって格納されている。
【0032】
図3を用いて詳細に説明を行なう。
【0033】
図3は、フォントROM13内の格納されているフォントデータのフォーマットを示したものである。また、このフォーマットにしたがったフォントデータの先頭のアドレス(スケーラブルフォント識別子の格納されているアドレス)が、前記フォントテーブルのフォントポインタに格納されている。
【0034】
フォントフォーマットの内容としては、好けーラブルフォントのヘダー情報が格納されているということを示すスケーラブルふぉんと識別子、ヘダーの情報の総バイト数(Nbyte)、スケーリングに必要な、基準となるデータサイズおよび、印字位置の基準となる基準移動量、その後ろに、文字セットの属性情報(グラフィックセット番号、ストロークウェイト、スタイル、書体番号、副書体番号)、修飾情報(基準アンダーラインオフセット、網掛け/白黒反転基準サイズ)、そして、文字パターンデータへのオフセットが格納されているテーブルへのフォーマット先頭アドレスからのオフセット量(0byte)、そして、格納されているパターンの開始文字コード、終了文字コードの情報の後ろに、実際のパターン情報へのオフセットが開始コードから終了コードまでのパターン数分格納されている。また、実際の文字パターンデータは、パターン情報識別子を先頭として、パターンデータの総バイト数(Pbyte)、その後ろに、実際のパターンが文字コード順に格納されている。
【0035】
フォントテーブル作成時には、フォントROM13内をサーチし、上記スケーラブルフォントのヘダー識別子や、ビットマップのヘダー識別子が見つかると、RAM19内フォントテーブルにその情報を書き込む。
【0036】
また、文字パターン出力の際には、フォントテーブル上の選択されたフォントアドレスから、上記ヘダー情報を読みだし、スケーラブルフォントであれば、指定された、文字サイズと、基準データサイズや基準移動量、各修飾情報から、実際に出力するためのスケーリング情報を算出し、文字コードから、パターンデータへのオフセットを算出、パターンデータをとりだし、前記算出したスケーリング情報を元にパターンを出力する。
【0037】
本発明の実施の形態としては、図4に示したフォーマットを用いてスケーラブルフォントデータをビットマップフォントとしても使用する。
【0038】
図4において、スケーラブルフォントのヘダー情報および文字のパターンデータについては図3と同様である。
【0039】
図3と異なるのは疑似ビットマップ識別子から始まる擬似ビットマップヘダー情報を持つ。また、ヘダーの内容としては、出力データサイズおよび選択用データサイズを持ち、フォント選択時には選択用データサイズを用いて選択を行ない、文字のパターン出力時には出力データサイズと、基準データサイズからパターン出力のためのスケーリング情報を算出する。また、実際の属性情報とは別に、疑似グラフィックセット番号情報を持ち実際のグラフィックセット番号と異なるグラフィックセットでフォント選択を行なう際に使用する。このヘダー情報は、1つのスケーラブルフォントパターンデータに対し複数設定可能であり、明朝のスケーラブルフォントパターンに対し、スケーラブルのフォント情報ヘダーはもちろん、7.2ポイント,9.6ポイント,12ポイントの3つの異なる擬似ビットマップのヘダーを持つことも可能である。また、これらのヘダー情報は、内蔵されていなければならないものではなく、外部メモリ14によってオプションで供給されることも可能であり、ホストコンピュータからダウンロードすることにより、同じフォーマットをRAM19上に作成することも可能である。これらの場合には、フォントROM13のみをサーチしフォントテーブルを作成するのではなく、RAM19および、外部メモリ14内もサーチし、フォントテーブルを作成することはもちろんである。
【0040】
以上のようにフォントのヘダー情報として、疑似ビットマップの情報を持つことにより、ビットマップのパターンを記憶することなく、ヘダー情報のみでフォント選択のアルゴリズムを大きく変えることなく、容易にビットマップフォントの互換が保てる。
【0041】
以上のフォーマットや、選択の手順等は、上記に限ったものではなく、他のフォーマットおよび選択手順でも可能であることはいうまでもない。
【0042】
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用しても良い。また、本発明はシステム或は装置にプログラムを供給することによって実施される場合にも適用できることは言うまでもない。この場合、本発明に係るプログラムを格納した記憶媒体が、本発明を構成することになる。そして、該記憶媒体からそのプログラムをシステム或は装置に読み出すことによって、そのシステム或は装置が、予め定められた仕方で動作する。
【0043】
(第2の発明の実施の形態)
上記第1の発明の実施の形態においては、フォントROM内ヘダー情報により、疑似ビットマップを実現したが、ヘダー情報には重複する情報も多いため、次にフォントテーブルに疑似情報を持つ発明の実施の形態について説明を行なう。
【0044】
図8に示したように、RAM19上に作成するフォントテーブルに、置き換え情報(疑似)インデックスの項目、および、印字位置調整情報(位置)インデックスの項目を設け、置き換え情報のテーブルと、印字位置調整情報テーブルのインデックス番号を記憶しておく。ビットマップの属性選択をするための文字サイズおよび文字ピッチの情報はフォントテーブル本体の方に記憶され、置き換え情報のテーブルには、フォントパターンを出力するための、スケーラブルフォントの名称、文字サイズおよび文字ピッチが記憶されている。また、印字位置調整情報のテーブルには、疑似ビットマップフォントと置換えのスケーラブルフォントのベースラインの違いを補整するベースラインオフセット情報や、パターンの位置を補整する印字位置置換オフセット情報(縦/横)、網掛けや白黒反転等修飾のための、セル位置補正のオフセット情報(縦/横)および、アンダーラインの位置補整情報を持っている。
【0045】
これらの情報は、フォントROM13内及び、外部メモリ14及びダウンロードされた情報として図9のようなフォーマットで記憶およびダウンロードされ、フォントテーブル作成時に、RAM19に図8のようにインデックス番号を用いてリンクされる。また、その際、テーブル内フォントポインタには、置き換え情報テーブル内のスケーラブルフォントの名称を用いて、置き換えるスケーラブルフォントのフォントポインタをサーチし、格納する。
【0046】
また、これらの置換えのための情報は、コマンドにより、情報の書換え等の処理も可能である。
【0047】
これらの情報を用いて印刷をする場合には、テーブルの容量や、判定処理などが必要となるために、あらかじめ、これらの情報のどこまでを用いて出力するか(修飾情報は使用しない。印字位置補整は行なわない等)、または、互換ビットマップの必要のないユーザーは、一切のテーブル処理を行なわないよう設定するよう、パネル操作部1012やコマンドを用いて選択可能であるよう構成することももちろん可能である。また、テーブルの構成や、データのフォーマットは説明に限ったものではなく、他のものでも実現可能である。
【0048】
図16のフローチャートを用いてフォントの出力手順を詳細に説明する。なお、このフローチャートに係るプログラムはROM13に記憶されている。フォント選択の結果、選択されたフォントを用いて与えられた文字コードを文字パターンとしてRAM19上にある1ページ分のイメージエリアに展開する。まず、選択されたフォントが置き換えフォントでないかどうかを、フォントテーブル内擬似インデックスが−1かどうかで判断する(ステップ101)。ホストコンピュータ(プリンタドライバ)より従来モードでないモードが指定され置き換えフォントとして用いない場合には、ビットマップフォントかどうかを判定し(ステップ102)、ビットマップフォントであった場合には、フォントポインタに文字コード分のオフセットを加算したアドレスからパターンを取り出す(ステップ103)。また、スケーラブルフォントであった場合には、フォントポインタに文字コード分のオフセットを加算したアドレスからデータをとりだし、ユーザー指定の文字サイズ/文字ピッチにスケーリングする(ステップ104)。また、ホストコンピュータ(プリンタドライバ)より従来モードが指定され置き換えフォントとして用いる場合には、疑似インデックスを用いて、置き換えテーブル内の文字サイズ/文字ピッチを参照し、フォントテーブル内フォントポインタのフォントをスケーリングする(ステップ105)。そして、印字位置の調整が必要かどうかを、位置補正インデックスが−1かどうかで判定し(ステップ106)、−1であった場合には補正が必要でないため、イメージエリア内の現在の出力位置(カレントポイント)に描画する(ステップ107)。補正が必要であった場合には、位置補正インデックスを用いて、印字位置調整テーブル内の補正情報を読みだし、カレントポイントから補正した位置(アドレス)に描画する(ステップ108)。
【0049】
また、現在印字中の文字に修飾が指定されている場合には(ステップ109)、フォントポインタから修飾の大きさや位置の情報を読みだし、その値にしたがいアンダーライン/網掛け/白黒反転等の修飾を行なう(ステップ111)。位置補正インデックスがある場合には、フォントポインタから修飾の情報を読みだし、その情報を印字位置調整情報にしたがい補正して修飾を行なう(ステップ112)。現在の文字コードのパターン出力処理が終了したのち、フォントポインタから基準移動量を読みだし、カレントポイントを更新する(ステップ113)。
【0050】
したがって、スケーラブルフォントのMincho−Medium.J78の「亜」(3021h)を10points7.2cpiで出力する場合には、フォントテーブル内フォントポインタを用いて、フォントROM内基準ピッチ/基準サイズを読みだし、ユーザー指定の10points7.2cpiとの比を計算しスケーリングに備える。そして、文字のパターンへのオフセットが格納されているアドレスを文字コードから算出しパターンを取り出しスケーリングしてビットマップのパターンを作成する。これをイメージエリア内カレントポイントに格納し、ユーザーの指定ピッチ分カレントポイントを移動する。また、上記Mincho−Medium.J78を置き換えフォントとして出力するK32M.J78の場合には、置き換え情報テーブル内文字サイズ文字ピッチを用いてスケーリングを行ない、イメージエリア内カレントポイントに格納する際、印字位置調整テーブルの印字位置オフセット分格納位置をずらして格納する。そして、置き換え情報テーブル内ピッチ情報分カレントポイントを移動して終了する。
【0051】
上記説明においては、補正情報は、文字サイズと、印字位置の情報のみだったが、網かけや、白黒反転等の修飾を行なう範囲(大きさ)を通常はセルの大きさとしているが、セルのサイズで修飾するのでは完全互換が取れない場合、置換えの際の補正情報を持つことにより、さらに細かい調整が可能である。
【0052】
また、テーブルとして互換情報を持たない場合に、名称選択されたビットマップのみ、従来に近い出力を得るよう以下のように処理することも可能である。
【0053】
まず、プログラムROM13のプログラムにより、指定された名称のフォントがRAM19上のフォントテーブルにないことを確認した後、前記プログラム上で規定されたルールに則った名称かどうかを判定する。ここでは、名称は以下のようにルール付けられていることとする。
【0054】
AorK〕 〔240dpi でのドット数〕 〔MorG〕 〔グラフィックセット名称〕
A:半角…横、縦 M:明朝 J83,J78
K:全角…縦のみ G:ゴシック FOMA,KATA,HIRA
したがって、K32M.J83は、全角明朝、32dot×32dot(9.6point)のJIS83グラフィックセットのフォントである、ということになる。
【0055】
このルールにしたがい、明朝、9.6ポイント、JIS83グラフィックセットのフォントを属性選択する。属性選択を行なうことにより、近い属性のフォントが選択され、出力される。また、ビットマップフォントとスケーラブルフォントのパターンの大きさの比や、印字位置調整の情報を、テーブル情報としてプログラム上に持って調整することも可能である。
【0056】
さらに、第1の発明の実施の形態も含めて、スケーラブルから、疑似ビットマップを出力する説明を行なったが、ビットマップフォントをスケーラブルフォントの高速化に使用するSドットフォントとして使用するための、置き換え情報をフォントデータとして、および、置き換え情報テーブルとして持つことも可能である。
【0057】
(第3の発明の実施の形態)
次に、フォント毎の情報としてだけでなく、文字パターン毎の情報として、個別情報を持ち、パターンの共有を行なう場合について説明を行なう。
【0058】
図11に示したように、フォントのヘダー情報と、そのフォントの文字パターンへのオフセットを持って、実際のパターン情報を出力する手順において、パターンデータは、図12に示すように枠の大きさは違うが文字自体の大きさはほぼ同じ場合に、図13に示したように、実際の文字の部分だけをパターンとして持ち、枠からのオフセットは、文字毎の情報として個別に持ち、制御することにより、文字毎に調整が可能である。図に示したように、パターン毎の情報のインデックス番号はオフセット情報の一部として、パターンへのオフセットの上位2ビットをインデックス情報として管理することにより、処理手順はほとんど変えることなく、実現可能となる。
【0059】
また、図14に示したように、縦書き用のパターンと横書き用のパターンが位置だけでなく、90度回転したパターンであるような場合にも、文字毎のヘダー情報として回転情報を持つことにより、パターンの共有が可能である。
【0060】
回転情報として、変換マトリクスを持つことにより、回転だけでなく変形による斜体等のパターン共有も可能である。さらに、これらのパターン毎の情報は、内蔵のフォントデータとしてだけでなく、RAM上の登録データはもちろん、文字パターンのキャッシング処理においても有効である。キャッシング処理とは、スケーラブルフォントの同じパターンを、文章中に繰り返し使用する場合に、一度展開したものをRAM上に記憶しておき、2回目以降は、スケーラブルデータから展開せずに、記憶してあるパターンを出力することにより高速化を計る処理である。ここにおいて、パターン毎の情報も、キャッシングすることにより、より、効果の高いキャッシングが可能となる。
【0061】
これらパターン毎の情報を持つ場合、パターンデータがスケーラブルデータであろうが、ビットマップデータであろうが有効であることはいうまでもない。また、フォーマットについて、他のフォーマットを用いても実現が可能である。
【0062】
【発明の効果】
以上述べたように本発明によれば、選択されたフォントを置き換えて処理できるため、従来との互換を図りながらフォントのメモリ容量を削減できる。
【図面の簡単な説明】
【図1】本発明を適用可能な第1の出力装置の構成を示す断面図である。
【図2】本発明の実施の形態を示すプリンタ制御システムの構成を説明するブロック図である。
【図3】従来処理におけるフォントデータフォーマットを示す図である。
【図4】発明の実施の形態の処理におけるフォントデータフォーマットを示す図である。
【図5】フォント選択に使用するフォントテーブルの詳細図である。
【図6】フォント選択(属性選択)の手順を示すフローチャートである。
【図7】従来のフォント処理における文字パターンの説明図である。
【図8】従来のフォント処理における文字パターンの説明図である。
【図9】各種テーブルを説明する図である。
【図10】他の実施例におけるフォントデータの詳細図である。
【図11】パターン情報を出力する手順を説明する図である。
【図12】出力用パターンを説明する図である。
【図13】フォントデータを説明する図である。
【図14】横書き用縦書き用ビットマップパターンを説明する図である。
【図15】フォントデータを説明する図である。
【図16】フォントの出力手順を示すフローチャートである。
【符号の説明】
1 CPU
2 RAM
3 ROM
4 システムバス
12 CPU
13 ROM
19 RAM
3000 ホストコンピュータ
1000 プリンタ

Claims (13)

  1. フォントを選択する選択手段と、
    前記選択手段により選択されたフォントが置き換えフォントであるか判別する判別手段と、
    前記判別手段により置き換えフォントでないと判別された場合、前記選択手段により選択されたフォントに対応するフォントデータをユーザ指定のサイズでスケーリングして文字パターンを生成し、前記判別手段により置き換えフォントであると判別された場合、前記選択手段により選択されたフォントに対応するフォントデータを置換え情報の文字サイズを参照してスケーリングして文字パターンを生成する生成手段と
    印字位置の調整が必要であるか判別する判定手段と、
    前記判定手段により印字位置の調整が必要であると判定された場合、前記作成手段により作成された文字パターンを印字位置調整情報に従い補正した位置に描画する描画手段と、
    現在印字中の文字に修飾が指定されており、修飾の補正が必要である場合、修飾の情報を印字位置調整情報に従い補正して修飾を行う修飾手段とを有することを特徴とする文字処理装置。
  2. 前記生成手段により生成された文字パターンを出力する出力手段を有することを特徴とする請求項1記載の文字処理装置。
  3. 前記出力手段は、プリンタであることを特徴とする請求項2記載の文字処理装置。
  4. 前記修飾手段は、現在印字中の文字に修飾が指定されており、修飾の補正が必要である場合、修飾の情報をセル位置補正のオフセット情報を含む印字位置調整情報に従い補正して網掛けまたは白黒反転修飾を行うことを特徴とする請求項1記載の文字処理装置。
  5. 前記修飾手段は、現在印字中の文字に修飾が指定されており、修飾の補正が必要である場合、修飾の情報をアンダーラインの位置補正情報を含む印字位置調整情報に従い補正してアンダーライン修飾を行うことを特徴とする請求項1記載の文字処理装置。
  6. フォントを選択する選択ステップと、
    前記選択ステップにより選択されたフォントが置き換えフォントであるか判別する判別ステップと、
    前記判別ステップにより置き換えフォントでないと判別された場合、前記選択ステップにより選択されたフォントに対応するフォントデータをユーザ指定のサイズでスケーリングして文字パターンを生成し、前記判別ステップにより置き換えフォントであると判別された場合、前記選択ステップにより選択されたフォントに対応するフォントデータを置換え情報の文字サイズを参照してスケーリングして文字パターンを生成する生成ステップと
    印字位置の調整が必要であるか判別する判定ステップと、
    前記判定ステップにより印字位置の調整が必要であると判定された場合、前記作成ステップにより作成された文字パターンを印字位置調整情報に従い補正した位置に描画する描画ステップと、
    現在印字中の文字に修飾が指定されており、修飾の補正が必要である場合、修飾の情報を印字位置調整情報に従い補正して修飾を行う修飾ステップとを有することを特徴とする文字処理方法。
  7. 前記生成ステップにより生成された文字パターンを出力手段により出力する出力ステップを有することを特徴とする請求項記載の文字処理方法。
  8. 前記出力手段は、プリンタであることを特徴とする請求項記載の文字処理方法。
  9. 前記修飾ステップは、現在印字中の文字に修飾が指定されており、修飾の補正が必要である場合、修飾の情報をセル位置補正のオフセット情報を含む印字位置 調整情報に従い補正して網掛けまたは白黒反転修飾を行うことを特徴とする請求項記載の文字処理方法。
  10. 前記修飾ステップは、現在印字中の文字に修飾が指定されており、修飾の補正が必要である場合、修飾の情報をアンダーラインの位置補正情報を含む印字位置調整情報に従い補正してアンダーライン修飾を行うことを特徴とする請求項記載の文字処理方法。
  11. フォントを選択する選択プログラムと、
    前記選択プログラムにより選択されたフォントが置き換えフォントであるか判別する判別プログラムと、
    前記判別プログラムにより置き換えフォントでないと判別された場合、前記選択プログラムにより選択されたフォントに対応するフォントデータをユーザ指定のサイズでスケーリングして文字パターンを生成し、前記判別プログラムにより置き換えフォントであると判別された場合、前記選択プログラムにより選択されたフォントに対応するフォントデータを置換え情報の文字サイズを参照してスケーリングして文字パターンを生成する生成プログラムと
    印字位置の調整が必要であるか判別する判定プログラムと、
    前記判定プログラムにより印字位置の調整が必要であると判定された場合、前記作成ステップにより作成された文字パターンを印字位置調整情報に従い補正した位置に描画する描画プログラムと、
    現在印字中の文字に修飾が指定されており、修飾の補正が必要である場合、修飾の情報を印字位置調整情報に従い補正して修飾を行う修飾プログラムとを記憶したことを特徴とするプロセッサによりアクセスされるメモリ。
  12. 前記修飾プログラムは、現在印字中の文字に修飾が指定されており、修飾の補正が必要である場合、修飾の情報をセル位置補正のオフセット情報を含む印字位置調整情報に従い補正して網掛けまたは白黒反転修飾を行うことを特徴とする請求項11記載のメモリ。
  13. 前記修飾ステップは、現在印字中の文字に修飾が指定されており、修飾の補正が必要である場合、修飾の情報をアンダーラインの位置補正情報を含む印字位置調整情報に従い補正してアンダーライン修飾を行うことを特徴とする請求項11記載のメモリ。
JP06624496A 1996-03-22 1996-03-22 文字処理装置、文字処理方法、及び、メモリ Expired - Fee Related JP3814330B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP06624496A JP3814330B2 (ja) 1996-03-22 1996-03-22 文字処理装置、文字処理方法、及び、メモリ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06624496A JP3814330B2 (ja) 1996-03-22 1996-03-22 文字処理装置、文字処理方法、及び、メモリ

Publications (2)

Publication Number Publication Date
JPH09254459A JPH09254459A (ja) 1997-09-30
JP3814330B2 true JP3814330B2 (ja) 2006-08-30

Family

ID=13310271

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06624496A Expired - Fee Related JP3814330B2 (ja) 1996-03-22 1996-03-22 文字処理装置、文字処理方法、及び、メモリ

Country Status (1)

Country Link
JP (1) JP3814330B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8253951B2 (en) 2004-06-10 2012-08-28 Sharp Laboratories Of America, Inc. Systems and methods for determining when to download a resource to a printing device as part of a print job
JP2007265086A (ja) * 2006-03-29 2007-10-11 Kyocera Mita Corp フォント追加制御装置およびフォント追加制御プログラム
JP5238334B2 (ja) * 2008-04-23 2013-07-17 エムケー精工株式会社 電光表示システム

Also Published As

Publication number Publication date
JPH09254459A (ja) 1997-09-30

Similar Documents

Publication Publication Date Title
EP0895183B1 (en) Print control apparatus and method for page layout preparation
JP3092711B2 (ja) 出力制御装置及び方法
US5233685A (en) Method and apparatus for integrated graphical and textual character printing
JP3111811B2 (ja) 文字間隔調整装置および方法
KR970008546B1 (ko) 문자 또는 도형의 처리방법
JP3014247B2 (ja) 文字生成方法及びその装置
KR100306862B1 (ko) 문자 패턴 생성 장치 및 문자 패턴 생성 장치 제어 프로그램을 기억한 매체
JP4978304B2 (ja) 印刷制御装置および印刷制御プログラム
JP3814330B2 (ja) 文字処理装置、文字処理方法、及び、メモリ
JPH06167963A (ja) 文字パターンの発生方法及び装置
JP3486467B2 (ja) 画像記録装置及びその制御方法
EP0481787B1 (en) Output method and apparatus
JP4785601B2 (ja) 画像形成装置
JP3308663B2 (ja) 画像形成装置
JPH0755572B2 (ja) 印字装置
JP3450869B2 (ja) ビットイメージデータ生成装置およびビットイメージデータ生成方法
JP2000194349A (ja) 文字パターン出力装置及び方法並びに記録媒体
JP3143520B2 (ja) 文字処理装置及び方法
JP3100784B2 (ja) 文字処理方法及びその装置
JP2580965B2 (ja) プリンタ装置
JP3419450B2 (ja) 画素データ処理装置および方法
JPH0930069A (ja) 出力装置及び出力方法
JP3220437B2 (ja) 出力制御装置及び方法
JP3437293B2 (ja) 文字出力方法及び文字処理装置
JPH04350897A (ja) 文字発生方法及び装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051129

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060124

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060530

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060605

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090609

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100609

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110609

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120609

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120609

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130609

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees