画像形成装置及び印刷システム
【課題】 複数種類のページ記述言語を用いて一つの印刷ジョブを構成すること。
【解決手段】 言語選択部5は、複数種類のページ記述言語(プリンタドライバ(1)〜(n))の中から、送信画像情報の第一の部分を変換する第一のページ記述言語と、上記送信画像情報の第二の部分を変換する第二のページ記述言語とをそれぞれ選択し、印刷ジョブ構成部7は、上記第一のページ記述言語に基づいて変換された第一のコマンド体系に基づくデータと、上記第二のページ記述言語に基づいて変換された第二のコマンド体系に基づくデータとから、一つの画像データを構成する。
【解決手段】 言語選択部5は、複数種類のページ記述言語(プリンタドライバ(1)〜(n))の中から、送信画像情報の第一の部分を変換する第一のページ記述言語と、上記送信画像情報の第二の部分を変換する第二のページ記述言語とをそれぞれ選択し、印刷ジョブ構成部7は、上記第一のページ記述言語に基づいて変換された第一のコマンド体系に基づくデータと、上記第二のページ記述言語に基づいて変換された第二のコマンド体系に基づくデータとから、一つの画像データを構成する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数種類のページ記述言語を用いて1つの印刷要求を処理する印刷システムに関するものである。
【背景技術】
【0002】
従来、画像情報処理装置から画像形成装置へ送信される1つの印刷要求(以降印刷ジョブと記す)は、1種類のページ記述言語で定義されていた。従って、画像形成装置では、受信した1つの印刷ジョブの先頭から終端までを1種類のページ記述言語で処理していた。一方、ある種類のページ記述言語は、多彩なコマンド表現が可能であり図形描画に優れており、他の種類のページ記述言語は、コマンドも少なくスループットも早くなりテキスト系に向いている等、それぞれのページ記述言語は、固有の特色を有している。
【0003】
又、印刷ジョブによっては、長い文章中の何カ所かに図形が挿入されている場合等があり、上記、図形描画に優れているページ記述言語と、テキスト系に向いているページ記述言語の両方を用いたい場合も発生する。かかる場合に従来の技術では、ページ記述言語が変わると、ジョブの切れ目と判断され、前の処理部分が印刷出力されてしまう。その結果、1枚の印刷物として出力されることが好ましい印刷物であっても、複数枚の印刷物として出力されることになった。尚、複数種類のページ記述言語を有効に用いる技術も種々公開されている(例えば特許文献1参照)。
【特許文献1】特開2000−263857号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
解決しようとする問題点は、例えば、長い文章中の何カ所かに図形が挿入されている場合等において、図形描画に優れているページ記述言語と、テキスト系に向いているページ記述言語の両方を用いたい場合が発生しても、従来の技術では、ページ記述言語が変わると、ジョブの切れ目と判断され、前の処理部分が印刷出力されてしまう。その結果、1枚の印刷物として出力されることが好ましい印刷物であっても、複数枚の印刷物として出力されることになった点である。
【課題を解決するための手段】
【0005】
本発明に於いて、画像情報処理装置は、複数種類のページ記述言語の中から、送信画像情報の第一の部分を変換する第一のページ記述言語と、上記送信画像情報の第二の部分を変換する第二のページ記述言語とを、それぞれ選択する言語選択部と、第一のページ記述言語、及び、第二のページ記述言語に基づいて、画像情報を、それぞれのコマンドに変換するデータ変換部と、変換された複数のコマンド体系に基づくデータから、一つの印刷ジョブを構成する印刷ジョブ構成部とを備え、コマンド体系混在データを含む送信データを生成して送信することを主な特徴とする。
【0006】
画像形成装置は、コマンド体系混在データを受信すると、その内部構成を抽出して管理するジョブ管理部と、ジョブ管理部の指示に基づいて第一のコマンド体系に基づくデータを解析する第一のコマンド解析手段と、該第一のコマンド解析手段の解析処理に続けて、第一のコマンド体系に基づくデータの中に含まれている後続処理選択手段の指示に基づいて、後に続く第二のコマンド体系に基づくデータを解析する第二のコマンド解析手段とを備え、その解析結果からページデータを生成することを主な特徴とする。
【発明の効果】
【0007】
例えば、長い文章中の何カ所かに図形が挿入されている場合等があり、上記、図形描画に優れているページ記述言語と、テキスト系に向いているページ記述言語の両方を用いたい場合に、一つの印刷ジョブとしてまとめて処理出来るという効果を得る。
【発明を実施するための最良の形態】
【0008】
本発明によるシステムでは、上記画像情報処理装置に備える、言語選択部、データ変換部、及び印刷ジョブ構成部とを、画像情報処理装置内部に予めインストールされるプリンタドライバに含め、更に上記画像形成装置に備える、ジョブ管理部、第一のコマンド解析手段、及び第二のコマンド解析手段とを、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動されるコンピュータ制御手段によって実現した。
【実施例1】
【0009】
図1は、実施例1のシステム構成図である。
図に示すように、実施例1の印刷システムは、画像情報処理装置1と、画像形成装置2と、ネットワーク3とを含む。
【0010】
画像情報処理装置1は、アプリケーション処理部4と、言語選択部5と、データ変換部6と、印刷ジョブ構成部7と、データ送信部8とを備え、所定のアプリケーションに基づいて作成された印刷情報を所定の個数に区分し、各区分毎に、最適のページ記述言語で変換し、コマンド体系が異なる複数のデータを含む印刷ジョブを生成し、この印刷ジョブからなる送信データをネットワークへ送出する装置であり、通常パーソナルコンピュータ(以後PCと記す)が用いられる。
【0011】
アプリケーション処理部4は、PC内部のOS(オペレーションシステム)の管理に基づいて、オペレータが、例えば文章や画形描画などを含む、印刷情報を作成するのを可能にする部分である。このアプリケーション処理部4は、PC内部のハードディスク(図示していない)等に予めインストールされている所定の制御プログラム(表計算ツールや文書作成ツール等)をPC内部のCPU(中央演算処理装置)が実行することによって起動される部分である。
【0012】
言語選択部5は、アプリケーション処理部4から印刷情報を受け入れて解析し、オペレータが作成した印刷情報を第1の部分(例えば文章部分)と、第2の部分(例えば画形描画部分)に分割し、それぞれの各部分を変換するのに最適なページ記述言語を選択する部分である。この言語選択部5は、PC内部のプリンタドライバに含まれている、所定の制御プログラムをPC内部のCPU(中央演算処理装置)が実行することによって起動される部分である。
【0013】
データ変換部6は、印刷情報の第1の部分を、言語選択部5によって選択された第1のページ記述言語Aに基づいて第一のコマンド体系に変換し、印刷情報の第2の部分を言語選択部5によって選択された第2のページ記述言語Bに基づいて第二のコマンド体系に変換する部分である。尚、第1のページ記述言語A、又は、第2のページ記述言語Bとして、言語選択部5によって選択されうる複数種類のページ記述言語は、プリンタドライバの内部にプリンタドライバ(1)〜プリンタドライバ(n)として予め含まれている。データ変換部6は、言語選択部5が選択したプリンタドライバ(1)〜(n)に対応する制御プログラムをPC内部のCPU(中央演算処理装置)が実行することによって起動される部分である。
【0014】
印刷ジョブ構成部7は、第1のページ記述言語Aに基づいて変換された第一のコマンド体系に基づくデータと、第2のページ記述言語Bに基づいて変換された第二のコマンド体系に基づくデータとから、印刷ジョブを構成し、送信データを構成する部分である。この印刷ジョブ構成部7は、PC内部のプリンタドライバに予め含まれている、所定の制御プログラムをPC内部のCPUが実行することによって起動される部分である。次に、印刷ジョブ構成部7が構成する印刷ジョブの一例について説明する。
【0015】
図2は、印刷ジョブの構成図である。
図に示すように、ここに示されている印刷ジョブ(一例)は、6個のデータ区分に分割され、先頭から順番に7−1は、第1のページ記述言語Aによって変換されたコマンド1A、7−2は、第1のページ記述言語Aによって変換されたコマンド2A、7−3は、第1ページ記述言語Aによって変換されたコマンド3A、7−4は、第2のページ記述言語Bによって変換されたコマンド1B、7−5は、第2のページ記述言語Bによって変換されたコマンド2B、7−6は、第1のページ記述言語Aによって変換されたコマンド4Aである。
【0016】
図に示すように、この例では、第1のページ記述言語Aで変換されたコマンドが1Aから4Aまで続き、コマンド3Aとコマンド4Aとの間に、第2のページ記述言語Bで変換されたコマンド1Bと、コマンド2Bとが挿入されている。又、第2のページ記述言語Bで変換されたコマンドが挿入される直前のコマンド(ここではコマンド3A)には、後に続く(挿入される)コマンドの第2のページ記述言語Bの開始と、そのデータサイズ(ここではコマンド1B+コマンド2B)が含まれている。
【0017】
図1に戻って、データ送信部8は、印刷ジョブ構成部7から印刷ジョブを受け入れて、その先頭及び後尾に、送出するネットワークのプロトコルに基づくアドレス、フレームチェックシーケンス等を付加してフレームを構成し、画像形成装置2に向けて、ネットワークへ送出する部分である。以上で画像情報処理装置1の構成に関する説明を終了し、続いて、画像形成装置2の構成について説明する。
【0018】
画像形成装置2は、データ受信部9と、記憶部10と、ジョブ管理部11と、エミュレーション処理部12と、データ読み込み部13と、ページデータ生成部14と、展開部15と、プリントエンジン部16とを備え、コマンド体系混在データを含むフレームをネットワーク3から受け入れて、混在データのそれぞれが適合するエミュレーションに基づいて解析し、それらの解析結果から印刷データを構成し、印刷処理して出力する印刷装置(例えば、プリンタ)である。
【0019】
データ受信部9は、ネットワーク3からフレームを受け入れて、印刷ジョブ(図2)を記憶部10へ格納する部分である。
記憶部10は、データ受信部9から、印刷ジョブ(図2)を受け入れて、図に示すように各データ区分毎(ここではコマンド毎)に、複数個のデータ集合として格納するバッファである。一例として図2に示す印刷ジョブを受け入れた場合には、印刷ジョブを構成している順番に、コマンド1(A)、コマンド2(A)・・・・コマンド2(B)、コマンド4(A)と、受け入れ順に格納される。
【0020】
ジョブ管理部11は、コマンド体系混在データの内部構成を抽出して保持し、管理する部分である。即ち、データ受信部9から印刷ジョブ(図2)を受入れて、受信した印刷ジョブの第1のページ記述言語Aの種類を判定し、エミュレーション処理部12へ通知すると共に、記憶部10に格納されている各コマンド毎の格納アドレスとデータサイズの管理を行う部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
【0021】
エミュレーション処理部12は、その内部に複数種類のエミュレーション(1)〜(n)と、後続処理選択手段12−1とを有し、ジョブ管理部11の指示及び管理に基づいて、データ読み込み部13を介して記憶部10からデータ区分(コマンド)を順番に読み出して、適合するエミュレーションに基づいて解析する部分である。更に、データ区分の最後尾を検索し、後に続く(挿入される)コマンドの第2のページ記述言語Bの開始と、データサイズを検出した場合には、その指示に従ってエミュレーションの種類を変更する部分でもある。
【0022】
即ち、エミュレーション処理部12は、ジョブ管理部11から、受信した印刷ジョブの最初のデータ区分から第1のページ記述言語Aを受け入れると、記憶部10に格納されている最初のコマンドを読み出して、第1のページ記述言語Aに対応するエミュレーションに基づいて、そのコマンドを解析する。一つのコマンドの解析に於いて、後続処理選択手段12−1が、後に続く(挿入される)コマンドの第2のページ記述言語Bの開始と、データサイズが含まれている否かを検索する。もし、含まれていなければ、そのまま、後に続くコマンドの解析を継続し、もし含まれていれば、後に続く(挿入される)コマンドの第2のページ記述言語Bの種類に対応するエミュレーションに基づいて、挿入されているコマンドを解析する部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
【0023】
データ読み込み部13は、ジョブ管理部11を参照して記憶部10から印刷ジョブのコマンドを読み出してエミュレーション処理部12へ送出する部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
【0024】
ページデータ生成部14は、エミュレーション処理部12の解析結果を中間言語に変換する部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
展開部15は、ページデータ生成部14が、中間言語に変換したページ描画内容をビットマップデータに展開してプリントエンジン部16へ送出する部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
【0025】
プリントエンジン部16は、展開部15からビットマップデータを受け入れて印刷出力する部分である。
ネットワーク3は、画像情報処理装置1と画像形成装置2とを回線接続する、例えばLAN(ローカルエリアネットワーク)等の情報通信網である。
【0026】
次に実施例1の動作について説明する。
最初に画像情報処理装置1(図1)の動作について説明し、続いて画像形成装置2(図1)の動作について説明する。
図3は、実施例1の画像情報処理装置の動作フローチャートである。
ステップS1−1からステップS1−4までステップ順に実施例1の画像情報処理装置の動作について説明する。
【0027】
ステップS1−1
オペレータがアプリケーション処理部4(図1)を用いて印刷情報を作成し、印刷を要求する。
ステップS1−2
言語選択部5(図1)は、アプリケーション処理部4(図1)から印刷情報を受け入れて解析し、印刷情報を第1の部分と、第2の部分に分割し、それぞれの各部分を変換するのに最適なページ記述言語を選択する。例えば、文字はページ記述言語A、表はページ記述言語B、図はページ記述言語C、写真はページ記述言語Dなどの情報を格納しておき、それらに基づいて選択する。
【0028】
ステップS1−3
データ変換部6(図1)は、印刷情報の第1の部分を、言語選択部5(図1)によって選択された第1のページ記述言語Aに基づいて変換し、印刷情報の第2の部分を言語選択部5(図1)によって選択された第2のページ記述言語Bに基づいて変換する。
【0029】
ステップS1−4
印刷ジョブ構成部7は、第1のページ記述言語Aに基づいて変換された第一のコマンド体系に基づくデータと、第2のページ記述言語Bに基づいて変換された第二のコマンド体系に基づくデータとから、図2で説明した印刷ジョブを構成する。
【0030】
ステップS1−5
データ送信部8(図1)は、印刷ジョブの先頭及び後尾に、送出するネットワークのプロトコルに基づくアドレス、フレームチェックシーケンス等を付加してフレームを構成し、画像形成装置2に向けて、ネットワーク3(図1)へ送出してフローを終了する。
【0031】
続いて、実施例1の画像形成装置2の動作について説明する。
図4は、実施例1の動作フローチャート(その1)である。
図5は、実施例1の動作フローチャート(その2)である。
図6は、実施例1の動作説明図(その1)である。
図7は、実施例1の動作説明図(その2)である。
図4及び図5を用いて、一例として、画像形成装置2がネットワーク3(図1)から送信データを受信し、印刷処理するものとして説明する。ステップS1−11からステップS1−27までステップ順に説明する。その中で図6及び図7を適宜用いることとする。尚、この図6及び図7に記載されている印刷ジョブの内部構成は図2に於ける印刷ジョブの内部構成と全く同一である。
【0032】
ステップS1−11
データ受信部9(図1)は、ネットワーク3(図1)からフレームを受信して分解し、印刷ジョブ(図2)を記憶部10(図1)に格納する。この印刷ジョブの格納アドレスやデータサイズは、データ受信部9(図1)によってジョブ管理部11(図1)へ通知される。以後、印刷ジョブの格納アドレスやデータサイズは、ジョブ管理部11(図1)によって管理されることになる。
【0033】
ステップS1−12
ジョブ管理部11(図1)は、最初のデータ区分(このデータ区分を第1のページ記述言語とする)を参照し、最初のデータ区分に適用されるエミュレーションを判断し、エミュレーション(1)〜(n)の中の何れかの種類に(以後、仮にエミュレーション(A)と記す)印刷ジョブの受信を通知する。
【0034】
ステップS1−13
エミュレーション(A)は、印刷ジョブの解析開始と印刷ジョブの情報(格納されているアドレス等)をデータ読み込み部13(図1)へ通知する。データ読み込み部13(図1)は、ジョブ管理部11(図1)を参照して印刷ジョブの最初のコマンド(ここではコマンド1A(図6(a))が記憶部10(図1)に格納されているアドレスを把握して読み取り準備を完了する。
【0035】
ステップS1−14
エミュレーション(A)は、印刷ジョブの解析に当たって必要な初期化を実行する。
ステップS1−15
エミュレーション(A)は、データ読み込み部13(図1)を介してデータ区分を読み込む。ここでは、コマンド1Aが読み込まれる(図6(a))。
【0036】
ステップS1−16
印刷ジョブ全ての解析が終了した場合にはステップS1−27を通ってフローを終了し、印刷ジョブ全ての解析が終了していなければ、ステップS1−17へ進む。ここでは終了していないのでステップS1−17へ進む。
【0037】
ステップS1−17
エミュレーション(A)は、ページ記述言語をAとしてコマンド解析を実行する。
ステップS1−18
一つのコマンドの解析が終了するまで、ステップS1−15〜ステップS1−18を繰り返し、一つのコマンドの解析が終了すればステップS1−19へ抜ける。
【0038】
ステップS1−19
後続処理選択手段12−1(図1)は、処理中のコマンドの後尾に、後に続く(挿入される)コマンドの第2のページ記述言語Bの開始と、データサイズ(図6(b)の7−3)含まれている否かの検索を継続し、検出出来ない時は、ステップS1−20へ進み、検出できたときにはステップS1−21へ進む。ここでは、未だ、コマンド1A(図6(a))であり、検出できないのでステップS1−20へ進む。
【0039】
ステップS1−20
エミュレーション(A)は、処理を継続しステップS1−15へ戻る。エミュレーション(A)は、ステップS1−15〜ステップS1−20を繰り返して、コマンド2A(図6(a))を解析した後、更に、ステップS1−15〜ステップS1−19を繰り返して、コマンド3A(図6(a))を解析するとステップS1−19で、後続処理選択手段12−1(図1)は、コマンド3Aの後尾に、後に続く(挿入される)コマンドの第2のページ記述言語Bの開始と、データサイズ含まれているのを検出し、(図6(b))ステップS1−21へ進むことになる。
【0040】
ステップS1−21
エミュレーション(A)(図1)は、エミュレーション(B)(図1)に対して解析するデータサイズを通知する。エミュレーション(B)(図1)は、この値を保存するとともに印刷ジョブの解析に当たって必要な初期化を実行することになる。ここでは、コマンド1B+コマンド2Bのサイズが通知されることになる(図6(b))。
【0041】
ステップS1−22
上記ステップS1−21で通知され、保存している指定サイズ分のデータ解析が終了していればステップS1−15へ戻り、解析が終了していなければステップS1−23へ進む。ここでは、未だ指定サイズ分のデータ解析が終了していないので、ステップS1−23へ進む。
【0042】
ステップS1−23
エミュレーション(B)は、データ読み込み部13(図1)を介してコマンドの読み込みを実行する。ここではコマンド1B(図7(a))を読み込む。
ステップS1−24
エミュレーション(B)は、ページ記述言語をBとしてコマンド解析を実行する。
【0043】
ステップS1−25
一つのコマンドの解析が終了するまで、ステップS1−22〜ステップS1−25を繰り返し、一つのコマンドの解析が終了すればステップS1−26へ抜ける。ここでは、コマンド1Bの解析が終了するとステップS1−26へ抜ける。
【0044】
ステップS1−26
エミュレーション(B)は、後に続くコマンド2B(図6(a))を処理すべくステップS1−22へ戻る。エミュレーション(B)は、ステップS1−22〜ステップS1−25を繰り返して、コマンド2B(図7(a))を解析した後、ステップS1−22へ戻り、ここからステップS1−15へ戻る。再度ステップS1−15〜ステップS1−20、を繰り返して、コマンド4Aの解析を終了したあと(図7(b))ステップS1−15へ戻り、ステップS1−16からフロー終了へ抜けることになる。
ステップS1−27
エミュレーション(A)の解析結果と、エミュレーション(B)の解析結果とを一つの画像データとして処理(印刷)してフローを終了する。
【0045】
以上説明したように、実施例1によれば、例えば、長い文章中の何カ所かに図形が挿入されている場合等があり、上記、図形描画に優れているページ記述言語と、テキスト系に向いているページ記述言語の両方を用いたい場合であっても複数ページの印刷に分割されることなく、一つの印刷ジョブとしてまとめて処理出来るという効果を得る。
【0046】
尚、上記説明では、一つの印刷ジョブの中に第1のページ記述言語Aと、第2のページ記述言語Bの2種類のページ記述言語を含ませる場合に限定して説明したが、本発明は、この例に限定されるものではない。即ち、第1のページ記述言語Aと、第2のページ記述言語B、第3のページ記述言語C、第4のページ記述言語D・・・、と複数のページ記述言語を含ませることも可能である。
【実施例2】
【0047】
本実施例では、第1のページ記述言語Aに基づくコマンドAの間に第2のページ記述言語Bに基づくコマンドBが挿入される場合であって、そのコマンドBの一部がデータ一区分からはみ出る場合を想定する。
【0048】
図8は、実施例2の印刷システム構成図である。
図に示すように、実施例2の印刷システムは、画像情報処理装置1と、画像形成装置22と、ネットワーク3とを含む。以下に実施例1との相違部分のみについて説明する。実施例1と同様の部分については、実施例1と同様の符合を付して説明を省略する。
【0049】
画像形成装置22は、データ受信部9と、記憶部10と、ジョブ管理部11と、エミュレーション処理部23と、データ読み込み部13と、ページデータ生成部14と、展開部15と、プリントエンジン部16とを備え、コマンド体系混在データを含むフレームをネットワーク3から受け入れて、混在データのそれぞれが適合するエミュレーションに基づいて解析し、それらの解析結果から印刷データを構成し、印刷処理して出力する印刷装置である。
【0050】
エミュレーション処理部23は、その内部に複数種類のエミュレーション(1)〜(n)と、後続処理選択手段12−1と、解析状態保存手段23−1とを有し、ジョブ管理部11の指示及び管理に基づいて、データ読み込み部13を介して記憶部10からデータ区分を順番に読み出して、適合するエミュレーションに基づいて解析する部分である。又、データ区分の最後尾を検索し、後に続く(挿入される)データ区分の第2のページ記述言語Bの開始と、データサイズを検出した場合には、その指示に従ってエミュレーションの種類を変更する部分でもある。
【0051】
更に、第2のページ記述言語Bに基づくデータ区分を解析した場合には、その解析状態を保存する解析状態保存手段23−1を有する部分でもある。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。その他の部分は実施例1と全く同様なので説明を省略する。以下に解析状態保存手段23−1を詳細に説明する。
【0052】
図9は、実施例2の印刷ジョブの構成図である。
この図は、冒頭に記した、第1のページ記述言語Aに基づくコマンドAの間に第2のページ記述言語Bに基づくコマンドBが挿入される場合であって、そのコマンドBがコマンドの一区切りから一部分はみ出る場合を表している。
【0053】
図に示すように、ここに示されている印刷ジョブ(一例)は、6個+αのデータ区分に分割され、先頭から順番に30−1は、第1のページ記述言語Aによって変換されたコマンド1A、30−2は、第1のページ記述言語Aによって変換されたコマンド2A、33−3(1)は、第2のページ記述言語Bによって変換されたコマンド1Bの一部、30−4は、第1のページ記述言語Aによって変換されたコマンド3A、30−5は、第1のページ記述言語Aによって変換されたコマンド4A、33−3(2)は、第2のページ記述言語Bによって変換されたコマンド1Bの残りの一部、30−6は、第1のページ記述言語Aによって変換されたコマンド5Aである。
【0054】
図に示すように、この例では、第1のページ記述言語Aで変換されたコマンドが1Aから5Aまで続き、コマンド2Aとコマンド3Aとの間に、第2のページ記述言語Bで変換されたコマンド1Bの一部と、コマンド4Aとコマンド5Aとの間に、第2のページ記述言語Bで変換されたコマンド1Bの残りの一部が挿入されている。又、第2のページ記述言語Bで変換されたコマンドが挿入される直前のデータ区分(ここでは30−2及び30−5)の最後尾には、後に続く(挿入される)データ区分における第2のページ記述言語Bの開始と、そのデータサイズ(ここでは30−2(コマンド1Bの一部)、30−5(コマンド1Bの残りの一部))が含まれている。
【0055】
図10は、解析状態保存手段の説明図である。
(a)は、解析状態保存領域の一例を示し、(b)は、コマンドが分割された状態の一例を表している。
一例として(b)に示すように「START#−2.35L」(例えば印刷開始位置を-2.35mm左へ移動させるコマンド)とまとまって、始めて意味を有するコマンドを小数点1位の3を境に、前部分START#−2.3と後部分5Lに分割して印刷ジョブを生成する場合について説明する。かかる場合に前部分START#−2.3は、図9のデータ区分33−3(1)に、後部分5Lは図9のデータ区分33−3(2)に格納される。
【0056】
第2のページ記述言語Bが、図9のデータ区分33−3(1)を解析終了した段階で(a)に示す解析状態が保存される。この状態についてテーブルの上から順番に説明する。モード40−1は、一連のコマンドを解析中であるか否かを示し、解析中の場合には、解析中、解析終了の場合には、解析完、が保存される。図9のデータ区分33−3(1)が解析された段階では解析中が保存される。カテゴリ40−2は、解析に用いられたテーブル(予め解析のために用意されている複数のテーブルの内の一つ)のナンバーを示し、ここでは例えば7が保存される。
【0057】
整数値40−3は、一連のコマンドの整数値を示し、ここでは2が保存される。小数点値40−4は、一連のコマンドの小数値を表し、ここでは、(b)に示すように3を境に分割されているので3のみが保存される。後の処理によって5が解析されることによって35になる筈である。符合40−5は、一連のコマンドの符合を示し、ここでは−が保存される。更に、図9のデータ区分33−3(2)が解析された段階では、モード40−1には解析完が、少数点値40−4には、35が保存され、一連のコマンドSTART#−2.35Lが成立することになる。
【0058】
続いて、実施例2の画像形成装置22の動作について説明する。
図11は、実施例2の動作フローチャート(その1)である。
図12は、実施例2の動作フローチャート(その2)である。
図11及び図12を用いて、一例として、画像形成装置22がネットワーク3から図9に示す送信データを受信し、印刷処理するものとして説明する。ステップS2−1からステップS2−19までステップ順に説明する。
【0059】
ステップS2−1
データ受信部9(図8)は、ネットワーク3(図8)からフレームを受信して分解し、印刷ジョブ(図9)を記憶部10(図8)に格納する。この印刷ジョブの格納アドレスやデータサイズは、データ受信部9(図8)によってジョブ管理部11(図8)へ通知される。以後、印刷ジョブの格納アドレスやデータサイズは、ジョブ管理部11(図8)によって管理されることになる。
【0060】
ステップS2−2
ジョブ管理部11(図8)は、最初のデータ区分(このデータ区分を第1のページ記述言語とする)を参照し、最初のデータ区分に適用されるエミュレーションを判断し、エミュレーション(1)〜(n)の中の何れかの種類に(以後、仮にエミュレーション(A)と記す)印刷ジョブの受信を通知する。
【0061】
ステップS2−3
エミュレーション(A)は、印刷ジョブの解析開始と印刷ジョブの情報(格納されているアドレス等)をデータ読み込み部13(図8)へ通知する。データ読み込み部13(図8)は、ジョブ管理部11(図8)を参照して印刷ジョブの最初のデータ区分30−2(図9)が記憶部10(図8)に格納されているアドレスを把握して読み取り準備を完了する。
【0062】
ステップS2−4
エミュレーション(A)は、印刷ジョブの解析に当たって必要な初期化を実行する。
ステップS2−5
エミュレーション(A)は、データ読み込み部13(図8)を介してデータ区分(ここでは30−1(図9))を読み込む。
【0063】
ステップS2−6
印刷ジョブ全ての解析が終了した場合にはステップS2−19を通ってフローを終了し、印刷ジョブ全ての解析が終了していなければ、ステップS2−7へ進む。ここでは終了していないのでステップS2−7へ進む。
【0064】
ステップS2−7
エミュレーション(A)は、ページ記述言語をAとしてコマンド解析を実行する。
ステップS2−8
データ区分の解析が終了し一つのコマンドが生成するまで、ステップS2−5〜ステップS2−8を繰り返し、一つのコマンドが生成すればステップS2−9へ抜ける。
【0065】
ステップS2−9
後続処理選択手段12−1(図8)は、処理中のデータ区分の後尾に、後に続く(挿入される)データ区分に於ける第2のページ記述言語Bの開始と、データサイズが含まれている否かの検索を継続し、検出出来ない時は、ステップS2−10へ進み、検出できたときにはステップS2−11へ進む。ここでは、未だ、データ区分30−1(コマンド1A(図9))であり、検出できないのでステップS2−10へ進む。
【0066】
ステップS2−10
エミュレーション(A)は、処理を継続しステップS2−5へ戻る。エミュレーション(A)は、ステップS2−5〜ステップS2−8を繰り返して、データ区分30−1(コマンド2A(図9))を解析した後、ステップS2−9で、後続処理選択手段12−1(図8)は、データ区分30−2(図9)の後尾に、後に続く(挿入される)データ区分における第2のページ記述言語Bの開始と、データサイズ含まれているのを検出し、ステップS2−11へ進むことになる。
【0067】
ステップS2−11
エミュレーション(A)は、エミュレーション(B)に対して解析するデータサイズを通知する。エミュレーション(B)は、この値を保存するとともに印刷ジョブの解析に当たって必要な初期化を実行することになる。ここでは、データ区分33−3(1)(コマンド1Bの一部のサイズ(図9))が通知されることになる。
【0068】
ステップS2−12
エミュレーション(B)(図8)は、解析状態保存手段23−1(図8)に基づいて、前回の解析状態へ復帰する。但し、ここでは前回の状態は未だ格納されていないので無視することになる。
【0069】
ステップS2−13
上記ステップS2−11で通知され、保存している指定サイズ分のデータ解析が終了していればステップS2−17へ進み、解析が終了していなければステップS2−14へ進む。ここでは、未だ指定サイズ分のデータ解析が終了していないので、ステップS2−14へ進む。
【0070】
ステップS2−14
エミュレーション(B)は、データ読み込み部13(図8)を介してデータ区分の読み込みを実行する。ここではデータ区分33−3(1)(コマンド1Bの一部(図9))を読み込む。
ステップS2−15
エミュレーション(B)は、ページ記述言語をBとしてコマンド解析を実行する。
【0071】
ステップS2−16
一つのコマンドの解析が終了するまで、ステップS2−13〜ステップS2−16を繰り返し、一つのコマンドの解析が終了(一つのコマンドが成立)すればステップS2−18へ抜ける。ここでは、コマンド1Bの全てを解析していないのでステップS2−13へ戻る。又、ステップS2−13へ戻ったときに、ステップS2−11で通知されたデータサイズの全ての解析が終了していればステップS2−17へ進む。ここでは、コマンド1Bの一部(図9の33−3(1))のデータサイズが終了しているので、ステップS2−13を経てステップS2−17へ進む。
【0072】
ステップS2−17
エミュレーション(B)は、ステップS2−11で通知されたデータサイズ(ここでは、コマンド1Bの一部)が終了しているので、この時点でのコマンド解析状態で解析状態保存手段23−1(図8)を保存してステップS2−5へ戻る。エミュレーション(A)は、再度ステップS2−5〜ステップS2−10を2回繰り返し、コマンド3A、コマンド4Aの解析を終了したあとステップS2−9からステップS2−11へ進むことになる。次に、コマンド1Bの残りの一部(データ区分33−3(2)(図2))に対して、ステップS2−11からステップS2−16が繰り返され、コマンド1Bの残りの一部が解析されると、データ区分33−3(1)(図9)に追加され、コマンド1Bが成立する。そこでステップS2−18へ進む。
【0073】
ステップS2−18
コマンド1Bが成立したので、ステップS2−13、ステップS2−17(このときは、解析状態保存領域のモード40−1(図10)は解析完で保存)を通ってステップS2−5へ戻る。再度ステップS2−5〜ステップS2−10を繰り返し、データ区分30−6(コマンド5A(図9))の解析を終了した後ステップS2−6へ戻り、このステップS2−6からステップS2−19へ進む。
ステップS2−19
エミュレーション(A)の解析結果と、エミュレーション(B)の解析結果とを一つの画像データとして処理(印刷)してフローを終了する。
【0074】
以上説明したように、本実施例によれば、第2のページ記述言語Bによって変換されたコマンドが、一連のコマンドの途中で分断されていても、コマンドの一部を含むデータ区分の解析終了時点で、解析状態を保存することが可能になるため、後(直後である必要はない)に続くコマンドの残りの一部を解析し、コマンドを復元することが可能になる。その結果、一つのコマンドを必ずしも一つのデータ区分に含める必要がなくなり、送信フレームの構成に自由度が増加するという効果を得る。
【実施例3】
【0075】
本実施例では、良く使われる定型数表を印刷する場合等において、罫線データを画像形成装置のストレージに予め格納しておき、後から受信する数表データを上書きすることによって定型数表を作成したり、パスワード付きで送られてくるデータを予めストレージに格納しておき、後からパスワードを受入れた時のみ、その内容を印刷すること等が可能なシステムを構築する。
【0076】
図13は、実施例3のシステム構成図である。
図に示すように、実施例3の印刷システムは、画像情報処理装置1と、画像形成装置32と、ネットワーク3とを含む。以下に、実施例1と相違する部分のみについて詳細に説明する。実施例1と同様の部分については、実施例1と同一の符号を付して説明を省略する。
【0077】
画像形成装置32は、データ受信部9と、記憶部10と、ジョブ管理部11と、エミュレーション処理部12と、データ読み込み部33と、ページデータ生成部14と、展開部15と、プリントエンジン部16と、ストレージ34とを備え、コマンド体系混在データを含むフレームをネットワーク3から受け入れて、混在データのそれぞれが適合するエミュレーションに基づいて解析し、それらの解析結果から印刷データを構成し、印刷処理して出力する印刷装置である。特に本実施例では、印刷データを構成するに際して、予め内部に保有するフォームデータを利用可能とする。
【0078】
データ読み込み部33は、ジョブ管理部11を参照して記憶部10から印刷ジョブのコマンドを読み出してエミュレーション処理部12へ送出する部分である。更に、ストレージ34から所定のフォームデータを読み出してエミュレーション処理部12へ送出する部分でもある。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
【0079】
ストレージ34は、ハードディスク等の不揮発性の記憶装置であり、外部装置(画像情報処理装置1を含む)からダウンロードされたフォームデータや認証印刷データ等を予め格納するメモリである。ここでフォームデータについて説明する。
図14は、フォームデータ構成説明図である。
この図はフォームデータの一例を示す図である。図に示すように、第一のページ記述言語Aによるコマンド1A〜4Aと、第2のページ記述言語Bによるコマンド1B、及びコマンド2Bからなり、このコマンド1B、及びコマンド2Bは、コマンド3Aとコマンド4Aとの間に挿入されている。このフォームデータは、例えば、数表データの罫線のみを表すデータであり、数値データにフォームデータを後から上書きすることによって数表データが生成される。又、特定の図形、例えば会社のロゴマーク等もこのフォームデータに含めても良い。認証印刷データとは、パスワード付きで送られてくるデータを予めストレージ34に格納しておき、画像情報処理装置1からパスワードを受入れた時に印刷を開始するデータである。
【0080】
続いて、実施例3の画像形成装置32の動作について説明する。
図15は、実施例3の動作フローチャート(その1)である。
図16は、実施例3の動作フローチャート(その2)である。
図17は、受信データの内容説明図である。
ステップS3−11からステップS3−34までステップ順に説明する。
動作説明の前提条件として図14に示したフォームデータが、画像情報処理装置1(図13)からダウンロードされ、ストレージ34(図13)に予め格納されているものとする。又、画像形成装置32が画像情報処理装置1(図13)から図17に示す受信データを受信するものとする。
【0081】
ステップS3−11
データ受信部9(図13)は、ネットワーク3(図13)からフレームを受入れて分解し、受信ジョブを記憶部10(図13)に格納する。この印刷ジョブの格納アドレスやデータサイズは、データ受信部9(図13)によってジョブ管理部11(図13)へ通知される。以後、印刷ジョブの格納アドレスやデータサイズは、ジョブ管理部11(図18)によって管理されることになる。
【0082】
ステップS3−12
ジョブ管理部11(図13)は、最初のデータ区分(このデータ区分を第1のページ記述言語とする)を参照し、最初のデータ区分に適用されるエミュレーションを判断し、エミュレーション(1)〜(n)の中の何れかの種類に(以後、仮にエミュレーション(A)と記す)印刷ジョブの受信を通知する。
【0083】
ステップS3−13
エミュレーション(A)は、印刷ジョブの解析開始と印刷ジョブの情報(格納されているアドレス等)をデータ読み込み部13(図13)へ通知する。データ読み込み部13(図13)は、ジョブ管理部11(図13)を参照して印刷ジョブの最初のコマンド(ここではコマンド10A(図17)が記憶部10(図13)に格納されているアドレスを把握して読み取り準備を完了する。
【0084】
ステップS3−14
エミュレーション(A)は、印刷ジョブの解析に当たって必要な初期化を実行することになる。
【0085】
ステップS3−15
エミュレーション(A)は、データ読み込み部33(図13)に対してデータ読み込みを要求する。このデータ読み込みが、記憶部10(図13)から読み込む場合にはステップS3−16へ進み、ストレージ34(図13)から読み込む場合にはステップS3−24へ進む。ここでは、コマンド10Aを読み込むのでステップS3−16へ進むことになる。
【0086】
ステップS3−16
エミュレーション(A)は、データ読み込み部33(図13)を介して記憶部10(図18)からデータ区分を読み込む。ここでは、コマンド10A(図17)が読み込まれる。
ステップS3−17
印刷ジョブ全ての解析が終了した場合にはフローを終了し、印刷ジョブ全ての解析が終了していなければ、ステップS3−18へ進む。ここではステップS3−18へ進むことになる。
【0087】
ステップS3−18
エミュレーション(A)は、一つのコマンドの解析が終了するまで、ステップS3−15〜ステップS3−18を繰り返し、一つのコマンドの解析が終了すればステップS3−19へ抜ける。
【0088】
ステップS3−19
直後に続くコマンドがマクロ実行コマンドでない場合にはステップS3−20へ進み、マクロ実行コマンドの場合にはステップS3−22へ進む。ここでは、直後に進むコマンド11Aは、マクロ実行コマンドではないのでステップS3−20へ進む。ここでマクロ実行コマンドとは、予めストレージ34(図13)に格納されているフォームデータを実行するコマンドを言う。
【0089】
ステップS3−20
直後に続くコマンドが、第2のページ記述言語Bを含むコマンドでない場合にはステップS3−21へ進み、第2のページ記述言語Bを含むコマンドの場合にはステップS3−27へ進む。ここでは、コマンド11Aは、第2のページ記述言語Bを含むコマンドでないのでステップS3−21へ進む。
【0090】
ステップS3−21
エミュレーション(A)は、処理を継続しステップS3−15へ戻る。エミュレーション(A)は、ステップS3−15〜ステップS3−21を繰り返して、コマンド11A(図17)を解析した後、コマンド12A(図17)ではマクロが指定されているのでステップS3−19からステップS3−22へ抜けることになる。
【0091】
ステップS3−22
エミュレーション(A)は、コマンドによって指定されているIDのフォームデータがストレージ34(図13)に、格納されているか否かを検索し、含まれている場合にはステップS3−23へ進み、含まれていない場合にはコマンド無効として何も行わない。ここでは、動作説明の前提より、図14に示すフォームデータがストレージ34(図13)に、格納されている。
【0092】
ステップS3−23
エミュレーションAは、データ読み込み部33(図13)に対してフォームデータの読み込み開始を指定する。このときデータ読み込み部33(図13)は、その時まで参照していた記憶部10(図13)のメモリアドレスを保持したまま、フォームデータが格納されているストレージ34(図13)のアドレスを保持し、ステップS3−15へ戻る。以下、ステップS3−15からステップS3−24へ抜ける。
【0093】
ステップS3−24
データ読み込み部33(図13)は、ストレージ34(図13)からフォームデータを読み込む。
ステップS3−25
データ読み込み部33(図13)は、フォームデータの読み込みを完了するまでステップS3−25、ステップS3−17、ステップS3−18、ステップS3−19、ステップS3−20、ステップS3−21、ステップS3−15、ステップS3−24、ステップS3−25を繰り返し、完了した後ステップS3−26へ進む。この途中で図14のコマンド1B及びコマンド2Bを読取る時は、ステップS3−20を経てステップS3−27へ進むことになる。
【0094】
ステップS3−26
エミュレーションAは、データ読み込み部33(図13)に対して記憶部10(図13)からのデータ読み込み再開を通知する。データ読み込み部33(図13)は、ステップS3−15へ戻り、ステップS3−23で保持されている記憶部10(図13)のアドレスに戻ってデータ読み込みを再開する。ここでは、図17のコマンド13Aが読み込まれ、読み込みが終わるとステップS3−17から抜け出してフローを終了する。
【0095】
次に、エミュレーションBの動作について説明する。上記前提条件によれば、上記ステップS3−25で説明したように、フォームデータの読み込みを完了するまでの途中で図14のコマンド1B及びコマンド2Bを読取る時は、ステップS3−20を経てステップS3−27へ進むことになる。以下にこのフローについて説明する。
【0096】
ステップS3−27
エミュレーション(A)は、エミュレーション(B)に対して解析するデータサイズを通知する。エミュレーション(B)は、この値を保存するとともに印刷ジョブの解析に当たって必要な初期化を実行することになる。ここでは、コマンド1B+コマンド2Bのサイズが通知されることになる。
【0097】
ステップS3−28
上記ステップS3−27で通知され、保存している指定サイズ分のデータ解析が終了していればステップS3−15へ戻り、解析が終了していなければステップS3−29へ進む。ここでは、未だ指定サイズ分のデータ解析が終了していないので、ステップS3−29へ進む。
【0098】
ステップS3−29
データ読み込み部33(図13)の読み込み先がストレージ34(図13)の場合にはステップS3−30へ進み、記憶部10(図13)の場合にはステップS3−31へ進む。ここでは動作説明の前提条件よりステップS3−30へ進むことになる。
【0099】
ステップS3−30
エミュレーション(B)は、データ読み込み部13(図13)を介してストレージ34(図13)からコマンドの読み込みを実行する。ここではコマンド1B(図14)を読み込む。
【0100】
ステップS3−31
エミュレーション(B)は、データ読み込み部13(図13)を介して記憶部10(図13)からコマンドの読み込みを実行する。ここでは動作説明の前提条件に反する。
【0101】
ステップS3−32
エミュレーション(B)は、ページ記述言語をBとしてコマンド解析を実行する。
ステップS3−33
一つのコマンドの解析が終了するまで、ステップS3−28〜ステップS3−33を繰り返し、一つのコマンドの解析が終了すればステップS3−34へ抜ける。ここでは、コマンド1Bの解析が終了するとステップS3−34へ抜ける。
【0102】
ステップS3−34
エミュレーション(B)は、後に続くコマンド2B(図14)を処理すべくステップS3−28へ戻る。エミュレーション(B)は、ステップS3−28〜ステップS3−33を繰り返して、コマンド2B(図14)を解析した後、ステップS3−28へ戻り、ここからステップS3−15へ戻る。再度ステップS3−15〜ステップS3−21、を繰り返して、コマンド4Aの解析を終了してマクロ指定コマンド12A(図17)の処理を終了し、コマンド13A(図17)へ進み、上記のようにステップS3−17を経て、ここでは、図17のコマンド13Aが読み込まれ、読み込みが終わるとステップS3−17から抜け出してフローを終了することになる。
【0103】
以上説明したように、本実施例によれば、良く使われるフォームデータ等を予めストレージに格納しておくことが出来る。従って、良く使われる数表を作成する場合等には、罫線データをストレージに予め格納しておき、後から送信する数表データを上書きすることによって数表を作成したり、パスワード付きで送られてくるデータを予めストレージに格納しておき、後からバスワードを受入れた時のみ、その内容を印刷すること等が可能になり、装置の利便性を増加させることが出来るという効果を得る。
【実施例4】
【0104】
本実施例では、上記実施例3において、データ読み込み部33(図13)がストレージ34(図13)からフォームデータを読み出す時間を短縮するために、アクセススピードが速いデータコピー領域を新たに画像形成装置の内部に設け、アクセススピードが遅いストレージ34(図13)から、フォームデータを所定量一括して格納可能な状態を形成することとする。
【0105】
図18は、実施例4の印刷システム構成図である。
図に示すように、実施例4の印刷システムは、画像情報処理装置1と、画像形成装置42と、ネットワーク3とを含む。以下に、実施例3と相違する部分のみについて詳細に説明する。実施例3と同様の部分については、実施例3と同一の符号を付して説明を省略する。
【0106】
画像形成装置42は、データ受信部9と、記憶部10と、ジョブ管理部11と、エミュレーション処理部12と、データ読み込み部43と、ページデータ生成部14と、展開部15と、プリントエンジン部16と、ストレージ34と、データコピー領域44とを備え、コマンド体系混在データを含むフレームをネットワーク3から受け入れて、混在データのそれぞれが適合するエミュレーションに基づいて解析し、それらの解析結果から印刷データを構成し、印刷処理して出力する印刷装置である。特に本実施例では、印刷データを構成するに際して、予め内部に保有するデータコピー領域44からフォームデータを読み込むことによってフォームデータを読み込むために要する時間を短縮する。
【0107】
データ読み込み部43は、ジョブ管理部11を参照して記憶部10から印刷ジョブのコマンドを読み出してエミュレーション処理部12へ送出する部分である。更に、ストレージ34から所定のフォームデータを読み出してエミュレーション処理部12へ送出する部分でもある。更に、ストレージ34から所定のフォームデータをまとめて読み出してデータコピー領域44へ格納する部分でもある。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
【0108】
データコピー領域44は、ストレージ34からフォームデータを所定量一括して受入れて格納するメモリである。通常、画像形成装置42に備える図示しないRAM(ランダムアクセスメモリ)の一部の領域が当てられる。
【0109】
続いて、実施例4の画像形成装置42の動作について説明する。
図19は、実施例4の動作フローチャート(その1)である。
図20は、実施例4の動作フローチャート(その2)である。
ステップS4−11からステップS4−38までステップ順に説明する。
動作説明の前提条件として図14に示したフォームデータが、画像情報処理装置1(図18)からダウンロードされ、ストレージ34(図18)に予め格納されているものとする。又、画像形成装置42が画像情報処理装置1(図18)から図17に示す受信データを受信するものとする。
【0110】
ステップS4−11
データ受信部9(図18)は、ネットワーク3(図18)からフレームを受入れて分解し、印刷ジョブを記憶部10(図18)に格納する。この印刷ジョブの格納アドレスやデータサイズは、データ受信部9(図18)によってジョブ管理部11(図18)へ通知される。以後、印刷ジョブの格納アドレスやデータサイズは、ジョブ管理部11(図18)によって管理されることになる。
【0111】
ステップS4−12
ジョブ管理部11(図18)は、最初のデータ区分(このデータ区分を第1のページ記述言語とする)を参照し、最初のデータ区分に適用されるエミュレーションを判断し、エミュレーション(1)〜(n)の中の何れかの種類に(以後、仮にエミュレーション(A)と記す)印刷ジョブの受信を通知する。
【0112】
ステップS4−13
エミュレーション(A)は、印刷ジョブの解析開始と印刷ジョブの情報(格納されているアドレス等)をデータ読み込み部13(図1)へ通知する。データ読み込み部13(図18)は、ジョブ管理部11(図18)を参照して印刷ジョブの最初のコマンド(ここではコマンド10A(図17)が記憶部10(図18)に格納されているアドレスを把握して読み取り準備を完了する。
【0113】
ステップS4−14
エミュレーション(A)は、印刷ジョブの解析に当たって必要な初期化を実行する。
【0114】
ステップS4−15
エミュレーション(A)は、データ読み込み部33(図18)に対してデータ読み込みを要求する。このデータ読み込みが、記憶部10(図18)から読み込む場合にはステップS4−16へ進み、ストレージ34(図18)から読み込む場合にはステップS4−24へ進む。ここでは、コマンド10Aを読み込むのでステップS4−16へ進むことになる。
【0115】
ステップS4−16
エミュレーション(A)は、データ読み込み部33(図18)を介してデータ区分を読み込む。ここでは、コマンド10A(図17)が読み込まれる。
ステップS4−17
印刷ジョブ全ての解析が終了した場合にはフローを終了し、印刷ジョブ全ての解析が終了していなければ、ステップS4−18へ進む。ここではステップS4−18へ進むことになる。
【0116】
ステップS4−18
エミュレーション(A)は、一つのコマンドの解析が終了するまで、ステップS4−15〜ステップS4−18を繰り返し、一つのコマンドの解析が終了すればステップS4−19へ抜ける。
【0117】
ステップS4−19
直後に続くコマンドがマクロ実行コマンドでない場合にはステップS4−20へ進み、マクロ実行コマンドの場合にはステップS4−22へ進む。ここでは、直後に進むコマンド11Aは、マクロ実行コマンドではないのでステップS4−20へ進む。ここでマクロ実行コマンドとは、予めストレージ34(図18)に格納されているフォームデータを実行するコマンドを言う。
【0118】
ステップS4−20
直後に続くコマンドが、第2のページ記述言語Bを含むコマンドでない場合にはステップS4−21へ進み、第2のページ記述言語Bを含むコマンドの場合にはステップS4−29へ進む。ここでは、コマンド11Aは、第2のページ記述言語Bを含むコマンドでないのでステップS4−21へ進む。
【0119】
ステップS4−21
エミュレーション(A)は、処理を継続しステップS4−15へ戻る。エミュレーション(A)は、ステップS4−15〜ステップS4−21を繰り返して、コマンド11A(図17)を解析した後、コマンド12A(図17)ではマクロが指定されているのでステップS4−19からステップS4−22へ抜けることになる。
【0120】
ステップS4−22
エミュレーション(A)は、コマンドによって指定されているIDのフォームデータがストレージ34(図18)に、格納されているか否かを検索し、含まれている場合にはステップS4−23へ進み、含まれていない場合にはコマンド無効として何も行わない。ここでは、動作説明の前提より、図14に示すフォームデータがストレージ34(図18)に、格納されている。
【0121】
ステップS4−23
エミュレーションAは、データ読み込み部33(図18)に対してフォームデータの読み込み開始を指定する。このときデータ読み込み部33(図18)は、その時まで参照していた記憶部10(図18)のメモリアドレスを保持したまま、フォームデータが格納されているストレージ34(図18)のアドレスを保持し、ステップS4−15へ戻る。以下、ステップS4−15からステップS4−24へ抜ける。
【0122】
ステップS4−24
データ読み込み部33(図18)は、データコピー領域44(図18)からフォームデータを読み込む。参照位置と格納サイズを更新する。
【0123】
ステップS4−25
データ読み込み部33(図18)は、格納サイズが0になったときに、メモリサイズ分次のフォームデータを読み込んだ場合はステップS4−27へ進み、データ終端のブロックでメモリサイズ分に満たない場合にはステップS4−26へ進む。
【0124】
ステップS4−26
データ読み込み部33(図18)は、ストレージ34(図18)のフォームデータファイルからフォームデータを読み込む。
【0125】
ステップS4−27
データ読み込み部33(図18)は、フォームデータの読み込みを完了するまで、ステップS4−17、ステップS4−18、ステップS4−19、ステップS4−20、ステップS4−21、ステップS4−15、ステップS4−24、ステップS4−25、ステップS4−26、ステップS4−27を繰り返し、完了した後ステップS4−28へ進む。この途中で図14のコマンド1B及びコマンド2Bを読取る時は、ステップS4−20を経てステップS4−29へ進むことになる。
【0126】
ステップS4−28
エミュレーションAは、データ読み込み部33(図18)に対して記憶部10(図18)からのデータ読み込み再開を通知する。データ読み込み部33(図18)は、ステップS4−15へ戻り、ステップS4−23で保持されている記憶部10(図18)のアドレスに戻ってデータ読み込みを再開する。ここでは、図17のコマンド13Aが読み込まれ、読み込みが終わるとステップS4−17から抜け出してフローを終了する。
【0127】
次に、エミュレーションBの動作について説明する。上記前提条件によれば、上記ステップS4−27で説明したように、フォームデータの読み込みを完了するまでの途中で図14のコマンド1B及びコマンド2Bを読取る時は、ステップS4−20を経てステップS4−29へ進むことになる。以下にこのフローについて説明する。
【0128】
ステップS4−29
エミュレーション(A)は、エミュレーション(B)に対して解析するデータサイズを通知する。エミュレーション(B)は、この値を保存するとともに印刷ジョブの解析に当たって必要な初期化を実行することになる。ここでは、コマンド1B+コマンド2Bのサイズが通知されることになる。
【0129】
ステップS4−30
上記ステップS4−29で通知され、保存している指定サイズ分のデータ解析が終了していればステップS4−15へ戻り、解析が終了していなければステップS4−31へ進む。ここでは、未だ指定サイズ分のデータ解析が終了していないので、ステップS4−31へ進む。
【0130】
ステップS4−31
データ読み込み部33(図18)の読み込み先がストレージ34(図18)の場合にはステップS4−32へ進み、記憶部10(図18)の場合にはステップS4−35へ進む。ここでは動作説明の前提条件よりステップS4−32へ進むことになる。
【0131】
ステップS4−32
エミュレーション(B)は、データ読み込み部13(図18)を介してデータコピー領域44(図18)からコマンドの読み込みを実行する。ここではコマンド1B(図14)を読み込んで、参照位置と格納サイズを更新する。
【0132】
ステップS4−33
データ読み込み部33(図18)は、格納サイズが0になったときに、メモリサイズ分次のフォームデータを読み込んだ場合はステップS4−36へ進み、データ終端のブロックでメモリサイズ分に満たない場合にはステップS4−34へ進む。
【0133】
ステップS4−34
データ読み込み部33(図18)は、ストレージ34(図18)のフォームデータファイルからフォームデータを読み込む。
【0134】
ステップS4−35
エミュレーション(B)は、データ読み込み部13(図18)を介して記憶部10(図18)からコマンドの読み込みを実行する。ここでは動作説明の前提条件に反する。
【0135】
ステップS4−36
エミュレーション(B)は、ページ記述言語をBとしてコマンド解析を実行する。
ステップS4−37
一つのコマンドの解析が終了するまで、ステップS4−30〜ステップS4−37を繰り返し、一つのコマンドの解析が終了すればステップS4−38へ抜ける。ここでは、コマンド1Bの解析が終了するとステップS4−38へ抜ける。
【0136】
ステップS4−38
エミュレーション(B)は、後に続くコマンド2B(図14)を処理すべくステップS4−30へ戻る。エミュレーション(B)は、ステップS4−30〜ステップS4−37を繰り返して、コマンド2B(図14)を解析した後、ステップS4−38を経てステップS4−30へ戻り、ここからステップS4−15へ戻る。再度ステップS4−15〜ステップS4−21、を繰り返して、コマンド4Aの解析を終了してマクロ指定コマンド12A(図17)の処理を終了し、コマンド13A(図17)へ進む。ここでは、図17のコマンド13Aが読み込まれ、読み込みが終わるとステップS4−17から抜け出してフローを終了することになる。
【0137】
以上説明したように、本実施例ではアクセススピードが速いデータコピー領域を新たに設けることによって、アクセススピードが遅いストレージからフォームデータを所定量一括して読み出すことが出来るので、処理時間を大幅に短縮できるという効果を得る。
【産業上の利用可能性】
【0138】
以上の説明では、本発明を印刷装置に適合させた場合について説明したが、本発明は、この例に限定されるものではない。即ち、ファクシミリ装置や、複合機などにも適合可能である。
【図面の簡単な説明】
【0139】
【図1】実施例1のシステム構成図である。
【図2】印刷ジョブの構成図である。
【図3】実施例1の画像情報処理装置の動作フローチャートである。
【図4】実施例1の動作フローチャート(その1)である。
【図5】実施例1の動作フローチャート(その2)である。
【図6】実施例1の動作説明図(その1)である。
【図7】実施例1の動作説明図(その2)である。
【図8】実施例2の印刷システム構成図である。
【図9】実施例2の印刷ジョブの構成図である。
【図10】解析状態保存手段の説明図である。
【図11】実施例2の動作フローチャート(その1)である。
【図12】実施例2の動作フローチャート(その2)である。
【図13】実施例3のシステム構成図である。
【図14】フォームデータ構成説明図である。
【図15】実施例3の動作フローチャート(その1)である。
【図16】実施例3の動作フローチャート(その2)である。
【図17】受信データの内容説明図である。
【図18】実施例4の印刷システム構成図である。
【図19】実施例4の動作フローチャート(その1)である。
【図20】実施例4の動作フローチャート(その2)である。
【符号の説明】
【0140】
1 画像情報処理装置
2 画像形成装置
3 ネットワーク
4 アプリケーション処理部
5 言語選択部
6 データ変換部
7 印刷ジョブ構成部
8 データ送信部
9 データ受信部
10 記憶部
11 ジョブ管理部
12 エミュレーション処理部
13 データ読み込み部
14 ページデータ生成部
15 展開部
16 プリントエンジン部
【技術分野】
【0001】
本発明は、複数種類のページ記述言語を用いて1つの印刷要求を処理する印刷システムに関するものである。
【背景技術】
【0002】
従来、画像情報処理装置から画像形成装置へ送信される1つの印刷要求(以降印刷ジョブと記す)は、1種類のページ記述言語で定義されていた。従って、画像形成装置では、受信した1つの印刷ジョブの先頭から終端までを1種類のページ記述言語で処理していた。一方、ある種類のページ記述言語は、多彩なコマンド表現が可能であり図形描画に優れており、他の種類のページ記述言語は、コマンドも少なくスループットも早くなりテキスト系に向いている等、それぞれのページ記述言語は、固有の特色を有している。
【0003】
又、印刷ジョブによっては、長い文章中の何カ所かに図形が挿入されている場合等があり、上記、図形描画に優れているページ記述言語と、テキスト系に向いているページ記述言語の両方を用いたい場合も発生する。かかる場合に従来の技術では、ページ記述言語が変わると、ジョブの切れ目と判断され、前の処理部分が印刷出力されてしまう。その結果、1枚の印刷物として出力されることが好ましい印刷物であっても、複数枚の印刷物として出力されることになった。尚、複数種類のページ記述言語を有効に用いる技術も種々公開されている(例えば特許文献1参照)。
【特許文献1】特開2000−263857号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
解決しようとする問題点は、例えば、長い文章中の何カ所かに図形が挿入されている場合等において、図形描画に優れているページ記述言語と、テキスト系に向いているページ記述言語の両方を用いたい場合が発生しても、従来の技術では、ページ記述言語が変わると、ジョブの切れ目と判断され、前の処理部分が印刷出力されてしまう。その結果、1枚の印刷物として出力されることが好ましい印刷物であっても、複数枚の印刷物として出力されることになった点である。
【課題を解決するための手段】
【0005】
本発明に於いて、画像情報処理装置は、複数種類のページ記述言語の中から、送信画像情報の第一の部分を変換する第一のページ記述言語と、上記送信画像情報の第二の部分を変換する第二のページ記述言語とを、それぞれ選択する言語選択部と、第一のページ記述言語、及び、第二のページ記述言語に基づいて、画像情報を、それぞれのコマンドに変換するデータ変換部と、変換された複数のコマンド体系に基づくデータから、一つの印刷ジョブを構成する印刷ジョブ構成部とを備え、コマンド体系混在データを含む送信データを生成して送信することを主な特徴とする。
【0006】
画像形成装置は、コマンド体系混在データを受信すると、その内部構成を抽出して管理するジョブ管理部と、ジョブ管理部の指示に基づいて第一のコマンド体系に基づくデータを解析する第一のコマンド解析手段と、該第一のコマンド解析手段の解析処理に続けて、第一のコマンド体系に基づくデータの中に含まれている後続処理選択手段の指示に基づいて、後に続く第二のコマンド体系に基づくデータを解析する第二のコマンド解析手段とを備え、その解析結果からページデータを生成することを主な特徴とする。
【発明の効果】
【0007】
例えば、長い文章中の何カ所かに図形が挿入されている場合等があり、上記、図形描画に優れているページ記述言語と、テキスト系に向いているページ記述言語の両方を用いたい場合に、一つの印刷ジョブとしてまとめて処理出来るという効果を得る。
【発明を実施するための最良の形態】
【0008】
本発明によるシステムでは、上記画像情報処理装置に備える、言語選択部、データ変換部、及び印刷ジョブ構成部とを、画像情報処理装置内部に予めインストールされるプリンタドライバに含め、更に上記画像形成装置に備える、ジョブ管理部、第一のコマンド解析手段、及び第二のコマンド解析手段とを、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動されるコンピュータ制御手段によって実現した。
【実施例1】
【0009】
図1は、実施例1のシステム構成図である。
図に示すように、実施例1の印刷システムは、画像情報処理装置1と、画像形成装置2と、ネットワーク3とを含む。
【0010】
画像情報処理装置1は、アプリケーション処理部4と、言語選択部5と、データ変換部6と、印刷ジョブ構成部7と、データ送信部8とを備え、所定のアプリケーションに基づいて作成された印刷情報を所定の個数に区分し、各区分毎に、最適のページ記述言語で変換し、コマンド体系が異なる複数のデータを含む印刷ジョブを生成し、この印刷ジョブからなる送信データをネットワークへ送出する装置であり、通常パーソナルコンピュータ(以後PCと記す)が用いられる。
【0011】
アプリケーション処理部4は、PC内部のOS(オペレーションシステム)の管理に基づいて、オペレータが、例えば文章や画形描画などを含む、印刷情報を作成するのを可能にする部分である。このアプリケーション処理部4は、PC内部のハードディスク(図示していない)等に予めインストールされている所定の制御プログラム(表計算ツールや文書作成ツール等)をPC内部のCPU(中央演算処理装置)が実行することによって起動される部分である。
【0012】
言語選択部5は、アプリケーション処理部4から印刷情報を受け入れて解析し、オペレータが作成した印刷情報を第1の部分(例えば文章部分)と、第2の部分(例えば画形描画部分)に分割し、それぞれの各部分を変換するのに最適なページ記述言語を選択する部分である。この言語選択部5は、PC内部のプリンタドライバに含まれている、所定の制御プログラムをPC内部のCPU(中央演算処理装置)が実行することによって起動される部分である。
【0013】
データ変換部6は、印刷情報の第1の部分を、言語選択部5によって選択された第1のページ記述言語Aに基づいて第一のコマンド体系に変換し、印刷情報の第2の部分を言語選択部5によって選択された第2のページ記述言語Bに基づいて第二のコマンド体系に変換する部分である。尚、第1のページ記述言語A、又は、第2のページ記述言語Bとして、言語選択部5によって選択されうる複数種類のページ記述言語は、プリンタドライバの内部にプリンタドライバ(1)〜プリンタドライバ(n)として予め含まれている。データ変換部6は、言語選択部5が選択したプリンタドライバ(1)〜(n)に対応する制御プログラムをPC内部のCPU(中央演算処理装置)が実行することによって起動される部分である。
【0014】
印刷ジョブ構成部7は、第1のページ記述言語Aに基づいて変換された第一のコマンド体系に基づくデータと、第2のページ記述言語Bに基づいて変換された第二のコマンド体系に基づくデータとから、印刷ジョブを構成し、送信データを構成する部分である。この印刷ジョブ構成部7は、PC内部のプリンタドライバに予め含まれている、所定の制御プログラムをPC内部のCPUが実行することによって起動される部分である。次に、印刷ジョブ構成部7が構成する印刷ジョブの一例について説明する。
【0015】
図2は、印刷ジョブの構成図である。
図に示すように、ここに示されている印刷ジョブ(一例)は、6個のデータ区分に分割され、先頭から順番に7−1は、第1のページ記述言語Aによって変換されたコマンド1A、7−2は、第1のページ記述言語Aによって変換されたコマンド2A、7−3は、第1ページ記述言語Aによって変換されたコマンド3A、7−4は、第2のページ記述言語Bによって変換されたコマンド1B、7−5は、第2のページ記述言語Bによって変換されたコマンド2B、7−6は、第1のページ記述言語Aによって変換されたコマンド4Aである。
【0016】
図に示すように、この例では、第1のページ記述言語Aで変換されたコマンドが1Aから4Aまで続き、コマンド3Aとコマンド4Aとの間に、第2のページ記述言語Bで変換されたコマンド1Bと、コマンド2Bとが挿入されている。又、第2のページ記述言語Bで変換されたコマンドが挿入される直前のコマンド(ここではコマンド3A)には、後に続く(挿入される)コマンドの第2のページ記述言語Bの開始と、そのデータサイズ(ここではコマンド1B+コマンド2B)が含まれている。
【0017】
図1に戻って、データ送信部8は、印刷ジョブ構成部7から印刷ジョブを受け入れて、その先頭及び後尾に、送出するネットワークのプロトコルに基づくアドレス、フレームチェックシーケンス等を付加してフレームを構成し、画像形成装置2に向けて、ネットワークへ送出する部分である。以上で画像情報処理装置1の構成に関する説明を終了し、続いて、画像形成装置2の構成について説明する。
【0018】
画像形成装置2は、データ受信部9と、記憶部10と、ジョブ管理部11と、エミュレーション処理部12と、データ読み込み部13と、ページデータ生成部14と、展開部15と、プリントエンジン部16とを備え、コマンド体系混在データを含むフレームをネットワーク3から受け入れて、混在データのそれぞれが適合するエミュレーションに基づいて解析し、それらの解析結果から印刷データを構成し、印刷処理して出力する印刷装置(例えば、プリンタ)である。
【0019】
データ受信部9は、ネットワーク3からフレームを受け入れて、印刷ジョブ(図2)を記憶部10へ格納する部分である。
記憶部10は、データ受信部9から、印刷ジョブ(図2)を受け入れて、図に示すように各データ区分毎(ここではコマンド毎)に、複数個のデータ集合として格納するバッファである。一例として図2に示す印刷ジョブを受け入れた場合には、印刷ジョブを構成している順番に、コマンド1(A)、コマンド2(A)・・・・コマンド2(B)、コマンド4(A)と、受け入れ順に格納される。
【0020】
ジョブ管理部11は、コマンド体系混在データの内部構成を抽出して保持し、管理する部分である。即ち、データ受信部9から印刷ジョブ(図2)を受入れて、受信した印刷ジョブの第1のページ記述言語Aの種類を判定し、エミュレーション処理部12へ通知すると共に、記憶部10に格納されている各コマンド毎の格納アドレスとデータサイズの管理を行う部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
【0021】
エミュレーション処理部12は、その内部に複数種類のエミュレーション(1)〜(n)と、後続処理選択手段12−1とを有し、ジョブ管理部11の指示及び管理に基づいて、データ読み込み部13を介して記憶部10からデータ区分(コマンド)を順番に読み出して、適合するエミュレーションに基づいて解析する部分である。更に、データ区分の最後尾を検索し、後に続く(挿入される)コマンドの第2のページ記述言語Bの開始と、データサイズを検出した場合には、その指示に従ってエミュレーションの種類を変更する部分でもある。
【0022】
即ち、エミュレーション処理部12は、ジョブ管理部11から、受信した印刷ジョブの最初のデータ区分から第1のページ記述言語Aを受け入れると、記憶部10に格納されている最初のコマンドを読み出して、第1のページ記述言語Aに対応するエミュレーションに基づいて、そのコマンドを解析する。一つのコマンドの解析に於いて、後続処理選択手段12−1が、後に続く(挿入される)コマンドの第2のページ記述言語Bの開始と、データサイズが含まれている否かを検索する。もし、含まれていなければ、そのまま、後に続くコマンドの解析を継続し、もし含まれていれば、後に続く(挿入される)コマンドの第2のページ記述言語Bの種類に対応するエミュレーションに基づいて、挿入されているコマンドを解析する部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
【0023】
データ読み込み部13は、ジョブ管理部11を参照して記憶部10から印刷ジョブのコマンドを読み出してエミュレーション処理部12へ送出する部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
【0024】
ページデータ生成部14は、エミュレーション処理部12の解析結果を中間言語に変換する部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
展開部15は、ページデータ生成部14が、中間言語に変換したページ描画内容をビットマップデータに展開してプリントエンジン部16へ送出する部分である。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
【0025】
プリントエンジン部16は、展開部15からビットマップデータを受け入れて印刷出力する部分である。
ネットワーク3は、画像情報処理装置1と画像形成装置2とを回線接続する、例えばLAN(ローカルエリアネットワーク)等の情報通信網である。
【0026】
次に実施例1の動作について説明する。
最初に画像情報処理装置1(図1)の動作について説明し、続いて画像形成装置2(図1)の動作について説明する。
図3は、実施例1の画像情報処理装置の動作フローチャートである。
ステップS1−1からステップS1−4までステップ順に実施例1の画像情報処理装置の動作について説明する。
【0027】
ステップS1−1
オペレータがアプリケーション処理部4(図1)を用いて印刷情報を作成し、印刷を要求する。
ステップS1−2
言語選択部5(図1)は、アプリケーション処理部4(図1)から印刷情報を受け入れて解析し、印刷情報を第1の部分と、第2の部分に分割し、それぞれの各部分を変換するのに最適なページ記述言語を選択する。例えば、文字はページ記述言語A、表はページ記述言語B、図はページ記述言語C、写真はページ記述言語Dなどの情報を格納しておき、それらに基づいて選択する。
【0028】
ステップS1−3
データ変換部6(図1)は、印刷情報の第1の部分を、言語選択部5(図1)によって選択された第1のページ記述言語Aに基づいて変換し、印刷情報の第2の部分を言語選択部5(図1)によって選択された第2のページ記述言語Bに基づいて変換する。
【0029】
ステップS1−4
印刷ジョブ構成部7は、第1のページ記述言語Aに基づいて変換された第一のコマンド体系に基づくデータと、第2のページ記述言語Bに基づいて変換された第二のコマンド体系に基づくデータとから、図2で説明した印刷ジョブを構成する。
【0030】
ステップS1−5
データ送信部8(図1)は、印刷ジョブの先頭及び後尾に、送出するネットワークのプロトコルに基づくアドレス、フレームチェックシーケンス等を付加してフレームを構成し、画像形成装置2に向けて、ネットワーク3(図1)へ送出してフローを終了する。
【0031】
続いて、実施例1の画像形成装置2の動作について説明する。
図4は、実施例1の動作フローチャート(その1)である。
図5は、実施例1の動作フローチャート(その2)である。
図6は、実施例1の動作説明図(その1)である。
図7は、実施例1の動作説明図(その2)である。
図4及び図5を用いて、一例として、画像形成装置2がネットワーク3(図1)から送信データを受信し、印刷処理するものとして説明する。ステップS1−11からステップS1−27までステップ順に説明する。その中で図6及び図7を適宜用いることとする。尚、この図6及び図7に記載されている印刷ジョブの内部構成は図2に於ける印刷ジョブの内部構成と全く同一である。
【0032】
ステップS1−11
データ受信部9(図1)は、ネットワーク3(図1)からフレームを受信して分解し、印刷ジョブ(図2)を記憶部10(図1)に格納する。この印刷ジョブの格納アドレスやデータサイズは、データ受信部9(図1)によってジョブ管理部11(図1)へ通知される。以後、印刷ジョブの格納アドレスやデータサイズは、ジョブ管理部11(図1)によって管理されることになる。
【0033】
ステップS1−12
ジョブ管理部11(図1)は、最初のデータ区分(このデータ区分を第1のページ記述言語とする)を参照し、最初のデータ区分に適用されるエミュレーションを判断し、エミュレーション(1)〜(n)の中の何れかの種類に(以後、仮にエミュレーション(A)と記す)印刷ジョブの受信を通知する。
【0034】
ステップS1−13
エミュレーション(A)は、印刷ジョブの解析開始と印刷ジョブの情報(格納されているアドレス等)をデータ読み込み部13(図1)へ通知する。データ読み込み部13(図1)は、ジョブ管理部11(図1)を参照して印刷ジョブの最初のコマンド(ここではコマンド1A(図6(a))が記憶部10(図1)に格納されているアドレスを把握して読み取り準備を完了する。
【0035】
ステップS1−14
エミュレーション(A)は、印刷ジョブの解析に当たって必要な初期化を実行する。
ステップS1−15
エミュレーション(A)は、データ読み込み部13(図1)を介してデータ区分を読み込む。ここでは、コマンド1Aが読み込まれる(図6(a))。
【0036】
ステップS1−16
印刷ジョブ全ての解析が終了した場合にはステップS1−27を通ってフローを終了し、印刷ジョブ全ての解析が終了していなければ、ステップS1−17へ進む。ここでは終了していないのでステップS1−17へ進む。
【0037】
ステップS1−17
エミュレーション(A)は、ページ記述言語をAとしてコマンド解析を実行する。
ステップS1−18
一つのコマンドの解析が終了するまで、ステップS1−15〜ステップS1−18を繰り返し、一つのコマンドの解析が終了すればステップS1−19へ抜ける。
【0038】
ステップS1−19
後続処理選択手段12−1(図1)は、処理中のコマンドの後尾に、後に続く(挿入される)コマンドの第2のページ記述言語Bの開始と、データサイズ(図6(b)の7−3)含まれている否かの検索を継続し、検出出来ない時は、ステップS1−20へ進み、検出できたときにはステップS1−21へ進む。ここでは、未だ、コマンド1A(図6(a))であり、検出できないのでステップS1−20へ進む。
【0039】
ステップS1−20
エミュレーション(A)は、処理を継続しステップS1−15へ戻る。エミュレーション(A)は、ステップS1−15〜ステップS1−20を繰り返して、コマンド2A(図6(a))を解析した後、更に、ステップS1−15〜ステップS1−19を繰り返して、コマンド3A(図6(a))を解析するとステップS1−19で、後続処理選択手段12−1(図1)は、コマンド3Aの後尾に、後に続く(挿入される)コマンドの第2のページ記述言語Bの開始と、データサイズ含まれているのを検出し、(図6(b))ステップS1−21へ進むことになる。
【0040】
ステップS1−21
エミュレーション(A)(図1)は、エミュレーション(B)(図1)に対して解析するデータサイズを通知する。エミュレーション(B)(図1)は、この値を保存するとともに印刷ジョブの解析に当たって必要な初期化を実行することになる。ここでは、コマンド1B+コマンド2Bのサイズが通知されることになる(図6(b))。
【0041】
ステップS1−22
上記ステップS1−21で通知され、保存している指定サイズ分のデータ解析が終了していればステップS1−15へ戻り、解析が終了していなければステップS1−23へ進む。ここでは、未だ指定サイズ分のデータ解析が終了していないので、ステップS1−23へ進む。
【0042】
ステップS1−23
エミュレーション(B)は、データ読み込み部13(図1)を介してコマンドの読み込みを実行する。ここではコマンド1B(図7(a))を読み込む。
ステップS1−24
エミュレーション(B)は、ページ記述言語をBとしてコマンド解析を実行する。
【0043】
ステップS1−25
一つのコマンドの解析が終了するまで、ステップS1−22〜ステップS1−25を繰り返し、一つのコマンドの解析が終了すればステップS1−26へ抜ける。ここでは、コマンド1Bの解析が終了するとステップS1−26へ抜ける。
【0044】
ステップS1−26
エミュレーション(B)は、後に続くコマンド2B(図6(a))を処理すべくステップS1−22へ戻る。エミュレーション(B)は、ステップS1−22〜ステップS1−25を繰り返して、コマンド2B(図7(a))を解析した後、ステップS1−22へ戻り、ここからステップS1−15へ戻る。再度ステップS1−15〜ステップS1−20、を繰り返して、コマンド4Aの解析を終了したあと(図7(b))ステップS1−15へ戻り、ステップS1−16からフロー終了へ抜けることになる。
ステップS1−27
エミュレーション(A)の解析結果と、エミュレーション(B)の解析結果とを一つの画像データとして処理(印刷)してフローを終了する。
【0045】
以上説明したように、実施例1によれば、例えば、長い文章中の何カ所かに図形が挿入されている場合等があり、上記、図形描画に優れているページ記述言語と、テキスト系に向いているページ記述言語の両方を用いたい場合であっても複数ページの印刷に分割されることなく、一つの印刷ジョブとしてまとめて処理出来るという効果を得る。
【0046】
尚、上記説明では、一つの印刷ジョブの中に第1のページ記述言語Aと、第2のページ記述言語Bの2種類のページ記述言語を含ませる場合に限定して説明したが、本発明は、この例に限定されるものではない。即ち、第1のページ記述言語Aと、第2のページ記述言語B、第3のページ記述言語C、第4のページ記述言語D・・・、と複数のページ記述言語を含ませることも可能である。
【実施例2】
【0047】
本実施例では、第1のページ記述言語Aに基づくコマンドAの間に第2のページ記述言語Bに基づくコマンドBが挿入される場合であって、そのコマンドBの一部がデータ一区分からはみ出る場合を想定する。
【0048】
図8は、実施例2の印刷システム構成図である。
図に示すように、実施例2の印刷システムは、画像情報処理装置1と、画像形成装置22と、ネットワーク3とを含む。以下に実施例1との相違部分のみについて説明する。実施例1と同様の部分については、実施例1と同様の符合を付して説明を省略する。
【0049】
画像形成装置22は、データ受信部9と、記憶部10と、ジョブ管理部11と、エミュレーション処理部23と、データ読み込み部13と、ページデータ生成部14と、展開部15と、プリントエンジン部16とを備え、コマンド体系混在データを含むフレームをネットワーク3から受け入れて、混在データのそれぞれが適合するエミュレーションに基づいて解析し、それらの解析結果から印刷データを構成し、印刷処理して出力する印刷装置である。
【0050】
エミュレーション処理部23は、その内部に複数種類のエミュレーション(1)〜(n)と、後続処理選択手段12−1と、解析状態保存手段23−1とを有し、ジョブ管理部11の指示及び管理に基づいて、データ読み込み部13を介して記憶部10からデータ区分を順番に読み出して、適合するエミュレーションに基づいて解析する部分である。又、データ区分の最後尾を検索し、後に続く(挿入される)データ区分の第2のページ記述言語Bの開始と、データサイズを検出した場合には、その指示に従ってエミュレーションの種類を変更する部分でもある。
【0051】
更に、第2のページ記述言語Bに基づくデータ区分を解析した場合には、その解析状態を保存する解析状態保存手段23−1を有する部分でもある。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。その他の部分は実施例1と全く同様なので説明を省略する。以下に解析状態保存手段23−1を詳細に説明する。
【0052】
図9は、実施例2の印刷ジョブの構成図である。
この図は、冒頭に記した、第1のページ記述言語Aに基づくコマンドAの間に第2のページ記述言語Bに基づくコマンドBが挿入される場合であって、そのコマンドBがコマンドの一区切りから一部分はみ出る場合を表している。
【0053】
図に示すように、ここに示されている印刷ジョブ(一例)は、6個+αのデータ区分に分割され、先頭から順番に30−1は、第1のページ記述言語Aによって変換されたコマンド1A、30−2は、第1のページ記述言語Aによって変換されたコマンド2A、33−3(1)は、第2のページ記述言語Bによって変換されたコマンド1Bの一部、30−4は、第1のページ記述言語Aによって変換されたコマンド3A、30−5は、第1のページ記述言語Aによって変換されたコマンド4A、33−3(2)は、第2のページ記述言語Bによって変換されたコマンド1Bの残りの一部、30−6は、第1のページ記述言語Aによって変換されたコマンド5Aである。
【0054】
図に示すように、この例では、第1のページ記述言語Aで変換されたコマンドが1Aから5Aまで続き、コマンド2Aとコマンド3Aとの間に、第2のページ記述言語Bで変換されたコマンド1Bの一部と、コマンド4Aとコマンド5Aとの間に、第2のページ記述言語Bで変換されたコマンド1Bの残りの一部が挿入されている。又、第2のページ記述言語Bで変換されたコマンドが挿入される直前のデータ区分(ここでは30−2及び30−5)の最後尾には、後に続く(挿入される)データ区分における第2のページ記述言語Bの開始と、そのデータサイズ(ここでは30−2(コマンド1Bの一部)、30−5(コマンド1Bの残りの一部))が含まれている。
【0055】
図10は、解析状態保存手段の説明図である。
(a)は、解析状態保存領域の一例を示し、(b)は、コマンドが分割された状態の一例を表している。
一例として(b)に示すように「START#−2.35L」(例えば印刷開始位置を-2.35mm左へ移動させるコマンド)とまとまって、始めて意味を有するコマンドを小数点1位の3を境に、前部分START#−2.3と後部分5Lに分割して印刷ジョブを生成する場合について説明する。かかる場合に前部分START#−2.3は、図9のデータ区分33−3(1)に、後部分5Lは図9のデータ区分33−3(2)に格納される。
【0056】
第2のページ記述言語Bが、図9のデータ区分33−3(1)を解析終了した段階で(a)に示す解析状態が保存される。この状態についてテーブルの上から順番に説明する。モード40−1は、一連のコマンドを解析中であるか否かを示し、解析中の場合には、解析中、解析終了の場合には、解析完、が保存される。図9のデータ区分33−3(1)が解析された段階では解析中が保存される。カテゴリ40−2は、解析に用いられたテーブル(予め解析のために用意されている複数のテーブルの内の一つ)のナンバーを示し、ここでは例えば7が保存される。
【0057】
整数値40−3は、一連のコマンドの整数値を示し、ここでは2が保存される。小数点値40−4は、一連のコマンドの小数値を表し、ここでは、(b)に示すように3を境に分割されているので3のみが保存される。後の処理によって5が解析されることによって35になる筈である。符合40−5は、一連のコマンドの符合を示し、ここでは−が保存される。更に、図9のデータ区分33−3(2)が解析された段階では、モード40−1には解析完が、少数点値40−4には、35が保存され、一連のコマンドSTART#−2.35Lが成立することになる。
【0058】
続いて、実施例2の画像形成装置22の動作について説明する。
図11は、実施例2の動作フローチャート(その1)である。
図12は、実施例2の動作フローチャート(その2)である。
図11及び図12を用いて、一例として、画像形成装置22がネットワーク3から図9に示す送信データを受信し、印刷処理するものとして説明する。ステップS2−1からステップS2−19までステップ順に説明する。
【0059】
ステップS2−1
データ受信部9(図8)は、ネットワーク3(図8)からフレームを受信して分解し、印刷ジョブ(図9)を記憶部10(図8)に格納する。この印刷ジョブの格納アドレスやデータサイズは、データ受信部9(図8)によってジョブ管理部11(図8)へ通知される。以後、印刷ジョブの格納アドレスやデータサイズは、ジョブ管理部11(図8)によって管理されることになる。
【0060】
ステップS2−2
ジョブ管理部11(図8)は、最初のデータ区分(このデータ区分を第1のページ記述言語とする)を参照し、最初のデータ区分に適用されるエミュレーションを判断し、エミュレーション(1)〜(n)の中の何れかの種類に(以後、仮にエミュレーション(A)と記す)印刷ジョブの受信を通知する。
【0061】
ステップS2−3
エミュレーション(A)は、印刷ジョブの解析開始と印刷ジョブの情報(格納されているアドレス等)をデータ読み込み部13(図8)へ通知する。データ読み込み部13(図8)は、ジョブ管理部11(図8)を参照して印刷ジョブの最初のデータ区分30−2(図9)が記憶部10(図8)に格納されているアドレスを把握して読み取り準備を完了する。
【0062】
ステップS2−4
エミュレーション(A)は、印刷ジョブの解析に当たって必要な初期化を実行する。
ステップS2−5
エミュレーション(A)は、データ読み込み部13(図8)を介してデータ区分(ここでは30−1(図9))を読み込む。
【0063】
ステップS2−6
印刷ジョブ全ての解析が終了した場合にはステップS2−19を通ってフローを終了し、印刷ジョブ全ての解析が終了していなければ、ステップS2−7へ進む。ここでは終了していないのでステップS2−7へ進む。
【0064】
ステップS2−7
エミュレーション(A)は、ページ記述言語をAとしてコマンド解析を実行する。
ステップS2−8
データ区分の解析が終了し一つのコマンドが生成するまで、ステップS2−5〜ステップS2−8を繰り返し、一つのコマンドが生成すればステップS2−9へ抜ける。
【0065】
ステップS2−9
後続処理選択手段12−1(図8)は、処理中のデータ区分の後尾に、後に続く(挿入される)データ区分に於ける第2のページ記述言語Bの開始と、データサイズが含まれている否かの検索を継続し、検出出来ない時は、ステップS2−10へ進み、検出できたときにはステップS2−11へ進む。ここでは、未だ、データ区分30−1(コマンド1A(図9))であり、検出できないのでステップS2−10へ進む。
【0066】
ステップS2−10
エミュレーション(A)は、処理を継続しステップS2−5へ戻る。エミュレーション(A)は、ステップS2−5〜ステップS2−8を繰り返して、データ区分30−1(コマンド2A(図9))を解析した後、ステップS2−9で、後続処理選択手段12−1(図8)は、データ区分30−2(図9)の後尾に、後に続く(挿入される)データ区分における第2のページ記述言語Bの開始と、データサイズ含まれているのを検出し、ステップS2−11へ進むことになる。
【0067】
ステップS2−11
エミュレーション(A)は、エミュレーション(B)に対して解析するデータサイズを通知する。エミュレーション(B)は、この値を保存するとともに印刷ジョブの解析に当たって必要な初期化を実行することになる。ここでは、データ区分33−3(1)(コマンド1Bの一部のサイズ(図9))が通知されることになる。
【0068】
ステップS2−12
エミュレーション(B)(図8)は、解析状態保存手段23−1(図8)に基づいて、前回の解析状態へ復帰する。但し、ここでは前回の状態は未だ格納されていないので無視することになる。
【0069】
ステップS2−13
上記ステップS2−11で通知され、保存している指定サイズ分のデータ解析が終了していればステップS2−17へ進み、解析が終了していなければステップS2−14へ進む。ここでは、未だ指定サイズ分のデータ解析が終了していないので、ステップS2−14へ進む。
【0070】
ステップS2−14
エミュレーション(B)は、データ読み込み部13(図8)を介してデータ区分の読み込みを実行する。ここではデータ区分33−3(1)(コマンド1Bの一部(図9))を読み込む。
ステップS2−15
エミュレーション(B)は、ページ記述言語をBとしてコマンド解析を実行する。
【0071】
ステップS2−16
一つのコマンドの解析が終了するまで、ステップS2−13〜ステップS2−16を繰り返し、一つのコマンドの解析が終了(一つのコマンドが成立)すればステップS2−18へ抜ける。ここでは、コマンド1Bの全てを解析していないのでステップS2−13へ戻る。又、ステップS2−13へ戻ったときに、ステップS2−11で通知されたデータサイズの全ての解析が終了していればステップS2−17へ進む。ここでは、コマンド1Bの一部(図9の33−3(1))のデータサイズが終了しているので、ステップS2−13を経てステップS2−17へ進む。
【0072】
ステップS2−17
エミュレーション(B)は、ステップS2−11で通知されたデータサイズ(ここでは、コマンド1Bの一部)が終了しているので、この時点でのコマンド解析状態で解析状態保存手段23−1(図8)を保存してステップS2−5へ戻る。エミュレーション(A)は、再度ステップS2−5〜ステップS2−10を2回繰り返し、コマンド3A、コマンド4Aの解析を終了したあとステップS2−9からステップS2−11へ進むことになる。次に、コマンド1Bの残りの一部(データ区分33−3(2)(図2))に対して、ステップS2−11からステップS2−16が繰り返され、コマンド1Bの残りの一部が解析されると、データ区分33−3(1)(図9)に追加され、コマンド1Bが成立する。そこでステップS2−18へ進む。
【0073】
ステップS2−18
コマンド1Bが成立したので、ステップS2−13、ステップS2−17(このときは、解析状態保存領域のモード40−1(図10)は解析完で保存)を通ってステップS2−5へ戻る。再度ステップS2−5〜ステップS2−10を繰り返し、データ区分30−6(コマンド5A(図9))の解析を終了した後ステップS2−6へ戻り、このステップS2−6からステップS2−19へ進む。
ステップS2−19
エミュレーション(A)の解析結果と、エミュレーション(B)の解析結果とを一つの画像データとして処理(印刷)してフローを終了する。
【0074】
以上説明したように、本実施例によれば、第2のページ記述言語Bによって変換されたコマンドが、一連のコマンドの途中で分断されていても、コマンドの一部を含むデータ区分の解析終了時点で、解析状態を保存することが可能になるため、後(直後である必要はない)に続くコマンドの残りの一部を解析し、コマンドを復元することが可能になる。その結果、一つのコマンドを必ずしも一つのデータ区分に含める必要がなくなり、送信フレームの構成に自由度が増加するという効果を得る。
【実施例3】
【0075】
本実施例では、良く使われる定型数表を印刷する場合等において、罫線データを画像形成装置のストレージに予め格納しておき、後から受信する数表データを上書きすることによって定型数表を作成したり、パスワード付きで送られてくるデータを予めストレージに格納しておき、後からパスワードを受入れた時のみ、その内容を印刷すること等が可能なシステムを構築する。
【0076】
図13は、実施例3のシステム構成図である。
図に示すように、実施例3の印刷システムは、画像情報処理装置1と、画像形成装置32と、ネットワーク3とを含む。以下に、実施例1と相違する部分のみについて詳細に説明する。実施例1と同様の部分については、実施例1と同一の符号を付して説明を省略する。
【0077】
画像形成装置32は、データ受信部9と、記憶部10と、ジョブ管理部11と、エミュレーション処理部12と、データ読み込み部33と、ページデータ生成部14と、展開部15と、プリントエンジン部16と、ストレージ34とを備え、コマンド体系混在データを含むフレームをネットワーク3から受け入れて、混在データのそれぞれが適合するエミュレーションに基づいて解析し、それらの解析結果から印刷データを構成し、印刷処理して出力する印刷装置である。特に本実施例では、印刷データを構成するに際して、予め内部に保有するフォームデータを利用可能とする。
【0078】
データ読み込み部33は、ジョブ管理部11を参照して記憶部10から印刷ジョブのコマンドを読み出してエミュレーション処理部12へ送出する部分である。更に、ストレージ34から所定のフォームデータを読み出してエミュレーション処理部12へ送出する部分でもある。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
【0079】
ストレージ34は、ハードディスク等の不揮発性の記憶装置であり、外部装置(画像情報処理装置1を含む)からダウンロードされたフォームデータや認証印刷データ等を予め格納するメモリである。ここでフォームデータについて説明する。
図14は、フォームデータ構成説明図である。
この図はフォームデータの一例を示す図である。図に示すように、第一のページ記述言語Aによるコマンド1A〜4Aと、第2のページ記述言語Bによるコマンド1B、及びコマンド2Bからなり、このコマンド1B、及びコマンド2Bは、コマンド3Aとコマンド4Aとの間に挿入されている。このフォームデータは、例えば、数表データの罫線のみを表すデータであり、数値データにフォームデータを後から上書きすることによって数表データが生成される。又、特定の図形、例えば会社のロゴマーク等もこのフォームデータに含めても良い。認証印刷データとは、パスワード付きで送られてくるデータを予めストレージ34に格納しておき、画像情報処理装置1からパスワードを受入れた時に印刷を開始するデータである。
【0080】
続いて、実施例3の画像形成装置32の動作について説明する。
図15は、実施例3の動作フローチャート(その1)である。
図16は、実施例3の動作フローチャート(その2)である。
図17は、受信データの内容説明図である。
ステップS3−11からステップS3−34までステップ順に説明する。
動作説明の前提条件として図14に示したフォームデータが、画像情報処理装置1(図13)からダウンロードされ、ストレージ34(図13)に予め格納されているものとする。又、画像形成装置32が画像情報処理装置1(図13)から図17に示す受信データを受信するものとする。
【0081】
ステップS3−11
データ受信部9(図13)は、ネットワーク3(図13)からフレームを受入れて分解し、受信ジョブを記憶部10(図13)に格納する。この印刷ジョブの格納アドレスやデータサイズは、データ受信部9(図13)によってジョブ管理部11(図13)へ通知される。以後、印刷ジョブの格納アドレスやデータサイズは、ジョブ管理部11(図18)によって管理されることになる。
【0082】
ステップS3−12
ジョブ管理部11(図13)は、最初のデータ区分(このデータ区分を第1のページ記述言語とする)を参照し、最初のデータ区分に適用されるエミュレーションを判断し、エミュレーション(1)〜(n)の中の何れかの種類に(以後、仮にエミュレーション(A)と記す)印刷ジョブの受信を通知する。
【0083】
ステップS3−13
エミュレーション(A)は、印刷ジョブの解析開始と印刷ジョブの情報(格納されているアドレス等)をデータ読み込み部13(図13)へ通知する。データ読み込み部13(図13)は、ジョブ管理部11(図13)を参照して印刷ジョブの最初のコマンド(ここではコマンド10A(図17)が記憶部10(図13)に格納されているアドレスを把握して読み取り準備を完了する。
【0084】
ステップS3−14
エミュレーション(A)は、印刷ジョブの解析に当たって必要な初期化を実行することになる。
【0085】
ステップS3−15
エミュレーション(A)は、データ読み込み部33(図13)に対してデータ読み込みを要求する。このデータ読み込みが、記憶部10(図13)から読み込む場合にはステップS3−16へ進み、ストレージ34(図13)から読み込む場合にはステップS3−24へ進む。ここでは、コマンド10Aを読み込むのでステップS3−16へ進むことになる。
【0086】
ステップS3−16
エミュレーション(A)は、データ読み込み部33(図13)を介して記憶部10(図18)からデータ区分を読み込む。ここでは、コマンド10A(図17)が読み込まれる。
ステップS3−17
印刷ジョブ全ての解析が終了した場合にはフローを終了し、印刷ジョブ全ての解析が終了していなければ、ステップS3−18へ進む。ここではステップS3−18へ進むことになる。
【0087】
ステップS3−18
エミュレーション(A)は、一つのコマンドの解析が終了するまで、ステップS3−15〜ステップS3−18を繰り返し、一つのコマンドの解析が終了すればステップS3−19へ抜ける。
【0088】
ステップS3−19
直後に続くコマンドがマクロ実行コマンドでない場合にはステップS3−20へ進み、マクロ実行コマンドの場合にはステップS3−22へ進む。ここでは、直後に進むコマンド11Aは、マクロ実行コマンドではないのでステップS3−20へ進む。ここでマクロ実行コマンドとは、予めストレージ34(図13)に格納されているフォームデータを実行するコマンドを言う。
【0089】
ステップS3−20
直後に続くコマンドが、第2のページ記述言語Bを含むコマンドでない場合にはステップS3−21へ進み、第2のページ記述言語Bを含むコマンドの場合にはステップS3−27へ進む。ここでは、コマンド11Aは、第2のページ記述言語Bを含むコマンドでないのでステップS3−21へ進む。
【0090】
ステップS3−21
エミュレーション(A)は、処理を継続しステップS3−15へ戻る。エミュレーション(A)は、ステップS3−15〜ステップS3−21を繰り返して、コマンド11A(図17)を解析した後、コマンド12A(図17)ではマクロが指定されているのでステップS3−19からステップS3−22へ抜けることになる。
【0091】
ステップS3−22
エミュレーション(A)は、コマンドによって指定されているIDのフォームデータがストレージ34(図13)に、格納されているか否かを検索し、含まれている場合にはステップS3−23へ進み、含まれていない場合にはコマンド無効として何も行わない。ここでは、動作説明の前提より、図14に示すフォームデータがストレージ34(図13)に、格納されている。
【0092】
ステップS3−23
エミュレーションAは、データ読み込み部33(図13)に対してフォームデータの読み込み開始を指定する。このときデータ読み込み部33(図13)は、その時まで参照していた記憶部10(図13)のメモリアドレスを保持したまま、フォームデータが格納されているストレージ34(図13)のアドレスを保持し、ステップS3−15へ戻る。以下、ステップS3−15からステップS3−24へ抜ける。
【0093】
ステップS3−24
データ読み込み部33(図13)は、ストレージ34(図13)からフォームデータを読み込む。
ステップS3−25
データ読み込み部33(図13)は、フォームデータの読み込みを完了するまでステップS3−25、ステップS3−17、ステップS3−18、ステップS3−19、ステップS3−20、ステップS3−21、ステップS3−15、ステップS3−24、ステップS3−25を繰り返し、完了した後ステップS3−26へ進む。この途中で図14のコマンド1B及びコマンド2Bを読取る時は、ステップS3−20を経てステップS3−27へ進むことになる。
【0094】
ステップS3−26
エミュレーションAは、データ読み込み部33(図13)に対して記憶部10(図13)からのデータ読み込み再開を通知する。データ読み込み部33(図13)は、ステップS3−15へ戻り、ステップS3−23で保持されている記憶部10(図13)のアドレスに戻ってデータ読み込みを再開する。ここでは、図17のコマンド13Aが読み込まれ、読み込みが終わるとステップS3−17から抜け出してフローを終了する。
【0095】
次に、エミュレーションBの動作について説明する。上記前提条件によれば、上記ステップS3−25で説明したように、フォームデータの読み込みを完了するまでの途中で図14のコマンド1B及びコマンド2Bを読取る時は、ステップS3−20を経てステップS3−27へ進むことになる。以下にこのフローについて説明する。
【0096】
ステップS3−27
エミュレーション(A)は、エミュレーション(B)に対して解析するデータサイズを通知する。エミュレーション(B)は、この値を保存するとともに印刷ジョブの解析に当たって必要な初期化を実行することになる。ここでは、コマンド1B+コマンド2Bのサイズが通知されることになる。
【0097】
ステップS3−28
上記ステップS3−27で通知され、保存している指定サイズ分のデータ解析が終了していればステップS3−15へ戻り、解析が終了していなければステップS3−29へ進む。ここでは、未だ指定サイズ分のデータ解析が終了していないので、ステップS3−29へ進む。
【0098】
ステップS3−29
データ読み込み部33(図13)の読み込み先がストレージ34(図13)の場合にはステップS3−30へ進み、記憶部10(図13)の場合にはステップS3−31へ進む。ここでは動作説明の前提条件よりステップS3−30へ進むことになる。
【0099】
ステップS3−30
エミュレーション(B)は、データ読み込み部13(図13)を介してストレージ34(図13)からコマンドの読み込みを実行する。ここではコマンド1B(図14)を読み込む。
【0100】
ステップS3−31
エミュレーション(B)は、データ読み込み部13(図13)を介して記憶部10(図13)からコマンドの読み込みを実行する。ここでは動作説明の前提条件に反する。
【0101】
ステップS3−32
エミュレーション(B)は、ページ記述言語をBとしてコマンド解析を実行する。
ステップS3−33
一つのコマンドの解析が終了するまで、ステップS3−28〜ステップS3−33を繰り返し、一つのコマンドの解析が終了すればステップS3−34へ抜ける。ここでは、コマンド1Bの解析が終了するとステップS3−34へ抜ける。
【0102】
ステップS3−34
エミュレーション(B)は、後に続くコマンド2B(図14)を処理すべくステップS3−28へ戻る。エミュレーション(B)は、ステップS3−28〜ステップS3−33を繰り返して、コマンド2B(図14)を解析した後、ステップS3−28へ戻り、ここからステップS3−15へ戻る。再度ステップS3−15〜ステップS3−21、を繰り返して、コマンド4Aの解析を終了してマクロ指定コマンド12A(図17)の処理を終了し、コマンド13A(図17)へ進み、上記のようにステップS3−17を経て、ここでは、図17のコマンド13Aが読み込まれ、読み込みが終わるとステップS3−17から抜け出してフローを終了することになる。
【0103】
以上説明したように、本実施例によれば、良く使われるフォームデータ等を予めストレージに格納しておくことが出来る。従って、良く使われる数表を作成する場合等には、罫線データをストレージに予め格納しておき、後から送信する数表データを上書きすることによって数表を作成したり、パスワード付きで送られてくるデータを予めストレージに格納しておき、後からバスワードを受入れた時のみ、その内容を印刷すること等が可能になり、装置の利便性を増加させることが出来るという効果を得る。
【実施例4】
【0104】
本実施例では、上記実施例3において、データ読み込み部33(図13)がストレージ34(図13)からフォームデータを読み出す時間を短縮するために、アクセススピードが速いデータコピー領域を新たに画像形成装置の内部に設け、アクセススピードが遅いストレージ34(図13)から、フォームデータを所定量一括して格納可能な状態を形成することとする。
【0105】
図18は、実施例4の印刷システム構成図である。
図に示すように、実施例4の印刷システムは、画像情報処理装置1と、画像形成装置42と、ネットワーク3とを含む。以下に、実施例3と相違する部分のみについて詳細に説明する。実施例3と同様の部分については、実施例3と同一の符号を付して説明を省略する。
【0106】
画像形成装置42は、データ受信部9と、記憶部10と、ジョブ管理部11と、エミュレーション処理部12と、データ読み込み部43と、ページデータ生成部14と、展開部15と、プリントエンジン部16と、ストレージ34と、データコピー領域44とを備え、コマンド体系混在データを含むフレームをネットワーク3から受け入れて、混在データのそれぞれが適合するエミュレーションに基づいて解析し、それらの解析結果から印刷データを構成し、印刷処理して出力する印刷装置である。特に本実施例では、印刷データを構成するに際して、予め内部に保有するデータコピー領域44からフォームデータを読み込むことによってフォームデータを読み込むために要する時間を短縮する。
【0107】
データ読み込み部43は、ジョブ管理部11を参照して記憶部10から印刷ジョブのコマンドを読み出してエミュレーション処理部12へ送出する部分である。更に、ストレージ34から所定のフォームデータを読み出してエミュレーション処理部12へ送出する部分でもある。更に、ストレージ34から所定のフォームデータをまとめて読み出してデータコピー領域44へ格納する部分でもある。この部分は、画像形成装置内部の所定のメモリに予め格納されている制御プログラムをCPUが実行することによって起動される。
【0108】
データコピー領域44は、ストレージ34からフォームデータを所定量一括して受入れて格納するメモリである。通常、画像形成装置42に備える図示しないRAM(ランダムアクセスメモリ)の一部の領域が当てられる。
【0109】
続いて、実施例4の画像形成装置42の動作について説明する。
図19は、実施例4の動作フローチャート(その1)である。
図20は、実施例4の動作フローチャート(その2)である。
ステップS4−11からステップS4−38までステップ順に説明する。
動作説明の前提条件として図14に示したフォームデータが、画像情報処理装置1(図18)からダウンロードされ、ストレージ34(図18)に予め格納されているものとする。又、画像形成装置42が画像情報処理装置1(図18)から図17に示す受信データを受信するものとする。
【0110】
ステップS4−11
データ受信部9(図18)は、ネットワーク3(図18)からフレームを受入れて分解し、印刷ジョブを記憶部10(図18)に格納する。この印刷ジョブの格納アドレスやデータサイズは、データ受信部9(図18)によってジョブ管理部11(図18)へ通知される。以後、印刷ジョブの格納アドレスやデータサイズは、ジョブ管理部11(図18)によって管理されることになる。
【0111】
ステップS4−12
ジョブ管理部11(図18)は、最初のデータ区分(このデータ区分を第1のページ記述言語とする)を参照し、最初のデータ区分に適用されるエミュレーションを判断し、エミュレーション(1)〜(n)の中の何れかの種類に(以後、仮にエミュレーション(A)と記す)印刷ジョブの受信を通知する。
【0112】
ステップS4−13
エミュレーション(A)は、印刷ジョブの解析開始と印刷ジョブの情報(格納されているアドレス等)をデータ読み込み部13(図1)へ通知する。データ読み込み部13(図18)は、ジョブ管理部11(図18)を参照して印刷ジョブの最初のコマンド(ここではコマンド10A(図17)が記憶部10(図18)に格納されているアドレスを把握して読み取り準備を完了する。
【0113】
ステップS4−14
エミュレーション(A)は、印刷ジョブの解析に当たって必要な初期化を実行する。
【0114】
ステップS4−15
エミュレーション(A)は、データ読み込み部33(図18)に対してデータ読み込みを要求する。このデータ読み込みが、記憶部10(図18)から読み込む場合にはステップS4−16へ進み、ストレージ34(図18)から読み込む場合にはステップS4−24へ進む。ここでは、コマンド10Aを読み込むのでステップS4−16へ進むことになる。
【0115】
ステップS4−16
エミュレーション(A)は、データ読み込み部33(図18)を介してデータ区分を読み込む。ここでは、コマンド10A(図17)が読み込まれる。
ステップS4−17
印刷ジョブ全ての解析が終了した場合にはフローを終了し、印刷ジョブ全ての解析が終了していなければ、ステップS4−18へ進む。ここではステップS4−18へ進むことになる。
【0116】
ステップS4−18
エミュレーション(A)は、一つのコマンドの解析が終了するまで、ステップS4−15〜ステップS4−18を繰り返し、一つのコマンドの解析が終了すればステップS4−19へ抜ける。
【0117】
ステップS4−19
直後に続くコマンドがマクロ実行コマンドでない場合にはステップS4−20へ進み、マクロ実行コマンドの場合にはステップS4−22へ進む。ここでは、直後に進むコマンド11Aは、マクロ実行コマンドではないのでステップS4−20へ進む。ここでマクロ実行コマンドとは、予めストレージ34(図18)に格納されているフォームデータを実行するコマンドを言う。
【0118】
ステップS4−20
直後に続くコマンドが、第2のページ記述言語Bを含むコマンドでない場合にはステップS4−21へ進み、第2のページ記述言語Bを含むコマンドの場合にはステップS4−29へ進む。ここでは、コマンド11Aは、第2のページ記述言語Bを含むコマンドでないのでステップS4−21へ進む。
【0119】
ステップS4−21
エミュレーション(A)は、処理を継続しステップS4−15へ戻る。エミュレーション(A)は、ステップS4−15〜ステップS4−21を繰り返して、コマンド11A(図17)を解析した後、コマンド12A(図17)ではマクロが指定されているのでステップS4−19からステップS4−22へ抜けることになる。
【0120】
ステップS4−22
エミュレーション(A)は、コマンドによって指定されているIDのフォームデータがストレージ34(図18)に、格納されているか否かを検索し、含まれている場合にはステップS4−23へ進み、含まれていない場合にはコマンド無効として何も行わない。ここでは、動作説明の前提より、図14に示すフォームデータがストレージ34(図18)に、格納されている。
【0121】
ステップS4−23
エミュレーションAは、データ読み込み部33(図18)に対してフォームデータの読み込み開始を指定する。このときデータ読み込み部33(図18)は、その時まで参照していた記憶部10(図18)のメモリアドレスを保持したまま、フォームデータが格納されているストレージ34(図18)のアドレスを保持し、ステップS4−15へ戻る。以下、ステップS4−15からステップS4−24へ抜ける。
【0122】
ステップS4−24
データ読み込み部33(図18)は、データコピー領域44(図18)からフォームデータを読み込む。参照位置と格納サイズを更新する。
【0123】
ステップS4−25
データ読み込み部33(図18)は、格納サイズが0になったときに、メモリサイズ分次のフォームデータを読み込んだ場合はステップS4−27へ進み、データ終端のブロックでメモリサイズ分に満たない場合にはステップS4−26へ進む。
【0124】
ステップS4−26
データ読み込み部33(図18)は、ストレージ34(図18)のフォームデータファイルからフォームデータを読み込む。
【0125】
ステップS4−27
データ読み込み部33(図18)は、フォームデータの読み込みを完了するまで、ステップS4−17、ステップS4−18、ステップS4−19、ステップS4−20、ステップS4−21、ステップS4−15、ステップS4−24、ステップS4−25、ステップS4−26、ステップS4−27を繰り返し、完了した後ステップS4−28へ進む。この途中で図14のコマンド1B及びコマンド2Bを読取る時は、ステップS4−20を経てステップS4−29へ進むことになる。
【0126】
ステップS4−28
エミュレーションAは、データ読み込み部33(図18)に対して記憶部10(図18)からのデータ読み込み再開を通知する。データ読み込み部33(図18)は、ステップS4−15へ戻り、ステップS4−23で保持されている記憶部10(図18)のアドレスに戻ってデータ読み込みを再開する。ここでは、図17のコマンド13Aが読み込まれ、読み込みが終わるとステップS4−17から抜け出してフローを終了する。
【0127】
次に、エミュレーションBの動作について説明する。上記前提条件によれば、上記ステップS4−27で説明したように、フォームデータの読み込みを完了するまでの途中で図14のコマンド1B及びコマンド2Bを読取る時は、ステップS4−20を経てステップS4−29へ進むことになる。以下にこのフローについて説明する。
【0128】
ステップS4−29
エミュレーション(A)は、エミュレーション(B)に対して解析するデータサイズを通知する。エミュレーション(B)は、この値を保存するとともに印刷ジョブの解析に当たって必要な初期化を実行することになる。ここでは、コマンド1B+コマンド2Bのサイズが通知されることになる。
【0129】
ステップS4−30
上記ステップS4−29で通知され、保存している指定サイズ分のデータ解析が終了していればステップS4−15へ戻り、解析が終了していなければステップS4−31へ進む。ここでは、未だ指定サイズ分のデータ解析が終了していないので、ステップS4−31へ進む。
【0130】
ステップS4−31
データ読み込み部33(図18)の読み込み先がストレージ34(図18)の場合にはステップS4−32へ進み、記憶部10(図18)の場合にはステップS4−35へ進む。ここでは動作説明の前提条件よりステップS4−32へ進むことになる。
【0131】
ステップS4−32
エミュレーション(B)は、データ読み込み部13(図18)を介してデータコピー領域44(図18)からコマンドの読み込みを実行する。ここではコマンド1B(図14)を読み込んで、参照位置と格納サイズを更新する。
【0132】
ステップS4−33
データ読み込み部33(図18)は、格納サイズが0になったときに、メモリサイズ分次のフォームデータを読み込んだ場合はステップS4−36へ進み、データ終端のブロックでメモリサイズ分に満たない場合にはステップS4−34へ進む。
【0133】
ステップS4−34
データ読み込み部33(図18)は、ストレージ34(図18)のフォームデータファイルからフォームデータを読み込む。
【0134】
ステップS4−35
エミュレーション(B)は、データ読み込み部13(図18)を介して記憶部10(図18)からコマンドの読み込みを実行する。ここでは動作説明の前提条件に反する。
【0135】
ステップS4−36
エミュレーション(B)は、ページ記述言語をBとしてコマンド解析を実行する。
ステップS4−37
一つのコマンドの解析が終了するまで、ステップS4−30〜ステップS4−37を繰り返し、一つのコマンドの解析が終了すればステップS4−38へ抜ける。ここでは、コマンド1Bの解析が終了するとステップS4−38へ抜ける。
【0136】
ステップS4−38
エミュレーション(B)は、後に続くコマンド2B(図14)を処理すべくステップS4−30へ戻る。エミュレーション(B)は、ステップS4−30〜ステップS4−37を繰り返して、コマンド2B(図14)を解析した後、ステップS4−38を経てステップS4−30へ戻り、ここからステップS4−15へ戻る。再度ステップS4−15〜ステップS4−21、を繰り返して、コマンド4Aの解析を終了してマクロ指定コマンド12A(図17)の処理を終了し、コマンド13A(図17)へ進む。ここでは、図17のコマンド13Aが読み込まれ、読み込みが終わるとステップS4−17から抜け出してフローを終了することになる。
【0137】
以上説明したように、本実施例ではアクセススピードが速いデータコピー領域を新たに設けることによって、アクセススピードが遅いストレージからフォームデータを所定量一括して読み出すことが出来るので、処理時間を大幅に短縮できるという効果を得る。
【産業上の利用可能性】
【0138】
以上の説明では、本発明を印刷装置に適合させた場合について説明したが、本発明は、この例に限定されるものではない。即ち、ファクシミリ装置や、複合機などにも適合可能である。
【図面の簡単な説明】
【0139】
【図1】実施例1のシステム構成図である。
【図2】印刷ジョブの構成図である。
【図3】実施例1の画像情報処理装置の動作フローチャートである。
【図4】実施例1の動作フローチャート(その1)である。
【図5】実施例1の動作フローチャート(その2)である。
【図6】実施例1の動作説明図(その1)である。
【図7】実施例1の動作説明図(その2)である。
【図8】実施例2の印刷システム構成図である。
【図9】実施例2の印刷ジョブの構成図である。
【図10】解析状態保存手段の説明図である。
【図11】実施例2の動作フローチャート(その1)である。
【図12】実施例2の動作フローチャート(その2)である。
【図13】実施例3のシステム構成図である。
【図14】フォームデータ構成説明図である。
【図15】実施例3の動作フローチャート(その1)である。
【図16】実施例3の動作フローチャート(その2)である。
【図17】受信データの内容説明図である。
【図18】実施例4の印刷システム構成図である。
【図19】実施例4の動作フローチャート(その1)である。
【図20】実施例4の動作フローチャート(その2)である。
【符号の説明】
【0140】
1 画像情報処理装置
2 画像形成装置
3 ネットワーク
4 アプリケーション処理部
5 言語選択部
6 データ変換部
7 印刷ジョブ構成部
8 データ送信部
9 データ受信部
10 記憶部
11 ジョブ管理部
12 エミュレーション処理部
13 データ読み込み部
14 ページデータ生成部
15 展開部
16 プリントエンジン部
【特許請求の範囲】
【請求項1】
複数種類のページ記述言語の中から、送信画像情報の第一の部分を変換する第一のページ記述言語と、前記送信画像情報の第二の部分を変換する第二のページ記述言語とをそれぞれ選択する言語選択部と、
前記第一のページ記述言語に基づいて変換された第一のコマンド体系に基づくデータと、前記第二のページ記述言語に基づいて変換された第二のコマンド体系に基づくデータとから、一つの画像データを構成する印刷ジョブ構成部とを備えることを特徴とする画像情報処理装置。
【請求項2】
第一のコマンド体系に基づくデータの内部に第二のコマンド体系に基づくデータを含むコマンド体系混在データを受信するデータ受信部と、
前記データ受信部が受信したコマンド体系混在データから前記第一のコマンド体系に基づくデータを解析する第一のコマンド解析手段と、
前記データ受信部が受信したコマンド体系混在データから前記第二のコマンド体系に基づくデータを解析する第二のコマンド解析手段と、
前記第一のコマンド解析手段の解析結果と、前記第二のコマンド解析手段の解析結果から一つの画像データを構成するページデータ生成部とを備えることを特徴とする画像形成装置。
【請求項3】
前記第一のコマンド体系に基づくデータから、後に続く第二のコマンド体系に基づくデータの開始と、データサイズを検出すると、コマンド解析手段を前記第一のコマンド解析手段から前記第二のコマンド解析手段に変更させる後続処理選択手段を更に備えることを特徴とする請求項2に記載の画像形成装置。
【請求項4】
前記第二のコマンド解析手段が前記第二のコマンド体系に基づくデータを解析すると、そのときのデータ解析状態を保存する解析状態保存手段を更に備えることを特徴とする請求項2又は請求項3に記載の画像形成装置。
【請求項5】
上位装置により登録される登録情報を予め格納する不揮発性メモリ領域と、
請求項1に記載の画像情報処理装置の指示に基づいて、前記登録情報を読み出すデータ読み込み手段とを更に備えることを特徴とする請求項2〜請求項4までの何れか一項に記載の画像形成装置。
【請求項6】
前記不揮発性メモリ領域が格納する前記登録情報を受入れて保持するランダムアクセスメモリ領域を更に備え、
前記データ読み込み手段は、前記コマンド解析手段が前記登録情報の解析を開始すると、前記不揮発性メモリ領域から所定量の前記登録情報を一括して読み出し、前記ランダムアクセスメモリ領域へ保持させることを特徴とする請求項5に記載の画像形成装置。
【請求項7】
請求項1に記載の画像情報装置と、請求項2から請求項6までの何れか一項に記載の画像形成装置とを含むことを特徴とする印刷システム。
【請求項1】
複数種類のページ記述言語の中から、送信画像情報の第一の部分を変換する第一のページ記述言語と、前記送信画像情報の第二の部分を変換する第二のページ記述言語とをそれぞれ選択する言語選択部と、
前記第一のページ記述言語に基づいて変換された第一のコマンド体系に基づくデータと、前記第二のページ記述言語に基づいて変換された第二のコマンド体系に基づくデータとから、一つの画像データを構成する印刷ジョブ構成部とを備えることを特徴とする画像情報処理装置。
【請求項2】
第一のコマンド体系に基づくデータの内部に第二のコマンド体系に基づくデータを含むコマンド体系混在データを受信するデータ受信部と、
前記データ受信部が受信したコマンド体系混在データから前記第一のコマンド体系に基づくデータを解析する第一のコマンド解析手段と、
前記データ受信部が受信したコマンド体系混在データから前記第二のコマンド体系に基づくデータを解析する第二のコマンド解析手段と、
前記第一のコマンド解析手段の解析結果と、前記第二のコマンド解析手段の解析結果から一つの画像データを構成するページデータ生成部とを備えることを特徴とする画像形成装置。
【請求項3】
前記第一のコマンド体系に基づくデータから、後に続く第二のコマンド体系に基づくデータの開始と、データサイズを検出すると、コマンド解析手段を前記第一のコマンド解析手段から前記第二のコマンド解析手段に変更させる後続処理選択手段を更に備えることを特徴とする請求項2に記載の画像形成装置。
【請求項4】
前記第二のコマンド解析手段が前記第二のコマンド体系に基づくデータを解析すると、そのときのデータ解析状態を保存する解析状態保存手段を更に備えることを特徴とする請求項2又は請求項3に記載の画像形成装置。
【請求項5】
上位装置により登録される登録情報を予め格納する不揮発性メモリ領域と、
請求項1に記載の画像情報処理装置の指示に基づいて、前記登録情報を読み出すデータ読み込み手段とを更に備えることを特徴とする請求項2〜請求項4までの何れか一項に記載の画像形成装置。
【請求項6】
前記不揮発性メモリ領域が格納する前記登録情報を受入れて保持するランダムアクセスメモリ領域を更に備え、
前記データ読み込み手段は、前記コマンド解析手段が前記登録情報の解析を開始すると、前記不揮発性メモリ領域から所定量の前記登録情報を一括して読み出し、前記ランダムアクセスメモリ領域へ保持させることを特徴とする請求項5に記載の画像形成装置。
【請求項7】
請求項1に記載の画像情報装置と、請求項2から請求項6までの何れか一項に記載の画像形成装置とを含むことを特徴とする印刷システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【公開番号】特開2006−99734(P2006−99734A)
【公開日】平成18年4月13日(2006.4.13)
【国際特許分類】
【出願番号】特願2005−204132(P2005−204132)
【出願日】平成17年7月13日(2005.7.13)
【出願人】(591044164)株式会社沖データ (2,444)
【出願人】(594202361)株式会社沖データシステムズ (259)
【Fターム(参考)】
【公開日】平成18年4月13日(2006.4.13)
【国際特許分類】
【出願日】平成17年7月13日(2005.7.13)
【出願人】(591044164)株式会社沖データ (2,444)
【出願人】(594202361)株式会社沖データシステムズ (259)
【Fターム(参考)】
[ Back to top ]