JP2860204B2 - 出力装置及び当該装置における解釈プログラムの選択方法 - Google Patents
出力装置及び当該装置における解釈プログラムの選択方法Info
- Publication number
- JP2860204B2 JP2860204B2 JP4125136A JP12513692A JP2860204B2 JP 2860204 B2 JP2860204 B2 JP 2860204B2 JP 4125136 A JP4125136 A JP 4125136A JP 12513692 A JP12513692 A JP 12513692A JP 2860204 B2 JP2860204 B2 JP 2860204B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- data
- interpretation
- determination
- output
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0005—Accepting output data; Preparing data for the controlling system
- G06K2215/0011—Accepting output data; Preparing data for the controlling system characterised by a particular command or data flow, e.g. Page Description Language, configuration commands
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Record Information Processing For Printing (AREA)
Description
置における解釈プログラムの選択方法に関するものであ
り、特に複数の解釈プログラム中の1つを用いて入力デ
ータから出力データを生成する出力装置及び及び当該装
置における解釈プログラムの選択方法に関するものであ
る。
高精細・高速性を可能にしたページプリンタ、特にレー
ザビームプリンタが上げられる。そして、最近ではアウ
トラインフォントをはじめとする拡大縮小によらず滑ら
かな文字を印刷する機能を始めとし、様々な機能を有す
るものも登場している。
のアプリケーションソフトの資産を継承すべく、それら
のアプリケーションが印刷対象としていた従来のプリン
タをエミュレートする機能を有していることが多い。ま
た、プリンタ側で解釈できるプリンタ言語も多数あるの
で、それらの言語コマンドも解釈できるようにするた
め、複数機種をエミュレートする装置も登場している。
ムの作成は過去に使われていたプリンタ言語のみに限ら
ず、将来、新たなものが出現することが予想される。従
って、そうした状態にも対応させることが望まれる。
発生した場合に備え、装置自身にROMパックのような
記憶装置を着脱できるI/Fを持たせることで対処して
いる。
たI/Fはその数がせいぜい2つ、あるいは3つ止まり
であり、それ以上にすると装置が大型化し、結果的にコ
ストアップにつながる。また、そうしたROMパックを
装着した場合、そのROMパックに納められたプログラ
ムが操作に係る全処理を行うので、その操作処理に係る
プログラムの開発だけでも、大変な労力を要する。
鑑みなされたものであり、複数の解釈プログラム中の1
つを用いて出力データを生成させる装置に、新たな解釈
プログラムをメモリに追加登録可能としつつ、入力デー
タをその新たに登録した解釈プログラムで解釈できるか
どうかを事前に判断するプログラムもメモリに登録する
ことで、新たな解釈プログラムが正常に動作すること
を、それが動作する以前に判断することを可能にし、且
つ、その新たな解釈プログラムによる意図した出力デー
タを得ることを可能ならしめる出力装置及び及び当該装
置における解釈プログラムの選択方法を提供しようとす
るものである。
置は以下の構成を備える。
ログラムに、外部装置より入力した制御コマンドを含む
入力データが適合するかどうかを判断するための判断プ
ログラムの対を少なくとも1つ有し、適合する解釈プロ
グラムを用いて、前記入力データを解釈して出力データ
を生成し出力する出力装置であって、新たな解釈プログ
ラム及び当該新たな解釈プログラム用の前記判断プログ
ラムを前記外部装置から入力し、所定のメモリに登録す
る登録手段と、前記判断プログラムの1つを用いて、前
記入力データが当該判断プログラムの適合性の判定対象
である解釈プログラムに適合するかどうかを判断させ、
適合すると判断した場合には該当する解釈プログラムを
起動させて前記入力データを解釈させて出力データを生
成させ、適合しないと判断された場合には他の解釈プロ
グラム用の判断プログラムを用いて当該他の解釈プログ
ラムに適合するかどうかを判断させる制御手段とを備え
ることを特徴とする出力装置。
置における解釈プログラムの選択方法は以下の工程を備
える。
に、外部装置より入力した制御コマンドを含む入力デー
タが適合するかどうかを判断するための判断プログラム
の対を少なくとも1つ有し、適合する解釈プログラムを
用いて、前記入力データを解釈して出力データを生成し
出力する出力装置における解釈プログラムの選択方法で
あって、新たな解釈プログラム及び当該新たな解釈プロ
グラム用の前記判断プログラムを前記外部装置から入力
し、所定のメモリに登録し、前記判断プログラムの1つ
を用いて、前記入力データが当該判断プログラムの適合
性の判定対象である解釈プログラムに適合するかどうか
を判断させ、適合すると判断した場合には該当する解釈
プログラムを選択し、適合しないと判断された場合には
他の解釈プログラム用の判断プログラムを用いて当該他
の解釈プログラムに適合するかどうかを判断させて選択
し、選択された解釈プログラムを用いて前記入力データ
を解釈させて出力データを生成させる。
な解釈プログラム及び前記入力したデータが当該新たな
解釈プログラムに適合するかどうかを判断するための判
断プログラムを外部装置から入力し、所定のメモリに登
録する。そして、この判断プログラムを用いて、入力デ
ータがメモリに登録した新たな解釈プログラムに適合す
るかどうかを判断させ、適合すると判断した場合にはそ
の判断プログラムの適合性判定対象の解釈プログラムを
選択し、適合しないと判断された場合には他の解釈プロ
グラム用の判断プログラムを実行させて、解釈プログラ
ムを選択する。そして、選択された解釈プログラムでも
って入力データを解釈させて出力データを生成させる。
を詳細に説明する。尚、実施例ではレーザビームプリン
タ(解像度300dpi)を例にして説明するが、以下
の説明から明らかになるように、プリント方式として
は、熱転写、インクジェット、或いは、ワイヤードット
インパクト方式等にも適応可能である。従って、かかる
方式で本願発明が限定されるものではない。
施例の画像形成装置の構成概念図を示している。同図に
従って本実施例の動作概要を説明すると以下の通りであ
る。
の外部装置301,302が接続されるようになってお
いる(そのための複数の入力インターフェースを備えて
いる)。101は後述するプリンタ制御ユニットを示
し、外部装置301,302から送出された印刷データ
を入力部11が受信する。そして、入力部11は一番最
初に印刷データを送出してきた外部装置のみのデータを
有効とし、その外部装置から印刷データが入力され続け
ている間は、他の装置からの印刷データ受信を不能にす
る。
され、本装置のどの解析部で印刷処理するのかを判断す
る。換言すれば、入力部11は、受信した印刷データ中
に含まれる制御コマンドを調べ、そのコマンドがどのよ
うなプリンタ言語に対応するものかを判断し、複数の解
析部12a,12bのうちそのプリンタ言語を解釈でき
る解析部にその印刷データを渡す処理を行う。すなわ
ち、この入力部11は自動インターフェース切り換え及
び自動解析部切り換えを含む。
ば、異なるプリンタ言語中の制御コマンドを解釈する機
能を有するエミュレーションプログラムとなるが、実施
例で注目すべき点は、いずれの解析部(エミュレーショ
ンプログラム)でも共通な中間表現の言語データ(以
下、単に中間言語データという)を発生するだけで、ド
ット展開に係る処理は行わない。尚、この中間言語デー
タについての詳細は後述する。
入力してその結果を、中間表現発生標準ライブラリ13
(ドットパターン発生にかかる各種関数の集合体)及び
フォントスケーラ15a,15bを参照することで、ド
ットパターン生成用の中間言語データを作成する。繰り
返すが、各解析部で解析するプリンタ言語はそれぞれ異
なるが、それぞれで生成される中間言語データが共通で
ある。
の共通なドットパターン展開部(ラスタライザ)14に
渡すことが可能になり、そこでドットデータとしてペー
ジメモリ(ビットマップメモリ)16に展開される。こ
うして、ページメモリ18に展開されたドットイメージ
を順次ビデオ信号として出力部17が出力機構(プリン
タエンジン)200に出力することで、印刷が行われる
ことになる。
ミュレーションプログラム)を新規に作成する場合、ド
ット展開処理にかかるプログラムを含まず、単にラスタ
ライザ14が実行できる形式のデータを作成するプログ
ラムだけでよいので、制作にかかる負担は軽減する。ま
た、その解析部の規模(メモリ容量)も当然のことなが
ら小さくできるので、コスト低減に寄与することも可能
になる。
語について説明する。
て比較的にわかり易いものである。換言すれば、その印
刷データは、画像形成装置内のCPUが直接解釈できる
形式のデータにはなっていない。また、1つ1つの印字
データを受信しては、その受信データをその場で解釈し
て対応するドットデータを発生する処理を行ってもよい
のであるが、それに要する時間は無視できず、結果とし
て外部装置は印刷データ出力処理から解放されるまでの
時間が長くなる。
レベルの言語データ(CPUが解釈し易い形式のデー
タ)に変換し、その変換データを記憶保持させる。そし
て、その低レベル言語データが後述する中間言語エリア
24Cに例えば1ページ分蓄えられたとき、実際のドッ
ト展開処理を行うようにする。ここで言う低レベル言語
データを実施例では中間言語データと呼んでいる。
種、拡大率、印字位置、回転方向、修飾情報等様々な情
報があってはじめて、CPUは1つの文字パターンを発
生し、それを印刷用メモリに展開できる。そこで、実施
例における各解析部12a,12bで発生する中間言語
データの形式は、下記の如く、そのデータが何の処理の
ためのデータであるのかを識別する識別コード、及び、
その処理に渡すパラメータが連続した形式とした。
…識別コード、p1、p2、…pn、識別コード、p
1、p2、…pm、…(p1等はパラメータを示し、そ
のパラメータ数は識別コードに依存する) ラスタライザ14は、こうして生成された中間言語デー
タを実行する場合には、その識別コードに対応する関数
(サブルーチンプログラム)を中間表現発生標準ライブ
ラリ13から取り出し(或いは直接コールし)、それを
実行する。このとき、対応するパラメータが存在するの
であれば、その実行に先だって、そのパラメータも引き
渡す。
れの概略を簡単に示したのが、図4及び図5である。図
4は文字ハンドリングにかかる処理内容を示し、図5は
イメージにかかる処理内容を示している。図4について
簡単に説明すると、解析部12a(又は12b)は入力
部11を介して受信したデータ中に含まれる位置指定コ
マンド、フォント選択コマンド、文字コード等を受ける
と、そのデータを解析し、中間言語発生標準ライブラリ
13内に格納された各種関数を特定する識別情報(ID
コード)と、それに付随させる引き数(パラメータ)を
発生し、中間表現の情報を生成する。これは、図5のイ
メージに対する解析部12a(又は12b)でも同じで
ある。生成される情報としては、文字の場合には文字の
ビットマップ、物理X,Y座標の指定、クリッピング情
報をはじめとする各種情報がある。また、イメージデー
タの場合、解析部12a(又は12b)は入力した各イ
メージの確保及びその確保されたイメージを特定する情
報を発生すると共に、中間表現のデータにはその確保し
格納されたイメージを展開する位置やクリッピング情
報、更には必要な場合(受信した印刷データ中にその旨
の指示データがある場合)にはイメージ変形情報等を中
間表現のデータにする。
例を図22に示し、イメージハンドリング時のそれを図
23に示す。文字ハンドリング時に発生する中間言語に
は、図示の如く、クリッピング情報、描画論理情報、拡
大率情報、ビットマップパターン等がある。また、イメ
ージハンドリング時の中間言語にも同様の形式のデータ
の他、イメージパターンに関するものが含まれる。勿
論、これら中間言語データが実施例で扱う中間言語デー
タの全てではない。文字或いはイメージのいずれにして
も、発生する中間言語データの先頭には、各中間言語デ
ータが何を意味するのかを示す識別IDコード(呼び出
す関数を特定する情報)が存在する。そして、各識別I
Dの後に続く情報は、その識別情報の処理を行う(つま
り、ライブラリ13内の関数を読み出す)ときに渡され
る引き数であって、それらの個数は識別IDに依存して
いる。
及びイメージハンドリング共通に存在する)とは、指定
された矩形領域(その左上隅のX,Y座標と横幅と高さ
で特定される)内でのみ、文字パターン或いはイメージ
を展開するようにするためのものである。換言すれば、
これ以降のデータ展開に対しては、更なるクリッピング
情報がない限り、この領域を越えた部分には展開しない
ようにする宣言文である。また、描画論理情報(文字ハ
ンドリング及びイメージハンドリング共通に存在する)
における、引き数“描画論理情報”には、パターン或い
はイメージを展開するときの論理式を指定する指示情報
を格納する。具体的には、文字パターン(或いはイメー
ジ)をページメモリ16に展開するとき、既に展開され
ているパターンに対して上書き展開か、透過展開(論理
和)か、或いは排他的論理和展開かなどを指示する情報
が格納される。尚、この場合も、格別な指示がない限り
は、これ以降に対しては同じ論理に従って処理されるこ
とを示している。また、拡大率情報には、実施例の装置
においては、縦方向と横方向の拡大率が独立しているの
で、2つの引き数を有する。また、ビットマップパター
ンに対しては、展開しようとするビットマップパターン
1つを特定する情報の他に、その展開する座標位置のパ
ラメータが存在する。
もほぼ同様であるが、ここではその特徴である受信イメ
ージを展開する場合の中間言語データの形式について説
明する。先に説明したように、イメージデータを受信し
た場合には、解析部12a(又は12b)は受信イメー
ジを後述するRAM24のワークエリア24aにそのデ
ータを格納し、それに対して一意なID番号を発生す
る。図23(C)中の“イメージパターンコード”は、
このIDコードを示している。また、それに続く、6つ
のパラメータは、勿論、イメージパターン展開する処理
(ライブラリ中の関数)に渡される引き数であるが、そ
の意味するところは、イメージパターンコードで特定さ
れるイメージデータをどのように変形させるのかを示す
データである。具体的には、これら6つの情報は、イメ
ージパターン展開の関数が変形処理するときに使われる
行列式内の各要素を示している。イメージパターン展開
関数は、指定されたパターン中の個々の画素の原座標
(XS,YS)を、与えられたパラメータからなる行列式
によって計算することで変形先座標(XD,YD)を計算
し、原パターン中の(XS,YS)に存在する画素を座標
(XD,YD)に転送する処理を行う。尚、これらの座標
は、印刷用のイメージを展開するメモリの絶対的な座標
値を示すものではなく、クリッピング情報で特定された
矩形内のローカルな座標値である。
a,12bに入力される印字データの形式は、当然のこ
とながら、その解析部の解析対象となるプリンタ言語に
よって大きく異なる。
の画像形成装置の具体的構成例を図2に示す。尚、後述
する各実施例においても本図を共通の構造として説明し
ている。
御ユニットであり、21a,21bは外部装置(ホスト
コンピュータ等)301,302と接続するためのイン
ターフェース(I/F)である。但し、各々のインター
フェースはパラレル、シリアルをとわずどのようなもの
であっても良い。22は本装置全体の制御を司るCP
U、23はCPU22が実行する処理手順中の基本的な
プログラム(I/Fを介してのデータ取り込みや後述す
る図6のフローチャートに係るプログラム等)を記憶し
ているROMである。24はRAMであって、CPU2
2が各種処理を実行中に参照されるワークエリア24
a、受信した印刷データの一時格納用の受信バッファエ
リア24b、或いは先に説明した中間言語データを格納
する中間言語エリア24c等を有する。尚、このRAM
24には、これ以外にも各種データエリアが作成される
が、それについては後述する。25a,25bは各種プ
リンタ言語を解釈するエミュレーションプログラムを格
納したメモリ(図1で言うところの解析部12a,12
bに対応する)であり、このメモリ25a,25bはR
OM等で構成される。26はドットパターン発生にかか
る各種関数の集合体を記憶した中間言語発生用ライブラ
リメモリ(図1で言うところの中間表現発生標準ライブ
ラリ13に対応する)である。また、27a,27b
は、フォントスケーラデータを格納しているメモリであ
って、実施例で図示の如く複数種類の文字(例えばゴシ
ック体とか明朝体等)を印刷することができるようにな
っている。これらフォントスケーラメモリ27a,27
bの内容には、それぞれの文字種のアウトラインフォン
トデータ15及びそのデータに基づいて最終的な文字パ
ターンを発生させるためのプログラムが含まれている。
このメモリ26,27a,27bもROM等で構成され
る。
ージを展開するだけの容量を有したビットマップメモリ
(図1のページメモリ16に対応する)である。29
は、ビットマップメモリ28に展開されたドット情報を
順次ビデオ信号としてプリンタエンジン部200に出力
する出力I/Fである。31は、各種設定内容等を記憶
保持している不揮発性メモリ(以下、NVRAM)であ
って、例えばE2PROM等から構成されている。30
は各種操作ボタン及びLCD表示部から構成される操作
パネルである。32は、外部装置301,302からR
AM24上のワークエリア24aにダウンロードした各
種データを必要に応じて格納するハードディスクであ
る。そして、これら各構成要素はシステムバス33に接
続されている。
ンタエンジン部200の構造を図3に従って説明する。
体であり、101はプリンタ制御ユニットであって、図
2における点線枠内の各構成要素が含まれている。この
プリンタ制御ユニット101は主に文字情報を対応する
文字パターンのビデオ信号に変換してレーザドライバ1
02に出力する。
3を駆動するための回路であり、出力I/F29を介し
て入力されたビデオ信号に応じて半導体レーザ103か
ら発射されるレーザ光104をオン・オフ切り換えす
る。レーザ光104は回転多面鏡105で左右方向に振
らされて静電ドラム106上を走査露光する。これによ
り、静電ドラム106上には文字パターンの静電潜像が
形成されることになる。この潜像は静電ドラム106周
囲に配設された現像ユニット107により現像された
後、記録紙に転写される。この記録紙にはカットシート
を用い、カットシート記録紙はLBP100に装着した
用紙カセット108に収納され、給紙ローラ109及び
搬送ローラ110と111とにより、装置内に取り込ま
れて、静電ドラム106に供給される。
施例では、例えば外部装置301が印刷データを出力し
てくると、対応するI/F21aがCPU22に割り込
み信号を発生する。この割り込み信号を受けて、CPU
22は割り込み処理(ルーチン)を実行するが、簡単に
説明すれば以下の通りである。
たI/F21aから受信データを読み出し、それを受信
バッファエリア24bに格納する処理を行う。但し、電
源投入時など、全てのI/Fが解放されている場合に
は、最初に印刷データを入力した(最初に割り込み信号
を発生した)I/Fのみを有効にし、その他のI/Fを
不能状態にする(印字データを受け付けないようにす
る)。
いれて、実施例のCPU22の動作処理手順(メイン処
理)を図6に従って説明する。
ップS1において初期化処理を行う。この初期化処理に
は入力用I/F21a,21bを全て解放する等の処理
も含まれる。次のステップS2では、全てのI/F21
a,21bをオンライン状態(データ受信可能状態)に
なっているかどうか判断し、オンライン状態のときには
ステップS3に進んで、受信バッファ24bに印刷デー
タが格納されているかどうかを判断する。
プS4に進んで、I/F解放時間を初期化(不図示のタ
イマをリセット)する。このI/F解放時間の意味は後
述の説明から明らかにする。
データをどの解析部で処理するのか決定しているかどう
か、つまり、エミュレーションプログラムメモリ25
a,25bのどれを使用するか決まっているかどうかを
判断する。初期状態では、これが決まっていないので、
この場合にはステップS6に進むが、印刷データに対す
る処理はある程度進んでいて、つまり、エミュレーショ
ンプログラムが決まっている場合にはステップS9に分
岐する。
4bに格納されたデータ中に含まれる制御コードに基づ
いてどのプリンタ言語のデータなのかを判断し、対応す
るエミュレーションプログラムを選択する処理を行う。
そして、このとき、対応するエミュレーションプログラ
ムが存在しない、或いは複数個存在し得ると判断された
場合(ステップS7)には、ステップS8に進んで予め
決められたエミュレーションプログラムを選択する。勿
論、このとき複数の候補が存在すると判断した場合に
は、その候補の中で一番優先順位が高いエミュレーショ
ンプログラムを選択する(優先順位は予め決められてい
るものとする)。こうして、1つのエミュレーションプ
ログラムが決定されることになる。
ョンプログラムの1つが決定されていると判断された場
合、ステップS6で適合するエミュレーションプログラ
ムの1つが選択された場合、更にはデフォルトのエミュ
レーションプログラムが選択された場合、処理はステッ
プS9に進む。
は既に決定されている)エミュレーションプログラム
(解析部)を実行(コール)する。ここで実行されるエ
ミュレーションプログラムは、各々のエミュレーション
毎にその処理内容が異なるが、いずれにしてもこの解析
処理が実行されて本メインルーチン(ステップS10)
に復帰した場合には、1枚の記録紙に印刷すべき中間言
語データがRAM24中の中間言語エリア24cに格納
されている状態になっている。
れた中間言語データに基づいてビットマップメモリ28
に対応するパターン展開処理を行う。
ーンが展開されると、処理はステップS11に進み、出
力I/F29を介した公知のビデオ信号の出力処理によ
る印刷処理を行うことになる。そして、1枚の印刷処理
が終わると、ステップS3に戻り、上述した処理を繰り
返すことになる。この間、I/F解放時間がその都度リ
セットされると共に、エミュレーションプログラムが決
定されているわけであるから、ステップS5の判断は
“YES”になって、ステップS6〜ステップS8の処
理は行われない。
ラムに基づく印刷処理を進めていって、それまで印刷デ
ータを出力していた外部装置が印刷データ出力を止め、
且つ、受信バッファエリア24bに処理すべきデータが
存在しなくなると、処理はステップS3からステップS
12に分岐することになる。
したか否かを判断する。つまり、いままで受信していた
外部装置が一連の印字データの出力処理を終えたのか否
かを判断する。所定時間経過していないと判断した場合
には、ステップS2に進んで、ステップS3及びS12
をループすることになる。そして、所定時間経過して
も、それまで受信対象であった外部装置から印刷データ
が受信されないと判断した場合には、ステップS12か
らステップS13に進んで、全ての入力用のI/F21
a,21bを解放して、全ての外部装置301,302
からの受信を許可状態にする。
ぞれのエミュレーションプログラムで作成された共通な
中間言語データに従ってビットマップメモリ28への展
開を行うので、それぞれのエミュレーションプログラム
はそのビットマップデータの展開処理から解放されるこ
とになる。
ンプログラムの解析処理内容の一例を図7のフローチャ
ートに従って説明する。尚、以下に説明するエミュレー
ションプログラムは、ページ記述言語の1つに対応した
ものである。
ラム、例えばエミュレーションプログラムメモリ25a
がコールされると、ステップS21において、受信バッ
ファエリア24bに格納された受信データを使って解析
処理をする。そして、次のステップS22において、そ
のデータが改ページコマンド(印字コマンド)であるか
どうかを判断する。改ページコマンドでないと判断した
ら、ステップS23に進んで、そのデータを解析し(ス
テップS23)、中間言語発生用ライブラリメモリ26
に格納されている各種関数に対する識別コード及びそれ
らに渡すパラメータを生成し(ステップS24)、それ
を中間言語エリア24cに格納する。以下、改ページコ
マンドが検出されるまで、ステップS21以下の処理を
繰り返し、その改ページコマンドが検出されたら、メイ
ン処理のステップS10に復帰する。
では、中間言語エリア24cには1ページ分の中間言語
データが生成されることになる。
刷を行うことを意図したプリンタ専用のプリンタ言語に
対するエミュレーションプログラムは、原則としては同
様の処理を行う。但し、必ずしも改ページコマンドを受
信するとは限らないので、ステップS22に対応する処
理では、そのエミュレートしようとする言語の対する行
ピッチに基づく行数も判断の対象とする。
定することがないプリンタ言語を受信しても(そのエミ
ュレーションプログラムが特定のフォントスケーラに依
存しないプログラムであっても)、ユーザが操作パネル
30上で使用するフォントスケーラを選択したり、或い
は予めそれを決めておくだけで(設定内容はNVRAM
に記憶保持させれば良い)、自分好みの印刷結果を得る
ことが可能になる。換言すれば、装置自身が有するフォ
ントスケーラ15a,15bを共通の財産として、自由
に使用することも可能になる。
通な中間言語発生用ライブラリメモリ26を有すること
で、各エミュレーションプログラム25a,25bはそ
の共通な中間言語データを生成するだけの処理を行えば
良い。従って、エミュレーションプログラムを新規に開
発する場合の開発環境は向上し、且つ、そのために要す
るメモリ量も少なくて済むので、コスト低減を図ること
も可能になる。また、1つのエミュレーションプログラ
ムが、複数のフォントスケーラのフォントを切り換え使
用することも可能になる。
ージ分の中間言語を生成する度にメインルーチンに復帰
したが、必ずしも1ページ分の中間言語データを待つ必
要はない。また、中間言語データに基づくドットパター
ン展開処理が並行動作するようにしても良い。
(第1の実施例という)では、装置自身が予め有してい
たフォントスケーラ15a,15bを使用したが、外部
装置が適宜、所望とするフォントスケーラ15cを本装
置に送信し、登録するようにしても良い。つまり、本装
置がフォントスケーラデータを外部装置からダウンロー
ドする。この例を第2の実施例として以下に説明する。
なお、新規登録するフォントスケーラは1種類に限定さ
れるものではなく2種類以上であっても構わない。
処理概要を説明する。
らは、本装置にダウンロードさせるための制御コマンド
(ダウンロードコマンド)と、ダウンロードするのがフ
ォントスケーラデータであることを示すコード、送出す
る総バイト数及びフォントスケーラデータとチェックサ
ム用のデータを送ってくる。尚、ダウンロードコマンド
以外にそのデータの種類を示すコードを送って来るの
は、ダウンロード対象はフォントスケーラデータのみで
はないからである(それについては後述する実施例で説
明する)。このダウンロードコマンドかどうかの判断処
理は、その性質上、入力部11が通常の印字データが入
力された場合のプリンタ言語を判別する処理(図6のス
テップS6)の前に判断するものとする。なお、外部装
置は外部装置301に限らず、外部装置302或いはそ
の他の外部装置であってもよい。
ウンロードコマンドかどうかの判断処理、及びもしそう
ならダウンロードを行う処理を追加してもよい。ここで
ダウンロードするプログラム自身は、必ずしも各エミュ
レーションプログラムが有する必要はなく、そのプログ
ラムをROM23に記憶させておけば、ダウンロードコ
マンドか否かの判断とその処理をコールする処理だけで
よいことになるので、その分のメモリ量は無視できる。
ードコマンドとフォントスケーラ(拡大縮小し、文字パ
ターンを発生するプログラム及びそのアウトラインフォ
ントデータ)の総バイト数を示すデータに続いて、実際
のフォントスケーラのデータを送出する。そして、それ
らデータはRAM24の受信バッファ24bに格納され
るものとする。
ータは、最終的にRAM24上のワークエリア24aに
格納される。そして、RAM24のワークエリア24a
に確保されているフォントスケーラの管理情報(フォン
ト属性テーブル)が更新される。しかし、電源をOFF
にするとこのダウンロードしたデータ及びフォント属性
テーブルが消えてしまうので、必要に応じて、ハードデ
ィスク32にこのダウンロードしたデータを格納し、電
源をONにした際に,このデータに基づいてフォント属
性テーブルを再生させることもできる。尚、RAM24
は不図示のバックアップ電源によってその内容が保持さ
れるようになっているものとする。
ードしたフォントスケーラ15cを共通の資源として活
用することも可能になっている。すなわち、既存のフォ
ントスケーラ15a,15bと同様に、ダウンロードし
たフォントスケーラデータは、各エミュレーションプロ
グラムに依存せず、自由に選択することが可能になる。
施例のCPU22の動作処理手順を図9のフローチャー
トに従って説明する。尚、このフローチャートは図6の
ステップS5の判断処理で“NO”と判断されたとき、
すなわち、ステップS6の直前に挿入される。
なるのは、印刷すべき解析部(エミュレーションプログ
ラム)が決定していないと判断されたとき、つまり、電
源投入して最初に印刷データを受信した場合、或いは、
一連の印刷処理が完了して全ての入力用のI/F21
a,21bを解放した後に新たなデータを受信した場合
に実行されることに注目されたい。
“NO”になって、図9に示す本処理のステップS31
に進むと、その受信データはダウンロードコマンドであ
るかどうかが判断される。ダウンロードコマンドではな
く、印刷データであると判断した場合には図6のステッ
プS6に進む。この後は、先に説明した通りである。
ンドを受信したと判断した場合にはステップS32で、
続いて入力された総バイト数を得る。そして、ステップ
S33でこれから受信する総バイト数と、RAM24の
ワークエリア24aの空きエリアとの比較をし、そのデ
ータをRAM24のワークエリア24aに確保できるか
どうか判断する。確保できないと判断した場合には、そ
れ以降に受信するデータを読み飛ばし、図6のステップ
S2に戻る。このとき、読み飛ばし処理が完了した時点
で、それによって不能にされた他の入力I/Fを解放す
る。
確保できると判断した場合には、ステップS35でこれ
から送られてくるデータはフォントスケーラデータであ
るかどうかを判断する。フォントスケーラデータ以外で
あると判断したら、ステップS36に進んで、対応する
データのダウンロードを行ってステップS2に戻る。こ
のときも、ダウンロード処理が完了した時点で、それに
よって不能にされた他の入力I/Fを解放する。
ーラデータであると判断されたらステップS37に進ん
で、順次入力されるデータをRAM24に確保されたワ
ークエリア24aに格納していく。このとき、受信した
データを格納するとき、各バイトの総和を求めていく。
更に、必要に応じて、ワークエリア24aにダウンロー
ドしたデータをハードディスク32に格納することもで
きる。
4のワークエリア24aにダウンロードされるが、最後
に受信したバイトとそれまで受信して加算した結果を比
較し、データが正しく受信されたかどうかを判断する。
正しく受信できたと判断した場合には、ステップS39
に進んでワークエリア24aに予め確保されていたフォ
ント属性テーブルにダウンロードしたフォントを登録す
る。また、チェックサムがNGになった場合には、ステ
ップS40に進んで、ダウンロードした全データを削除
し、確保したワークエリア24aを他の処理に使用でき
るよう解放する。
は、その受信処理によって不能にされた他の入力I/F
を解放し、ステップS2に戻る。
10(各実施例共通)に示す。図示の如く、このテーブ
ルは、フォントスケーラの名称と、そのフォントスケー
ラを実現するプログラムの格納先アドレスから構成され
ている。図示では、上述したフォントスケーラデータの
ダウンロードによって更新された状態を示している。
尚、図示で“EOT”はそのテーブルの終わりを示すマ
ークである。
ば、フォントスケーラデータを外部装置(ホストコンピ
ュータ等)からダウンロードすることができるので、フ
ォントスケーラ15cの新規登録が行えるようになる。
れていたフォントスケーラ15a,15b及び新たに登
録したフォントスケーラ15cを適宜切り換えることが
できるので、表現力豊かな出力を得ることが可能にな
る。
部(エミュレーションプログラム)をダウンロードする
例を説明する。この目的は、勿論、装置に新たな回路を
設けることなく、それまで対応していなかったプリンタ
言語にも容易に対処させることにある。説明を簡単にす
るため、実施例の装置の解析部(エミュレーションプロ
グラム)12a,12bは標準装備であって、新規に解
析部12cをダウンロードする例を説明する。勿論、こ
れら解析部12a,12b,12cは第1、第2の実施
例で説明した中間言語データを生成するものである。
12bの2つのエミュレーションプログラムが設けら
れ、それに新たに第3の解析部12cを登録する例を示
している。例えば、外部装置301からダウンロードし
たエミュレーションプログラムのデータは、第2の実施
例と同様に、最終的にRAM24上のワークエリア24
aに格納されるものとする。また、ワークエリア24a
には、現在どのような解析部が登録されているのか等を
管理する管理テーブル(後述する)が設けられているも
のとする。なお、外部装置は外部装置301に限らず、
外部装置302或いは、その他の外部装置であってもよ
い。
ログラムのダウンロードの処理は、第2の実施例で説明
したフォントスケーラデータのダウンロードと実質的に
同じであるので、ここでの詳述は省略する。ただし、か
かるエミュレーションプログラムのダウンロードは、図
9におけるステップS36で行われるものである。
全データ中におけるエミュレーションプログラムデータ
の内容を示す。
ションプログラムがどのプリンタ言語に対応しているの
かを示す名称があって、続いて判別用プログラムデー
タ、設定用プログラムデータ、最後に実際のエミュレー
ションプログラムデータがある。なお、これらデータの
前には、第2の実施例で説明したダウンロードコマンド
と、ダウンロードするのがエミュレーションデータであ
ることを示すコード、総出する総バイト数等がある。
における図6ステップS6の処理で活用されるものであ
り、入力されてきたデータが自身のエミュレーションに
対応するのかを判別するものである。従って、この判別
用プログラムには自身が解析するプリンタ言語の特徴的
な制御コマンド(及びどのような形式のパラメータが付
加されるかを示すデータフォーマット情報等)が複数個
含まれる。
ミュレーションプログラムを使用する上での各種設定事
項を決定するためのプログラムであり、その詳細につい
ては後述する。
M24のワークエリア24aに無事ダウンロードした
後、CPU22は、その中の各データに応じて装置の各
種テーブルを更新する。具体的には、ワークエリア24
aに設けられた判別用プログラムテーブル及び管理テー
ブルを更新する。すなわち、それらのテーブルに新たに
ダウンロードしたエミュレーションプログラムを登録す
る。
を図13、管理テーブルの一例を図14に示す。尚、図
示で“EOT”は、そのテーブル内のデータの終わりを
示すマークである。また、これらテーブルのフォーマッ
トは前述した各実施例及び後述する実施例に共通であ
る。
ミュレーションプログラムA、Bを装置が最初から有し
ていることを示し、エミュレーションプログラムCが新
規に登録されたことを示している。因みに、第1の実施
例の図6ステップS6における自動判別処理は、この判
別用プログラムテーブルによって示された各解析部の判
別用プログラムを順次コールし、その結果に基づいて判
断している。例えば、各判別用プログラムは、受信バッ
ファエリア24bに格納されたデータ中の制御コマンド
が自身のエミュレーションプログラムに適合するか否か
の判断結果を返すプログラムと考えればよい。
“エミュレーションC”以外の項目は最初から装置に備
えられたものである。
れる。その環境の中には、例えば、以下で説明するイン
ターフェースの転送速度の様な、全エミュレーションで
共通に使える設定もあれば、各エミュレーション固有の
環境設定もある。こうした環境設定は最終的にNVRA
M31に格納され、電源を切ってもその内容は保持され
る。
たように、複数の入力用I/F21a,21bが設けら
れている。その中にはパラレルインターフェースもあれ
ば、RS-232C等のシリアルインターフェースも含
まれる。
ス”とは、そうしたI/F関係を管理している(I/F
関係のプログラムの格納先アドレスが記憶されてい
る)。このプログラムには、例えば、ある入力用のI/
Fがシリアルインターフェースである場合には、その転
送速度等を設定するなどの処理が含まれる。
装着されている記録紙のサイズ、マージン等の設定を管
理している(制御関係のプログラムの格納先アドレスが
記憶されている)。
リ量(適宜増設することが出来るようになっている)、
受信バッファエリア24bのサイズ(このサイズを大き
くすると外部装置は、自身の印刷データ出力処理から早
くの開放される)等の設定を管理している。
のエミュレーション固有の環境設定のためのプログラム
と、そのエミュレーションプログラムの格納先アドレス
を管理している。環境設定のプログラムとしては、例え
ば、エミュレーションAでは、デフォルトでどのような
種類やサイズのフォントを選択するか等である。
格納された各種環境値を工場出荷時の値に戻すことを意
味する。
プログラムの登録は、この“初期化”の直前に挿入され
る。
ラム中、ダウンロードしたプログラム及びデータ以外
は、すべてエミュレーションプログラムメモリ25a、
或いは25bに格納されているものである。
ーザインターフェースの処理手順を説明する。ただし、
以下の説明におけるセットアップキー、選択キーは共に
操作パネル30に設けられたキー群の一部であり、
“i”はRAM24中のワークエリアに確保された管理
テーブルの項目を示すポインタ変数である。
たと判断すると、ステップS62でそのキーはセットア
ップキーかどうか判断される。セットアップキー以外の
場合には、対応する処理を行うべくステップ63に進
む。
ら、ステップS64に進んで変数iに初期値“0”を代
入し、次のステップS65で変数iを1つだけインクリ
メントする。次のステップS66では、管理テーブルの
i番目の項目が“EOT”であるか否かを判断する。も
し、その“EOT”であると判断したら、ポインタ変数
iはテーブルの終わりを差し示していることになるか
ら、次のステップS67で先頭項目を差し示すように訂
正する。
目の項目名を操作パネル30に設けられたLCD表示部
に表示し、ステップS69で次のキー入力を待つ。
であると判断したら(ステップS70)、処理はステッ
プS65に戻って上述した処理を行うことで次の項目名
を表示する。こうして、セットアップキーが押下される
たびにLCD表示部には操作項目名が順次表示されるよ
うになる。
目的の項目名の表示を確認すると、選択キーを押す。こ
の選択キーの押下を検出すると(ステップS71)、処
理はステップS72に進んで、そのときの変数iが示し
ている項目の設定用プログラムをコールする。各設定用
プログラムは、各々の項目に依存しているのでここでの
説明は割愛するが、いずれの場合も、ユーザはLCD表
示部に表示された内容に従って操作を進めるようにな
る。
ば、格別な改造することになしに、適宜、所望とするエ
ミュレーション機能を付加させることが可能になる。
にかかる共通な環境設定の操作部分と、各エミュレーシ
ョン独自の環境設定の操作部分が分離されており、この
状態は新たなエミュレーションをダウンロードした場合
も維持される。換言すれば、ユーザから見れば、ダウン
ロードしたエミュレーションプログラムについての操作
知識を増やせば良いだけで、統一された操作環境は維持
されることになり、極めて有益なユーザインターフェー
スを提供できる。更には、エミュレーションプログラム
を開発する立場から見た場合、該当するエミュレーショ
ンに係る操作のプログラムを作成するだけでよいので、
開発が容易になる。
プログラムデータ中には、印刷データ自身がサポートす
るプリンタ言語によるものかを判別するプログラムも含
まれているので、自動判別機能がそのまま実行できるよ
うになる。
3の実施例では、いずれの解析部でも最終的に中間言語
データを生成した。そして、共通の展開処理によってビ
ットマップメモリ28に対応するビットパターンを展開
し、印刷処理した。
と、外部装置(ホストコンピュータ等)の処理能力(処
理速度)の向上には目覚ましいものがある。そこで、上
述した中間言語データを生成する処理を外部装置に分担
してもらって、印刷処理をより高速にすることを実現す
る例を第4の実施例として説明する。
す。
装置302)はそれ上で動作しているアプリケーション
プログラム304が印刷データをプリンタドライバ30
7を介して出力しているのに対し、本第4の実施例の対
象としている外部装置(例えば外部装置301)は、中
間言語ライブラリ13、フォントスケーラ15a,15
b、解析部12a,12b等の中間言語を生成するため
に必要な構成要素を有し、プリンタドライバ305又は
306を介して、アプリケーションプログラム303が
出力する印刷データを中間言語データのレベルまで落と
して画像形成装置の制御ユニット101へ出力する。
間言語データのフォーマットを示す。図示において、
“1000”は中間言語データの総バイト数を示す数値
であり、この部分はその場に応じて変化する。この場合
には、“#>GS,1000CR”からエンドマーク
(排紙指示コマンド)の“#>EOT”の間にある10
00バイトが中間言語データを意味する。
に格納されたデータが中間言語データであるか否かを判
断する処理を行う。そして、受信バッファエリア24b
に格納されたデータが中間言語形式のデータでないと判
断したら、上述した第1〜第3の実施例の処理を行い、
もしそうならそのデータに基づくビットパターンを直接
ビットマップメモリ(ページメモリ16)に展開し、印
刷処理を行えばよい。
直前(或いは図9のステップS31の直前でも良い)に
図17に示すうな判断処理ステップS81を挿入するこ
とで、実現できる。
あると判断してステップS10に進んだ場合のビットマ
ップ展開処理では、処理対象の中間言語データが中間言
語エリア24cではなく、受信バッファエリア24bに
あるものとして処理を行う。
形成装置自身は中間言語データを直接入力する様にす
る。従って、前述した第1〜第3の実施例で説明した中
間言語データ生成に係る処理から開放され、その印刷処
理を向上させることができる。しかも、新たにエミュレ
ーションプログラムをダウンロードする場合、メモリを
増設しなければならない事態が発生する危惧があるが、
本第4の実施例によれば、そういった危惧を一切考慮す
る必要がなくなり、ローコストで多数のエミュレーショ
ン機能を具備した装置を提供できるようになる。
てくるプリンタ言語に様々なものがあるのは上述した通
りである。また、プリンタ言語には例えば文章に適した
もの、図形に適したもの、更にはイメージ等に適したも
のがある。
に基づく画像を1ページ中に記録、すなわち、複数のエ
ミュレーションによる同一ページに記録することを可能
にする例を説明する。
19に示す如く、エミュレーションデータの種別とデー
タ長(サイズ)を示すエミュレーション指示コマンドと
実際の印刷データの対から構成されるデータが続けて送
られてくる。そして、最後には印刷処理を実行して排紙
させる排紙指示コマンドが付加される。
キスト印字に適したプリント言語データを示しており、
以下、、エミュレーションデータBは図形、エミュレー
ションデータCはドットイメージ、エミュレーションデ
ータDは図形であることを示している。
20に示す。
ドは、“#>”で始まるエミュレーション名、カンマ、
サイズ、及び改行コードで構成されている。また、排紙
指示コマンドは“#>EOT”である。
動作処理内容例を図21に示し、以下に説明する。
初期化処理をはじめとする、オンライン状態か否か、且
つ受信バッファエリア24bにデータが存在することが
検出された場合のI/F解放時間リセット、更には受信
バッファにデータが存在しない場合の処理は、第1の実
施例と同様であるものとし、以下ではステップS95以
降について説明する。
24bに格納されたデータを未だ処理されていないデー
タの最初の部分を調べ、それがエミュレーション指示コ
マンドであるか否かを判別する。ここでエミュレーショ
ン指示コマンドであると判断した場合にはステップS9
6に進んで、指示されたエミュレーションプログラム
(解析部)に指示されたサイズ分の中間言語データの生
成処理を行わせる。この処理が終わったら、ステップS
93に戻り、次のデータに対する処理を行うようにす
る。こうして、エミュレーション指示コマンドで指示さ
れた分の中間言語データを生成していく。
タの先頭部分、或いは1つの解析部による中間言語デー
タ生成に使用された受信データの後に続くデータがエミ
ュレーション指示コマンドではないと判断された場合、
処理はステップS97に進んで、それは排紙指示コマン
ドであるかどうかを判断する。排紙指示コマンドでもな
いと判断した場合にはステップS98に進んで、先に説
明した第1〜第4の実施例の処理を行う。
場合には、それまでの処理で中間言語エリア24cに生
成された中間言語に基づくパターンをビットマップメモ
リ28に展開し、次のステップS100でそれを出力す
る。
レーションプログラム)によって1ページ分の中間言語
データが生成されてから、パターン展開処理したが、1
つ1つの解析部で中間言語データが生成される度に、パ
ターン展開処理を行うようにしても良い。この場合に
は、ステップS96の直後にその展開処理を行えば良
い。
作する様にする場合にはこの限りではない。また、各解
析部(エミュレーションプログラム)は、メインルーチ
ンからコールされるときに、処理対象のバイト数を受
け、そのバイト数分の中間言語データ生成処理を行えば
良いので、その説明は省略する。
ば、1ページ中に複数のプリンタ言語に基づく画像を記
録し出力することができるので、見栄えのするの画像を
得ることが可能になる。
指示コマンドを送出してくるには、外部装置上で動作す
るOS、或いはプリンタドライバにその種の機能を付加
させれば良い。従って、場合によっては、外部装置上で
動作しているアプリケーションプログラムで、作成中の
文章、図形及びイメージ等に対してそれぞれのプリンタ
言語を指示することも考えられる。更には、文章を作成
するアプリケーション、図形を作成するアプリケーショ
ン、スキャナ等から読み取ったイメージを編集するアプ
リケーションから、それぞれ指定された部分情報をカッ
トアンドペースト形式でOSが合成するようにし、それ
を出力するときに本第5の実施例で示した形式のデータ
を構築し、出力するようにしても良い。
部装置(301,302)及びそれらに対応する入力イ
ンターフェース(21a,21b)、解析部(12a,
12b)、フォントスケーラ(15a,15b)は2種
類に限定されるものでなく、2種類以上でも構わない。
また、新規登録する解析部12c、フォントスケーラ1
5cは1種類に限定されるものではなく、2種類以上で
も構わない。
るシステムに適用しても良いし、1つの機器から成る装
置に適用しても良いし、システム或いは装置にプログラ
ムを供給することによって達成される場合にも適用でき
ることは言うまでもない。なお,本実施例の画像形成装
置としてレーザービームプリンタを例にして説明した
が、これに限定されるものでなく、以下で説明するイン
クジェットプリンタ等にも本発明が適用できることは言
うまでもない。
IJRAの概観図である。同図において、駆動モータ5
013の正逆回転に連動して駆動力伝達ギア5011,
5009を介して回転するリードスクリュー5005の
螺旋溝5004に対して係合するキャリッジHCはピン
(不図示)を有し、矢印a,b方向に往復移動される。
このキャリッジHCには、インクジェットカートリッジ
IJCが搭載されている。5002は紙押え板であり、
キャリッジ移動方向にわたって紙をプラテン5000に
対して押圧する。5007,5008はフォトカプラ
で、キャリッジのレバー5006のこの域での存在を確
認して、モータ5013の回転方向切換等を行うための
ホームポジション検知手段である。5016は記録ヘッ
ドの前面をキャップするキャップ部材5022を支持す
る部材で、5015はこのキャップ内を吸引する吸引手
段でキャップ内開口5023を介して記録ヘッドの吸引
回復を行う。5017はクリーニングプレードで、50
19はこのプレードを前後方向に異動可能にする部材で
あり、本体支持板5018にこれらは支持されている。
プレードは、この形態でなく周知のクリーニングプレー
ドが本例に適用できることはいうまでもない。又、50
12は、吸引回復の吸引を開始するためのレバーで、キ
ャリッジと係合するカム5020の移動に伴って移動
し、駆動モータからの駆動力がクラッチ切換等の公知の
伝達手段で移動制御される。
引回復は、キャリッジがホームポジション側領域にきた
ときにリードスクリュー5005の作用によって反れら
の対応位置で所望の処理が行えるように構成されている
が、周知のタイミングで所望の作動を行うようにすれ
ば、本例には何れも適用できる。 (ii)制御構成の説明 次に、上述した装置構成の各分の記録制御を実行するた
めの制御構成について、図17に示すブロック図を参照
して説明する。制御回路を示す同図において、1700
は記録信号を入力するインターフェイス、1701はM
PU、1702はMPU1701が実行する制御プログ
ラムを格納するプログラムROM、1703は各種デー
タ(上記記録信号やヘッドに供給される記録データ等)
を保存しておくダイナミック型のRAMである。170
4は記録ヘッド1708に対する記録データの供給制御
を行うゲートアレイであり、インターフェース170
0、MPU1701,RAM1703間のデータの転送
制御も行う。1710は 記録ヘッド1708を搬送す
るためのキャリアモータ、1709は記録用紙搬送のた
めの搬送モータである。1705はヘッドを駆動するヘ
ッド土来場1706,1707は夫々搬送モータ170
9、キャリアモータ1710を駆動するモータドライバ
である。
ーフェース1700に記録信号が入るとゲートアレイ1
704とMPU1701との間で記録信号がプリント用
の記録データに変換される。そして、モータドライバ1
706,1707が駆動されるとともに、ヘッドドライ
バ1705に送られた記録データに従って記録ヘッドが
駆動され、印字が行われる。
制御構成に本発明の構成要素を組み込むことが可能であ
り、本発明が、レーザービームプリンタに限らず上記イ
ンクジェットプリンタ等にも適用できることは明らかで
ある。
数の解釈プログラム中の1つを用いて出力データを生成
させる装置に、新たな解釈プログラムをメモリに追加登
録可能としつつ、入力データをその新たに登録した解釈
プログラムで解釈できるかどうかを事前に判断するプロ
グラムもメモリに登録することで、新たな解釈プログラ
ムが正常に動作することを、それが動作する以前に判断
することを可能にし、且つ、その新たな解釈プログラム
による意図した出力データを得ることが可能になる。
合に、すぐさま確認できるようになる。
図である。
成図である。
を示す図である。
概念図である。
処理概念図である。
チャートである。
示すフローチャートである。
図である。
すフローチャートである。
を示す図である。
念図である。
ミュレーションプログラムデータのフォーマットを示す
図である。
一例を示す図である。
である。
内容を示すフローチャートである。
念図である。
すフローチャートである。
くる中間言語データのフォーマットを示す図である。
の関係の一例を示す図である。
トを示す図である。
ーチャートである。
言語の具体的なフォーマットを示す図である。
中間言語の具体的なフォーマットを示す図である。
の内部構造を示す図である。
の構成図である。
Claims (12)
- 【請求項1】 解釈プログラムと、当該解釈プログラム
に、外部装置より入力した制御コマンドを含む入力デー
タが適合するかどうかを判断するための判断プログラム
の対を少なくとも1つ有し、適合する解釈プログラムを
用いて、前記入力データを解釈して出力データを生成し
出力する出力装置であって、 新たな解釈プログラム及び当該新たな解釈プログラム用
の前記判断プログラムを前記外部装置から入力し、所定
のメモリに登録する登録手段と、 前記判断プログラムの1つを用いて、前記入力データが
当該判断プログラムの適合性の判定対象である解釈プロ
グラムに適合するかどうかを判断させ、適合すると判断
した場合には該当する解釈プログラムを起動させて前記
入力データを解釈させて出力データを生成させ、適合し
ないと判断された場合には他の解釈プログラム用の判断
プログラムを用いて当該他の解釈プログラムに適合する
かどうかを判断させる制御手段とを備えることを特徴と
する出力装置。 - 【請求項2】 前記制御手段は、使用する解釈プログラ
ムを用いて前記外部装置から入力される入力データ中の
制御コマンドと文字コードに基づく出力データを生成す
ることを特徴とする請求項第1項に記載の出力装置。 - 【請求項3】 前記解析プログラムはエミュレーション
プログラムであることを特徴とする請求項第1項に記載
の出力装置。 - 【請求項4】 前記出力データは、ビットイメージデー
タであることを特徴とする請求項第1項に記載の出力装
置。 - 【請求項5】 前記判断プログラムは、当該判断プログ
ラムに対応する解釈プログラムに適合するかどうかを判
断するための特有の制御コマンドを複数有することを特
徴とする請求項第1項に記載の出力装置。 - 【請求項6】 前記メモリはハードディスク装置である
ことを特徴とする請求項第1項に記載の出力装置。 - 【請求項7】 解釈プログラムと、当該解釈プログラム
に、外部装置より入力した制御コマンドを含む入力デー
タが適合するかどうかを判断するための判断プログラム
の対を少なくとも1つ有し、適合する解釈プログラムを
用いて、前記入力データを解釈して出力データを生成し
出力する出力装置における解釈プログラムの選択方法で
あって、 新たな解釈プログラム及び当該新たな解釈プログラム用
の前記判断プログラムを前記外部装置から入力し、所定
のメモリに登録し、 前記判断プログラムの1つを用いて、前記入力データが
当該判断プログラムの適合性の判定対象である解釈プロ
グラムに適合するかどうかを判断させ、適合すると判断
した場合には該当する解釈プログラムを選択し、適合し
ないと判断された場合には他の解釈プログラム用の判断
プログラムを用いて当該他の解釈プログラムに適合する
かどうかを判断させて選択し、 選択された解釈プログラムを用いて前記入力データを解
釈させて出力データを生成させることを特徴とする解釈
プログラムの選択方法。 - 【請求項8】 前記出力装置は、選択された解釈プログ
ラムを用いて前記外部装置から入力される入力データ中
の制御コマンドと文字コードに基づく出力データを生成
することを特徴とする請求項第7項に記載の解釈プログ
ラムの選択方法。 - 【請求項9】 前記解析プログラムはエミュレーション
プログラムであることを特徴とする請求項第7項に記載
の解釈プログラムの選択方法。 - 【請求項10】 前記出力データは、ビットイメージデ
ータであることを特徴とする請求項第7項に記載の解釈
プログラムの選択方法。 - 【請求項11】 前記判断プログラムは、当該判断プロ
グラムに対応する解釈プログラムに適合するかどうかを
判断するための特有の制御コマンドを複数有することを
特徴とする請求項第7項に記載の解釈プログラムの選択
方法。 - 【請求項12】 前記メモリは不揮発性メモリ装置であ
ることを特徴とする請求項第7項に記載の解釈プログラ
ムの選択方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4125136A JP2860204B2 (ja) | 1992-05-18 | 1992-05-18 | 出力装置及び当該装置における解釈プログラムの選択方法 |
US08/061,740 US5671341A (en) | 1992-05-18 | 1993-05-17 | Image processing apparatus and method therefor |
EP93303809A EP0571168B1 (en) | 1992-05-18 | 1993-05-17 | Apparatus and method for printer language translation |
DE69322199T DE69322199T2 (de) | 1992-05-18 | 1993-05-17 | Vorrichtung und Verfahren für die Übersetzung von Druckersprachen |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4125136A JP2860204B2 (ja) | 1992-05-18 | 1992-05-18 | 出力装置及び当該装置における解釈プログラムの選択方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05318840A JPH05318840A (ja) | 1993-12-03 |
JP2860204B2 true JP2860204B2 (ja) | 1999-02-24 |
Family
ID=14902756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4125136A Expired - Fee Related JP2860204B2 (ja) | 1992-05-18 | 1992-05-18 | 出力装置及び当該装置における解釈プログラムの選択方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5671341A (ja) |
EP (1) | EP0571168B1 (ja) |
JP (1) | JP2860204B2 (ja) |
DE (1) | DE69322199T2 (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3919238B2 (ja) * | 1994-05-31 | 2007-05-23 | キヤノン株式会社 | 印刷システムおよび印刷システムの印刷制御方法および印刷制御装置 |
JPH09261457A (ja) | 1996-03-19 | 1997-10-03 | Canon Inc | 印刷制御装置並びに印刷制御装置のデータ処理方法およびコンピュータで読み出し可能なプログラムを格納した記憶媒体 |
US5877776A (en) * | 1996-04-26 | 1999-03-02 | Apple Computer, Inc. | Method and system for supporting multiple font formats by a font scaler sub-system |
DE29612159U1 (de) * | 1996-07-12 | 1996-08-29 | MAN Roland Druckmaschinen AG, 63075 Offenbach | Einrichtung zur schnellen Schaffung eines Fortdruckzustandes eines Druckwerkes |
US6870633B1 (en) * | 1996-09-30 | 2005-03-22 | Brother Kogyo Kabushiki Kaisha | Printing device |
US6097496A (en) * | 1997-04-21 | 2000-08-01 | Hewlett-Packard Company | Integrated display list and building tool for multiple personalities |
US6954278B1 (en) * | 1998-02-13 | 2005-10-11 | Lexmark International, Inc. | Dynamic printer operating system |
US6525831B1 (en) * | 1998-12-02 | 2003-02-25 | Xerox Corporation | Non-format violating PDL guessing technique to determine the page description language in which a print job is written |
JP3763343B2 (ja) * | 1999-07-22 | 2006-04-05 | セイコーエプソン株式会社 | プリンタ装置、データ処理装置、プリンタシステム、印刷方法、並びにコンピュータが読出し可能なプログラムを格納した記憶媒体 |
JP2002132818A (ja) * | 2000-10-26 | 2002-05-10 | Seiko Epson Corp | サービス提供システム、サービス提供端末、クライアント端末及び記憶媒体 |
US6647437B2 (en) | 2001-05-15 | 2003-11-11 | Lexmark International, Inc. | Method for automatically detecting and processing binary postscript print jobs |
US7933048B2 (en) * | 2005-01-31 | 2011-04-26 | Canon Kabushiki Kaisha | Image reading apparatus, server apparatus, and image processing system |
US8005705B2 (en) * | 2006-09-07 | 2011-08-23 | International Business Machines Corporation | Validating a baseline of a project |
JP2009241524A (ja) * | 2008-03-31 | 2009-10-22 | Brother Ind Ltd | 画像出力装置 |
JP2008238827A (ja) * | 2008-06-09 | 2008-10-09 | Seiko Epson Corp | プリンタおよびこのプリンタを用いた印刷方法 |
JP2008265350A (ja) * | 2008-06-27 | 2008-11-06 | Seiko Epson Corp | インクジェットプリンタ |
JP2008247041A (ja) * | 2008-07-03 | 2008-10-16 | Seiko Epson Corp | プリンタおよびこのプリンタを用いた印刷方法 |
JP2008260304A (ja) * | 2008-07-03 | 2008-10-30 | Seiko Epson Corp | プリンタおよびこのプリンタを用いた印刷方法 |
JP6187077B2 (ja) * | 2013-09-18 | 2017-08-30 | セイコーエプソン株式会社 | 印刷装置、制御システム、及び制御方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH085213B2 (ja) * | 1987-03-04 | 1996-01-24 | ブラザー工業株式会社 | 印字装置 |
JPS63231957A (ja) * | 1987-03-20 | 1988-09-28 | Minolta Camera Co Ltd | プリンタ制御装置 |
US4992957A (en) * | 1988-03-17 | 1991-02-12 | Seiko Epson Corporation | Printer and method for utilizing character codes and control codes within a printer |
US5075874A (en) * | 1989-04-10 | 1991-12-24 | Eastman Kodak Company | Communications interface for computer output printer |
US5050098A (en) * | 1989-08-25 | 1991-09-17 | Lexmark International, Inc. | Printer initialization system |
US5303336A (en) * | 1990-05-14 | 1994-04-12 | Hitachi, Ltd. | Printing system including print server |
US5293466A (en) * | 1990-08-03 | 1994-03-08 | Qms, Inc. | Method and apparatus for selecting interpreter for printer command language based upon sample of print job transmitted to printer |
US5165014A (en) * | 1990-09-12 | 1992-11-17 | Hewlett-Packard Company | Method and system for matching the software command language of a computer with the printer language of a printer |
-
1992
- 1992-05-18 JP JP4125136A patent/JP2860204B2/ja not_active Expired - Fee Related
-
1993
- 1993-05-17 US US08/061,740 patent/US5671341A/en not_active Expired - Lifetime
- 1993-05-17 DE DE69322199T patent/DE69322199T2/de not_active Expired - Lifetime
- 1993-05-17 EP EP93303809A patent/EP0571168B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE69322199T2 (de) | 1999-05-20 |
EP0571168A1 (en) | 1993-11-24 |
EP0571168B1 (en) | 1998-11-25 |
JPH05318840A (ja) | 1993-12-03 |
DE69322199D1 (de) | 1999-01-07 |
US5671341A (en) | 1997-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2860204B2 (ja) | 出力装置及び当該装置における解釈プログラムの選択方法 | |
JP2839119B2 (ja) | 文字処理装置及び方法 | |
JP3209102B2 (ja) | プリントシステム、プリンタドライバ及びプリンタ | |
EP0684546B1 (en) | Printing apparatus, printing system, and a method for acquiring character resources of the printing system | |
EP0571145B1 (en) | Apparatus for printer command languages translation | |
JP2812412B2 (ja) | プリンタ制御装置及び方法 | |
JP2783345B2 (ja) | 出力装置及び方法 | |
JP2783344B2 (ja) | プリンタ制御装置及びその制御方法 | |
JP3159875B2 (ja) | 印刷方法及びその装置、及び印刷システム | |
JP3689445B2 (ja) | 印刷装置及びシステム、並びに制御方法 | |
JP3658025B2 (ja) | 電子機器及び該機器を有するデータ処理システム及び前記機器におけるデータ処理方法 | |
JPH10187390A (ja) | 情報処理装置および情報処理装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体 | |
JP3154243B2 (ja) | 印刷装置 | |
JP3397514B2 (ja) | 出力装置及び出力方法 | |
JP3192563B2 (ja) | 情報処理装置及び情報処理方法 | |
JP3610307B2 (ja) | 画像形成方法及び装置 | |
JPH08328782A (ja) | 情報処理装置、情報処理方法、印刷装置およびその制御方法、印刷システムおよびその制御方法 | |
JP2001092609A (ja) | 情報出力システム及びその制御方法、並びにその制御プログラムを記録した記録媒体 | |
JPH1158873A (ja) | ぺージプリンタ | |
JPH07121321A (ja) | 印刷装置及びその制御方法 | |
JPH06161688A (ja) | プリンタ | |
JPH09309233A (ja) | 画像形成装置及び画像形成方法 | |
JPH04290763A (ja) | 印刷装置 | |
JPH10333843A (ja) | 出力制御装置及び方法並びに出力システム | |
JPH11249853A (ja) | 画像形成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19981030 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081204 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091204 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091204 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101204 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111204 Year of fee payment: 13 |
|
LAPS | Cancellation because of no payment of annual fees |