以下、本発明に係るジョブ管理システム、画像形成装置及び制御プログラムの一実施形態を図面に基づいて説明する。尚、本実施形態では、携帯装置としてタブレットを例に説明するが、本発明に係る携帯装置をこれに限定する趣旨ではない。本発明に係る携帯装置は、例えば、スマートフォンやノートパソコン等であってもよい。
また、本実施形態では、画像形成装置として複合機を例に説明するが、本発明に係る画像形成装置をこれに限定する趣旨ではない。本発明に係る画像形成装置は、例えば、ファクシミリ装置、コピー機、又はプリンター等であってもよい。
図1は、本発明の一実施形態に係るジョブ管理システム9の概略構成図である。図1に示すように、ジョブ管理システム9は、二台のタブレット1a、1b(携帯装置)と、複合機2(画像形成装置)と、を備えている。
二台のタブレット1a、1bは、同構成であるので、以下では二台のタブレット1a、1bを総称する場合、タブレット1と記載する。タブレット1と複合機2とは、LAN(Local Area Network)やインターネット等のネットワーク90を介して互いに通信可能に構成されている。
タブレット1は、電源部19、記憶部18、通信部17、操作表示部16及び制御部10を備えている。
電源部19は、充電可能な二次電池であり、タブレット1内の各部の動作に用いる電力を供給する。記憶部18は、フラッシュメモリー等の不揮発性メモリーである。記憶部18には、タブレット1の動作に必要な各種データ等が予め記憶されている。通信部17は、ネットワーク90を介して複合機2との間で通信を行うときに用いられる通信インターフェイス回路である。操作表示部16は、タッチパネル機能を有する液晶ディスプレイ等のタッチ操作可能な表示部である。
制御部10は、所定の演算処理を実行する不図示のCPUと、所定の制御プログラムが記憶されたEEPROM等の不図示の不揮発性メモリーと、データを一時的に記憶するための不図示のRAMと、これらの周辺回路等とを備えたマイクロコンピューター(コンピューター)である。制御部10は、上記不揮発性メモリーに記憶された制御プログラムをCPUによって実行することによって、タブレット1内の各部の動作を制御する。
制御部10は、複合機2に印刷データを印刷させる動作に関連し、特に、表示制御部11、データ生成部12、オフセット生成部13、送信部14、及び送信要求部15として機能する。
表示制御部11は、タッチ操作可能なブラウザーを操作表示部16に表示する。ブラウザーは、周知の構成を有し、ソフトキーのタッチ操作によってURLの入力操作が可能となっている。ブラウザーは、入力されたURLにより識別されるHTML形式のデータを取得し、当該取得したHTMLデータが表す画像をブラウザー内の所定の表示領域に表示する。また、ブラウザーは、ブラウザーに設けられた印刷用のソフトキーのタッチ操作により、上記表示領域に表示中の画像を複合機2に印刷させる印刷指示の入力操作が可能となっている。
データ生成部12は、ブラウザーにおいて上記印刷指示の入力操作が行われた場合、ブラウザーに表示されている画面を表すHTML形式のデータ(原データ)を、所定の整形条件に基づいて、PDL(Page Description Language)形式の一以上のページデータに分割する。これにより、データ生成部12は、当該一以上のページデータにより構成される印刷データを生成する。
以下、HTML形式のデータをHTMLデータと記載し、PDL形式のデータをPDLデータと記載する。整形条件とは、HTMLデータ内の各HTMLタグが表す文字列や画像等の描画要素を、ブラウザーの表示領域や用紙に描画するときの態様を定めたものである。整形条件の具体例については後述する。
オフセット生成部13は、データ生成部12が生成した各ページデータの先頭位置に対応する原データ上での位置を原データの先頭位置を基準としたときのデータ長によって示すオフセット情報を、ページデータ毎に生成する。原データとは、PDLデータからなる印刷データを生成する前の印刷対象の画像を表すデータである。上述の例では、原データは、ブラウザーに表示された画面を表すHTMLデータである。
以下、データ生成部12及びオフセット生成部13について、具体例を用いて説明する。図2は、HTMLデータHDと印刷データPRDとの関係の一例を示す図である。以下では、ブラウザーにおいて、図2に示すHTMLデータHDが表す画像の印刷指示が入力操作された場合について説明する。尚、図2に示すHTMLデータHD内のHTMLタグは、説明の便宜上、HTMLデータで用いられる通常のHTMLタグとは異なるタグを記載している。
データ生成部12は、HTMLデータHDの先頭位置HP1を基準とし、最初に印刷される描画要素であるHTMLタグ<タイトル>が示す文字列「大会結果」を取得する。データ生成部12は、当該取得した文字列「大会結果」を、HTMLタグ<タイトル>に対応付けられた整形条件に基づいて、仮想的に設けた一ページ分の描画領域PA1(以下、仮想描画領域と記載する)に収まるように描画可能か否かを判定する。
図3は、記憶部18に記憶されている条件情報Cの一例を示す図である。例えば、図3に示すように、記憶部18には、各HTMLタグと整形条件とを対応付けた情報である条件情報Cが記憶されている。データ生成部12は、記憶部18に記憶されている条件情報Cを参照し、当該条件情報Cが示す整形条件に基づき上記判定を行う。
図3に示す条件情報Cでは、例えば、HTMLタグ<タイトル>と、HTMLタグ<タイトル>が示す文字列の各文字を文字サイズ「C1px」で描画し、文字の太さ「太字」で描画することを示す整形条件とが対応付けられている。HTMLタグ<テキスト>には、HTMLタグ<テキスト>が示す文字列の各文字を文字サイズ「C2px」で描画し、文字の太さ「普通」で描画することを示す整形条件が対応付けられている。HTMLタグ<画像>には、HTMLタグ<画像>が示す画像を描画位置「幅方向の中央」に描画することを示す整形条件が対応付けられている。HTMLタグ<表>には、HTMLタグ<表>が示す表に描画する文字列の各文字を文字サイズ「C3px」で描画し、当該表を描画位置「幅方向の中央」に描画することを示す整形条件が対応付けられている。
この場合、図2に示すように、HTMLタグ<タイトル>が示す文字列「大会結果」の各文字を、HTMLタグ<タイトル>に対応付けられた整形条件が示す文字サイズ「C1px」且つ文字の太さ「太字」で、仮想描画領域PA1に収まるように描画可能である。この場合、データ生成部12は上記判定において描画可能と判定する。
データ生成部12は、上記判定において描画可能と判定した場合、当該描画可能と判定した描画要素を仮想描画領域に描画し、次に印刷される描画要素について同様の判定を行う。
具体的には、データ生成部12は、次に印刷される描画要素であるHTMLタグ<画像>が示す、「http://www.aaa.com/img/A.jpg」で識別される画像を取得する。データ生成部12は、仮想描画領域PA1に描画したHTMLタグ<タイトル>が示す文字列「大会結果」に続けて、当該取得した画像をHTMLタグ<画像>に対応付けられた整形条件が示す描画位置「幅方向の中央」に描画した場合、仮想描画領域PA1内に収まるか否かを判定する。この場合も、図2に示すように、上記画像を仮想描画領域PA1内に収まるように描画可能であるので、データ生成部12は、上記判定において描画可能と判定する。
このようにして、データ生成部12は、各HTMLタグが示す印刷対象の各描画要素を、各HTMLタグに対応付けられた整形条件に基づいて、一ページ分の仮想描画領域内に収まるように描画可能か否かを判定する処理を繰り返す。
そして、データ生成部12は、上記判定において描画可能でないと判定したとする。例えば、図2の例では、データ生成部12は、HTMLタグ<表>が示す表を、当該HTMLタグ<表>に対応付けられた整形条件に基づいて、先に描画したHTMLタグ<テキスト>が示す文字列に続けて仮想描画領域内PA1に収まるように描画可能でないと判定する。
データ生成部12は、HTMLタグが示す描画要素を仮想描画領域に収まるように描画可能でないと判定した場合、当該仮想描画領域に描画した画像を印刷するためのPDLデータを生成する。そして、データ生成部12は、当該生成したPDLデータを印刷データを構成する一のページデータとする。
図2の例では、データ生成部12は、仮想描画領域PA1に描画した、HTMLタグ<タイトル>、HTMLタグ<画像>、及びHTMLタグ<テキスト>が示す描画要素を含む画像を印刷するためのPDLデータを生成する。データ生成部12は、当該生成したPDLデータを印刷データPRDを構成する一のページデータPD1とする。
尚、データ生成部12は、上記判定において描画可能でないと判定した場合、上記と同様にして、当該描画可能でないと判定した描画要素を新たな仮想描画領域に描画可能か否かを判定する処理を行い、当該判定処理の結果に応じてページデータを生成する処理を行う。
その結果、図2の例では、データ生成部12は、仮想描画領域PA1に描画したHTMLタグ<タイトル>、HTMLタグ<画像>、及びHTMLタグ<テキスト>が示す描画要素を含む画像を印刷するためのページデータPD1を生成する。データ生成部12は、新たな仮想描画領域PA2に描画したHTMLタグ<表>及びHTMLタグ<テキスト>が示す描画要素を含む画像を印刷するためのページデータPD2を生成する。また、データ生成部12は、新たな仮想描画領域PA3に描画した二つのHTMLタグ<テキスト>が示す描画要素を含む画像を印刷するためのページデータPD3を生成する。
このようにして、データ生成部12は、HTMLデータHDを三個のページデータPD1〜PD3に分割し、当該三個のページデータPD1〜PD3により構成される印刷データPRDを生成する。
尚、データ生成部12は、印刷データPRDを構成する最終ページのページデータPD3には、最終ページであることを示す最終ページ情報EPを含める。
オフセット生成部13は、データ生成部12が生成した各ページデータPD1〜PD3の先頭位置に対応するHTMLデータHD上での位置を、HTMLデータHDの先頭位置HP1を基準としたときのデータ長によって示すオフセット情報を生成する。
具体的には、ページデータPD1は、上記三個のページデータPD1〜PD3のうち、先頭ページのページデータである。つまり、ページデータPD1の先頭位置は、HTMLデータHD上での先頭位置HP1に対応する。このため、オフセット生成部13は、ページデータPD1の先頭位置に対応するHTMLデータHD上での位置HP1を、HTMLデータHDの先頭位置HP1を基準としたときのデータ長「0」で示すオフセット情報OF1を生成する。
ページデータPD2は、仮想描画領域PA2に対応している。つまり、ページデータPD2の先頭位置は、HTMLデータHDにおける、仮想描画領域PA2に最初に描画された描画要素を示すHTMLタグ<表>の位置HP2に対応する。このため、オフセット生成部13は、当該位置HP2をHTMLデータHDの先頭位置HP1を基準としたときのデータ長D2によって示すオフセット情報OF2を生成する。
同様にして、オフセット生成部13は、ページデータPD3の先頭位置に対応する、HTMLデータHDにおけるHTMLタグ<テキスト>の位置HP3を、先頭位置HP1を基準としたときのデータ長D3によって示すオフセット情報OF3を生成する。
図1に参照を戻す。送信部14は、通信部17を制御して、データ生成部12により生成されたページデータPD1〜PD3と、オフセット生成部13により生成された当該ページデータPD1〜PD3に対応するオフセット情報OF1〜OF3と、をページ順に複合機2へ送信する。
つまり、送信部14は、ページデータPD1とページデータPD1に対応するオフセット情報OF1とを送信後、ページデータPD2とページデータPD2に対応するオフセット情報OF2とを送信し、その後、ページデータPD3とページデータPD3に対応するオフセット情報OF3とを送信する。
また、送信部14は、印刷対象の画面を表すHTMLデータHDを取得するために必要な取得情報と、記憶部18に記憶されている条件情報Cと、を更に複合機2へ送信する。具体的には、取得情報は、HTMLデータHDを取得するために必要なURLを示す。
送信要求部15は、所定の時期に、通信部17を制御して、後述のジョブリストJLの送信指示を複合機2へ送信する。所定の時期には、例えば、タブレット1の起動時や、操作表示部16に表示されたジョブリストの送信指示を入力するためのソフトキーがタッチ操作されたときが含まれる。
次に、複合機2の構成について説明する。複合機2は、電源部30、記憶部29、通信部28、操作表示部27、画像読取部26、画像形成部25及び制御部20を備えている。
電源部30は、AC/DCコンバーター等を備え、外部電源から供給された電力を複合機2内の各部の動作に用いる所定レベルの電力に変換し、複合機2内の各部へ供給する。記憶部29は、HDDやSSD等の記憶装置である。
記憶部29には、複合機2の動作に必要な各種データ等が予め記憶されている。また、記憶部29には、ジョブリストJLを記憶する領域が設けられている。ジョブリストJLは、印刷ジョブに関連する各種情報及びデータをそれぞれ対応付けて登録(記憶)可能に構成されている。
図4は、ジョブリストJLの一例を示す図である。具体的には、図4に示すように、ジョブリストJLには、識別情報欄、ステータス情報欄、取得情報欄、条件情報欄、ページデータ欄、及びオフセット情報欄が設けられている。
識別情報欄には、印刷ジョブの識別情報が登録される。例えば、図4は、タブレット1から受信した印刷データPRD(図2)を印刷する印刷ジョブの識別情報J1が識別情報欄に登録された例を示している。
ステータス情報欄には、印刷ジョブの実行状況を示すステータス情報が登録される。例えば、図4は、印刷ジョブが印刷対象とする印刷データPRD(図2)を構成する一部のページデータの受信が完了していないことを示すステータス情報「未完了」がステータス情報欄に登録された例を示している。
取得情報欄には、タブレット1から受信した取得情報が登録される。例えば、図4は、タブレット1から受信した取得情報「http://www.aaa.com/html/a.html」が取得情報欄に登録された例を示している。
条件情報欄には、タブレット1から受信した条件情報が登録される。例えば、図4は、タブレット1から受信した条件情報C(図3)が条件情報欄に登録された例を示している。
ページデータ欄には、タブレット1から受信した各ページデータが受信順に登録される。例えば、図4は、タブレット1からページデータPD1の受信後、ページデータPD2を受信した場合に、当該二つのページデータPD1、PD2が受信順にページデータ欄に登録された例を示している。
オフセット情報欄には、タブレット1から受信した各オフセット情報が受信順に登録される。例えば、図4は、タブレット1からオフセット情報OF1の受信後、オフセット情報OF2を受信した場合に、当該二つのオフセット情報OF1、OF2が受信順にオフセット情報欄に登録された例を示している。
通信部28は、ネットワーク90を介してタブレット1との間で通信を行うときに用いられる通信インターフェイス回路である。操作表示部27は、タッチパネル機能を有する液晶ディスプレイ等のタッチ操作可能な表示部や、ユーザーに各種操作を行わせるための操作キーを備えている。
画像読取部26は、図略のCCD(Charge Coupled Device)ラインセンサーや露光ランプ等を有する図略の光学系ユニットを備えている。画像読取部26は、制御部20による制御の下、スキャン処理を実行する。スキャン処理とは、光学系ユニットに原稿の画像を読み取らせることにより、原稿の画像を表す画像データを生成する処理である。
画像形成部25は、感光体ドラム、帯電部、露光部、現像部、転写部、定着部、排出部等を備えた周知の構成を有する。画像形成部25は、制御部20による制御の下、印刷処理を実行する。印刷処理とは、画像読取部26が生成した画像データや、ネットワーク90を介してタブレット1から受信したページデータが表す画像を用紙に形成する(印刷する)処理である。
制御部20は、所定の演算処理を実行する不図示のCPUと、所定の制御プログラムが記憶されたEEPROM等の不図示の不揮発性メモリーと、データを一時的に記憶するための不図示のRAMと、これらの周辺回路等とを備えたマイクロコンピューターである。制御部20は、上記不揮発性メモリーに記憶された制御プログラムをCPUによって実行することによって、複合機2内の各部の動作を制御する。
制御部20は、タブレット1から受信した印刷データを印刷する印刷ジョブを実行する動作に関連し、特に、ジョブ実行部21、判定部22、ジョブ登録部23及びリスト送信部24として機能する。
ジョブ実行部21は、ジョブリストJLに登録されている識別情報が示す印刷ジョブを実行する。具体的には、ジョブ実行部21は、ジョブリストJLに登録されている識別情報と対応付けてページデータ欄に登録された各ページデータが表す画像を用紙に形成する印刷処理を画像形成部25に実行させる。
判定部22は、最終ページ情報EPを含むページデータの受信結果に基づいて、印刷データを構成する全てのページデータを受信できたか否かを判定する。判定部22の詳細については後述する。
ジョブ登録部23は、判定部22により全てのページデータが受信できていないと判定された場合、当該ページデータに対応する印刷データを印刷する印刷ジョブを未完了ジョブとしてジョブリストJLに登録する。ジョブ登録部23の詳細については後述する。
リスト送信部24は、タブレット1からジョブリストJLの送信指示を受信した場合、ジョブリストJLを当該タブレット1に返信する。リスト送信部24の詳細については後述する。
以下、タブレット1から印刷データPRDを複合機2へ送信し、当該印刷データPRDを印刷する印刷ジョブを複合機2に実行させる動作について説明する。当該説明において、判定部22、及びジョブ登録部23の詳細について説明する。図5は、タブレット1において印刷データを複合機2へ送信する動作を示すフローチャートである。図6は、複合機2において受信した印刷データを印刷する印刷ジョブを実行する動作を示すフローチャートである。
図5に示すように、タブレット1において、表示制御部11により操作表示部16に表示されたブラウザーに表示中の図2に示すHTMLデータHDが表す画像の印刷指示が入力されたとする(S1)。
この場合、データ生成部12は、上述のように、記憶部18に記憶されている条件情報Cを参照し、当該条件情報Cが示す整形条件(図3)に基づいて、HTMLデータHD(図2)を三個のページデータPD1〜PD3(図2)に分割し、当該三個のページデータPD1〜PD3により構成される印刷データPRD(図2)を生成する(S2)。
オフセット生成部13は、上述のように、ステップS2で生成された各ページデータPD1〜PD3のそれぞれに対応するオフセット情報OF1〜OF3(図2)を生成する(S3)。
送信部14は、HTMLデータHDを取得するために必要な取得情報「http://www.aaa.com/html/a.html」と、記憶部18に記憶されている条件情報Cと、を複合機2へ送信する(S4)。その後、送信部14は、ステップS2で生成されたページデータPD1〜PD3と、ステップS3で生成された当該ページデータPD1〜PD3に対応するオフセット情報OF1〜OF3と、をページ順に複合機2へ送信する(S5)。
一方、複合機2では、図6に示すように、通信部28が、タブレット1により送信された取得情報「http://www.aaa.com/html/a.html」及び条件情報Cを受信した場合(S21;YES)、ジョブ登録部23は、タブレット1から新たな印刷ジョブの実行指示が送信されたと判断する。
この場合、ジョブ登録部23は、図4に示すように、印刷ジョブの識別情報J1と当該受信した取得情報「http://www.aaa.com/html/a.html」と条件情報Cとを対応付けてジョブリストJLに登録する(S22)。
その後、通信部28がページデータとオフセット情報とを受信した場合(S23;YES)、ジョブ登録部23は、当該受信したページデータとオフセット情報とを、ステップS22で登録した識別情報J1及び条件情報Cと対応付けて、受信順にジョブリストに登録する(S24)。
例えば、ステップS23において通信部28がページデータPD1とオフセット情報OF1とを受信したとする。この場合、ジョブ登録部23は、ステップS24において、図4に示すように、当該受信されたページデータPD1とオフセット情報OF1とを、ステップS22で登録した識別情報J1及び条件情報Cと対応付けてジョブリストに登録する。
その後、次にステップS23において通信部28がページデータPD2とオフセット情報OF2とを受信した場合、ジョブ登録部23は、当該受信されたページデータPD2とオフセット情報OF2とを、ステップS22で登録した識別情報J1及び条件情報Cと対応付けて、先に登録したページデータPD1とオフセット情報OF1とが登録されている行の次の行に登録する。
そして、判定部22は、ステップS23において通信部28が受信したページデータに最終ページ情報EP(図2)が含まれているか否かを判定する(S25)。
例えば、ステップS23において、通信部28がページデータPD1とオフセット情報OF1とを受信した場合、及び、ページデータPD2とオフセット情報OF2とを受信した場合、ステップS25において、判定部22は、最終ページ情報EPが含まれていないと判定する(S25;NO)。一方、ステップS23において、通信部28がページデータPD3とオフセット情報OF3とを受信した場合、ステップS25において、判定部22は、最終ページ情報EPが含まれていると判定する(S25;YES)。
判定部22は、ステップS25において最終ページ情報EPが含まれていないと判定した場合(S25;NO)、及び、ステップS23において通信部28がページデータとオフセット情報とを受信していない場合(S23;NO)、通信部28が最後にページデータとオフセット情報とを受信してから所定時間経過したか否かを判定する(S28)。
ステップS28において、判定部22は、通信部28が最後にページデータとオフセット情報とを受信してから所定時間経過したと判定したとする(S28;YES)。この場合、最終ページ情報EPを含むページデータを受信できないまま所定時間が経過しているので、判定部22は、ページデータの送信が中断され、全てのページデータが受信できていないと判定する。
このようにして、判定部22により全てのページデータが受信できていないと判定された場合(S28;YES)、ジョブ実行部21は、通信部28が既に受信したページデータを印刷する(S29)。
具体的には、既に受信したページデータは、ステップS24において、ステップS22で登録された識別情報J1及び条件情報Cと対応付けてジョブリストJLに登録されている。ステップS29において、ジョブ実行部21は、ステップS22で登録された識別情報J1と対応付けてジョブリストJLに登録されている各ページデータを取得する。そして、ジョブ実行部21は、当該取得した各ページデータが表す画像を用紙に形成する印刷処理を画像形成部25に実行させる。
また、判定部22により全てのページデータが受信できていないと判定された場合(S28;YES)、ジョブ登録部23は、ステップS29の実行後、ステップS22で登録された識別情報J1が示す印刷ジョブを未完了ジョブとしてジョブリストJLに登録する(S30)。
具体的には、ステップS30において、ジョブ登録部23は、図4に示すように、ステップS22で登録された識別情報J1と対応付けて、印刷ジョブが印刷対象とする印刷データPRD(図2)を構成する一部のページデータの受信が完了していないことを示すステータス情報「未完了」をジョブリストJLに登録する。
ステップS25において最終ページ情報EPが含まれていると判定された場合(S25;YES)、ジョブ実行部21は、全てのページデータを印刷する(S26)。
具体的には、ステップS25において最終ページ情報EPが含まれていると判定された場合(S25;YES)、ステップS22で登録された識別情報J1が示す印刷ジョブが印刷対象とする印刷データPRDを構成する全てのページデータは、識別情報J1と対応付けてジョブリストJLに登録されている。ステップS26において、ジョブ実行部21は、ステップS22で登録された識別情報J1と対応付けてジョブリストJLに登録されている全てのページデータを取得する。そして、ジョブ実行部21は、当該取得した全てのページデータが表す画像を用紙に形成する印刷処理を画像形成部25に実行させる。
ステップS26の実行後は、ジョブ登録部23は、ステップS22で登録された識別情報J1が示す印刷ジョブを、印刷が完了した終了ジョブとしてジョブリストJLに登録する(S27)。
具体的には、ステップS27において、ジョブ登録部23は、ステップS22で登録された識別情報と対応付けて、印刷ジョブが印刷対象とする印刷データを構成する全てのページデータの印刷が終了したことを示すステータス情報「終了」をジョブリストJLに登録する。
例えば、識別情報J2(図4)が示す印刷ジョブが印刷対象とする全てのページデータPD21、PD22が受信されたとする。そして、ステップS26において、当該全てのページデータPD21、PD22が印刷されたとする。この場合、ステップS27において、ジョブ登録部23は、図4に示すように、識別情報J2と対応付けてステータス情報「終了」をジョブリストJLに登録する。
続いて、未完了ジョブとしてジョブリストJLに登録された印刷ジョブの実行を再開する動作について説明する。当該説明において、リスト送信部24の詳細について説明する。図7は、未完了ジョブとしてジョブリストJLに登録された印刷ジョブの実行を再開する動作を示すフローチャートである。
図7に示すように、タブレット1において、送信要求部15は、所定の時期に、通信部17を制御して、複合機2が後述の記憶部29に記憶しているジョブリストJLの送信指示を複合機2へ送信する(S31)。
一方、複合機2では、通信部28がタブレット1からジョブリストJLの送信指示を受信した場合(S41;YES)、リスト送信部24は、ジョブリストJLを当該送信指示を送信したタブレット1に返信する(S42)。
タブレット1において、送信要求部15によるジョブリストJLの送信指示の送信後、通信部17がジョブリストJLを受信したとする(S32;YES)。以下では、ステップS32において図4に示すジョブリストJLを受信したものとして説明する。
この場合、データ生成部12は、ステップS32で受信したジョブリストJLに登録されている未完了ジョブの識別情報J1に対応する取得情報「http://www.aaa.com/html/a.html」を参照する。そして、データ生成部12は、当該取得情報に基づいて当該未完了ジョブが印刷対象とする印刷データの生成に用いた原データと同じHTMLデータHD(図2)を取得する(S33)。
そして、データ生成部12は、ステップS32で受信したジョブリストJLに登録されている未完了ジョブの識別情報J1に対応するオフセット情報OF1、OF2のうち、オフセット情報欄の最終行に登録されているオフセット情報OF2を最後に受信されたオフセット情報として参照する。また、データ生成部12は、当該ジョブリストJLに登録されている未完了ジョブの識別情報J1に対応する条件情報Cを参照する。そして、データ生成部12は、ステップS33で取得したHTMLデータHDのうち、先頭位置HP1から当該オフセット情報OF2が示すデータ長D2離れた位置HP2以降のデータを、ステップS2と同様の方法で、当該条件情報Cが示す整形条件(図3)に基づいて分割し、ページデータPD2、PD3を生成する(S34)。
つまり、ステップS34において、データ生成部12は、条件情報Cが示す図3に示す整形条件と同じ整形条件に基づいて、位置HP2以降のデータに含まれるHTMLタグ<表>以降の各HTMLタグが示す描画要素が、一ページ分の仮想表示領域に描画可能かを判定する処理と、ページデータを生成する処理と、を繰り返す。その結果、データ生成部12は、図2に示すページデータPD2、PD3と同じページデータPD2、PD3を生成する。
次に、オフセット生成部13は、ステップS3(図5)と同様に、ステップS33で取得されたHTMLデータHDを用いて、ステップS34で生成された各ページデータPD2、PD3のそれぞれに対応するオフセット情報OF2、OF3を生成する(S35)。
そして、送信部14は、ステップS32で受信したジョブリストJLに登録されている未完了ジョブの識別情報J1を複合機2へ送信する(S36)。その後、送信部14は、ステップS5(図5)と同様に、ステップS34で生成されたページデータPD2、PD3と、ステップS34で生成された当該ページデータPD2、PD3に対応するオフセット情報OF2、OF3と、をページ順に複合機2へ送信する(S37)。
一方、複合機2では、図6に示すように、通信部28がタブレット1により送信された識別情報J1を受信すると(S21;NO、S51;YES)、ジョブ登録部23は、タブレット1により、識別情報J1が示す未完了ジョブの実行指示が送信されたと判断する。この場合、ステップS22は行われず、ステップS23以降の処理が行われる。
つまり、判定部22により全てのページデータが受信できていないと判定された後であっても(S28;YES)、ステップS37で送信されたページデータPD2(PD3)とオフセット情報OF2(OF3)とを通信部28が受信した場合には(S23;YES)、当該受信されたページデータPD2(PD3)とオフセット情報OF2(OF3)とが、未完了ジョブの識別情報J1と対応付けてジョブリストJLに登録される(S24)。これにより、その後のステップS26又はステップS29において、ジョブ実行部21は、当該ページデータPD2(PD3)が表す画像を用紙に形成する印刷処理を画像形成部25に実行させる。
このように、上記実施形態の構成によれば、ジョブリストJLに未完了ジョブとして登録されている印刷ジョブが全てのページデータを受信できていない印刷ジョブであることを把握することができる。
また、タブレット1において、ジョブリストJLの送信指示を送信することにより、複合機2からジョブリストJLを取得することができる。ジョブリストJLには、最後に受信したオフセット情報が登録されている。このため、データ生成部12は、ジョブリストJLに登録されている未完了ジョブ及びこれに対応する最後に受信されたオフセット情報を参照し、当該未完了ジョブが印刷対象とする印刷データの生成に用いた原データを、先頭位置から当該オフセット情報が示すデータ長離れた位置から分割することができる。
これにより、原データを先頭位置から分割して印刷データを構成する全てのページデータを生成する手間をかけずに、複合機2が最後に受信したページデータ以降のページデータのみを効率よく生成することができる。その結果、複合機2が最後に受信したページデータ以降のページデータのみを送信し、中断された印刷ジョブを迅速に再開することができる。
また、各タブレット1a、1bはジョブリストJLの送信指示を送信することにより、複合機2に記憶されている同じジョブリストJLを取得することができる。そして、各タブレット1のデータ生成部12は、取得したジョブリストJLに登録されている未完了ジョブ及びこれに対応する取得情報を参照し、当該未完了ジョブが印刷対象とする印刷データの生成に用いた原データと同じデータを取得することができる。これにより、未完了ジョブが他のタブレット1から送信された印刷データを印刷するものであったとしても、当該印刷データの生成に用いられた原データと同じデータを取得することができる。
また、各タブレット1a、1bのデータ生成部12は、取得したジョブリストJLに登録されている未完了ジョブに対応するオフセット情報及び条件情報を参照することができる。これにより、未完了ジョブが他のタブレット1から送信された印刷データを印刷するものであったとしても、当該印刷データの生成に用いられた整形条件と同じ整形条件に基づき、原データと同じデータのうち先頭位置から当該オフセット情報が示すデータ長離れた位置以降のデータを分割して、複合機2が最後に受信したページデータ以降のページデータを効率よく生成することができる。
また、印刷データを構成する全てのページデータが受信できていない場合であっても、既に受信したページデータを印刷することができる。これにより、その後、受信できていなかったページデータを受信したときに当該受信できていなかったページデータのみの印刷を行うことで、全てのページデータの印刷を効率良く行うことができる。
また、最後にページデータを受信してから所定時間経過するまでの間に、最終ページ情報を含むページデータを受信しなかった場合に、既に受信したページデータが印刷される。これにより、当該既に受信したページデータを含む印刷データを印刷する印刷ジョブの一部が実行される。そして、当該印刷ジョブの一部が実行された後も、更にページデータが受信された場合、当該受信したページデータが印刷される。このように、上記実施形態の構成によれば、全てのページデータが受信できていない印刷ジョブをエラーが発生したジョブとして破棄することなく、再開可能な印刷ジョブとして管理することができる。
尚、上記実施形態は、本発明に係る実施形態の例示に過ぎず、本発明を上記実施形態に限定する趣旨ではない。例えば、以下に示す、変形実施形態であってもよい。
(1)ステップS36において、送信部14が、未完了ジョブの識別情報J1を複合機2へ送信することに代えて、ジョブリストJLに登録されている未完了ジョブの識別情報J1に対応付けられた取得情報と条件情報とを送信するようにしてもよい。これにより、ステップS51で未完了ジョブの識別情報が受信されず、ステップS21で当該送信した取得情報と条件情報とが受信されるようにしてもよい。
つまり、ジョブ実行部21が、判定部22により全てのページデータが受信できていないと判定された後に受信したページデータを、未完了ジョブを再開した印刷ジョブとしてではなく、新たな印刷ジョブとして実行するようにしてもよい。
(2)ステップS29(図6)を省略してもよい。これにより、ジョブ実行部21が、判定部22により全てのページデータが受信できていないと判定された場合に、既に受信したページデータを印刷しないようにしてもよい。
(3)ステップS4(図5)において、送信部14が、取得情報と条件情報に代えて、ステップS2で生成した印刷データPRDを印刷する印刷ジョブの識別情報を送信するようにしてもよい。これにより、ステップS51において、当該ステップS4で送信した印刷ジョブの識別情報が受信されるようにしてもよい。更に、当該ステップS4において、送信部14が当該印刷ジョブの識別情報と、印刷データPRDの生成に用いた原データであるHTMLデータHDと、印刷データPRDの生成に用いた条件情報Cと、を対応付けて記憶部18に記憶するようにしてもよい。
これに合わせて、ジョブリストJLに、取得情報欄と条件情報欄とを設けないようにし、ステップS22を省略してもよい。そして、通信部28がステップS23において最初にページデータとオフセット情報とを受信した場合に行うステップS24において、当該ステップS51で受信された印刷ジョブの識別情報と、当該最初に受信したページデータとオフセット情報と、を対応付けてジョブリストJLに登録するようにしてもよい。
そして、データ生成部12は、ジョブリストJLに登録されている未完了ジョブの識別情報J1と同じ識別情報が記憶部18に記憶されている場合は、ステップS33に代えて、当該識別情報J1と対応付けて記憶部18に記憶されているHTMLデータHDを取得するようにしてもよい。同様に、ステップS34では、当該識別情報J1と対応付けて記憶部18に記憶されている条件情報Cを参照するようにしてもよい。
つまり、タブレット1aが送信した印刷データを印刷する印刷ジョブが未完了ジョブとしてジョブリストJLに登録されているとする。この場合に、タブレット1bでは当該未完了ジョブが印刷対象とするページデータを生成できないが、タブレット1aでのみ、記憶部18に記憶されているHTMLデータHD及び条件情報C及びジョブリストJLに登録されているオフセット情報を用いて、当該未完了ジョブが印刷対象とするページデータを生成できるようにしてもよい。
(4)ステップS24(図6)において、ジョブ登録部23は、ステップS23において受信されたオフセット情報を、ステップS22で登録した識別情報J1及び条件情報Cと対応付けてジョブリストJLに登録する前に、既に識別情報J1及び条件情報Cと対応付けて登録されているオフセット情報を削除するようにしてもよい。これにより、ジョブ登録部23が、最後に受信されたオフセット情報のみをジョブリストJLに登録するようにしてもよい。