JP4516233B2 - Data conversion device, data conversion method, data conversion program, and computer-readable recording medium on which data conversion program is recorded - Google Patents

Data conversion device, data conversion method, data conversion program, and computer-readable recording medium on which data conversion program is recorded Download PDF

Info

Publication number
JP4516233B2
JP4516233B2 JP2001098475A JP2001098475A JP4516233B2 JP 4516233 B2 JP4516233 B2 JP 4516233B2 JP 2001098475 A JP2001098475 A JP 2001098475A JP 2001098475 A JP2001098475 A JP 2001098475A JP 4516233 B2 JP4516233 B2 JP 4516233B2
Authority
JP
Japan
Prior art keywords
data
conversion
printer
output device
compression
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001098475A
Other languages
Japanese (ja)
Other versions
JP2002297331A (en
Inventor
宏幸 作山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2001098475A priority Critical patent/JP4516233B2/en
Publication of JP2002297331A publication Critical patent/JP2002297331A/en
Application granted granted Critical
Publication of JP4516233B2 publication Critical patent/JP4516233B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
この発明は、原稿情報を出力装置用の送信データに変換し、変換した送信データを送信するデータ変換装置、データ変換方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【0002】
【従来の技術】
近年、コンピュータの普及により、ベクトルフォントや自然画、グラフィックス等を含んだ多様で複雑な文書が容易に作成できるようになってきている。かかる文書を高画質でプリント(印刷)するために、プリンタの解像度等は飛躍的に向上している。解像度等の向上にともない、処理すべきデータ量の増大等を招き、プリント画質とプリントスピードの間にトレードオフが発生するという問題が生じている。
【0003】
ここで、かかる文書をプリンタで印刷(プリント)する場合、通常、ユーザはアプリケーションプログラムをもちいて、プリンタドライバに対し明示のプリント命令(印刷命令)を発行する。
【0004】
たとえば、特開平10−283145号公報における「データ処理装置およびデータ処理装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体」に記載されているように、プリンタドライバは、ユーザの明示のプリント命令(印刷命令)を受けた時点で初めて所定の印刷動作を開始する。すなわち、ユーザによるプリント命令(印刷命令)の発行タイミングが、印刷動作の開始の起点となっている。
【0005】
図32および図33は、従来技術にかかる情報処理装置における印刷処理の手順を示すフローチャートである。ここでまず、図20のフローチャートにおいて、ユーザは、アプリケーションへプリント命令(印刷命令)を発行し(ステップS201)、アプリケーションはそのプリント命令(印刷命令)をOSに対して発行する(ステップS202)。
【0006】
つぎに、OSはプリンタドライバに対してプリント命令(印刷命令)を発行する(ステップS203)。プリンタドライバは、生成したプリンタ用データを送信部へ送信する(ステップS204)。送信部は、受け取ったプリンタ用データをプリンタへ送信し(ステップS205)、プリンタがプリントアウトする(ステップS206)。
【0007】
ここで「プリンタドライバ」とは、コンピュータ等の情報処理装置内にある文書データを紙などの媒体上に画像として出力するために、該文書データをプリンタが解釈可能なデータ(プリンタ用データ)に変換して、プリンタに送信するためのソフトウエアである。
【0008】
また、図20においては、プリントの流れを簡易に説明したが、つぎに示す図21にあっては、OSが内部ファイルを生成し、プリンタドライバがプリンタ用中間データを生成する典型的な場合のプリントの流れを説明する。
【0009】
図21のフローチャートにおいて、ユーザは、アプリケーションへプリント命令(印刷命令)を発行し(ステップS211)、アプリケーションはそのプリント命令(印刷命令)をOSに対して発行する(ステップS212)。
【0010】
つぎに、OSはプリンタ非依存型の中間データファイルを生成する(ステップS213)。そして、デスプーラ(プリントプロセッサ)がプリンタドライバに対して、中間データファイルをプリンタ用データに変換する命令を発行する(ステップS214)。
【0011】
その後、プリンタドライバは、プリンタ用中間データファイルをプリンタ用データに変換し、それを送信部へ送信する(ステップS215)。送信部は、受け取ったプリンタ用データをプリンタへ送信し(ステップS216)、プリンタがプリントアウトする(ステップS217)。
【0012】
このように、アプリケーションからプリントをおこなう場合、アプリケーションの解放を速くするためには、OSが中間データファイルをハードディスク等の記憶装置にスプールし、その時点でアプリケーションを解放するのが一般的である。その後、デスプーラがプリンタドライバをコールし、最終的には前記中間ファイルがプリンタ用データに変換されるが、プリンタへの送信データ量の低減等を目的として、該中間ファイルを、まずプリンタ用の中間データに変換することが一般におこなわれている。
【0013】
このプリンタ用の中間データとしては代表的なフォーマットは、ページ記述言語(PDL(Page Discription Language))であるが、PDLは、異なるプリンタ間で共通に解釈しうるフォーマットである。すなわち、共通のPDLを解釈可能なプリンタ間であれば、PDL形式のデータに互換性を持たせることが可能である。
【0014】
【発明が解決しようとする課題】
しかしながら、上記従来のデータ変換装置を含む情報処理装置にあっては、かかる文書を高画質でプリントするためのプリンタの解像度等が飛躍的に向上し、それにともない、処理すべきデータ量の増大等を招き、プリント画質とプリントスピードの間にトレードオフが発生するという問題があった。すなわち、情報量の増大にともない、プリントするためにおこなわなければならないデータ変換量が増加し、データ変換処理に多くの時間がかかってしまうという問題点であった。
【0015】
さてここで、ユーザがある文書をプリントアウトするまでの動作を想定する場合、通常のユーザは、当該文書を開いた後、その内容をある程度読んでからプリントアウトをおこなうと考えるのが自然である。すなわち、文書が開かれてからプリントされるまでには、一定の時間が存在するのである。
【0016】
また、前述のとおり、ユーザによるプリント命令(印刷命令)の発行が印刷動作の起点となるのが通常であるが、ユーザによるプリント命令(印刷命令)とは別個に(非同期に)、擬似的にプリント命令(印刷命令)を発行する擬似命令発行部を設けることも可能であり、上記擬似命令発行部によるプリント命令(印刷命令)の発行をユーザによるプリント命令(印刷命令)の発行よりも先行させることが可能である。
【0017】
そこで、本願においては、ユーザが文書を開く等して、当該文書情報のプリンタ用データへの変換が可能になった後、ユーザの明示のプリント命令(印刷命令)に先立って擬似的にプリント命令(印刷命令)を発行することにより、あらかじめプリンタ用データの生成をおこなう。プリンタ用データは、変換前の原稿に関する情報(たとえば、色情報やフォントに関する情報)を有しており、印刷に先立って原稿情報を解析する等の処理に有用である。
【0018】
この発明は、上述の点に鑑みてなされたものであって、操作者(ユーザ)がおこなったプリント命令(印刷命令)から印刷終了までの時間を短縮することができ、かつプリンタの障害発生時にも高速でプリント出力を得ることが可能なデータ変換装置、データ変換方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体を提供することを目的とする。
【0019】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するため、請求項1に記載の発明にかかるデータ変換装置は、原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるデータを取得し、複数の圧縮方法の中から、前記原稿に含まれるデータに対して、適用すべき圧縮法を選択しておくことを特徴とする。
【0020】
また、請求項2に記載の発明にかかるデータ変換装置は、原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるすべての画像データを取得し、
複数の圧縮方法の中から前記各画像ごとに適用すべき圧縮法を選択して、前記各画像と選択された圧縮方法との対応結果を保持すること特徴とする。
【0021】
また、請求項3に記載の発明にかかるデータ変換装置は、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿情報をOSの中間形式データに変換し、前記中間形式データから前記原稿に含まれるデータを取得することを特徴とする。
【0022】
また、請求項4に記載の発明にかかるデータ変換装置は、前記選択された圧縮方法によって圧縮された出力装置用のデータを保持することを特徴とする請求項
【0023】
また、請求項5に記載の発明にかかるデータ変換装置は、原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記データ変換をおこない、前記データ変換を複数の圧縮方法をもちいておこない、該複数の圧縮された形態の出力装置用のデータを保持することを特徴とする。
【0024】
また、請求項6に記載の発明にかかるデータ変換装置は、前記データ変換装置と出力装置の間の転送速度を検知し、前記転送速度に基づいて、任意の一つの圧縮後のデータを送信することを特徴とする。
【0025】
また、請求項7に記載の発明にかかるデータ変換装置は、前記出力装置の伸張速度を検知し、前記伸張速度に基づいて、1の圧縮後のデータを送信する手段を有することを特徴とする。
【0026】
また、請求項8に記載の発明にかかるデータ変換装置は、原稿情報を、圧縮された形態で出力装置用のデータに変換する際に、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記圧縮を含むデータ変換をおこない、前記圧縮が複数の圧縮率でおこなわれることを特徴とする。
【0027】
また、請求項9に記載の発明にかかるデータ変換装置は、前記出力装置との間の転送速度を検知し、該転送速度に基づいて、前記出力装置に対していずれかの圧縮率のデータを送信することを特徴とする。
【0028】
また、請求項10に記載の発明にかかるデータ変換装置は、前記出力装置の伸張器の伸張速度を検知し、該伸張速度に基づいて、前記出力装置に対していずれかの圧縮率のデータを送信することを特徴とする。
【0029】
また、請求項11に記載の発明にかかるデータ変換方法は、原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるデータを取得し、複数の圧縮方法の中から、前記原稿に含まれるデータに対して、適用すべき圧縮法を選択しておくことを特徴とする。
【0030】
また、請求項12に記載の発明にかかるデータ変換方法は、原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるすべての画像データを取得し、複数の圧縮方法の中から前記各画像ごとに適用すべき圧縮法を選択して、前記各画像と選択された圧縮方法との対応結果を保持すること特徴とする。
【0031】
また、請求項13に記載の発明にかかるデータ変換方法は、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿情報をOSの中間形式データに変換し、前記中間形式データから前記原稿に含まれるデータを取得することを特徴とする。
【0032】
また、請求項14に記載の発明にかかるデータ変換方法は、前記選択された圧縮方法によって圧縮された出力装置用のデータを保持することを特徴とする。
【0033】
また、請求項15に記載の発明にかかるデータ変換方法は、原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記データ変換をおこない、前記データ変換を複数の圧縮方法をもちいておこない、該複数の圧縮された形態の出力装置用のデータを保持することを特徴とする。
【0034】
また、請求項16に記載の発明にかかるデータ変換方法は、前記出力装置との間の転送速度を検知し、前記転送速度に基づいて、任意の一つの圧縮後のデータを送信することを特徴とする。
【0035】
また、請求項17に記載の発明にかかるデータ変換方法は、前記出力装置の伸張速度を検知し、前記伸張速度に基づいて、1の圧縮後のデータを送信する手段を有することを特徴とする。
【0036】
また、請求項18に記載の発明にかかるデータ変換方法は、原稿情報を、圧縮された形態で出力装置用のデータに変換する際に、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記圧縮を含むデータ変換をおこない、前記圧縮が複数の圧縮率でおこなわれることを特徴とする。
【0037】
また、請求項19に記載の発明にかかるデータ変換方法は、前記出力装置との間の転送速度を検知し、該転送速度に基づいて、前記出力装置に対していずれかの圧縮率のデータを送信することを特徴とする請求項18に記載のデータ変換方法。
【0038】
また、請求項20に記載の発明にかかるデータ変換方法は、前記出力装置の伸張器の伸張速度を検知し、該伸張速度に基づいて、前記出力装置に対していずれかの圧縮率のデータを送信することを特徴とする。
【0039】
また、請求項21に記載の発明にかかるデータ変換プログラムは、原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるデータを取得し、複数の圧縮方法の中から、前記原稿に含まれるデータに対して、適用すべき圧縮法を選択しておくことを特徴とする。
【0040】
また、請求項22に記載の発明にかかるデータ変換プログラムは、原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるすべての画像データを取得し、複数の圧縮方法の中から前記各画像ごとに適用すべき圧縮法を選択して、前記各画像と選択された圧縮方法との対応結果を保持すること特徴とする。
【0041】
また、請求項23に記載の発明にかかるデータ変換プログラムは、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿情報をOSの中間形式データに変換し、前記中間形式データから前記原稿に含まれるデータを取得することを特徴とする。
【0042】
また、請求項24に記載の発明にかかるデータ変換プログラムは、前記選択された圧縮方法によって圧縮された出力装置用のデータを保持することを特徴とする。
【0043】
また、請求項25に記載の発明にかかるデータ変換プログラムは、原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記データ変換をおこない、前記データ変換を複数の圧縮方法をもちいておこない、該複数の圧縮された形態の出力装置用のデータを保持することを特徴とする。
【0044】
また、請求項26に記載の発明にかかるデータ変換プログラムは、前記出力装置との間の転送速度を検知し、前記転送速度に基づいて、任意の一つの圧縮後のデータを送信することを特徴とする。
【0045】
また、請求項27に記載の発明にかかるデータ変換プログラムは、前記出力装置の伸張速度を検知し、前記伸張速度に基づいて、1の圧縮後のデータを送信する手段を有することを特徴とする。
【0046】
また、請求項28に記載の発明にかかるデータ変換プログラムは、原稿情報を、圧縮された形態で出力装置用のデータに変換する際に、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記圧縮を含むデータ変換をおこない、前記圧縮が複数の圧縮率でおこなわれることを特徴とする。
【0047】
また、請求項29に記載の発明にかかるデータ変換プログラムは、前記出力装置との間の転送速度を検知し、該転送速度に基づいて、前記出力装置に対していずれかの圧縮率のデータを送信することを特徴とする。
【0048】
また、請求項30に記載の発明にかかるデータ変換プログラムは、前記出力装置の伸張器の伸張速度を検知し、該伸張速度に基づいて、前記出力装置に対していずれかの圧縮率のデータを送信することを特徴とする。
【0049】
また、請求項31に記載の発明にかかる記録媒体は、請求項21〜30のいずれか一つに記載された方法をコンピュータに実行させるプログラムを記録したことで、そのプログラムを機械読み取り可能となり、これによって、請求項21〜30の動作をコンピュータによって実現することが可能である。
【0050】
そして、請求項1に記載の発明は、原稿情報を、圧縮された形態の出力装置用のデータに変換する装置であって、前記圧縮を複数の方法でおこなう手段と、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるデータを取得する手段とを有し、前記複数の圧縮方法の中から、前記原稿に含まれるデータに対して、適用すべき圧縮法を選択しておくことで、ユーザからのプリント命令に先立って、原稿に関する情報を得ておき、あらかじめ適用すべき圧縮方法を選択しておくことにより、処理時間の増大を招くことなしに最適な圧縮処理を可能にする。
【0051】
また、請求項2かかる発明は、原稿情報を、圧縮された形態の出力装置用のデータに変換する装置であって、前記圧縮を複数の方法でおこなう手段と、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるすべての画像データを取得する手段とを有し、前記複数の圧縮方法の中から前記各画像ごとに適用すべき圧縮法を選択して、前記各画像と選択された圧縮方法との対応結果を保持する手段を有すること特徴とするデータ変換装置を提案する。
【0052】
請求項2に記載の発明は、ユーザからのプリント命令に先立って、原稿に含まれるすべての画像情報に関する情報を得ておき、各画像データごとにあらかじめ適用すべき圧縮方法を選択し、保持しておくことにより、処理時間の増大を招くことなしに各画像ごとに最適な圧縮処理を可能にする。
【0053】
ここで「前記変換が可能になった時点の後」とは、たとえば「システムに対し、(ユーザによる明示の印刷命令とは別個に)、印刷命令を発行可能な状態になった後」のことである。文書情報ファイルを開いた後、印刷命令が発行可能になるコンピュータ環境、印刷環境においては文書情報ファイルを開いた後が該当し、当該ファイルを開いた後、読み込みを開始した後に印刷命令が発行可能になる環境においては、当該文書の読み込み開始後が該当し、さらに、文書情報の読み込みが終了して初めて印刷命令が発行可能になる環境においては、文書情報の読み込み終了後が該当する。
【0054】
さらに読み込んだ文書情報のCRT等への表示開始後に印刷命令が発行可能になる環境においては、当該文書情報の表示開始後が該当し、読み込んだ文書情報のCRT等への表示が終了して初めて印刷命令が発行可能になる環境においては当該文書情報の表示終了後が該当する(もちろん、これらの例に限られるものではない)。また、「印刷命令を発効可能な状態になった後」であれば、ユーザがプリンタのプロパティを表示した後や、印刷メニューを選択した後、プリントプレビュー命令を選択した後、としてもよい。
【0055】
また、原稿情報のフォーマット(中身)は、当該原稿作成に使用されたアプリケーションのみぞ知るのが通常であるが、アプリケーションが文書内容へのアクセス手段を特に提供している場合等には、「印刷命令が発行可能な状態」でなくとも原稿情報を出力装置用のデータに変換可能であり、かかる場合も「前記変換が可能になった時点の後」に該当する。
【0056】
さてここで、ユーザによるプリント命令に先行して原稿に関する情報を得る手段としては、OSが標準で用意している中間データのみを生成させ、かかるデータの内容から原稿に関する情報を得るのが、汎用的で簡易かつ高速である。
【0057】
よって請求項3に記載の発明は、請求項1に記載のデータ変換装置であって、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿情報をOSの中間形式データに変換する手段を有し、前記中間形式データから前記原稿に含まれるデータを取得する手段を有することで、プリント命令に先行して原稿に関する情報を得る手段として、OSが標準で用意している中間データを生成させることにより、前記手段を汎用的で簡易かつ高速なものとすることができる。
【0058】
また、上記のような圧縮方法の選択のみならず、選択した方法で圧縮を含むデータ生成をおこなっておき、その結果を保持しておけば、ユーザによる明示のプリント命令に速やかに対応できることは言うまでもない。
【0059】
よって、請求項4に記載の発明は、請求項1または2に記載のデータ変換装置であって、前記選択された圧縮方法によって圧縮された出力装置用のデータを、保持する手段を有することで、あらかじめ選択した方法で圧縮を含むデータ生成までをおこなっておき、その結果を保持することにより、ユーザによる明示のプリント命令に速やかに対応することができる。
【0060】
また、プリンタドライバによっては、ユーザが圧縮方法を指定可能な形態も考えられ、かかる場合にあらかじめ複数の圧縮方法で圧縮し保持しておけば、ユーザによる圧縮方法指定への対応度を高めることができる。
【0061】
よって、請求項5に記載の発明は、原稿情報を、圧縮された形態の出力装置用のデータに変換する装置であって、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記データ変換をおこなう手段を有し、前記データ変換を複数の圧縮方法をもちいておこない、該複数の圧縮された形態の出力装置用のデータを保持する手段を有することで、ユーザによる圧縮方法指定への対応度を高めることができる。
【0062】
また、ユーザが圧縮方法を指定できない場合等でドライバ側が自動的に圧縮方法を選択する場合、一般に高圧縮率の圧縮方法ほど画質が落ちることから、転送路が混雑している(あるいは遅い)場合には高い圧縮率の方のデータを送信することによって速やかに出力することや、逆に転送路が空いている(あるいは速い)場合に、低い圧縮率の方のデータを送信することによって、より画質よく出力することができれば好都合である。
【0063】
よって、請求項6に記載の発明は、請求項4に記載のデータ変換装置であって、前記データ変換装置と出力装置の間の転送速度を検知する手段を有し、前記転送速度を元に、1の圧縮後のデータを送信する手段を有することを特徴とするデータ変換装置を提案する。請求項6に記載の発明は、転送路の状況によって、高い圧縮率のデータを送信して速やかに出力することや、低い圧縮率のデータを送信することによって、より画質よく出力することができる。
【0064】
また、上記事情は、伸張器の伸張速度との関係においても生じる。たとえば、圧縮率を上げるほど伸張に時間がかかるような圧縮法の場合、転送路が空いている(あるいは速い)場合には、あえて圧縮率が低い方のデータを転送することにより、転送時間の増加よりも、伸張時間の削減を大きくし、トータルで速く出力することができる。
【0065】
よって、請求項7に記載の発明は、請求項4に記載のデータ変換装置であって、前記出力装置の伸張速度を検知する手段を有し、前記伸張速度を元に、1の圧縮後のデータを送信する手段を有することで、伸張器の伸張速度を考慮することにより、トータルで速く出力することができる。
【0066】
また、請求項8に記載の発明は、原稿情報を、圧縮された形態で出力装置用のデータに変換する装置であって、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記圧縮を含むデータ変換をおこなう手段を有し、前記圧縮が複数の圧縮率でおこなわれることで、ユーザからの変換命令に先立って、データ圧縮を複数圧縮率で行っておくことにより、ユーザによる圧縮率指定への対応度を広げ、ユーザ指定の圧縮率で速やかに出力することができる。
【0067】
ここで「前記変換が可能になった時点の後」とは、たとえば「システムに対し、(ユーザによる明示の印刷命令とは別個に)、印刷命令を発行可能な状態になった後」のことである。文書情報ファイルを開いた後、印刷命令が発行可能になるコンピュータ環境、印刷環境においては文書情報ファイルを開いた後が該当し、当該ファイルを開いた後、読み込みを開始した後に印刷命令が発行可能になる環境においては、当該文書の読み込み開始後が該当し、さらに、文書情報の読み込みが終了して初めて印刷命令が発行可能になる環境においては、文書情報の読み込み終了後が該当する。
【0068】
さらに読み込んだ文書情報のCRT等への表示開始後に印刷命令が発行可能になる環境においては、当該文書情報の表示開始後が該当し、読み込んだ文書情報のCRT等への表示が終了して初めて印刷命令が発行可能になる環境においては当該文書情報の表示終了後が該当する(もちろん、これらの例に限られるものではない)。また、「印刷命令を発効可能な状態になった後」であれば、ユーザがプリンタのプロパティを表示した後や、印刷メニューを選択した後、プリントプレビュー命令を選択した後、としてもよい。
【0069】
また、原稿情報のフォーマット(中身)は、当該原稿作成に使用されたアプリケーションのみぞ知るのが通常であるが、アプリケーションが文書内容へのアクセス手段を特に提供している場合等には、「印刷命令が発行可能な状態」でなくとも原稿情報を出力装置用のデータに変換可能であり、かかる場合も「前記変換が可能になった時点の後」に該当する。
【0070】
さて、以上では、ユーザ指定の圧縮率への速やかな対応を考えたが、ユーザ指定圧縮率での圧縮後データ量が非常に大きい場合、たとえば転送路が込んでいる場合等は、画質に大きな影響がない範囲で、ユーザ指定よりも高い圧縮率のデータを送信することにより、速やかに出力することが可能になり、結果的にユーザの使用感を向上させることができる。
【0071】
よって、本願請求項9に記載の発明は、請求項8に記載のデータ変換装置であって、前記データ変換装置と出力装置の間の転送速度を検知する手段を有し、該転送速度をもとに、前記出力装置に対していずれかの圧縮率のデータを送信する手段を有することで、転送路が混雑している場合にユーザ指定よりも高い圧縮率のデータを送信することによって速やかに出力することや、逆に転送路が空いている場合に、ユーザ指定よりも高い圧縮率のデータを送信することによって、より画質よく出力することができる。
【0072】
また、上記事情は、伸張器の伸張速度との関係においても生じる。たとえば、圧縮率を上げるほど伸張に時間がかかるような圧縮法の場合、転送路の物理仕様が非常に速い場合には、ユーザが圧縮率を高く指定しても転送時間はさほど短くならないにもかかわらず、伸張時間が増大する結果却って出力が遅くなる場合が生じ得る。
【0073】
よって、請求項10に記載の発明は、請求項8に記載のデータ変換装置であって、前記出力装置の伸張器の伸張速度を検知する手段を有し、該伸張速度をもとに、前記出力装置に対していずれかの圧縮率のデータを送信する手段を有することで、伸張器の伸張性能を考慮することにより、より速やかな出力を得ることができる。
【0074】
また、請求項11〜20に記載の発明は、請求項1から3に記載のデータ変換方法の提案であり、ユーザの明示のプリント命令に先行して処理をおこない、各請求項に対応した効果を得ることができる。
【0075】
また、請求項21〜30に記載の発明は、請求項1から3に記載のデータ変換プログラムの提案であり、ユーザの明示のプリント命令に先行して処理をおこない、各請求項に対応した効果を得ることができる。
【0076】
また、本願請求項31に記載の発明は、請求項21〜30に記載の方法が記録されたコンピュータが読み取り可能な情報記録媒体の提案であり、ユーザの明示のプリント命令に先行して各処理をおこなうことが可能なシステムを提供することができる。
【0077】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかるデータ変換装置、データ変換方法、データ変換プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体の好適な実施の形態を詳細に説明する。
【0078】
〔実施の形態1〕
(情報処理装置および情報処理システムのハードウエア構成)
まず、実施の形態1にかかるデータ変換装置を含む情報処理装置、情報処理システムのハードウエア構成について説明する。図1および図2は、この発明の実施の形態1にかかるデータ変換装置を含む情報処理装置、情報処理システムのシステム構成を示すブロック図である。
【0079】
図1において、101はデータ変換装置(コンピュータ)であり、102は表示装置(モニタ)であり、103a〜103cは出力装置(プリンタ)である。これは、コンピュータとたとえば3台のプリンタとを組み合わせたスタンドアローン型における通常の構成であり、さらに、データ変換装置101にはユーザインタフェースとしての表示装置(モニタ)102が接続されている。なお、プリンタの数は2台でもよいし、4台以上でもよい。
【0080】
データ変換装置101は、演算処理部111、記憶部112、送信部113を備えている。ここで、演算処理部111は、後述するCPU301等によりその機能を実現する。また、記憶部112は、各種プログラムおよびデータを記憶する。具体的には後述するROM302、RAM303、HD305等の記録媒体および記録媒体の読み取り装置(たとえばHDD304)等によりその機能を実現する。
【0081】
記憶部112は、たとえば、OS(オペレーティングシステム)、中間ファイルを記録するプログラムであるスプーラ、記録された中間ファイルを読み出すプログラムであるデスプーラ、アプリケーション、マクロ、プリンタドライバ等を記憶しており、演算処理部111がこれらのプログラムを実行する。
【0082】
また、プリンタ用データやプリンタ非依存型のデータも、記憶部112に記憶され、送信部113によってプリンタへ送信される。送信部113は、後述するインタフェース309等によりその機能を実現する。
【0083】
出力装置(プリンタ)103a,103b,103cも、図示を省略するプリンタエンジン(画像形成部)、受信部133および障害発生通知部134のほか、データ変換装置101と同様に、演算処理部131、記憶部132を備えている。なお、出力装置103a,103b,103cは同様の内部構成を有しているため、図1には出力装置103aの内部構成のみを示し、残りの出力装置103b,103cの内部構成については省略した。
【0084】
ここで、演算処理部131は、後述するCPU401等によりその機能を実現する。また、記憶部132は、各種プログラムおよびデータを記憶する。具体的には、後述するROM402、RAM403、HD405等の記録媒体および記録媒体の読み取り装置(たとえばHDD404等)によってその機能を実現する。
【0085】
また、受信部133は、データ変換装置101の送信部113より送信されたプリンタ用データを受信する。具体的には、後述するインタフェース409等によりその機能を実現することができる。プリンタ用データを受信した出力装置(プリンタ)103a,103b,103cは、記憶部132にそのプリンタ用データを記憶し、演算処理部131によって最終的なデータを生成し、上記プリンタエンジンへの出力をおこなう。
【0086】
障害発生通知部134は、たとえば紙づまりなどの障害の発生を検知するCPU401、および障害発生通知をデータ変換装置101の送信部113に送信するためのインタフェース409等によりその機能を実現する。
【0087】
なお、上記演算処理部111,131、記憶部112,132は、物理的にデータ変換装置101あるいは出力装置103a,103b,103c内に存在する必要はなく、仮想的にデータ変換装置あるいは出力装置を構成すればよい。したがって、たとえば、演算処理部111,131、記憶部112,132が、ネットワーク上に存在するような構成であってもよい。
【0088】
図2は、この発明の本実施の形態にかかるデータ変換装置を含む情報処理システムのシステム構成を示すブロック図であり、ネットワーク化されたシステム構成の一例を示すものである。
【0089】
図2において、201はプリンタサーバであり、202は、データ変換装置としてのローカルコンピュータである。また、203は出力装置としてのネットワークプリンタである。
【0090】
また、プリンタサーバ201、ローカルコンピュータ202、ネットワークプリンタ203は、それぞれネットワーク200に接続されており、プリンタサーバ201およびローカルコンピュータ202により作成、記憶した文書をネットワークプリンタ203によって印刷することができるとともに、プリンタサーバ201およびローカルコンピュータ202の操作によって、ネットワークプリンタ203の動作を監視しかつ制御することができる。
【0091】
さらに、プリンタサーバ201は、記憶部211を備え、記憶部211は、各種プログラムおよびデータを記憶する。記憶部211は、たとえばROM、RAM、HD等の記録媒体および記録媒体の読み取り装置(たとえばHDD等)によりその機能を実現する。
【0092】
(データ変換装置のハードウエア構成)
つぎに、データ変換装置のハードウエア構成について説明する。図3は、実施の形態1にかかるデータ変換装置101のハードウエア構成を示すブロック図である。
【0093】
上述のとおり、データ変換装置101は、コンピュータが単独で構成することができ、また、ネットワーク200により接続されたプリンタサーバ201とローカルコンピュータ202によっても構成することもできる。
【0094】
図3に示すデータ変換装置において、301はシステム全体を制御するCPUを、302はブートプログラム等を記憶したROMを、303はCPU301のワークエリアとして使用されるRAMを、304はCPU301の制御にしたがってHD(ハードディスク)305に対するデータのリード/ライトを制御するHDD(ハードディスクドライブ)を、305はHDD304の制御で書き込まれたデータを記憶するHDをそれぞれ示している。
【0095】
また、306はCPU301の制御にしたがってFD(フロッピーディスク)307に対するデータのリード/ライトを制御するFDD(フロッピーディスクドライブ)を、307はFDD306の制御で書き込まれたデータを記憶する着脱自在の記録媒体の一例としてのFDをそれぞれ示している。
【0096】
また、308はカーソル、アイコンあるいはツールボックスをはじめ、ドキュメント、画像、機能情報等のデータに関するウインドウを表示するディスプレイを示しており、表示装置(モニタ)102の機能を実現するものである。
【0097】
また、309は通信回線310を介してネットワークNETに接続され、そのネットワークNETと内部のインタフェースを司るインタフェース(I/F)をそれぞれ示している。このネットワークNETには、出力装置103a,103b,103cへの接続に関するものも含まれる。
【0098】
また、311は文字、数値、各種指示等の入力のための複数のキーを備えたキーボードを、312はカーソルの移動や範囲選択、あるいはウインドウの移動やサイズの変更、アイコンの選択、移動等をおこなうマウスを示している。また、313は上記各部を接続するためのバスを示している。
【0099】
(出力装置(プリンタ)のハードウエア構成)
つぎに、出力装置(プリンタ)のハードウエア構成について説明する。図4は、実施の形態1にかかる出力装置(プリンタ)のハードウエア構成を示すブロック図である。
【0100】
図4に示すデータ変換装置において、401はシステム全体を制御するCPUを、402はブートプログラム等を記憶したROMを、403はCPU401のワークエリアとして使用されるRAMを、404はCPU401の制御にしたがってHD(ハードディスク)405に対するデータのリード/ライトを制御するHDD(ハードディスクドライブ)を、405はHDD404の制御で書き込まれたデータを記憶するHDをそれぞれ示している。
【0101】
また、406はCPU401の制御にしたがってFD(フロッピーディスク)407に対するデータのリード/ライトを制御するFDD(フロッピーディスクドライブ)を、407はFDD406の制御で書き込まれたデータを記憶する着脱自在の記録媒体の一例としてのFDをそれぞれ示している。
【0102】
また、408はプリンタの操作内容を表示するディスプレイを示している。また、ディスプレイ408は、プリンタの操作指示をおこなうタッチパネル411の機能もあわせ持つようにしてもよい。
【0103】
また、409は通信回線410を介してネットワークNETに接続され、そのネットワークNETと内部のインタフェースを司るインタフェース(I/F)をそれぞれ示している。このネットワークNETには、データ変換装置101への接続に関するものも含まれる。
【0104】
また、412は、プリンタの操作指示をおこなうテンキーであり、スタートボタンその他の操作ボタンを含むものである。また、413は、上記各構成部を接続するバスである。
【0105】
(データ変換装置の機能的構成)
つぎに、データ変換装置101の機能的構成について説明する。図5は、実施の形態1にかかるデータ変換装置101の構成を機能的に示す機能ブロック図である。図5において、データ変換装置101は、処理検知部501と、変換指示部502と、先行変換部503と、保持部504と、変換指示検知部505と、出力部506とを含む構成である。
【0106】
ここで、処理検知部501は、変換指示部502による指示に先行して実行される原稿情報に対する処理を検知する。変換指示部502による指示に先行して実行される原稿情報に対する処理とは、実施の形態1においては、たとえばファイルの読み込み終了処理を示す。なお、ファイルの読み込み終了処理の代わりに、ファイルオープン処理やその他の処理、あるいはユーザがプリンタのプロパティを表示した場合の処理や、印刷メニューを選択した後、プリントプレビュー命令を選択した場合の処理などでもよい。
【0107】
つまり、変換指示部502による指示に先行して実行される原稿情報に対する処理は、プリント命令(印刷命令)が発行可能になるコンピュータ環境、印刷環境によって決まる。たとえば、処理検知部501が検知する処理は、文書情報ファイルを開いた後、プリント命令(印刷命令)が発行可能になるコンピュータ環境、印刷環境においては、文書情報ファイルを開く処理であり、また当該ファイルを開いた後、読み込みを開始した後にプリント命令(印刷命令)が発行可能になる環境においては、当該文書の読み込み開始処理である。
【0108】
実施の形態1では、一例として文書情報の読み込みが終了した後にプリント命令(印刷命令)が発行可能になる環境であるため、その処理は文書情報の読み込み終了処理である。あるいは、読み込んだ文書情報を表示装置(モニタ)102に表示開始した後にプリント命令(印刷命令)が発行可能になる環境においては、当該文書情報の表示開始処理であり、また表示装置(モニタ)102への表示終了後にプリント命令(印刷命令)が発行可能になる環境においては当該文書情報の表示終了処理である。なお、ここに例示した処理に限らない。
【0109】
また、原稿情報のフォーマット(中身)を認識しているのは、通常、当該原稿作成に使用されたアプリケーションのみであるが、アプリケーションが文書内容へのアクセス手段を特に提供している場合等においては、実際にはプリント命令(印刷命令)が発行可能な状態でなくても原稿情報を出力装置用のデータに変換することが可能である。したがって、かかる場合もプリント命令(印刷命令)が発行可能な状態に相当するものとする。
【0110】
変換指示部502は、原稿情報を送信データに変換するよう指示する。具体的には、図示を省略するが表示画面上に表示される印刷実行ボタン等の押下がこの指示に該当する。
【0111】
先行変換部503は、処理検知部501による処理の検知に基づいて原稿情報を出力装置103a,103b,103cのうちの2以上の装置のそれぞれに対応したデータ形式の送信データに変換する。つまり、ここでは出力装置103aに対応したデータ形式の送信データ、出力装置103bに対応したデータ形式の送信データ、出力装置103cに対応したデータ形式の送信データのうちの2以上のデータが生成される。
【0112】
生成された2以上のデータ形式の送信データは互いに識別可能な状態でマージされ、送信用データファイルとして保持部504に記憶される。各データ形式の送信データへの変換については、従来の変換処理の内容と同様であるので、その説明は省略する。
【0113】
送信データの変換は、全ページにわたっておこなってもよく、所定のページのみをおこなってもよく、また、最初の1ページのみをおこなってもよい。たとえば、最初の1ページのみをおこなうことにより、データに要する処理時間を短縮することができ、装置全体としての稼働負荷を軽減することができる。また、変換したデータを保持する保持部504の記憶(記録)容量を軽減することができる。また、先行変換部503は、原稿情報のうちフォーカスのある原稿情報のみを送信データに変換するようにしてもよい。これにより、同様に、装置全体の稼働負荷を軽減するとともに、保持部504の記憶(記録)容量を軽減することができる。
【0114】
保持部504は、先行変換部503により変換された送信用データファイルを保持する。データの保持とは、具体的には、たとえばHD305へデータを記憶することにより実現する。
【0115】
変換指示検知部505は、変換指示部502による指示を検知する。すなわち、上記印刷実行ボタン等が押下されたか否かを監視し、押下された場合にその旨を出力部506へ通知するよう所定の信号を出力する。
【0116】
出力部506は、各出力装置103a,103b,103cに対応したデータ形式を識別する機能を有する。また、出力部506は、変換指示検知部505による指示の検知にしたがって、保持部504により保持された送信用データファイルのうち、出力先の装置(プリンタ)に対応したデータ部分のみを抽出して、それを出力先のプリンタに出力する。また、出力部506は、出力装置103a,103b,103cにおいて紙づまり等の障害が発生したことを検知する機能を有している。
【0117】
たとえば、出力部506は、図1に示した送信部113によりその機能を実現することができる。出力部506は、あるOSのポートモニタと呼ばれる部分に相当し、プリンタメーカが独自の仕様のポートモニタを提供することが可能である。なお、出力装置103a,103b,103cの障害発生通知部134とデータ変換装置101の送信部113との間の障害発生通知機能については、コンピュータとプリンタとの間で双方向通信をおこなう技術として公知であるため、説明を省略する。
【0118】
なお、処理検知部501、変換指示部502、先行変換部503、保持部504、変換指示検知部505、出力部506は、それぞれ、ROM302、RAM303またはハードディスク(HD)305、フロッピーディスク(FD)307等の記録媒体に記録されたプログラムに記載された命令にしたがってCPU301等が命令処理を実行することにより、各部の機能を実現するようにしてもよい。
【0119】
(データ変換処理の内容)
つぎに、実施の形態1にかかるデータ変換装置のデータ変換処理の内容について説明する。図6および図7は、実施の形態1にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【0120】
実施の形態1にあっては、文書ファイルの読み込み終了後にプリントが開始可能なコンピュータ環境(アプリケーション環境)において、他人が作成し公開した文書のような、内容変更の必要がない原稿をプリントする場合を想定する。実施の形態1においては、特に限定しないが、たとえば3台の出力装置(プリンタ)103a,103b,103cが組み込まれている(インストールされている)が、システムに対してさらにもう1台のプリンタが仮想的に組み込まれている(インストールされている)。
【0121】
データ変換装置101の出力部506は、これらのプリンタがインストールされているという情報を有する。以下の実施の形態1の説明において、便宜上、出力装置103a,103b,103cをそれぞれプリンタA、プリンタBおよびプリンタCとし、仮想プリンタをプリンタXとして識別する。
【0122】
したがって、プリンタAを指定してプリントする場合にはプリンタドライバAが使用され、プリンタBを指定してプリントする場合にはプリンタドライバBが使用される。プリンタCを指定する場合のドライバはプリンタドライバCであり、同様に、プリンタXを指定する場合のドライバはプリンタドライバXである。このように、仮想的なプリンタをインストールする機能は、高機能なOS(オペレーティングシステム)が有する一般的な機能であるため、その機能の詳細な説明については省略する。
【0123】
また、実施の形態1においては、ユーザによる明示のプリント命令(印刷命令)とは別個に、処理検知部501内の擬似命令発行部(マクロ)がプリント命令(印刷命令)を発行する。図6のフローチャートにおいて、マクロのプリント命令(印刷命令)による処理の手順を示し、図7のフローチャートにおいて主としてユーザの明示のプリント命令(印刷命令)による処理の手順を示している。
【0124】
図6において、ファイルがオープンされ(ステップS601)、その読み込みが終了すると、処理検知部501としての読み込み終了検知部はファイルの読み込み終了を検知し、擬似命令発行部へ読み込み終了を通知する(ステップS602)。ここで、ユーザはアプリケーションプログラムに対してファイルオープンを指示するため、ファイルの読み込み終了を検知するのはアプリケーションプログラムである。
【0125】
つづいて、擬似命令発行部は、アプリケーションプログラムへプリント命令(印刷命令)を発行する(ステップS603)。かかる擬似印刷命令発行部は、アプリケーション内で動作するマクロとして実現することが可能である。
【0126】
ここでマクロとは、アプリケーションの有する個々の機能を一連の定型動作として実行させることが可能なプログラムを示すものである。一般に高機能なアプリケーション(ワードプロセッサソフト等)においては、定型動作を所定の言語(たとえば、マイクロソフト社製のプログラミング言語である「Visual Basic for Applications」等)で記述しておくことにより、アプリケーション内でマクロを実行させることが可能である。
【0127】
そしてマクロの実行開始は、ワードプロセッサを例にとれば、ユーザによる明示の開始指示による他、アプリケーションの起動と同時にアプリケーションによって実行させたり、既存文書の読み込み終了と同時にアプリケーションによって実行させたりすることが可能である。
【0128】
実施の形態1にかかるマクロは、「プリンタXを選択し、開いている文書の全ページをファイル出力としてプリントアウトする」という定型動作を実行し、既存文書の読み込み終了直後に実行可能なマクロとして構成されている。
【0129】
したがって、ファイル読み込み終了を検知したアプリケーションが、ファイル読み込み終了後に当該マクロを実行することにより、ファイル出力としてのプリント命令(印刷命令)が発行されることになる(ステップS604)。
【0130】
ここでファイル出力とは、プリンタ用データをプリンタに対して送信するのではなく、ハードディスク等の記録媒体上に記録することを示しており、記録時のファイル名は、読み込み文書名と一意に対応させることが可能である。このようにファイル出力されたプリンタ用データは、読み出し後改めてプリンタに対して送信することにより、プリントアウトが可能となる。
【0131】
したがって、プリンタXを選択した、ファイル出力としてのプリント命令(印刷命令)は、OSを介してプリンタドライバXに送信される(ステップS605)。実施の形態1では、たとえばプリンタドライバXは、文書情報をプリンタAが解釈可能なプリンタ用データAに変換(生成)するとともに、プリンタBが解釈可能なプリンタ用データBにも変換(生成)する。
【0132】
そして、プリンタドライバXは、生成したプリンタ用データAとプリンタ用データBとを、互いに識別が可能な状態でマージ(結合)し、送信用(プリンタ用)データファイルとして保持部504へ送信する(ステップS606)。そして、保持部504は送信用データファイルを記録媒体に記録(保持)する(ステップS607)。
【0133】
一方ユーザは、文書を開いた後、ある時間の経過後に、アプリケーションに対して明示のプリント命令(印刷命令)を発行する。すなわち、図7のフローチャートにおいて、まず、ファイルオープンし(ステップS701)、その後、ユーザは、アプリケーションに対してプリント命令(印刷命令)を発行する(ステップS702)。つぎに、アプリケーションは、OSに対してプリント命令(印刷命令)を発行する(ステップS703)。
【0134】
つぎに、OSは、出力先のプリンタに対応したプリンタドライバに対してプリント命令(印刷命令)を発行する(ステップS704)。便宜上、ユーザによるプリント命令(印刷命令)がプリンタAを出力先としてなされたとすれば、プリント命令(印刷命令)はプリンタドライバAに送信される。プリンタドライバAは、プリンタ用データの生成に先立ち、上記保持部504を検索し、開いている文書に対応したプリンタ用データがすでに生成されているか否かを判断する。
【0135】
そして、すでに生成されている場合は、当該送信用データファイルを読み込んで、そのファイル内にプリンタA用のデータ(図7中では「対応部分」と記す)が含まれているか否かを判断する(ステップS705)。ステップS705において、含まれている場合には(ステップS705:Yes)、出力先がプリンタAであることを示す情報とともに、当該送信用データファイルをそのまま、つまりプリンタ用データAとプリンタ用データBとがマージされた状態のまま、出力部506に送信する(ステップS706)。
【0136】
一方、ステップS705において、文書を開いてからユーザの明示のプリント命令(印刷命令)までの時間が短い等の理由で、プリンタ用データがまだ生成されていない場合は(ステップS705:No)、通常の処理によりプリンタ用データを生成して出力部506に送信する(ステップS707)。
【0137】
また、プリンタ用データが生成されていても出力先のプリンタに対応する部分、すなわち「対応部分」が存在しない場合も(ステップS705:No)、同様に、通常の処理によりプリンタ用データを生成して出力部506に送信する(ステップS707)。生成されたプリンタ用データ中に「対応部分」がない場合とは、たとえば、プリンタA用のデータとプリンタB用のデータが生成されて保持された状態で、ユーザによるプリント命令(印刷命令)がプリンタCを出力先としてなされた場合などである。
【0138】
送信用データファイルを受け取った出力部506は、出力先のプリンタ、ここではプリンタAに障害が生じているか否かを判定し(ステップS708)、さらに送信用(プリンタ用)データファイル中にプリンタA用のデータ、すなわち「対応部分」が含まれているか否かを判定する(ステップS709)。プリンタAが正常であり(ステップS708:No)、かつプリンタA用のデータが含まれている場合(ステップS709:Yes)、出力部506は、当該ファイル中のデータを、プリンタA用のデータ(「対応部分」のデータ)とプリンタB用のデータとに分離し、プリンタA用のデータのみをプリンタAに送信する(ステップS710)。それによって、プリンタAにおいてプリントが実行される。この際、出力部506は、プリンタB用のデータを保持している。
【0139】
ここで、プリンタAへの送信後、プリンタAに紙づまりなどの障害が生じた場合(ステップS711:Yes)、プリンタAはかかる障害の発生を出力部506に通知する。かかる通知を受けた出力部506は、ステップS708に戻り、プリンタAの障害を認識して(ステップS708:Yes)、出力先プリンタをプリンタAから他のプリンタ、たとえばプリンタBに変更する(ステップS712)。なお、ステップS706またはステップS707につづいてステップS708において出力先プリンタに障害がある場合も、同様に、出力先プリンタを他のプリンタに変更する。
【0140】
出力先を別のプリンタに変更した場合には、その新しい出力先のプリンタに対応してステップS709〜S711を順次おこなう。すなわち、新しい出力先がプリンタBである場合、上述したようにこの例では出力部506はプリンタB用のデータを保持しているため(ステップS709:Yes)、それをプリンタBに送信する(ステップS710)。それによって、障害対策として、プリンタBにおいてプリントが実行される。プリント実行中にプリンタBに障害が発生しなければ(ステップS711:No)、プリントの実行を完了して終了する。
【0141】
プリント実行中にさらにプリンタBに障害が発生した場合には(ステップS711:Yes)、プリンタAをプリンタBに変更したときと同様に、新しい出力先をプリンタCに変更することになる。しかし、この例では最初に生成したのはプリンタA用のデータとプリンタB用のデータであり、プリンタC用のデータは生成されていない(図6、ステップS606参照)。そのため、出力先をプリンタCに変更しても、ステップS709を経て、プリント不能等のエラーによる例外処理をおこない、終了することになる。
【0142】
また、上述した説明では、出力部506はプリンタB用のデータを保持していたが、もし出力部506がプリンタB用のデータを保持していない場合には(ステップS709:No)、プリント不能等のエラーによる例外処理などをおこなって、終了することになる。すなわち、出力先のプリンタに障害が発生したため、出力先を別のプリンタに変更したが、その新たに出力先となったプリンタ用のデータが保持されていない場合には、エラーとなって、プリント処理を終了することになる。
【0143】
なお、上述した説明では、障害発生により新たに出力先となったプリンタ用のデータが保持されていない場合には、プリント処理を終了するとしたが、新たに出力先となったプリンタ用のデータを生成してプリント処理を継続する構成としてもよい。たとえば、上述した説明において、プリンタAおよびプリンタBに障害が発生したため、出力先をプリンタCに変更した場合、エラーとする代わりに、新たにプリンタC用のデータを生成してプリンタCでの出力をおこなう構成としてもよい。つまり、インストールされているすべてのプリンタ(仮想的なものを除く)が障害発生によりプリント不能になるまで、障害対策として順次別のプリンタをもちいてプリント処理をおこなうようにしてもよい。
【0144】
以上説明したように、実施の形態1によれば、変換指示部502が、原稿情報を送信データに変換するよう指示し、処理検知部501が、前記変換指示部502による指示に先行して実行される前記原稿情報に対する処理を検知し、先行変換部503が、前記処理検知部501による前記処理の検知に基づいて前記原稿情報を異なる2以上のデータ形式の前記送信データに変換し、保持部504が、前記先行変換部503により変換された送信データよりなる送信用データファイルを保持する。
【0145】
そのため、ユーザの明示のプリント命令(印刷命令)に先行して、データ形式の異なる複数の出力装置103a,103b,103cを対象としたデータ変換をおこない記憶しておくことができるので、ユーザによる明示のプリント命令(印刷命令)後、プリント処理終了までの時間を短縮することができるとともに、ユーザによる出力装置選択の自由度が広がり、さらには出力先として指定されたプリンタに紙づまり等の障害が発生した場合に、速やかに代わりの出力装置でプリント処理をおこなうことができる。したがって、操作者(ユーザ)がおこなったプリント命令(印刷命令)から印刷終了までの時間を短縮することができるのに加えて、障害発生時にも速やかに出力を得ることができる。
【0146】
また、実施の形態1によれば、変換指示検知部505が、前記変換指示部502による指示を検知し、出力部506が、前記変換指示検知部505による前記指示の検知にしたがって、前記保持部504により保持された送信用データファイルのうち出力先の出力装置103a,103b,103cに対応するデータ形式のデータを当該出力装置へ出力する。
【0147】
そのため、ユーザによる明示のプリント命令(印刷命令)後、または障害発生により別の出力装置でプリントをおこなう場合に、プリンタ用データへの変換処理を必要とせず、当該処理にかかる時間を省略することができる。したがって、操作者がおこなったプリント命令(印刷命令)から印刷終了までの時間を短縮することができるのに加えて、障害発生時にも速やかに出力を得ることができる。
【0148】
また、実施の形態1によれば、前記出力部506は、出力先の出力装置に障害が発生していることを検知すると、前記保持部504により保持された送信用データファイルのうち、その障害が発生した出力装置を除く別の出力装置に対応するデータ形式のデータを当該出力装置へ出力するため、障害発生により別の出力装置でプリントをおこなう場合に、プリンタ用データへの変換処理を必要とせず、当該処理にかかる時間を省略することができる。したがって、障害発生時にも速やかに出力を得ることができる。
【0149】
〔実施の形態2〕
実施の形態2は、ユーザによる明示のプリント命令(印刷命令)よりも先に擬似印刷命令により原稿情報を先行変換して送信データを生成する際に、出力装置に対応したデータ形式の送信データとともに出力装置に非依存な形式のデータも生成するようにしたものである。
【0150】
この実施の形態2にかかるデータ変換装置を含む情報処理装置、情報処理システムのハードウエア構成、データ変換装置のハードウエア構成、出力装置(プリンタ)のハードウエア構成については、図1〜4に示した実施の形態1の各構成と同様であるので、その説明は省略する。
【0151】
(データ変換装置の機能的構成)
つぎに、データ変換装置101の機能的構成について説明する。図8は、実施の形態2かかるデータ変換装置101の構成を機能的に示す機能ブロック図である。図8において、データ変換装置101は、処理検知部501と、変換指示部502と、先行変換部803と、保持部504と、変換指示検知部505と、出力部806と、変換部807とを含む構成である。なお、実施の形態2において、実施の形態1と同じ構成については実施の形態1と同一の符号を付して説明を省略する。
【0152】
先行変換部803は、処理検知部501による処理の検知に基づいて原稿情報を出力装置に非依存のデータに変換する。以下、出力装置に非依存のデータを非依存型データと称する。また、先行変換部803は、その非依存型データに基づいて出力装置103a,103b,103cのうちの1または2以上の装置のそれぞれに対応したデータ形式の送信データを生成する。
【0153】
生成された1以上のデータ形式の送信データおよび非依存型データは、互いに識別可能な状態でマージされ、送信用データファイルとして保持部504に記憶される。なお、各データ形式の送信データへの変換、および非依存型データへの変換については、従来の変換処理の内容と同様であるので、その説明は省略する。
【0154】
変換部807は、変換指示検知部505による指示の検知にしたがって、保持部504により保持された送信用データファイルのうち、出力先の装置(プリンタ)に対応したデータ部分のみを抽出して、それを出力部806に出力する。また、変換部807は、変換指示検知部505による指示の検知にしたがって、保持部504により保持された送信用データファイル中に出力先の装置(プリンタ)に対応したデータ部分がない場合には、送信用データファイルから非依存型データを抽出する。そして、変換部807は、その非依存型データを出力先の装置(プリンタ)に対応したデータ形式の送信データに変換し、それを出力部806に出力する。
【0155】
出力部806は、変換指示検知部505による指示の検知にしたがって、出力先の装置(プリンタ)に対応した送信データを出力先のプリンタに出力する。
【0156】
なお、処理検知部501、変換指示部502、先行変換部803、保持部504、変換指示検知部505、出力部806、変換部807は、それぞれ、ROM302、RAM303またはハードディスク(HD)305、フロッピーディスク(FD)307等の記録媒体に記録されたプログラムに記載された命令にしたがってCPU301等が命令処理を実行することにより、各部の機能を実現するようにしてもよい。
【0157】
(データ変換処理の内容)
つぎに、実施の形態2にかかるデータ変換装置のデータ変換処理の内容について説明する。図9および図10は、実施の形態2にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【0158】
実施の形態2においても、実施の形態1と同様に、文書ファイルの読み込み終了後にプリントが開始可能なコンピュータ環境(アプリケーション環境)であり、他人が作成し公開した文書などのように内容変更の必要がない原稿をプリントする場合を想定する。また、実施の形態2においては、特に限定しないが、たとえば3台の出力装置(プリンタ)103a,103b,103cと1台の仮想的なプリンタがインストールされているとする。以下の実施の形態2の説明において、便宜上、出力装置103a,103b,103cをそれぞれプリンタA、プリンタBおよびプリンタCとし、仮想プリンタをプリンタYとする。
【0159】
プリンタYは、OSがプリンタ非依存の中間データファイル(非依存型データ)を生成するような設定(スプール設定)となっている。また、プリンタA、プリンタBおよびプリンタCは、OSが中間データを生成しないスプール設定となっている。プリンタA、プリンタB、プリンタCおよびプリンタYのドライバはそれぞれプリンタドライバA、プリンタドライバB、プリンタドライバCおよびプリンタドライバYである。
【0160】
また、実施の形態2においては、ユーザによる明示のプリント命令(印刷命令)とは別個に、処理検知部501内の擬似命令発行部(マクロ)がプリント命令(印刷命令)を発行する。図9のフローチャートにおいて、マクロのプリント命令(印刷命令)による処理の手順を示し、図10のフローチャートにおいて主としてユーザの明示のプリント命令(印刷命令)による処理の手順を示している。
【0161】
図9において、ファイルがオープンされ(ステップS901)、その読み込みが終了すると、処理検知部501としての読み込み終了検知部はファイルの読み込み終了を検知し、擬似命令発行部へ読み込み終了を通知する(ステップS902)。ここで、ユーザはアプリケーションプログラムに対してファイルオープンを指示するため、ファイルの読み込み終了を検知するのはアプリケーションプログラムである。
【0162】
つづいて、擬似命令発行部は、アプリケーションプログラムへプリント命令(印刷命令)を発行する(ステップS903)。かかる擬似印刷命令発行部は、「プリンタYを選択し、開いている文書の全ページをファイル出力としてプリントアウトする」という定型動作を実行し、既存文書の読み込み終了直後に実行可能なマクロとして構成されている。したがって、ファイル読み込み終了を検知したアプリケーションが、ファイル読み込み終了後に当該マクロを実行することにより、ファイル出力としてのプリント命令(印刷命令)が発行されることになる(ステップS904)。
【0163】
プリンタYを選択した、ファイル出力としてのプリント命令(印刷命令)はOSに送信される。OSは非依存型データよりなる中間ファイルを生成し、それを作業用のメモリなどにスプールする。つづいて、OSは、中間ファイルをそのままプリンタドライバYに送信可能な仕様のデスプーラを起動する(ステップS905)。デスプーラは、プリンタドライバYへ印刷(変換)命令を発行するとともに、中間ファイルをドライバYへ送信する(ステップS906)。
【0164】
実施の形態2では、たとえばプリンタドライバYは、中間ファイルに基づいて、プリンタAが解釈可能なプリンタ用データAを生成するとともに、プリンタBが解釈可能なプリンタ用データBも生成する。そして、プリンタドライバYは、生成したプリンタ用データAとプリンタ用データBと中間ファイルの非依存型データとを、互いに識別が可能な状態でマージ(結合)する。そして、送信用データファイルとして保持部504へ送信する(ステップS907)。そして、保持部504は、送信用(プリンタ用)データファイルを記録媒体に記録(保持)する(ステップS908)。
【0165】
一方ユーザは、文書を開いた後(ステップS1001)、ある時間の経過後に、アプリケーションに対して明示のプリント命令(印刷命令)を発行する(ステップS1002)。つぎに、アプリケーションは、OSに対してプリント命令(印刷命令)を発行する(ステップS1003)。
【0166】
つぎに、OSは、出力先のプリンタ、たとえばプリンタBに対応したプリンタドライバ、すなわちプリンタドライバBに対してプリント命令(印刷命令)を発行する(ステップS1004)。プリンタドライバBは、プリンタ用データの生成に先立ち、上記保持部504を検索し、開いている文書に対応したプリンタ用データがすでに生成されているか否かを判断する(ステップS1005)。
【0167】
すでに生成されている場合には(ステップS1005:Yes)、プリンタドライバBは、当該送信用データファイルを読み込んで、そのファイル内にプリンタB用のデータ(図10中では「対応部分」と記す)が含まれているか否かを判断する(ステップS1006)。ステップS1006において、含まれている場合には(ステップS1006:Yes)、当該送信用データファイルからプリンタB用のデータのみを抽出し、出力部806に送信する(ステップS1007)。
【0168】
一方、たとえば前記プリント命令(印刷命令)がプリンタCを出力先としてなされた場合のように、開いている文書に対応した送信用データファイルの中に出力先のプリンタに対応した部分が含まれていない場合(ステップS1006:No)、プリンタC用のドライバは、送信用(プリンタ用)データファイルの中から非依存型データを抽出し、それをプリンタC用のデータに変換して出力部806に送信する(ステップS1008)。
【0169】
一方、ステップS1005において、文書を開いてからユーザの明示のプリント命令(印刷命令)までの時間が短い等の理由で、プリンタ用データがまだ生成されていない場合には(ステップS1005:No)、プリンタドライバBは、通常の処理によりプリンタB用のデータを生成して出力部806に送信する(ステップS1009)。プリンタ用データを受け取った出力部806は、そのデータを出力先に指定されたプリンタに送信する(ステップS1010)。それによって、指定されたプリンタにおいてプリントが実行される(ステップS1011)。
【0170】
なお、ステップS1011につづいて、実施の形態1のように、指定されたプリンタに障害が発生した場合に、障害対策として別のプリンタでプリント処理をおこなうことができる。この場合の処理の流れは実施の形態1で説明したとおりであるため、ここでは説明を省略する。
【0171】
以上説明したように、実施の形態2によれば、送信データの異なる2以上のデータ形式のうちの一つは出力装置103a,103b,103cに対して非依存な形式であるため、ユーザが選択した出力装置、または障害発生により代わりの出力先となった出力装置が、前記データ形式の異なる複数の出力装置の中にない場合、出力装置に対して非依存のデータを利用して、ユーザが選択した出力装置または代わりの出力装置用のデータを得ることができる。したがって、障害発生時にも速やかに出力を得ることができる。
【0172】
また、実施の形態2によれば、変換部807が、出力装置103a,103b,103cに対して非依存な形式の前記データを出力先の出力装置に対応するデータ形式のデータに変換するため、ユーザが選択した出力装置、または障害発生により代わりの出力先となった出力装置が、前記データ形式の異なる複数の出力装置の中にない場合、出力装置に対して非依存のデータを、ユーザが選択した出力装置または代わりの出力装置用のデータに変換することによって、出力装置用データの生成に要する時間を短縮することができる。したがって、障害発生時にも速やかに出力を得ることができる。また、アプリケーションの解放を早めることができる。
【0173】
〔実施の形態3〕
実施の形態3は、ユーザによる明示のプリント命令(印刷命令)よりも先に擬似印刷命令により原稿情報を粒度が異なる複数のデータ形式、たとえばPDL(ページ記述言語)形式のデータやラスター形式のデータやそれらの中間的な形式のデータに先行変換するようにしたものである。ここで粒度とは、データ変換の進み具合いを表現するものであり、たとえばラスター展開前のデータは、ラスター展開後のデータよりも粒度が大きく、また展開後のフォントデータは、展開前のフォントデータよりも粒度が小さい。
【0174】
この実施の形態3にかかるデータ変換装置を含む情報処理システムのハードウエア構成、データ変換装置のハードウエア構成、出力装置(プリンタ)のハードウエア構成については、図2〜4に示した実施の形態1の各構成と同様であるので、その説明は省略する。
【0175】
(情報処理装置のハードウエア構成)
つぎに、実施の形態3にかかるデータ変換装置を含む情報処理装置のハードウエア構成について説明する。図11は、この発明の実施の形態3にかかるデータ変換装置を含む情報処理装置のシステム構成を示すブロック図である。
【0176】
図11において、1101はデータ変換装置(コンピュータ)であり、1102は表示装置(モニタ)であり、1103は出力装置(プリンタ)である。これは、コンピュータとプリンタとを組み合わせたスタンドアローン型における通常の構成であり、さらに、データ変換装置1101にはユーザインタフェースとしての表示装置(モニタ)1102が接続されている。なお、プリンタの数は2台以上でもよい。
【0177】
データ変換装置1101は、演算処理部1111、記憶部1112、送信部1113を備えている。演算処理部1111、記憶部1112および送信部1113はそれぞれ実施の形態1の演算処理部111、記憶部112および送信部113と同様のものである。
【0178】
出力装置(プリンタ)1103は、図示を省略するプリンタエンジン(画像形成部)、演算処理部1131、記憶部1132および受信部1133を備えている。演算処理部1131、記憶部1132および受信部1133はそれぞれ実施の形態1の演算処理部131、記憶部132および受信部133と同様のものである。
【0179】
出力装置(プリンタ)1103は、ラスター展開等の処理をデータ変換装置1101側でおこなうか、出力装置(プリンタ)1103側でおこなうかということをユーザが選択することができる構成となっている。これによって、ユーザは、コンピュータおよびプリンタのうち処理の速い方にラスター展開をおこなわせたり、負荷を分散させたりすることができる。このような機能を有するプリンタは公知である。
【0180】
また、出力装置(プリンタ)1103は、フォントの展開処理をデータ変換装置1101側でおこなうか、出力装置(プリンタ)1103側でおこなうか、ということをユーザが選択することができる構成となっている。これによって、ユーザはプリントされたものの見かけを優先するか否か、つまり元の原稿とプリントされたものとで見かけが異なることを許可するか否かを選択することができる。
【0181】
一般にプリンタは、原稿中で指定されているフォントデータを有していない場合、フォントを置換してプリントすることがあり、その場合、元の原稿とプリントされたものとでは見かけが異なってしまうことがある。このような機能を有するプリンタは公知である。
【0182】
なお、上記演算処理部1111,1131、記憶部1112,1132は、物理的にデータ変換装置1101あるいは出力装置1103内に存在する必要はなく、仮想的にデータ変換装置あるいは出力装置を構成すればよい。したがって、たとえば、演算処理部1111,1131、記憶部1112,1132が、ネットワーク上に存在するような構成であってもよい。
【0183】
(データ変換装置の機能的構成)
つぎに、データ変換装置1101の機能的構成について説明する。図12は、実施の形態3にかかるデータ変換装置1101の構成を機能的に示す機能ブロック図である。図12において、データ変換装置1101は、処理検知部501と、変換指示部502と、先行変換部1203と、保持部504と、変換指示検知部505と、出力部1206と、抽出部1207とを含む構成である。なお、実施の形態3において、実施の形態1と同じ構成については実施の形態1と同一の符号を付して説明を省略する。
【0184】
先行変換部1203は、処理検知部501による処理の検知に基づいて原稿情報を粒度が異なる複数のデータ形式の送信データ、たとえばPDL形式の送信データやラスター形式の送信データなどに変換する。変換された複数のデータ形式の送信データは互いに識別可能な状態でマージされ、送信用データファイルとして保持部504に記憶される。なお、各データ形式の送信データへの変換については、従来の変換処理の内容と同様であるので、その説明は省略する。
【0185】
抽出部1207は、変換指示検知部505による指示の検知にしたがって、保持部504により保持された送信用データファイルのうちいずれか一つのデータ形式のデータ部分を抽出して、それを出力部1206に出力する。
【0186】
出力部1206は、変換指示検知部505による指示の検知にしたがって、抽出部1207により抽出された送信データを出力先のプリンタに出力する。
【0187】
なお、処理検知部501、変換指示部502、先行変換部1203、保持部504、変換指示検知部505、出力部1206、抽出部1207は、それぞれ、ROM302、RAM303またはハードディスク(HD)305、フロッピーディスク(FD)307等の記録媒体に記録されたプログラムに記載された命令にしたがってCPU301等が命令処理を実行することにより、各部の機能を実現するようにしてもよい。
【0188】
(データ変換処理の内容)
つぎに、実施の形態3にかかるデータ変換装置のデータ変換処理の内容について説明する。図13および図14は、実施の形態3にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【0189】
実施の形態3においても、実施の形態1と同様に、文書ファイルの読み込み終了後にプリントが開始可能なコンピュータ環境(アプリケーション環境)であり、他人が作成し公開した文書などのように内容変更の必要がない原稿(全1ページである)をプリントする場合を想定する。また、実施の形態3においては、1台の出力装置(プリンタ)1103と1台の仮想的なプリンタがインストールされているとする。
【0190】
以下の実施の形態3の説明において、便宜上、出力装置1103をプリンタXとし、仮想プリンタをプリンタYとする。プリンタXおよびプリンタYのドライバはそれぞれプリンタドライバXおよびプリンタドライバYである。実施の形態3においては、プリンタXは、PDL形式のデータを扱うPDLモード、ラスター形式のデータを扱うイメージデータモード(ラスターデータモード)の2つの処理モードを指定することが可能である。
【0191】
また、実施の形態3においては、ユーザによる明示のプリント命令(印刷命令)とは別個に、処理検知部501内の擬似命令発行部(マクロ)がプリント命令(印刷命令)を発行する。図13のフローチャートにおいて、マクロのプリント命令(印刷命令)による処理の手順を示し、図14のフローチャートにおいて主としてユーザの明示のプリント命令(印刷命令)による処理の手順を示している。
【0192】
図13において、ファイルがオープンされ(ステップS1301)、その読み込みが終了すると、処理検知部501としての読み込み終了検知部はファイルの読み込み終了を検知し、擬似命令発行部へ読み込み終了を通知する(ステップS1302)。ここで、ユーザはアプリケーションプログラムに対してファイルオープンを指示するため、ファイルの読み込み終了を検知するのはアプリケーションプログラムである。
【0193】
つづいて、擬似命令発行部は、アプリケーションプログラムへプリント命令(印刷命令)を発行する(ステップS1303)。かかる擬似印刷命令発行部は、「プリンタYを選択し、開いている文書の全ページをファイル出力としてプリントアウトする」という定型動作を実行し、既存文書の読み込み終了直後に実行可能なマクロとして構成されている。したがって、ファイル読み込み終了を検知したアプリケーションが、ファイル読み込み終了後に当該マクロを実行することにより、ファイル出力としてのプリント命令(印刷命令)が発行されることになる(ステップS1304)。
【0194】
プリンタYを選択した、ファイル出力としてのプリント命令(印刷命令)はOSを介してプリンタドライバYに送信(発行)される(ステップS1305)。プリンタドライバYは、原稿情報をプリンタXが解釈可能なPDL形式のデータAに変換するとともに、ラスター形式のデータBにも変換する。そして、プリンタドライバYは、生成したPDL形式のデータAとラスター形式のデータBとを、互いに識別が可能な状態でマージ(結合)し、送信用(プリンタ用)データファイルとして保持部504へ送信する(ステップS1306)。そして、保持部504は送信用(プリンタ用)データファイルを記録媒体に記録(保持)する(ステップS1307)。
【0195】
一方ユーザは、文書を開いた後(ステップS1401)、ある時間の経過後に、アプリケーションに対して明示のプリント命令(印刷命令)を発行する(ステップS1402)。つぎに、アプリケーションは、OSに対してプリント命令(印刷命令)を発行する(ステップS1403)。
【0196】
つぎに、OSは、出力先のプリンタ、たとえばプリンタXに対応したプリンタドライバ、すなわちプリンタドライバXに対してプリント命令(印刷命令)を発行する(ステップS1404)。プリンタドライバXは、プリンタ用データの生成に先立ち、上記保持部504を検索し、開いている文書に対応したプリンタ用データがすでに生成されているか否かを判断する(ステップS1405)。
【0197】
すでに生成されている場合には(ステップS1405:Yes)、プリンタドライバXは、当該送信用(プリンタ用)データファイルを読み込み、ユーザが指定した処理モード(PDLモードまたはイメージデータモード)に対応した形式のデータのみを抽出し、出力部1206に送信する(ステップS1406)。
【0198】
一方、ステップS1405において、文書を開いてからユーザの明示のプリント命令(印刷命令)までの時間が短いなどの理由で、プリンタ用データがまだ生成されていない場合には(ステップS1405:No)、プリンタドライバXは、ユーザが指定した処理モードに対応した形式のデータを通常の処理により生成して出力部1206に送信する(ステップS1407)。プリンタ用データを受け取った出力部1206は、受け取ったデータをプリンタXに送信する(ステップS1408)。それによって、プリンタXにおいてプリントが実行される(ステップS1409)。
【0199】
以上説明したように、実施の形態3によれば、変換指示部502が、原稿情報を送信データに変換するよう指示し、処理検知部501が、前記変換指示部502による指示に先行して実行される前記原稿情報に対する処理を検知し、先行変換部1203が、前記処理検知部501による前記処理の検知に基づいて同一の前記出力装置(プリンタ)1103に対して、前記原稿情報を粒度が異なる複数のデータ形式の前記送信データに変換し、保持部504が、前記先行変換部1203により変換された送信データを保持するため、ユーザの明示のプリント命令(印刷命令)に先行して、粒度が異なる複数のデータ形式のデータ変換をおこない記憶しておくことができるので、たとえばラスター展開やフォント展開等の処理をデータ変換装置1101および出力装置(プリンタ)1103のいずれにおいてもおこなうことができる場合にも、ユーザによる明示のプリント命令(印刷命令)後、適当な粒度のデータ形式を選択してプリント処理をおこなうことによってプリント処理終了までの時間を短縮することができる。
【0200】
したがって、たとえばラスター展開やフォント展開等の処理をデータ変換装置1101および出力装置(プリンタ)1103のいずれにおいてもおこなうことができるシステムにおいて、操作者(ユーザ)がおこなったプリント命令(印刷命令)から印刷終了までの時間を短縮することができる。
【0201】
また、実施の形態3によれば、変換指示検知部505が、前記変換指示部502による指示を検知すると、抽出部1207が、前記変換指示検知部505による前記指示の検知にしたがって、前記保持部504により保持された送信データのうちいずれか一つのデータ形式のデータを抽出し、出力部1206が、前記抽出部1207により抽出されたデータを前記出力装置(プリンタ)1103へ出力するため、ユーザによる明示のプリント命令(印刷命令)後、プリンタ用データへの変換処理を必要とせず、当該処理にかかる時間を省略することができる。したがって、たとえばラスター展開やフォント展開等の処理をデータ変換装置1101および出力装置(プリンタ)1103のいずれにおいてもおこなうことができるシステムにおいて、操作者(ユーザ)がおこなったプリント命令(印刷命令)から印刷終了までの時間を短縮することができる。
【0202】
〔実施の形態4〕
実施の形態4は、ユーザによる明示のプリント命令(印刷命令)よりも先に擬似印刷命令により原稿情報を粒度が異なるたとえばPDL(ページ記述言語)形式のデータやラスター形式のデータなどに先行変換し、たとえば出力装置(プリンタ)へのデータ送信からプリント開始までに要する時間を推定して最適なデータ形式のデータを出力装置(プリンタ)へ出力するようにしたものである。
【0203】
この実施の形態4にかかるデータ変換装置を含む情報処理装置のハードウエア構成については図11に示した実施の形態3の構成と同様であり、また実施の形態4にかかるデータ変換装置を含む情報処理システムのハードウエア構成、データ変換装置のハードウエア構成、出力装置(プリンタ)のハードウエア構成については、図2〜4に示した実施の形態1の各構成と同様であるので、その説明は省略する。
【0204】
(データ変換装置の機能的構成)
つぎに、データ変換装置1101の機能的構成について説明する。図15は、実施の形態4にかかるデータ変換装置1101の構成を機能的に示す機能ブロック図である。図15において、データ変換装置1101は、処理検知部501と、変換指示部502と、先行変換部1503と、保持部504と、変換指示検知部505と、出力部1506と、抽出部1507と、処理時間検知部1508とを含む構成である。なお、実施の形態4において、実施の形態1と同じ構成については実施の形態1と同一の符号を付して説明を省略する。また、先行変換部1503および出力部1506はそれぞれ実施の形態3の先行変換部1203および出力部1206と同様のものである。
【0205】
抽出部1507は、変換指示検知部505による指示の検知にしたがって、保持部504により保持された送信用データファイルのうち、処理時間検知部1508により各データ形式ごとに求められた処理時間に基づいて、いずれか一つのデータ形式のデータ部分を抽出して、それを出力部1506に出力する。
【0206】
処理時間検知部1508は、出力装置1103側での単位PDL量あたりのデータ処理速度Vc、PDL形式のデータAのサイズSa,ラスター形式のデータBのサイズSbおよび略現在の転送速度Viに基づいて、つぎの(1)式および(2)式より、TaおよびTbを簡易に見積もる。
【0207】
Taは、PDL形式のデータAが出力装置1103に送信され、そこで最終的なラスターデータまでの展開が終了する時間、すなわち出力装置1103でプリントが開始されるまでの時間である。Tbは、ラスター形式のデータBが出力装置1103に送信され、そこで最終的なラスターデータまでの展開が終了し(データ変換装置1101において最終的なラスターデータまで展開されていない場合)、出力装置1103でプリントが開始されるまでの時間である。
【0208】
Ta=Sa/ Vi+Sa/ Vc ・・・(1)
Tb=Sb/ Vi ・・・(2)
【0209】
転送速度Viを取得するための手段(以下、転送速度検知手段とする)は、たとえばpingコマンドのようなものでもよいし、あるいはOSに付属されているパフォーマンスモニタのように、所定のサンプリング間隔でトラフィックをモニタし、トラフィックの量から実効転送速度を算出するようなものでもよい。また、現在のある瞬間で検知した転送速度をもちいてもよいし、過去の複数の瞬間で測定したデータの平均値等をもちいてもよい。
【0210】
なお、処理検知部501、変換指示部502、先行変換部1503、保持部504、変換指示検知部505、出力部1506、抽出部1507、処理時間検知部1508は、それぞれ、ROM302、RAM303またはハードディスク(HD)305、フロッピーディスク(FD)307等の記録媒体に記録されたプログラムに記載された命令にしたがってCPU301等が命令処理を実行することにより、各部の機能を実現するようにしてもよい。
【0211】
(データ変換処理の内容)
つぎに、実施の形態4にかかるデータ変換装置のデータ変換処理の内容について説明する。実施の形態4においても、実施の形態1と同様に、文書ファイルの読み込み終了後にプリントが開始可能なコンピュータ環境(アプリケーション環境)であり、他人が作成し公開した文書などのように内容変更の必要がない原稿(全1ページである)をプリントする場合を想定する。また、実施の形態4においては、1台の出力装置1103(プリンタXとする)と1台の仮想的なプリンタ(プリンタYとする)がインストールされているとする。
【0212】
実施の形態4においては、プリンタXは、PDL形式のデータを扱うPDLモード、ラスター形式のデータを扱うイメージデータモード(ラスターデータモード)の2つの処理モードを指定することが可能である。また、プリンタXのドライバ、すなわちプリンタドライバXは、プリンタ側での単位PDL量あたりのデータ処理速度Vcを定数としてその内部に有している。
【0213】
また、実施の形態4においては、ユーザによる明示のプリント命令(印刷命令)とは別個に、処理検知部501内の擬似命令発行部(マクロ)がプリント命令(印刷命令)を発行する。このマクロのプリント命令(印刷命令)による処理手順については、図13に示すフローチャートに関連して実施の形態3において説明した処理手順と同じであるため、ここでは簡単に説明し、図示および詳細な説明を省略する。
【0214】
まず、ファイルの読み込みが終了すると、「プリンタYを選択し、開いている文書の全ページをファイル出力としてプリントアウトする」というマクロが実行される。それによって、PDL形式のデータAとラスター形式のデータBとが生成され、それらがマージされて保持部504に記録(保持)される(図13、ステップS1301〜S1307参照)。
【0215】
図16に示すフローチャートは、主としてユーザの明示のプリント命令(印刷命令)による処理の手順を示している。ユーザは、文書を開いた後(ステップS1601)、ある時間の経過後に、アプリケーションに対して明示のプリント命令(印刷命令)を発行する(ステップS1602)。つぎに、アプリケーションは、OSに対してプリント命令(印刷命令)を発行する(ステップS1603)。
【0216】
つぎに、OSは、出力先のプリンタXのプリンタドライバXに対してプリント命令(印刷命令)を発行する(ステップS1604)。そして、プリンタドライバXは、プリンタ用データの生成に先立ち、上記保持部504を検索し、開いている文書に対応したプリンタ用データがすでに生成されているか否かを判断する(ステップS1605)。
【0217】
すでに生成されている場合には(ステップS1605:Yes)、プリンタドライバXは当該送信用データファイルを読み込み、PDL形式のデータAのサイズSaおよびラスター形式のデータBのサイズSbを検知する(ステップS1606)。またプリンタドライバXは、転送速度検知手段に略現在の転送速度Viを問い合わせ、上記(1)式および(2)式より出力開始までの時間TaおよびTbを簡易に見積もる(ステップS1607)。
【0218】
そして、Ta≧Tbの場合には(ステップS1608:Yes)、ユーザによる処理モードの指定に関わらず、ラスター形式のデータBのみを抽出して出力部1506へ送信する(ステップS1609)。一方、Ta<Tbの場合には(ステップS1608:No)、ユーザが指定したデータ形式がPDL形式である場合にのみPDL形式のデータAのみを抽出し、一方、ユーザが指定したデータ形式がラスター形式である場合にはラスター形式のデータBのみを抽出し、抽出したデータを出力部1506へ送信する(ステップS1610)。
【0219】
このような処理をおこなう理由は、たとえばフォント展開において、フォントが置換されてプリントされたことによって元の原稿とプリントされたものとで見かけが異なってしまうことがあるが、ユーザの意図が両者の見かけを一致させたい場合にそのユーザの意図に反するのを防ぐためである。
【0220】
一方、ステップS1605において、文書を開いてからユーザの明示のプリント命令(印刷命令)までの時間が短いなどの理由で、プリンタ用データがまだ生成されていない場合には(ステップS1605:No)、プリンタドライバXは、ユーザが指定した処理モードに対応した形式のデータを通常の処理によって生成して出力部1506に送信する(ステップS1611)。プリンタ用データを受け取った出力部1506は、そのデータをプリンタXに送信する(ステップS1612)。それによって、プリンタXにおいてプリントが実行される(ステップS1613)。
【0221】
以上説明したように、実施の形態4によれば、処理時間検知部1508が、前記抽出部1507によりいずれか一つのデータ形式のデータを抽出する際の判断基準として、前記先行変換部1503により変換された各データ形式のデータについて前記出力装置(プリンタ)1103での出力処理に要する時間を求めるため、ユーザによる明示のプリント命令(印刷命令)後、出力装置(プリンタ)1103での出力処理に要する時間が短い粒度のデータ形式を抽出して出力装置(プリンタ)1103へ出力することによってプリント処理終了までの時間を短縮することができる。したがって、たとえばラスター展開やフォント展開等の処理をデータ変換装置1101および出力装置(プリンタ)1103のいずれにおいてもおこなうことができるシステムにおいて、操作者(ユーザ)がおこなったプリント命令(印刷命令)から印刷終了までの時間を短縮することができる。
【0222】
なお、本実施の形態においては、単位PDL量あたりの処理速度Vcをもちいて出力装置(プリンタ)1103での出力に要する時間を簡易に見積もりを行ったが、PDLが有する描画命令の種類ごとに、単位PDL量あたりの処理速度をドライバ内部に有することにより、より正確に見積もることも可能である。
【0223】
〔実施の形態5〕
実施の形態5は、ユーザによる明示のプリント命令(印刷命令)よりも先に擬似印刷命令により原稿情報を粒度が異なるたとえばPDL(ページ記述言語)形式のデータやラスター形式のデータなどに先行変換し、たとえば出力装置(プリンタ)でのプリント処理時にデータ形式が原因で障害が発生した場合に、出力装置(プリンタ)に別のデータ形式のデータを再送してプリント処理をおこなうようにしたものである。
【0224】
この実施の形態5にかかるデータ変換装置を含む情報処理システムのハードウエア構成、データ変換装置のハードウエア構成、出力装置(プリンタ)のハードウエア構成については、図2〜4に示した実施の形態1の各構成と同様であるので、その説明は省略する。
【0225】
(情報処理装置のハードウエア構成)
つぎに、実施の形態5かかるデータ変換装置を含む情報処理装置のハードウエア構成について説明する。図17は、この発明の実施の形態5にかかるデータ変換装置を含む情報処理装置のシステム構成を示すブロック図である。
【0226】
図17において、1701はデータ変換装置(コンピュータ)であり、1702は表示装置(モニタ)であり、1703は出力装置(プリンタ)である。これは、コンピュータとプリンタとを組み合わせたスタンドアローン型における通常の構成であり、さらに、データ変換装置1701にはユーザインタフェースとしての表示装置(モニタ)1702が接続されている。なお、プリンタの数は2台以上でもよい。
【0227】
データ変換装置1701は、演算処理部1711、記憶部1712、送信部1713を備えている。演算処理部1711、記憶部1712および送信部1713はそれぞれ実施の形態1の演算処理部111、記憶部112および送信部113と同様のものである。
【0228】
出力装置(プリンタ)1703は、図示を省略するプリンタエンジン(画像形成部)、演算処理部1731、記憶部1732、受信部1733および障害発生通知部1734を備えている。演算処理部1731、記憶部1732および受信部1733はそれぞれ実施の形態1の演算処理部131、記憶部132および受信部133と同様のものである。
【0229】
障害発生通知部1734は、たとえばプリント処理の遂行が困難である場合に障害の発生を検知するCPU401、および障害発生通知をデータ変換装置1701の送信部1713に送信するためのインタフェース409等によりその機能を実現する。
【0230】
ここで、プリント処理の遂行が困難な障害として、たとえば複雑な原稿をPDLモードでプリントする場合に、メモリ等のプリンタ側のリソースが不十分であるため、プリンタ側でのラスター展開が適切におこなわれず、プリンタがハングアップしてはいないがプリント出力が得られない、という障害が考えられる。障害発生通知部1734は、このような障害が発生した場合に、データ変換装置1701の送信部1713に通知する。
【0231】
出力装置(プリンタ)1703は、実施の形態3で説明した出力装置(プリンタ)1103と同様に、ラスター展開やフォントの展開等の処理をデータ変換装置1701側と出力装置(プリンタ)1703側のいずれでおこなうかということをユーザが選択することができる構成となっている。
【0232】
なお、上記演算処理部1711,1731、記憶部1712,1732は、物理的にデータ変換装置1701あるいは出力装置1703内に存在する必要はなく、仮想的にデータ変換装置あるいは出力装置を構成すればよい。したがって、たとえば、演算処理部1711,1731、記憶部1712,1732が、ネットワーク上に存在するような構成であってもよい。
【0233】
(データ変換装置の機能的構成)
つぎに、データ変換装置1701の機能的構成について説明する。図18は、実施の形態5にかかるデータ変換装置1701の構成を機能的に示す機能ブロック図である。図18において、データ変換装置1701は、処理検知部501と、変換指示部502と、先行変換部1803と、保持部504と、変換指示検知部505と、出力部1806とを含む構成である。なお、実施の形態5において、実施の形態1と同じ構成については実施の形態1と同一の符号を付して説明を省略する。また、先行変換部1803は実施の形態3の先行変換部1203と同様のものである。
【0234】
出力部1806は、変換指示検知部505による指示の検知にしたがって、保持部504により保持された送信用データファイルのうちいずれか一つのデータ形式のデータのみを抽出して、それを出力装置1703に出力する。また、出力部1806は、出力装置1703においてデータ展開が困難であるなどの障害が発生したことを検知する機能を有している。たとえば、出力部1806は、図17に示した送信部1713によりその機能を実現することができる。
【0235】
出力部1806は、あるOSのポートモニタと呼ばれる部分に相当し、プリンタメーカが独自の仕様のポートモニタを提供することが可能である。なお、出力装置1703の障害発生通知部1734とデータ変換装置1701の送信部1713との間の障害発生通知機能については、コンピュータとプリンタとの間で双方向通信をおこなう技術として公知であるため、説明を省略する。
【0236】
なお、処理検知部501、変換指示部502、先行変換部1803、保持部504、変換指示検知部505、出力部1806は、それぞれ、ROM302、RAM303またはハードディスク(HD)305、フロッピーディスク(FD)307等の記録媒体に記録されたプログラムに記載された命令にしたがってCPU301等が命令処理を実行することにより、各部の機能を実現するようにしてもよい。
【0237】
(データ変換処理の内容)
つぎに、実施の形態5にかかるデータ変換装置のデータ変換処理の内容について説明する。実施の形態5においても、実施の形態1と同様に、文書ファイルの読み込み終了後にプリントが開始可能なコンピュータ環境(アプリケーション環境)であり、他人が作成し公開した文書などのように内容変更の必要がない原稿(全1ページである)をプリントする場合を想定する。
【0238】
また、実施の形態5においては、1台の出力装置1703(プリンタXとする)と1台の仮想的なプリンタ(プリンタYとする)がインストールされているとする。実施の形態5においては、プリンタXは、PDL形式のデータを扱うPDLモード、ラスター形式のデータを扱うイメージデータモード(ラスターデータモード)の2つの処理モードを指定することが可能である。
【0239】
また、実施の形態5においては、ユーザによる明示のプリント命令(印刷命令)とは別個に、処理検知部501内の擬似命令発行部(マクロ)がプリント命令(印刷命令)を発行する。このマクロのプリント命令(印刷命令)による処理手順については、図13に示すフローチャートに関連して実施の形態3において説明した処理手順と同じであるため、ここでは簡単に説明し、図示および詳細な説明を省略する。
【0240】
まず、ファイルの読み込みが終了すると、「プリンタYを選択し、開いている文書の全ページをファイル出力としてプリントアウトする」というマクロが実行される。それによって、PDL形式のデータAとラスター形式のデータBとが生成され、それらがマージされて保持部504に記録(保持)される(図13、ステップS1301〜S1307参照)。
【0241】
図19に示すフローチャートは、主としてユーザの明示のプリント命令(印刷命令)による処理の手順を示している。ユーザは、文書を開いた後(ステップS1901)、ある時間の経過後に、アプリケーションに対して明示のプリント命令(印刷命令)を発行する(ステップS1902)。つぎに、アプリケーションは、OSに対してプリント命令(印刷命令)を発行する(ステップS1903)。
【0242】
つぎに、OSは、出力先のプリンタXのプリンタドライバXに対してプリント命令(印刷命令)を発行する(ステップS1904)。プリンタドライバXは、プリンタ用データの生成に先立ち、上記保持部504を検索し、開いている文書に対応したプリンタ用データがすでに生成されているか否かを判断する(ステップS1905)。
【0243】
すでに生成されている場合には(ステップS1905:Yes)、プリンタドライバXは当該送信用データファイルを読み込み、ユーザがいずれの処理モードを指定しているかを表す情報とともに、当該ファイルをそのまま、すなわちPDL形式のデータAとラスター形式のデータBがマージされた状態のまま送信部に送信する(ステップS1906)。
【0244】
一方、ステップS1905において、文書を開いてからユーザの明示のプリント命令(印刷命令)までの時間が短い等の理由で、プリンタ用データがまだ生成されていない場合には(ステップS1905:No)、プリンタドライバXは、ユーザが指定した処理モードに対応した形式のデータを通常の処理により生成して出力部1806に送信する(ステップS1907)。送信用データファイルを受け取った出力部1806は、プリンタXに障害が生じているか否かを判定する(ステップS1908)。
【0245】
プリンタXが正常である場合には(ステップS1908:No)、出力部1806は、当該送信用(プリンタ用)データファイル中のデータの中から、ユーザが指定した処理モードに対応するデータを抽出し、プリンタXに送信する(ステップ1909)。それによって、プリンタXにおいてプリントが実行される。この際、出力部1806は、プリンタXに送信した以外のモードのデータを保持している。
【0246】
プリンタXでのプリント処理の実行中に、データ展開不能などの障害が生じた場合(ステップS1910:Yes)、プリンタXはかかる障害の発生を出力部1806に通知する。かかる通知を受けた出力部1806は、ステップS1908に戻り、プリンタXの障害を認識し(ステップS1908:Yes)、保持部504から受け取った送信用データファイルの中に、ユーザが指定したモードとは異なる処理モードに対応するデータがあるか否か調べる(ステップS1911)。
【0247】
当該送信用データファイルの中に、ユーザが指定したモードとは異なる処理モードに対応するデータがある場合(ステップS1911:Yes)、当該送信用データファイルの中からそのデータを抽出し、プリンタXへ送信する(ステップS1912)。それによって、プリンタXにおいてプリントが実行される。
【0248】
一方、当該送信用データファイルの中に、ユーザが指定したモードとは異なる処理モードに対応するデータがない場合(ステップS1911:No)、プリント不能等のエラーによる例外処理をおこない、終了することになる。
【0249】
以上説明したように、実施の形態5によれば、変換指示検知部505が、前記変換指示部502による指示を検知し、出力部1806が、前記変換指示検知部505による前記指示の検知にしたがって、前記保持部504により保持された送信データのうちいずれか一つのデータ形式のデータを抽出して前記出力装置(プリンタ)1703へ出力し、その出力により前記出力装置(プリンタ)1703に障害が発生していることを検知した場合には、前記保持部504により保持された送信データのうち別のデータ形式のデータを前記出力装置(プリンタ)1703へ出力するため、ユーザによる明示のプリント命令(印刷命令)後、プリンタ用データへの変換処理を必要とせず、当該処理にかかる時間を省略することができるとともに、たとえば出力装置(プリンタ)1703でのラスター展開等の処理が適切におこなわれないためプリント処理が遂行されないような障害が発生した場合に、別の形式のデータを出力装置(プリンタ)1703に改めて出力することができる。
【0250】
したがって、たとえばラスター展開やフォント展開等の処理をデータ変換装置1701および出力装置(プリンタ)1703のいずれにおいてもおこなうことができるシステムにおいて、操作者(ユーザ)がおこなったプリント命令(印刷命令)から印刷終了までの時間を短縮することができるとともに、データ形式が原因となる障害発生時にも速やかにプリント出力を得ることができる。
【0251】
〔実施の形態6〕
図20および21は、実施の形態6にかかる発明の実施例の処理の流れを示したものである。本実施の形態は、文書ファイルの読み込みが終了した後に当該文書のプリントが開始可能なコンピュータ環境(アプリケーション環境)において、他人が作成し公開した文書などの、内容変更の必要がない全1ページの原稿をプリントする場合の実施の形態である。
【0252】
本実施の形態においては、1台のプリンタXがインストールされている他、仮想的なプリンタYもインストールされている。本実施の形態のプリンタドライバXは、画像データに対し、公知の「ランレングス圧縮モード」「JPEGモード」の2つの圧縮処理を実行することが可能である。
【0253】
また、本願実施例においては、ユーザによる明示の印刷命令とは別個に(独立して)、擬似命令発行手段が印刷命令を発行するが、図20が擬似命令発行手段の印刷命令による処理の流れを示し、図21が主としてユーザの明示のプリント命令による処理の流れを示している。
【0254】
図20および図21に示すように、ユーザによって文書ファイルが開かれると、読み込み終了検知手段はファイルの読み込み終了を検知し、擬似命令発行手段へこれを通知する。本実施の形態の場合、ユーザはアプリケーションプログラムに対してファイルオープンを指示するため、読み込み終了を検知するのはアプリケーションプログラムである。
【0255】
つづいて、擬似印刷命令発行手段は、アプリケーションプログラムへ印刷命令を発行する。かかる擬似印刷命令発行手段は、アプリケーション内で動作するマクロとして実現することが可能である。
【0256】
ここでマクロとは、アプリケーションの有する個々の機能を、一連の定型動作として実行させることが可能なプログラムを指している。一般に高機能なアプリケーションにおいては、定型動作を所定のマクロ言語で記述しておくことにより、アプリケーション内でマクロを実行させることが可能である。そしてマクロの実行は、Microsoft社のWordを例にとれば、ユーザによる明示の実行指示による他、アプリケーションの起動と同時にアプリケーションによって実行させたり、既存文書の読み込み終了と同時にアプリケーションによって実行させたりすることが可能である。
【0257】
本実施例のマクロは、「プリンタYを選択し、開いている文書のすべてのページを、ファイル出力としてプリントアウトする」という定型動作を実行し、既存文書の読み込み終了直後に実行可能なマクロとして構成されている。よって、ファイル読み込み終了を検知したアプリケーションが、当該マクロを実行することにより、ファイル出力としてのプリント命令が発行される。
【0258】
ここでファイル出力とは、プリンタ用データをプリンタに対して送信するのではなく、ハードディスク等の記憶手段上に記録することを意味する。
【0259】
よって、プリンタYを選択したファイル出力としてのプリント命令は、OSへと送信され、OSは、標準形式の中間データファイルを生成し、記憶装置にスプールする。つづいて、OSは該ファイルをデスプールするが、本実施の形態においては、中間データファイルからプリンタ用データへの変換命令がプリンタドライバに入力されるのではなく、まず原稿全体分の前記中間データファイルそのものがプリンタドライバに対して入力される(ステップS2005)。
【0260】
該中間データファイルそのものをプリンタドライバに対して入力させるには、たとえばWindowsの場合、OSのデスプール機能に変更を加えればよい(デスプーラ部分を独自仕様のものに変更し、中間データファイルをそのまま渡すようにすればよい)。一般にかかる中間データには、原稿中に含まれる画像データの所在(具体的には、PCのメモリ内のポインタ)と、各画像データと一意に対応した識別子が含まれている。前記中間データファイルは、一般に描画コマンドの集合であり、前記ポインタや識別子は、該コマンドの引数として与えられる。
【0261】
そして本実施の形態におけるプリンタドライバYは、前記中間データから画像情報を取り出し、各画像情報の一部(たとえば上部の10ライン分のみ)に関して、方法A(ランレングスモード)、方法B(JPEGモード)で圧縮する(ステップS2006)。そして、圧縮後のデータ量が最も小さくなった圧縮方法を、文書ファイル名、画像情報識別子と対応づけて、規定されたファイルとして保持手段に保持する(ステップS2007)。
【0262】
一方ユーザは、当該文書のオープン(ステップS2101)後、ある時間の経過後に、アプリケーションに対して明示のプリント命令を発行する(ステップS2102〜2104)。このプリント命令がプリンタXを出力先としてなされた場合、プリンタX用のデータを生成するプリンタドライバXは、データの生成に先立って上記規定されたファイルを検索し、プリント命令がなされた文書ファイル名との一致を確認すると共に、圧縮方法の指定の有無を調べる(ステップS2105)。
【0263】
そしてすでに指定がある場合には、識別子をもとに、画像データごとに指定された方法で圧縮してプリンタ用データを生成し、送信手段へ送信する(ステップS2106、S2108)。文書が変更されない場合、図20の流れと図21の流れとで、一般に識別子は変更されない)。
【0264】
一方、マクロの動作開始よりもユーザの明示のプリント命令の方が早い等の理由で、ステップS102が実行されない場合には、プリンタ用データが生成され、送信される(ステップS2107、S2108)。その後プリント(印刷)され(ステップS2109)、一連の処理を終了する。
【0265】
なお、以上の実施の形態では、画像ごとに圧縮方法を決定したが、全画像データを通した方法A、Bの圧縮率の平均を取ることなどによって、画像と圧縮方法の対応(識別子等)を意識することなく、簡易に効率的な圧縮方法を選択することも可能である。
【0266】
このようにして、ユーザからのプリント命令に先立って、原稿に関する情報を得ておき、あらかじめ適用すべき圧縮方法を選択しておくように構成したので、処理時間の増大を招くことなしに最適な圧縮処理を可能にすることができる。
【0267】
また、ユーザからのプリント命令に先立って、原稿に含まれるすべての画像情報に関する情報を得ておき、各画像データごとにあらかじめ適用すべき圧縮方法を選択し、保持しておくように構成したので、処理時間の増大を招くことなしに各画像ごとに最適な圧縮処理を適用することが可能になる。
【0268】
また、プリント命令に先行して原稿に関する情報を得る手段として、OSが標準で用意している中間データを生成させるように構成したので、前記手段を汎用的で簡易かつ高速なものとすることができる。
【0269】
〔実施の形態7〕
図22、図23は、実施の形態7にかかる発明の処理の流れを示したものである。本実施の形態も、実施の形態6と同様に、文書ファイルの読み込みが終了した後に当該文書のプリントが開始可能なコンピュータ環境(アプリケーション環境)において、他人が作成し公開した文書のような、内容変更の必要がない全1ページの原稿をプリントする場合の実施例である。
【0270】
本実施の形態においても、1台のプリンタXがインストールされている他、仮想的なプリンタYもインストールされている。本実施の形態のプリンタドライバXも、画像データに対し、公知の「ランレングス圧縮モード」「JPEGモード」の2つの圧縮処理を実行することが可能である。
【0271】
本実施の形態においても、ユーザによる明示の印刷命令とは別個に(独立して)、擬似命令発行手段が印刷命令を発行する。図22が擬似命令発行手段の印刷命令による処理の流れを示し、図23が主としてユーザの明示のプリント命令による処理の流れを示している。
【0272】
実施の形態6と同様に、ユーザによって文書が開かれた後、読み込み終了検知手段は読み込み終了を検知し、擬似命令発行手段へ該オープンを通知する。本実施の形態の場合も、読み込み終了を検知するのはアプリケーションプログラムである。
【0273】
つづいて、擬似印刷命令発行手段は、アプリケーションプログラムへ印刷命令を発行する。かかる擬似印刷命令発行手段は「プリンタYを選択し、開いている文書の全ページを、ファイル出力としてプリントアウトする」という定型動作を実行し、既存文書の読み込み終了直後に実行可能なマクロとして構成されている。よって、ファイル読み込み終了を検知したアプリケーションが、当該マクロを実行することにより、ファイル出力としてのプリント命令が発行される。
【0274】
ここでファイル出力とは、プリンタ用データをプリンタに対して送信するのではなく、ハードディスク等の記憶手段上に記録することを意味し、記録時のファイル名は、読み込み文書名と一意に対応させることが可能である。
【0275】
よって、プリンタYを選択したファイル出力としてのプリント命令は、OSを介してプリンタドライバYに送信される。ここで本実施の形態におけるプリンタドライバYは、圧縮すべき種類(たとえば画像)の各データを方法AおよびBで圧縮し、データ量が小さくなる方の圧縮結果をもちいてプリンタ用データを生成し(ステップS2206)、保持手段たる記憶手段に保持する(ステップS2207)。
【0276】
一方ユーザは、当該文書のオープン(ステップS2301)後、ある時間の経過後に、アプリケーションに対して明示のプリント命令を発行する(ステップS2302〜S2304)。このプリント命令がプリンタXを出力先としてなされた場合、プリンタX用のデータを生成するプリンタドライバXは、データの生成に先立って上記保持手段を検索し、開いている文書に対応したプリンタ用データがすでに生成されていないかを調べる(ステップS2305)。そしてすでに生成されている場合(ステップS2305:Yes)には、当該ファイルを読み込んで、送信手段に送信する(ステップS2306)。
【0277】
一方、マクロの動作開始よりもユーザの明示のプリント命令の方が早い等の理由で、ステップ201が実行されない場合(ステップS2305:No)は、ステップ203でプリンタ用データが生成され、送信される。
【0278】
このようにして、あらかじめ選択した方法で圧縮を含むデータ生成までをおこなっておき、その結果を保持するように構成したのでことにより、ユーザによる明示のプリント命令に速やかに対応することができる。
【0279】
〔実施の形態8〕
図24および25は、実施の形態8にかかる発明の処理の流れを示したものである。本実施の形態も、1台のプリンタXのほか、仮想的なプリンタYがインストールされており、本実施の形態のプリンタドライバXも、画像データに対し、公知の「ランレングス圧縮モード」「JPEGモード」の2つの圧縮処理を実行することが可能であるが、いずれのモードを使用するか、ユーザが指定可能なように構成されている。
【0280】
図24に示すように、ユーザによって文書が開かれた後、読み込み終了検知手段は読み込み終了を検知し、擬似命令発行手段へ該オープンを通知する。本実施の形態の場合も、読み込み終了を検知するのはアプリケーションプログラムである。
【0281】
つづいて、擬似印刷命令発行手段は、アプリケーションプログラムへ印刷命令を発行する(ステップS2403)。かかる擬似印刷命令発行手段は「プリンタYを選択し、開いている文書の全ページを、ファイル出力としてプリントアウトする」という定型動作を実行し、既存文書の読み込み終了直後に実行可能なマクロとして構成されている。よって、ファイル読み込み終了を検知したアプリケーションが、当該マクロを実行することにより、ファイル出力としてのプリント命令が発行される(ステップS2404)。
【0282】
プリンタYを選択したファイル出力としてのプリント命令は、OSを介してプリンタドライバYに送信される(ステップS2405)。ここで本願におけるプリンタドライバYは、方法AおよびBの両方を利用して、2通りのプリンタ用データを生成後、これらのデータを識別可能な状態でマージして保持手段に送信し(ステップS2406)、保持手段たる記憶手段に保持する(ステップS2407)。
【0283】
一方ユーザは、当該文書のオープン(ステップS2501)後、ある時間の経過後に、アプリケーションに対して明示のプリント命令を発行し(ステップS2502〜S2504)、ドライバに対しては圧縮方法を指定する。このプリント命令がプリンタXを出力先としてなされた場合、プリンタX用のデータを生成するプリンタドライバXは、データの生成に先立って上記保持手段を検索し、開いている文書に対応したプリンタ用データがすでに生成されていないかを調べる(ステップS2505)。
【0284】
そしてすでに生成されている場合(ステップS2505:Yes)は、当該ファイルを読み込んで、ユーザが指定した圧縮方法に対応するデータのみを抽出し、送信手段に送信する(ステップS2506,2508)。
【0285】
一方、マクロの動作開始よりもユーザの明示のプリント命令の方が早い等の理由で、ステップS2407が実行されない場合(ステップS2505:No)は、プリンタ用データが生成され、送信される(ステップS2507,S2508)。その後、プリンタによってプリントされ(ステップS2509)、一連の処理を終了する。
【0286】
このようにして、ユーザからの明示の変換命令に先行してし、前記変換を複数の圧縮方法をもちいておこない、該複数の圧縮された形態の出力装置用のデータを保持するように構成したので、ユーザによる圧縮方法指定への対応度を高め、プリント命令に速やかに対処することができる。
【0287】
〔実施の形態9〕
図26および図27は、実施の形態9にかかる発明の処理の流れを示したものである。本実施の形態も、1台のプリンタXの他、仮想的なプリンタYがインストールされており、本実施の形態のプリンタドライバXも、画像データに対し、公知の「ランレングス圧縮モード」「JPEGモード」の2つの圧縮処理を実行することが可能であるが、いずれのモードを使用するかユーザが指定することはできず、ドライバが自動的に決定するように構成されている。また、本実施の形態のプリンタドライバXは、圧縮法A、Bごとのプリンタ側での単位データ量あたりの伸張速度VAd、VBdを、定数としてその内部に有している。
【0288】
図26に示すように、ユーザによって文書が開かれた(ステップS2601)後、読み込み終了検知手段は読み込み終了を検知し、擬似命令発行手段へ該オープンを通知する(ステップS2602)。本実施の形態の場合も、読み込み終了を検知するのはアプリケーションプログラムである。
【0289】
つづいて、擬似印刷命令発行手段は、アプリケーションプログラムへ印刷命令を発行する(ステップS2603)。かかる擬似印刷命令発行手段は「プリンタYを選択し、開いている文書の全ページを、ファイル出力としてプリントアウトする」という定型動作を実行し、既存文書の読み込み終了直後に実行可能なマクロとして構成されている。よって、ファイル読み込み終了を検知したアプリケーションが、当該マクロを実行することにより、ファイル出力としてのプリント命令が発行される。
【0290】
プリンタYを選択したファイル出力としてのプリント命令は、OSを介してプリンタドライバYに送信される(ステップS2604,S2605)。ここで本実施の形態におけるプリンタドライバYは、方法AおよびBの両方を利用して、2通りのプリンタ用データを生成後、これらを識別可能な状態でマージして保持手段に送信し(ステップS2606)、保持手段たる記憶手段に保持する(ステップS2607)。
【0291】
一方ユーザは、当該文書のオープン(ステップS2701)後、ある時間の経過後に、アプリケーションに対して明示のプリント命令を発行し(ステップS2702〜S2704)、ドライバに対しては圧縮方法を指定する。このプリント命令がプリンタXを出力先としてなされた場合、プリンタX用のデータを生成するプリンタドライバXは、データの生成に先立って上記保持手段を検索し、開いている文書に対応したプリンタ用データがすでに生成されていないかを調べる(ステップS2705)。
【0292】
そして、すでに生成されている場合(ステップS2705:Yes)は、方法Aによる圧縮後のデータサイズSaおよび方法Bによる圧縮後のデータサイズSbを検知する(ステップS2706)。またプリンタドライバXは、転送速度検知手段に略現在の転送速度Viを問い合わせ、下記式により転送と伸張にかかる時間Ta、Tbを簡易に見積もる(ステップS2707)。
【0293】
Ta=Sa/ Vi+Sa/VAd
Tb=Sb/ Vi+Sa/VBd
【0294】
ここで転送速度検知手段とは、たとえばpingコマンドのようなものでもよいし、あるいはWindowsNT4等に付属のパフォーマンスモニタの様に、所定のサンプリング間隔でトラフィックをモニタし、トラフィックの量から実効転送速度を算出するようなものでもよい。また、現在の一つの点で検知した転送速度でもよいし、過去の複数の点で測定したデータの平均値等をもちいてもよい。
【0295】
そして、TaとTbを比較し、転送と伸張にかかる時間が短い(速い)方の方法に対応したデータのみを抽出して送信手段へ送信する(ステップS2708)。
【0296】
一方プリンタドライバXにおいてプリンタ用データがない場合(ステップS2705:No)は、プリンタドライバXは、デフォルトの圧縮方法でプリンタ用のデータを生成し、その後送信手段へ送信する(ステップS2709)。
【0297】
そして、送信手段でプリンタへプリンタ用データを送信し(ステップS2710)、プリンタでプリントをおこない(ステップS2711)、その後すべての処理を終了する。
【0298】
このようにして、前記データ変換装置と出力装置の間の転送速度を検知する手段を有し、前記転送速度を元に、1の圧縮後のデータを送信する手段を有するように構成したので、転送路の状況によって、高い圧縮率のデータを送信して速やかに出力することや、低い圧縮率のデータを送信することによって、より画質よ出力することが可能となる。
【0299】
また、前記出力装置の伸張速度を検知する手段を有し、前記伸張速度を元に、1の圧縮後のデータを送信する手段を有するように構成したので、伸張器の伸張速度を考慮することにより、トータルで速く出力することができる。
【0300】
〔実施の形態10〕
図28および図29は、実施の形態10にかかる発明の処理の流れを示したものである.本実施の形態は、文書ファイルの読み込みが終了した後に当該文書のプリントが開始可能なコンピュータ環境(アプリケーション環境)において、他人が作成し公開した文書の様な、内容変更の必要がない全1ページの原稿をプリントする場合の実施例である.本実施の形態においては、1台のプリンタXがインストールされている他、仮想的なプリンタYもインストールされている.本実施の形態のプリンタXは、ユーザが「低圧縮モード」「高圧縮モード」の2つの圧縮モードを指定することが可能である。
【0301】
また、本実施の形態においては、ユーザによる明示の印刷命令とは別個に(独立して)、擬似命令発行手段が印刷命令を発行するが、図28が擬似命令発行手段の印刷命令による処理の流れを示し、図29が主としてユーザの明示のプリント命令による処理の流れを示している。
【0302】
図28に示すように、ユーザによって文書ファイル(S2801)が開かれると、読み込み終了検知手段はファイルの読み込み終了を検知し、擬似命令発行手段へこれを通知する(ステップS2802)。本実施の形態の場合、ユーザはアプリケーションプログラムに対してファイルオープンを指示するため、読み込み終了を検知するのはアプリケーションプログラムである。
【0303】
つづいて、擬似印刷命令発行手段は、アプリケーションプログラムへ印刷命令を発行する(ステップS2803)。かかる擬似印刷命令発行手段は、アプリケーション内で動作するマクロとして実現することが可能である。
【0304】
ここでマクロとは、アプリケーションの有する個々の機能を、一連の定型動作として実行させることが可能なプログラムを指している。一般に高機能なアプリケーションにおいては、定型動作を所定のマクロ言語で記述しておくことにより、アプリケーション内でマクロを実行させることが可能である。そしてマクロの実行は、Microsoft社のWord 97を例にとれば、ユーザによる明示の実行指示による他、アプリケーションの起動と同時にアプリケーションによって実行させたり、既存文書の読み込み終了と同時にアプリケーションによって実行させたりすることが可能である。
【0305】
本実施の形態のマクロは、「プリンタYを選択し、開いている文書のすべてのページを、ファイル出力としてプリントアウトする」という定型動作を実行し、既存文書の読み込み終了直後に実行可能なマクロとして構成されている。よって、ファイル読み込み終了を検知したアプリケーションが、当該マクロを実行することにより、ファイル出力としてのプリント命令が発行される(ステップS2804)。
【0306】
ここでファイル出力とは、プリンタ用データをプリンタに対して送信するのではなく、ハードディスク等の記憶手段上に記録することを意味し、記録時のファイル名は、読み込み文書名と一意に対応させることが可能である。
【0307】
よって、プリンタYを選択したファイル出力としてのプリント命令は、OSを介してプリンタドライバYに送信される(ステップS2805)。ここで本願におけるプリンタドライバYは、文書情報を、プリンタX(Yではない)が解釈可能な、低圧縮率でのデータAに変換すると同時に、高圧縮率でのデータBに変換し、両方のデータが識別可能な状態でA、Bをマージして、保持手段たる記憶手段に送信する(ステップS2806)。保持手段は、マージされたプリント用データをファイルに保存する(ステップS2807)。
【0308】
一方ユーザは、当該文書のオープン(ステップS2901)後、ある時間の経過後に、アプリケーションに対して明示のプリント命令を発行し、ドライバに対しては圧縮率の高低を指定する(ステップS2902〜S2904)。このプリント命令がプリンタXを出力先としてなされた場合、プリンタX用のデータを生成するプリンタドライバXは、データの生成に先立って上記保持手段を検索し、開いている文書に対応したプリンタ用データがすでに生成されていないかを調べるステップS2905)。
【0309】
そしてすでに生成されている場合(ステップS2905:Yes)には、当該ファイルを読み込んで、ユーザが指定した圧縮率に対応した形式のデータのみを抽出して送信手段に送信し(ステップS2906)、プリントがなされる(ステップS2908,S2909)。
【0310】
一方、マクロの動作開始よりもユーザの明示のプリント命令の方が早い等の理由で、ステップ101が実行されない場合(ステップS2905:No)は、プリンタ用データが生成され、送信される(ステップS2907)。その後、プリントがなされる(ステップS2908,S2909)。
【0311】
このようにして、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記圧縮を含むデータ変換をおこなう手段を有し、前記圧縮が複数の圧縮率でおこなわれるように構成したので、ユーザによる圧縮率指定への対応度を広げ、ユーザ指定の圧縮率で速やかに出力することができる。
【0312】
〔実施の形態11〕
図30および31は、実施の形態11の処理の流れを示したものである。本実施の形態も、文書ファイルの読み込みが終了した後に当該文書のプリントが開始可能なコンピュータ環境(アプリケーション環境)において、他人が作成し公開した文書の様な、内容変更の必要がない全1ページの原稿をプリントする場合の実施例である。
【0313】
本実施の形態も、1台のプリンタXがインストールされている他、仮想的なプリンタYがインストールされており、本実施の形態のプリンタXは「低圧縮モード」「高圧縮モード」の2つの圧縮モードで圧縮を実行可能であるが、ユーザがいずれかを指定することはできない。また本実施の形態のプリンタドライバXは、圧縮率A、Bごとのプリンタ側での単位データ量あたりの伸張速度VAd、VBdを、定数としてその内部に有している。
【0314】
図30に示すように、ユーザによって文書ファイルが開かれる(ステップS3001)と、読み込み終了検知手段はファイルの読み込み終了を検知し、擬似命令発行手段へこれを通知する(ステップS3002)。
【0315】
つづいて、擬似印刷命令発行手段は、アプリケーションプログラムへ印刷命令を発行する(ステップS3003)。かかる擬似印刷命令発行手段は、アプリケーション内で動作するマクロとして実現することが可能である。
【0316】
本実施の形態のマクロは、「プリンタYを選択し、開いている文書のすべてのページを、ファイル出力としてプリントアウトする」という定型動作を実行し、既存文書の読み込み終了直後に実行可能なマクロとして構成されている。よって、ファイル読み込み終了を検知したアプリケーションが、当該マクロを実行することにより、ファイル出力としてのプリント命令が発行される(ステップS3004)。
【0317】
よって、プリンタYを選択したファイル出力としてのプリント命令は、OSを介してプリンタドライバYに送信される(ステップS3005)。ここで本願におけるプリンタドライバYは、文書情報を、プリンタX(Yではない)が解釈可能な、低圧縮率でのデータAに変換すると同時に、高圧縮率でのデータBに変換し、両方のデータが識別可能な状態でA、Bをマージして、保持手段たる記憶手段に送信する(ステップS3006)。保持手段は、マージされたプリンタ用データをファイルに保持する(ステップS3007)。
【0318】
一方ユーザは、当該文書のオープン(ステップS3101)後、ある時間の経過後に、アプリケーションに対して明示のプリント命令を発行する(ステップS3102〜S3104)。このプリント命令がプリンタXを出力先としてなされた場合、プリンタX用のデータを生成するプリンタドライバXは、データの生成に先立って上記保持手段を検索し、開いている文書に対応したプリンタ用データがすでに生成されていないかを調べる(ステップS3105)。
【0319】
そしてすでに生成されている場合には当該ファイルを読み込み、低圧縮率のデータAのサイズSaおよび高圧縮率のデータBのサイズSbを検知する(ステップS3106)。またプリンタドライバXは、転送速度検知手段に略現在の転送速度Viを問い合わせ、下記式により転送と伸張にかかる時間Ta、Tbを簡易に見積もる(ステップS3107)。
【0320】
Ta=Sa/ Vi+Sa/VAd
Tb=Sb/ Vi+Sa/VBd
【0321】
ここで転送速度検知手段とは、たとえばpingコマンドのようなものでもよいし、あるいはWindowsNT4等に付属のパフォーマンスモニタの様に、所定のサンプリング間隔でトラフィックをモニタし、トラフィックの量から実効転送速度を算出するようなものでもよい。また、現在の一つの点で検知した転送速度でもよいし、過去の複数の点で測定したデータの平均値等をもちいてもよい。
【0322】
そして、TaとTbを比較し、転送と伸張にかかる時間が短い(速い)方の方法に対応したデータのみを抽出して送信手段へ送信する(ステップS3108)。その後、送信手段がプリンタへプリンタ用データを送信し(ステップS3110)、プリンタがプリントをおこない(ステップS3111)、処理を終了する。
【0323】
なお、マクロの動作開始よりもユーザの明示のプリント命令の方が早い等の理由で、ステップ201が実行されない場合(ステップS3105:No)は、デフォルトの圧縮率でプリンタ用データが生成され、送信されるステップS3109)。その後、送信手段がプリンタへプリンタ用データを送信し(ステップS3110)、プリンタがプリントをおこない(ステップS3111)、処理を終了する。
【0324】
このようにして、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記圧縮を含むデータ変換をおこなう手段を有し、前記圧縮が複数の圧縮率でおこなわれるように構成したので、ユーザによる圧縮率指定への対応度を広げ、ユーザ指定の圧縮率で速やかに出力することができる。
【0325】
また、前記データ変換装置と出力装置の間の転送速度を検知する手段を有し、該転送速度をもとに、前記出力装置に対していずれかの圧縮率のデータを送信する手段を有するので、転送路が混雑している場合にユーザ指定よりも高い圧縮率のデータを送信することによって速やかに出力することや、逆に転送路が空いている場合に、ユーザ指定よりも高い圧縮率のデータを送信することができる。
【0326】
また、前記出力装置の伸張器の伸張速度を検知する手段を有し、該伸張速度をもとに、前記出力装置に対していずれかの圧縮率のデータを送信する手段を有するので、伸張器の伸張性能を考慮することにより、より速やかな出力を得ることができる。
【0327】
以上において本発明は、上述した各実施の形態の構成および処理に限らず、種々変更可能であるのはもちろんである。
【0328】
【発明の効果】
以上説明したように、本発明によれば、ユーザからのプリント命令に先立って、原稿に関する情報を得ておき、あらかじめ適用すべき圧縮方法を選択しておくように構成したので、処理時間の増大を招くことなしに最適な圧縮処理を可能にすることができるという効果を奏する。
【0329】
また、本発明によれば、ユーザからのプリント命令に先立って、原稿に含まれるすべての画像情報に関する情報を得ておき、各画像データごとにあらかじめ適用すべき圧縮方法を選択し、保持しておくように構成したので、処理時間の増大を招くことなしに各画像ごとに最適な圧縮処理を適用することができるという効果を奏する。
【0330】
また、本発明によれば、プリント命令に先行して原稿に関する情報を得る手段として、OSが標準で用意している中間データを生成させるように構成したので、前記手段を汎用的で簡易かつ高速なものとすることができるという効果を奏する。
【0331】
また、本発明によれば、あらかじめ選択した方法で圧縮を含むデータ生成までをおこなっておき、その結果を保持するように構成したのでことにより、ユーザによる明示のプリント命令に速やかに対応することができるという効果を奏する。
【0332】
また、本発明によれば、ユーザからの明示の変換命令に先行してし、前記変換を複数の圧縮方法をもちいておこない、該複数の圧縮された形態の出力装置用のデータを保持するように構成したので、ユーザによる圧縮方法指定への対応度を高め、プリント命令に速やかに対処することができるという効果を奏する。
【0333】
また、本発明によれば、前記データ変換装置と出力装置の間の転送速度を検知する手段を有し、前記転送速度を元に、1の圧縮後のデータを送信する手段を有するように構成したので、転送路の状況によって、高い圧縮率のデータを送信して速やかに出力することや、低い圧縮率のデータを送信することによって、より画質よく出力することができるという効果を奏する。
【0334】
また、本発明によれば、前記出力装置の伸張速度を検知する手段を有し、前記伸張速度を元に、1の圧縮後のデータを送信する手段を有するように構成したので、伸張器の伸張速度を考慮することにより、トータルで速く出力することができるという扱くかを奏する。
【0335】
また、本発明によれば、前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記圧縮を含むデータ変換をおこなう手段を有し、前記圧縮が複数の圧縮率でおこなわれるように構成したので、ユーザによる圧縮率指定への対応度を広げ、ユーザ指定の圧縮率で速やかに出力することができるという効果を奏する。
【0336】
また、本発明によれば、前記データ変換装置と出力装置の間の転送速度を検知する手段を有し、該転送速度をもとに、前記出力装置に対していずれかの圧縮率のデータを送信する手段を有するので、転送路が混雑している場合にユーザ指定よりも高い圧縮率のデータを送信することによって速やかに出力することや、逆に転送路が空いている場合に、ユーザ指定よりも高い圧縮率のデータを送信することができるという効果を奏する。
【0337】
また、本発明によれば、前記出力装置の伸張器の伸張速度を検知する手段を有し、該伸張速度をもとに、前記出力装置に対していずれかの圧縮率のデータを送信する手段を有するので、伸張器の伸張性能を考慮することにより、より速やかな出力を得ることができるという効果を奏する。
【図面の簡単な説明】
【図1】この発明の実施の形態1にかかるデータ変換装置を含む情報処理装置のシステム構成を示すブロック図である。
【図2】実施の形態1にかかるデータ変換装置を含む情報処理システムのシステム構成を示すブロック図である。
【図3】実施の形態1にかかるデータ変換装置のハードウエア構成を示す機能ブロック図である。
【図4】実施の形態1にかかる情報処理装置または情報処理システムの出力装置のハードウエア構成を示すブロック図である。
【図5】実施の形態1にかかるデータ変換装置の構成を機能的に示すブロック図である。
【図6】実施の形態1にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【図7】実施の形態1にかかるデータ変換装置の別のデータ変換処理の手順を示すフローチャートである。
【図8】実施の形態2にかかるデータ変換装置の構成を機能的に示すブロック図である。
【図9】実施の形態2にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【図10】実施の形態2にかかるデータ変換装置の別のデータ変換処理の手順を示すフローチャートである。
【図11】この発明の実施の形態3にかかるデータ変換装置を含む情報処理装置のシステム構成を示すブロック図である。
【図12】実施の形態3にかかるデータ変換装置の構成を機能的に示すブロック図である。
【図13】実施の形態3にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【図14】実施の形態3にかかるデータ変換装置の別のデータ変換処理の手順を示すフローチャートである。
【図15】実施の形態4にかかるデータ変換装置の構成を機能的に示すブロック図である。
【図16】実施の形態4にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【図17】実施の形態4にかかるデータ変換装置を含む情報処理装置のシステム構成を示すブロック図である。
【図18】実施の形態5にかかるデータ変換装置の構成を機能的に示すブロック図である。
【図19】実施の形態5にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【図20】実施の形態6にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【図21】実施の形態6にかかるデータ変換装置のデータ変換処理の別の手順を示すフローチャートである。
【図22】実施の形態7にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【図23】実施の形態7にかかるデータ変換装置のデータ変換処理の別の手順を示すフローチャートである。
【図24】実施の形態8にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【図25】実施の形態8にかかるデータ変換装置のデータ変換処理の別の手順を示すフローチャートである。
【図26】実施の形態9にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【図27】実施の形態9にかかるデータ変換装置のデータ変換処理の別の手順を示すフローチャートである。
【図28】実施の形態10にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【図29】実施の形態10にかかるデータ変換装置のデータ変換処理の別の手順を示すフローチャートである。
【図30】実施の形態11にかかるデータ変換装置のデータ変換処理の手順を示すフローチャートである。
【図31】実施の形態11にかかるデータ変換装置のデータ変換処理の別の手順を示すフローチャートである。
【図32】従来技術にかかる情報処理装置の印刷処理の手順を示すフローチャートである。
【図33】従来技術にかかる情報処理装置の印刷処理の別の手順を示すフローチャートである。
【符号の説明】
101,1101,1701 データ変換装置(コンピュータ)
102,1102,1702 表示装置(モニタ)
103a,103b,103c,1103,1703 出力装置(プリンタ)
111,131,1111,1131,1711,1731 演算処理部
112,132,1112,1132,1712,1732 記憶部
113,1113,1713 送信部
133,1133,1733 受信部
134,1734 障害発生通知部
301,401 CPU
302,402 ROM
303,403 RAM
304,404 HDD
305,405 HD
306,406 FDD
307,407 FD
308,408 ディスプレイ
309,409 I/F
310,410 通信回線
311 キーボード
312 マウス
313,413 バス
411 タッチパネル
412 テンキー
501 処理検知部
502 変換指示部
503,803,1203,1503,1803 先行変換部
504 保持部
505 変換指示検知部
506,806,1206,1506,1806 出力部
807 変換部
1207,1507 抽出部
1508 処理時間検知部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data conversion device that converts document information into transmission data for an output device, transmits the converted transmission data, a data conversion method, and a computer-readable recording medium that records a program that causes a computer to execute the method. .
[0002]
[Prior art]
In recent years, with the spread of computers, various complex documents including vector fonts, natural images, graphics, and the like can be easily created. In order to print (print) such a document with high image quality, the resolution of the printer has been dramatically improved. As the resolution and the like are improved, the amount of data to be processed is increased, causing a problem that a trade-off occurs between the print image quality and the print speed.
[0003]
Here, when printing (printing) such a document with a printer, the user normally issues an explicit print command (print command) to the printer driver using an application program.
[0004]
For example, as described in “Data processing apparatus, data processing method of data processing apparatus, and storage medium storing computer-readable program” in Japanese Patent Laid-Open No. 10-283145, the printer driver is specified by the user. The predetermined printing operation is started only when the print command (print command) is received. That is, the print command (print command) issuance timing by the user is the starting point of the printing operation.
[0005]
FIG. 32 and FIG. 33 are flowcharts showing the procedure of the printing process in the information processing apparatus according to the prior art. First, in the flowchart of FIG. 20, the user issues a print command (print command) to the application (step S201), and the application issues the print command (print command) to the OS (step S202).
[0006]
Next, the OS issues a print command (print command) to the printer driver (step S203). The printer driver transmits the generated printer data to the transmission unit (step S204). The transmission unit transmits the received printer data to the printer (step S205), and the printer prints out (step S206).
[0007]
Here, “printer driver” refers to data (printer data) that can be interpreted by a printer in order to output document data in an information processing apparatus such as a computer as an image on a medium such as paper. Software for conversion and transmission to a printer.
[0008]
In FIG. 20, the flow of printing has been briefly described. In FIG. 21, the typical case where the OS generates an internal file and the printer driver generates intermediate data for a printer. The flow of printing will be described.
[0009]
In the flowchart of FIG. 21, the user issues a print command (print command) to the application (step S211), and the application issues the print command (print command) to the OS (step S212).
[0010]
Next, the OS generates a printer-independent intermediate data file (step S213). Then, the despooler (print processor) issues a command for converting the intermediate data file to printer data to the printer driver (step S214).
[0011]
Thereafter, the printer driver converts the printer intermediate data file into printer data, and transmits it to the transmission unit (step S215). The transmission unit transmits the received printer data to the printer (step S216), and the printer prints out (step S217).
[0012]
As described above, when printing from an application, in order to speed up the release of the application, the OS generally spools the intermediate data file to a storage device such as a hard disk and releases the application at that time. Thereafter, the despooler calls the printer driver, and finally the intermediate file is converted into printer data. For the purpose of reducing the amount of data transmitted to the printer, the intermediate file is first converted to the printer intermediate file. Conversion to data is generally performed.
[0013]
A typical format for the intermediate data for the printer is a page description language (PDL (Page Description Language)). The PDL is a format that can be interpreted in common between different printers. In other words, PDL format data can be made compatible between printers that can interpret a common PDL.
[0014]
[Problems to be solved by the invention]
However, in the information processing apparatus including the conventional data conversion apparatus, the resolution of a printer for printing such a document with high image quality has been dramatically improved, and accordingly, the amount of data to be processed has been increased. There is a problem that a trade-off occurs between the print image quality and the print speed. That is, as the amount of information increases, the amount of data conversion that must be performed for printing increases, and the data conversion processing takes a long time.
[0015]
Now, when assuming an operation until the user prints out a document, it is natural that a normal user reads the content to some extent after opening the document and then prints out the document. . That is, there is a certain time from when the document is opened until it is printed.
[0016]
In addition, as described above, the issue of a print command (print command) by the user is usually the starting point of the print operation. However, in spite of the print command (print command) by the user (asynchronously), pseudo It is also possible to provide a pseudo command issuing unit that issues a print command (print command), and to issue a print command (print command) by the pseudo command issue unit ahead of a print command (print command) issued by the user. It is possible.
[0017]
Therefore, in the present application, after the user opens a document, for example, the document information can be converted into printer data, and then a pseudo print command is issued prior to the user's explicit print command (print command). The printer data is generated in advance by issuing a (print command). The printer data has information on the original before conversion (for example, information on color information and fonts), and is useful for processing such as analyzing the original information prior to printing.
[0018]
The present invention has been made in view of the above points, and can shorten the time from a print command (print command) issued by an operator (user) to the end of printing, and when a printer failure occurs. Another object of the present invention is to provide a data conversion apparatus, a data conversion method, and a computer-readable recording medium on which a program for causing a computer to execute the method can be obtained.
[0019]
[Means for Solving the Problems]
In order to solve the above-described problems and achieve the object, the data conversion apparatus according to the first aspect of the present invention provides the original information when converting the original information into data for the output device in a compressed form. After the conversion to the data becomes possible, the data included in the document is acquired prior to an explicit conversion command from the user, and the data included in the document is selected from a plurality of compression methods. On the other hand, the compression method to be applied is selected.
[0020]
In the data converter according to the second aspect of the present invention, the document information can be converted into the data when the document information is converted into the data for the output device in a compressed form. After that time, all image data contained in the manuscript is obtained prior to an explicit conversion command from the user,
A compression method to be applied to each image is selected from a plurality of compression methods, and a correspondence result between each image and the selected compression method is held.
[0021]
According to a third aspect of the present invention, there is provided a data conversion apparatus according to a third aspect of the present invention, in which the document information is transferred to the OS prior to an explicit conversion command from the user after the document information can be converted into the data. The intermediate format data is converted into the intermediate format data, and the data included in the document is acquired from the intermediate format data.
[0022]
According to a fourth aspect of the present invention, there is provided a data conversion device that holds data for an output device compressed by the selected compression method.
[0023]
In the data converter according to the fifth aspect of the present invention, the document information can be converted into the data when the document information is converted into the compressed data for the output device. After the time, the data conversion is performed in advance of an explicit conversion command from the user, the data conversion is performed using a plurality of compression methods, and the data for the output device in the plurality of compressed forms is held. It is characterized by that.
[0024]
According to a sixth aspect of the present invention, there is provided a data converter that detects a transfer speed between the data converter and the output device, and transmits any one compressed data based on the transfer speed. It is characterized by that.
[0025]
According to a seventh aspect of the present invention, there is provided a data conversion device comprising: means for detecting a decompression speed of the output device and transmitting one compressed data based on the decompression speed. .
[0026]
In the data converter according to the eighth aspect of the present invention, the document information can be converted into the data when the document information is converted into data for the output device in a compressed form. After the time, data conversion including the compression is performed in advance of an explicit conversion command from the user, and the compression is performed at a plurality of compression rates.
[0027]
The data conversion device according to the invention described in claim 9 detects a transfer rate with the output device and, based on the transfer rate, sends data of any compression rate to the output device. It is characterized by transmitting.
[0028]
According to a tenth aspect of the present invention, there is provided a data conversion device that detects a decompression speed of a decompressor of the output device, and outputs data of any compression rate to the output device based on the decompression speed. It is characterized by transmitting.
[0029]
In the data conversion method according to the eleventh aspect, the document information can be converted into the data when the document information is converted into the compressed data for the output device. After that point, the data contained in the document is obtained prior to an explicit conversion command from the user, and a compression method to be applied to the data contained in the document is selected from a plurality of compression methods. It is characterized by keeping.
[0030]
In the data conversion method according to the invention described in claim 12, the document information can be converted into the data when the document information is converted into the compressed data for the output device. After the time point, prior to an explicit conversion command from the user, obtain all the image data included in the document, select a compression method to be applied to each image from a plurality of compression methods, A correspondence result between each image and the selected compression method is held.
[0031]
According to a thirteenth aspect of the present invention, in the data conversion method according to the present invention, after the document information can be converted into the data, the document information is converted into the OS prior to the explicit conversion command from the user. The intermediate format data is converted into the intermediate format data, and the data included in the document is acquired from the intermediate format data.
[0032]
According to a fourteenth aspect of the present invention, there is provided a data conversion method for retaining data for an output device compressed by the selected compression method.
[0033]
In the data conversion method according to the fifteenth aspect of the present invention, the document information can be converted into the data when the document information is converted into the compressed data for the output device. After the time, the data conversion is performed in advance of an explicit conversion command from the user, the data conversion is performed using a plurality of compression methods, and the data for the output device in the plurality of compressed forms is held. It is characterized by that.
[0034]
According to a sixteenth aspect of the present invention, there is provided a data conversion method for detecting a transfer rate with the output device, and transmitting any one compressed data based on the transfer rate. And
[0035]
According to a seventeenth aspect of the present invention, there is provided a data conversion method comprising: means for detecting a decompression speed of the output device and transmitting one compressed data based on the decompression speed. .
[0036]
In the data conversion method according to the present invention, the document information can be converted into the data when the document information is converted into the data for the output device in a compressed form. After the time, data conversion including the compression is performed in advance of an explicit conversion command from the user, and the compression is performed at a plurality of compression rates.
[0037]
According to a nineteenth aspect of the present invention, there is provided a data conversion method for detecting a transfer speed with respect to the output device and, based on the transfer speed, transferring data of any compression rate to the output device. The data conversion method according to claim 18, wherein transmission is performed.
[0038]
In the data conversion method according to the twentieth aspect of the present invention, the decompression speed of the decompressor of the output device is detected, and data of any compression rate is sent to the output device based on the decompression speed. It is characterized by transmitting.
[0039]
According to a twenty-first aspect of the present invention, the data conversion program according to the present invention enables conversion of the document information into the data when the document information is converted into data for the output device in a compressed form. After that point, the data contained in the document is obtained prior to an explicit conversion command from the user, and a compression method to be applied to the data contained in the document is selected from a plurality of compression methods. It is characterized by keeping.
[0040]
According to a twenty-second aspect of the present invention, the data conversion program according to the present invention can convert the document information into the data when the document information is converted into the compressed data for the output device. After the time point, prior to an explicit conversion command from the user, obtain all the image data included in the document, select a compression method to be applied to each image from a plurality of compression methods, A correspondence result between each image and the selected compression method is held.
[0041]
According to a twenty-third aspect of the present invention, there is provided a data conversion program for converting the document information into an OS prior to an explicit conversion command from a user after the document information can be converted into the data. The intermediate format data is converted into the intermediate format data, and the data included in the document is acquired from the intermediate format data.
[0042]
According to a twenty-fourth aspect of the present invention, there is provided a data conversion program for storing data for an output device compressed by the selected compression method.
[0043]
According to a 25th aspect of the present invention, the data conversion program according to the present invention can convert the original information into the data when converting the original information into the compressed data for the output device. After the time, the data conversion is performed in advance of an explicit conversion command from the user, the data conversion is performed using a plurality of compression methods, and the data for the output device in the plurality of compressed forms is held. It is characterized by that.
[0044]
According to a twenty-sixth aspect of the present invention, there is provided a data conversion program for detecting a transfer speed with respect to the output device, and transmitting any one compressed data based on the transfer speed. And
[0045]
According to a twenty-seventh aspect of the present invention, there is provided a data conversion program comprising means for detecting a decompression speed of the output device and transmitting one compressed data based on the decompression speed. .
[0046]
According to a twenty-eighth aspect of the present invention, the data conversion program according to the present invention enables conversion of the document information into the data when the document information is converted into data for the output device in a compressed form. After the time, data conversion including the compression is performed in advance of an explicit conversion command from the user, and the compression is performed at a plurality of compression rates.
[0047]
According to a twenty-ninth aspect of the present invention, there is provided a data conversion program that detects a transfer speed with respect to the output device and, based on the transfer speed, outputs data of any compression rate to the output device. It is characterized by transmitting.
[0048]
According to a thirty-third aspect of the present invention, there is provided a data conversion program that detects a decompression speed of a decompressor of the output device and, based on the decompression speed, outputs data of any compression rate to the output device. It is characterized by transmitting.
[0049]
Moreover, the recording medium concerning invention of Claim 31 recorded the program which makes a computer perform the method as described in any one of Claims 21-30, The program becomes machine-readable, Thus, the operations of claims 21 to 30 can be realized by a computer.
[0050]
The invention according to claim 1 is an apparatus for converting document information into compressed data for an output device, and means for performing the compression by a plurality of methods, and the data of the document information And a means for acquiring data contained in the document in advance of an explicit conversion command from the user after conversion to the document is possible, and the document is selected from the plurality of compression methods. By selecting the compression method to be applied to the included data, by obtaining information about the document prior to the print command from the user and selecting the compression method to be applied in advance. This makes it possible to perform an optimal compression process without causing an increase in processing time.
[0051]
According to a second aspect of the present invention, there is provided an apparatus for converting document information into compressed data for an output device, means for performing the compression by a plurality of methods, and converting the document information into the data. Means for acquiring all image data included in the original document after an explicit conversion command from the user after the conversion becomes possible, and each of the images among the plurality of compression methods. The present invention proposes a data conversion apparatus comprising means for selecting a compression method to be applied for each image and holding a correspondence result between each image and the selected compression method.
[0052]
According to the second aspect of the present invention, prior to the print command from the user, information on all the image information included in the document is obtained, and a compression method to be applied in advance is selected and held for each image data. By doing so, it is possible to perform an optimal compression process for each image without causing an increase in processing time.
[0053]
Here, “after the time when the conversion becomes possible” means, for example, “after the system is ready to issue a print command (separately from the user's explicit print command)” It is. In a computer environment or a printing environment where a print information can be issued after opening a document information file, this corresponds to the time after the document information file is opened. After the file is opened, the print command can be issued after reading is started. In an environment where the document information is read, this corresponds to the time after the start of reading the document, and in an environment in which a print command can be issued only after the reading of the document information is completed, the time after the end of reading the document information
[0054]
Furthermore, in an environment in which a print command can be issued after the display of the read document information on the CRT or the like is applicable, the time after the start of the display of the document information is applicable, and the display of the read document information on the CRT or the like ends In an environment where a print command can be issued, this is the case after the end of displaying the document information (of course, not limited to these examples). Further, if “after the print command can be activated”, the user may display the printer properties, select the print menu, and select the print preview command.
[0055]
In addition, the format (contents) of manuscript information is usually known only by the application used to create the manuscript, but if the application specifically provides access to the document contents, etc. The document information can be converted into data for the output device even if it is not “a state where an instruction can be issued”, and this case also corresponds to “after the time when the conversion becomes possible”.
[0056]
Here, as a means for obtaining information about a document prior to a print command by a user, it is a general purpose to generate only intermediate data prepared by the OS as a standard and obtain information about the document from the contents of the data. Simple, simple and fast.
[0057]
Therefore, the invention according to claim 3 is the data conversion apparatus according to claim 1, wherein the conversion is preceded by an explicit conversion command from the user after the conversion of the document information into the data becomes possible. And means for converting the document information into intermediate format data of the OS, and means for acquiring data included in the document from the intermediate format data, thereby obtaining information about the document prior to the print command. As a means, by generating intermediate data prepared as standard by the OS, the means can be general-purpose, simple, and high-speed.
[0058]
In addition to the selection of the compression method as described above, it is needless to say that if the data generation including compression is performed by the selected method and the result is retained, the user can promptly respond to an explicit print command. Yes.
[0059]
Therefore, the invention according to claim 4 is the data conversion apparatus according to claim 1 or 2, further comprising means for holding data for the output device compressed by the selected compression method. By performing data generation including compression by a method selected in advance and holding the result, it is possible to promptly respond to an explicit print command by the user.
[0060]
In addition, depending on the printer driver, a mode in which the user can specify the compression method is also conceivable. In such a case, if the compression method is stored in advance by a plurality of compression methods, the degree of correspondence to the compression method specification by the user can be improved. it can.
[0061]
Therefore, the invention according to claim 5 is an apparatus for converting document information into data for a compressed output device, and after the time point when the document information can be converted into the data. , Having means for performing the data conversion prior to an explicit conversion command from the user, performing the data conversion by using a plurality of compression methods, and holding the data for the plurality of compressed forms of the output device By having the means to do, it is possible to increase the degree of correspondence to the compression method designation by the user.
[0062]
Also, when the driver automatically selects the compression method when the user cannot specify the compression method, etc., the transfer path is congested (or slow) because the image quality generally decreases as the compression method with a higher compression ratio Can be output more quickly by sending data with a higher compression rate, or conversely, by sending data with a lower compression rate when the transfer path is vacant (or faster), It would be advantageous if the image could be output with good image quality.
[0063]
Therefore, the invention according to claim 6 is the data conversion device according to claim 4, further comprising means for detecting a transfer rate between the data converter and the output device, based on the transfer rate. The present invention proposes a data converter characterized by having means for transmitting one compressed data. According to the sixth aspect of the invention, depending on the condition of the transfer path, data with a high compression rate can be transmitted and output quickly, or data with a low compression rate can be output with higher image quality. .
[0064]
The above situation also occurs in relation to the expansion speed of the expander. For example, in the case of a compression method in which expansion takes longer as the compression rate is increased, if the transfer path is vacant (or faster), the transfer time can be reduced by transferring the data with the lower compression rate. The expansion time can be reduced more than the increase, and the total output can be made faster.
[0065]
Therefore, the invention according to claim 7 is the data conversion device according to claim 4, further comprising means for detecting an expansion speed of the output device, and after the compression of 1 based on the expansion speed. By having a means for transmitting data, it is possible to output data at a high speed in consideration of the expansion speed of the expander.
[0066]
According to an eighth aspect of the present invention, there is provided an apparatus for converting document information into data for an output device in a compressed form, after the time point when the conversion of the document information into the data becomes possible. And means for performing data conversion including the compression prior to the explicit conversion command from the user, and the compression is performed at a plurality of compression rates, so that the data compression is performed prior to the conversion command from the user. By performing at a plurality of compression rates, the degree of correspondence to the compression rate designation by the user can be expanded, and output can be promptly performed at the compression rate designated by the user.
[0067]
Here, “after the time when the conversion becomes possible” means, for example, “after the system is ready to issue a print command (separately from the user's explicit print command)” It is. In a computer environment or a printing environment where a print information can be issued after opening a document information file, this corresponds to the time after the document information file is opened. After the file is opened, the print command can be issued after reading is started. In an environment where the document information is read, this corresponds to the time after the start of reading the document, and in an environment in which a print command can be issued only after the reading of the document information is completed, the time after the end of reading the document information
[0068]
Furthermore, in an environment in which a print command can be issued after the display of the read document information on the CRT or the like is applicable, the time after the start of the display of the document information is applicable, and the display of the read document information on the CRT or the like ends In an environment where a print command can be issued, this is the case after the end of displaying the document information (of course, not limited to these examples). Further, if “after the print command can be activated”, the user may display the printer properties, select the print menu, and select the print preview command.
[0069]
In addition, the format (contents) of manuscript information is usually known only by the application used to create the manuscript, but if the application specifically provides access to the document contents, etc. The document information can be converted into data for the output device even if it is not “a state where an instruction can be issued”, and this case also corresponds to “after the time when the conversion becomes possible”.
[0070]
In the above, the quick correspondence to the compression rate specified by the user was considered. However, when the amount of data after compression at the compression rate specified by the user is very large, for example, when the transfer path is congested, the image quality is large. By sending data with a higher compression ratio than specified by the user within a range where there is no influence, it is possible to output the data quickly, and as a result, the user's feeling of use can be improved.
[0071]
Therefore, the invention according to claim 9 of the present application is the data conversion device according to claim 8, further comprising means for detecting a transfer speed between the data converter and the output device, And means for transmitting data of any compression ratio to the output device, so that when the transfer path is congested, the data can be quickly transmitted by transmitting data having a compression ratio higher than that specified by the user. When the data is output or, conversely, when the transfer path is vacant, it is possible to output with higher image quality by transmitting data with a higher compression ratio than specified by the user.
[0072]
The above situation also occurs in relation to the expansion speed of the expander. For example, in the case of a compression method that takes longer to decompress as the compression rate is increased, if the physical specification of the transfer path is very fast, even if the user specifies a high compression rate, the transfer time will not be shortened much. Regardless, there may be cases where the output slows down as a result of the extension time being increased.
[0073]
Therefore, the invention according to claim 10 is the data conversion device according to claim 8, further comprising means for detecting a decompression speed of the decompressor of the output device, based on the decompression speed. By providing means for transmitting data of any compression rate to the output device, more rapid output can be obtained by considering the expansion performance of the expander.
[0074]
The invention described in claims 11 to 20 is a proposal of the data conversion method described in claims 1 to 3, wherein the process is performed prior to the user's explicit print command, and the effect corresponding to each claim. Can be obtained.
[0075]
The inventions described in claims 21 to 30 are the proposals for the data conversion program described in claims 1 to 3, wherein the processing is performed in advance of the user's explicit print command, and the effect corresponding to each claim. Can be obtained.
[0076]
The invention described in claim 31 is a proposal of a computer-readable information recording medium on which the method described in claims 21 to 30 is recorded, and each process is preceded by a user's explicit print command. It is possible to provide a system capable of performing the above.
[0077]
DETAILED DESCRIPTION OF THE INVENTION
Exemplary embodiments of a data conversion apparatus, a data conversion method, a data conversion program, and a computer-readable recording medium recording the program according to the present invention will be explained below in detail with reference to the accompanying drawings.
[0078]
[Embodiment 1]
(Hardware configuration of information processing apparatus and information processing system)
First, the hardware configuration of the information processing apparatus and the information processing system including the data conversion apparatus according to the first embodiment will be described. 1 and 2 are block diagrams showing the system configuration of an information processing apparatus and an information processing system including a data conversion apparatus according to Embodiment 1 of the present invention.
[0079]
In FIG. 1, 101 is a data conversion device (computer), 102 is a display device (monitor), and 103a to 103c are output devices (printers). This is a normal configuration of a stand-alone type in which a computer and, for example, three printers are combined, and a display device (monitor) 102 as a user interface is connected to the data conversion device 101. The number of printers may be two, or four or more.
[0080]
The data conversion apparatus 101 includes an arithmetic processing unit 111, a storage unit 112, and a transmission unit 113. Here, the arithmetic processing unit 111 realizes its function by a CPU 301 or the like which will be described later. The storage unit 112 stores various programs and data. Specifically, the function is realized by a recording medium such as a ROM 302, a RAM 303, and an HD 305, which will be described later, and a recording medium reading device (for example, HDD 304).
[0081]
The storage unit 112 stores, for example, an OS (operating system), a spooler that is a program that records an intermediate file, a despooler that is a program that reads the recorded intermediate file, an application, a macro, a printer driver, and the like. The unit 111 executes these programs.
[0082]
Printer data and printer-independent data are also stored in the storage unit 112 and transmitted to the printer by the transmission unit 113. The transmission unit 113 realizes its function by an interface 309 or the like described later.
[0083]
The output devices (printers) 103a, 103b, and 103c are not limited to the printer engine (image forming unit), the receiving unit 133, and the failure occurrence notifying unit 134, but also the arithmetic processing unit 131, the storage, and the like. Part 132 is provided. Since the output devices 103a, 103b, and 103c have the same internal configuration, only the internal configuration of the output device 103a is shown in FIG. 1, and the internal configurations of the remaining output devices 103b and 103c are omitted.
[0084]
Here, the arithmetic processing unit 131 realizes its function by a CPU 401 or the like which will be described later. The storage unit 132 stores various programs and data. Specifically, the function is realized by a recording medium such as a ROM 402, a RAM 403, and an HD 405, which will be described later, and a recording medium reading device (for example, HDD 404).
[0085]
The receiving unit 133 receives the printer data transmitted from the transmitting unit 113 of the data conversion apparatus 101. Specifically, the function can be realized by an interface 409 described later. The output devices (printers) 103a, 103b, and 103c that have received the printer data store the printer data in the storage unit 132, generate final data by the arithmetic processing unit 131, and output the data to the printer engine. Do it.
[0086]
The failure occurrence notification unit 134 realizes its function by a CPU 401 that detects the occurrence of a failure such as a paper jam and an interface 409 for transmitting the failure occurrence notification to the transmission unit 113 of the data conversion apparatus 101.
[0087]
Note that the arithmetic processing units 111 and 131 and the storage units 112 and 132 do not need to physically exist in the data conversion device 101 or the output devices 103a, 103b, and 103c. What is necessary is just to comprise. Therefore, for example, the configuration may be such that the arithmetic processing units 111 and 131 and the storage units 112 and 132 exist on the network.
[0088]
FIG. 2 is a block diagram showing a system configuration of an information processing system including the data conversion apparatus according to the embodiment of the present invention, and shows an example of a networked system configuration.
[0089]
In FIG. 2, 201 is a printer server, and 202 is a local computer as a data converter. Reference numeral 203 denotes a network printer as an output device.
[0090]
The printer server 201, the local computer 202, and the network printer 203 are connected to the network 200, respectively. Documents created and stored by the printer server 201 and the local computer 202 can be printed by the network printer 203. The operation of the network printer 203 can be monitored and controlled by operating the server 201 and the local computer 202.
[0091]
Further, the printer server 201 includes a storage unit 211, and the storage unit 211 stores various programs and data. The storage unit 211 realizes its function by a recording medium such as a ROM, a RAM, and an HD and a recording medium reading device (for example, an HDD).
[0092]
(Hardware configuration of data converter)
Next, the hardware configuration of the data conversion apparatus will be described. FIG. 3 is a block diagram of a hardware configuration of the data conversion apparatus 101 according to the first embodiment.
[0093]
As described above, the data conversion apparatus 101 can be configured by a computer alone, or can be configured by the printer server 201 and the local computer 202 connected by the network 200.
[0094]
In the data conversion apparatus shown in FIG. 3, 301 is a CPU that controls the entire system, 302 is a ROM that stores a boot program and the like, 303 is a RAM that is used as a work area of the CPU 301, and 304 is under the control of the CPU 301. An HDD (hard disk drive) that controls reading / writing of data with respect to the HD (hard disk) 305, and an HD that stores data written under the control of the HDD 304, respectively.
[0095]
Reference numeral 306 denotes an FDD (floppy disk drive) that controls reading / writing of data with respect to the FD (floppy disk) 307 according to the control of the CPU 301, and reference numeral 307 denotes a removable recording medium that stores data written by the control of the FDD 306. FD as an example is shown.
[0096]
Reference numeral 308 denotes a display for displaying a window related to data such as a document, an image, and function information as well as a cursor, an icon, or a tool box, and implements the function of the display device (monitor) 102.
[0097]
Reference numeral 309 denotes an interface (I / F) that is connected to the network NET via the communication line 310 and controls the network NET and an internal interface. This network NET includes those related to connection to the output devices 103a, 103b, and 103c.
[0098]
311 is a keyboard having a plurality of keys for inputting characters, numerical values, various instructions, and the like. 312 is a cursor movement and range selection, or a window movement and size change, icon selection and movement, etc. The mouse to perform is shown. Reference numeral 313 denotes a bus for connecting the above-described units.
[0099]
(Hardware configuration of output device (printer))
Next, the hardware configuration of the output device (printer) will be described. FIG. 4 is a block diagram of a hardware configuration of the output device (printer) according to the first embodiment.
[0100]
In the data conversion apparatus shown in FIG. 4, 401 is a CPU that controls the entire system, 402 is a ROM that stores a boot program and the like, 403 is a RAM that is used as a work area of the CPU 401, and 404 is under the control of the CPU 401. Reference numeral 405 denotes an HDD (hard disk drive) that controls reading / writing of data with respect to the HD (hard disk) 405, and reference numeral 405 denotes an HD that stores data written under the control of the HDD 404.
[0101]
Reference numeral 406 denotes an FDD (floppy disk drive) that controls reading / writing of data with respect to the FD (floppy disk) 407 according to the control of the CPU 401, and 407 denotes a detachable recording medium that stores data written by the control of the FDD 406. FD as an example is shown.
[0102]
Reference numeral 408 denotes a display for displaying the operation contents of the printer. The display 408 may also have a function of the touch panel 411 for instructing operation of the printer.
[0103]
Reference numeral 409 denotes an interface (I / F) that is connected to the network NET via the communication line 410 and controls the network NET and an internal interface. This network NET includes those related to connection to the data conversion apparatus 101.
[0104]
Reference numeral 412 denotes a numeric keypad for instructing operation of the printer, and includes a start button and other operation buttons. Reference numeral 413 denotes a bus for connecting the above components.
[0105]
(Functional configuration of data converter)
Next, a functional configuration of the data conversion apparatus 101 will be described. FIG. 5 is a functional block diagram functionally showing the configuration of the data conversion apparatus 101 according to the first embodiment. In FIG. 5, the data conversion apparatus 101 includes a processing detection unit 501, a conversion instruction unit 502, a preceding conversion unit 503, a holding unit 504, a conversion instruction detection unit 505, and an output unit 506.
[0106]
Here, the process detection unit 501 detects a process for document information executed prior to an instruction from the conversion instruction unit 502. In the first embodiment, the process for the document information executed prior to the instruction from the conversion instruction unit 502 indicates, for example, a file reading end process. Note that instead of the file reading end processing, file open processing or other processing, processing when the user displays the printer properties, processing when the print preview command is selected after selecting the print menu, etc. But you can.
[0107]
That is, processing for document information executed prior to an instruction from the conversion instruction unit 502 is determined by a computer environment and a printing environment in which a print command (print command) can be issued. For example, the process detected by the process detection unit 501 is a process for opening a document information file in a computer environment or a printing environment in which a print command (print command) can be issued after the document information file is opened. In an environment in which a print command (print command) can be issued after opening a file and starting reading, this processing starts reading the document.
[0108]
In the first embodiment, as an example, the environment is such that a print command (print command) can be issued after the reading of the document information is completed. Therefore, the process is a reading end process of the document information. Alternatively, in an environment where a print command (print command) can be issued after the read document information is started to be displayed on the display device (monitor) 102, display processing of the document information is performed, and the display device (monitor) 102 In an environment in which a print command (print command) can be issued after the display on the document is terminated, the document information display is terminated. Note that the processing is not limited to the process exemplified here.
[0109]
In addition, the format (contents) of manuscript information is usually recognized only by the application used to create the manuscript, but in cases such as when the application provides a means for accessing the document contents. Actually, it is possible to convert the document information into data for the output device even if the print command (print command) is not ready to be issued. Therefore, this case also corresponds to a state where a print command (print command) can be issued.
[0110]
A conversion instruction unit 502 instructs to convert document information into transmission data. Specifically, although not shown, pressing of a print execution button or the like displayed on the display screen corresponds to this instruction.
[0111]
The preceding conversion unit 503 converts the document information into transmission data in a data format corresponding to each of two or more of the output devices 103a, 103b, and 103c based on detection of processing by the processing detection unit 501. That is, here, two or more data are generated among transmission data in a data format corresponding to the output device 103a, transmission data in a data format corresponding to the output device 103b, and transmission data in a data format corresponding to the output device 103c. .
[0112]
The generated transmission data of two or more data formats are merged in a state where they can be distinguished from each other, and stored in the holding unit 504 as a transmission data file. The conversion into transmission data of each data format is the same as the content of the conventional conversion process, and the description thereof is omitted.
[0113]
The transmission data may be converted over all pages, only a predetermined page, or only the first page. For example, by performing only the first page, the processing time required for data can be shortened, and the operating load of the entire apparatus can be reduced. In addition, the storage (recording) capacity of the holding unit 504 that holds the converted data can be reduced. Further, the preceding conversion unit 503 may convert only the document information with focus in the document information into transmission data. Accordingly, similarly, the operation load of the entire apparatus can be reduced, and the storage (recording) capacity of the holding unit 504 can be reduced.
[0114]
The holding unit 504 holds the transmission data file converted by the preceding conversion unit 503. Specifically, the data retention is realized by storing data in the HD 305, for example.
[0115]
Conversion instruction detection unit 505 detects an instruction from conversion instruction unit 502. That is, it is monitored whether or not the print execution button or the like has been pressed, and when it is pressed, a predetermined signal is output so as to notify the output unit 506 of that fact.
[0116]
The output unit 506 has a function of identifying a data format corresponding to each output device 103a, 103b, 103c. Further, the output unit 506 extracts only the data portion corresponding to the output destination device (printer) from the transmission data file held by the holding unit 504 in accordance with the detection of the instruction by the conversion instruction detection unit 505. And output it to the output printer. The output unit 506 has a function of detecting that a failure such as a paper jam has occurred in the output devices 103a, 103b, and 103c.
[0117]
For example, the output unit 506 can realize its function by the transmission unit 113 shown in FIG. The output unit 506 corresponds to a part called a port monitor of a certain OS, and a printer manufacturer can provide a port monitor with a unique specification. A failure occurrence notification function between the failure occurrence notification unit 134 of the output devices 103a, 103b, and 103c and the transmission unit 113 of the data conversion device 101 is known as a technique for performing bidirectional communication between a computer and a printer. Therefore, the description is omitted.
[0118]
The processing detection unit 501, the conversion instruction unit 502, the preceding conversion unit 503, the holding unit 504, the conversion instruction detection unit 505, and the output unit 506 are a ROM 302, a RAM 303, a hard disk (HD) 305, and a floppy disk (FD) 307, respectively. The functions of each unit may be realized by the CPU 301 and the like executing instruction processing in accordance with the instructions described in the program recorded on the recording medium.
[0119]
(Contents of data conversion process)
Next, the contents of the data conversion process of the data conversion apparatus according to the first embodiment will be described. 6 and 7 are flowcharts illustrating a procedure of data conversion processing of the data conversion apparatus according to the first embodiment.
[0120]
In the first embodiment, in a computer environment (application environment) in which printing can be started after reading of a document file is completed, a document that does not need to be changed, such as a document created and released by another person, is printed. Is assumed. Although there is no particular limitation in the first embodiment, for example, three output devices (printers) 103a, 103b, and 103c are incorporated (installed), but there is another printer for the system. Virtually embedded (installed).
[0121]
The output unit 506 of the data conversion apparatus 101 has information that these printers are installed. In the following description of the first embodiment, for convenience, the output devices 103a, 103b, and 103c are identified as the printer A, the printer B, and the printer C, respectively, and the virtual printer is identified as the printer X.
[0122]
Therefore, the printer driver A is used when the printer A is specified for printing, and the printer driver B is used when the printer B is specified for printing. The driver for specifying the printer C is the printer driver C. Similarly, the driver for specifying the printer X is the printer driver X. As described above, the function of installing a virtual printer is a general function of a high-function OS (operating system), and thus a detailed description of the function is omitted.
[0123]
In the first embodiment, a pseudo command issuing unit (macro) in the processing detection unit 501 issues a print command (print command) separately from an explicit print command (print command) by the user. The flowchart of FIG. 6 shows the procedure of processing by a macro print command (print command), and the flowchart of FIG. 7 mainly shows the procedure of processing by a user's explicit print command (print command).
[0124]
In FIG. 6, when the file is opened (step S601) and the reading is completed, the reading completion detecting unit as the processing detecting unit 501 detects the reading end of the file and notifies the pseudo instruction issuing unit of the reading end (step). S602). Here, since the user instructs the application program to open the file, it is the application program that detects the end of reading of the file.
[0125]
Subsequently, the pseudo-command issuing unit issues a print command (print command) to the application program (step S603). Such a pseudo print command issuing unit can be realized as a macro that operates in an application.
[0126]
Here, the macro indicates a program that can execute individual functions of an application as a series of routine operations. In general, in a high-function application (word processor software or the like), a standard operation is described in a predetermined language (for example, “Visual Basic for Applications” or the like, which is a programming language manufactured by Microsoft Corporation). Can be executed.
[0127]
For example, a word processor can be used to start macro execution. In addition to an explicit start instruction from the user, the macro can be started by the application at the same time as starting the application, or can be executed by the application at the same time as reading of the existing document. It is.
[0128]
The macro according to the first embodiment is a macro that can be executed immediately after the completion of reading an existing document by executing a standard operation of “selecting printer X and printing out all pages of an open document as a file output”. It is configured.
[0129]
Therefore, when the application that detects the end of file reading executes the macro after the file reading ends, a print command (print command) as a file output is issued (step S604).
[0130]
Here, file output means that the printer data is not sent to the printer but is recorded on a recording medium such as a hard disk, and the file name at the time of recording uniquely corresponds to the read document name. It is possible to make it. The printer data output as a file in this way can be printed out by reading it and sending it again to the printer.
[0131]
Therefore, a print command (print command) as a file output when the printer X is selected is transmitted to the printer driver X via the OS (step S605). In the first embodiment, for example, the printer driver X converts (generates) document information into printer data A that can be interpreted by the printer A, and also converts (generates) document data into printer data B that can be interpreted by the printer B. .
[0132]
Then, the printer driver X merges (combines) the generated printer data A and printer data B with each other being identifiable, and transmits the merged data as a transmission (printer) data file to the holding unit 504 ( Step S606). The holding unit 504 records (holds) the transmission data file on the recording medium (step S607).
[0133]
On the other hand, the user issues an explicit print command (print command) to the application after a certain time has elapsed after opening the document. That is, in the flowchart of FIG. 7, first, a file is opened (step S701), and then the user issues a print command (print command) to the application (step S702). Next, the application issues a print command (print command) to the OS (step S703).
[0134]
Next, the OS issues a print command (print command) to the printer driver corresponding to the output destination printer (step S704). For convenience, if a print command (print command) by the user is made with the printer A as the output destination, the print command (print command) is transmitted to the printer driver A. Prior to generation of printer data, the printer driver A searches the holding unit 504 to determine whether printer data corresponding to an open document has already been generated.
[0135]
If it has already been generated, the data file for transmission is read, and it is determined whether or not data for the printer A (denoted as “corresponding portion” in FIG. 7) is included in the file. (Step S705). If it is included in step S705 (step S705: Yes), together with information indicating that the output destination is the printer A, the transmission data file is used as it is, that is, the printer data A and the printer data B. Are transmitted to the output unit 506 in the merged state (step S706).
[0136]
On the other hand, if the printer data has not yet been generated (step S705: No) because the time from opening the document to the user's explicit print command (print command) is short in step S705, it is normal. The printer data is generated by the above process and transmitted to the output unit 506 (step S707).
[0137]
Even when the printer data is generated, if there is no portion corresponding to the output destination printer, that is, the “corresponding portion” does not exist (step S705: No), the printer data is similarly generated by normal processing. To the output unit 506 (step S707). The case where there is no “corresponding portion” in the generated printer data is, for example, that a print command (print command) by the user is generated in a state where the data for printer A and the data for printer B are generated and held. This is the case when the printer C is used as the output destination.
[0138]
Upon receiving the transmission data file, the output unit 506 determines whether or not a failure has occurred in the output destination printer, in this case, the printer A (step S708), and further the printer A in the transmission (printer) data file. It is determined whether or not data for use, that is, “corresponding portion” is included (step S709). When the printer A is normal (step S708: No) and the data for the printer A is included (step S709: Yes), the output unit 506 converts the data in the file into the data for the printer A ( The data of “corresponding portion”) and the data for printer B are separated, and only the data for printer A is transmitted to printer A (step S710). As a result, printing is executed in the printer A. At this time, the output unit 506 holds data for the printer B.
[0139]
If a failure such as a paper jam occurs in the printer A after transmission to the printer A (step S711: Yes), the printer A notifies the output unit 506 of the occurrence of the failure. Upon receiving the notification, the output unit 506 returns to step S708, recognizes the failure of the printer A (step S708: Yes), and changes the output destination printer from the printer A to another printer, for example, the printer B (step S712). ). Note that if there is a failure in the output destination printer in step S708 following step S706 or step S707, the output destination printer is similarly changed to another printer.
[0140]
When the output destination is changed to another printer, steps S709 to S711 are sequentially performed corresponding to the new output destination printer. That is, when the new output destination is the printer B, as described above, the output unit 506 holds the data for the printer B in this example as described above (step S709: Yes), and transmits it to the printer B (step S709). S710). Accordingly, printing is executed in the printer B as a countermeasure against the failure. If no failure occurs in the printer B during execution of printing (step S711: No), the execution of printing is completed and the process ends.
[0141]
If a further failure occurs in the printer B during printing (step S711: Yes), the new output destination is changed to the printer C in the same manner as when the printer A is changed to the printer B. However, in this example, data for printer A and data for printer B are generated first, and data for printer C is not generated (see step S606 in FIG. 6). Therefore, even if the output destination is changed to the printer C, through step S709, an exception process due to an error such as inability to print is performed, and the process ends.
[0142]
In the above description, the output unit 506 holds the data for the printer B. However, if the output unit 506 does not hold the data for the printer B (step S709: No), printing is not possible. Exception processing due to errors such as etc. is performed and the process ends. In other words, because the printer at the output destination has failed, the output destination is changed to another printer, but if the data for the printer that is the new output destination is not retained, an error occurs and the print Processing will be terminated.
[0143]
In the above description, the print processing is terminated when the data for the printer as the new output destination is not held due to the occurrence of the failure. However, the data for the printer as the new output destination is stored. It is good also as a structure which produces | generates and continues a printing process. For example, in the above description, when a failure occurs in the printer A and the printer B, and the output destination is changed to the printer C, instead of making an error, new data for the printer C is generated and output by the printer C. It is good also as composition which performs. In other words, until all the installed printers (except for virtual ones) cannot be printed due to the occurrence of a failure, the printing process may be performed sequentially using different printers as a countermeasure against the failure.
[0144]
As described above, according to the first embodiment, the conversion instruction unit 502 instructs the document information to be converted into transmission data, and the process detection unit 501 executes prior to the instruction from the conversion instruction unit 502. And the preceding conversion unit 503 converts the document information into the transmission data having two or more different data formats based on the detection of the processing by the processing detection unit 501, and a holding unit. Reference numeral 504 holds a transmission data file composed of the transmission data converted by the preceding conversion unit 503.
[0145]
Therefore, prior to the user's explicit print command (print command), data conversion for a plurality of output devices 103a, 103b, and 103c having different data formats can be performed and stored. After the print command (print command), the time until the end of the print processing can be shortened, the degree of freedom for the user to select the output device is expanded, and there is a problem such as a paper jam in the printer designated as the output destination. When this occurs, the print processing can be performed quickly with an alternative output device. Therefore, in addition to shortening the time from the print command (print command) issued by the operator (user) to the end of printing, it is possible to quickly obtain an output even when a failure occurs.
[0146]
Further, according to the first embodiment, the conversion instruction detection unit 505 detects an instruction from the conversion instruction unit 502, and the output unit 506 follows the detection of the instruction by the conversion instruction detection unit 505. Data in the data format corresponding to the output devices 103a, 103b, and 103c that are output destinations of the transmission data file held in 504 is output to the output device.
[0147]
For this reason, after printing by the user (print command) or when printing on another output device due to a failure, conversion to printer data is not required, and the time required for the processing is omitted. Can do. Therefore, in addition to shortening the time from the print command (print command) issued by the operator to the end of printing, it is possible to obtain an output promptly even when a failure occurs.
[0148]
Further, according to the first embodiment, when the output unit 506 detects that a failure has occurred in the output device of the output destination, the failure is included in the transmission data file held by the holding unit 504. Since data in a data format corresponding to another output device other than the output device where the error occurred is output to the output device, conversion to printer data is required when printing on another output device due to a failure. Instead, the time required for the processing can be omitted. Therefore, an output can be obtained promptly even when a failure occurs.
[0149]
[Embodiment 2]
In the second embodiment, when transmission data is generated by preceding conversion of document information by a pseudo print command prior to an explicit print command (print command) by a user, the transmission data in a data format corresponding to the output device is used. Data in a format independent of the output device is also generated.
[0150]
The information processing apparatus including the data conversion apparatus according to the second embodiment, the hardware configuration of the information processing system, the hardware configuration of the data conversion apparatus, and the hardware configuration of the output device (printer) are shown in FIGS. Since it is the same as that of each structure of Embodiment 1, the description is abbreviate | omitted.
[0151]
(Functional configuration of data converter)
Next, a functional configuration of the data conversion apparatus 101 will be described. FIG. 8 is a functional block diagram functionally showing the configuration of the data conversion apparatus 101 according to the second embodiment. In FIG. 8, the data conversion apparatus 101 includes a process detection unit 501, a conversion instruction unit 502, a preceding conversion unit 803, a holding unit 504, a conversion instruction detection unit 505, an output unit 806, and a conversion unit 807. It is the composition which includes. In the second embodiment, the same components as those in the first embodiment are denoted by the same reference numerals as those in the first embodiment, and description thereof is omitted.
[0152]
The preceding conversion unit 803 converts the document information into data independent of the output device based on detection of processing by the processing detection unit 501. Hereinafter, data independent of the output device is referred to as independent data. Further, the preceding conversion unit 803 generates transmission data in a data format corresponding to each of one or more of the output devices 103a, 103b, and 103c based on the independent data.
[0153]
The generated transmission data and independent data in one or more data formats are merged in a state where they can be distinguished from each other, and stored in the holding unit 504 as a transmission data file. Note that the conversion to transmission data of each data format and the conversion to independent data are the same as the contents of the conventional conversion processing, and thus the description thereof is omitted.
[0154]
The conversion unit 807 extracts only the data portion corresponding to the output destination device (printer) from the transmission data file held by the holding unit 504 in accordance with the detection of the instruction by the conversion instruction detection unit 505, Is output to the output unit 806. Further, the conversion unit 807 determines that the data portion corresponding to the output destination device (printer) is not included in the transmission data file held by the holding unit 504 in accordance with the detection of the instruction by the conversion instruction detection unit 505. Extracts independent data from the data file for transmission. Then, the conversion unit 807 converts the non-dependent data into transmission data in a data format corresponding to the output destination apparatus (printer), and outputs it to the output unit 806.
[0155]
The output unit 806 outputs transmission data corresponding to the output destination device (printer) to the output destination printer in accordance with the detection of the instruction by the conversion instruction detection unit 505.
[0156]
The processing detection unit 501, the conversion instruction unit 502, the preceding conversion unit 803, the holding unit 504, the conversion instruction detection unit 505, the output unit 806, and the conversion unit 807 are a ROM 302, a RAM 303, a hard disk (HD) 305, and a floppy disk, respectively. (FD) The functions of each unit may be realized by the CPU 301 and the like executing instruction processing in accordance with instructions described in a program recorded on a recording medium such as 307.
[0157]
(Contents of data conversion process)
Next, the contents of the data conversion process of the data conversion apparatus according to the second embodiment will be described. FIG. 9 and FIG. 10 are flowcharts illustrating a procedure of data conversion processing of the data conversion apparatus according to the second embodiment.
[0158]
Similarly to the first embodiment, the second embodiment is also a computer environment (application environment) in which printing can be started after the document file has been read, and the content needs to be changed, such as a document created and released by another person. Assume that an original without a print is printed. In the second embodiment, although not particularly limited, for example, it is assumed that three output devices (printers) 103a, 103b, and 103c and one virtual printer are installed. In the following description of the second embodiment, for convenience, the output devices 103a, 103b, and 103c are assumed to be a printer A, a printer B, and a printer C, respectively, and a virtual printer is assumed to be a printer Y.
[0159]
The printer Y is set (spool setting) so that the OS generates an intermediate data file (independent data) independent of the printer. Further, the printer A, the printer B, and the printer C have a spool setting in which the OS does not generate intermediate data. The drivers for printer A, printer B, printer C, and printer Y are printer driver A, printer driver B, printer driver C, and printer driver Y, respectively.
[0160]
In the second embodiment, a pseudo command issuing unit (macro) in the process detection unit 501 issues a print command (print command) separately from an explicit print command (print command) by the user. In the flowchart of FIG. 9, the procedure of the process by the macro print command (print command) is shown, and in the flowchart of FIG. 10, the procedure of the process by the user's explicit print command (print command) is mainly shown.
[0161]
In FIG. 9, when the file is opened (step S901) and the reading is completed, the reading completion detecting unit as the processing detecting unit 501 detects the reading of the file and notifies the pseudo instruction issuing unit of the reading completion (step). S902). Here, since the user instructs the application program to open the file, it is the application program that detects the end of reading of the file.
[0162]
Subsequently, the pseudo-command issuing unit issues a print command (print command) to the application program (step S903). The pseudo-print command issuing unit is configured as a macro that can be executed immediately after the completion of reading an existing document by executing a standard operation of “selecting printer Y and printing out all pages of an open document as a file output” Has been. Therefore, when the application that detects the end of file reading executes the macro after the file reading ends, a print command (print command) as a file output is issued (step S904).
[0163]
When the printer Y is selected, a print command (print command) as a file output is transmitted to the OS. The OS generates an intermediate file made up of independent data and spools it in a working memory or the like. Subsequently, the OS activates a despooler having a specification capable of transmitting the intermediate file as it is to the printer driver Y (step S905). The despooler issues a print (conversion) command to the printer driver Y and transmits the intermediate file to the driver Y (step S906).
[0164]
In the second embodiment, for example, the printer driver Y generates printer data A interpretable by the printer A and printer data B interpretable by the printer B based on the intermediate file. Then, the printer driver Y merges (combines) the generated printer data A, printer data B, and intermediate file independent data in a state where they can be distinguished from each other. And it transmits to the holding | maintenance part 504 as a data file for transmission (step S907). Then, the holding unit 504 records (holds) the transmission (printer) data file on the recording medium (step S908).
[0165]
On the other hand, after opening a document (step S1001), the user issues an explicit print command (print command) to the application after a certain period of time (step S1002). Next, the application issues a print command (print command) to the OS (step S1003).
[0166]
Next, the OS issues a print command (print command) to the output destination printer, for example, a printer driver corresponding to the printer B, that is, the printer driver B (step S1004). Prior to generating the printer data, the printer driver B searches the holding unit 504 and determines whether printer data corresponding to the open document has already been generated (step S1005).
[0167]
If it has already been generated (step S1005: Yes), the printer driver B reads the transmission data file, and the data for the printer B (denoted as “corresponding portion” in FIG. 10) in the file. Is included (step S1006). If it is included in step S1006 (step S1006: Yes), only the data for printer B is extracted from the transmission data file and transmitted to the output unit 806 (step S1007).
[0168]
On the other hand, a portion corresponding to the output destination printer is included in the transmission data file corresponding to the open document, as in the case where the print instruction (printing instruction) is made with the printer C as the output destination. If not (step S1006: No), the printer C driver extracts independent data from the transmission (printer) data file, converts it into data for the printer C, and outputs it to the output unit 806. Transmit (step S1008).
[0169]
On the other hand, in step S1005, if the printer data has not yet been generated due to a short time from opening the document to the user's explicit print command (print command) (step S1005: No), The printer driver B generates data for the printer B by normal processing and transmits the data to the output unit 806 (step S1009). Upon receiving the printer data, the output unit 806 transmits the data to the printer designated as the output destination (step S1010). Thereby, printing is executed in the designated printer (step S1011).
[0170]
Note that following step S1011, as in the first embodiment, when a failure occurs in the designated printer, print processing can be performed by another printer as a countermeasure against the failure. Since the processing flow in this case is as described in the first embodiment, the description thereof is omitted here.
[0171]
As described above, according to the second embodiment, one of the two or more data formats having different transmission data is a format independent of the output devices 103a, 103b, and 103c, and thus is selected by the user. If there is no output device that has become a substitute output destination due to the occurrence of a failure among the plurality of output devices having different data formats, the user can use the data independent of the output device and Data for the selected output device or alternative output device can be obtained. Therefore, an output can be obtained promptly even when a failure occurs.
[0172]
In addition, according to the second embodiment, the conversion unit 807 converts the data in a format independent of the output devices 103a, 103b, and 103c into data in a data format corresponding to the output device as the output destination. When the output device selected by the user or the output device that has become an alternative output destination due to the occurrence of a failure is not among the plurality of output devices having different data formats, the data that is independent of the output device is displayed by the user. By converting to data for the selected output device or a substitute output device, the time required for generating the output device data can be shortened. Therefore, an output can be obtained promptly even when a failure occurs. Moreover, the release of the application can be accelerated.
[0173]
[Embodiment 3]
In the third embodiment, a plurality of data formats, for example, PDL (page description language) format data or raster format data, in which the document information has different granularity by a pseudo print command prior to an explicit print command (print command) by the user. Or an intermediate format between them. Here, the granularity expresses the progress of data conversion. For example, the data before raster expansion is larger than the data after raster expansion, and the font data after expansion is the font data before expansion. The particle size is smaller than.
[0174]
The hardware configuration of the information processing system including the data conversion device according to the third embodiment, the hardware configuration of the data conversion device, and the hardware configuration of the output device (printer) are shown in FIGS. Since this is the same as each configuration of No. 1, description thereof is omitted.
[0175]
(Hardware configuration of information processing device)
Next, a hardware configuration of the information processing apparatus including the data conversion apparatus according to the third embodiment will be described. FIG. 11 is a block diagram showing a system configuration of an information processing apparatus including a data conversion apparatus according to the third embodiment of the present invention.
[0176]
In FIG. 11, reference numeral 1101 denotes a data converter (computer), 1102 denotes a display device (monitor), and 1103 denotes an output device (printer). This is a normal configuration of a stand-alone type in which a computer and a printer are combined. Further, a display device (monitor) 1102 as a user interface is connected to the data conversion device 1101. The number of printers may be two or more.
[0177]
The data conversion device 1101 includes an arithmetic processing unit 1111, a storage unit 1112, and a transmission unit 1113. The arithmetic processing unit 1111, the storage unit 1112, and the transmission unit 1113 are the same as the arithmetic processing unit 111, the storage unit 112, and the transmission unit 113 of the first embodiment, respectively.
[0178]
The output device (printer) 1103 includes a printer engine (image forming unit) (not shown), an arithmetic processing unit 1131, a storage unit 1132, and a receiving unit 1133. Arithmetic processing unit 1131, storage unit 1132, and receiving unit 1133 are the same as arithmetic processing unit 131, storage unit 132, and receiving unit 133 of Embodiment 1, respectively.
[0179]
The output device (printer) 1103 is configured such that the user can select whether processing such as raster development is performed on the data conversion device 1101 side or on the output device (printer) 1103 side. As a result, the user can perform raster development or distribute the load on the computer or printer with the faster processing. Printers having such functions are known.
[0180]
The output device (printer) 1103 is configured to allow the user to select whether the font expansion processing is performed on the data conversion device 1101 side or on the output device (printer) 1103 side. . Thus, the user can select whether to give priority to the appearance of the printed material, that is, whether to allow the appearance to be different between the original document and the printed material.
[0181]
In general, if the printer does not have the font data specified in the document, the font may be replaced and printed. In this case, the appearance of the original document and the printed document may differ. There is. Printers having such functions are known.
[0182]
Note that the arithmetic processing units 1111 and 1131 and the storage units 1112 and 1132 do not need to physically exist in the data conversion device 1101 or the output device 1103, but may simply constitute a data conversion device or an output device. . Therefore, for example, the configuration may be such that the arithmetic processing units 1111 and 1131 and the storage units 1112 and 1132 exist on the network.
[0183]
(Functional configuration of data converter)
Next, a functional configuration of the data conversion apparatus 1101 will be described. FIG. 12 is a functional block diagram functionally showing the configuration of the data conversion apparatus 1101 according to the third embodiment. In FIG. 12, the data conversion apparatus 1101 includes a process detection unit 501, a conversion instruction unit 502, a preceding conversion unit 1203, a holding unit 504, a conversion instruction detection unit 505, an output unit 1206, and an extraction unit 1207. It is the composition which includes. In the third embodiment, the same components as those in the first embodiment are denoted by the same reference numerals as those in the first embodiment, and description thereof is omitted.
[0184]
The advance conversion unit 1203 converts the document information into a plurality of data format transmission data having different granularities, for example, PDL format transmission data, raster format transmission data, and the like based on detection of processing by the processing detection unit 501. The converted transmission data in a plurality of data formats are merged in a state where they can be distinguished from each other and stored in the holding unit 504 as a transmission data file. Note that the conversion to transmission data of each data format is the same as the content of the conventional conversion processing, and thus the description thereof is omitted.
[0185]
The extraction unit 1207 extracts a data portion of any one data format from the transmission data file held by the holding unit 504 according to the detection of the instruction by the conversion instruction detection unit 505, and outputs it to the output unit 1206. Output.
[0186]
The output unit 1206 outputs the transmission data extracted by the extraction unit 1207 to the output destination printer in accordance with the detection of the instruction by the conversion instruction detection unit 505.
[0187]
The processing detection unit 501, the conversion instruction unit 502, the preceding conversion unit 1203, the holding unit 504, the conversion instruction detection unit 505, the output unit 1206, and the extraction unit 1207 are a ROM 302, a RAM 303, a hard disk (HD) 305, and a floppy disk, respectively. (FD) The functions of each unit may be realized by the CPU 301 and the like executing instruction processing in accordance with instructions described in a program recorded on a recording medium such as 307.
[0188]
(Contents of data conversion process)
Next, the contents of the data conversion process of the data conversion apparatus according to the third embodiment will be described. FIG. 13 and FIG. 14 are flowcharts illustrating a procedure of data conversion processing of the data conversion apparatus according to the third embodiment.
[0189]
Similarly to the first embodiment, the third embodiment also has a computer environment (application environment) in which printing can be started after the document file has been read, and the content needs to be changed, such as a document created and released by another person. Assume that a manuscript that does not have a document (all pages are printed) is printed. In the third embodiment, it is assumed that one output device (printer) 1103 and one virtual printer are installed.
[0190]
In the following description of the third embodiment, for convenience, it is assumed that the output device 1103 is a printer X and the virtual printer is a printer Y. The drivers for printer X and printer Y are printer driver X and printer driver Y, respectively. In the third embodiment, the printer X can designate two processing modes: a PDL mode that handles PDL data, and an image data mode (raster data mode) that handles raster data.
[0191]
In the third embodiment, a pseudo command issuing unit (macro) in the processing detection unit 501 issues a print command (print command) separately from an explicit print command (print command) by the user. In the flowchart of FIG. 13, the procedure of the process by the macro print command (print command) is shown, and in the flowchart of FIG. 14, the procedure of the process by the user's explicit print command (print command) is mainly shown.
[0192]
In FIG. 13, when the file is opened (step S1301) and the reading is completed, the reading completion detecting unit as the processing detecting unit 501 detects the reading completion of the file and notifies the pseudo instruction issuing unit of the reading completion (step). S1302). Here, since the user instructs the application program to open the file, it is the application program that detects the end of reading of the file.
[0193]
Subsequently, the pseudo-command issuing unit issues a print command (print command) to the application program (step S1303). The pseudo-print command issuing unit is configured as a macro that can be executed immediately after the completion of reading an existing document by executing a standard operation of “selecting printer Y and printing out all pages of an open document as a file output” Has been. Accordingly, when the application that detects the end of file reading executes the macro after the file reading ends, a print command (print command) as a file output is issued (step S1304).
[0194]
A print command (print command) as a file output when the printer Y is selected is transmitted (issued) to the printer driver Y via the OS (step S1305). The printer driver Y converts document information into data A in PDL format that can be interpreted by the printer X, and also converts it into data B in raster format. The printer driver Y then merges (combines) the generated PDL-format data A and raster-format data B in a state where they can be distinguished from each other, and transmits the data to the holding unit 504 as a transmission (printer) data file. (Step S1306). Then, the holding unit 504 records (holds) the transmission (printer) data file on the recording medium (step S1307).
[0195]
On the other hand, after opening the document (step S1401), the user issues an explicit print command (print command) to the application after a certain period of time (step S1402). Next, the application issues a print command (print command) to the OS (step S1403).
[0196]
Next, the OS issues a print command (print command) to the output destination printer, for example, a printer driver corresponding to the printer X, that is, the printer driver X (step S1404). Prior to the generation of printer data, the printer driver X searches the holding unit 504 to determine whether printer data corresponding to the open document has already been generated (step S1405).
[0197]
If it has already been generated (step S1405: YES), the printer driver X reads the data file for transmission (for printer) and formats corresponding to the processing mode (PDL mode or image data mode) specified by the user. Are extracted and transmitted to the output unit 1206 (step S1406).
[0198]
On the other hand, in step S1405, if the printer data has not yet been generated due to a short time from the opening of the document to the user's explicit print command (print command) (step S1405: No), The printer driver X generates data in a format corresponding to the processing mode designated by the user by normal processing and transmits the data to the output unit 1206 (step S1407). The output unit 1206 that has received the printer data transmits the received data to the printer X (step S1408). Thereby, printing is executed in the printer X (step S1409).
[0199]
As described above, according to the third embodiment, the conversion instruction unit 502 instructs the document information to be converted into transmission data, and the process detection unit 501 executes prior to the instruction from the conversion instruction unit 502. The pre-conversion unit 1203 detects the processing of the original information, and the pre-conversion unit 1203 differs the granularity of the original information for the same output device (printer) 1103 based on the detection of the processing by the processing detection unit 501. The transmission data is converted into a plurality of data formats, and the holding unit 504 holds the transmission data converted by the preceding conversion unit 1203. Therefore, the granularity precedes the user's explicit print command (print command). Since data conversion of a plurality of different data formats can be performed and stored, for example, processing such as raster expansion and font expansion is performed by the data conversion apparatus 1. 01 and the output device (printer) 1103, the print processing can be performed by selecting a data format of an appropriate granularity and executing the print processing after an explicit print command (print command) by the user. The time until the end can be shortened.
[0200]
Therefore, for example, in a system in which processing such as raster development and font development can be performed in either the data conversion device 1101 or the output device (printer) 1103, printing is performed from a print command (print command) issued by an operator (user). The time until the end can be shortened.
[0201]
Further, according to the third embodiment, when the conversion instruction detection unit 505 detects an instruction from the conversion instruction unit 502, the extraction unit 1207 follows the detection of the instruction by the conversion instruction detection unit 505. Data of any one data format is extracted from the transmission data held in 504, and the output unit 1206 outputs the data extracted by the extraction unit 1207 to the output device (printer) 1103. After an explicit print command (print command), conversion processing to printer data is not required, and the time required for the processing can be omitted. Therefore, for example, in a system in which processing such as raster development and font development can be performed in either the data conversion device 1101 or the output device (printer) 1103, printing is performed from a print command (print command) issued by an operator (user) The time until the end can be shortened.
[0202]
[Embodiment 4]
In the fourth embodiment, prior to an explicit print command (print command) by the user, the document information is pre-converted into PDL (page description language) format data, raster format data, or the like with different granularities by a pseudo print command. For example, the time required from the transmission of data to the output device (printer) to the start of printing is estimated, and data in the optimum data format is output to the output device (printer).
[0203]
The hardware configuration of the information processing apparatus including the data conversion apparatus according to the fourth embodiment is the same as that of the third embodiment shown in FIG. 11, and information including the data conversion apparatus according to the fourth embodiment. Since the hardware configuration of the processing system, the hardware configuration of the data conversion device, and the hardware configuration of the output device (printer) are the same as those of the first embodiment shown in FIGS. Omitted.
[0204]
(Functional configuration of data converter)
Next, a functional configuration of the data conversion apparatus 1101 will be described. FIG. 15 is a functional block diagram functionally showing the configuration of the data conversion apparatus 1101 according to the fourth embodiment. 15, the data conversion apparatus 1101 includes a processing detection unit 501, a conversion instruction unit 502, a preceding conversion unit 1503, a holding unit 504, a conversion instruction detection unit 505, an output unit 1506, an extraction unit 1507, The processing time detection unit 1508 is included. In the fourth embodiment, the same components as those in the first embodiment are denoted by the same reference numerals as those in the first embodiment, and description thereof is omitted. The preceding conversion unit 1503 and the output unit 1506 are the same as the preceding conversion unit 1203 and the output unit 1206 of the third embodiment, respectively.
[0205]
The extraction unit 1507 is based on the processing time obtained for each data format by the processing time detection unit 1508 out of the transmission data file held by the holding unit 504 in accordance with the instruction detected by the conversion instruction detection unit 505. , The data portion of any one data format is extracted and output to the output unit 1506.
[0206]
The processing time detection unit 1508 is based on the data processing speed Vc per unit PDL amount on the output device 1103 side, the size Sa of the data A in the PDL format, the size Sb of the data B in the raster format, and the substantially current transfer speed Vi. Then, Ta and Tb are simply estimated from the following equations (1) and (2).
[0207]
Ta is the time until the data A in the PDL format is transmitted to the output device 1103 and the development to the final raster data is completed, that is, the time until printing is started in the output device 1103. As for Tb, raster format data B is transmitted to the output device 1103, where the development up to the final raster data ends (if the data converter 1101 does not develop the final raster data), and the output device 1103. Is the time until printing starts.
[0208]
Ta = Sa / Vi + Sa / Vc (1)
Tb = Sb / Vi (2)
[0209]
The means for acquiring the transfer speed Vi (hereinafter referred to as transfer speed detecting means) may be a ping command, for example, or at a predetermined sampling interval like a performance monitor attached to the OS. It is also possible to monitor the traffic and calculate the effective transfer rate from the traffic volume. In addition, the transfer rate detected at a certain moment may be used, or an average value of data measured at a plurality of past moments may be used.
[0210]
The processing detection unit 501, the conversion instruction unit 502, the preceding conversion unit 1503, the holding unit 504, the conversion instruction detection unit 505, the output unit 1506, the extraction unit 1507, and the processing time detection unit 1508 are the ROM 302, the RAM 303, or the hard disk ( (HD) 305, floppy disk (FD) 307, etc. The functions of each unit may be realized by the CPU 301 and the like executing instruction processing in accordance with instructions described in a program recorded on a recording medium.
[0211]
(Contents of data conversion process)
Next, the contents of the data conversion process of the data conversion apparatus according to the fourth embodiment will be described. In the fourth embodiment, similarly to the first embodiment, the computer environment (application environment) can start printing after the reading of the document file is completed, and the content needs to be changed like a document created and released by another person. Assume that a manuscript that does not have a document (all pages are printed) is printed. In the fourth embodiment, it is assumed that one output device 1103 (referred to as printer X) and one virtual printer (referred to as printer Y) are installed.
[0212]
In the fourth embodiment, the printer X can designate two processing modes: a PDL mode that handles data in PDL format, and an image data mode (raster data mode) that handles data in raster format. Further, the driver of the printer X, that is, the printer driver X has therein a data processing speed Vc per unit PDL amount on the printer side as a constant.
[0213]
In the fourth embodiment, a pseudo command issuing unit (macro) in the processing detection unit 501 issues a print command (print command) separately from an explicit print command (print command) by the user. The processing procedure by the macro print command (print command) is the same as that described in the third embodiment with reference to the flowchart shown in FIG. Description is omitted.
[0214]
First, when the reading of the file is completed, a macro of “select printer Y and print out all pages of the open document as a file output” is executed. Thereby, data A in the PDL format and data B in the raster format are generated, merged, and recorded (held) in the holding unit 504 (see steps S1301 to S1307 in FIG. 13).
[0215]
The flowchart shown in FIG. 16 mainly shows a processing procedure based on a user's explicit print command (print command). After opening the document (step S1601), the user issues an explicit print command (print command) to the application after a certain period of time (step S1602). Next, the application issues a print command (print command) to the OS (step S1603).
[0216]
Next, the OS issues a print command (print command) to the printer driver X of the output destination printer X (step S1604). Prior to the generation of the printer data, the printer driver X searches the holding unit 504 and determines whether printer data corresponding to the open document has already been generated (step S1605).
[0217]
If already generated (step S1605: Yes), the printer driver X reads the transmission data file and detects the size Sa of the data A in the PDL format and the size Sb of the data B in the raster format (step S1606). ). Further, the printer driver X inquires the transfer speed detecting means about the current transfer speed Vi, and simply estimates the time Ta and Tb until the output start from the above expressions (1) and (2) (step S1607).
[0218]
If Ta ≧ Tb (step S1608: YES), only raster format data B is extracted and transmitted to the output unit 1506 regardless of the designation of the processing mode by the user (step S1609). On the other hand, if Ta <Tb (step S1608: No), only the data A in the PDL format is extracted only when the data format specified by the user is the PDL format, while the data format specified by the user is the raster. In the case of the format, only the raster format data B is extracted, and the extracted data is transmitted to the output unit 1506 (step S1610).
[0219]
The reason for performing such processing is that, for example, in font expansion, when the font is replaced and printed, the original document and the printed document may appear different. This is to prevent the user's intention from being violated when it is desired to match the appearance.
[0220]
On the other hand, in step S1605, if the printer data has not yet been generated due to the short time from the opening of the document to the user's explicit print command (print command) (step S1605: No), The printer driver X generates data in a format corresponding to the processing mode designated by the user by normal processing and transmits the data to the output unit 1506 (step S1611). Upon receiving the printer data, the output unit 1506 transmits the data to the printer X (step S1612). Thereby, printing is executed in the printer X (step S1613).
[0221]
As described above, according to the fourth embodiment, the preceding conversion unit 1503 converts the processing time detection unit 1508 as a determination criterion when the extraction unit 1507 extracts data in any one data format. In order to obtain the time required for the output process in the output device (printer) 1103 for the data in each data format, the output process in the output device (printer) 1103 is required after an explicit print command (print command) by the user. By extracting a data format with a short granularity and outputting it to the output device (printer) 1103, the time until the end of the printing process can be shortened. Therefore, for example, in a system in which processing such as raster development and font development can be performed in either the data conversion device 1101 or the output device (printer) 1103, printing is performed from a print command (print command) issued by an operator (user). The time until the end can be shortened.
[0222]
In the present embodiment, the time required for output by the output device (printer) 1103 is simply estimated using the processing speed Vc per unit PDL amount. However, for each type of drawing command possessed by the PDL, It is also possible to estimate more accurately by having the processing speed per unit PDL amount inside the driver.
[0223]
[Embodiment 5]
In the fifth embodiment, prior to an explicit print command (print command) by the user, the document information is pre-converted into, for example, data in PDL (page description language) format or raster format data having a different granularity by a pseudo print command. For example, when a failure occurs due to the data format during print processing in the output device (printer), data in another data format is retransmitted to the output device (printer) to perform print processing. .
[0224]
The hardware configuration of the information processing system including the data conversion device according to the fifth embodiment, the hardware configuration of the data conversion device, and the hardware configuration of the output device (printer) are shown in FIGS. Since this is the same as each configuration of No. 1, description thereof is omitted.
[0225]
(Hardware configuration of information processing device)
Next, a hardware configuration of an information processing apparatus including the data conversion apparatus according to the fifth embodiment will be described. FIG. 17 is a block diagram showing a system configuration of an information processing apparatus including a data conversion apparatus according to Embodiment 5 of the present invention.
[0226]
In FIG. 17, reference numeral 1701 denotes a data conversion device (computer), 1702 denotes a display device (monitor), and 1703 denotes an output device (printer). This is a normal configuration of a stand-alone type in which a computer and a printer are combined. Further, a display device (monitor) 1702 as a user interface is connected to the data conversion device 1701. The number of printers may be two or more.
[0227]
The data conversion apparatus 1701 includes an arithmetic processing unit 1711, a storage unit 1712, and a transmission unit 1713. The arithmetic processing unit 1711, the storage unit 1712, and the transmission unit 1713 are the same as the arithmetic processing unit 111, the storage unit 112, and the transmission unit 113 of the first embodiment, respectively.
[0228]
The output device (printer) 1703 includes a printer engine (image forming unit) (not shown), an arithmetic processing unit 1731, a storage unit 1732, a receiving unit 1733, and a failure occurrence notifying unit 1734. The arithmetic processing unit 1731, the storage unit 1732, and the receiving unit 1733 are the same as the arithmetic processing unit 131, the storage unit 132, and the receiving unit 133 of the first embodiment, respectively.
[0229]
The failure notification unit 1734 has functions of, for example, a CPU 401 that detects the occurrence of a failure when it is difficult to perform print processing, and an interface 409 that transmits a failure notification to the transmission unit 1713 of the data converter 1701. Is realized.
[0230]
Here, as an obstacle that makes it difficult to perform the printing process, for example, when printing a complicated document in the PDL mode, the raster development on the printer side is appropriately performed because the resources on the printer side such as the memory are insufficient. The printer may not be hung up, but a print output cannot be obtained. The failure occurrence notification unit 1734 notifies the transmission unit 1713 of the data conversion apparatus 1701 when such a failure occurs.
[0231]
Similarly to the output device (printer) 1103 described in the third embodiment, the output device (printer) 1703 performs processing such as raster expansion and font expansion on either the data conversion device 1701 side or the output device (printer) 1703 side. In this configuration, the user can select whether to perform the operation.
[0232]
Note that the arithmetic processing units 1711 and 1731 and the storage units 1712 and 1732 do not need to physically exist in the data conversion device 1701 or the output device 1703, and may simply constitute a data conversion device or an output device. . Therefore, for example, the configuration may be such that the arithmetic processing units 1711 and 1731 and the storage units 1712 and 1732 exist on the network.
[0233]
(Functional configuration of data converter)
Next, a functional configuration of the data conversion apparatus 1701 will be described. FIG. 18 is a functional block diagram functionally showing the configuration of the data conversion apparatus 1701 according to the fifth embodiment. In FIG. 18, the data conversion device 1701 includes a processing detection unit 501, a conversion instruction unit 502, a preceding conversion unit 1803, a holding unit 504, a conversion instruction detection unit 505, and an output unit 1806. Note that in the fifth embodiment, the same components as those in the first embodiment are denoted by the same reference numerals as those in the first embodiment, and description thereof is omitted. The preceding conversion unit 1803 is the same as the preceding conversion unit 1203 of the third embodiment.
[0234]
The output unit 1806 extracts only one data format data from the transmission data file held by the holding unit 504 in accordance with the detection of the instruction by the conversion instruction detection unit 505, and outputs it to the output device 1703. Output. In addition, the output unit 1806 has a function of detecting that a failure has occurred in the output device 1703, such as difficulty in data expansion. For example, the function of the output unit 1806 can be realized by the transmission unit 1713 illustrated in FIG.
[0235]
The output unit 1806 corresponds to a part called a port monitor of a certain OS, and a printer manufacturer can provide a port monitor with a unique specification. Note that the failure occurrence notification function between the failure occurrence notification unit 1734 of the output device 1703 and the transmission unit 1713 of the data conversion device 1701 is known as a technique for performing bidirectional communication between a computer and a printer. Description is omitted.
[0236]
The process detection unit 501, the conversion instruction unit 502, the preceding conversion unit 1803, the holding unit 504, the conversion instruction detection unit 505, and the output unit 1806 are a ROM 302, a RAM 303, a hard disk (HD) 305, and a floppy disk (FD) 307, respectively. The functions of each unit may be realized by the CPU 301 and the like executing instruction processing in accordance with the instructions described in the program recorded on the recording medium.
[0237]
(Contents of data conversion process)
Next, the contents of the data conversion process of the data conversion apparatus according to the fifth embodiment will be described. Similarly to the first embodiment, the fifth embodiment is also a computer environment (application environment) in which printing can be started after reading of a document file, and the content needs to be changed, such as a document created and released by another person. Assume that a manuscript that does not have a document (all pages are printed) is printed.
[0238]
In the fifth embodiment, it is assumed that one output device 1703 (referred to as printer X) and one virtual printer (referred to as printer Y) are installed. In the fifth embodiment, the printer X can specify two processing modes: a PDL mode that handles PDL data, and an image data mode (raster data mode) that handles raster data.
[0239]
Further, in the fifth embodiment, a pseudo command issuing unit (macro) in the processing detection unit 501 issues a print command (print command) separately from an explicit print command (print command) by the user. The processing procedure by the macro print command (print command) is the same as that described in the third embodiment with reference to the flowchart shown in FIG. Description is omitted.
[0240]
First, when the reading of the file is completed, a macro of “select printer Y and print out all pages of the open document as a file output” is executed. Thereby, data A in the PDL format and data B in the raster format are generated, merged, and recorded (held) in the holding unit 504 (see steps S1301 to S1307 in FIG. 13).
[0241]
The flowchart shown in FIG. 19 mainly shows a processing procedure based on a user's explicit print command (print command). After opening the document (step S1901), the user issues an explicit print command (print command) to the application after a certain period of time (step S1902). Next, the application issues a print command (print command) to the OS (step S1903).
[0242]
Next, the OS issues a print command (print command) to the printer driver X of the output destination printer X (step S1904). Prior to the generation of printer data, the printer driver X searches the holding unit 504 and determines whether printer data corresponding to the open document has already been generated (step S1905).
[0243]
If it has already been generated (step S1905: Yes), the printer driver X reads the data file for transmission and stores the file as it is, that is, PDL together with information indicating which processing mode the user has specified. The data A in the format and the data B in the raster format are merged and transmitted to the transmitting unit (step S1906).
[0244]
On the other hand, in step S1905, if the printer data has not yet been generated due to a short time from the opening of the document to the user's explicit print command (print command) (step S1905: No), The printer driver X generates data in a format corresponding to the processing mode designated by the user by normal processing and transmits the data to the output unit 1806 (step S1907). Upon receiving the transmission data file, the output unit 1806 determines whether or not a failure has occurred in the printer X (step S1908).
[0245]
When the printer X is normal (step S1908: No), the output unit 1806 extracts data corresponding to the processing mode designated by the user from the data in the transmission (printer) data file. The data is transmitted to the printer X (step 1909). Thereby, printing is executed in the printer X. At this time, the output unit 1806 holds data in modes other than those transmitted to the printer X.
[0246]
If a failure such as incompatibility of data occurs during execution of the printing process in the printer X (step S1910: Yes), the printer X notifies the output unit 1806 of the occurrence of the failure. Upon receiving the notification, the output unit 1806 returns to step S1908, recognizes the failure of the printer X (step S1908: Yes), and what is the mode designated by the user in the transmission data file received from the holding unit 504? It is checked whether there is data corresponding to a different processing mode (step S1911).
[0247]
If there is data corresponding to a processing mode different from the mode designated by the user in the transmission data file (step S1911: Yes), the data is extracted from the transmission data file and sent to the printer X. Transmit (step S1912). Thereby, printing is executed in the printer X.
[0248]
On the other hand, if there is no data corresponding to a processing mode different from the mode designated by the user in the transmission data file (step S1911: No), exception processing due to an error such as inability to print is performed and the process ends. Become.
[0249]
As described above, according to the fifth embodiment, the conversion instruction detection unit 505 detects an instruction from the conversion instruction unit 502, and the output unit 1806 follows the detection of the instruction by the conversion instruction detection unit 505. The data of any one of the transmission data held by the holding unit 504 is extracted and output to the output device (printer) 1703, and the output device (printer) 1703 is troubled by the output. If it is detected that the data is different from the transmission data held by the holding unit 504, the data is output to the output device (printer) 1703. After the command), conversion processing to printer data is not required, and the time required for the processing can be omitted. For example, when a failure such that the raster processing or the like in the output device (printer) 1703 is not properly performed and print processing is not performed occurs, another format of data is output to the output device (printer) 1703 again. can do.
[0250]
Therefore, for example, in a system in which processing such as raster development and font development can be performed in either the data conversion device 1701 or the output device (printer) 1703, printing is performed from a print command (print command) issued by an operator (user). The time to completion can be shortened, and a print output can be quickly obtained even when a failure occurs due to the data format.
[0251]
[Embodiment 6]
FIGS. 20 and 21 show the flow of processing of the example of the invention according to the sixth embodiment. In this embodiment, in a computer environment (application environment) in which printing of the document can be started after the reading of the document file is completed, all pages of one page that do not need to be changed such as a document created and released by others are disclosed. This is an embodiment in which a document is printed.
[0252]
In this embodiment, one printer X is installed and a virtual printer Y is also installed. The printer driver X according to the present embodiment can execute two compression processes of the known “run-length compression mode” and “JPEG mode” on the image data.
[0253]
In the embodiment of the present application, the pseudo-command issuing unit issues a print command separately from (independently) the explicit print command by the user. FIG. 20 shows the flow of processing by the print command of the pseudo-command issuing unit. FIG. 21 mainly shows a flow of processing by a user's explicit print command.
[0254]
As shown in FIGS. 20 and 21, when a document file is opened by the user, the reading end detection unit detects the end of reading of the file and notifies the pseudo instruction issuing unit of this. In this embodiment, the user instructs the application program to open a file, and it is the application program that detects the end of reading.
[0255]
Subsequently, the pseudo print command issuing means issues a print command to the application program. Such pseudo print command issuing means can be realized as a macro that operates in an application.
[0256]
Here, the macro refers to a program that can execute individual functions of an application as a series of routine operations. In general, in a high-function application, it is possible to execute a macro in an application by describing a routine operation in a predetermined macro language. In the case of Microsoft Word, for example, the macro is executed by the application at the same time as starting the application or by the application at the same time as the end of reading of the existing document, in addition to the explicit execution instruction by the user. Is possible.
[0257]
The macro according to the present embodiment is a macro that can be executed immediately after the completion of reading an existing document by executing a standard operation of “selecting printer Y and printing out all pages of an open document as file output”. It is configured. Therefore, when the application that detects the end of file reading executes the macro, a print command as a file output is issued.
[0258]
Here, the file output means that the printer data is not transmitted to the printer but is recorded on a storage means such as a hard disk.
[0259]
Therefore, a print command as a file output when the printer Y is selected is transmitted to the OS, and the OS generates a standard format intermediate data file and spools it in the storage device. Subsequently, the OS despools the file. In this embodiment, however, the conversion command from the intermediate data file to the printer data is not input to the printer driver. This is input to the printer driver (step S2005).
[0260]
In order to input the intermediate data file itself to the printer driver, for example, in the case of Windows, it is only necessary to change the despool function of the OS (the despooler part is changed to the original specification and the intermediate data file is passed as it is. ). In general, such intermediate data includes the location of image data included in a document (specifically, a pointer in a PC memory) and an identifier uniquely corresponding to each image data. The intermediate data file is generally a collection of drawing commands, and the pointer and identifier are given as arguments of the command.
[0261]
Then, the printer driver Y in the present embodiment extracts image information from the intermediate data, and method A (run length mode), method B (JPEG mode) with respect to part of each image information (for example, only the upper 10 lines). ) (Step S2006). Then, the compression method with the smallest amount of data after compression is associated with the document file name and the image information identifier, and retained as a prescribed file in the retention unit (step S2007).
[0262]
On the other hand, the user issues an explicit print command to the application after a certain period of time has elapsed after opening the document (step S2101) (steps S2102 to 2104). When this print command is issued with the printer X as the output destination, the printer driver X that generates the data for the printer X searches the file specified above prior to the data generation, and the name of the document file for which the print command has been issued And whether or not a compression method is designated is checked (step S2105).
[0263]
If it is already specified, printer data is generated by compression using the method specified for each image data based on the identifier, and is transmitted to the transmitting means (steps S2106 and S2108). When the document is not changed, the identifier is generally not changed between the flow of FIG. 20 and the flow of FIG. 21).
[0264]
On the other hand, if step S102 is not executed because the user's explicit print command is earlier than the macro operation start, printer data is generated and transmitted (steps S2107 and S2108). Thereafter, printing is performed (step S2109), and a series of processing is terminated.
[0265]
In the above embodiment, the compression method is determined for each image. However, the correspondence between the image and the compression method (identifier etc.) is obtained by taking the average of the compression ratios of the methods A and B through all the image data. It is also possible to easily select an efficient compression method without being aware of the above.
[0266]
In this way, the information about the original is obtained in advance of the print command from the user, and the compression method to be applied is selected in advance, so that it is optimal without causing an increase in processing time. Compression processing can be enabled.
[0267]
Also, prior to the print command from the user, information on all image information contained in the document is obtained, and a compression method to be applied in advance is selected and held for each image data. Thus, it is possible to apply an optimal compression process for each image without causing an increase in processing time.
[0268]
In addition, as a means for obtaining information about the document prior to the print command, the OS is configured to generate intermediate data prepared as a standard by the OS, so that the means can be general-purpose, simple, and high-speed. it can.
[0269]
[Embodiment 7]
22 and 23 show the processing flow of the invention according to the seventh embodiment. Similarly to the sixth embodiment, the present embodiment also has contents such as a document created and released by another person in a computer environment (application environment) where printing of the document can be started after the reading of the document file is completed. This is an embodiment in the case of printing all one-page originals that need not be changed.
[0270]
Also in the present embodiment, a single printer X is installed and a virtual printer Y is also installed. The printer driver X of the present embodiment can also execute two compression processes of the known “run-length compression mode” and “JPEG mode” on the image data.
[0271]
Also in the present embodiment, the pseudo-command issuing means issues a print command separately (independently) from an explicit print command by the user. FIG. 22 shows the flow of processing by the print command of the pseudo command issuing means, and FIG. 23 mainly shows the flow of processing by the user's explicit print command.
[0272]
As in the sixth embodiment, after the document is opened by the user, the reading end detection unit detects the reading end and notifies the pseudo instruction issuing unit of the opening. Also in this embodiment, it is the application program that detects the end of reading.
[0273]
Subsequently, the pseudo print command issuing means issues a print command to the application program. Such pseudo-print command issuing means is configured as a macro that can be executed immediately after completion of reading of an existing document, by executing a standard operation of “selecting printer Y and printing out all pages of an open document as file output” Has been. Therefore, when the application that detects the end of file reading executes the macro, a print command as a file output is issued.
[0274]
Here, file output means that the printer data is not sent to the printer but is recorded on a storage means such as a hard disk, and the file name at the time of recording is uniquely associated with the read document name. It is possible.
[0275]
Accordingly, a print command as a file output when the printer Y is selected is transmitted to the printer driver Y via the OS. Here, the printer driver Y in the present embodiment compresses each type of data (for example, image) to be compressed by the methods A and B, and generates printer data using the compression result with the smaller data amount. (Step S2206), it is held in the storage means as the holding means (step S2207).
[0276]
On the other hand, the user issues an explicit print command to the application (steps S2302 to S2304) after a certain period of time has elapsed after the document is opened (step S2301). When this print command is issued with the printer X as the output destination, the printer driver X that generates data for the printer X searches the holding means prior to data generation, and the printer data corresponding to the opened document. It is checked whether or not has already been generated (step S2305). If the file has already been generated (step S2305: Yes), the file is read and transmitted to the transmission means (step S2306).
[0277]
On the other hand, if step 201 is not executed because the user's explicit print command is earlier than the start of macro operation (step S2305: No), printer data is generated and transmitted in step 203. .
[0278]
In this way, since data generation including compression is performed by a method selected in advance and the result is held, it is possible to promptly respond to an explicit print command by the user.
[0279]
[Embodiment 8]
24 and 25 show the processing flow of the invention according to the eighth embodiment. In this embodiment, in addition to one printer X, a virtual printer Y is installed, and the printer driver X of this embodiment also uses the well-known “run-length compression mode” “JPEG” for image data. Two compression processes of “mode” can be executed, but the user can specify which mode to use.
[0280]
As shown in FIG. 24, after the document is opened by the user, the reading end detection unit detects the reading end and notifies the pseudo instruction issuing unit of the opening. Also in this embodiment, it is the application program that detects the end of reading.
[0281]
Subsequently, the pseudo print command issuing unit issues a print command to the application program (step S2403). Such pseudo-print command issuing means is configured as a macro that can be executed immediately after completion of reading of an existing document, by executing a standard operation of “selecting printer Y and printing out all pages of an open document as file output” Has been. Therefore, when the application that detects the end of file reading executes the macro, a print command as a file output is issued (step S2404).
[0282]
A print command as a file output for selecting the printer Y is transmitted to the printer driver Y via the OS (step S2405). Here, the printer driver Y in the present application uses both methods A and B to generate two types of printer data, merges these data in an identifiable state, and transmits the merged data to the holding unit (step S2406). And held in the storage means as the holding means (step S2407).
[0283]
On the other hand, the user issues an explicit print command to the application (steps S2502 to S2504) after a certain period of time has elapsed after opening the document (step S2501), and specifies a compression method for the driver. When this print command is issued with the printer X as the output destination, the printer driver X that generates data for the printer X searches the holding means prior to data generation, and the printer data corresponding to the opened document. Is already generated (step S2505).
[0284]
If it has already been generated (step S2505: Yes), the file is read, and only data corresponding to the compression method designated by the user is extracted and transmitted to the transmission means (steps S2506 and 2508).
[0285]
On the other hand, if step S2407 is not executed because the user's explicit print command is earlier than the macro operation start (step S2505: No), printer data is generated and transmitted (step S2507). , S2508). Thereafter, the image is printed by the printer (step S2509), and the series of processes is terminated.
[0286]
In this way, prior to an explicit conversion command from the user, the conversion is performed using a plurality of compression methods, and the data for the output device in the plurality of compressed forms is held. Therefore, the degree of correspondence to the compression method designation by the user can be increased and the print command can be dealt with promptly.
[0287]
[Embodiment 9]
FIG. 26 and FIG. 27 show the process flow of the invention according to the ninth embodiment. In this embodiment, a virtual printer Y is installed in addition to one printer X, and the printer driver X of this embodiment also uses the well-known “run length compression mode” “JPEG” for image data. It is possible to execute two compression processes of “mode”, but the user cannot specify which mode to use, and the driver is automatically determined. Further, the printer driver X of the present embodiment has expansion speeds VAd and VBd per unit data amount on the printer side for each of the compression methods A and B as constants therein.
[0288]
As shown in FIG. 26, after the document is opened by the user (step S2601), the reading end detection unit detects the end of reading and notifies the pseudo instruction issuing unit of the opening (step S2602). Also in this embodiment, it is the application program that detects the end of reading.
[0289]
Subsequently, the pseudo print command issuing unit issues a print command to the application program (step S2603). The pseudo print command issuing means is configured as a macro that can be executed immediately after the completion of reading an existing document by executing a standard operation of “selecting printer Y and printing out all pages of an open document as a file output” Has been. Therefore, when the application that detects the end of file reading executes the macro, a print command as a file output is issued.
[0290]
A print command as a file output when the printer Y is selected is transmitted to the printer driver Y via the OS (steps S2604 and S2605). Here, the printer driver Y in the present embodiment generates two types of printer data using both the methods A and B, merges them in an identifiable state, and transmits them to the holding means (step S2606), the data is held in the storage means as the holding means (step S2607).
[0291]
On the other hand, the user issues an explicit print command to the application (steps S2702 to S2704) after a certain period of time has elapsed after opening the document (step S2701), and specifies a compression method for the driver. When this print command is issued with the printer X as the output destination, the printer driver X that generates data for the printer X searches the holding means prior to data generation, and the printer data corresponding to the opened document. Is already generated (step S2705).
[0292]
If the data has already been generated (step S2705: YES), the data size Sa after compression by the method A and the data size Sb after compression by the method B are detected (step S2706). In addition, the printer driver X inquires the transfer rate detection means about the current transfer rate Vi, and simply estimates the times Ta and Tb required for transfer and expansion by the following equation (step S2707).
[0293]
Ta = Sa / Vi + Sa / VAd
Tb = Sb / Vi + Sa / VBd
[0294]
Here, the transfer rate detection means may be, for example, a ping command, or the traffic is monitored at a predetermined sampling interval like the performance monitor attached to Windows NT4 or the like, and the effective transfer rate is determined from the amount of traffic. It may be calculated. Also, the transfer rate detected at one current point may be used, or an average value of data measured at a plurality of past points may be used.
[0295]
Then, Ta and Tb are compared, and only the data corresponding to the method having the shorter (faster) transfer and decompression time is extracted and transmitted to the transmission means (step S2708).
[0296]
On the other hand, if there is no printer data in the printer driver X (step S2705: No), the printer driver X generates printer data by the default compression method, and then transmits it to the transmission means (step S2709).
[0297]
Then, the data for printer is transmitted to the printer by the transmission means (step S2710), printing is performed by the printer (step S2711), and then all the processes are terminated.
[0298]
In this way, since it has means for detecting the transfer rate between the data conversion device and the output device, and based on the transfer rate, it is configured to have means for sending data after one compression, Depending on the condition of the transfer path, data with a high compression rate can be transmitted and output quickly, or data with a low compression rate can be transmitted and output with higher image quality.
[0299]
In addition, since it has means for detecting the decompression speed of the output device and has means for transmitting data after one compression based on the decompression speed, the decompression speed of the decompressor should be taken into consideration. Therefore, it is possible to output in total and quickly.
[0300]
[Embodiment 10]
28 and 29 show the process flow of the invention according to the tenth embodiment. In this embodiment, in a computer environment (application environment) in which printing of the document can be started after the reading of the document file is completed, the entire page is not required to be changed like a document created and released by another person. This is an example of printing an original. In the present embodiment, one printer X is installed and a virtual printer Y is also installed. In the printer X according to the present embodiment, the user can designate two compression modes of “low compression mode” and “high compression mode”.
[0301]
In this embodiment, the pseudo instruction issuing means issues a print command separately (independently) from the explicit print instruction by the user. FIG. 28 shows the process of the print instruction of the pseudo instruction issuing means. FIG. 29 mainly shows a flow of processing by a user's explicit print command.
[0302]
As shown in FIG. 28, when the document file (S2801) is opened by the user, the reading end detection means detects the end of reading of the file and notifies the pseudo instruction issuing means of this (step S2802). In this embodiment, the user instructs the application program to open a file, and it is the application program that detects the end of reading.
[0303]
Subsequently, the pseudo print command issuing means issues a print command to the application program (step S2803). Such pseudo print command issuing means can be realized as a macro that operates in an application.
[0304]
Here, the macro refers to a program that can execute individual functions of an application as a series of routine operations. In general, in a high-function application, it is possible to execute a macro in an application by describing a routine operation in a predetermined macro language. In the case of Microsoft Word 97, for example, the macro is executed by the application at the same time as starting the application, or by the application at the same time as the end of reading of the existing document. It is possible.
[0305]
The macro according to the present embodiment is a macro that can be executed immediately after the completion of reading an existing document by executing a standard operation of “selecting printer Y and printing out all pages of an open document as file output”. It is configured as. Therefore, when the application that detects the end of file reading executes the macro, a print command as a file output is issued (step S2804).
[0306]
Here, file output means that the printer data is not sent to the printer but is recorded on a storage means such as a hard disk, and the file name at the time of recording is uniquely associated with the read document name. It is possible.
[0307]
Therefore, a print command as a file output for selecting the printer Y is transmitted to the printer driver Y via the OS (step S2805). Here, the printer driver Y in the present application converts document information into data A at a low compression rate that can be interpreted by the printer X (not Y), and simultaneously converts it into data B at a high compression rate. In a state where data can be identified, A and B are merged and transmitted to the storage means as the holding means (step S2806). The holding unit saves the merged print data in a file (step S2807).
[0308]
On the other hand, after the document is opened (step S2901), the user issues an explicit print command to the application after a certain period of time, and designates the compression ratio high or low for the driver (steps S2902 to S2904). . When this print command is issued with the printer X as the output destination, the printer driver X that generates data for the printer X searches the holding means prior to data generation, and the printer data corresponding to the opened document. In step S2905, it is checked whether or not the file has already been generated.
[0309]
If the file has already been generated (step S2905: YES), the file is read, and only the data in the format corresponding to the compression rate designated by the user is extracted and transmitted to the transmission means (step S2906). Is performed (steps S2908 and S2909).
[0310]
On the other hand, if step 101 is not executed (step S2905: No) because the user's explicit print command is earlier than the macro operation start (step S2905: No), the printer data is generated and transmitted (step S2907). ). Thereafter, printing is performed (steps S2908 and S2909).
[0311]
In this way, after the time point when the conversion of the document information into the data becomes possible, means for performing data conversion including the compression in advance of an explicit conversion command from the user, Since it is configured so as to be performed at a plurality of compression ratios, it is possible to broaden the degree of correspondence to the compression ratio designation by the user and to promptly output at the compression ratio designated by the user.
[0312]
[Embodiment 11]
30 and 31 show the process flow of the eleventh embodiment. Also in this embodiment, in a computer environment (application environment) where printing of the document can be started after reading of the document file is completed, there is no need to change the contents as in a document created and released by another person. This is an embodiment in the case of printing the original document.
[0313]
In this embodiment, in addition to the installation of one printer X, a virtual printer Y is also installed. The printer X of this embodiment has two types of “low compression mode” and “high compression mode”. Although compression can be executed in the compression mode, the user cannot specify one of them. Further, the printer driver X of the present embodiment has expansion speeds VAd and VBd per unit data amount on the printer side for each of the compression ratios A and B as constants therein.
[0314]
As shown in FIG. 30, when the document file is opened by the user (step S3001), the reading end detection unit detects the end of reading of the file and notifies the pseudo instruction issuing unit of this (step S3002).
[0315]
Subsequently, the pseudo print command issuing means issues a print command to the application program (step S3003). Such pseudo print command issuing means can be realized as a macro that operates in an application.
[0316]
The macro according to the present embodiment is a macro that can be executed immediately after the completion of reading an existing document by executing a standard operation of “selecting printer Y and printing out all pages of an open document as file output”. It is configured as. Therefore, when the application that detects the end of file reading executes the macro, a print command as a file output is issued (step S3004).
[0317]
Therefore, a print command as a file output for selecting the printer Y is transmitted to the printer driver Y via the OS (step S3005). Here, the printer driver Y in the present application converts document information into data A at a low compression rate that can be interpreted by the printer X (not Y), and simultaneously converts it into data B at a high compression rate. In a state where data can be identified, A and B are merged and transmitted to the storage means as the holding means (step S3006). The holding unit holds the merged printer data in a file (step S3007).
[0318]
On the other hand, the user issues an explicit print command to the application after a certain period of time has elapsed after opening the document (step S3101) (steps S3102 to S3104). When this print command is issued with the printer X as the output destination, the printer driver X that generates data for the printer X searches the holding means prior to data generation, and the printer data corresponding to the opened document. Is already generated (step S3105).
[0319]
If the file has already been generated, the file is read, and the size Sa of the data A with the low compression rate and the size Sb of the data B with the high compression rate are detected (step S3106). In addition, the printer driver X inquires the transfer rate detection means about the current transfer rate Vi, and simply estimates the times Ta and Tb required for transfer and expansion by the following formula (step S3107).
[0320]
Ta = Sa / Vi + Sa / VAd
Tb = Sb / Vi + Sa / VBd
[0321]
Here, the transfer rate detection means may be, for example, a ping command, or the traffic is monitored at a predetermined sampling interval like the performance monitor attached to Windows NT4 or the like, and the effective transfer rate is determined from the amount of traffic. It may be calculated. Also, the transfer rate detected at one current point may be used, or an average value of data measured at a plurality of past points may be used.
[0322]
Then, Ta and Tb are compared, and only the data corresponding to the method with the shorter (faster) transfer and decompression time is extracted and transmitted to the transmission means (step S3108). Thereafter, the transmission means transmits the printer data to the printer (step S3110), the printer performs printing (step S3111), and the process ends.
[0323]
If step 201 is not executed because the user's explicit print command is earlier than the start of macro operation (step S3105: No), printer data is generated at the default compression rate and transmitted. Step S3109). Thereafter, the transmission means transmits the printer data to the printer (step S3110), the printer performs printing (step S3111), and the process ends.
[0324]
In this way, after the time point when the conversion of the document information into the data becomes possible, means for performing data conversion including the compression in advance of an explicit conversion command from the user, Since it is configured so as to be performed at a plurality of compression ratios, it is possible to broaden the degree of correspondence to the compression ratio designation by the user and to promptly output at the compression ratio designated by the user.
[0325]
In addition, since it has means for detecting the transfer speed between the data conversion device and the output device, and has means for transmitting data of any compression rate to the output device based on the transfer speed. When the transfer path is congested, data can be output quickly by sending data with a higher compression ratio than specified by the user, or conversely, when the transfer path is free, the compression ratio higher than the user specified Data can be transmitted.
[0326]
In addition, since it has means for detecting the decompression speed of the decompressor of the output device and has means for transmitting data of any compression ratio to the output device based on the decompression speed, the decompressor By considering the expansion performance, a quicker output can be obtained.
[0327]
Of course, the present invention is not limited to the configurations and processes of the above-described embodiments, and can be variously modified.
[0328]
【The invention's effect】
As described above, according to the present invention, information related to a document is obtained in advance of a print command from a user, and a compression method to be applied is selected in advance. There is an effect that it is possible to perform an optimal compression process without incurring the problem.
[0329]
Further, according to the present invention, prior to a print command from a user, information on all image information included in a document is obtained, and a compression method to be applied in advance is selected and held for each image data. Thus, the optimum compression process can be applied to each image without causing an increase in processing time.
[0330]
In addition, according to the present invention, as a means for obtaining information about a document prior to a print command, the intermediate data prepared as a standard by the OS is generated, so that the means is general-purpose, simple and high-speed. There is an effect that it can be made.
[0331]
In addition, according to the present invention, data generation including compression is performed by a method selected in advance, and the result is held, so that it is possible to promptly respond to an explicit print command by the user. There is an effect that can be done.
[0332]
Further, according to the present invention, prior to an explicit conversion command from the user, the conversion is performed using a plurality of compression methods, and the data for the output device in the plurality of compressed forms is held. Thus, it is possible to increase the degree of correspondence to the compression method designation by the user and to cope with the print command promptly.
[0333]
According to the invention, there is provided means for detecting a transfer rate between the data conversion device and the output device, and configured to have means for transmitting one compressed data based on the transfer rate. Therefore, depending on the condition of the transfer path, it is possible to output data with a high compression rate and output it quickly, or to send data with a low compression rate, so that it is possible to output with higher image quality.
[0334]
In addition, according to the present invention, the expansion device has means for detecting the expansion speed of the output device, and has means for transmitting data after one compression based on the expansion speed. By considering the expansion speed, it is possible to handle that output can be made faster in total.
[0335]
Further, according to the present invention, there is provided means for performing data conversion including the compression in advance of an explicit conversion command from a user after the time when the conversion of the document information into the data becomes possible, Since the compression is configured to be performed at a plurality of compression ratios, the degree of correspondence to the compression ratio designation by the user can be expanded, and an effect can be obtained that the data can be output quickly at the compression ratio designated by the user.
[0336]
Further, according to the present invention, there is provided means for detecting a transfer rate between the data conversion device and the output device, and based on the transfer rate, data of any compression rate is sent to the output device. Since there is a means to transmit, if the transfer path is congested, it can be output quickly by transmitting data with a higher compression rate than the user specified, or conversely, if the transfer path is free, user specified There is an effect that data with a higher compression rate can be transmitted.
[0337]
Further, according to the present invention, there is provided means for detecting the expansion speed of the expander of the output device, and means for transmitting data of any compression ratio to the output device based on the expansion speed. Therefore, it is possible to obtain a quicker output by considering the expansion performance of the expander.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a system configuration of an information processing apparatus including a data conversion apparatus according to a first embodiment of the present invention.
FIG. 2 is a block diagram showing a system configuration of an information processing system including the data conversion apparatus according to the first embodiment;
FIG. 3 is a functional block diagram showing a hardware configuration of the data conversion apparatus according to the first embodiment;
FIG. 4 is a block diagram illustrating a hardware configuration of the information processing apparatus or the output apparatus of the information processing system according to the first embodiment;
FIG. 5 is a block diagram functionally showing the configuration of the data conversion apparatus according to the first embodiment;
FIG. 6 is a flowchart of a data conversion process performed by the data conversion apparatus according to the first embodiment;
FIG. 7 is a flowchart of another data conversion process procedure of the data conversion apparatus according to the first embodiment;
FIG. 8 is a block diagram functionally showing the configuration of the data conversion apparatus according to the second embodiment.
FIG. 9 is a flowchart of a data conversion process performed by the data conversion apparatus according to the second embodiment;
FIG. 10 is a flowchart of another data conversion process procedure of the data conversion apparatus according to the second embodiment;
FIG. 11 is a block diagram showing a system configuration of an information processing apparatus including a data conversion apparatus according to a third embodiment of the present invention.
FIG. 12 is a block diagram functionally showing the configuration of the data conversion apparatus according to the third embodiment.
FIG. 13 is a flowchart of a data conversion process performed by the data conversion apparatus according to the third embodiment;
FIG. 14 is a flowchart showing another data conversion processing procedure of the data conversion apparatus according to the third embodiment;
FIG. 15 is a block diagram functionally showing the configuration of the data conversion apparatus according to the fourth embodiment.
FIG. 16 is a flowchart of a data conversion process performed by the data conversion apparatus according to the fourth embodiment;
FIG. 17 is a block diagram illustrating a system configuration of an information processing apparatus including a data conversion apparatus according to a fourth embodiment;
FIG. 18 is a block diagram functionally showing the configuration of the data conversion apparatus according to the fifth embodiment.
FIG. 19 is a flowchart of a data conversion process performed by the data conversion apparatus according to the fifth embodiment;
FIG. 20 is a flowchart of a data conversion process performed by the data conversion apparatus according to the sixth embodiment;
FIG. 21 is a flowchart showing another procedure of data conversion processing of the data conversion apparatus according to the sixth embodiment;
FIG. 22 is a flowchart of a data conversion process performed by the data conversion apparatus according to the seventh embodiment;
FIG. 23 is a flowchart showing another procedure of data conversion processing of the data conversion apparatus according to the seventh embodiment;
FIG. 24 is a flowchart of a data conversion process performed by the data conversion apparatus according to the eighth embodiment;
FIG. 25 is a flowchart showing another procedure of data conversion processing of the data conversion apparatus according to the eighth embodiment;
FIG. 26 is a flowchart of a data conversion process performed by the data conversion apparatus according to the ninth embodiment;
FIG. 27 is a flowchart showing another procedure of data conversion processing of the data conversion apparatus according to the ninth embodiment;
FIG. 28 is a flowchart of a data conversion process performed by the data conversion apparatus according to the tenth embodiment;
FIG. 29 is a flowchart showing another procedure of data conversion processing of the data conversion apparatus according to the tenth embodiment;
FIG. 30 is a flowchart of a data conversion process performed by the data conversion apparatus according to the eleventh embodiment;
FIG. 31 is a flowchart showing another procedure of data conversion processing of the data conversion apparatus according to the eleventh embodiment;
FIG. 32 is a flowchart illustrating a print processing procedure of the information processing apparatus according to the related art.
FIG. 33 is a flowchart illustrating another procedure of the printing process of the information processing apparatus according to the related art.
[Explanation of symbols]
101, 1101, 1701 Data conversion device (computer)
102, 1102, 1702 Display device (monitor)
103a, 103b, 103c, 1103, 1703 Output device (printer)
111, 131, 1111, 1131, 1711, 1731 arithmetic processing unit
112, 132, 1112, 1132, 1712, 1732 storage unit
113, 1113, 1713 Transmitter
133, 1133, 1733 receiver
134, 1734 Fault occurrence notification unit
301,401 CPU
302, 402 ROM
303,403 RAM
304, 404 HDD
305,405 HD
306,406 FDD
307,407 FD
308,408 display
309, 409 I / F
310,410 Communication line
311 keyboard
312 mouse
313,413 bus
411 touch panel
412 numeric keypad
501 Process detection unit
502 Conversion instruction unit
503, 803, 1203, 1503, 1803 Preceding conversion unit
504 holder
505 Conversion instruction detection unit
506, 806, 1206, 1506, 1806 output section
807 Conversion unit
1207, 1507 extraction unit
1508 Processing time detector

