(57)【要約】【課題】  複数種類のページ記述言語を用いて一つの印刷ジョブを構成すること。【解決手段】  言語選択部５は、複数種類のページ記述言語（プリンタドライバ（１）〜（ｎ））の中から、送信画像情報の第一の部分を変換する第一のページ記述言語と、上記送信画像情報の第二の部分を変換する第二のページ記述言語とをそれぞれ選択し、印刷ジョブ構成部７は、上記第一のページ記述言語に基づいて変換された第一のコマンド体系に基づくデータと、上記第二のページ記述言語に基づいて変換された第二のコマンド体系に基づくデータとから、一つの画像データを構成する。【選択図】        図１
2006099734.tif 000002
【特許請求の範囲】
【請求項１】
複数種類のページ記述言語の中から、送信画像情報の第一の部分を変換する第一のページ記述言語と、前記送信画像情報の第二の部分を変換する第二のページ記述言語とをそれぞれ選択する言語選択部と、
前記第一のページ記述言語に基づいて変換された第一のコマンド体系に基づくデータと、前記第二のページ記述言語に基づいて変換された第二のコマンド体系に基づくデータとから、一つの画像データを構成する印刷ジョブ構成部とを備えることを特徴とする画像情報処理装置。
【請求項２】
第一のコマンド体系に基づくデータの内部に第二のコマンド体系に基づくデータを含むコマンド体系混在データを受信するデータ受信部と、
前記データ受信部が受信したコマンド体系混在データから前記第一のコマンド体系に基づくデータを解析する第一のコマンド解析手段と、
前記データ受信部が受信したコマンド体系混在データから前記第二のコマンド体系に基づくデータを解析する第二のコマンド解析手段と、
前記第一のコマンド解析手段の解析結果と、前記第二のコマンド解析手段の解析結果から一つの画像データを構成するページデータ生成部とを備えることを特徴とする画像形成装置。
【請求項３】
前記第一のコマンド体系に基づくデータから、後に続く第二のコマンド体系に基づくデータの開始と、データサイズを検出すると、コマンド解析手段を前記第一のコマンド解析手段から前記第二のコマンド解析手段に変更させる後続処理選択手段を更に備えることを特徴とする請求項２に記載の画像形成装置。
【請求項４】
前記第二のコマンド解析手段が前記第二のコマンド体系に基づくデータを解析すると、そのときのデータ解析状態を保存する解析状態保存手段を更に備えることを特徴とする請求項２又は請求項３に記載の画像形成装置。
【請求項５】
上位装置により登録される登録情報を予め格納する不揮発性メモリ領域と、
請求項１に記載の画像情報処理装置の指示に基づいて、前記登録情報を読み出すデータ読み込み手段とを更に備えることを特徴とする請求項２〜請求項４までの何れか一項に記載の画像形成装置。
【請求項６】
前記不揮発性メモリ領域が格納する前記登録情報を受入れて保持するランダムアクセスメモリ領域を更に備え、
前記データ読み込み手段は、前記コマンド解析手段が前記登録情報の解析を開始すると、前記不揮発性メモリ領域から所定量の前記登録情報を一括して読み出し、前記ランダムアクセスメモリ領域へ保持させることを特徴とする請求項５に記載の画像形成装置。
【請求項７】
請求項１に記載の画像情報装置と、請求項２から請求項６までの何れか一項に記載の画像形成装置とを含むことを特徴とする印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数種類のページ記述言語を用いて１つの印刷要求を処理する印刷システムに関するものである。
【背景技術】
【０００２】
従来、画像情報処理装置から画像形成装置へ送信される１つの印刷要求（以降印刷ジョブと記す）は、１種類のページ記述言語で定義されていた。従って、画像形成装置では、受信した１つの印刷ジョブの先頭から終端までを１種類のページ記述言語で処理していた。一方、ある種類のページ記述言語は、多彩なコマンド表現が可能であり図形描画に優れており、他の種類のページ記述言語は、コマンドも少なくスループットも早くなりテキスト系に向いている等、それぞれのページ記述言語は、固有の特色を有している。
【０００３】
又、印刷ジョブによっては、長い文章中の何カ所かに図形が挿入されている場合等があり、上記、図形描画に優れているページ記述言語と、テキスト系に向いているページ記述言語の両方を用いたい場合も発生する。かかる場合に従来の技術では、ページ記述言語が変わると、ジョブの切れ目と判断され、前の処理部分が印刷出力されてしまう。その結果、１枚の印刷物として出力されることが好ましい印刷物であっても、複数枚の印刷物として出力されることになった。尚、複数種類のページ記述言語を有効に用いる技術も種々公開されている（例えば特許文献１参照）。
【特許文献１】特開２０００−２６３８５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
解決しようとする問題点は、例えば、長い文章中の何カ所かに図形が挿入されている場合等において、図形描画に優れているページ記述言語と、テキスト系に向いているページ記述言語の両方を用いたい場合が発生しても、従来の技術では、ページ記述言語が変わると、ジョブの切れ目と判断され、前の処理部分が印刷出力されてしまう。その結果、１枚の印刷物として出力されることが好ましい印刷物であっても、複数枚の印刷物として出力されることになった点である。
【課題を解決するための手段】
【０００５】
本発明に於いて、画像情報処理装置は、複数種類のページ記述言語の中から、送信画像情報の第一の部分を変換する第一のページ記述言語と、上記送信画像情報の第二の部分を変換する第二のページ記述言語とを、それぞれ選択する言語選択部と、第一のページ記述言語、及び、第二のページ記述言語に基づいて、画像情報を、それぞれのコマンドに変換するデータ変換部と、変換された複数のコマンド体系に基づくデータから、一つの印刷ジョブを構成する印刷ジョブ構成部とを備え、コマンド体系混在データを含む送信データを生成して送信することを主な特徴とする。
【０００６】
画像形成装置は、コマンド体系混在データを受信すると、その内部構成を抽出して管理するジョブ管理部と、ジョブ管理部の指示に基づいて第一のコマンド体系に基づくデータを解析する第一のコマンド解析手段と、該第一のコマンド解析手段の解析処理に続けて、第一のコマンド体系に基づくデータの中に含まれている後続処理選択手段の指示に基づいて、後に続く第二のコマンド体系に基づくデータを解析する第二のコマンド解析手段とを備え、その解析結果からページデータを生成することを主な特徴とする。
【発明の効果】
【０００７】
例えば、長い文章中の何カ所かに図形が挿入されている場合等があり、上記、図形描画に優れているページ記述言語と、テキスト系に向いているページ記述言語の両方を用いたい場合に、一つの印刷ジョブとしてまとめて処理出来るという効果を得る。
【発明を実施するための最良の形態】
【０００８】
本発明によるシステムでは、上記画像情報処理装置に備える、言語選択部、データ変換部、及び印刷ジョブ構成部とを、画像情報処理装置内部に予めインストールされるプリンタドライバに含め、更に上記画像形成装置に備える、ジョブ管理部、第一のコマンド解析手段、及び第二のコマンド解析手段とを、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをＣＰＵが実行することによって起動されるコンピュータ制御手段によって実現した。
【実施例１】
【０００９】
図１は、実施例１のシステム構成図である。
図に示すように、実施例１の印刷システムは、画像情報処理装置１と、画像形成装置２と、ネットワーク３とを含む。
【００１０】
画像情報処理装置１は、アプリケーション処理部４と、言語選択部５と、データ変換部６と、印刷ジョブ構成部７と、データ送信部８とを備え、所定のアプリケーションに基づいて作成された印刷情報を所定の個数に区分し、各区分毎に、最適のページ記述言語で変換し、コマンド体系が異なる複数のデータを含む印刷ジョブを生成し、この印刷ジョブからなる送信データをネットワークへ送出する装置であり、通常パーソナルコンピュータ（以後ＰＣと記す）が用いられる。
【００１１】
アプリケーション処理部４は、ＰＣ内部のＯＳ（オペレーションシステム）の管理に基づいて、オペレータが、例えば文章や画形描画などを含む、印刷情報を作成するのを可能にする部分である。このアプリケーション処理部４は、ＰＣ内部のハードディスク（図示していない）等に予めインストールされている所定の制御プログラム（表計算ツールや文書作成ツール等）をＰＣ内部のＣＰＵ（中央演算処理装置）が実行することによって起動される部分である。
【００１２】
言語選択部５は、アプリケーション処理部４から印刷情報を受け入れて解析し、オペレータが作成した印刷情報を第１の部分（例えば文章部分）と、第２の部分（例えば画形描画部分）に分割し、それぞれの各部分を変換するのに最適なページ記述言語を選択する部分である。この言語選択部５は、ＰＣ内部のプリンタドライバに含まれている、所定の制御プログラムをＰＣ内部のＣＰＵ（中央演算処理装置）が実行することによって起動される部分である。
【００１３】
データ変換部６は、印刷情報の第１の部分を、言語選択部５によって選択された第１のページ記述言語Ａに基づいて第一のコマンド体系に変換し、印刷情報の第２の部分を言語選択部５によって選択された第２のページ記述言語Ｂに基づいて第二のコマンド体系に変換する部分である。尚、第１のページ記述言語Ａ、又は、第２のページ記述言語Ｂとして、言語選択部５によって選択されうる複数種類のページ記述言語は、プリンタドライバの内部にプリンタドライバ（１）〜プリンタドライバ（ｎ）として予め含まれている。データ変換部６は、言語選択部５が選択したプリンタドライバ（１）〜（ｎ）に対応する制御プログラムをＰＣ内部のＣＰＵ（中央演算処理装置）が実行することによって起動される部分である。
【００１４】
印刷ジョブ構成部７は、第１のページ記述言語Ａに基づいて変換された第一のコマンド体系に基づくデータと、第２のページ記述言語Ｂに基づいて変換された第二のコマンド体系に基づくデータとから、印刷ジョブを構成し、送信データを構成する部分である。この印刷ジョブ構成部７は、ＰＣ内部のプリンタドライバに予め含まれている、所定の制御プログラムをＰＣ内部のＣＰＵが実行することによって起動される部分である。次に、印刷ジョブ構成部７が構成する印刷ジョブの一例について説明する。
【００１５】
図２は、印刷ジョブの構成図である。
図に示すように、ここに示されている印刷ジョブ（一例）は、６個のデータ区分に分割され、先頭から順番に７−１は、第１のページ記述言語Ａによって変換されたコマンド１Ａ、７−２は、第１のページ記述言語Ａによって変換されたコマンド２Ａ、７−３は、第１ページ記述言語Ａによって変換されたコマンド３Ａ、７−４は、第２のページ記述言語Ｂによって変換されたコマンド１Ｂ、７−５は、第２のページ記述言語Ｂによって変換されたコマンド２Ｂ、７−６は、第１のページ記述言語Ａによって変換されたコマンド４Ａである。
【００１６】
図に示すように、この例では、第１のページ記述言語Ａで変換されたコマンドが１Ａから４Ａまで続き、コマンド３Ａとコマンド４Ａとの間に、第２のページ記述言語Ｂで変換されたコマンド１Ｂと、コマンド２Ｂとが挿入されている。又、第２のページ記述言語Ｂで変換されたコマンドが挿入される直前のコマンド（ここではコマンド３Ａ）には、後に続く（挿入される）コマンドの第２のページ記述言語Ｂの開始と、そのデータサイズ（ここではコマンド１Ｂ＋コマンド２Ｂ）が含まれている。
【００１７】
図１に戻って、データ送信部８は、印刷ジョブ構成部７から印刷ジョブを受け入れて、その先頭及び後尾に、送出するネットワークのプロトコルに基づくアドレス、フレームチェックシーケンス等を付加してフレームを構成し、画像形成装置２に向けて、ネットワークへ送出する部分である。以上で画像情報処理装置１の構成に関する説明を終了し、続いて、画像形成装置２の構成について説明する。
【００１８】
画像形成装置２は、データ受信部９と、記憶部１０と、ジョブ管理部１１と、エミュレーション処理部１２と、データ読み込み部１３と、ページデータ生成部１４と、展開部１５と、プリントエンジン部１６とを備え、コマンド体系混在データを含むフレームをネットワーク３から受け入れて、混在データのそれぞれが適合するエミュレーションに基づいて解析し、それらの解析結果から印刷データを構成し、印刷処理して出力する印刷装置（例えば、プリンタ）である。
【００１９】
データ受信部９は、ネットワーク３からフレームを受け入れて、印刷ジョブ（図２）を記憶部１０へ格納する部分である。
記憶部１０は、データ受信部９から、印刷ジョブ（図２）を受け入れて、図に示すように各データ区分毎（ここではコマンド毎）に、複数個のデータ集合として格納するバッファである。一例として図２に示す印刷ジョブを受け入れた場合には、印刷ジョブを構成している順番に、コマンド１（Ａ）、コマンド２（Ａ）・・・・コマンド２（Ｂ）、コマンド４（Ａ）と、受け入れ順に格納される。
【００２０】
ジョブ管理部１１は、コマンド体系混在データの内部構成を抽出して保持し、管理する部分である。即ち、データ受信部９から印刷ジョブ（図２）を受入れて、受信した印刷ジョブの第１のページ記述言語Ａの種類を判定し、エミュレーション処理部１２へ通知すると共に、記憶部１０に格納されている各コマンド毎の格納アドレスとデータサイズの管理を行う部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをＣＰＵが実行することによって起動される。
【００２１】
エミュレーション処理部１２は、その内部に複数種類のエミュレーション（１）〜（ｎ）と、後続処理選択手段１２−１とを有し、ジョブ管理部１１の指示及び管理に基づいて、データ読み込み部１３を介して記憶部１０からデータ区分（コマンド）を順番に読み出して、適合するエミュレーションに基づいて解析する部分である。更に、データ区分の最後尾を検索し、後に続く（挿入される）コマンドの第２のページ記述言語Ｂの開始と、データサイズを検出した場合には、その指示に従ってエミュレーションの種類を変更する部分でもある。
【００２２】
即ち、エミュレーション処理部１２は、ジョブ管理部１１から、受信した印刷ジョブの最初のデータ区分から第１のページ記述言語Ａを受け入れると、記憶部１０に格納されている最初のコマンドを読み出して、第１のページ記述言語Ａに対応するエミュレーションに基づいて、そのコマンドを解析する。一つのコマンドの解析に於いて、後続処理選択手段１２−１が、後に続く（挿入される）コマンドの第２のページ記述言語Ｂの開始と、データサイズが含まれている否かを検索する。もし、含まれていなければ、そのまま、後に続くコマンドの解析を継続し、もし含まれていれば、後に続く（挿入される）コマンドの第２のページ記述言語Ｂの種類に対応するエミュレーションに基づいて、挿入されているコマンドを解析する部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをＣＰＵが実行することによって起動される。
【００２３】
データ読み込み部１３は、ジョブ管理部１１を参照して記憶部１０から印刷ジョブのコマンドを読み出してエミュレーション処理部１２へ送出する部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをＣＰＵが実行することによって起動される。
【００２４】
ページデータ生成部１４は、エミュレーション処理部１２の解析結果を中間言語に変換する部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをＣＰＵが実行することによって起動される。
展開部１５は、ページデータ生成部１４が、中間言語に変換したページ描画内容をビットマップデータに展開してプリントエンジン部１６へ送出する部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをＣＰＵが実行することによって起動される。
【００２５】
プリントエンジン部１６は、展開部１５からビットマップデータを受け入れて印刷出力する部分である。
ネットワーク３は、画像情報処理装置１と画像形成装置２とを回線接続する、例えばＬＡＮ（ローカルエリアネットワーク）等の情報通信網である。
【００２６】
次に実施例１の動作について説明する。
最初に画像情報処理装置１（図１）の動作について説明し、続いて画像形成装置２（図１）の動作について説明する。
図３は、実施例１の画像情報処理装置の動作フローチャートである。
ステップＳ１−１からステップＳ１−４までステップ順に実施例１の画像情報処理装置の動作について説明する。
【００２７】
ステップＳ１−１
オペレータがアプリケーション処理部４（図１）を用いて印刷情報を作成し、印刷を要求する。
ステップＳ１−２
言語選択部５（図１）は、アプリケーション処理部４（図１）から印刷情報を受け入れて解析し、印刷情報を第１の部分と、第２の部分に分割し、それぞれの各部分を変換するのに最適なページ記述言語を選択する。例えば、文字はページ記述言語Ａ、表はページ記述言語Ｂ、図はページ記述言語Ｃ、写真はページ記述言語Ｄなどの情報を格納しておき、それらに基づいて選択する。
【００２８】
ステップＳ１−３
データ変換部６（図１）は、印刷情報の第１の部分を、言語選択部５（図１）によって選択された第１のページ記述言語Ａに基づいて変換し、印刷情報の第２の部分を言語選択部５（図１）によって選択された第２のページ記述言語Ｂに基づいて変換する。
【００２９】
ステップＳ１−４
印刷ジョブ構成部７は、第１のページ記述言語Ａに基づいて変換された第一のコマンド体系に基づくデータと、第２のページ記述言語Ｂに基づいて変換された第二のコマンド体系に基づくデータとから、図２で説明した印刷ジョブを構成する。
【００３０】
ステップＳ１−５
データ送信部８（図１）は、印刷ジョブの先頭及び後尾に、送出するネットワークのプロトコルに基づくアドレス、フレームチェックシーケンス等を付加してフレームを構成し、画像形成装置２に向けて、ネットワーク３（図１）へ送出してフローを終了する。
【００３１】
続いて、実施例１の画像形成装置２の動作について説明する。
図４は、実施例１の動作フローチャート（その１）である。
図５は、実施例１の動作フローチャート（その２）である。
図６は、実施例１の動作説明図（その１）である。
図７は、実施例１の動作説明図（その２）である。
図４及び図５を用いて、一例として、画像形成装置２がネットワーク３（図１）から送信データを受信し、印刷処理するものとして説明する。ステップＳ１−１１からステップＳ１−２７までステップ順に説明する。その中で図６及び図７を適宜用いることとする。尚、この図６及び図７に記載されている印刷ジョブの内部構成は図２に於ける印刷ジョブの内部構成と全く同一である。
【００３２】
ステップＳ１−１１
データ受信部９（図１）は、ネットワーク３（図１）からフレームを受信して分解し、印刷ジョブ（図２）を記憶部１０（図１）に格納する。この印刷ジョブの格納アドレスやデータサイズは、データ受信部９（図１）によってジョブ管理部１１（図１）へ通知される。以後、印刷ジョブの格納アドレスやデータサイズは、ジョブ管理部１１（図１）によって管理されることになる。
【００３３】
ステップＳ１−１２
ジョブ管理部１１（図１）は、最初のデータ区分（このデータ区分を第１のページ記述言語とする）を参照し、最初のデータ区分に適用されるエミュレーションを判断し、エミュレーション（１）〜（ｎ）の中の何れかの種類に（以後、仮にエミュレーション（Ａ）と記す）印刷ジョブの受信を通知する。
【００３４】
ステップＳ１−１３
エミュレーション（Ａ）は、印刷ジョブの解析開始と印刷ジョブの情報（格納されているアドレス等）をデータ読み込み部１３（図１）へ通知する。データ読み込み部１３（図１）は、ジョブ管理部１１（図１）を参照して印刷ジョブの最初のコマンド（ここではコマンド１Ａ（図６（ａ））が記憶部１０（図１）に格納されているアドレスを把握して読み取り準備を完了する。
【００３５】
ステップＳ１−１４
エミュレーション（Ａ）は、印刷ジョブの解析に当たって必要な初期化を実行する。
ステップＳ１−１５
エミュレーション（Ａ）は、データ読み込み部１３（図１）を介してデータ区分を読み込む。ここでは、コマンド１Ａが読み込まれる（図６（ａ））。
【００３６】
ステップＳ１−１６
印刷ジョブ全ての解析が終了した場合にはステップＳ１−２７を通ってフローを終了し、印刷ジョブ全ての解析が終了していなければ、ステップＳ１−１７へ進む。ここでは終了していないのでステップＳ１−１７へ進む。
【００３７】
ステップＳ１−１７
エミュレーション（Ａ）は、ページ記述言語をＡとしてコマンド解析を実行する。
ステップＳ１−１８
一つのコマンドの解析が終了するまで、ステップＳ１−１５〜ステップＳ１−１８を繰り返し、一つのコマンドの解析が終了すればステップＳ１−１９へ抜ける。
【００３８】
ステップＳ１−１９
後続処理選択手段１２−１（図１）は、処理中のコマンドの後尾に、後に続く（挿入される）コマンドの第２のページ記述言語Ｂの開始と、データサイズ（図６（ｂ）の７−３）含まれている否かの検索を継続し、検出出来ない時は、ステップＳ１−２０へ進み、検出できたときにはステップＳ１−２１へ進む。ここでは、未だ、コマンド１Ａ（図６（ａ））であり、検出できないのでステップＳ１−２０へ進む。
【００３９】
ステップＳ１−２０
エミュレーション（Ａ）は、処理を継続しステップＳ１−１５へ戻る。エミュレーション（Ａ）は、ステップＳ１−１５〜ステップＳ１−２０を繰り返して、コマンド２Ａ（図６（ａ））を解析した後、更に、ステップＳ１−１５〜ステップＳ１−１９を繰り返して、コマンド３Ａ（図６（ａ））を解析するとステップＳ１−１９で、後続処理選択手段１２−１（図１）は、コマンド３Ａの後尾に、後に続く（挿入される）コマンドの第２のページ記述言語Ｂの開始と、データサイズ含まれているのを検出し、（図６（ｂ））ステップＳ１−２１へ進むことになる。
【００４０】
ステップＳ１−２１
エミュレーション（Ａ）（図１）は、エミュレーション（Ｂ）（図１）に対して解析するデータサイズを通知する。エミュレーション（Ｂ）（図１）は、この値を保存するとともに印刷ジョブの解析に当たって必要な初期化を実行することになる。ここでは、コマンド１Ｂ＋コマンド２Ｂのサイズが通知されることになる（図６（ｂ））。
【００４１】
ステップＳ１−２２
上記ステップＳ１−２１で通知され、保存している指定サイズ分のデータ解析が終了していればステップＳ１−１５へ戻り、解析が終了していなければステップＳ１−２３へ進む。ここでは、未だ指定サイズ分のデータ解析が終了していないので、ステップＳ１−２３へ進む。
【００４２】
ステップＳ１−２３
エミュレーション（Ｂ）は、データ読み込み部１３（図１）を介してコマンドの読み込みを実行する。ここではコマンド１Ｂ（図７（ａ））を読み込む。
ステップＳ１−２４
エミュレーション（Ｂ）は、ページ記述言語をＢとしてコマンド解析を実行する。
【００４３】
ステップＳ１−２５
一つのコマンドの解析が終了するまで、ステップＳ１−２２〜ステップＳ１−２５を繰り返し、一つのコマンドの解析が終了すればステップＳ１−２６へ抜ける。ここでは、コマンド１Ｂの解析が終了するとステップＳ１−２６へ抜ける。
【００４４】
ステップＳ１−２６
エミュレーション（Ｂ）は、後に続くコマンド２Ｂ（図６（ａ））を処理すべくステップＳ１−２２へ戻る。エミュレーション（Ｂ）は、ステップＳ１−２２〜ステップＳ１−２５を繰り返して、コマンド２Ｂ（図７（ａ））を解析した後、ステップＳ１−２２へ戻り、ここからステップＳ１−１５へ戻る。再度ステップＳ１−１５〜ステップＳ１−２０、を繰り返して、コマンド４Ａの解析を終了したあと（図７（ｂ））ステップＳ１−１５へ戻り、ステップＳ１−１６からフロー終了へ抜けることになる。
ステップＳ１−２７
エミュレーション（Ａ）の解析結果と、エミュレーション（Ｂ）の解析結果とを一つの画像データとして処理（印刷）してフローを終了する。
【００４５】
以上説明したように、実施例１によれば、例えば、長い文章中の何カ所かに図形が挿入されている場合等があり、上記、図形描画に優れているページ記述言語と、テキスト系に向いているページ記述言語の両方を用いたい場合であっても複数ページの印刷に分割されることなく、一つの印刷ジョブとしてまとめて処理出来るという効果を得る。
【００４６】
尚、上記説明では、一つの印刷ジョブの中に第１のページ記述言語Ａと、第２のページ記述言語Ｂの２種類のページ記述言語を含ませる場合に限定して説明したが、本発明は、この例に限定されるものではない。即ち、第１のページ記述言語Ａと、第２のページ記述言語Ｂ、第３のページ記述言語Ｃ、第４のページ記述言語Ｄ・・・、と複数のページ記述言語を含ませることも可能である。
【実施例２】
【００４７】
本実施例では、第１のページ記述言語Ａに基づくコマンドＡの間に第２のページ記述言語Ｂに基づくコマンドＢが挿入される場合であって、そのコマンドＢの一部がデータ一区分からはみ出る場合を想定する。
【００４８】
図８は、実施例２の印刷システム構成図である。
図に示すように、実施例２の印刷システムは、画像情報処理装置１と、画像形成装置２２と、ネットワーク３とを含む。以下に実施例１との相違部分のみについて説明する。実施例１と同様の部分については、実施例１と同様の符合を付して説明を省略する。
【００４９】
画像形成装置２２は、データ受信部９と、記憶部１０と、ジョブ管理部１１と、エミュレーション処理部２３と、データ読み込み部１３と、ページデータ生成部１４と、展開部１５と、プリントエンジン部１６とを備え、コマンド体系混在データを含むフレームをネットワーク３から受け入れて、混在データのそれぞれが適合するエミュレーションに基づいて解析し、それらの解析結果から印刷データを構成し、印刷処理して出力する印刷装置である。
【００５０】
エミュレーション処理部２３は、その内部に複数種類のエミュレーション（１）〜（ｎ）と、後続処理選択手段１２−１と、解析状態保存手段２３−１とを有し、ジョブ管理部１１の指示及び管理に基づいて、データ読み込み部１３を介して記憶部１０からデータ区分を順番に読み出して、適合するエミュレーションに基づいて解析する部分である。又、データ区分の最後尾を検索し、後に続く（挿入される）データ区分の第２のページ記述言語Ｂの開始と、データサイズを検出した場合には、その指示に従ってエミュレーションの種類を変更する部分でもある。
【００５１】
更に、第２のページ記述言語Ｂに基づくデータ区分を解析した場合には、その解析状態を保存する解析状態保存手段２３−１を有する部分でもある。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをＣＰＵが実行することによって起動される。その他の部分は実施例１と全く同様なので説明を省略する。以下に解析状態保存手段２３−１を詳細に説明する。
【００５２】
図９は、実施例２の印刷ジョブの構成図である。
この図は、冒頭に記した、第１のページ記述言語Ａに基づくコマンドＡの間に第２のページ記述言語Ｂに基づくコマンドＢが挿入される場合であって、そのコマンドＢがコマンドの一区切りから一部分はみ出る場合を表している。
【００５３】
図に示すように、ここに示されている印刷ジョブ（一例）は、６個＋αのデータ区分に分割され、先頭から順番に３０−１は、第１のページ記述言語Ａによって変換されたコマンド１Ａ、３０−２は、第１のページ記述言語Ａによって変換されたコマンド２Ａ、３３−３（１）は、第２のページ記述言語Ｂによって変換されたコマンド１Ｂの一部、３０−４は、第１のページ記述言語Ａによって変換されたコマンド３Ａ、３０−５は、第１のページ記述言語Ａによって変換されたコマンド４Ａ、３３−３（２）は、第２のページ記述言語Ｂによって変換されたコマンド１Ｂの残りの一部、３０−６は、第１のページ記述言語Ａによって変換されたコマンド５Ａである。
【００５４】
図に示すように、この例では、第１のページ記述言語Ａで変換されたコマンドが１Ａから５Ａまで続き、コマンド２Ａとコマンド３Ａとの間に、第２のページ記述言語Ｂで変換されたコマンド１Ｂの一部と、コマンド４Ａとコマンド５Ａとの間に、第２のページ記述言語Ｂで変換されたコマンド１Ｂの残りの一部が挿入されている。又、第２のページ記述言語Ｂで変換されたコマンドが挿入される直前のデータ区分（ここでは３０−２及び３０−５）の最後尾には、後に続く（挿入される）データ区分における第２のページ記述言語Ｂの開始と、そのデータサイズ（ここでは３０−２（コマンド１Ｂの一部）、３０−５（コマンド１Ｂの残りの一部））が含まれている。
【００５５】
図１０は、解析状態保存手段の説明図である。
（ａ）は、解析状態保存領域の一例を示し、（ｂ）は、コマンドが分割された状態の一例を表している。
一例として（ｂ）に示すように「ＳＴＡＲＴ#−２．３５Ｌ」（例えば印刷開始位置を-２．３５ｍｍ左へ移動させるコマンド）とまとまって、始めて意味を有するコマンドを小数点１位の３を境に、前部分ＳＴＡＲＴ#−２．３と後部分５Ｌに分割して印刷ジョブを生成する場合について説明する。かかる場合に前部分ＳＴＡＲＴ＃−２．３は、図９のデータ区分３３−３（１）に、後部分５Ｌは図９のデータ区分３３−３（２）に格納される。
【００５６】
第２のページ記述言語Ｂが、図９のデータ区分３３−３（１）を解析終了した段階で（ａ）に示す解析状態が保存される。この状態についてテーブルの上から順番に説明する。モード４０−１は、一連のコマンドを解析中であるか否かを示し、解析中の場合には、解析中、解析終了の場合には、解析完、が保存される。図９のデータ区分３３−３（１）が解析された段階では解析中が保存される。カテゴリ４０−２は、解析に用いられたテーブル（予め解析のために用意されている複数のテーブルの内の一つ）のナンバーを示し、ここでは例えば７が保存される。
【００５７】
整数値４０−３は、一連のコマンドの整数値を示し、ここでは２が保存される。小数点値４０−４は、一連のコマンドの小数値を表し、ここでは、（ｂ）に示すように３を境に分割されているので３のみが保存される。後の処理によって５が解析されることによって３５になる筈である。符合４０−５は、一連のコマンドの符合を示し、ここでは−が保存される。更に、図９のデータ区分３３−３（２）が解析された段階では、モード４０−１には解析完が、少数点値４０−４には、３５が保存され、一連のコマンドＳＴＡＲＴ#−２．３５Ｌが成立することになる。
【００５８】
続いて、実施例２の画像形成装置２２の動作について説明する。
図１１は、実施例２の動作フローチャート（その１）である。
図１２は、実施例２の動作フローチャート（その２）である。
図１１及び図１２を用いて、一例として、画像形成装置２２がネットワーク３から図９に示す送信データを受信し、印刷処理するものとして説明する。ステップＳ２−１からステップＳ２−１９までステップ順に説明する。
【００５９】
ステップＳ２−１
データ受信部９（図８）は、ネットワーク３（図８）からフレームを受信して分解し、印刷ジョブ（図９）を記憶部１０（図８）に格納する。この印刷ジョブの格納アドレスやデータサイズは、データ受信部９（図８）によってジョブ管理部１１（図８）へ通知される。以後、印刷ジョブの格納アドレスやデータサイズは、ジョブ管理部１１（図８）によって管理されることになる。
【００６０】
ステップＳ２−２
ジョブ管理部１１（図８）は、最初のデータ区分（このデータ区分を第１のページ記述言語とする）を参照し、最初のデータ区分に適用されるエミュレーションを判断し、エミュレーション（１）〜（ｎ）の中の何れかの種類に（以後、仮にエミュレーション（Ａ）と記す）印刷ジョブの受信を通知する。
【００６１】
ステップＳ２−３
エミュレーション（Ａ）は、印刷ジョブの解析開始と印刷ジョブの情報（格納されているアドレス等）をデータ読み込み部１３（図８）へ通知する。データ読み込み部１３（図８）は、ジョブ管理部１１（図８）を参照して印刷ジョブの最初のデータ区分３０−２（図９）が記憶部１０（図８）に格納されているアドレスを把握して読み取り準備を完了する。
【００６２】
ステップＳ２−４
エミュレーション（Ａ）は、印刷ジョブの解析に当たって必要な初期化を実行する。
ステップＳ２−５
エミュレーション（Ａ）は、データ読み込み部１３（図８）を介してデータ区分（ここでは３０−１（図９））を読み込む。
【００６３】
ステップＳ２−６
印刷ジョブ全ての解析が終了した場合にはステップＳ２−１９を通ってフローを終了し、印刷ジョブ全ての解析が終了していなければ、ステップＳ２−７へ進む。ここでは終了していないのでステップＳ２−７へ進む。
【００６４】
ステップＳ２−７
エミュレーション（Ａ）は、ページ記述言語をＡとしてコマンド解析を実行する。
ステップＳ２−８
データ区分の解析が終了し一つのコマンドが生成するまで、ステップＳ２−５〜ステップＳ２−８を繰り返し、一つのコマンドが生成すればステップＳ２−９へ抜ける。
【００６５】
ステップＳ２−９
後続処理選択手段１２−１（図８）は、処理中のデータ区分の後尾に、後に続く（挿入される）データ区分に於ける第２のページ記述言語Ｂの開始と、データサイズが含まれている否かの検索を継続し、検出出来ない時は、ステップＳ２−１０へ進み、検出できたときにはステップＳ２−１１へ進む。ここでは、未だ、データ区分３０−１（コマンド１Ａ（図９））であり、検出できないのでステップＳ２−１０へ進む。
【００６６】
ステップＳ２−１０
エミュレーション（Ａ）は、処理を継続しステップＳ２−５へ戻る。エミュレーション（Ａ）は、ステップＳ２−５〜ステップＳ２−８を繰り返して、データ区分３０−１（コマンド２Ａ（図９））を解析した後、ステップＳ２−９で、後続処理選択手段１２−１（図８）は、データ区分３０−２（図９）の後尾に、後に続く（挿入される）データ区分における第２のページ記述言語Ｂの開始と、データサイズ含まれているのを検出し、ステップＳ２−１１へ進むことになる。
【００６７】
ステップＳ２−１１
エミュレーション（Ａ）は、エミュレーション（Ｂ）に対して解析するデータサイズを通知する。エミュレーション（Ｂ）は、この値を保存するとともに印刷ジョブの解析に当たって必要な初期化を実行することになる。ここでは、データ区分３３−３（１）（コマンド１Ｂの一部のサイズ（図９））が通知されることになる。
【００６８】
ステップＳ２−１２
エミュレーション（Ｂ）（図８）は、解析状態保存手段２３−１（図８）に基づいて、前回の解析状態へ復帰する。但し、ここでは前回の状態は未だ格納されていないので無視することになる。
【００６９】
ステップＳ２−１３
上記ステップＳ２−１１で通知され、保存している指定サイズ分のデータ解析が終了していればステップＳ２−１７へ進み、解析が終了していなければステップＳ２−１４へ進む。ここでは、未だ指定サイズ分のデータ解析が終了していないので、ステップＳ２−１４へ進む。
【００７０】
ステップＳ２−１４
エミュレーション（Ｂ）は、データ読み込み部１３（図８）を介してデータ区分の読み込みを実行する。ここではデータ区分３３−３（１）（コマンド１Ｂの一部（図９））を読み込む。
ステップＳ２−１５
エミュレーション（Ｂ）は、ページ記述言語をＢとしてコマンド解析を実行する。
【００７１】
ステップＳ２−１６
一つのコマンドの解析が終了するまで、ステップＳ２−１３〜ステップＳ２−１６を繰り返し、一つのコマンドの解析が終了（一つのコマンドが成立）すればステップＳ２−１８へ抜ける。ここでは、コマンド１Ｂの全てを解析していないのでステップＳ２−１３へ戻る。又、ステップＳ２−１３へ戻ったときに、ステップＳ２−１１で通知されたデータサイズの全ての解析が終了していればステップＳ２−１７へ進む。ここでは、コマンド１Ｂの一部（図９の３３−３（１））のデータサイズが終了しているので、ステップＳ２−１３を経てステップＳ２−１７へ進む。
【００７２】
ステップＳ２−１７
エミュレーション（Ｂ）は、ステップＳ２−１１で通知されたデータサイズ（ここでは、コマンド１Ｂの一部）が終了しているので、この時点でのコマンド解析状態で解析状態保存手段２３−１（図８）を保存してステップＳ２−５へ戻る。エミュレーション（Ａ）は、再度ステップＳ２−５〜ステップＳ２−１０を２回繰り返し、コマンド３Ａ、コマンド４Ａの解析を終了したあとステップＳ２−９からステップＳ２−１１へ進むことになる。次に、コマンド１Ｂの残りの一部（データ区分３３−３（２）（図２））に対して、ステップＳ２−１１からステップＳ２−１６が繰り返され、コマンド１Ｂの残りの一部が解析されると、データ区分３３−３（１）（図９）に追加され、コマンド１Ｂが成立する。そこでステップＳ２−１８へ進む。
【００７３】
ステップＳ２−１８
コマンド１Ｂが成立したので、ステップＳ２−１３、ステップＳ２−１７（このときは、解析状態保存領域のモード４０−１（図１０）は解析完で保存）を通ってステップＳ２−５へ戻る。再度ステップＳ２−５〜ステップＳ２−１０を繰り返し、データ区分３０−６（コマンド５Ａ（図９））の解析を終了した後ステップＳ２−６へ戻り、このステップＳ２−６からステップＳ２−１９へ進む。
ステップＳ２−１９
エミュレーション（Ａ）の解析結果と、エミュレーション（Ｂ）の解析結果とを一つの画像データとして処理（印刷）してフローを終了する。
【００７４】
以上説明したように、本実施例によれば、第２のページ記述言語Ｂによって変換されたコマンドが、一連のコマンドの途中で分断されていても、コマンドの一部を含むデータ区分の解析終了時点で、解析状態を保存することが可能になるため、後（直後である必要はない）に続くコマンドの残りの一部を解析し、コマンドを復元することが可能になる。その結果、一つのコマンドを必ずしも一つのデータ区分に含める必要がなくなり、送信フレームの構成に自由度が増加するという効果を得る。
【実施例３】
【００７５】
本実施例では、良く使われる定型数表を印刷する場合等において、罫線データを画像形成装置のストレージに予め格納しておき、後から受信する数表データを上書きすることによって定型数表を作成したり、パスワード付きで送られてくるデータを予めストレージに格納しておき、後からパスワードを受入れた時のみ、その内容を印刷すること等が可能なシステムを構築する。
【００７６】
図１３は、実施例３のシステム構成図である。
図に示すように、実施例３の印刷システムは、画像情報処理装置１と、画像形成装置３２と、ネットワーク３とを含む。以下に、実施例１と相違する部分のみについて詳細に説明する。実施例１と同様の部分については、実施例１と同一の符号を付して説明を省略する。
【００７７】
画像形成装置３２は、データ受信部９と、記憶部１０と、ジョブ管理部１１と、エミュレーション処理部１２と、データ読み込み部３３と、ページデータ生成部１４と、展開部１５と、プリントエンジン部１６と、ストレージ３４とを備え、コマンド体系混在データを含むフレームをネットワーク３から受け入れて、混在データのそれぞれが適合するエミュレーションに基づいて解析し、それらの解析結果から印刷データを構成し、印刷処理して出力する印刷装置である。特に本実施例では、印刷データを構成するに際して、予め内部に保有するフォームデータを利用可能とする。
【００７８】
データ読み込み部３３は、ジョブ管理部１１を参照して記憶部１０から印刷ジョブのコマンドを読み出してエミュレーション処理部１２へ送出する部分である。更に、ストレージ３４から所定のフォームデータを読み出してエミュレーション処理部１２へ送出する部分でもある。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをＣＰＵが実行することによって起動される。
【００７９】
ストレージ３４は、ハードディスク等の不揮発性の記憶装置であり、外部装置（画像情報処理装置１を含む）からダウンロードされたフォームデータや認証印刷データ等を予め格納するメモリである。ここでフォームデータについて説明する。
図１４は、フォームデータ構成説明図である。
この図はフォームデータの一例を示す図である。図に示すように、第一のページ記述言語Ａによるコマンド１Ａ〜４Ａと、第２のページ記述言語Ｂによるコマンド１Ｂ、及びコマンド２Ｂからなり、このコマンド１Ｂ、及びコマンド２Ｂは、コマンド３Ａとコマンド４Ａとの間に挿入されている。このフォームデータは、例えば、数表データの罫線のみを表すデータであり、数値データにフォームデータを後から上書きすることによって数表データが生成される。又、特定の図形、例えば会社のロゴマーク等もこのフォームデータに含めても良い。認証印刷データとは、パスワード付きで送られてくるデータを予めストレージ３４に格納しておき、画像情報処理装置１からパスワードを受入れた時に印刷を開始するデータである。
【００８０】
続いて、実施例３の画像形成装置３２の動作について説明する。
図１５は、実施例３の動作フローチャート（その１）である。
図１６は、実施例３の動作フローチャート（その２）である。
図１７は、受信データの内容説明図である。
ステップＳ３−１１からステップＳ３−３４までステップ順に説明する。
動作説明の前提条件として図１４に示したフォームデータが、画像情報処理装置１（図１３）からダウンロードされ、ストレージ３４（図１３）に予め格納されているものとする。又、画像形成装置３２が画像情報処理装置１（図１３）から図１７に示す受信データを受信するものとする。
【００８１】
ステップＳ３−１１
データ受信部９（図１３）は、ネットワーク３（図１３）からフレームを受入れて分解し、受信ジョブを記憶部１０（図１３）に格納する。この印刷ジョブの格納アドレスやデータサイズは、データ受信部９（図１３）によってジョブ管理部１１（図１３）へ通知される。以後、印刷ジョブの格納アドレスやデータサイズは、ジョブ管理部１１（図１８）によって管理されることになる。
【００８２】
ステップＳ３−１２
ジョブ管理部１１（図１３）は、最初のデータ区分（このデータ区分を第１のページ記述言語とする）を参照し、最初のデータ区分に適用されるエミュレーションを判断し、エミュレーション（１）〜（ｎ）の中の何れかの種類に（以後、仮にエミュレーション（Ａ）と記す）印刷ジョブの受信を通知する。
【００８３】
ステップＳ３−１３
エミュレーション（Ａ）は、印刷ジョブの解析開始と印刷ジョブの情報（格納されているアドレス等）をデータ読み込み部１３（図１３）へ通知する。データ読み込み部１３（図１３）は、ジョブ管理部１１（図１３）を参照して印刷ジョブの最初のコマンド（ここではコマンド１０Ａ（図１７）が記憶部１０（図１３）に格納されているアドレスを把握して読み取り準備を完了する。
【００８４】
ステップＳ３−１４
エミュレーション（Ａ）は、印刷ジョブの解析に当たって必要な初期化を実行することになる。
【００８５】
ステップＳ３−１５
エミュレーション（Ａ）は、データ読み込み部３３（図１３）に対してデータ読み込みを要求する。このデータ読み込みが、記憶部１０（図１３）から読み込む場合にはステップＳ３−１６へ進み、ストレージ３４（図１３）から読み込む場合にはステップＳ３−２４へ進む。ここでは、コマンド１０Ａを読み込むのでステップＳ３−１６へ進むことになる。
【００８６】
ステップＳ３−１６
エミュレーション（Ａ）は、データ読み込み部３３（図１３）を介して記憶部１０（図１８）からデータ区分を読み込む。ここでは、コマンド１０Ａ（図１７）が読み込まれる。
ステップＳ３−１７
印刷ジョブ全ての解析が終了した場合にはフローを終了し、印刷ジョブ全ての解析が終了していなければ、ステップＳ３−１８へ進む。ここではステップＳ３−１８へ進むことになる。
【００８７】
ステップＳ３−１８
エミュレーション（Ａ）は、一つのコマンドの解析が終了するまで、ステップＳ３−１５〜ステップＳ３−１８を繰り返し、一つのコマンドの解析が終了すればステップＳ３−１９へ抜ける。
【００８８】
ステップＳ３−１９
直後に続くコマンドがマクロ実行コマンドでない場合にはステップＳ３−２０へ進み、マクロ実行コマンドの場合にはステップＳ３−２２へ進む。ここでは、直後に進むコマンド１１Ａは、マクロ実行コマンドではないのでステップＳ３−２０へ進む。ここでマクロ実行コマンドとは、予めストレージ３４（図１３）に格納されているフォームデータを実行するコマンドを言う。
【００８９】
ステップＳ３−２０
直後に続くコマンドが、第２のページ記述言語Ｂを含むコマンドでない場合にはステップＳ３−２１へ進み、第２のページ記述言語Ｂを含むコマンドの場合にはステップＳ３−２７へ進む。ここでは、コマンド１１Ａは、第２のページ記述言語Ｂを含むコマンドでないのでステップＳ３−２１へ進む。
【００９０】
ステップＳ３−２１
エミュレーション（Ａ）は、処理を継続しステップＳ３−１５へ戻る。エミュレーション（Ａ）は、ステップＳ３−１５〜ステップＳ３−２１を繰り返して、コマンド１１Ａ（図１７）を解析した後、コマンド１２Ａ（図１７）ではマクロが指定されているのでステップＳ３−１９からステップＳ３−２２へ抜けることになる。
【００９１】
ステップＳ３−２２
エミュレーション（Ａ）は、コマンドによって指定されているＩＤのフォームデータがストレージ３４（図１３）に、格納されているか否かを検索し、含まれている場合にはステップＳ３−２３へ進み、含まれていない場合にはコマンド無効として何も行わない。ここでは、動作説明の前提より、図１４に示すフォームデータがストレージ３４（図１３）に、格納されている。
【００９２】
ステップＳ３−２３
エミュレーションＡは、データ読み込み部３３（図１３）に対してフォームデータの読み込み開始を指定する。このときデータ読み込み部３３（図１３）は、その時まで参照していた記憶部１０（図１３）のメモリアドレスを保持したまま、フォームデータが格納されているストレージ３４（図１３）のアドレスを保持し、ステップＳ３−１５へ戻る。以下、ステップＳ３−１５からステップＳ３−２４へ抜ける。
【００９３】
ステップＳ３−２４
データ読み込み部３３（図１３）は、ストレージ３４（図１３）からフォームデータを読み込む。
ステップＳ３−２５
データ読み込み部３３（図１３）は、フォームデータの読み込みを完了するまでステップＳ３−２５、ステップＳ３−１７、ステップＳ３−１８、ステップＳ３−１９、ステップＳ３−２０、ステップＳ３−２１、ステップＳ３−１５、ステップＳ３−２４、ステップＳ３−２５を繰り返し、完了した後ステップＳ３−２６へ進む。この途中で図１４のコマンド１Ｂ及びコマンド２Ｂを読取る時は、ステップＳ３−２０を経てステップＳ３−２７へ進むことになる。
【００９４】
ステップＳ３−２６
エミュレーションＡは、データ読み込み部３３（図１３）に対して記憶部１０（図１３）からのデータ読み込み再開を通知する。データ読み込み部３３（図１３）は、ステップＳ３−１５へ戻り、ステップＳ３−２３で保持されている記憶部１０（図１３）のアドレスに戻ってデータ読み込みを再開する。ここでは、図１７のコマンド１３Ａが読み込まれ、読み込みが終わるとステップＳ３−１７から抜け出してフローを終了する。
【００９５】
次に、エミュレーションＢの動作について説明する。上記前提条件によれば、上記ステップＳ３−２５で説明したように、フォームデータの読み込みを完了するまでの途中で図１４のコマンド１Ｂ及びコマンド２Ｂを読取る時は、ステップＳ３−２０を経てステップＳ３−２７へ進むことになる。以下にこのフローについて説明する。
【００９６】
ステップＳ３−２７
エミュレーション（Ａ）は、エミュレーション（Ｂ）に対して解析するデータサイズを通知する。エミュレーション（Ｂ）は、この値を保存するとともに印刷ジョブの解析に当たって必要な初期化を実行することになる。ここでは、コマンド１Ｂ＋コマンド２Ｂのサイズが通知されることになる。
【００９７】
ステップＳ３−２８
上記ステップＳ３−２７で通知され、保存している指定サイズ分のデータ解析が終了していればステップＳ３−１５へ戻り、解析が終了していなければステップＳ３−２９へ進む。ここでは、未だ指定サイズ分のデータ解析が終了していないので、ステップＳ３−２９へ進む。
【００９８】
ステップＳ３−２９
データ読み込み部３３（図１３）の読み込み先がストレージ３４（図１３）の場合にはステップＳ３−３０へ進み、記憶部１０（図１３）の場合にはステップＳ３−３１へ進む。ここでは動作説明の前提条件よりステップＳ３−３０へ進むことになる。
【００９９】
ステップＳ３−３０
エミュレーション（Ｂ）は、データ読み込み部１３（図１３）を介してストレージ３４（図１３）からコマンドの読み込みを実行する。ここではコマンド１Ｂ（図１４）を読み込む。
【０１００】
ステップＳ３−３１
エミュレーション（Ｂ）は、データ読み込み部１３（図１３）を介して記憶部１０（図１３）からコマンドの読み込みを実行する。ここでは動作説明の前提条件に反する。
【０１０１】
ステップＳ３−３２
エミュレーション（Ｂ）は、ページ記述言語をＢとしてコマンド解析を実行する。
ステップＳ３−３３
一つのコマンドの解析が終了するまで、ステップＳ３−２８〜ステップＳ３−３３を繰り返し、一つのコマンドの解析が終了すればステップＳ３−３４へ抜ける。ここでは、コマンド１Ｂの解析が終了するとステップＳ３−３４へ抜ける。
【０１０２】
ステップＳ３−３４
エミュレーション（Ｂ）は、後に続くコマンド２Ｂ（図１４）を処理すべくステップＳ３−２８へ戻る。エミュレーション（Ｂ）は、ステップＳ３−２８〜ステップＳ３−３３を繰り返して、コマンド２Ｂ（図１４）を解析した後、ステップＳ３−２８へ戻り、ここからステップＳ３−１５へ戻る。再度ステップＳ３−１５〜ステップＳ３−２１、を繰り返して、コマンド４Ａの解析を終了してマクロ指定コマンド１２Ａ（図１７）の処理を終了し、コマンド１３Ａ（図１７）へ進み、上記のようにステップＳ３−１７を経て、ここでは、図１７のコマンド１３Ａが読み込まれ、読み込みが終わるとステップＳ３−１７から抜け出してフローを終了することになる。
【０１０３】
以上説明したように、本実施例によれば、良く使われるフォームデータ等を予めストレージに格納しておくことが出来る。従って、良く使われる数表を作成する場合等には、罫線データをストレージに予め格納しておき、後から送信する数表データを上書きすることによって数表を作成したり、パスワード付きで送られてくるデータを予めストレージに格納しておき、後からバスワードを受入れた時のみ、その内容を印刷すること等が可能になり、装置の利便性を増加させることが出来るという効果を得る。
【実施例４】
【０１０４】
本実施例では、上記実施例３において、データ読み込み部３３（図１３）がストレージ３４（図１３）からフォームデータを読み出す時間を短縮するために、アクセススピードが速いデータコピー領域を新たに画像形成装置の内部に設け、アクセススピードが遅いストレージ３４（図１３）から、フォームデータを所定量一括して格納可能な状態を形成することとする。
【０１０５】
図１８は、実施例４の印刷システム構成図である。
図に示すように、実施例４の印刷システムは、画像情報処理装置１と、画像形成装置４２と、ネットワーク３とを含む。以下に、実施例３と相違する部分のみについて詳細に説明する。実施例３と同様の部分については、実施例３と同一の符号を付して説明を省略する。
【０１０６】
画像形成装置４２は、データ受信部９と、記憶部１０と、ジョブ管理部１１と、エミュレーション処理部１２と、データ読み込み部４３と、ページデータ生成部１４と、展開部１５と、プリントエンジン部１６と、ストレージ３４と、データコピー領域４４とを備え、コマンド体系混在データを含むフレームをネットワーク３から受け入れて、混在データのそれぞれが適合するエミュレーションに基づいて解析し、それらの解析結果から印刷データを構成し、印刷処理して出力する印刷装置である。特に本実施例では、印刷データを構成するに際して、予め内部に保有するデータコピー領域４４からフォームデータを読み込むことによってフォームデータを読み込むために要する時間を短縮する。
【０１０７】
データ読み込み部４３は、ジョブ管理部１１を参照して記憶部１０から印刷ジョブのコマンドを読み出してエミュレーション処理部１２へ送出する部分である。更に、ストレージ３４から所定のフォームデータを読み出してエミュレーション処理部１２へ送出する部分でもある。更に、ストレージ３４から所定のフォームデータをまとめて読み出してデータコピー領域４４へ格納する部分でもある。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをＣＰＵが実行することによって起動される。
【０１０８】
データコピー領域４４は、ストレージ３４からフォームデータを所定量一括して受入れて格納するメモリである。通常、画像形成装置４２に備える図示しないＲＡＭ（ランダムアクセスメモリ）の一部の領域が当てられる。
【０１０９】
続いて、実施例４の画像形成装置４２の動作について説明する。
図１９は、実施例４の動作フローチャート（その１）である。
図２０は、実施例４の動作フローチャート（その２）である。
ステップＳ４−１１からステップＳ４−３８までステップ順に説明する。
動作説明の前提条件として図１４に示したフォームデータが、画像情報処理装置１（図１８）からダウンロードされ、ストレージ３４（図１８）に予め格納されているものとする。又、画像形成装置４２が画像情報処理装置１（図１８）から図１７に示す受信データを受信するものとする。
【０１１０】
ステップＳ４−１１
データ受信部９（図１８）は、ネットワーク３（図１８）からフレームを受入れて分解し、印刷ジョブを記憶部１０（図１８）に格納する。この印刷ジョブの格納アドレスやデータサイズは、データ受信部９（図１８）によってジョブ管理部１１（図１８）へ通知される。以後、印刷ジョブの格納アドレスやデータサイズは、ジョブ管理部１１（図１８）によって管理されることになる。
【０１１１】
ステップＳ４−１２
ジョブ管理部１１（図１８）は、最初のデータ区分（このデータ区分を第１のページ記述言語とする）を参照し、最初のデータ区分に適用されるエミュレーションを判断し、エミュレーション（１）〜（ｎ）の中の何れかの種類に（以後、仮にエミュレーション（Ａ）と記す）印刷ジョブの受信を通知する。
【０１１２】
ステップＳ４−１３
エミュレーション（Ａ）は、印刷ジョブの解析開始と印刷ジョブの情報（格納されているアドレス等）をデータ読み込み部１３（図１）へ通知する。データ読み込み部１３（図１８）は、ジョブ管理部１１（図１８）を参照して印刷ジョブの最初のコマンド（ここではコマンド１０Ａ（図１７）が記憶部１０（図１８）に格納されているアドレスを把握して読み取り準備を完了する。
【０１１３】
ステップＳ４−１４
エミュレーション（Ａ）は、印刷ジョブの解析に当たって必要な初期化を実行する。
【０１１４】
ステップＳ４−１５
エミュレーション（Ａ）は、データ読み込み部３３（図１８）に対してデータ読み込みを要求する。このデータ読み込みが、記憶部１０（図１８）から読み込む場合にはステップＳ４−１６へ進み、ストレージ３４（図１８）から読み込む場合にはステップＳ４−２４へ進む。ここでは、コマンド１０Ａを読み込むのでステップＳ４−１６へ進むことになる。
【０１１５】
ステップＳ４−１６
エミュレーション（Ａ）は、データ読み込み部３３（図１８）を介してデータ区分を読み込む。ここでは、コマンド１０Ａ（図１７）が読み込まれる。
ステップＳ４−１７
印刷ジョブ全ての解析が終了した場合にはフローを終了し、印刷ジョブ全ての解析が終了していなければ、ステップＳ４−１８へ進む。ここではステップＳ４−１８へ進むことになる。
【０１１６】
ステップＳ４−１８
エミュレーション（Ａ）は、一つのコマンドの解析が終了するまで、ステップＳ４−１５〜ステップＳ４−１８を繰り返し、一つのコマンドの解析が終了すればステップＳ４−１９へ抜ける。
【０１１７】
ステップＳ４−１９
直後に続くコマンドがマクロ実行コマンドでない場合にはステップＳ４−２０へ進み、マクロ実行コマンドの場合にはステップＳ４−２２へ進む。ここでは、直後に進むコマンド１１Ａは、マクロ実行コマンドではないのでステップＳ４−２０へ進む。ここでマクロ実行コマンドとは、予めストレージ３４（図１８）に格納されているフォームデータを実行するコマンドを言う。
【０１１８】
ステップＳ４−２０
直後に続くコマンドが、第２のページ記述言語Ｂを含むコマンドでない場合にはステップＳ４−２１へ進み、第２のページ記述言語Ｂを含むコマンドの場合にはステップＳ４−２９へ進む。ここでは、コマンド１１Ａは、第２のページ記述言語Ｂを含むコマンドでないのでステップＳ４−２１へ進む。
【０１１９】
ステップＳ４−２１
エミュレーション（Ａ）は、処理を継続しステップＳ４−１５へ戻る。エミュレーション（Ａ）は、ステップＳ４−１５〜ステップＳ４−２１を繰り返して、コマンド１１Ａ（図１７）を解析した後、コマンド１２Ａ（図１７）ではマクロが指定されているのでステップＳ４−１９からステップＳ４−２２へ抜けることになる。
【０１２０】
ステップＳ４−２２
エミュレーション（Ａ）は、コマンドによって指定されているＩＤのフォームデータがストレージ３４（図１８）に、格納されているか否かを検索し、含まれている場合にはステップＳ４−２３へ進み、含まれていない場合にはコマンド無効として何も行わない。ここでは、動作説明の前提より、図１４に示すフォームデータがストレージ３４（図１８）に、格納されている。
【０１２１】
ステップＳ４−２３
エミュレーションＡは、データ読み込み部３３（図１８）に対してフォームデータの読み込み開始を指定する。このときデータ読み込み部３３（図１８）は、その時まで参照していた記憶部１０（図１８）のメモリアドレスを保持したまま、フォームデータが格納されているストレージ３４（図１８）のアドレスを保持し、ステップＳ４−１５へ戻る。以下、ステップＳ４−１５からステップＳ４−２４へ抜ける。
【０１２２】
ステップＳ４−２４
データ読み込み部３３（図１８）は、データコピー領域４４（図１８）からフォームデータを読み込む。参照位置と格納サイズを更新する。
【０１２３】
ステップＳ４−２５
データ読み込み部３３（図１８）は、格納サイズが０になったときに、メモリサイズ分次のフォームデータを読み込んだ場合はステップＳ４−２７へ進み、データ終端のブロックでメモリサイズ分に満たない場合にはステップＳ４−２６へ進む。
【０１２４】
ステップＳ４−２６
データ読み込み部３３（図１８）は、ストレージ３４（図１８）のフォームデータファイルからフォームデータを読み込む。
【０１２５】
ステップＳ４−２７
データ読み込み部３３（図１８）は、フォームデータの読み込みを完了するまで、ステップＳ４−１７、ステップＳ４−１８、ステップＳ４−１９、ステップＳ４−２０、ステップＳ４−２１、ステップＳ４−１５、ステップＳ４−２４、ステップＳ４−２５、ステップＳ４−２６、ステップＳ４−２７を繰り返し、完了した後ステップＳ４−２８へ進む。この途中で図１４のコマンド１Ｂ及びコマンド２Ｂを読取る時は、ステップＳ４−２０を経てステップＳ４−２９へ進むことになる。
【０１２６】
ステップＳ４−２８
エミュレーションＡは、データ読み込み部３３（図１８）に対して記憶部１０（図１８）からのデータ読み込み再開を通知する。データ読み込み部３３（図１８）は、ステップＳ４−１５へ戻り、ステップＳ４−２３で保持されている記憶部１０（図１８）のアドレスに戻ってデータ読み込みを再開する。ここでは、図１７のコマンド１３Ａが読み込まれ、読み込みが終わるとステップＳ４−１７から抜け出してフローを終了する。
【０１２７】
次に、エミュレーションＢの動作について説明する。上記前提条件によれば、上記ステップＳ４−２７で説明したように、フォームデータの読み込みを完了するまでの途中で図１４のコマンド１Ｂ及びコマンド２Ｂを読取る時は、ステップＳ４−２０を経てステップＳ４−２９へ進むことになる。以下にこのフローについて説明する。
【０１２８】
ステップＳ４−２９
エミュレーション（Ａ）は、エミュレーション（Ｂ）に対して解析するデータサイズを通知する。エミュレーション（Ｂ）は、この値を保存するとともに印刷ジョブの解析に当たって必要な初期化を実行することになる。ここでは、コマンド１Ｂ＋コマンド２Ｂのサイズが通知されることになる。
【０１２９】
ステップＳ４−３０
上記ステップＳ４−２９で通知され、保存している指定サイズ分のデータ解析が終了していればステップＳ４−１５へ戻り、解析が終了していなければステップＳ４−３１へ進む。ここでは、未だ指定サイズ分のデータ解析が終了していないので、ステップＳ４−３１へ進む。
【０１３０】
ステップＳ４−３１
データ読み込み部３３（図１８）の読み込み先がストレージ３４（図１８）の場合にはステップＳ４−３２へ進み、記憶部１０（図１８）の場合にはステップＳ４−３５へ進む。ここでは動作説明の前提条件よりステップＳ４−３２へ進むことになる。
【０１３１】
ステップＳ４−３２
エミュレーション（Ｂ）は、データ読み込み部１３（図１８）を介してデータコピー領域４４（図１８）からコマンドの読み込みを実行する。ここではコマンド１Ｂ（図１４）を読み込んで、参照位置と格納サイズを更新する。
【０１３２】
ステップＳ４−３３
データ読み込み部３３（図１８）は、格納サイズが０になったときに、メモリサイズ分次のフォームデータを読み込んだ場合はステップＳ４−３６へ進み、データ終端のブロックでメモリサイズ分に満たない場合にはステップＳ４−３４へ進む。
【０１３３】
ステップＳ４−３４
データ読み込み部３３（図１８）は、ストレージ３４（図１８）のフォームデータファイルからフォームデータを読み込む。
【０１３４】
ステップＳ４−３５
エミュレーション（Ｂ）は、データ読み込み部１３（図１８）を介して記憶部１０（図１８）からコマンドの読み込みを実行する。ここでは動作説明の前提条件に反する。
【０１３５】
ステップＳ４−３６
エミュレーション（Ｂ）は、ページ記述言語をＢとしてコマンド解析を実行する。
ステップＳ４−３７
一つのコマンドの解析が終了するまで、ステップＳ４−３０〜ステップＳ４−３７を繰り返し、一つのコマンドの解析が終了すればステップＳ４−３８へ抜ける。ここでは、コマンド１Ｂの解析が終了するとステップＳ４−３８へ抜ける。
【０１３６】
ステップＳ４−３８
エミュレーション（Ｂ）は、後に続くコマンド２Ｂ（図１４）を処理すべくステップＳ４−３０へ戻る。エミュレーション（Ｂ）は、ステップＳ４−３０〜ステップＳ４−３７を繰り返して、コマンド２Ｂ（図１４）を解析した後、ステップＳ４−３８を経てステップＳ４−３０へ戻り、ここからステップＳ４−１５へ戻る。再度ステップＳ４−１５〜ステップＳ４−２１、を繰り返して、コマンド４Ａの解析を終了してマクロ指定コマンド１２Ａ（図１７）の処理を終了し、コマンド１３Ａ（図１７）へ進む。ここでは、図１７のコマンド１３Ａが読み込まれ、読み込みが終わるとステップＳ４−１７から抜け出してフローを終了することになる。
【０１３７】
以上説明したように、本実施例ではアクセススピードが速いデータコピー領域を新たに設けることによって、アクセススピードが遅いストレージからフォームデータを所定量一括して読み出すことが出来るので、処理時間を大幅に短縮できるという効果を得る。
【産業上の利用可能性】
【０１３８】
以上の説明では、本発明を印刷装置に適合させた場合について説明したが、本発明は、この例に限定されるものではない。即ち、ファクシミリ装置や、複合機などにも適合可能である。
【図面の簡単な説明】
【０１３９】
【図１】実施例１のシステム構成図である。
【図２】印刷ジョブの構成図である。
【図３】実施例１の画像情報処理装置の動作フローチャートである。
【図４】実施例１の動作フローチャート（その１）である。
【図５】実施例１の動作フローチャート（その２）である。
【図６】実施例１の動作説明図（その１）である。
【図７】実施例１の動作説明図（その２）である。
【図８】実施例２の印刷システム構成図である。
【図９】実施例２の印刷ジョブの構成図である。
【図１０】解析状態保存手段の説明図である。
【図１１】実施例２の動作フローチャート（その１）である。
【図１２】実施例２の動作フローチャート（その２）である。
【図１３】実施例３のシステム構成図である。
【図１４】フォームデータ構成説明図である。
【図１５】実施例３の動作フローチャート（その１）である。
【図１６】実施例３の動作フローチャート（その２）である。
【図１７】受信データの内容説明図である。
【図１８】実施例４の印刷システム構成図である。
【図１９】実施例４の動作フローチャート（その１）である。
【図２０】実施例４の動作フローチャート（その２）である。
【符号の説明】
【０１４０】
１    画像情報処理装置
２    画像形成装置
３    ネットワーク
４    アプリケーション処理部
５    言語選択部
６    データ変換部
７    印刷ジョブ構成部
８    データ送信部
９    データ受信部
１０    記憶部
１１    ジョブ管理部
１２    エミュレーション処理部
１３    データ読み込み部
１４    ページデータ生成部
１５    展開部
１６    プリントエンジン部
【図１】
2006099734.tif 000003
【図２】
2006099734.tif 000004
【図３】
2006099734.tif 000005
【図４】
2006099734.tif 000006
【図５】
2006099734.tif 000007
【図６】
2006099734.tif 000008
【図７】
2006099734.tif 000009
【図８】
2006099734.tif 000010
【図９】
2006099734.tif 000011
【図１０】
2006099734.tif 000012
【図１１】
2006099734.tif 000013
【図１２】
2006099734.tif 000014
【図１３】
2006099734.tif 000015
【図１４】
2006099734.tif 000016
【図１５】
2006099734.tif 000017
【図１６】
2006099734.tif 000018
【図１７】
2006099734.tif 000019
【図１８】
2006099734.tif 000020
【図１９】
2006099734.tif 000021
【図２０】
2006099734.tif 000022