説明

画像形成装置、データ送信装置およびMIMEデータ生成プログラム

【課題】画像データを含むMIMEデータを画像形成装置でより効率的に印刷する。
【解決手段】画像形成装置200においては、MIMEデコード部212によるXhtmlデータ部のMIMEデコードが完了すると、引き続き受信される画像データ部のMIMEデータを受信しているときに、Xhtml解析部213が解析を行い、レイアウト部214が、解析結果に基づき印刷レイアウトを決定する。その後、印刷レイアウトの決定により開始する印刷処理中に、MIMEデコード部212が、引き続き受信される画像データ部のチャンクのMIMEデコードを行いながら、画像デコード部218が、チャンクごとに画像データの画像デコードを行い、レンダリング部219は、画像デコード部218によりデコードされた画像データ等から、次に印刷される印刷レイアウト内領域のレンダリングを行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像データを含んだMIME(Multipurpose Internet Mail Extension)フォーマットの印刷用コンテンツデータを画像形成装置で効率的に印刷する技術に関する。
【背景技術】
【0002】
特許文献1には、プリンタの仕様に応じて、印刷すべき画像データおよびその格納ファイル名のいずれかを含むファイルをプリンタに送信する近距離無線通信端末が記載されている。具体的には、画像データの印刷をMIME未対応のプリンタに依頼する場合には、画像データの格納ファイル名を埋め込んだXhtml形式のファイルを送信し、画像データの印刷をMIME対応のプリンタに依頼する場合には、MIMEエンコードした画像データを埋め込んだXhtml形式のファイルを送信する。そして、MIME未対応のプリンタは、Xhtml形式のファイル内で指定されたファイル名の画像データファイルを近距離無線通信端末から取り込み、それを印刷するいわゆるPull型の印刷処理を行い、MIME対応のプリンタは、Xhtml形式のファイルに埋め込まれた画像データをMIMEデコードし、それを印刷する、いわゆるPush型の印刷処理が行われる。
【0003】
これにより、近距離無線通信端末は、MIME未対応のプリンタおよびMIME対応のプリンタのいずれからでも画像データを印刷することができる。
【特許文献1】特開2006−4413号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
ところが、MIME対応のプリンタは、通常、Xhtml形式のファイルの受信が完了してから、Xhtml解析、画像データのデコード等の印刷前処理を開始するため、Xhtml形式のファイルの転送開始から印刷開始までに、無線通信の転送速度に応じた時間を要する。このため、例えば、赤外線通信、Bluetooth等を利用した、無線通信の転送速度が印刷速度を下回るような低速印刷環境においては、印刷完了までのユーザの待ち時間が長引くことがある。
【0005】
そこで、本発明は、画像データを含んだMIMEデータを画像形成装置でより効率的に印刷することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一つの実施態様に従う、転送されたMIME(Multipurpose Internet Mail Extension)データに基づいて印刷処理を実行する画像形成装置は、レイアウト文書および前記レイアウト文書に関連付けられた画像データをMIMEエンコードして生成されたMIMEデータを受信する受信手段と、前記受信手段が受け付けたMIMEデータをMIMEデコードするデコード手段と、前記デコード手段によりMIMEデコードされたレイアウト文書に基づいて印刷レイアウトを決定するレイアウト解析手段と、前記レイアウト解析手段により決定された印刷レイアウト及び前記デコード手段によりMIMEデコードされた画像データに基づいて、ラスタデータを生成するレンダリング手段と、前記レンダリング手段によって生成されたラスタデータに基づいて印刷を実行する印刷手段と、を備え、前記受信手段がMIMEデータを受信しているときに、前記デコード手段が受信済みMIMEデータをMIMEデコードし、前記レイアウト文書のMIMEデコードが完了すると、前記受信手段が前記画像データに対応するMIMEデータの受信を継続しているときに、前記レイアウト解析手段が前記MIMEデコードされたレイアウト文書に基づいて前記印刷レイアウトを決定する処理を開始する。
【0007】
これにより、レイアウト文書の受信/MIMEデコードが完了すると、それに続くデータのMIMEデコード前に印刷レイアウトを確定することができる。このため、すみやかに給紙動作を開始することができる。また、画像データのエンティティデータを逐次受信/MIMEデコードしながら、画像処理(画像デコード、レンダリング)と印刷処理とを並列実行することができる。このため、印刷用コンテンツデータの転送速度が画像形成装置の印刷速度を下回るような低速印刷環境であっても、画像データを含むMIMEデータをより効率的に印刷することができ、印刷完了までの待ち時間を短縮することができる。
【0008】
好適な実施形態では、前記MIMEデータは、複数のチャンクから構成されていて、前記デコード手段が、前記レイアウト文書を格納したチャンク、及び前記画像データのヘッダ情報を格納したチャンクのMIMEデコードを行って、前記MIMEデコードされたレイアウト文書を生成すると、前記受信手段が前記画像データのエンティティデータのチャンクの受信を継続しているときに、前記レイアウト解析手段が前記MIMEデコードされたレイアウト文書に基づいて前記印刷レイアウトを決定する処理を開始するようにしてもよい。
【0009】
これにより、レイアウト文書チャンクと画像チャンクの受信/MIMEデコードが完了すると、画像データのエンティティデータのチャンクの受信/MIMEデコードと、レイアウト文書の解析とを並列処理することができ、画像データを含むMIMEデータをより効率的に印刷することができる。
【0010】
好適な実施形態では、前記画像データが、所定の圧縮処理が施された圧縮データであるときに、キャッシュメモリを用いて前記圧縮データを展開する展開手段をさらに備え、前記チャンクサイズは、前記キャッシュメモリのサイズに応じたサイズであってもよい。
【0011】
デコード手段以降は、受信手段が受信したデータをチャンク単位で処理することができるので、これにより、展開手段がチャンク単位にデータを読み込んで処理すると、チャンクサイズがキャッシュメモリサイズと対応しているので、処理が効率的になる。
【0012】
好適な実施形態では、前記レイアウト文書は、Xhtml文書であり、前記レイアウト解析手段は、前記Xhtml文書の解析を行い、その解析結果に従って印刷レイアウトを決定するようにしてもよい。
【0013】
本発明の一つの実施態様に従う、MIME(Multipurpose Internet Mail Extension)データを画像形成装置に送信するデータ送信装置は、レイアウト文書および前記レイアウト文書に関連付けられた画像データが入力される入力手段と、前記レイアウト文書及び前記画像データをMIMEエンコードしてMIMEデータを生成するMIMEデータ生成手段と、前記MIMEデータを前記画像形成装置に送信する通信手段と、を備え、前記MIME生成手段は、前記画像データのエンティティデータを、前記画像形成装置において画像データの読み出しに用いられる読み出しキャッシュメモリのサイズに応じたサイズのチャンクに分割して、前記MIMEデータを生成する。
【0014】
これにより、画像データのエンティティデータに対応するMIMEデータが、画像形成装置において画像データの読み出しに用いられる読み出しキャッシュのサイズに応じたサイズのチャンクに分割される。このため、画像形成装置において、MIMEデータのチャンク受信に連動して効率的に画像データを画像処理(画像デコード)することができる。
【0015】
好適な実施形態では、前記MIME生成手段は、前記画像形成装置への前記MIMEデータの送信前に、前記通信手段を介して、前記画像形成装置から前記読み出しキャッシュメモリのサイズを取得するようにしてもよい。
【発明を実施するための最良の形態】
【0016】
以下、添付図面を参照しながら、本発明に係る一実施形態について説明する。
【0017】
まず、本実施形態に係る印刷制御システムの説明に先立ち、この印刷制御システムにおいて送受信される印刷用コンテンツデータのフォーマットを説明する。
【0018】
本実施の形態に係る印刷用コンテンツデータは、RFC3391で規定しているapplication/vnd.pwg−multiplexed方式のMIME(Multipurpose Internet Mail Extension)データである。
【0019】
具体的には、図4(A)および図4(B)に示すように、印刷用コンテンツデータ(MIMEデータ)は、Xhtml−print文書であることを示すMIMEヘッダ310と、テキストオブジェクト301及び画像オブジェクト302等のオブジェクトが配置されたコンテンツ300の文書構造がXhtmlで記述されたXhtmlドキュメント320と画像オブジェクト302の画像データ330とが連結されたMIMEエンティティデータ340と、を含んでいる。
【0020】
ここで、MIMEエンティティデータ340には、Xhtmlドキュメント320の記述に相当するXhtmlデータ部320Aと、このXhtmlデータ部320Aに続く、各画像データ330のエンティティデータに相当する画像データ部330Aと、が含まれている。
【0021】
Xhtmlデータ部320A内の画像データファイル指定位置(imgタグに続く位置)には、対応する画像データ330の画像ヘッダ情報を含む画像ヘッダチャンク322が挿入されている。
【0022】
そして、画像ヘッダチャンク322にはチャンクヘッダ(キーワード「CHK」、画像データ330に割り当てられたメッセージ番号、チャンクのデータサイズ、画像データ330の最後のチャンクであるか否かを示すインジケータ(継続チャンクがあればMORE、最後のチャンクであればLAST))が付加されている。同様に、他のチャンク321にもチャンクヘッダ(キーワード「CHK」、Xhtmlドキュメント320に割り当てられたメッセージ番号、チャンクのデータサイズ、Xhtmlドキュメント320の最後のチャンクであるか否かを示すインジケータ(継続チャンクがあればMORE、最後のチャンクであればLAST))が付加されている。
【0023】
一方、画像データ部330Aは、画像のエンティティデータを含む所定のサイズの画像エンティティチャンク331に分割され、各画像エンティティチャンク331にはチャンクヘッダ(キーワード「CHK」、画像データ330に割り当てられたメッセージ番号、チャンクのデータサイズ、画像データ330の最後のチャンクであるか否かを示すインジケータ(継続するチャンクがあればMORE、最後のチャンクであればLAST))が付加されている。なお、本実施の形態においては、画像データ部330Aに含まれる画像エンティティチャンク331のサイズは、画像形成装置の読み出しキャッシュのサイズに応じて定められている。
【0024】
つぎに、このようなフォーマットの印刷用コンテンツデータを送受信する、本実施形態に係る印刷制御システムの構成について説明する。
【0025】
図1は、本実施形態に係る印刷制御システムの概略構成図である。
【0026】
本実施形態に係る印刷制御システムは、通信圏内の無線通信端末(例えば、携帯電話、PHS、PDA等のデータ送信装置)100から近距離無線通信(例えば、赤外線通信、Bluetooth(登録商標)等)により転送された印刷用コンテンツデータが表す画像を印刷する画像形成装置200を有している。
【0027】
この画像形成装置200は、近距離無線通信によって無線通信端末100等の外部無線通信デバイスとの間でデータを送受信する無線通信インタフェース(IF)202、ユーザの操作を受け付けるとともにユーザに提示すべき各種画面を表示するタッチパネル2031等のユーザインタフェース部203、無線通信端末100からの印刷用コンテンツデータが表す画像を印刷媒体に記録するプリントエンジン部204、画像形成装置200全体を制御する制御部201、これら各部を相互に接続するバス、等を有している。
【0028】
ここで、制御部201には、後述の印刷制御処理が定義された印刷制御プログラム及び無線通信制御プログラム等が格納されたROM2013、RAM2012、ROM2013からRAM2012にロードしたプログラムを実行するCPU2011、CSS(cascading style sheets)にしたがって記述されたテンプレートデータ等の各種情報が格納される補助記憶装置2014、が含まれている。なお、プリントエンジン部204は、インクジェット方式、インク昇華方式、乾式電子写真方式等、どのような印字方式の機構(例えば、インクジェット方式であれば、記録ヘッド、コントローラ、インクタンク等)を有していてもよい。
【0029】
このようなハードウエア構成において、CPU2011が印刷制御プログラム及び無線通信制御プログラム等が実行することにより、図2に示す機能構成が画像形成装置200上に実現する。具体的には、画像形成装置200は、無線通信端末100から印刷用コンテンツデータを受信するデータ通信部211、印刷用コンテンツデータをMIMEデコードするMIMEデコード部212、MIMEデコード部212により生成されたMIMEデコード済みXhtmlデータ部320Aの構文解析を実行するXhtml解析部213、印刷媒体のサイズに対応する印刷レイアウトをXhtml解析部213の解析結果に基づき決定するレイアウト部214、MIMEデコード部212により生成されたMIMEデコード済み画像データ部330Aが格納されるRAM2012上のMIMEデコード済み画像バッファ215、RAM2012上の読み出しキャッシュメモリ(以下、読み出しキャッシュという)216、RAM2012上の展開用画像バッファ217、MIMEデコード済み画像バッファ215から画像オブジェクト302の画像データを読み出しキャッシュ216に逐次読み出しながらこの画像データを展開用画像バッファ217上に展開する画像デコード部218、印刷レイアウトに基づき画像オブジェクト302の画像データ及びテキストオブジェクト301のテキストデータ等を描画することにより生成したラスタデータをプリントエンジン部204に出力するレンダリング部219、を実現する。
【0030】
一方、無線通信端末100は、近距離無線通信によって画像形成装置200等の外部無線通信デバイスとの間でデータを送受信する無線通信インタフェース(IF)105、ユーザの操作を受け付ける各種キーを含む操作部106、コンテンツ300等の各種情報を表示するディスプレイ等の表示部107、コンテンツ300の文書構造が記述されたXhtmlドキュメント320から印刷用コンテンツデータを生成するアプリケーションプログラムおよび通信制御プログラム等の各種プログラムが格納されたROM103、RAM102、ROM103からRAM102にロードしたプログラムを実行するCPU101、Xhtmlドキュメント320およびこのXhtmlドキュメント320において指定されたオブジェクトデータファイル(画像オブジェクト302の画像データファイル等)等が格納される補助記憶装置104、インターネット等を介してデータを送受信する通信インタフェース(不図示)、これらを相互に接続するバス、等を有している。
【0031】
このようなハードウエア構成において、CPU101がアプリケーションプログラムおよび通信制御プログラム等が実行することによって、無線通信端末100上に、図3に示す機能構成が実現する。
【0032】
具体的には、無線通信端末100は、Xhtmlドキュメント320とそのなかで指定されたオブジェクトデータファイル等が入力されるコンテンツ入力部111、Xhtmlドキュメント320およびオブジェクトデータファイル等とから印刷用コンテンツデータをユーザの指示等に応じて生成する印刷用コンテンツデータ生成部112、印刷用コンテンツデータを画像形成装置200に送信するデータ通信部113、を実現する。
【0033】
つぎに、無線通信端末100において実行される印刷用コンテンツデータ生成処理について説明する。ここでは、印刷対象の一例として、コンテンツ入力部111によりダウンロードされて補助記憶装置104に格納されているXhtmlドキュメント320が表すコンテンツ300を挙げる。
【0034】
図5は、本実施の形態に係る印刷用コンテンツデータ生成処理のフローチャートである。
【0035】
例えば、ユーザが、表示部107上のコンテンツ300の印刷指示を操作部106に入力すると(S300)、コンテンツデータ生成部112は、データ通信部113を介して、印刷指示で指定された画像形成装置200に対する接続要求を行い、この画像形成装置200の読み出しキャッシュ216のサイズを問い合わせる(S301)。
【0036】
この問い合わせに対する応答をデータ通信部113が受け付けると(S302)、コンテンツデータ生成部112は、コンテンツ300の文書構造を表すXhtmlドキュメント320およびこのXhtmlドキュメント320で指定されたオブジェクトデータファイル等を補助記憶装置104から読み出し、MIMEのフォーマットにしたがって、それらのデータをまとめてMIMEエンコードおよびストリーム化する。これにより印刷用コンテンツデータを生成する(S303)。これにより、Xhtmlデータ部320Aは、画像ヘッダチャンク322前後の位置でチャンク321に分割され、画像データ部330Bは、画像形成装置200の読み出しキャッシュ216のサイズに相当するサイズの一連の画像エンティティチャンク331に分割される。
【0037】
その後、コンテンツデータ生成部112は、データ通信部113を介して、このようにして生成した印刷用コンテンツデータを含む印刷要求を、印刷指示で指定された画像形成装置200に送信する(S304)。
【0038】
このような印刷用コンテンツデータ生成処理によれば、画像形成装置200の画像デコード部218が画像データの読み出しに用いるキャッシュのサイズにあわせて画像データ部330Bの画像エンティティチャンク331のサイズが決定されるため、画像形成装置200の画像デコード部218が、画像データ部330Bの画像エンティティチャンク331の受信に連動して効率的に画像データを展開(画像デコード)することができる。
【0039】
なお、ステップS301及びS302の処理は、省略しても良い。この場合、画像形成装置200に対して、キャッシュのサイズは問い合わせを行わず、無線通信端末100が予めキャッシュサイズを保持するようにしても良い。
【0040】
つぎに、画像形成装置200において実行される印刷制御処理について説明する。
【0041】
本実施の形態に係る印刷制御処理には、(1)印刷用コンテンツデータの受信/MIMEデコード処理、(2)Xhtml解析/レイアウト処理、(3)レンダリング処理、(4)画像デコード処理が含まれる。以下、それぞれの処理について説明する。
【0042】
(1)コンテンツデータ受信/MIMEデコード処理
図6は、印刷用コンテンツデータ受信/MIMEデコード処理のフローチャートである。
【0043】
データ通信部211が、無線通信端末100から印刷用コンテンツデータを受信する(S401)。受信データは、例えば、図示しない受信バッファに記憶される。データ通信部211は、印刷用コンテンツデータの受信が完了したか否かを判定する(S402)。
【0044】
その結果、印刷用コンテンツデータの受信が完了すると(S402:YES)、データ通信部211は受信処理を終了する。
【0045】
一方、印刷用コンテンツデータを継続的に受信しているとき(S402:NO)、MIMEデコード部212は、受信バッファに格納されている新規チャンク(処理対象チャンク)をMIMEデコードする(S403)。なお、厳密には、印刷用コンテンツデータの受信が完了しても、MIMEデコード部212は、受信バッファに格納されている受信データの処理を行う。
【0046】
MIMEデコード部212は、デコードされたデータが画像データ(画像ヘッダチャンク321または画像エンティティチャンク331)であるか否かを判断する(S404)。例えば、処理対象チャンクのチャンクヘッダ内の“Content−Type”が“image/***”(ここで、“***”は、例えば“jpeg”、“png”等、画像の形式を示す)であるか否か等によって判断する。
【0047】
ここで、処理対象チャンクより生成されたデータが画像データである場合には(S404:YES)、MIMEデコード部212は、そのデータをMIMEデコード済み画像バッファ215に格納する(S405)。そして、つぎに受信された新規チャンクを処理対象チャンクとして設定して同様な処理を実行する(S401にリターン)。
【0048】
処理対象チャンクより生成されたデータが画像データでない場合(Xhtmlドキュメント320の記述である場合)には(S404:NO)、MIMEデコード済みXhtmlデータ部320AをXhtml解析部213に渡す。これにより、Xhtml解析部213は、レイアウト部214と連携して次述のXhtml解析/レイアウト処理を実行する(S407)。
【0049】
このような印刷用コンテンツデータ受信/MIMEデコード処理によれば、Xhtmlデータ部320AのMIMEデコードが行われ、それが完了すると、引き続き受信する画像データ部330AのMIMEデコード前に次述のXhtml解析/レイアウト処理を開始することができる。
【0050】
(2)Xhtml解析/レイアウト処理
図7は、図6のS407で実行されるXhtml解析/レイアウト処理のフローチャートである。
【0051】
Xhtml解析部213は、MIMEデコード部212からMIMEデコード済みXhtmlデータ部320Aを渡されると、MIMEデコード済みXhtmlデータ部320Aの構文解析を実行する(S411)。ここで、構文解析によりimgタグを検知すると(S412)、画像デコード部218に対して、対応する画像ヘッダチャンク322に基づく画像オブジェクト302のサイズおよび解像度等を問い合わせ、それらの情報を取得する(S413)。
【0052】
このようにして印刷オブジェクトの配置に必要な情報(レイアウト作成用情報)のすべてを取得すると(S414:YES)、レイアウト部214は、それらの情報に基づき、指定サイズの印刷媒体に対する各印刷オブジェクトの位置およびサイズ等を決定し、それらの情報(印刷レイアウト)をレンダリング部219に渡す。これにより、レンダリング部219が次述のレンダリング処理(3)を開始する(S415)。
【0053】
このようなXhtml解析/レイアウト処理によれば、Xhtmlデータ部320AのMIMEデコードが完了すると、すみやかに印刷レイアウトを決定することができる。
【0054】
(3)レンダリング処理
図8は、図7のS415で開始されるレンダリング処理のフローチャートである。
【0055】
レンダリング部219は、レイアウト部214から印刷レイアウトを渡されると、メモリ領域に応じてブロック領域のサイズを定め、1ページ分の領域を複数のブロック領域に分割する(S511)。その後、レンダリング部219は、以下に示すように、例えば印刷方向に順次ブロック領域をレンダリング対象ブロック領域として設定し、そのレンダリング対象ブロック領域のレンダリングを実行する。
【0056】
まず、レンダリング部219は、すべてのブロック領域のレンダリングが完了したか否を判断し(S512)、すべてのブロック領域のレンダリングが完了していれば(S512:YES)、レンダリング処理を終了する。
【0057】
一方、未レンダリングブロック領域が残っていれば(S512:NO)、レンダリング部219は、つぎの未レンダリングのブロック領域を新たなレンダリング対象ブロック領域として設定し、このレンダリング対象ブロック領域にいずれかの画像オブジェクト302が配置されているか否かを、印刷レイアウトに基づき判断する(S513)。
【0058】
その結果、レンダリング対象ブロック領域にいずれの画像オブジェクト302も配置されていなければ(S513:NO)、レンダリング部219は、印刷レイアウトに基づきレンダリング対象ブロック領域をレンダリングする(S515)。そして、これにより得られたラスタデータを、つぎに印刷するブロック領域のデータを要求するプリントエンジン部204に出力して、印刷する(S516)。
【0059】
一方、レンダリング対象ブロック領域にいずれかの画像オブジェクト302が配置されていれば(S513:YES)、レンダリング部219は、レンダリング対象ブロック領域内に含まれる画像部分(画像オブジェクト302の少なくとも一部分)に相当する画像データを画像デコード部218に要求する。このとき、レンダリング部219は、例えば、画像オブジェクト302内における画像部分の位置等を指定する。これに応じて画像デコード部218が次述の画像デコード処理(4)を実行し、レンダリング部219は、レンダリング対象ブロック領域内の画像部分に相当する画像データを取得する(S514)。
【0060】
その後、レンダリング部219は、印刷レイアウトにより定まる領域に、その画像データが表す画像部分を配置してから、レンダリング対象ブロック領域をレンダリングする(S515)。そして、これにより得られたラスタデータを、つぎに印刷するブロック領域のデータを要求するプリントエンジン部204に出力して、印刷する(S516)。
【0061】
このようなレンダリング処理によれば、ブロック領域内の画像部分に対応するチャンクが受信済み/MIMEデコード済みであれば、ただちにブロック領域をレンダリングし、つぎに印刷されるラスタデータを出力し、それに続くブロック領域内の画像部分に対応するチャンクが未受信であれば、そのチャンクの受信/MIMEデコード完了を待ってからブロック領域をレンダリングして、つぎに印刷するラスタデータを出力する。このため、画像データ部330Aのチャンクの受信/MIMEデコードと同期してプリントエンジン部204における印刷を実行することができる。また、つぎに印刷するブロック領域のラスタデータを、その前のブロック領域の印刷中に生成することができる。
【0062】
(4)画像デコード処理
図9は、図8のS514で実行される画像デコード処理のフローチャートである。
【0063】
画像デコード部218は、レンダリング部219からの要求に応じて、レンダリング対象ブロック領域内の画像部分に相当する画像データ(要求データ)が展開用画像バッファ217に格納されているか否かをチェックする(S5141)。
【0064】
その結果、展開用画像バッファ217に要求データが格納済みであれば(S5141:YES)、画像デコード部218は、展開用画像バッファ217から要求データを読み出し、それをレンダリング部219に渡す(S5142)。
【0065】
一方、展開用画像バッファ217に要求データが未格納であれば(S5141:NO)、以下に示す処理によって展開用画像バッファ217に要求データを格納してから(S5144)、その要求データを、展開用画像バッファ217から読み出してレンダリング部219に渡す(S5142)。
【0066】
まず、画像デコード部218は、要求データに対応するチャンクのMIMEデコード済み画像データが読み出しキャッシュ216に格納されているか否かをさらにチェックする(S5143)。
【0067】
その結果、要求データに対応するチャンクのMIMEデコード済み画像データが読み出しキャッシュ216に格納済みであれば(S5143:YES)、画像デコード部218は、そのMIMEデコード済み画像データを、読み出しキャッシュ216から読み出して展開用画像バッファ217上に展開する(S5144)。
【0068】
また、要求データに対応するチャンクのMIMEデコード済み画像データが読み出しキャッシュ216に未格納であれば(S5143:NO)、画像デコード部218は、要求データに対応するチャンクのMIMEデコード済み画像データがMIMEデコード済み画像バッファ215に格納されているか否かをさらにチェックする(S5145)。
【0069】
その結果、要求データに対応するチャンクのMIMEデコード済みデータがMIMEデコード済み画像バッファ215に格納済みであれば(S5145:YES)、画像デコード部218は、そのMIMEデコード済み画像データを、MIMEデコード済み画像バッファ215から読み出しキャッシュ216に読み出し(S5146)、展開用画像バッファ217上に展開する(S5144)。
【0070】
また、要求データに対応するチャンクのMIMEデコード済み画像データがMIMEデコード済み画像バッファ215に未格納(すなわち、対応するチャンクが未受信)であれば(S5145:NO)、画像デコード部218は、MIMEデコード部212からの画像データ更新の通知を待つ(S5147:NO)。そして、画像デコード部218は、画像データ更新の通知を受けるごとに(S5147:YES)、要求データに対応するチャンクのMIMEデコード済み画像データがMIMEデコード済み画像バッファ215に格納されたか否かをチェックする(S5145)。その結果、該当するMIMEデコード済み画像データがMIMEデコード済み画像バッファ215に格納されれば、画像デコード部218は、そのMIMEデコード済み画像データを、MIMEデコード済み画像バッファ215から読み出しキャッシュ216に読み出し(S5146)、展開用画像バッファ217上に展開する(S5144)。
【0071】
このような画像デコード処理によれば、画像データ部330Aの画像エンティティチャンク331のサイズ(受信/MIMEエンコードの単位サイズ)が、画像デコードに用いられる読み出しキャッシュ216のサイズ(画像デコードの単位サイズ)に一致させているため、画像データ部330Aのチャンクの受信/MIMEデコードに連動して、画像データの画像デコードを効率的に行うことができる。
【0072】
このように、以上述べた一連の処理を含む印刷制御処理によれば、図10(a)に示すように、Xhtmlデータ部320Aの受信/MIMEデコードが完了すれば、それに続く画像データ部330AのMIMEデコードが完了していなくても、ただちにXhtml解析部213およびレイアウト部214によるXhtml解析/レイアウト処理を開始して、印刷レイアウトを確定することができる。このため、プリントエンジン部204にすみやかに給紙動作を開始させ、印刷処理を開始させることができる。
【0073】
さらに、図10(a)に示すように、Xhtmlデータ部320Aに続く画像データ部330Aのチャンクを逐次受信/MIMEデコードしながら、画像デコード処理(画像データの展開)とレンダリング処理と印刷処理を並列して実行することができる。ここで、画像データ部330Aの画像エンティティチャンク331のサイズ(受信/MIMEエンコードの単位サイズ)が、画像デコードに用いられる読み出しキャッシュ216のサイズ(画像デコードの単位サイズ)に合わせて定められているため、画像データ部330Aのチャンクの受信/MIMEデコードに連動して画像デコード処理を効率的に行うことができる。
【0074】
このため、印刷用コンテンツデータの受信が完了してからXhtml解析等を開始する場合(図10(b))と比較して、本実施の形態に係る印刷制御処理によれば、印刷用コンテンツデータの転送速度が画像形成装置200の印刷速度を下回るような低速印刷環境であっても、画像データを含むMIMEデータをより効率的に印刷することができ、印刷完了までの待ち時間を短縮することができる。
【図面の簡単な説明】
【0075】
【図1】本発明の実施形態に係る印刷制御システムの概略構成図。
【図2】本発明の実施形態に係る画像形成装置の機能構成図。
【図3】本発明の実施形態に係る無線通信端末の機能構成図。
【図4】印刷用コンテンツデータのフォーマットの説明図。
【図5】印刷用コンテンツデータ生成処理のフローチャート。
【図6】印刷用コンテンツデータ受信/MIMEデコード処理のフローチャート。
【図7】図6のS407で実行されるXhtml解析/レイアウト処理のフローチャート。
【図8】図7のS415で開始されるレンダリング処理のフローチャート。
【図9】図8のS514で実行される画像デコード処理のフローチャート。
【図10】本発明の実施形態に係る印刷制御システムによる印刷高速化について説明するための図。
【符号の説明】
【0076】
100:無線通信端末、111:Xhtmlドキュメント生成部、112:コンテンツデータ生部、113:データ通信部、200:画像形成装置、211:データ通信部、212:MIMEデコード部、213:Xhtml解析部、214:レイアウト部、215:MIMEデコード済み画像バッファ、216:読み出しキャッシュ、217:展開用画像バッファ、218:画像デコード部、219:レンダリング部

【特許請求の範囲】
【請求項1】
転送されたMIME(Multipurpose Internet Mail Extension)データに基づいて印刷処理を実行する画像形成装置であって、
レイアウト文書および前記レイアウト文書に関連付けられた画像データをMIMEエンコードして生成されたMIMEデータを受信する受信手段と、
前記受信手段が受け付けたMIMEデータをMIMEデコードするデコード手段と、
前記デコード手段によりMIMEデコードされたレイアウト文書に基づいて印刷レイアウトを決定するレイアウト解析手段と、
前記レイアウト解析手段により決定された印刷レイアウト及び前記デコード手段によりMIMEデコードされた画像データに基づいて、ラスタデータを生成するレンダリング手段と、
前記レンダリング手段によって生成されたラスタデータに基づいて印刷を実行する印刷手段と、を備え、
前記受信手段がMIMEデータを受信しているときに、前記デコード手段が受信済みMIMEデータをMIMEデコードし、前記レイアウト文書のMIMEデコードが完了すると、前記受信手段が前記画像データに対応するMIMEデータの受信を継続しているときに、前記レイアウト解析手段が前記MIMEデコードされたレイアウト文書に基づいて前記印刷レイアウトを決定する処理を開始することを特徴とする画像形成装置。
【請求項2】
前記MIMEデータは、複数のチャンクから構成されていて、
前記デコード手段が、前記レイアウト文書を格納したチャンク、及び前記画像データのヘッダ情報を格納したチャンクのMIMEデコードを行って、前記MIMEデコードされたレイアウト文書を生成すると、前記受信手段が前記画像データのエンティティデータのチャンクの受信を継続しているときに、前記レイアウト解析手段が前記MIMEデコードされたレイアウト文書に基づいて前記印刷レイアウトを決定する処理を開始することを特徴とする請求項1記載の画像形成装置。
【請求項3】
前記画像データが、所定の圧縮処理が施された圧縮データであるときに、キャッシュメモリを用いて前記圧縮データを展開する展開手段をさらに備え、
前記チャンクサイズは、前記キャッシュメモリのサイズに応じたサイズであることを特徴とする請求項2記載の画像形成装置。
【請求項4】
前記レイアウト文書は、Xhtml文書であり、
前記レイアウト解析手段は、前記Xhtml文書の解析を行い、その解析結果に従って印刷レイアウトを決定することを特徴とする請求項1〜3のいずれかに記載の画像形成装置。
【請求項5】
MIME(Multipurpose Internet Mail Extension)データを画像形成装置に送信するデータ送信装置であって、
レイアウト文書および前記レイアウト文書に関連付けられた画像データが入力される入力手段と、
前記レイアウト文書及び前記画像データをMIMEエンコードしてMIMEデータを生成するMIMEデータ生成手段と、
前記MIMEデータを前記画像形成装置に送信する通信手段と、を備え、
前記MIME生成手段は、前記画像データのエンティティデータを、前記画像形成装置において画像データの読み出しに用いられる読み出しキャッシュメモリのサイズに応じたサイズのチャンクに分割して、前記MIMEデータを生成することを特徴とするデータ送信装置。
【請求項6】
前記MIME生成手段は、前記画像形成装置への前記MIMEデータの送信前に、前記通信手段を介して、前記画像形成装置から前記読み出しキャッシュメモリのサイズを取得することを特徴とする請求項5記載のデータ送信装置。
【請求項7】
画像形成装置に送信するMIMEデータをデータ送信装置に生成させるMIMEデータ生成プログラムであって、
前記データ送信装置は、前記レイアウト文書および前記レイアウト文書に関連付けられた画像データが入力される入力手段と、通信手段と、を備え、
前記MIMEデータ生成プログラムは、
前記入力手段により入力された前記レイアウト文書および前記画像データをMIMEエンコードしてMIMEデータを生成するMIME処理と、
前記通信手段に、前記MIMEデータを前記画像形成装置へ送信させる通信処理と、を含み、
前記MIME処理において、前記画像データのエンティティデータを、前記画像形成装置が前記画像データの展開に用いる読み出しキャッシュメモリのサイズに応じたサイズのチャンクに分割して、前記MIMEエンコード済みデータを生成することを特徴とするMIMEデータ生成プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2010−61462(P2010−61462A)
【公開日】平成22年3月18日(2010.3.18)
【国際特許分類】
【出願番号】特願2008−227309(P2008−227309)
【出願日】平成20年9月4日(2008.9.4)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】