(57)【特許請求の範囲】
【請求項１】
文書データを端末装置が解釈できる記述言語である記述言語データに編集する編集部と、
予め設定されたコマンドを変換するための変換表と、
前記変換表に基づいて、前記記述言語データの一部を抽出データとして抽出する抽出部と、
前記抽出データを前記変換表に基づき前記抽出データよりも処理負荷の低い変換データに変換する変換部と、
前記記述言語データに前記変換データをコメント形式で付加して送信データを生成する生成部と、
前記送信データに含まれるデータの量を表すデータサイズを記録する計数部と、
前記データサイズに基づき前記送信データに付加されたコメント形式の変換データの一部を除去する除去部と、
前記送信データを送信する送信部とを備えることを特徴とする画像処理装置。
【請求項２】
送信データを受信する受信部と、
前記送信データからコメント形式で記述されたデータを、抽出データとして抽出する抽出部と、
前記抽出データと対応する前記送信データの一部を置換して置換データを生成する置換部と、
前記置換データに基づいて展開処理を行い展開データを生成する展開部と、
前記展開データを印刷する印刷制御部とを備えることを特徴とする画像形成装置。
【請求項３】
請求項１記載の画像処理装置と請求項２記載の画像形成装置からなり、前記画像処理装置によりコメント形式で付加されたデータは、前記画像形成装置で解釈できることを特徴とする印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は印刷データを生成する画像処理装置、画像形成装置および印刷システムに関するものである。
【背景技術】
【０００２】
画像処理装置としてのプリンタは、上位装置としてホストコンピュータのアプリケーションプログラム上で作成された画像データに基づいて印刷処理を行う。この印刷処理方法の１つとして、ホストコンピュータで送信すべきデータをプリンタドライバによりプリンタで解釈可能なページ記述言語（ＰＤＬ：Page Description Language）データ又はこれに準じる中間言語に変換し、該データをプリンタへ送信し、該データを受信したプリンタでビットマップデータに展開した後、該ビットマップデータに基づいて印刷処理を行う方法が知られている（例えば、特許文献１参照。）。
【０００３】
一般的に、印刷装置が有する画像処理機能は、PDLインタプリタが、印刷データ（入力データ）内のPDLコマンドにより記述されたグラフィックオブジェクトに対し、構文解析（パース）処理が行なわれ、解析結果から、グラフィクオブジェクトに必要なグラフィック情報を1つにまとめたディスプレイリスト(DL)に変換し、変換後のディスプレイリストを基にラスタイメージ（ビットマップイメージ）を生成する描画（ページレンダリング）処理を行うことで、印刷装置が搭載するプリンタエンジンが印刷を行うデータ形式であるビットマップイメージ等を生成している。
【０００４】
【特許文献１】特開２００５−３０１３９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、ページ記述言語データをホストコンピュータからプリンタへ伝送する場合、データ量が少なくデータ転送時間が短縮するものの、ページ記述言語データを処理してビットマップ等の展開などをプリンタで行う必要があり、この展開処理に多くの時間が必要であり、上記構成のシステムでは全てプリンタ上で負担しなければならず、印刷に時間がかかる場合があった。
【０００６】
そこで、本発明は上述の技術的な課題に鑑み、データを印刷装置などの画像形成装置に転送して画像形成を行う場合において、高速なデータ処理を実現するような画像処理装置、画像形成装置、及び印刷システムの提供を目的とする。
【課題を解決するための手段】
【０００７】
上述の技術的な課題を解決するため、本発明の画像処理装置は、文書データを端末装置が解釈できる記述言語である記述言語データに編集する編集部と、予め設定されたコマンドを変換するための変換表と、前記変換表に基づいて、前記記述言語データの一部を抽出データとして抽出する抽出部と、前記抽出データを前記変換表に基づき前記抽出データよりも処理負荷の低い変換データに変換する変換部と、前記記述言語データに前記変換データをコメント形式で付加して送信データを生成する生成部と、前記送信データに含まれるデータの量を表すデータサイズを記録する計数部と、前記データサイズに基づき前記送信データに付加されたコメント形式の変換データの一部を除去する除去部と、前記送信データを送信する送信部とを備えることを特徴とする。
【０００８】
また、前記画像処理装置のデータ受信側の構成である本発明の画像形成装置は、送信データを受信する受信部と、前記送信データからコメント形式で記述されたデータを、抽出データとして抽出する抽出部と、前記抽出データと対応する前記送信データの一部を置換して置換データを生成する置換部と、前記置換データに基づいて展開処理を行い展開データを生成する展開部と、前記展開データを印刷する印刷制御部とを備えることを特徴とする。
【０００９】
さらに、本発明の印刷システムは、前記画像処理装置と前記画像形成装置からなり、前記画像処理装置によりコメント形式で付加されたデータは、前記画像形成装置で解釈できることを特徴とする。
【発明の効果】
【００１０】
本発明の画像処理装置と画像形成装置によれば、画像形成装置における処理速度を短縮できるという効果があり、従来に比べて画像処理装置側の負担は増えるものの、それを上回って画像形成装置側の処理速度を高速化させることができ、全体の処理時間を従来の印刷システムと比較して短縮化することができる。また、画像形成装置側のデータ処理の負担を軽減できることから、例えば画像形成装置側のCPUの動作速度に対する要求は軽減されることになり、高速動作のための高価なハードウエアなどは不要になると言う利点も得られることになる。
【００１１】
また、本発明の画像処理装置と画像形成装置によれば、コメントの除去処理に必要な時間と、展開処理に必要な時間が増加するが送信時間を短縮することで全体の処理時間を短縮することが実現できることになる。
【発明を実施するための最良の形態】
【００１２】
[第１の実施形態]
図１は本発明の第１の実施形態の印刷システムを示すブロック図であり、画像処理装置として機能するホストＰＣ（Personal Computer）１００および画像形成装置として機能するプリンタ２００により構成され、これらホストＰＣ１００とプリンタ２００の間は、プリンタケーブル若しくはLAN（Local Area Network）ケーブルなどの有線手段またはワイヤレス通信手段などによって接続されている。
【００１３】
ホストＰＣ１００は、所定のプログラムからなるアプリケーション１１０、ＯＳ(Operating System)１２０、及びプリンタドライバ１３０により構成され、これらはハードディスクなどの記憶装置から主記憶装置にロードされ、図示しないCPU(Central Processing Unit)により実行されるプログラムに対応して信号処理手段として動作する。アプリケーション１１０は、例えば文書や画像の作成や編集、閲覧、印刷指示などを行うためのプログラムであり、使用者が図示しないマウスやキーボードなどの入力手段を用いて操作できるものである。アプリケーション１１０により例えば文書データの印刷指示が行われると、ＯＳ１２０によりスプールファイルが作成され、プリンタドライバ１３０によりスプールファイルをプリンタ２００で印字可能なＰＤＬ(Page Description Language)に変換しプリンタ２００へと送信される。
【００１４】
プリンタドライバ１３０は、ＯＳ１２０からスプールファイルを受信するスプール受信部１３１と、受信したスプールファイルからプリンタ２００で解釈可能なＰＤＬを構成するＰＤＬ命令の列を作成するＰＤＬ編集部１３２と、ＰＤＬ編集部１３２によって作成された各ＰＤＬ命令のうち他のＰＤＬ命令に変換可能なものを抽出する変換命令抽出部１３３と、変換命令抽出部１３３により参照される変換可能なＰＤＬ命令と変換処理の組を記述した変換テーブル１３４と、抽出されたＰＤＬ命令を他のＰＤＬ命令に変換する命令変換部１３５と、ＰＤＬ編集部１３２によって編集されたＰＤＬ命令の列に変換部１３５で変換されたＰＤＬ命令をコメント形式で付加しプリンタ２００に送信するＰＤＬを作成する送信ＰＤＬ生成部１３６と、送信ＰＤＬをプリンタ２００へ送信するＰＤＬ送信部１３７からなる。
【００１５】
ここで、ＰＤＬ編集部１３２は、スプールファイルに含まれるデータにおいて、まだ処理を行っていないスプールデータから処理対象とするスプールデータを選択し、第１のＰＤＬ命令を生成する機能を有している。第１のＰＤＬ命令は、後述するＸＰＳ(XML Paper Specification)で記述された命令であり、例えばベジェ曲線を描画する命令もそのまま含む命令である。変換命令抽出部１３３は、他の命令に変換する所定の命令を抽出する機能を有しており、どの命令を抽出するかは、変換テーブル１３４を参照して決定される。変換テーブル１３４は、変換すべき命令の組を記憶した記憶部であり、変換対象となる命令としては、仮に印刷装置側で処理した場合には時間が長くなるような命令の組を選択して記憶する。
【００１６】
命令変換部１３５は、変換テーブル１３４に記憶されていた変換のパターンに従って命令を変換する機能を有しており、例えばべジェ曲線を描画する命令は多数の直線を描画する命令に置き換えられて処理される。送信ＰＤＬ生成部１３６は、後述するように、第２のＰＤＬ命令および第２のＰＤＬ命令が含まれていることを示す識別フラグが、コメント形式として送信ＰＤＬに追加する機能を有しており、ＰＤＬ編集部１３２から送信された元の第１のＰＤＬ命令に、識別フラグと、命令変換部１３５で処理された内容を付加する。このとき命令変換部１３５で変換処理された内容には、その前後にコメント文である旨を意味するコメント開始部とコメント終了部が付加され、表記上ＰＤＬの要素としては後続の機器には直接認識されない状態で、送信ＰＤＬが出力される。
【００１７】
プリンタ２００は、ホストＰＣ１００のプリンタドライバ１３０から送信されたＰＤＬを受信ＰＤＬとして受信するＰＤＬ受信部２０１と、受信ＰＤＬに含まれているコメントから命令変換部１３５により変換されたＰＤＬ命令である変換ＰＤＬを抽出する変換ＰＤＬ抽出部２０２と、変換ＰＤＬ命令を本来のＰＤＬ命令と置き換えるＰＤＬ置換部２０３と、ＰＤＬ命令を展開するＰＤＬ展開部２０４と、変換ＰＤＬ抽出部２０２とＰＤＬ置換部２０３とＰＤＬ展開部２０４を制御し印刷画像を生成する印刷制御部２０５と、印刷制御部２０５からの印刷結果を出力する印刷結果出力部２０６からなる。
【００１８】
変換ＰＤＬ抽出部２０２は、第２のＰＤＬ命令が含まれていることを示す識別フラグが含まれている場合に、受信ＰＤＬに含まれているコメントから命令変換部１３５により変換されたＰＤＬ命令である変換ＰＤＬを抽出する機能を有しており、コメント文である旨を意味するコメント開始部とコメント終了部の間のデータを変換されていた命令として抽出する機能を有する。ＰＤＬ置換部２０３は、変換ＰＤＬ命令を本来のＰＤＬ命令と置き換える機能を有しており、変換ＰＤＬ抽出部２０２で抽出された命令変換部１３５で変換された命令を元の命令に対して置換する。ＰＤＬ展開部２０４は、送信されてきたＰＤＬ及びＰＤＬ置換部２０３によって置換されたＰＤＬを展開し、ＣＰＵからなる印刷制御部２０５での画像の生成のための信号を送る。印刷結果出力部２０６は、例えば電子写真方式の印刷機構部であり、感光ドラムなどの像担持体の周囲に露光装置、現像装置を備え、搬送されてきた用紙に転写して定着させる機構を有している。
【００１９】
ここで、本実施形態の印刷システムでは、ＰＤＬの例としてＭｉｃｒｏｓｏｆｔ社のＸＰＳを用いる。OS１２０として例えばWindows（登録商標） Vista（製品名）などをホストＰＣ１００にインストールした場合では、XPS ドキュメント形式が利用され、このXPSが、プリンタ用のドキュメント形式、Windows（登録商標）（製品名）スプール ファイル形式、およびページ記述言語 (PDL) として使用できる。ＸＰＳでは、ページを構成する要素の定義にＸＭＬ(eXtensible Markup Language)を採用している。広く知られているようにＸＭＬは、複数の要素と属性を組み合わせることによって階層的な構造を記述することが可能な言語であり、ＸＰＳにおいては要素が描画命令、属性が描画命令のパラメータに対応する。実際のＸＰＳでは、ページの内容を記述したマークアップデータ、フォントやイメージなどのリソースデータ、文書内のページ間の関係を記述したメタデータなどの複数のファイルをパッケージングした構造になっているが、本発明では特にマークアップデータでの処理が重要であり、以降ではＸＰＳマークアップをＰＤＬと同義のものとして説明する。
【００２０】
また図４と図５を参照して、文書データとＸＰＳマークアップの関係を説明する。図４はホストＰＣ１００のアプリケーション１１０において取り扱われた文書データの例であり、一対の垂直に延長された直線と一対のベジェ曲線からなる図形を示している。この図４の図形を含む文書データを対応するＸＰＳマークアップに記述した内容を図５に示す。図５に示すように、ＸＰＳマークアップでは、一対の直線に対応し"PolyLineSegment Points=..."の要素が記述され、一対のベジェ曲線に対応して"PolyBezierSegment Points=...."の要素が記述されている。このような文書データからＸＰＳマークアップへの変換は、後述するようにプリンタドライバ１３０のPDL編集部１３２で使用者からの印刷指示に応じて行われている。
【００２１】
本実施形態で用いられているＸＰＳの要素と属性について、図６を参照して説明する。ＸＰＳでは印刷内容をデータ化するため、それぞれの要素と属性からなる命令の組を構成しており、例えば図６に示すような、要素とそれに対応する属性が選択されて、印刷すべき文書のＰＤＬを構成する。なお、図６においては、要素として、FixedPage, Path, PathData, PathGeometry, PathFigure, PolyLineSegment, PolyBezierSegment, PolyQuadraticBeizerSegment, ArcSegmentについて例示しているが、これらは印刷データを構成する要素の一部を示しているにすぎず、実際に使用される要素は、これらの要素に限定されるものではない。
【００２２】
次に、本実施形態のホストＰＣ１００とプリンタ２００における動作について説明する。初めにホストＰＣ１００におけるプリンタドライバ１３０の動作について図２を参照して説明する。図２は、ホストＰＣ１００において、プリンタドライバ１３０がスプールファイルを処理する際の動作を説明したフローである。
【００２３】
まず、使用者がアプリケーション１１０を図示しないマウスやキーボードを操作して印刷を実行するように操作することで、ＯＳ１２０からスプール受信部１３１においてスプールファイルが受信される（Ｓ１００）。
【００２４】
スプールファイルに含まれるデータにおいて、まだ処理を行っていないスプールデータから処理対象とするスプールデータをＰＤＬ編集部１３２において選択し（Ｓ１１０）、第１のＰＤＬ命令を生成する（Ｓ１２０）。この際、例えば、先の図４に示した一対のベジェ曲線と一対の直線で囲まれた図形の描画を含む文書の場合には、図８に示すスクリーン１１の如き第１のＰＤＬ命令の組が生成される。このＰＤＬ命令には、図５に示した命令の組と同じの命令の組が含まれており、一対の直線に対応し"PolyLineSegment Points=..."の要素が記述され、一対のベジェ曲線に対応して"PolyBezierSegment Points=...."の要素が記述されている。
【００２５】
ＰＤＬ編集部１３２は、ＰＤＬ命令ごとに処理を進めるように制御されており、ＰＤＬ編集部１３２から変換命令抽出部１３３に第１のＰＤＬ命令が通知されると、変換命令抽出部１３３では、この第１のＰＤＬ命令について変換テーブル１３４の内容と照会する（Ｓ１３０）。もし第１のＰＤＬ命令が前記変換テーブル１３４に存在していた場合、変換テーブル１３４に記述された内容に従い、第１のＰＤＬ命令を変換した第２のＰＤＬ命令を命令変換部１３５により生成する（Ｓ１４０）。
【００２６】
ここで変換テーブルの例を図７に示す。変換テーブルの第１列は変換を行う変換対象命令であるＰＤＬ命令を、第２列はその変換処理を表している。例えば図８のＸＰＳマークアップでは、ベジェ曲線分を描画する命令PolyBezierSegmentを含んでおり、この場合、図７の第１行に従い直線分を描画する命令である直線近似のためのPolyLineSegmentへと変換される。この変換がプリンタドライバ１３０の命令変換部１３５により実行され、図８に示すスクリーン１２のように、例えば６２個の属性データを含む複数の直線の組み合わせからなるPolyLineSegmentのＰＤＬ命令に変換される。この命令PolyBezierSegmentから命令PolyLineSegmentへの変換が第１のＰＤＬ命令から第２のＰＤＬ命令の変換とされる。このベジェ曲線から複数の直線への変換処理には、ホストＰＣ１００の命令変換部１３５におけるリソースが用いられるが、ホストＰＣ１００側ではプリンタ２００側よりも通常、高速な演算処理が可能であり、プリンタ側で処理する場合に比べて高速な処理が可能である。
【００２７】
次に、送信ＰＤＬ生成部１３６において、第２のＰＤＬ命令および識別フラグが送信ＰＤＬに追加される。特に命令変換部１３５により生成された第２のＰＤＬ命令と第２のＰＤＬ命令が含まれていることを示す識別フラグは、送信ＰＤＬ生成部１３６においてコメント形式として送信ＰＤＬに追加される（Ｓ１５０）。このコメント形式への変換の例を図９に示す。ＸＰＳにおいては、コメント開始部“＜！−−”とコメント終了部“−−＞”に囲まれた部分がコメントとみなされる。従って、図９のスクリーン１３のように、予め決められた文字列(XPS_ALTERNATIVE_ELEMENT)をコメントの先頭に追加して、識別フラグとして機能させ、同じコメント文内に識別フラグに続いて変換された第２のＰＤＬ命令を配置させる。識別フラグは、コメント内部のＰＤＬ命令が第２のＰＤＬ命令であることを認識可能な形態であればどのようなものでもよく、他の形式であっても良い。
【００２８】
照会結果（Ｓ１３０）に拘らず、即ち、第２のＰＤＬ命令の生成の有無を問わず、第１のＰＤＬ命令が送信ＰＤＬ生成部によって送信ＰＤＬに追加される（Ｓ１６０）。第２のＰＤＬ命令はコメント形式で挿入されていることから、マークアップ言語として見た場合には、通常は特にＰＤＬ命令自体が挿入されているものとは認識されないフォーマットになっており、例えば、第２のＰＤＬ命令による高速処理に対応していないプリンタで印刷を実行させる場合にも、そのままの第１のＰＤＬ命令からなるデータで処理されることになり、種々のプリンタに対する互換性も確保している。
【００２９】
未処理のデータがある場合は、スプールデータの処理を繰り返す（Ｓ１７０）。そして、全てのスプールデータを処理すると、ＰＤＬ送信部１３７により送信ＰＤＬがプリンタに送信される（Ｓ１８０）。図８のスクリーン１１のＰＤＬを上記フローに基づき処理した結果得られる送信ＰＤＬを図１０に示す。図１０に示すＰＤＬ命令は、最終的にホストＰＣ１００から出力されるＰＤＬ命令の例であり、図８のスクリーン１１の各命令を処理した例である。第１のＰＤＬ命令の群には、２箇所にベジェ曲線に対応したPolyBezierSegmentの命令が存在するが、それらの直前部分にコメント形式で、識別フラグと第２のＰＤＬ命令が挿入されていることが分かる。本実施形態では、ホストＰＣ１００から送信される段階で、このような第２のＰＤＬ命令を含む形式にされる。
【００３０】
次に、本実施形態におけるプリンタ２００側の動作について説明する。図３は、プリンタ２００において印刷を行う際の動作を説明したフローである。
【００３１】
印刷を行う際には、まず、ＰＤＬ受信部２０１においてホストＰＣ１００からのＰＤＬを受信する（Ｓ２００）。印刷制御部２０５において、まだ処理を行っていないＰＤＬ命令を選択し（Ｓ２１０）、選択したＰＤＬ命令の直前にコメントが含まれているかの確認をする（Ｓ２２０）。確認した結果、選択したＰＤＬ命令の直前にコメントが含まれていない場合には、第２のＰＤＬ命令への変換がなかったものとして、ステップＳ２６０まで進む。Ｓ２２０で選択したＰＤＬ命令の直前にコメントが含まれているかの確認をした結果、コメントが存在する場合には、次にコメント内に識別フラグが存在しているかの確認を行う（Ｓ２３０）。
【００３２】
コメント内に識別フラグが存在していない場合には、変換処理とは無関係のコメント文であったと判断され（Ｓ２３０）、ステップＳ２６０まで進む。一方、識別フラグを含むコメントが存在している場合には、以下の手順でＰＤＬ命令の置換を行う。まず、変換ＰＤＬ抽出部２０２によってコメント内に含まれているＰＤＬ命令の抽出を行う（Ｓ２４０）。この時の動作について、図１１を参照して説明すると、送信されてきたデータは（ａ）のように、PolyBezierSegment命令の直前にコメント文が存在しており、また、識別フラグとなる文字列XPS_ALTERNATIVE_ELEMENTが存在している。このコメント文を図１１の（ｂ）のように抽出し、そこでコメントタグ（“＜！−−”と “−−＞”）、識別フラグ（XPS_ALTERNATIVE_ELEMENT）、および変換の元となった第１のＰＤＬ命令（ここではPolyBezierSegment命令）を除去する。これらのＰＤＬ命令の抽出作業は変換ＰＤＬ抽出部２０２によって実行される。これらのコメントタグ、識別フラグ、変換元の第１のＰＤＬ命令を除去することで、図１１の（ｃ）に示すようなPolyLineSegmentのＰＤＬ命令が得られる。
【００３３】
そして、ＰＤＬ置換部２０３によって、変換ＰＤＬ抽出部２０２によって抽出されたＰＤＬ命令とＳ２１０で選択されたＰＤＬ命令を置き換える（Ｓ２５０）。図１２には、最終的に置換処理が行なわれたＰＤＬ命令の結果の例を示しており、コメントタグや識別フラグなどは除去され、変換元であったPolyBezierSegment命令も無く、PolyBezierSegment命令が存在していたところに、PolyLineSegmentのＰＤＬ命令が挿入された形式になっている。この図１２に示すＰＤＬが、実際に展開処理の対象となる。
【００３４】
次いで、ＰＤＬ展開部２０４において、Ｓ２１０で選択されたＰＤＬ命令、あるいはＳ２５０で置き換えられたＰＤＬ命令、の展開を行う（Ｓ２６０）。展開されていないＰＤＬ命令がある場合には、処理を繰り返し（Ｓ２７０）、  全てのＰＤＬ命令の展開が終了すると印刷制御部２０５により画像が生成される（Ｓ２８０）。生成された画像が印刷結果出力部２０６より出力され印刷処理が終了する（Ｓ２９０）。
【００３５】
ここで、具体的な効果を表したタイムチャートを図１３に示す。本実施形態の印刷システムにおいては、プリンタドライバ１３０における変換処理とプリンタ２００における置換処理が余分に必要となり、また、付加されたコメントによるデータ量の増加によりプリンタ２００への送信時間も長くなる。しかし、プリンタ２００での展開処理が従来のシステムに比べて十分に短くなることで、全体の処理時間を従来のシステムと比較して短縮することが期待できる。
【００３６】
以上のように、第１の実施形態によれば、ベジェ曲線描画のように複雑な命令を、ホストＰＣ１００上で、より単純な直線描画命令に変換することでプリンタ上での処理速度を短縮することが出来るという効果が得られる。また、ベジェ曲線を直線で描画する場合において適切な描画結果を得るためには装置の解像度等の特性に大きく依存する、といったように特定のプリンタに最適化されたＰＤＬ命令に変換する場合でも、コメントとして付加されているので、想定していないプリンタドライバとプリンタの組み合わせであったとしても、本来のＰＤＬ命令を解釈する際の不具合は全く生じない。
【００３７】
[第２の実施形態]
図１４は、本発明の第２の実施形態の印刷システムを示すブロック図である。本実施形態の構成は、第１の実施形態におけるプリンタドライバ１３０aに、ＰＤＬサイズ計数部１３８とコメント除去部１３９を追加したものであって、プリンタ２００を含む他の構成は第１の実施形態における構成と同様である。
【００３８】
簡単のため、第１の実施形態との相違点について説明すると、ホストＰＣ１００ａ側のプリンタドライバ１３０aのＰＤＬサイズ計数部１３８は、ＰＤＬ編集部１３２により編集されたＰＤＬ命令および命令変換部１３５により変換され付加されたコメントのそれぞれ合計サイズを記録する機能を有している。ＰＤＬサイズ計数部１３８で記録された合計サイズについての結果は、コメント除去部１３９に送られる。コメント除去部１３９は、ＰＤＬサイズ計数部１３８の結果に基づいて、送信ＰＤＬからコメントの除去を行う。すなわち、ＰＤＬサイズ計数部１３８で記録されたコメントの合計サイズがある値を越えるような場合には、コメントの付加は効率的ではないとして、コメント除去部１３９によりコメントの除去を行うようにする。より具体的には、ＰＤＬサイズ計数部１３８は、追加されたコメントの合計サイズを累積するCounter Bと、追加された第１のＰＤＬ命令の合計サイズを累積するCounter Aとを有しており、さらに閾値として所定の数値、例えば１．５、を記憶している。ＰＤＬサイズ計数部１３８は、動作フローの中でCounter Bの値をCounter Aの値で割った値と、閾値を比較するように構成されており、第２のPDL命令のサイズが大きくなると、追加されたコメントを除去するように動作する。
【００３９】
この本実施形態の動作について図１５に示すプリンタドライバの動作フローを参照しながらより詳しく説明すると、本実施形態の動作は、第１の実施形態におけるプリンタドライバの動作にいくつかの動作が追加された動作を行う。すなわち、ステップＳ１５５、Ｓ１６５、Ｓ１７２、Ｓ１７４およびＳ１７６の動作が追加されている。以下ではそれぞれの動作を説明する。
【００４０】
第１のＰＤＬ命令が変換すべきものと判断され、送信ＰＤＬ生成部１３６において、コメントが送信ＰＤＬに付加されると、そのサイズがＰＤＬサイズ計数部１３８内の記憶領域であるCounter Bに加算される（Ｓ１５５）。
【００４１】
同様に、第１のＰＤＬ命令が送信ＰＤＬに追加さると、そのサイズがＰＤＬサイズ計数部１３８内の記憶領域であるCounterAに加算される（Ｓ１６５）。図１６に、先に図１０で示した送信ＰＤＬにおけるCounterAの値（＝１５）と、CounterB（＝２６）の値を示す。ここで、加算されるサイズとしては行数を用いたが、文字数やバイト数などを用いることも可能である。
【００４２】
そして、ＰＤＬサイズ計数部１３８では、送信ＰＤＬをプリンタに送信する前にCounterAとCounterBの比を予め決められた閾値と比較（Ｓ１７２）し、閾値以上の場合には、送信ＰＤＬからコメントを例えばランダムに選択しそれを取り除き（Ｓｌ７４）、取り除いたコメントのサイズをCounterBに反映する（Ｓ１７６）。例えば、閾値として１．５という値を採用した場合、図１６においては、CounterB/CounterA＝２６／１５＝１．７３＞１．５となり、閾値を越えてしまうことから、コメントを除去する必要がある。
【００４３】
図１６において１番目のコメント（１３行分のデータを有する。）が選択および除去されたとすると、図１７のようになり、このときCounterB/CounterA＝１３／１５＝０．８７＜１．５となるので、これ以上送信ＰＤＬからのコメントの除去は行わずプリンタ２００へと送信する。
【００４４】
以上のように、第２の実施形態においては送信ＰＤＬのサイズが閾値よりも大きくなった場合にはコメントを除去し、そのサイズを縮小することにより、第１の実施形態において送信ＰＤＬのサイズの影響により送信時間が増加するような状況においても全体の処理時間の短縮が図られる。
【００４５】
具体的な効果を表すタイムチャートを図１８に示す。第１の実施形態において送信ＰＤＬのサイズが増加すると送信時間が増加し、結果として従来のシステムよりもトータルの処理時間が必要になる場合がある。このような場合においても、第２の実施形態ではコメントの除去処理に必要な時間と、展開処理に必要な時間が増加するが送信時間を短縮することで全体の処理時間を短縮することが実現できることになる。
【００４６】
上述の第１、第２の実施形態では、プリンタに適用した例を説明したが、複写機、ファクシミリ装置およびＭＦＰ（Multi-Function Peripheral）にも適用可能である。また、ホストPCは、他のデジタルカメラ、携帯電話機、PDA、その他の電子機器などであっても良い。上述の第１、第２の実施形態では、ＰＤＬとしてＸＰＳを用いて説明したが、PostScriptなどのコメント機能を持つＰＤＬに対しても適用可能である。また、ＰＤＬだけではなく、ほかの記述言語に対しても適用することができるのは言うまでもない。
【図面の簡単な説明】
【００４７】
【図１】本発明の第１の実施形態にかかる印刷システムの一例を示すブロック図である。
【図２】本発明の第１の実施形態にかかる印刷システムにおけるプリンタドライバの動作を説明するフローチャートである。
【図３】本発明の第１の実施形態にかかる印刷システムにおけるプリンタの動作を説明するフローチャートである。
【図４】本発明の第１の実施形態にかかる印刷システムで扱われる文書データの一例を示す模式図である。
【図５】図４の文書データをＸＰＳで記述したデータを示す図である。
【図６】ＸＰＳにおける要素と属性の関係を示す表である。
【図７】本発明の第１の実施形態にかかる印刷システムにおけるプリンタドライバで使用される変換テーブルの一例を示す図である。
【図８】本発明の第１の実施形態にかかる印刷システムにおけるＰＤＬ命令の変換例を示す模式図である。
【図９】本発明の第１の実施形態にかかる印刷システムにおけるコメント形式への変換例を示す模式図である。
【図１０】本発明の第１の実施形態にかかる印刷システムにおけるホストＰＣ側での処理結果の一例を示す模式図である。
【図１１】本発明の第１の実施形態にかかる印刷システムにおけるプリンタ側でのＰＤＬ命令の置換動作の一例を示す模式図である。
【図１２】本発明の第１の実施形態にかかる印刷システムにおけるプリンタ側での処理結果の一例を示す模式図である。
【図１３】従来の印刷システムと本発明の第１の実施形態の印刷システムの各動作による処理時間を比較したタイムチャートである。
【図１４】本発明の第２の実施形態にかかる印刷システムの一例を示すブロック図である。
【図１５】本発明の第２の実施形態にかかる印刷システムにおけるプリンタドライバの動作を説明するフローチャートである。
【図１６】本発明の第２の実施形態にかかる印刷システムにおけるホストＰＣ側での処理例を示す模式図であって、ＰＤＬのサイズが閾値を越える例を示す模式図である。
【図１７】図１６において、コメントを除去したところを示す模式図である。
【図１８】従来の印刷システム、本発明の第１及び第２の実施形態の印刷システムの各動作による処理時間を比較したタイムチャートである。
【符号の説明】
【００４８】
１１、１２、１３  スクリーン
１００、１００ａ ホストＰＣ
１１０  アプリケーション
１２０  ＯＳ
１３０、１３０ａ  プリンタドライバ
１３１  スプール受信部
１３２  ＰＤＬ編集部
１３３  変換命令抽出部
１３４  変換テーブル
１３５  変換命令部
１３６  送信ＰＤＬ生成部
１３７  ＰＤＬ送信部
１３８  ＰＤＬサイズ計数部
１３９  コメント除去部
２００  プリンタ
２０１  ＰＤＬ受信部
２０２  変換ＰＤＬ抽出部
２０３  ＰＤＬ置換部
２０４  ＰＤＬ展開部
２０５  印刷制御部
２０６  印刷結果出力部
【図１】
0004577907.tif 000002
【図２】
0004577907.tif 000003
【図３】
0004577907.tif 000004
【図４】
0004577907.tif 000005
【図５】
0004577907.tif 000006
【図６】
0004577907.tif 000007
【図７】
0004577907.tif 000008
【図８】
0004577907.tif 000009
【図９】
0004577907.tif 000010
【図１０】
0004577907.tif 000011
【図１１】
0004577907.tif 000012
【図１２】
0004577907.tif 000013
【図１３】
0004577907.tif 000014
【図１４】
0004577907.tif 000015
【図１５】
0004577907.tif 000016
【図１６】
0004577907.tif 000017
【図１７】
0004577907.tif 000018
【図１８】
0004577907.tif 000019