Claims (31)

原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるデータを取得し、
複数の圧縮方法の中から、前記原稿に含まれるデータに対して、適用すべき圧縮法を選択しておくことを特徴とするデータ変換装置。
When converting manuscript information into compressed data for the output device,
After the time point when the conversion of the document information into the data becomes possible, the data included in the document is acquired in advance of an explicit conversion command from the user,
A data conversion apparatus, wherein a compression method to be applied to data included in the original is selected from a plurality of compression methods.
原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるすべての画像データを取得し、
複数の圧縮方法の中から前記各画像ごとに適用すべき圧縮法を選択して、前記各画像と選択された圧縮方法との対応結果を保持すること特徴とするデータ変換装置。
When converting manuscript information into compressed data for the output device,
After the time point when the conversion of the document information into the data becomes possible, all image data included in the document is acquired in advance of an explicit conversion command from the user,
A data conversion apparatus, wherein a compression method to be applied to each image is selected from a plurality of compression methods, and a correspondence result between each image and the selected compression method is held.
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿情報をOSの中間形式データに変換し、
前記中間形式データから前記原稿に含まれるデータを取得することを特徴とする請求項1または2に記載のデータ変換装置。
After the time point when conversion of the document information into the data becomes possible, the document information is converted into intermediate format data of the OS in advance of an explicit conversion command from the user,
The data conversion apparatus according to claim 1, wherein data included in the document is acquired from the intermediate format data.
前記選択された圧縮方法によって圧縮された出力装置用のデータを保持することを特徴とする請求項1〜3のいずれか一つにデータ変換装置。4. The data converter according to claim 1, wherein the data for the output device compressed by the selected compression method is held. 原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記データ変換をおこない、
前記データ変換を複数の圧縮方法をもちいておこない、該複数の圧縮された形態の出力装置用のデータを保持することを特徴とするデータ変換装置。
When converting manuscript information into compressed data for the output device,
After the time point when conversion of the document information into the data becomes possible, the data conversion is performed in advance of an explicit conversion command from the user,
A data conversion apparatus characterized in that the data conversion is performed using a plurality of compression methods, and the plurality of compressed data for the output device is held.
前記データ変換装置と出力装置の間の転送速度を検知し、
前記転送速度に基づいて、任意の一つの圧縮後のデータを送信することを特徴とする請求項5に記載のデータ変換装置。
Detecting the transfer rate between the data converter and the output device;
6. The data conversion apparatus according to claim 5, wherein any one compressed data is transmitted based on the transfer rate.
前記出力装置の伸張速度を検知し、
前記伸張速度に基づいて、1の圧縮後のデータを送信する手段を有することを特徴とする請求項5に記載のデータ変換装置。
Detecting the extension speed of the output device;
6. The data conversion apparatus according to claim 5, further comprising means for transmitting one compressed data based on the decompression speed.
原稿情報を、圧縮された形態で出力装置用のデータに変換する際に、
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記圧縮を含むデータ変換をおこない、
前記圧縮が複数の圧縮率でおこなわれることを特徴とするデータ変換装置。
When converting the document information into data for the output device in a compressed form,
After the time when conversion of the document information into the data becomes possible, data conversion including the compression is performed in advance of an explicit conversion command from the user,
A data conversion apparatus characterized in that the compression is performed at a plurality of compression rates.
前記出力装置との間の転送速度を検知し、該転送速度に基づいて、前記出力装置に対していずれかの圧縮率のデータを送信することを特徴とする請求項8に記載のデータ変換装置。9. The data conversion apparatus according to claim 8, wherein the data conversion apparatus detects a transfer speed with respect to the output apparatus, and transmits data of any compression ratio to the output apparatus based on the transfer speed. . 前記出力装置の伸張器の伸張速度を検知し、
該伸張速度に基づいて、前記出力装置に対していずれかの圧縮率のデータを送信することを特徴とする請求項8に記載のデータ変換装置。
Detecting the expansion speed of the expander of the output device;
9. The data conversion apparatus according to claim 8, wherein data of any compression rate is transmitted to the output apparatus based on the decompression speed.
原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるデータを取得し、
複数の圧縮方法の中から、前記原稿に含まれるデータに対して、適用すべき圧縮法を選択しておくことを特徴とするデータ変換方法。
When converting manuscript information into compressed data for the output device,
After the time point when the conversion of the document information into the data becomes possible, the data included in the document is acquired in advance of an explicit conversion command from the user,
A data conversion method, wherein a compression method to be applied to data included in the original is selected from a plurality of compression methods.
原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるすべての画像データを取得し、
複数の圧縮方法の中から前記各画像ごとに適用すべき圧縮法を選択して、前記各画像と選択された圧縮方法との対応結果を保持すること特徴とするデータ変換方法。
When converting manuscript information into compressed data for the output device,
After the time point when the conversion of the document information into the data becomes possible, all image data included in the document is acquired in advance of an explicit conversion command from the user,
A data conversion method, wherein a compression method to be applied to each image is selected from a plurality of compression methods, and a correspondence result between each image and the selected compression method is held.
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿情報をOSの中間形式データに変換し、
前記中間形式データから前記原稿に含まれるデータを取得することを特徴とする請求項11または12に記載のデータ変換方法。
After the time point when conversion of the document information into the data becomes possible, the document information is converted into intermediate format data of the OS in advance of an explicit conversion command from the user,
13. The data conversion method according to claim 11, wherein data included in the document is acquired from the intermediate format data.
前記選択された圧縮方法によって圧縮された出力装置用のデータを保持することを特徴とする請求項11〜13のいずれか一つにデータ変換方法。14. The data conversion method according to claim 11, wherein the data for the output device compressed by the selected compression method is held. 原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記データ変換をおこない、
前記データ変換を複数の圧縮方法をもちいておこない、該複数の圧縮された形態の出力装置用のデータを保持することを特徴とするデータ変換方法。
When converting manuscript information into compressed data for the output device,
After the time point when conversion of the document information into the data becomes possible, the data conversion is performed in advance of an explicit conversion command from the user,
A data conversion method, wherein the data conversion is performed using a plurality of compression methods, and the plurality of compressed data for the output device is held.
前記出力装置との間の転送速度を検知し、
前記転送速度に基づいて、任意の一つの圧縮後のデータを送信することを特徴とする請求項15に記載のデータ変換方法。
Detecting the transfer speed with the output device,
16. The data conversion method according to claim 15, wherein any one compressed data is transmitted based on the transfer rate.
前記出力装置の伸張速度を検知し、
前記伸張速度に基づいて、1の圧縮後のデータを送信する手段を有することを特徴とする請求項15に記載のデータ変換方法。
Detecting the extension speed of the output device;
16. The data conversion method according to claim 15, further comprising means for transmitting one compressed data based on the decompression speed.
原稿情報を、圧縮された形態で出力装置用のデータに変換する際に、
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記圧縮を含むデータ変換をおこない、
前記圧縮が複数の圧縮率でおこなわれることを特徴とするデータ変換方法。
When converting the document information into data for the output device in a compressed form,
After the time when conversion of the document information into the data becomes possible, data conversion including the compression is performed in advance of an explicit conversion command from the user,
A data conversion method, wherein the compression is performed at a plurality of compression rates.
前記出力装置との間の転送速度を検知し、該転送速度に基づいて、前記出力装置に対していずれかの圧縮率のデータを送信することを特徴とする請求項18に記載のデータ変換方法。19. The data conversion method according to claim 18, further comprising: detecting a transfer rate with the output device, and transmitting data of any compression ratio to the output device based on the transfer rate. . 前記出力装置の伸張器の伸張速度を検知し、
該伸張速度に基づいて、前記出力装置に対していずれかの圧縮率のデータを送信することを特徴とする請求項18に記載のデータ変換方法。
Detecting the expansion speed of the expander of the output device;
19. The data conversion method according to claim 18, wherein data of any compression ratio is transmitted to the output device based on the decompression speed.
原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるデータを取得し、
複数の圧縮方法の中から、前記原稿に含まれるデータに対して、適用すべき圧縮法を選択しておくことを特徴とするデータ変換プログラム。
When converting manuscript information into compressed data for the output device,
After the time point when the conversion of the document information into the data becomes possible, the data included in the document is acquired in advance of an explicit conversion command from the user,
A data conversion program for selecting a compression method to be applied to data contained in the original from a plurality of compression methods.
原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿に含まれるすべての画像データを取得し、
複数の圧縮方法の中から前記各画像ごとに適用すべき圧縮法を選択して、前記各画像と選択された圧縮方法との対応結果を保持すること特徴とするデータ変換プログラム。
When converting manuscript information into compressed data for the output device,
After the time point when the conversion of the document information into the data becomes possible, all image data included in the document is acquired in advance of an explicit conversion command from the user,
A data conversion program for selecting a compression method to be applied to each image from a plurality of compression methods and holding a correspondence result between each image and the selected compression method.
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記原稿情報をOSの中間形式データに変換し、
前記中間形式データから前記原稿に含まれるデータを取得することを特徴とする請求項21または22に記載のデータ変換プログラム。
After the time point when conversion of the document information into the data becomes possible, the document information is converted into intermediate format data of the OS in advance of an explicit conversion command from the user,
The data conversion program according to claim 21 or 22, wherein data included in the document is acquired from the intermediate format data.
前記選択された圧縮方法によって圧縮された出力装置用のデータを保持することを特徴とする請求項21〜23のいずれか一つにデータ変換プログラム。The data conversion program according to any one of claims 21 to 23, wherein data for an output device compressed by the selected compression method is held. 原稿情報を、圧縮された形態の出力装置用のデータに変換する際に、
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記データ変換をおこない、
前記データ変換を複数の圧縮方法をもちいておこない、該複数の圧縮された形態の出力装置用のデータを保持することを特徴とするデータ変換プログラム。
When converting manuscript information into compressed data for the output device,
After the time point when conversion of the document information into the data becomes possible, the data conversion is performed in advance of an explicit conversion command from the user,
A data conversion program which performs the data conversion by using a plurality of compression methods and holds data for the output device in the plurality of compressed forms.
前記出力装置との間の転送速度を検知し、
前記転送速度に基づいて、任意の一つの圧縮後のデータを送信することを特徴とする請求項25に記載のデータ変換プログラム。
Detecting the transfer speed with the output device,
26. The data conversion program according to claim 25, wherein any one compressed data is transmitted based on the transfer rate.
前記出力装置の伸張速度を検知し、
前記伸張速度に基づいて、1の圧縮後のデータを送信する手段を有することを特徴とする請求項25に記載のデータ変換プログラム。
Detecting the extension speed of the output device;
26. The data conversion program according to claim 25, further comprising means for transmitting one compressed data based on the decompression speed.
原稿情報を、圧縮された形態で出力装置用のデータに変換する際に、
前記原稿情報の前記データへの変換が可能になった時点の後、ユーザからの明示の変換命令に先行して前記圧縮を含むデータ変換をおこない、
前記圧縮が複数の圧縮率でおこなわれることを特徴とするデータ変換プログラム。
When converting the document information into data for the output device in a compressed form,
After the time when conversion of the document information into the data becomes possible, data conversion including the compression is performed in advance of an explicit conversion command from the user,
A data conversion program characterized in that the compression is performed at a plurality of compression rates.
前記出力装置との間の転送速度を検知し、該転送速度に基づいて、前記出力装置に対していずれかの圧縮率のデータを送信することを特徴とする請求項28に記載のデータ変換プログラム。29. The data conversion program according to claim 28, wherein the data conversion program according to claim 28 detects a transfer rate with the output device and transmits data of any compression ratio to the output device based on the transfer rate. . 前記出力装置の伸張器の伸張速度を検知し、
該伸張速度に基づいて、前記出力装置に対していずれかの圧縮率のデータを送信することを特徴とする請求項28に記載のデータ変換プログラム。
Detecting the expansion speed of the expander of the output device;
29. The data conversion program according to claim 28, wherein data of any compression ratio is transmitted to the output device based on the decompression speed.
前記請求項21〜30のいずれか一つに記載されたプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。A computer-readable recording medium having recorded thereon the program according to any one of claims 21 to 30.
JP2001098475A 2001-03-30 2001-03-30 Data conversion device, data conversion method, data conversion program, and computer-readable recording medium on which data conversion program is recorded Expired - Fee Related JP4516233B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001098475A JP4516233B2 (en) 2001-03-30 2001-03-30 Data conversion device, data conversion method, data conversion program, and computer-readable recording medium on which data conversion program is recorded

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001098475A JP4516233B2 (en) 2001-03-30 2001-03-30 Data conversion device, data conversion method, data conversion program, and computer-readable recording medium on which data conversion program is recorded

