(57)【特許請求の範囲】
【請求項１】
所定のフォームデータをフォーム・オーバレイ・データとして登録可能な印刷装置において、
印刷情報を受信する受信手段と、
特有な処理関数を備え、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、前記受信手段により受信された第１のページ記述言語の印刷情報を解釈する第１命令解釈実行手段と、
特有な処理関数を備え、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、前記受信手段により受信された第２のページ記述言語の印刷情報を解釈する第２命令解釈実行手段と、
前記第１命令解釈手段もしくは前記第２命令解釈手段によりフォーム・オーバレイで利用するフォーム・オーバレイ・データを記憶する記憶手段と、
前記第１命令解釈実行手段が備える特有の処理関数と、前記第２命令解釈実行手段が備える特有の処理関数についてそれぞれの処理関数のオブジェクトのアドレスと名称を登録関数テーブルに登録するテーブル登録手段と、
前記フォーム・オーバレイ・データが前記登録関数テーブルに登録されている処理関数を使用する場合に、前記フォーム・オーバレイ・データで使用される処理関数に対応する前記登録関数テーブルに登録されている名称を前記記憶手段に登録する名称登録手段と、
前記記憶手段に記憶されているフォーム・オーバレイ・データのフォーム・オーバレイが指示されると、前記記憶手段に登録されている名称に基づいて前記登録関数テーブルを参照して前記フォーム・オーバレイ・データで使用される処理関数のオブジェクトを実行し、フォーム・オーバレイ処理を実行する制御手段と、
を有することを特徴とする印刷装置。
【請求項２】
所定のフォームデータをフォーム・オーバレイ・データとして登録可能な印刷装置において、
印刷情報を受信する受信手段と、
特有な処理関数を備え、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、前記受信手段により受信された第１のページ記述言語の印刷情報を解釈する第１命令解釈実行手段と、
特有な処理関数を備え、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、前記受信手段により受信された第２のページ記述言語の印刷情報を解釈する第２命令解釈実行手段と、
前記第１命令解釈手段もしくは前記第２命令解釈手段によりフォーム・オーバレイで利用するフォーム・オーバレイ・データを記憶する記憶手段と、
前記第１命令解釈実行手段が備える特有の処理関数と、前記第２命令解釈実行手段が備える特有の処理関数についてそれぞれの処理関数のオブジェクトのアドレスが登録されている登録関数テーブルに基づいて、前記フォーム・オーバレイ・データで使用される処理関数のオブジェクトをフォーム・オーバーレイ・データに登録する関数登録手段と、
前記記憶手段に記憶されているフォーム・オーバレイ・データのフォーム・オーバレイが指示されると、前記記憶手段に登録されているフォーム・オーバレイ・データに登録されている処理関数のオブジェクトを実行し、フォーム・オーバレイ処理を実行する制御手段と、
を有することを特徴とする印刷装置。
【請求項３】
所定のフォームデータを登録しておき、フォーム・オーバレイにより印刷可能な印刷装置における印刷方法において、
特有の処理関数を実行可能であり、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、受信した第１のページ記述言語の印刷情報を解釈する第１命令解釈実行工程と、
特有の処理関数を実行可能であり、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、受信した第２のページ記述言語の印刷情報を解釈する第２命令解釈実行工程と、
前記第１命令解釈工程もしくは前記第２命令解釈工程によりフォーム・オーバレイで利用するフォーム・オーバレイ・データをメモリに記憶する記憶工程と、
前記第１命令解釈実行工程で実行可能な特有の処理関数と、前記第２命令解釈実行工程で実行可能な特有の処理関数についてそれぞれの処理関数のオブジェクトのアドレスと名称を登録関数テーブルに登録するテーブル登録工程と、
前記フォーム・オーバレイ・データが前記登録関数テーブルに登録されている処理関数を使用する場合に、前記フォーム・オーバレイ・データで使用される処理関数に対応する前記登録関数テーブルに登録されている名称を前記メモリに登録する名称登録工程と、
前記メモリに記憶されたフォーム・オーバレイ・データのフォーム・オーバレイが指示されると、前記メモリに登録されている名称に基づいて前記登録関数テーブルを参照して前記フォーム・オーバレイ・データで使用される処理関数のオブジェクトを実行し、フォーム・オーバレイ処理を実行する制御工程と、
を有することを特徴とする印刷方法。
【請求項４】
所定のフォームデータをフォーム・オーバレイ・データとして登録可能な印刷装置における印刷方法であって、
特有の処理関数を実行可能であり、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、受信した第１のページ記述言語の印刷情報を解釈する第１命令解釈実行工程と、
特有の処理関数を実行可能であり、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、受信した第２のページ記述言語の印刷情報を解釈する第２命令解釈実行工程と、
前記第１命令解釈工程もしくは前記第２命令解釈工程でフォーム・オーバレイで利用するフォーム・オーバレイ・データをメモリに記憶する記憶工程と、
前記第１命令解釈実行工程における特有の処理関数と、前記第２命令解釈実行工程における特有の処理関数についてそれぞれの処理関数のオブジェクトのアドレスが登録されている登録関数テーブルに基づいて、前記フォーム・オーバレイ・データで使用される処理関数のオブジェクトをフォーム・オーバーレイ・データに登録する関数登録工程と、
前記メモリに記憶されているフォーム・オーバレイ・データのフォーム・オーバレイが指示されると、前記メモリに登録されているフォーム・オーバレイ・データに登録されている処理関数のオブジェクトを実行し、フォーム・オーバレイ処理を実行する制御工程と、
を有することを特徴とする印刷方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、所定のフォームデータをフォーム・オーバーレイ・データとして登録可能な印刷方法及びその装置に関するものである。
【０００２】
【従来の技術】
プリンタ装置の中には、ホストコンピュータから転送される印刷データの量を減らして印刷処理を高速化するために、帳票などの表の罫線や、頻繁に使用される定型フォーム等をフォーム・オーバーレイ・データとしてプリンタ装置の内部に予め登録しておき、この登録されているオーバーレイデータと受信した印刷データとを合成して所望の印刷結果を得ることができる装置がある。このようなプリンタ装置を使用するホストコンピュータでは、可変データのみをプリンタ装置に送るだけで、所望の罫線などのオーバーレイ・データに可変データがオーバレイされた印刷結果を得ることができる。
【０００３】
技術の進歩により、さらに他のページ記述言語により登録されたフォーム・オーバーレイを利用することが可能となり、命令群解釈・実行手段を含むプログラムを印刷装置外部からＲＯＭでの供給やホストコンピュータからの供給等、様々な形式で供給することが可能となった。
【０００４】
また、従来より、ページ記述言語を解釈して印刷を行うプリンタ装置が知られており、このようなプリンタ装置は、複数の命令群解釈・実行部（制御プログラム）を備え、各ページ記述言語に対応する命令群解釈・実行部が独立して設けられている。そして前述のオーバレイデータは、各命令群解釈・実行部の機能を用いて登録および実行されているため、そのオーバレイデータで利用される関数と、その関数を実際に実行する制御プログラムであるオブジェクトのアドレスとが常に関連付けられている。こうして、各ページ記述言語でフォーム・オーバレイデータを登録することができ、さらに、他の記述言語により、その登録されているフォーム・オーバレイデータを利用して印刷することが可能になっている。
【０００５】
【発明が解決しようとする課題】
又、前述したプリンタ装置の機能のうち、複数の命令群解釈・実行部に共通する処理等を、そのプログラムが共通に利用できる関数群を内部に用意して実行するプリンタ装置も提案されている。
【０００６】
一般に、全ての処理を共通する関数群を用いて処理することは不可能であり、処理によっては、命令群解釈・実行部に特有の処理を行う必要がある。そのため場合によって、関数群の一部を命令群解釈・実行部ごとに切り換えて実行する必要がある。したがって、従来のフォーム・オーバレイデータの登録では、実行される命令群解釈・実行部、或は前述の関数が異なってしまい、登録されているフォーム・オーバレイデータが利用できないという問題があった。
【０００７】
本発明は上記従来例に鑑みてなされたもので、フォーム・オーバーレイデータを登録し、印刷装置に設けられている各種機能で使用できる印刷方法及びその装置を提供することにある。
【０００８】
また本発明の目的は、フォーム・オーバレイデータを解釈して処理する機能が削除された時、それに対応するフォーム・オーバレイデータの誤った処理を防止できる印刷方法及びその装置を提供することにある。
【０００９】
【課題を解決するための手段】
上記目的を達成するために本発明の印刷装置は以下のような構成を備える。即ち、
所定のフォームデータをフォーム・オーバレイ・データとして登録可能な印刷装置において、
印刷情報を受信する受信手段と、
特有な処理関数を備え、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、前記受信手段により受信された第１のページ記述言語の印刷情報を解釈する第１命令解釈実行手段と、
特有な処理関数を備え、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、前記受信手段により受信された第２のページ記述言語の印刷情報を解釈する第２命令解釈実行手段と、
前記第１命令解釈手段もしくは前記第２命令解釈手段によりフォーム・オーバレイで利用するフォーム・オーバレイ・データを記憶する記憶手段と、
前記第１命令解釈実行手段が備える特有の処理関数と、前記第２命令解釈実行手段が備える特有の処理関数についてそれぞれの処理関数のオブジェクトのアドレスと名称を登録関数テーブルに登録するテーブル登録手段と、
前記フォーム・オーバレイ・データが前記登録関数テーブルに登録されている処理関数を使用する場合に、前記フォーム・オーバレイ・データで使用される処理関数に対応する前記登録関数テーブルに登録されている名称を前記記憶手段に登録する名称登録手段と、
前記記憶手段に記憶されているフォーム・オーバレイ・データのフォーム・オーバレイが指示されると、前記記憶手段に登録されている名称に基づいて前記登録関数テーブルを参照して前記フォーム・オーバレイ・データで使用される処理関数のオブジェクトを実行し、フォーム・オーバレイ処理を実行する制御手段と、を有することを特徴とする．
上記目的を達成するために本発明の印刷装置は以下のような構成を備える。即ち、
所定のフォームデータをフォーム・オーバレイ・データとして登録可能な印刷装置において、
印刷情報を受信する受信手段と、
特有な処理関数を備え、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、前記受信手段により受信された第１のページ記述言語の印刷情報を解釈する第１命令解釈実行手段と、
特有な処理関数を備え、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、前記受信手段により受信された第２のページ記述言語の印刷情報を解釈する第２命令解釈実行手段と、
前記第１命令解釈手段もしくは前記第２命令解釈手段によりフォーム・オーバレイで利用するフォーム・オーバレイ・データを記憶する記憶手段と、
前記第１命令解釈実行手段が備える特有の処理関数と、前記第２命令解釈実行手段が備える特有の処理関数についてそれぞれの処理関数のオブジェクトのアドレスが登録されている登録関数テーブルに基づいて、前記フォーム・オーバレイ・データで使用される処理関数のオブジェクトをフォーム・オーバーレイ・データに登録する関数登録手段と、
前記記憶手段に記憶されているフォーム・オーバレイ・データのフォーム・オーバレイが指示されると、前記記憶手段に登録されているフォーム・オーバレイ・データに登録されている処理関数のオブジェクトを実行し、フォーム・オーバレイ処理を実行する制御手段と、を有することを特徴とする。
【００１０】
上記目的を達成するために本発明の印刷方法は以下のような工程を備える。即ち、
所定のフォームデータを登録しておき、フォーム・オーバレイにより印刷可能な印刷装置における印刷方法において、
特有の処理関数を実行可能であり、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、受信した第１のページ記述言語の印刷情報を解釈する第１命令解釈実行工程と、
特有の処理関数を実行可能であり、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、受信した第２のページ記述言語の印刷情報を解釈する第２命令解釈実行工程と、
前記第１命令解釈工程もしくは前記第２命令解釈工程によりフォーム・オーバレイで利用するフォーム・オーバレイ・データをメモリに記憶する記憶工程と、
前記第１命令解釈実行工程で実行可能な特有の処理関数と、前記第２命令解釈実行工程で実行可能な特有の処理関数についてそれぞれの処理関数のオブジェクトのアドレスと名称を登録関数テーブルに登録するテーブル登録工程と、
前記フォーム・オーバレイ・データが前記登録関数テーブルに登録されている処理関数を使用する場合に、前記フォーム・オーバレイ・データで使用される処理関数に対応する前記登録関数テーブルに登録されている名称を前記メモリに登録する名称登録工程と、
前記メモリに記憶されたフォーム・オーバレイ・データのフォーム・オーバレイが指示されると、前記メモリに登録されている名称に基づいて前記登録関数テーブルを参照して前記フォーム・オーバレイ・データで使用される処理関数のオブジェクトを実行し、フォーム・オーバレイ処理を実行する制御工程と、を有することを特徴とする。
上記目的を達成するために本発明の印刷方法は以下のような工程を備える。即ち、
所定のフォームデータをフォーム・オーバレイ・データとして登録可能な印刷装置における印刷方法であって、
特有の処理関数を実行可能であり、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、受信した第１のページ記述言語の印刷情報を解釈する第１命令解釈実行工程と、
特有の処理関数を実行可能であり、フォーム・オーバレイの登録命令に応じてフォーム・オーバレイ・データを登録するとともに、受信した第２のページ記述言語の印刷情報を解釈する第２命令解釈実行工程と、
前記第１命令解釈工程もしくは前記第２命令解釈工程でフォーム・オーバレイで利用するフォーム・オーバレイ・データをメモリに記憶する記憶工程と、
前記第１命令解釈実行工程における特有の処理関数と、前記第２命令解釈実行工程における特有の処理関数についてそれぞれの処理関数のオブジェクトのアドレスが登録されている登録関数テーブルに基づいて、前記フォーム・オーバレイ・データで使用される処理関数のオブジェクトをフォーム・オーバーレイ・データに登録する関数登録工程と、
前記メモリに記憶されているフォーム・オーバレイ・データのフォーム・オーバレイが指示されると、前記メモリに登録されているフォーム・オーバレイ・データに登録されている処理関数のオブジェクトを実行し、フォーム・オーバレイ処理を実行する制御工程と、を有することを特徴とする。
【００１２】
【実施例】
以下、添付図面を参照して本発明の好適な実施例を詳細に説明する。
【００１３】
図１は、本実施例のプリンタ１００を含む印刷システムの構成を示すブロック図で、プリンタ１００の構成を主に示している。
【００１４】
図１において、１０１はホストコンピュータで、実施例のプリンタ１００に接続され、プリンタ１００にプリント情報や各種データを転送している。
【００１５】
次に、プリンタ１００の構成を説明する。
【００１６】
１０２は入力バッファで、ホストコンピュータ１０１から送信される制御コードや各種データを受信して、その受信データを一時的に保存している。１０３はＣＰＵで、プログラムＲＯＭ１０４，１０５に記憶されている制御プログラムに従って、本実施例のプリンタ１００全体の動作を制御している。尚、これらプログラムＲＯＭ１０４，１０５に記憶されている制御プログラムは、例えばハードディスク１１２より読み出され、或はホストコンピュータ１０１よりＲＡＭ１１０にダウンロードされたものでも良い。これらプログラムＲＯＭ１０４，１０５に記憶されたプログラムは、ある命令群を解釈し、それに応じた処理を実行する命令群解釈・実行部１０６，１０７、フォーム・オーバーレイの登録および実行を行うフォーム・オーバーレイ登録・実行部１０８，１０９を備えている。
【００１７】
例えば、ここで命令群解釈・実行部１０６は、第１のページ記述言語を解釈してパターン展開するプログラムで、命令群解釈・実行部１０７は、第２のページ記述言語を解釈してパターン展開するプログラムである。
【００１８】
１１０はＲＡＭで、制御コード、データの解釈やプリントに必要な計算処理、画像データ処理のためのワークメモリに利用される。このＲＡＭ１１０の内部には、登録された関数の名称と関数の実際のプログラムであるオブジェクトのアドレスを関連付ける登録関数テーブル１１１が設けられている。１１２はハードディスクで、例えばフォーム・オーバーレイ情報を保存している。１１３はビットマップ画像生成部で、命令群解釈・実行部１０６，１０７の制御の下に得られた情報を、実際にプリントされるビットマップ画像に展開している。１１４はビットマップ画像送出部で、ビットマップ画像生成部１１３でビットマップに展開されたビットマップ画像を、本実施例のレーザビームプリンタ１００のプリンタ・エンジン１１６に送出している。１１５は操作パネルで、例えば各種キーやスイッチ、液晶などの表示器を有し、オペレータにより操作されて各種コマンドや操作指示が入力される。
【００１９】
次に、各処理過程を詳述する。
【００２０】
まず、ホストコンピュータ１０１から送信されてきた制御コード及び印刷データなどは、一旦入力バッファ１０２に蓄えられた後、ＲＡＭ１１０に転送されて蓄えられる。ＣＰＵ１０３は、プログラムＲＯＭ１０４或は１０５に記憶されているプログラムに従って、そのプログラムの命令群及びデータの種類により、命令群解釈・実行部１０６又は１０７によって、ホストコンピュータ１０１より送信されてきた命令群（ページ記述言語）を解釈し、ビットマップ画像生成部１１３においてビットマップ画像データを生成する。その後、こうして生成されたビットマップ画像データは、ビットマップ画像送出部１１４によりプリンタエンジン部１１６に出力されて、そこで印刷される。
【００２１】
ここで、命令群解釈・実行部１０６，１０７に特有な処理関数が存在しており、本実施例のプリンタ１００に関数を登録する場合には、登録関数テーブル１１１に、関数の実際のプログラムであるオブジェクトのアドレスと、その名称を登録する。そして、その関数を利用する場合には、登録関数テーブル１１１を参照して、所望の関数のオブジェクトのアドレスを捜し、その後、そのアドレスよりその関数を実行する制御プログラムを読み出し、処理を行って命令群の解釈及びその実行を行う。
【００２２】
いま、ホストコンピュータ１０１よりフォーム・オーバーレイの登録命令が送信された場合は、その送信されてきた登録命令（ページ記述言語など）に応じてフォーム・オーバーレイ登録・実行部１０８又は１０９により、登録するように指示されたフォーム・オーバーレイをハードディスク１１２に登録する。この場合、そのフォーム・オーバーレイが、登録されている関数を利用する処理を伴う場合は、その利用する関数名（図２の例では「関数２」）を登録関数テーブル１１１に存在する名称を用いてハードディスク１１２に登録する。これ以降、命令群解釈・実行部１０６，１０７は、初期化時に自分の登録する関数と、その関数のオブジェクトとの対応が取れるように、毎回、登録関数テーブル１１１に、同一関数であれば同一の名称を用いて関数を登録し、その関数を利用する。
【００２３】
このようにしてフォーム・オーバーレイを実行し、フォーム・オーバーレイに登録されている関数を利用する場合は、登録関数テーブル１１１から、その関数のオブジェクトを捜して、その登録関数を実行していく。
【００２４】
次に、処理関数の登録関数テーブル１１１への登録方法と、オーバーレイへの関数の登録、オーバーレイ利用時の関数の実行について詳述する。
【００２５】
図７は、図１に示すプログラムＲＯＭ１０４或は１０５に格納されている、登録関数テーブル１１１に関数を登録する制御プログラムの一例を示すフローチャートである。
【００２６】
まず、この命令群解釈・実行部は、初期化時にフォームオーバーレイで自分が利用する登録関数が存在する場合、登録関数テーブル１１１に関数を登録する。ステップＳ１で、全ての関数の登録が終了していなければステップＳ２に進み、登録関数を関数の名称と、その関数の実際の動作を記述したプログラムの実体である関数のオブジェクトのアドレス（命令群解釈・実行部内のオブジェクトアドレス）とを対応付けて登録関数テーブル１１１に登録する。この登録関数テーブル１１１の登録内容を図２に示す。本実施例においては、登録時の関数の名称は、命令群解釈・実行部のプログラムにより決定して、登録関数テーブル１１１に登録している。
【００２７】
図２は、このようなフォーム・オーバーレイの登録・実行時の動作を示す概念図である。
【００２８】
図２において、関数を登録関数テーブル１１１に登録する時に、「関数１」を関数のオブジェクトの存在するアドレス「ＸＸＸＸ」に対応付けて登録関数テーブル１１１の「Ｎｏ．１」に登録し、「関数２」を関数のオブジェクトの存在するアドレス「ＹＹＹＹ」に対応付けて登録関数テーブル１１１の「Ｎｏ．２」に登録している。
【００２９】
次に、ホストコンピュータ１０１からフォーム・オーバーレイの登録命令が送られると、登録関数を利用している処理をフォーム・オーバーレイで行う場合には、その関数をフォーム・オーバーレイに登録する必要がある。その場合には、登録関数テーブル１１１に登録されている登録関数の名称（図２の例では「関数２」）を用いて登録する。
【００３０】
図８は、オーバーレイで利用する関数を、オーバーレイに登録する際の制御プログラムの処理を示すフローチャートである。
【００３１】
まずステップＳ１１で、フォーム・オーバーレイの登録中に登録関数の処理が必要かどうかを調べ、その関数が登録関数テーブル１１１に登録されているときはステップＳ１２に進み、その登録関数の処理に対応する関数名をフォーム・オーバーレイに登録する。図２の例では、「関数２」がフォーム・オーバーレイ２０１に登録されている。
【００３２】
図９は、フォーム・オーバーレイで利用されている関数の処理を実行する制御プログラムの一例を示すフローチャートである。
【００３３】
フォーム・オーバーレイ内の関数を実行する際、まず、その関数が登録関数テーブル１１１に登録されているかを調べ（ステップＳ３１）、登録されている時はステップＳ３２に進み、登録関数テーブル１１１からフォーム・オーバーレイの実行する時に、その登録関数のオブジェクトのアドレスを命令群解釈・実行部１０６又は１０７のプログラム内でサーチし、その関数のオブジェクトにアクセスする。そして、その関数のオブジェクトを実行し、フォーム・オーバーレイ処理を行う。図２の例では、フォーム・オーバーレイ２０１に含まれている「関数２」のアドレスであるアドレス「ＹＹＹＹ」をサーチし、命令群解釈・実行部１０６又は１０７のプログラムのアドレス「ＹＹＹＹ」より「関数２」の「オブジェクト２」を実行する。
【００３４】
ここで、プログラムＲＯＭ１０４又は１０５が実装されている基板等が引き抜かれるなどにより、命令群解釈・実行部のプログラムが存在しなくなった場合の動作を以下に説明する。
【００３５】
図１０は登録関数を登録関数テーブル１１１から削除する処理の一例を示すフローチャートである。
【００３６】
図３は、命令群解釈・実行部のプログラムが存在しない場合のフォーム・オーバーレイの実行時の動作を示す概念図である。このようなプログラムが記憶されているＲＯＭボード等が抜かれると、そのボードに実装されていた命令群解釈・実行部のプログラムの登録関数の実体が無くなってしまい、登録関数テーブル１１１に登録されている関数を実行することが不可能になる。そこで、このような場合は、登録関数テーブル１１１における、対応する登録関数のアドレスをクリアする必要が生じる。図３の例では、命令群解釈・実行部のプログラムが無くなった時点で、登録関数テーブル１１１に登録されている関数の対応するオブジェクト・アドレスをクリアしている。
【００３７】
図１０において、ＲＯＭボードが抜かれる等により、関数の実体であるオブジェクトが存在しない関数があるか否かを判断し、その様な関数が存在する時はステップＳ４２に進み、存在しない関数に対応する登録関数テーブル１１１の登録関数のオブジェクト・アドレスから削除する。例えば図３の例では、存在しなくなったプログラムＲＯＭ１０４の命令群解釈・実行部１０６に対応して、登録関数テーブル１１１の登録関数（「関数１」及び「関数２」）のオブジェクトのアドレスがクリアされる。図３では、「関数１」及び「関数２」のオブジェクトがなくなったので、登録関数テーブル１１１におけるオブジェクトのアドレス（「ＸＸＸＸ」と「ＹＹＹＹ」）がクリアされている。
【００３８】
この状態で、図３に示すフォーム・オーバーレイ２０１が入力されると、そのフォーム・オーバーレイ２０１に含まれる「関数２」に対応する関数のオブジェクトが登録関数テーブル１１１に存在しないため、その「関数２」に対応する処理が行われない。
【００３９】
次に、命令群解釈・実行部のプログラムが再度システムに登録された場合の処理を以下に説明する。
【００４０】
図４は、命令群解釈・実行部のプログラムが再度プリンタ１００に実装された場合の処理を説明するための概念図である。
【００４１】
図４では、命令群解釈・実行部のプログラム１０６又は１０７が読み出された時点で、「関数１」がアドレス「ＡＡＡＡ」にセットされ、「関数２」がアドレス「ＢＢＢＢ」にセットされている。これに基づいて登録関数テーブル１１１にそれらの関数名と、その登録された各関数のオブジェクトのアドレス（「ＡＡＡＡ」、「ＢＢＢＢ」）が登録される。
【００４２】
この状態で、フォーム・オーバーレイ２０１を利用する場合を考える。更新されている登録関数テーブル１１１から登録関数のオブジェクトの新しいアドレスをサーチして、その関数のオブジェクトにアクセスする。そして、その関数の処理を行ってフォーム・オーバーレイ処理を行う。
【００４３】
図４の例では、「関数２」がのオブジェクトアドレスが更新されて登録関数テーブル１１１に記憶されているので、その登録されているアドレス「ＢＢＢＢ」をサーチして、「関数２」のプログラムの実体である「オブジェクト２」を実行する。
【００４４】
本実施例では、関数を登録する際、その関数を識別するために関数の名称を利用しているが、命令群解釈・実行部で各関数にＩＤを割り付けて、そのＩＤとアドレスとを登録関数テーブル１１１に登録しても良い。
【００４５】
上記のようにフォーム・オーバーレイに登録関数を利用している処理を登録することによって、命令群解釈・実行部に特有の処理を実行する関数を利用するフォーム・オーバーレイの実行が可能となる。
【００４６】
また、登録関数テーブル１１１を参照することによって、フォーム・オーバーレイを登録した命令群解釈・実行部以外の命令群解釈・実行部からフォーム・オーバーレイを利用することも可能となる。
【００４７】
また、フォーム・オーバーレイで利用する処理関数を処理関数の名称を用いてフォーム・オーバーレイに登録することによって、関数のオブジェクトが存在しない場合の誤動作を防ぐことが可能となり、関数のオブジェクトのアドレスが変更された場合も、確実に命令群解釈・実行部に特有の処理を行うことが可能となる。
【００４８】
前述の第１実施例では、関数を登録する際の名称を命令群解釈・実行部で決定し、登録関数を管理する共通の登録関数テーブル１１１に登録関数の登録を行った。これ以外にも、登録する関数に共通する関数群をプリンタ内部に用意し、その登録される関数に対応する関数群の名称・ＩＤを取得して命令群解釈・実行部に提供し、そのオブジェクト・アドレスと共に登録関数テーブル１１１に登録することも可能である。
【００４９】
上記の実施例においては、関数を登録する際に名称またはＩＤを利用してフォーム・オーバーレイに処理関数の登録を行ったが、関数の実際の動作を記述したプログラムの実態である関数のオブジェクトを直接フォーム・オーバーレイに登録することも可能である。
【００５０】
まず、ホストコンピュータ１０１から送信されてきた制御コード及びデータは入力バッファ１０２に蓄えられ、ＲＡＭ１１０に蓄えられる。ＣＰＵ１０３は、プログラムＲＯＭ１０４又は１０５に記述されたプログラムに従い、命令群・データの種類により、命令群解釈・実行部１０６または１０７によって、ホストコンピュータ１０１より送信されてきた命令群を解釈する。その解釈されたデータに基づいて、ビットマップ画像生成部１１３においてビットマップ画像を生成する。その後、この生成されたビットマップ画像データをビットマップ画像送出部１１４を介してプリンタエンジン部１１６に出力して印刷する。
【００５１】
この際、命令群解釈・実行部１０６又は１０７に特有な処理関数が存在し、プリンタ１００に関数を登録する場合には、登録関数テーブル１１１に関数の実際のプログラムであるオブジェクトのアドレスと、その名称を登録する。そして、その関数を利用する場合は、登録関数テーブル１１１から関数のオブジェクトを捜して処理を行う。
【００５２】
ホストコンピュータ１０１よりフォーム・オーバーレイの登録命令が送信された場合には、その送信された命令に応じてフォーム・オーバーレイ登録・実行部１０８又は１０９で、その登録を指示されたフォーム・オーバーレイをハードディスク１１２に登録する。この時、フォーム・オーバーレイが登録された関数を利用する処理を伴う場合は、利用する実際の処理を実行するプログラムである関数のオブジェクトのアドレスを登録関数テーブル１１１からサーチし、関数のオブジェクト本体を登録する。またフォーム・オーバーレイを実行し、フォーム・オーバーレイとして登録されている関数を利用する場合は、登録されている関数のオブジェクトを、直接プログラムとして関数を実行する場合を説明する。
【００５３】
処理関数の登録関数テーブル１１１への登録方法と、オーバーレイへの関数の登録、オーバーレイ利用時の関数の実行について詳述する。
【００５４】
図５は、命令群解釈・実行部のプログラムが再度登録された場合のフォーム・オーバーレイの実行時の動作を示す概念図である。
【００５５】
まず、命令群解釈・実行部のプログラム１０６又は１０７は、初期化時に自分のプログラムが設定する登録関数を独自で設定する関数の名称と、関数の動作を記述したプログラムであるオブジェクトのアドレスとを対応付けて登録関数テーブル１１１に登録する。
【００５６】
この登録関数テーブル１１１に関数を登録する処理は、前述の第１実施例と同様である。本実施例においては登録時の関数の名称は、命令群解釈・実行部で決定して登録関数テーブル１１１に登録している。
【００５７】
図５の例では、「関数１」を関数のオブジェクトが存在するアドレス「ＸＸＸＸ」で登録関数テーブル１１１の「Ｎｏ．１」に登録し、「関数２」をその関数のオブジェクトが存在するアドレス「ＹＹＹＹ」で登録関数テーブル１１１の「Ｎｏ．２」に登録している。
【００５８】
次に、ホストコンピュータ１０１からフォームオーバーレイの登録命令が送られると、その登録される関数を利用している処理をフォーム・オーバーレイに登録する。そして、その関数の処理を実行するプログラムである関数のオブジェクトのアドレスを登録関数テーブル１１１を参照してサーチし、その関数のオブジェクト本体を、フォーム・オーバーレイ２０２に格納する。
【００５９】
図１１は、このオーバーレイで利用する関数をオーバーレイに登録する際の制御プログラムの一例を示すフローチャートである。
【００６０】
ステップＳ５１において、フォーム・オーバーレイの登録中に登録関数の処理が存在するか否かを判断し、登録されているときはステップＳ５２に進み、登録されている関数の処理に対応する、処理を実行するプログラムである関数のオブジェクトをフォーム・オーバーレイに登録する。
【００６１】
図５の例では、「関数２のオブジェクト２」がフォーム・オーバーレイ２０２に登録されいる。
【００６２】
次に、このフォーム・オーバーレイを利用する際は、登録関数テーブル１１１を参照することなく、登録されている実際の関数のオブジェクトを直接プログラムとして関数を実行していく。
【００６３】
即ち、図５の例では、「関数２」のオブジェクトである「オブジェクト２」を直接実行することになる。
【００６４】
ここで、前述のように、プログラムＲＯＭが記憶されているＲＯＭボードが引き抜かれるなどにより、命令群解釈・実行部のプログラムが存在しなくなった場合の動作を説明する。
【００６５】
この場合は、登録関数を登録関数テーブル１１１から削除するが、その処理は前述の第１実施例と同様である。そして、命令群解釈・実行のプログラムが無くなった時点で、その消滅した部分に対応して登録関数テーブル１１１の登録関数のオブジェクトのアドレスをクリアする。
【００６６】
図６の例では、「関数１」、「関数２」のオブジェクトがなくなったので、登録関数テーブル１１１のオブジェクトのアドレスのフィールドは、アドレスのないことを示している。
【００６７】
しかし、フォーム・オーバーレイ２０２に実際の関数のオブジェクトが直接登録されているため、直接関数を実行することが可能であり、登録関数テーブル１１１とは独立して、そのフォーム・オーバーレイ２０２の実行が可能となる。
【００６８】
上記のようにフォーム・オーバーレイに登録関数を利用している処理関数を関数のオブジェクトの形式でフォーム・オーバーレイに登録することによって、命令群解釈・実行部に特有の処理を実行する関数を利用するフォーム・オーバーレイの実行が可能となる。
【００６９】
また、関数の処理を行う関数のオブジェクトがフォーム・オーバーレイに直接登録されているため、フォーム・オーバーレイを登録した命令群解釈・実行部以外の命令群解釈・実行部からフォーム・オーバーレイを利用することが可能となる。
【００７０】
また、関数の処理を行う関数のオブジェクトがフォーム・オーバーレイに直接登録されているため、フォーム・オーバーレイを登録した命令群解釈・実行部が印刷装置内部に存在しない場合にも、他の命令群解釈・実行部からフォーム・オーバーレイを利用することが可能となる。
【００７１】
尚、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器から成る装置に適用しても良い。また、本発明はシステム或は装置に本発明を実施するプログラムを供給することによって達成される場合にも適用できる。
【００７２】
以上説明したように本実施例によれば、フォーム・オーバーレイで利用する処理関数をフォーム・オーバーレイに登録することによって、命令群解釈・実行手段特有の処理を実行する関数を利用するフォーム・オーバーレイの実行が可能となる。
【００７３】
また、本実施例によれば、前記フォーム・オーバーレイで利用する処理関数を処理関数の名称を用いてフォーム・オーバーレイに登録することによって、関数のオブジェクトが存在しない場合の誤動作を防ぐことが可能となり、関数のオブジェクトのアドレスが変更された場合にも確実に命令群解釈・実行部に特有の処理を行うことが可能となる。
【００７４】
また、本実施例によれば、フォーム・オーバーレイに登録関数を利用している処理関数を関数のオブジェクトの形式でフォーム・オーバーレイに登録することによって、命令群解釈・実行部に特有の処理を実行する関数を利用するフォーム・オーバーレイの実行が可能となる。
【００７５】
また、本実施例によれば、関数の処理を行う関数のオブジェクトがフォーム・オーバーレイに直接手段以外の命令群解釈・実行部からフォーム・オーバーレイを利用することが可能となる。
【００７６】
また、本実施例によれば、関数の処理を行う関数のオブジェクトがフォーム・オーバーレイに直接登録されているため、フォーム・オーバーレイを登録した命令群解釈・実行手段が印刷装置内部に存在しない場合にも他の命令群解釈・実行部からフォーム・オーバーレイを利用することが可能となる。
【００７７】
【発明の効果】
以上説明したように本発明によれば、それぞれ異なるページ記述言語を解釈する命令解釈部に特有な処理関数がフォームオーバレイデータに含まれている場合でも、その処理関数のオブジェクトのアドレスと名称とを登録関数テーブルに登録しておき、フォームオーバーレイ時に処理関数の名称から登録関数テーブルを参照して処理関数を実行するので、印刷装置に設けられている異なる命令解釈部に特有の処理を実行する関数を利用してフォーム・オーバレイを実行できるという効果がある。
【００７９】
【図面の簡単な説明】
【図１】本発明の一実施例の印刷システムの構成を示すブロック図である。
【図２】本実施例の印刷システムにおけるフォーム・オーバーレイの登録・実行時の動作を示す概念図である。
【図３】本実施例の印刷システムにおいて、プリンタのプログラムＲＯＭが外された時のフォーム・オーバーレイの実行時の動作を示す概念図である。
【図４】本実施例の印刷システムにおけるフォーム・オーバーレイの実行時の動作を示す概念図である。
【図５】本実施例の印刷システムにおけるフォーム・オーバーレイの登録・実行時の動作を示す概念図である。
【図６】本実施例の印刷システムにおいて、プリンタのプログラムＲＯＭが外された時のフォーム・オーバーレイの実行時の動作を示す概念図である。
【図７】本実施例において、登録関数テーブルに関数を登録する処理を説明するフローチャートである。
【図８】本実施例において関数をフォーム・オーバーレイに登録する処理を説明するフローチャートである。
【図９】本実施例におけるフォーム・オーバーレイに登録されている関数を実行する処理を説明するフローチャートである。
【図１０】本実施例において、登録関数を登録関数テーブルから削除する処理を説明するフローチャートである。
【図１１】本実施例において、関数をフォーム・オーバーレイに登録する処理を説明するフローチャートである。
【符号の説明】
１００  プリンタ装置
１０１  ホストコンピュータ
１０２  入力バッファ
１０３  ＣＰＵ
１０４，１０５  プログラム
１０６，１０７  命令群解釈・実行部
１０８，１０９  フォーム・オーバーレイ登録・実行部
１１０  ＲＡＭ
１１１  登録関数テーブル
１１２  ハードディスク
１１３  ビットマップ画像生成部
１１４  ビットマップ画像送出部
１１５  操作パネル
１１６  プリンタエンジン部
【図１】
0003554053.tif 000002
【図２】
0003554053.tif 000003
【図３】
0003554053.tif 000004
【図４】
0003554053.tif 000005
【図５】
0003554053.tif 000006
【図６】
0003554053.tif 000007
【図７】
0003554053.tif 000008
【図８】
0003554053.tif 000009
【図９】
0003554053.tif 000010
【図１０】
0003554053.tif 000011
【図１１】
0003554053.tif 000012