(57)【要約】【課題】ＰＤＦデータを印刷装置に直接送信して印刷するシステムにおいて、ＰＤＦデータはデータの終端を起点にして内容解析を始めるため、ＰＤＦデータ全体を印刷装置に受信しきれないと印刷できない。また、多ページの印刷データや複雑な印刷データの場合、先頭ページが出力されるまでに時間がかかる。【解決手段】データ作成方法であって、複数のページから構成されるＰＤＬデータを作成する作成工程を有し、前記作成工程において、拡張ＰＤＬデータとして、前記拡張ＰＤＬデータに対応した第一の画像形成装置により前記拡張ＰＤＬデータが処理される場合には、前記拡張ＰＤＬデータを構成するページごとにデータを取得して解釈が可能なように構成され、かつ、前記拡張ＰＤＬデータに対応していない第二の画像形成装置により前記拡張ＰＤＬデータが処理される場合には、前記拡張ＰＤＬデータの全てを取得した上で、前記複数のページがまとめて解釈されるように構成される、ＰＤＬデータが作成される。【選択図】  図１
2017073002.tif 000002
【特許請求の範囲】
【請求項１】
複数のページから構成されるＰＤＬデータを作成する作成工程を有し、
前記作成工程において、拡張ＰＤＬデータとして、
前記拡張ＰＤＬデータに対応した第一の画像形成装置により前記拡張ＰＤＬデータが処理される場合には、前記拡張ＰＤＬデータを構成するページごとにデータを取得して解釈が可能なように構成され、かつ、
前記拡張ＰＤＬデータに対応していない第二の画像形成装置により前記拡張ＰＤＬデータが処理される場合には、前記拡張ＰＤＬデータの全てを取得した上で、前記複数のページがまとめて解釈されるように構成される、ＰＤＬデータが作成されることを特徴とするデータ作成方法。
【請求項２】
前記拡張ＰＤＬデータは、ＰＤＦ形式であって、前記拡張ＰＤＬデータの全体のヘッダ、ボディ、クロスリファレンステーブル、およびトレーラに加えて、前記ボディに含まれるページのデータごとにヘッダ、クロスリファレンステーブル、およびトレーラが拡張され、
前記第一の画像形成装置により前記拡張ＰＤＬデータが処理される場合には、ページごとのヘッダ、クロスリファレンステーブル、およびトレーラは解釈して処理され、
前記第二の画像形成装置により前記拡張ＰＤＬデータが処理される場合には、ページごとのヘッダ、クロスリファレンステーブル、およびトレーラは無視されるように構成されることを特徴とする請求項１に記載のデータ作成方法。
【請求項３】
ページごとのヘッダ、クロスリファレンステーブル、およびトレーラは、前記第二の画像形成装置がコメントとして認識するように記述されることを特徴とする請求項２に記載のデータ作成方法。
【請求項４】
前記拡張ＰＤＬデータは、当該拡張ＰＤＬデータの全体のヘッダの後に、ページごとにヘッダ、ボディ、クロスリファレンステーブル、およびトレーラが配置され、更にその後に、当該拡張ＰＤＬデータの全体のクロスリファレンステーブル、およびトレーラが配置されることを特徴とする請求項２または３に記載のデータ作成方法。
【請求項５】
複数のページから構成されるＰＤＬデータを生成する作成手段を有し、
前記作成手段は、拡張ＰＤＬデータとして、
前記拡張ＰＤＬデータに対応した第一の画像形成装置により前記拡張ＰＤＬデータが処理される場合には、前記拡張ＰＤＬデータを構成するページごとにデータを取得して解釈が可能なように構成され、かつ、
前記拡張ＰＤＬデータに対応していない第二の画像形成装置により前記拡張ＰＤＬデータが処理される場合には、前記拡張ＰＤＬデータの全てを取得した上で、前記複数のページがまとめて解釈されるように構成される、ＰＤＬデータを作成することを特徴とする情報処理装置。
【請求項６】
通常のＰＤＬデータを作成するか、前記拡張ＰＤＬデータを作成するかの設定を受け付ける受け付け手段を更に有し、
前記作成手段は、前記受け付け手段により受け付けた設定に応じて、作成するＰＤＬデータを切り替えることを特徴とする請求項５に記載の情報処理装置。
【請求項７】
画像形成装置であって、
複数のページから構成されるＰＤＬデータを取得する取得手段と、
前記取得手段にて取得するＰＤＬデータが、ページごとにデータを取得して解釈が可能なように構成された拡張ＰＤＬデータであるか否かを判定する判定手段と、
前記取得手段にて取得されたＰＤＬデータを記憶する記憶手段と、
前記記憶手段に記憶されたＰＤＬデータから画像データを生成する生成手段と、
前記生成手段にて生成された画像データを用いて印刷を行う印刷手段と
を備え、
前記取得手段は、前記判定手段により前記拡張ＰＤＬデータであると判定された場合、前記ＰＤＬデータを構成するページごとにデータを取得して前記記憶手段に記憶させ、
前記取得手段は、前記記憶手段に記憶されているページのデータが前記生成手段および前記印刷手段にて処理されている間は、次のページのデータの取得を中断することを特徴とする画像形成装置。
【請求項８】
画像形成装置であって、
複数のページから構成されるＰＤＬデータを取得する取得手段と、
前記取得手段にて取得するＰＤＬデータが、ページごとにデータを取得して解釈が可能なように構成された拡張ＰＤＬデータであるか否かを判定する判定手段と、
前記取得手段にて取得されたＰＤＬデータを記憶する記憶手段と、
前記記憶手段に記憶されたＰＤＬデータから画像データを生成する生成手段と、
前記生成手段にて生成された画像データを用いて印刷を行う印刷手段と
を備え、
前記取得手段は、前記判定手段により前記拡張ＰＤＬデータであると判定された場合、前記ＰＤＬデータを構成するページごとにデータを取得して前記記憶手段に記憶させ、
前記取得手段は、前記記憶手段に記憶されているページのデータが前記生成手段および前記印刷手段にて処理されている間は、次のページのデータを取得する際の取得レートを低下させることを特徴とする画像形成装置。
【請求項９】
前記取得手段は、前記記憶手段に記憶されているページのデータが前記生成手段および前記印刷手段にて処理されている間は、次のページのデータを、処理中のデータとは異なる記憶領域に記憶させることを特徴とする請求項８に記載の画像形成装置。
【請求項１０】
前記判定手段は、前記取得手段が取得するＰＤＬデータの構成の並びに基づいて、当該ＰＤＬデータが前記拡張ＰＤＬデータか否かを判定することを特徴とする請求項７乃至９のいずれか一項に記載の画像形成装置。
【請求項１１】
画像形成装置の制御方法であって、
複数のページから構成されるＰＤＬデータを取得する取得工程と、
前記取得工程にて取得するＰＤＬデータが、ページごとにデータを取得して解釈が可能なように構成された拡張ＰＤＬデータであるか否かを判定する判定工程と、
前記取得工程にて取得されたＰＤＬデータを記憶部に記憶する記憶工程と、
前記記憶部に記憶されたＰＤＬデータから画像データを生成する生成工程と、
前記生成工程にて生成された画像データを用いて印刷を行う印刷工程と
を有し、
前記取得工程において、前記判定工程にて前記拡張ＰＤＬデータであると判定された場合、前記ＰＤＬデータを構成するページごとにデータを取得して前記記憶部に記憶させ、
前記取得工程において、前記記憶部に記憶されているページのデータが前記生成工程および前記印刷工程にて処理されている間は、次のページのデータの取得を中断することを特徴とする画像形成装置の制御方法。
【請求項１２】
画像形成装置の制御方法であって、
複数のページから構成されるＰＤＬデータを取得する取得工程と、
前記取得工程にて取得するＰＤＬデータが、ページごとにデータを取得して解釈が可能なように構成された拡張ＰＤＬデータであるか否かを判定する判定工程と、
前記取得工程にて取得されたＰＤＬデータを記憶部に記憶する記憶工程と、
前記記憶部に記憶されたＰＤＬデータから画像データを生成する生成工程と、
前記生成工程にて生成された画像データを用いて印刷を行う印刷工程と
を有し、
前記取得工程において、前記判定工程にて前記拡張ＰＤＬデータであると判定された場合、前記ＰＤＬデータを構成するページごとにデータを取得して前記記憶部に記憶させ、
前記取得工程において、前記記憶部に記憶されているページのデータが前記生成工程および前記印刷工程にて処理されている間は、次のページのデータを取得する際の取得レートを低下させることを特徴とする画像形成装置の制御方法。
【請求項１３】
コンピュータを、複数のページから構成されるＰＤＬデータを生成する作成手段として機能させ、
前記作成手段は、拡張ＰＤＬデータとして、
前記拡張ＰＤＬデータに対応した第一の画像形成装置により前記拡張ＰＤＬデータが処理される場合には、前記拡張ＰＤＬデータを構成するページごとにデータを取得して解釈が可能なように構成され、かつ、
前記拡張ＰＤＬデータに対応していない第二の画像形成装置により前記拡張ＰＤＬデータが処理される場合には、前記拡張ＰＤＬデータの全てを取得した上で、前記複数のページがまとめて解釈されるように構成される、ＰＤＬデータを作成することを特徴とするプログラム。
【請求項１４】
コンピュータを、
複数のページから構成されるＰＤＬデータを取得する取得手段、
前記取得手段にて取得するＰＤＬデータが、ページごとにデータを取得して解釈が可能なように構成された拡張ＰＤＬデータであるか否かを判定する判定手段、
前記取得手段にて取得されたＰＤＬデータを記憶する記憶手段、
前記記憶手段に記憶されたＰＤＬデータから画像データを生成する生成手段、
前記生成手段にて生成された画像データを用いて印刷を行う印刷手段
として機能させ、
前記取得手段は、前記判定手段により前記拡張ＰＤＬデータであると判定された場合、前記ＰＤＬデータを構成するページごとにデータを取得して前記記憶手段に記憶させ、
前記取得手段は、前記記憶手段に記憶されているページのデータが前記生成手段および前記印刷手段にて処理されている間は、次のページのデータの取得を中断することを特徴とするプログラム。
【請求項１５】
コンピュータを、
複数のページから構成されるＰＤＬデータを取得する取得手段、
前記取得手段にて取得するＰＤＬデータが、ページごとにデータを取得して解釈が可能なように構成された拡張ＰＤＬデータであるか否かを判定する判定手段、
前記取得手段にて取得されたＰＤＬデータを記憶する記憶手段、
前記記憶手段に記憶されたＰＤＬデータから画像データを生成する生成手段、
前記生成手段にて生成された画像データを用いて印刷を行う印刷手段
として機能させ、
前記取得手段は、前記判定手段により前記拡張ＰＤＬデータであると判定された場合、前記ＰＤＬデータを構成するページごとにデータを取得して前記記憶手段に記憶させ、
前記取得手段は、前記記憶手段に記憶されているページのデータが前記生成手段および前記印刷手段にて処理されている間は、次のページのデータを取得する際の取得レートを低下させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ作成方法、情報処理装置、画像形成装置およびその制御方法、並びにプログラムに関する。
【背景技術】
【０００２】
近年、スマートフォン等の携帯端末が普及してきている。携帯端末から印刷を試みる場合、携帯端末で動作する印刷プラグインというソフトや、印刷用のアプリケーションソフトを用いるのが一般的である。別の経路として、印刷や表示を行うことができるＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｏｔｉｏｎ  Ｌａｎｇｕａｇｅ）データを携帯端末で作成し、それを印刷装置に転送して印刷することも可能である。ＰＤＬの代表的なものとしてはＡｄｏｂｅ社のＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）などが挙げられる。ＰＤＦデータは、汎用的に普及している作成手段を用いれば、携帯端末や印刷装置を限定することなく同じ出力結果を得ることが可能である。そのため、非常に使い勝手が良い。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−２８７７６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、ＰＤＦデータの構成上、ＰＤＦデータ全体を印刷装置が受信してからでないと印刷が開始できない場合がある。このような場合に、複雑なデータやページ数の多いデータなどを印刷しようとすると、先頭ページが排紙されるまでに長い時間を必要としたり、ＰＤＦを印刷装置に受信しきれずに印刷できないという問題がある。
【０００５】
例えば、特許文献１では、この問題に対処すべく、データ受信時に印刷装置でメモリーオーバーとなった場合には印刷装置から再送要求を出し、その時点でシリアライズされた印刷データを送付している。
【０００６】
本願発明では、携帯端末やパーソナルコンピュータなどの端末装置から、ＰＤＬデータを取得して印刷する場合において、先頭ページが出力される時間の短縮を目的とする。更に、ＰＤＬデータ全体を印刷装置に受信してからでないと印刷が開始できないという問題の解決を目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために本願発明は以下の構成を有する。すなわち、データ作成方法であって、複数のページから構成されるＰＤＬデータを作成する作成工程を有し、前記作成工程において、拡張ＰＤＬデータとして、前記拡張ＰＤＬデータに対応した第一の画像形成装置により前記拡張ＰＤＬデータが処理される場合には、前記拡張ＰＤＬデータを構成するページごとにデータを取得して解釈が可能なように構成され、かつ、前記拡張ＰＤＬデータに対応していない第二の画像形成装置により前記拡張ＰＤＬデータが処理される場合には、前記拡張ＰＤＬデータの全てを取得した上で、前記複数のページがまとめて解釈されるように構成される、ＰＤＬデータが作成される。
【０００８】
また、本願発明は、別の構成として以下の構成を有する。すなわち、画像形成装置であって、複数のページから構成されるＰＤＬデータを取得する取得手段と、前記取得手段にて取得するＰＤＬデータが、ページごとにデータを取得して解釈が可能なように構成された拡張ＰＤＬデータであるか否かを判定する判定手段と、前記取得手段にて取得されたＰＤＬデータを記憶する記憶手段と、前記記憶手段に記憶されたＰＤＬデータから画像データを生成する生成手段と、前記生成手段にて生成された画像データを用いて印刷を行う印刷手段とを備え、前記取得手段は、前記判定手段により前記拡張ＰＤＬデータであると判定された場合、前記ＰＤＬデータを構成するページごとにデータを取得して前記記憶手段に記憶させ、前記取得手段は、前記記憶手段に記憶されているページのデータが前記生成手段および前記印刷手段にて処理されている間は、次のページのデータの取得を中断する。
【発明の効果】
【０００９】
本願発明により、ＰＤＬデータを取得して印刷する際に、先頭ページの出力までの時間の短縮化が可能となる。
【図面の簡単な説明】
【００１０】
【図１】本願発明に係る全体システム構成例を示す図。
【図２】本願発明に係る端末装置のハードウェア構成の例を示す図。
【図３】本願発明に係る印刷装置のハードウェア構成の例を示す図。
【図４】本願発明に係る端末装置及び印刷装置のソフトウェア構成の例を示す図。
【図５】本願発明に係る端末装置及び印刷装置の処理のフローチャート。
【図６】第一の実施形態に係る通常ＰＤＬ処理のフローチャート。
【図７】第一の実施形態に係る拡張ＰＤＬ処理のフローチャート。
【図８】通常ＰＤＬデータの構成を説明するための図。
【図９】本願発明に係る拡張ＰＤＬデータの構成を説明するための図。
【図１０】第二の実施形態に係る拡張ＰＤＬ処理のフローチャート。
【図１１】本願発明に係るＰＤＬ出力における設定画面の構成例を示す図。
【発明を実施するための形態】
【００１１】
＜第一の実施形態＞
［システム構成］
本願発明に係るシステム構成、端末装置、および印刷装置の構成例について説明する。図１は、本発明の代表的な全体システム構成の例を示す。
【００１２】
情報処理装置である端末装置１０１には、写真、画像、文章、表など様々な印刷対象となるドキュメントが管理・保管されている。端末装置１０１は、アクセスポイント１０２と無線通信もしくは有線通信により接続される。もしくは、端末装置１０１は、アクセスポイント１０２を介さずに、直接的に印刷装置１０３、１０４と無線通信もしくは有線通信により接続されてもよい。また、ＵＳＢメモリ１０５に印刷用ＰＤＬデータが格納されていてもよい。
【００１３】
印刷装置１０３、１０４は、それぞれ無線通信もしくは有線通信にてアクセスポイント１０２と接続され、アクセスポイント１０２経由で端末装置１０１と接続される。もしくは、印刷装置１０３、１０４は、アクセスポイント１０２を介さずに、直接的に端末装置１０１と接続されてもよい。また、印刷装置１０３、１０４は、ＵＳＢメモリ１０５を接続して、ＵＳＢメモリ１０５から印刷用ＰＤＬデータを受け取ってもよい。なお、ここではＵＳＢメモリ１０５としたが、これに限定するものでは無く、他のメモリ媒体を用いてもよい。端末装置１０１は、無線通信もしくは有線通信によりインターネット１０６とも接続される。
【００１４】
なお、図１に示すシステム構成では、端末装置が２台、印刷装置が２台それぞれ示されているが、この構成に限定するものではなく更に多くの装置を含んで構成されるようにしてもよい。また、印刷装置は、ネットワークプリンタや、ＭＦＰ（Ｍｕｌｔｉ−Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）などが挙げられるが、特に限定するものでは無い。
【００１５】
［ハードウェア構成］
図２は、端末装置１０１のハードウェア構成の一例を示す。端末装置１０１は、スマートフォンに代表される携帯端末でも良いし、ＰＣに代表される小型のコンピュータ端末でも良く、特に限定するものではない。端末装置１０１は、メインボード２０１、外部記憶装置２１０、表示部２１１、および入力部２１２を備える。更にメインボード２０１は、有線ＮＷ  Ｉ／Ｆ２０２、無線ＮＷ  Ｉ／Ｆ２０３、近距離無線ＮＷ  Ｉ／Ｆ２０４、ＣＰＵ２０６、記憶部２０７、メモリコントローラ２０８、およびユーザＩ／Ｆ２０９を備える。これらの構成要素はバス２０５を介して通信可能に接続される。
【００１６】
有線ＮＷ  Ｉ／Ｆ２０２は、イーサネット（登録商標）に代表される有線通信ネットワークの通信の制御を行う。端末装置１０１は、有線ＮＷ  Ｉ／Ｆ２０２を使ってインターネット１０６にアクセスすることができる。さらに、端末装置１０１は、有線ＮＷ  Ｉ／Ｆ２０２により、アクセスポイント１０２にアクセスすることもできる。無線ＮＷ  Ｉ／Ｆ２０３は、主にＷｉ−Ｆｉ（登録商標）通信の制御を行う。無線ＮＷ  Ｉ／Ｆ２０３は、電話通信のＩ／Ｆも包含している。端末装置１０１は無線ＮＷ  Ｉ／Ｆ２０３を使ってＷｉ−Ｆｉ通信によりアクセスポイント１０２にアクセスすることができる。さらに端末装置１０１は、無線ＮＷ  Ｉ／Ｆ２０３に包含される電話通信のＩ／Ｆを使ってインターネット１０６に直接アクセスすることもできる。近距離無線ＮＷ  Ｉ／Ｆ２０４は、主にＢｌｕｅｔｏｏｔｈ（登録商標）通信の制御を行う。
【００１７】
ＣＰＵ２０６は、記憶部２０７に保持されたＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）等の各種プログラムを実行させて、端末装置１０１全体の動作をコントロールする。記憶部２０７は、揮発性の記憶部であるＲＡＭおよび不揮発性の記憶部であるＲＡＭ等を含み、各種プログラムの保持や、ワークメモリとして用いられる。メモリコントローラ２０８は、外部記憶装置２１０とのデータ送受信を制御する。ユーザＩ／Ｆ２０９は、表示部２１１および入力部２１２の動作を制御する。
【００１８】
表示部２１１は、端末装置１０１の表示部であり、液晶パネルや有機ＥＬパネルなどの表示装置により構成される。入力部２１２は、端末装置１０１の入力部であり、例えば、キーボードやボタン、表示部２１１に備えられたタッチ式のセンサーなどにより構成される。外部記憶装置２１０は、例えばＵＳＢメモリやハードディスク、その他の光学式メモリデバイスなどの記憶装置により構成される。
【００１９】
図３は、印刷装置１０３のハードウェア構成の一例を示す。ここでは、印刷装置１０３、１０４の構成は同じものとし、印刷装置１０３を例に挙げて説明を行う。なお、印刷装置１０３、１０４のハードウェアの構成はそれぞれ異なるようにしてもよい。印刷装置１０３は、メインボード３０１、外部記憶装置３１１、表示部３１２、入力部３１３、および印刷部３１４を備える。更にメインボード３０１は、有線ＮＷ  Ｉ／Ｆ３０２、無線ＮＷ  Ｉ／Ｆ３０３、近距離無線ＮＷ  Ｉ／Ｆ３０４、ＣＰＵ３０６、記憶部３０７、メモリコントローラ３０８、ユーザＩ／Ｆ３０９、および印刷部Ｉ／Ｆ３１０を備える。これらの構成要素はバス３０５を介して通信可能に接続される。
【００２０】
有線ＮＷ  Ｉ／Ｆ３０２は、イーサネット（登録商標）に代表される有線通信ネットワークの通信の制御を行う。印刷装置１０３は、有線ＮＷ  Ｉ／Ｆ３０２を使ってインターネット１０６にアクセスすることができる。さらに、印刷装置１０３は、有線ＮＷ  Ｉ／Ｆ３０２により、アクセスポイント１０２にアクセスすることもできる。無線ＮＷ  Ｉ／Ｆ３０３は、Ｗｉ−Ｆｉ（登録商標）通信の制御を行う。印刷装置１０３は、無線ＮＷ  Ｉ／Ｆ２０３を使ってインターネット１０６や、アクセスポイント１０２にアクセスすることもできる。有線と無線のどちらを使ってインターネット１０６にアクセスするのかは、印刷装置１０３に備わっている表示部３１２及び入力部３１３を用いて設定して変更することができる。近距離無線ＮＷ  Ｉ／Ｆ３０４は、主にＢｌｕｅｔｏｏｔｈ（登録商標）通信の制御を行う。
【００２１】
ＣＰＵ３０６は、記憶部３０７に保持された制御プログラムを実行させて、印刷装置１０３全体の動作をコントロールする。記憶部３０７は、揮発性の記憶部であるＲＡＭおよび不揮発性の記憶部であるＲＡＭ等を含み、各種プログラムの保持や、ワークメモリとして用いられる。メモリコントローラ３０８は、ＵＳＢメモリやハードディスクに代表される外部記憶装置３１１とのデータ送受信を制御する。ユーザＩ／Ｆ３０９は、表示部３１２および入力部３１３の動作を制御する。印刷部Ｉ／Ｆ３１０は、印刷部３１４へ印刷用画像データや印刷指示などを引き渡す。
【００２２】
外部記憶装置３１１は、印刷すべき印刷用ＰＤＬデータなどを一時的に格納しておく領域である。印刷用ＰＤＬデータを格納したＵＳＢメモリなども外部記憶装置３１１である。表示部３１２は、液晶や有機ＥＬに代表される表示装置であり、印刷装置１０３内の設定情報を表示したり、入稿済みジョブの一覧を表示したりするのに用いられる。入力部３１３は、印刷装置１０３に付加されているキーボードや、表示部３１２に取り付けたタッチセンサーなどを示す。入力部３１３は、印刷装置１０３に対する設定変更指示や印刷指示等を行うのに用いられる。印刷部３１４は、いわゆるプリンタエンジンであり、電子写真方式やインクジェット方式など様々な印刷方式による印刷部である。複数種類の用紙を抱える給紙カセットや、両面印刷機構、白黒・カラー印刷機構、ステープル機構、製本機構、複数の排紙トレイなども印刷部３１４に含まれている。印刷部３１４の構成については特に限定するものではない。
【００２３】
［ソフトウェア構成］
図４（ａ）は、端末装置１０１の記憶部２０７に格納されているドキュメント作成アプリ４０１、ＯＳ４０７、およびＰＤＬ作成アプリ４０４の構成例を示す。図４（ｂ）は、印刷装置１０３の記憶部３０７に格納されているＯＳ４１０、及びＰＤＬ処理部４１３の構成例を表す。
【００２４】
端末装置１０１のドキュメント作成アプリ４０１は、端末装置１０１にて動作するアプリケーションであって、大きく分けて、ＵＩ制御部４０２、及び、基本処理部４０３で構成される。ＵＩ制御部４０２は、ドキュメント作成アプリ４０１による表示部２１１及び入力部２１２の制御を実行し、ドキュメント作成アプリ４０１に対する様々な指示の入力や、ドキュメント作成アプリ４０１の応答を表示する。基本処理部４０３は、ドキュメント作成アプリ４０１によるデータ処理、例えば、文章作成の処理やデータ保存、印刷指示などの処理を実行する。
【００２５】
端末装置１０１のＯＳ４０７は、大きく分けて、アプリケーション制御部４０８、及び、基本処理部４０９で構成される。アプリケーション制御部４０８は、ドキュメント作成アプリ４０１及びＰＤＬ作成アプリ４０４とのインターフェース処理を行う。ドキュメント作成アプリ４０１からの様々な要求は、アプリケーション制御部４０８を介して、基本処理部４０９に伝えられる。基本処理部４０９は、ＯＳ４０７の基本的な動作を実行し、例えば、メモリ管理、実行プログラムの管理などを行って端末装置１０１全般の動きを制御する。
【００２６】
端末装置１０１のＰＤＬ作成アプリ４０４は、端末装置１０１にて動作するアプリケーションであって、大きく分けて、ＵＩ制御部４０５、及び、基本処理部４０６で構成される。ＵＩ制御部４０５は、ＰＤＬ作成アプリ４０４による表示部２１１及び入力部２１２の制御を実行する。ＰＤＬ作成アプリ４０４は、作成するＰＤＬの種別を確定するために、図１１に示すような設定画面１１０１を表示部２１１に表示し、入力部２１２からの指示を受ける。基本処理部４０６は、ＯＳ４０７から渡されるドキュメントのデータとＵＩ制御部４０５で決定したＰＤＬの種別に基づいて、印刷用ＰＤＬデータを作成する。本実施形態に係るＰＤＬの種別の詳細については後述する。
【００２７】
印刷装置１０３のＯＳ４１０は、大きく分けて、アプリケーション制御部４１１、及び、基本処理部４１２で構成される。アプリケーション制御部４１１は、ＰＤＬ処理部４１３とのインターフェース処理を行い、ＯＳ４１０が受信した印刷用ＰＤＬデータの引き渡しを行う。基本処理部４１２は、ＯＳ４１０の基本的な動作を実行し、例えば、メモリ管理、実行プログラムの管理などを行って印刷装置１０３全般の動きを制御する。
【００２８】
印刷装置１０３のＰＤＬ処理部４１３は、大きく分けて、解析部４１４、通常ＰＤＬ処理部４１５、及び、拡張ＰＤＬ処理部４１６で構成される。解析部４１４は、ＯＳ４１０が受信した印刷用ＰＤＬデータの形式を解析し、通常ＰＤＬ処理部４１５もしくは拡張ＰＤＬ処理部４１６にそのデータを引き渡す。通常ＰＤＬ処理部４１５は、印刷装置１０３が受信した印刷用ＰＤＬデータがＰＤＦを含む通常のＰＤＬ形式のＰＤＬデータ（以下、通常ＰＤＬデータ）である場合に動作する。印刷用ＰＤＬデータを作成する手段が本願発明によらないものである場合、もしくは、本願発明で作成するＰＤＬの種別を「通常ＰＤＬ」とした場合に呼び出される。こちらで処理される場合は、先頭ページの出力を早くする効果やＰＤＬデータ全体をメモリに受信しなくても印刷できるという、本願発明に特有の効果は期待できない。この機能は、本願発明によらない手段でＰＤＬデータが作成された場合にでも印刷できるように下位互換性を保つために用意されている。拡張ＰＤＬ処理部４１６は、受信した印刷用ＰＤＬデータが本願発明に係る拡張ＰＤＬデータである場合に動作する。こちらで処理される場合は、先頭ページの出力を早くする効果やＰＤＬデータ全体をメモリに受信しなくても印刷できるという、本願発明に特有の効果が期待できる。
【００２９】
［データ構造］
図８のデータ８００は、通常ＰＤＬデータ構造の例を示す。なお、図８に示すＰＤＬデータの構成は、周知のＰＤＦ形式であり、ここでは概要のみを説明する。通常ＰＤＬデータは、大きく４つの部分で構成され、ヘッダ８０１、ボディ８０２、クロスリファレンステーブル８０３、およびトレーラ８０４で構成される。ヘッダ８０１は、ＰＤＬデータの各種情報を示し、図８に示す例の場合、このＰＤＬデータがＰＤＬ１．２形式のデータであることを示している。ボディ８０２は、ビットマップ、図形、文字などそのＰＤＬで必要とされているすべてのリソースが格納されている。例えば、ＰＤＬデータが複数のページから構成される場合には、全てのページのデータがリソースとしてボディ８０２に格納される。ボディ８０２に含まれる各リソースは、クロスリファレンステーブル８０３から、リソース番号とデータ内の位置情報を用いて参照される。
【００３０】
クロスリファレンステーブル８０３は、ボディ８０２に含まれるリソースの数を把握し、各リソースのデータ内での位置情報を保持しており、リソースにアクセスできるように用意されている。トレーラ８０４は、ＰＤＬデータの終端であることを示し、クロスリファレンステーブル８０３のデータ内での位置情報を保持している。このように、通常ＰＤＬデータは、トレーラ８０４を起点にして、クロスリファレンステーブル８０３にアクセスし、更にクロスリファレンステーブル８０３からボディ８０２にあるリソースにアクセスするという構造になっている。
【００３１】
図９のデータ９００は、本実施形態に係る拡張ＰＤＬデータ構造の例を示す。図９においては、説明を簡略化するために２ページの拡張ＰＤＬデータを示している。通常ＰＤＬデータとの上位互換性を保つために、拡張ＰＤＬデータにおいても、ヘッダ、ボディ、クロスリファレンステーブル、およびトレーラによりデータが構成されるが、１ページ毎にその４つの部位により構成される。そして、拡張ＰＤＬデータは、複数ページ分、そのページごとのデータが連続するという点が通常ＰＤＬデータとは異なる。更に、通常ＰＤＬに対応した印刷装置に対応するために、データの最初にヘッダを設け、更に、データの最後にクロスリファレンステーブルとトレーラを設けている。以下に順次説明する。なお、本願発明の拡張ＰＤＬに対応した印刷装置を「第一の画像形成装置」とも称し、通常ＰＤＬにのみ対応した印刷装置を「第二の画像形成装置」とも称する。
【００３２】
ヘッダ９０１は、ＰＤＬデータの各種情報を示し、図９に示す例の場合、このＰＤＬデータがＰＤＬ１．２形式のデータであることを示している。なお、行の先頭に記号“％”が記述されることにより、この行は、通常ＰＤＬにおいてコメントとして扱われる。
【００３３】
ヘッダ９０２は、ＰＤＬデータの１ページ目における各種情報を示す。ここでは拡張ＰＤＬデータがＰＤＬ１．２形式の拡張形式データであることを最初の行で示している。更に、次の行で、この拡張ＰＤＬデータのジョブＩＤが“ＡＢＣＤＥ”であり、データの開始（“Ｂｅｇｉｎ”）を宣言している。ジョブＩＤは、拡張ＰＤＬデータ作成時にＰＤＬ作成アプリ４０４によって付与されるランダムな値である。ジョブＩＤは、印刷装置が１つのＰＤＬデータを処理中に、他のＰＤＬデータを受信しないように区別する目的や、１つのＰＤＬデータの処理が完了したことを認識する目的で利用される。
【００３４】
行の先頭の記号“％＄＃”の意味を説明する。上述したように、先頭に記号“％”が付与された場合は、この行が通常ＰＤＬにおいてのコメントであることを示す。更に、記号“％”に続く記号“＄＃”により、その行が拡張ＰＤＬデータのヘッダ、クロスリファレンステーブル、トレーラのいずれかであることを示す。つまりヘッダ９０２は、通常ＰＤＬデータではコメントとして扱われるが、拡張ＰＤＬデータではヘッダとして扱われる。言い換えると、記号“％＄＃”が付与された行は、通常ＰＤＬにのみ対応した印刷装置では、コメントであるとして無視される。
【００３５】
ボディ９０３は、ビットマップ、図形、文字などのリソースが格納されている場所である。図９に示す例の場合、ボディ９０３には、１ページ目で必要とされているリソースだけが格納されている。リソースにアサインされるリソース番号はドキュメント全体を通しての一貫番号をアサインする。なお、ボディ９０３は、各行の先頭に記号“％”が設定されていないため、通常ＰＤＬデータとしても拡張ＰＤＬデータとしてもボディ部として扱われる。つまり、ボディ９０３、９０７を合せたものが、図８のボディ８０２に相当する。
【００３６】
クロスリファレンステーブル９０４は、ボディ９０３に含まれる１ページ目のリソースの数を把握し、各リソースのデータ内での位置情報を保持しており、リソースにアクセスできるように用意される。クロスリファレンステーブル９０４各行の先頭にも記号“％＄＃”が設定されているため、クロスリファレンステーブル９０４は通常ＰＤＬデータではコメントとして扱われ、拡張ＰＤＬデータではクロスリファレンステーブルとして扱われる。
【００３７】
トレーラ９０５は、１ページ目の拡張ＰＤＬデータの終端であることを示し、クロスリファレンステーブル９０４の１ページ目のデータ内での位置情報を保持している。なお、トレーラ９０５の各行の先頭にも記号“％＄＃”が設定されているため、トレーラ９０５は通常ＰＤＬデータではコメントとして扱われ、拡張ＰＤＬデータではトレーラとして扱われる。このように、拡張ＰＤＬデータとして見た場合、１ページ目のデータはトレーラ９０５を起点にして、クロスリファレンステーブル９０４にアクセスし、そのクロスリファレンステーブル９０４からボディ９０３にあるリソースにアクセスするという構造になっている。
【００３８】
ヘッダ９０６は、ＰＤＬデータの２ページ目における各種情報を示す。ここでは拡張ＰＤＬデータがＰＤＬ１．２形式の拡張形式データであることを最初の行で示している。更に、次の行で、この拡張ＰＤＬデータのジョブＩＤが“ＡＢＣＤＥ”であり、データの継続（“Ｃｏｎｔ”）を宣言している。ジョブＩＤは１ページ目に付与された値と同じものが格納され、同一ジョブに由来するデータであることを示す。なお、ヘッダ９０６の各行の先頭にも記号“％＄＃”が設定されているため、ヘッダ９０６は通常ＰＤＬデータではコメントとして扱われ、拡張ＰＤＬデータではヘッダとして扱われる。
【００３９】
ボディ９０７は、ビットマップ、図形、文字などのリソースが格納されている場所である。ボディ９０７には、２ページ目で必要とされているリソースだけが格納されている。リソースにアサインされるリソース番号はドキュメント全体を通しての一貫番号をアサインする。なお、ボディ９０７は、各行の先頭に記号“％”が設定されていないため、通常ＰＤＬデータとしても拡張ＰＤＬデータとしてもボディ部として扱われる。
【００４０】
クロスリファレンステーブル９０８は、ボディ９０７に含まれる２ページ目のリソースの数を把握し、各リソースのデータ内での位置情報を保持しており、リソースにアクセスできるように用意されている。クロスリファレンステーブル９０８の各行の先頭にも記号“％＄＃”が設定されているため、クロスリファレンステーブル９０８は通常ＰＤＬデータではコメントとして扱われ、拡張ＰＤＬデータではクロスリファレンステーブルとして扱われる。
【００４１】
トレーラ９０９は、２ページ目の拡張ＰＤＬデータの終端であることを示し、クロスリファレンステーブル９０８の２ページ目のデータ内での位置情報を保持している。なお、トレーラ９０９の各行の先頭にも記号“％＄＃”が設定されているため、トレーラ９０９は通常ＰＤＬデータではコメントとして扱われ、拡張ＰＤＬデータではトレーラとして扱われる。このように、拡張ＰＤＬデータとして見た場合、２ページ目のデータはトレーラ９０９を起点にして、クロスリファレンステーブル９０８にアクセスし、そのクロスリファレンステーブル９０８からボディ９０７にあるリソースにアクセスするという構造になっている。なお、トレーラ９０９の終端には、ジョブＩＤ“ＡＢＣＤＥ”の終端（“Ｅｎｄ”）であることが宣言されている。拡張ＰＤＬデータとしてこのジョブを見た場合、ここまでの情報で印刷ジョブが完結できるという意味である。
【００４２】
クロスリファレンステーブル９１０は、ドキュメント全体のリソースの数を把握し、各リソースのデータ内での位置情報を保持しており、リソースにアクセスできるように用意されている。なお、クロスリファレンステーブル９１０は、先頭に記号“％”が設定されていないため、通常ＰＤＬデータにおけるクロスリファレンステーブルとして扱われる。
【００４３】
トレーラ９１１は、ドキュメント全体の終端であることを示し、クロスリファレンステーブル９１０のデータ全体内での位置情報を保持している。このように、データ９００を通常ＰＤＬデータとして見た場合、トレーラ９１１を起点にして、クロスリファレンステーブル９１０にアクセスし、クロスリファレンステーブル９１０からボディ９０３、９０７にあるリソースにアクセスするという構造になっている。ここで説明したように、拡張ＰＤＬデータ構造は、データを受信する印刷装置側の解釈の仕方次第で通常ＰＤＬとして扱うことが可能であり、更には拡張ＰＤＬデータとして扱うことも可能となる。なお、拡張ＰＤＬデータとして扱う場合には、クロスリファレンステーブル９１０およびトレーラ９１１の処理はスキップするようにしてもよい。
【００４４】
図９に示すように、拡張ＰＤＬデータにおいては、全体としてのヘッダ９０１が配置され、その後に、ページごとに対応するヘッダ、ボディ、クロスリファレンステーブル、およびトレーラが配置される。そして、各ページに対応するデータが配置された後に、拡張ＰＤＬデータ全体に対するクロスリファレンステーブル９１０およびトレーラ９１１が配置される。
【００４５】
［処理フロー］
図５は、本実施形態に係るメインフローチャートである。端末装置１０１におけるＯＳ４０７及びＰＤＬ作成アプリ４０４の処理と、印刷装置１０３、１０４におけるＯＳ４１０及びＰＤＬ処理部４１３の処理を主に説明する。ここでは、印刷データの送信先として、印刷装置１０３を例に挙げて説明する。なお、本実施形態に係る端末装置１０１では記憶部２０７のＲＯＭ領域に格納されたＯＳ４０７及びＰＤＬ作成アプリ４０４がＲＡＭ領域にロードされ、ＣＰＵ２０６にて実施され動作することを基本とする。また、本実施形態に係る印刷装置１０３では、記憶部３０７のＲＯＭ領域に格納されたＯＳ４１０及びＰＤＬ処理部４１３がＲＡＭ領域にロードされＣＰＵ３０６にて実施され動作することを基本とする。図５において、破線矢印は、装置間のデータの送受信を示す。
【００４６】
最初に端末装置１０１の処理を説明する。端末装置１０１の記憶部２０７の中のＲＯＭ領域に格納されたＯＳ４０７がＲＡＭ領域にロードされＣＰＵ２０６にて実行されることにより、本処理が開始される。この後、端末装置１０１上でドキュメント作成アプリ４０１を用いて、所望のドキュメントを作成してもよいし、記憶部２０７に格納されている既存のドキュメントをドキュメント作成アプリ４０１に取り込んでもよい。
【００４７】
Ｓ５０１にて、端末装置１０１は、ＯＳ４０７の機能を用いて印刷指示を行うか、作成済みのドキュメント情報を基にして印刷用のＰＤＬデータの作成指示を行う。端末装置１０１を制御しているＯＳ４０７が印刷機能に対応している場合、ＯＳ４０７がＰＤＬ作成アプリ４０４を呼び出してＰＤＬデータの作成を指示する。ＯＳ４０７が印刷機能に対応していない場合、ＰＤＬ作成アプリ４０４をユーザＩ／Ｆ２０９を用いて個別に起動して印刷用ＰＤＬデータの作成を指示する。
【００４８】
Ｓ５０２にて、端末装置１０１は、ＰＤＬ作成アプリ４０４により、ドキュメント情報を用いてＰＤＬデータを作成する。ＰＤＬ作成アプリ４０４は、図１１の設定画面１１０１で示すような設定画面を表示部２１１に表示する。設定画面１１０１において、形式１１０２は、作成するＰＤＬの形式の選択肢である。ここでは、通常ＰＤＬや拡張ＰＤＬなど所望の形式のＰＤＬをユーザが選択することができる。バージョン１１０３は、選択したＰＤＬ形式に複数のバージョンが有る場合に選択可能となり、ユーザが所望のバージョンを指定することができる。なお、形式１１０２にて選択されたＰＤＬ形式に対応するバージョンが１つしかない場合には、形式１１０２が選択された時点でバージョンが自動的に選択されるようにしてよい。
【００４９】
出力先１１０４は、作成するＰＤＬデータの出力先を選択もしくは指定するための項目である。出力先が、印刷装置１０３である場合は、ＰＤＬデータ作成後に指定された印刷装置１０３への印刷用ＰＤＬデータ送信が自動的に行われる。出力先として、記憶部２０７もしくは外部記憶装置２１０が指定された場合はその場所に印刷用ＰＤＬデータが出力される。開くボタン１１０５は、印刷用ＰＤＬデータの出力先を選択的に選びたい場合にユーザが押下することにより、選択画面（不図示）が表示される。出力ボタン１１０６が押下されると、印刷用ＰＤＬデータ作成が開始される。キヤンセルボタン１１０７が押下されると、印刷用ＰＤＬデータ作成処理が解除され、中止される。
【００５０】
ＰＤＬデータは、設定画面１１０１の形式１１０２で「通常ＰＤＬ」が選択された場合は通常ＰＤＬ形式で作成され、「拡張ＰＤＬ」が選択された場合は拡張ＰＤＬ形式で作成される。ＰＤＬデータは一般的には印刷の元データもしくは印刷データとも呼ばれる。
【００５１】
Ｓ５０３にて、端末装置１０１は、ＯＳ４０７の機能を用いて、作成した印刷用ＰＤＬデータを印刷装置１０３に送信する。印刷用ＰＤＬデータを送信する場合、端末装置１０１は、有線ＮＷ  Ｉ／Ｆ２０２、無線ＮＷ  Ｉ／Ｆ２０３、もしくは近距離無線ＮＷ  Ｉ／Ｆ２０４のいずれかの手段を用いて送信する。なお、設定画面１１０１の出力先１１０４で端末装置１０１の外部記憶装置２１０が指示された場合、外部記憶装置２１０に印刷用ＰＤＬデータを出力した後、Ｓ５０４の処理をスキップし、本処理フローを終了する。
【００５２】
Ｓ５０４にて、端末装置１０１は、ＯＳ４０７により、送信の成功・失敗を監視する。例えば、印刷装置１０３から送信状況の返答が一定期間途絶えた場合、ＯＳ４０７の種別によってはタイムアウトエラーとなり、送信処理を強制的に終了させる。印刷装置１０３から送信完了の返答もしくはエラーの返答があった場合、本処理フローを終了する。
【００５３】
次に印刷装置１０３側の処理を説明する。印刷装置１０３は電源が投入されると記憶部３０７の中のＲＯＭ領域に格納されたＯＳ４１０がＲＡＭ領域にロードされ、ＣＰＵ３０６にて実行されることにより、印刷用ＰＤＬデータの受信状態に移行する。この状態から、Ｓ５１１の処理が開始される。
【００５４】
Ｓ５１１にて、印刷装置１０３は、印刷用ＰＤＬデータの受信待ちを行う。その後、印刷用ＰＤＬデータが、印刷装置１０３の有線ＮＷ  Ｉ／Ｆ３０２、無線ＮＷ  Ｉ／Ｆ３０３、近距離無線ＮＷ  Ｉ／Ｆ３０４、もしくは外部記憶装置３１１から投入されると、印刷装置１０３は、受信した印刷用ＰＤＬデータを取得する。
【００５５】
Ｓ５１２にて、印刷装置１０３は、印刷用ＰＤＬデータの先頭部分を解析する。このとき、印刷装置１０３は、投入された印刷用ＰＤＬデータのＰＤＬ種別が通常ＰＤＬもしくは拡張ＰＤＬかを解析する。データの先頭から、例えば、図８のようにヘッダ８０１、ボディ８０２とデータが続く場合には、印刷装置１０３は、受信した印刷用ＰＤＬデータが通常ＰＤＬであると判定する。また、例えば、データの先頭から図９のようにヘッダ９０１、ヘッダ９０２とデータが続く場合には、印刷装置１０３は、受信した印刷用ＰＤＬデータが拡張ＰＤＬであると判定する。
【００５６】
Ｓ５１３にて、印刷装置１０３は、解析したＰＤＬ種別が通常ＰＤＬか否かを判定する。通常ＰＤＬである場合には（Ｓ５１３にてＹＥＳ）Ｓ５１５に進み、拡張ＰＤＬである場合には（Ｓ５１３にてＮＯ）Ｓ５１４に進む。
【００５７】
Ｓ５１４にて、印刷装置１０３は、拡張ＰＤＬ処理を行う。本処理の詳細については、図７を用いて後述する。その後、印刷装置１０３は、ＰＤＬデータの取得経路に応じて処理結果を端末装置１０１に返し、本処理フローを終了する。本処理フローが終了した場合、印刷装置１０３は、次の印刷用ＰＤＬデータを受信するまで待機状態となる。
【００５８】
Ｓ５１５にて、印刷装置１０３は、通常ＰＤＬ処理を行う。本処理の詳細については、図６を用いて後述する。その後、印刷装置１０３は、ＰＤＬデータの取得経路に応じて処理結果を端末装置１０１に返し、本処理フローを終了する。
【００５９】
（通常ＰＤＬ処理）
図６は、図５のＳ５１５に対応し、Ｓ５１１にて受信した印刷用ＰＤＬデータが通常ＰＤＬである場合の処理である。
【００６０】
Ｓ６０１にて、印刷装置１０３は、印刷用ＰＤＬデータのすべてを取得し、記憶部３０７に格納する。図８を用いて説明したように、通常ＰＤＬデータはトレーラ８０４を起点にして、クロスリファレンステーブル８０３にアクセスし、クロスリファレンステーブル８０３からボディ８０２にあるリソースにアクセスするという構造になっている。そのため、印刷処理を行うためには、印刷用ＰＤＬデータのすべてが記憶部３０７に格納できている必要がある。
【００６１】
Ｓ６０２にて、印刷装置１０３は、ＰＤＬデータを受信が成功したか否かを判定する。受信が失敗した場合とは、例えば、記憶部３０７がオーバーフローを起こして受信に失敗した場合や、その他、何らかの別の原因で受信に失敗した場合などが挙げられる。受信に成功した場合は（Ｓ６０２にてＹＥＳ）Ｓ６０４へ進み、受信に失敗した場合には（Ｓ６０２にてＮＯ）Ｓ６０３へ進む。
【００６２】
Ｓ６０３にて、印刷装置１０３は、印刷用ＰＤＬデータを受信した経路が有線ＮＷ  Ｉ／Ｆ３０２、無線ＮＷ  Ｉ／Ｆ３０３、もしくは近距離無線ＮＷ  Ｉ／Ｆ３０４かである場合、そのＩ／Ｆに応じた受信失敗返信をＰＤＬデータの送信元に返答する。一方、印刷用ＰＤＬデータを取得した経路が、例えばＵＳＢメモリに代表される外部記憶装置３１１である場合には、印刷装置１０３は、何も返答しない。その後、本処理フローを終了する。
【００６３】
Ｓ６０４にて、印刷装置１０３は、印刷用ＰＤＬデータを受信した経路が有線ＮＷ  Ｉ／Ｆ３０２、無線ＮＷ  Ｉ／Ｆ３０３、もしくは近距離無線ＮＷ  Ｉ／Ｆ３０４である場合、そのＩ／Ｆに応じた受信完了返信をＰＤＬデータの送信元に返答する。一方、印刷用ＰＤＬデータを取得した経路が、例えばＵＳＢメモリに代表される外部記憶装置３１１である場合には、印刷装置１０３は、何も返答しない。
【００６４】
Ｓ６０５にて、印刷装置１０３は、受信した印刷用ＰＤＬデータ、つまり、通常ＰＤＬデータを先頭ページから順番にレンダリング（画像情報化）し、それによって生成された画像データを印刷部３１４により印刷する。複数ページで構成される場合には、印刷装置１０３は、複数ページを印刷する。そして、本処理フローを終了する。
【００６５】
（拡張ＰＤＬ処理）
図７は、図５のＳ５１４に対応し、Ｓ５１１にて受信した印刷用ＰＤＬデータが拡張ＰＤＬデータである場合の処理である。
【００６６】
Ｓ７０１にて、印刷装置１０３は、拡張ＰＤＬデータのページ区切りまでを受信する。図９を用いて説明したように、拡張ＰＤＬデータは１ページ毎にヘッダ、ボディ、クロスリファレンステーブル、及びトレーラを保持している。従って、印刷装置１０３は、まず、印刷用ＰＤＬデータの先頭であるヘッダ９０１から、１ページ目のトレーラ９０５までのデータを受信する。この時、印刷装置１０３は、ヘッダ９０２に埋め込まれたジョブＩＤ（ヘッダ９０２の場合、ジョブＩＤは“ＡＢＣＤＥ”）を把握する。そして、印刷装置１０３は、このジョブＩＤの終了（“Ｅｎｄ”）を受信するか、処理中の印刷用ＰＤＬデータに関する拡張ＰＤＬ処理が終了するまでは、異なった印刷用ＰＤＬデータが送信されてきても受信を拒否する。これにより、１つの印刷用ＰＤＬデータの途中に他の印刷用ＰＤＬデータのページが混在してしまうことを未然に防ぐ。
【００６７】
Ｓ７０２にて、印刷装置１０３は、印刷用ＰＤＬデータの受信が成功したが否かを判定する。受信が失敗した場合とは、例えば、記憶部３０７がオーバーフローを起こして受信に失敗した場合や、その他、何らかの別の原因で受信に失敗した場合などが挙げられる。受信に成功した場合は（Ｓ７０２にてＹＥＳ）Ｓ７０３へ進み、受信に失敗した場合には（Ｓ７０２にてＮＯ）Ｓ７０９に進む。
【００６８】
Ｓ７０３にて、印刷装置１０３は、印刷用ＰＤＬデータを受信した経路が有線ＮＷ  Ｉ／Ｆ３０２、無線ＮＷ  Ｉ／Ｆ３０３、もしくは近距離無線ＮＷ  Ｉ／Ｆ３０４である場合、印刷用ＰＤＬデータの送信元である端末装置１０１に対して次のパケット送信要求を出すことを一時中断する。これにより、印刷装置１０３は、受信処理を一時的に中断する。一方、印刷用ＰＤＬデータを取得した経路が、例えばＵＳＢメモリに代表される外部記憶装置３１１である場合には、データの記憶部３０７への取り込みを一時中断することで受信処理を一時中断する。
【００６９】
Ｓ７０４にて、印刷装置１０３は、記憶部３０７に格納した１ページ分のヘッダ、ボディ、クロスリファレンステーブル、およびトレーラを用いてレンダリング（画像情報化）を行い、１ページ分のビットマップ形式の画像データ（以下、ページＢＭＰ）を作成する。
【００７０】
Ｓ７０５にて、印刷装置１０３は、作成したページＢＭＰを用いて印刷部３１４により印刷を行う。
【００７１】
Ｓ７０６にて、印刷装置１０３は、受信済みのトレーラを解析して後続ページがあるか否かの判定を行う。ここでのトレーラは、１ページ目であればトレーラ９０５であり、２ページ目であればトレーラ９０９となる。後続ページがある場合には、トレーラの終端にて“ＥＯＦ”が示され、後続ページが無い場合には、トレーラの終端にて“Ｅｎｄ”が示される。後続ページがある場合は（Ｓ７０６にてＹＥＳ）Ｓ７０７に進み、後続ページが無い場合には（Ｓ７０６にてＮＯ）Ｓ７０８に進む。
【００７２】
Ｓ７０７にて、印刷装置１０３は、一時中止していた受信処理を再開する。そして、印刷装置１０３は、次の拡張ＰＤＬデータのページ区切りまでを受信する。例えば、次のページが、図９に示す２ページ目の処理であれば、ヘッダ９０６からトレーラ９０９までを受信して、Ｓ７０２に戻り処理を繰り返す。
【００７３】
Ｓ７０８にて、印刷装置１０３は、印刷用ＰＤＬデータを受信した経路が有線ＮＷ  Ｉ／Ｆ３０２、無線ＮＷ  Ｉ／Ｆ３０３、もしくは近距離無線ＮＷＩ／Ｆ３０４である場合、そのＩ／Ｆに応じた受信完了返信を印刷用ＰＤＬデータの送信元に返答する。一方、印刷用ＰＤＬデータを取得した経路が、例えばＵＳＢメモリに代表される外部記憶装置３１１である場合には、印刷装置１０３は、何も返答しない。その後、本処理を終了する。
【００７４】
Ｓ７０９にて、印刷装置１０３は、印刷用ＰＤＬデータを受信した経路が有線ＮＷ  Ｉ／Ｆ３０２、無線ＮＷ  Ｉ／Ｆ３０３、もしくは近距離無線ＮＷＩ／Ｆ３０４である場合、そのＩ／Ｆに応じた受信失敗返信を印刷用ＰＤＬデータの送信元に返答する。一方、印刷用ＰＤＬデータを取得した経路が、例えばＵＳＢメモリに代表される外部記憶装置３１１である場合には、印刷装置１０３は、何も返答しない。その後、本処理を終了する。
【００７５】
以上、本願発明では、１ページ分のヘッダ、ボディ、クロスリファレンステーブル、トレーラを受信しては受信処理を一時中断して当該ページの印刷を行う。そして、印刷完了後に、後続の１ページ分のヘッダ、ボディ、クロスリファレンステーブル、トレーラの受信を再開し、ページごとに受信、中断、印刷を繰り返し行うことで印刷用ＰＤＬデータの印刷を行う。このように受信するデータが１ページ毎であるため、ＰＤＬデータ全体を印刷装置に受信してからでないと印刷が開始できないという問題が解消でき、かつ、全ページのデータを受信せずとも１ページ分のデータ受信後に印刷が開始できる。その結果、先頭ページが排紙されるまでの時間短縮も可能となる。
【００７６】
＜第二の実施形態＞
本願発明の第二の実施形態について説明する。携帯装置のＯＳの仕様などによっては、ＰＤＬデータのデータ転送を中断することが望ましくない場合がある。そこで、本実施形態では、拡張ＰＤＬデータの処理を行う際に、データ転送を中断しない構成について説明する。なお、図５と図６の処理フローは第一の実施形態と同様であるとし、ここでの説明は省略する。本実施形態に係る拡張ＰＤＰ処理の詳細を、図１０を用いて説明する。
【００７７】
図１０は、図５のＳ５１４に対応し、Ｓ５１１にて受信した印刷用ＰＤＬデータが拡張ＰＤＬデータであった場合の処理である。
【００７８】
Ｓ１００１にて、印刷装置１０３は、拡張ＰＤＬデータのページ区切りまでを受信する。図９を用いて説明したように、拡張ＰＤＬデータは１ページ毎にヘッダ、ボディ、クロスリファレンステーブル、及びトレーラを保持している。従って、印刷装置１０３は、まず、印刷用ＰＤＬデータの先頭であるヘッダ９０１から、１ページ目のトレーラ９０５までのデータを受信する。
【００７９】
Ｓ１００２にて、印刷装置１０３は、印刷用ＰＤＬデータの受信が成功したか否か判定する。受信が失敗した場合とは、例えば、記憶部３０７がオーバーフローを起こして受信に失敗した場合や、その他、何らかの別の原因で受信に失敗した場合などが挙げられる。受信に成功した場合は（Ｓ１００２にてＹＥＳ）Ｓ１００３に進み、受信に失敗した場合には（Ｓ１００２にてＮＯ）Ｓ１０１２に進む。
【００８０】
Ｓ１００３にて、印刷装置１０３は、受信したトレーラ９０５の終端を確認し、後続ページがあるか否かを判定する。後続ページがある場合には（Ｓ１００３にてＹＥＳ）Ｓ１００４に進み、後続ページが無い場合には（Ｓ１００３にてＮＯ）Ｓ１０１２に進む。
【００８１】
Ｓ１００４にて、印刷装置１０３は、データの受信先を遅延バッファに切り替える処理を行う。本実施形態において、遅延バッファとは、記憶部３０７の一部の記憶領域を割り当てたものであり、通常の印刷用ＰＤＬデータを受信する記憶部３０７とは独立して管理される記憶領域を指す。なお、記憶部３０７とは物理的に異なる記憶部（例えば、ＲＡＭ）を設けてもよい。便宜上、遅延バッファに対して、切り替え前のデータを受信する際の記憶部３０７の領域を受信バッファと称する。
【００８２】
Ｓ１００５にて、印刷装置１０３は、印刷用ＰＤＬデータのデータ受信レートを低下させて、端末装置１０１からのデータ受信を中断することなく継続する。例えば、印刷装置１０３が、印刷用ＰＤＬデータの送信元である端末装置１０１に対して、次のデータパケット送信要求を出す間隔を、タイマー等を用いて遅らせる。これにより、端末装置１０１から印刷装置１０３に対するデータ受信レートを下げることができる。なお、データ受信レートを下げることにより、遅延バッファのために割り当てる記憶部３０７のサイズを小さく抑えることも可能となる。ここで下げた際のデータ受信レートは、遅延バッファの容量、印刷部の処理能力、ネットワーク状況などに応じて任意に設定してもよい。また、通常時のデータの転送レートについても、記憶部３０７の容量などから決定してもよい。また、印刷用ＰＤＬデータの取得元がＵＳＢメモリ等の外部記憶装置３１１である場合でも、データの取得レートを下げるようにしてもよい。
【００８３】
Ｓ１００６にて、印刷装置１０３は、記憶部３０７の中の遅延バッファではない領域に受信した１ページ分のヘッダ、ボディ、クロスリファレンステーブル、およびトレーラを用いてレンダリング（画像情報化）を行い、ページＢＭＰを作成する。なお、記憶部３０７に保持されたページのレンダリング（画像情報化）処理と、遅延バッファへの次のページに対応するデータの受信処理とは同時に平行して処理される。
【００８４】
Ｓ１００７にて、印刷装置１０３は、作成したページＢＭＰを用いて印刷部３１４により印刷を行う。ここで印刷される印刷物は１ページ分である。
【００８５】
Ｓ１００８にて、印刷装置１０３は、この時点までに遅延バッファに受信した印刷用ＰＤＬデータを記憶部３０７の受信バッファに移動させる。
【００８６】
Ｓ１００９にて、印刷装置１０３は、印刷用ＰＤＬデータの送信元である端末装置１０１からのデータ受信先を記憶部３０７の受信バッファに戻す。
【００８７】
Ｓ１０１０にて、印刷装置１０３は、印刷用ＰＤＬデータの送信元である端末装置１０１からのデータ受信レートを、Ｓ１００５にて下げたレートから元のレートに戻し、受信処理を継続する。
【００８８】
ここで受信バッファと遅延バッファの動きを補足する。受信バッファは、ＰＬＤデータを受信して、レンダリング処理のための元データを提供する目的で利用される。これに対して、遅延バッファは、レンダリング中でもデータ受信処理を中断させないための受信バッファとして機能する。理想的には、遅延バッファは、受信バッファと同じサイズの容量があることが好ましいが、印刷装置の製造コストを極力上げないことを考慮すると、遅延バッファのサイズは抑えた方が好ましい。そこで、遅延バッファの容量を小さくすると同時にデータ受信レートを下げることにより、短時間で遅延バッファをオーバーフローさせないように動作させる。遅延バッファにＰＤＬデータを受信している間に受信バッファに格納されているＰＤＬデータのレンダリング処理が完了し、受信バッファが空きとなれば、遅延バッファのデータを受信バッファに移動させる。更に、後続のＰＤＬデータを受信バッファに受信して処理を継続する。
【００８９】
Ｓ１０１１にて、印刷装置１０３は、次の拡張ＰＤＬデータのページ区切り、すなわち、トレーラまでを受信する。そして、Ｓ１００２に戻り、処理を繰り返す。
【００９０】
Ｓ１０１２にて、印刷装置１０３は、記憶部３０７の中の受信バッファに受信した１ページ分のヘッダ、ボディ、クロスリファレンステーブル、およびトレーラを用いてレンダリング（画像情報化）を行い、ページＢＭＰを作成する。なお、この時点では後続ページが無いことが確定しているため、Ｓ１００６の処理とは異なり、受信処理は平行して行われていない。
【００９１】
Ｓ１０１３にて、印刷装置１０３は、作成したページＢＭＰを用いて印刷部３１４により印刷を行う。ここで印刷される印刷物は、最後の１ページ分である。
【００９２】
Ｓ１０１４にて、印刷装置１０３は、印刷用ＰＤＬデータを受信した経路が有線ＮＷ  Ｉ／Ｆ３０２、無線ＮＷ  Ｉ／Ｆ３０３、もしくは近距離無線ＮＷ  Ｉ／Ｆ３０４である場合、そのＩ／Ｆに応じた受信完了返信を印刷用ＰＤＬデータの送信元に返答する。一方、印刷用ＰＤＬデータを取得した経路が、例えばＵＳＢメモリに代表される外部記憶装置３１１である場合には、印刷装置１０３は、何も返答しない。その後、本処理を終了する。
【００９３】
Ｓ１０１５にて、印刷装置１０３は、印刷用ＰＤＬデータを受信した経路が有線ＮＷ  Ｉ／Ｆ３０２、無線ＮＷ  Ｉ／Ｆ３０３、もしくは近距離無線ＮＷＩ／Ｆ３０４である場合、そのＩ／Ｆに応じた受信失敗返信を印刷用ＰＤＬデータの送信元に返答する。一方、印刷用ＰＤＬデータを取得した経路が、例えばＵＳＢメモリに代表される外部記憶装置３１１である場合には、印刷装置１０３は、何も返答しない。その後、本処理を終了する。
【００９４】
以上、本実施形態では、端末装置から印刷装置へのデータ転送が一時中断されることなく継続されたままとなる。これにより、第一の実施形態により得られる効果に加えて、例えば、端末装置でデータの転送状況を監視して、転送が中断した場合に通信エラーを発生させるようなＯＳである場合にも、エラーを発生させることなくデータ転送が可能となる。
【００９５】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００９６】
１０１：端末装置、１０２：アクセスポイント、１０３，１０４：印刷装置、１０５：ＵＳＢメモリ、４０１ドキュメント作成アプリ、４０４：ＰＤＬ作成アプリ、４１３：ＰＤＬ処理部
【図１】
2017073002.tif 000003
【図２】
2017073002.tif 000004
【図３】
2017073002.tif 000005
【図４】
2017073002.tif 000006
【図５】
2017073002.tif 000007
【図６】
2017073002.tif 000008
【図７】
2017073002.tif 000009
【図８】
2017073002.tif 000010
【図９】
2017073002.tif 000011
【図１０】
2017073002.tif 000012
【図１１】
2017073002.tif 000013