Publications (2)

Publication Number Publication Date
JP2002297331A JP2002297331A (en) 2002-10-11
JP4516233B2 true JP4516233B2 (en) 2010-08-04

Family

ID=18952123

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001098475A Expired - Fee Related JP4516233B2 (en) 2001-03-30 2001-03-30 Data conversion device, data conversion method, data conversion program, and computer-readable recording medium on which data conversion program is recorded

Country Status (1)

Country Link
JP (1) JP4516233B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4903388B2 (en) * 2004-03-19 2012-03-28 セイコーエプソン株式会社 Printer driver, printing control apparatus, printing system, and printing control method
JP4609223B2 (en) * 2005-07-25 2011-01-12 富士ゼロックス株式会社 Image data processing apparatus, image data processing method, and image data processing program
JP6015478B2 (en) * 2013-02-08 2016-10-26 コニカミノルタ株式会社 Control device, control method, and printer driver program
JP6972934B2 (en) * 2017-11-02 2021-11-24 コニカミノルタ株式会社 Data receiver, control method of data receiver, program, data transmission / reception system and data transmission device
JP7310232B2 (en) * 2019-04-02 2023-07-19 株式会社リコー Image processing device, image processing method, and program

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000079729A (en) * 1998-08-28 2000-03-21 Hewlett Packard Co <Hp> Method for processing image
JP2001005620A (en) * 1999-06-22 2001-01-12 Ricoh Co Ltd Data converter, information processor, information processing system, data conversion method, and computer- readable recording medium recording program for allowing computer to execute the method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000079729A (en) * 1998-08-28 2000-03-21 Hewlett Packard Co <Hp> Method for processing image
JP2001005620A (en) * 1999-06-22 2001-01-12 Ricoh Co Ltd Data converter, information processor, information processing system, data conversion method, and computer- readable recording medium recording program for allowing computer to execute the method

Also Published As

Publication number Publication date
JP2002297331A (en) 2002-10-11

Similar Documents

Publication Publication Date Title
CN103186355B (en) Print control unit and print control program
JP2002278735A (en) Information processor, its control method and printing system
CN101615107B (en) Information processing apparatus, and control method of image processing system
DE102013201816B4 (en) Information processing apparatus, control method and program
US20100007905A1 (en) Printer selection apparatus, and computer readable recording medium stored with printer selection program
JP4125044B2 (en) Information processing apparatus, information processing apparatus control method, program, and storage medium
JP5103339B2 (en) Dynamic printer driver user interface generation
JP2012038099A (en) Information processor, output method and program
JP4590080B2 (en) Printer system and control method thereof
US20080074686A1 (en) Color print control method and apparatus
JP3832423B2 (en) Image processing apparatus, image forming apparatus, and program
JP4516233B2 (en) Data conversion device, data conversion method, data conversion program, and computer-readable recording medium on which data conversion program is recorded
JP4144392B2 (en) Image processing apparatus, image forming system, image forming method, and program
CN101120307B (en) Information processing apparatus for processing print data, method thereof
KR20110051056A (en) Print controling apparatus and method for controling print
KR101496438B1 (en) Print controling apparatus, image forming apparatus and method for controling print
JP6424678B2 (en) Image processing system, image formation output control apparatus, information processing method, information processing program
JPH08230285A (en) Information processing system, printer and printing method of the system
US7428066B2 (en) Printing apparatus and method for verifying a printer controller
US20060285146A1 (en) Apparatus and method to select and print emulation by pages
JP4110945B2 (en) Image processing apparatus, image forming apparatus, and program
JP2007323207A (en) Business form processor and business form processing method
JP3854791B2 (en) Image processing apparatus, server apparatus, image processing method, and storage medium
JP5871521B2 (en) Print data processing method, print data processing apparatus and program
JP3924092B2 (en) Data conversion device, information processing device, information processing system, data conversion method, and computer-readable recording medium storing a program for causing computer to execute the method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080324

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090730

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100423

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100511

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100514

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130521

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140521

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees