JPH11327821A - 印刷システム - Google Patents

印刷システム

Info

Publication number
JPH11327821A
JPH11327821A JP10134976A JP13497698A JPH11327821A JP H11327821 A JPH11327821 A JP H11327821A JP 10134976 A JP10134976 A JP 10134976A JP 13497698 A JP13497698 A JP 13497698A JP H11327821 A JPH11327821 A JP H11327821A
Authority
JP
Japan
Prior art keywords
capcal
file
drawing data
output
job
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.)
Granted
Application number
JP10134976A
Other languages
English (en)
Other versions
JP3823534B2 (ja
Inventor
Masaki Tsutsumi
勝紀 筒見
Takayasu Watanabe
隆保 渡辺
Yukihiro Shinto
幸博 新堂
Eiji Hatano
英二 波多野
Tadayoshi Amari
忠義 天利
Koji Tamura
恒治 田村
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP13497698A priority Critical patent/JP3823534B2/ja
Publication of JPH11327821A publication Critical patent/JPH11327821A/ja
Application granted granted Critical
Publication of JP3823534B2 publication Critical patent/JP3823534B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)

Abstract

(57)【要約】 【課題】 印刷データのスプール処理を効率的に行う。 【解決手段】 CAPCALスプールプリントキュー3
8a、38b、・・・にCAPCALジョブ記述ファイ
ル34及びEMFファイル35の内容を特定する情報を
書き込んだ出力制御ファイル39a、39b、・・・を
生成し、描画データをGDI7に送る際には、CAPC
ALスプールプリントキュー38a、38b、・・・か
ら描画データを取り出すのではなく、出力制御ファイル
39a、39b、・・・で指定される情報に従って、C
APCALスプールドキュメントキュー33から描画デ
ータを取り出す。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は印刷システムに関
し、特に、クライアントサーバ印刷システムに適用して
好適なものである。
【0002】
【従来の技術】近年、オフィス業務や基幹業務向けコン
ピュータのオペレーティングシステムとして、マイクロ
ソフト社のWindowsの普及が目覚ましい。
【0003】ところが、オペレーティングシステムとし
て、Windowsを用いた場合、Windowsはパ
ーソナル指向のオペレーティングシステムであることか
ら、基幹業務における大量印刷には不向きな点がある。
例えば、Windowsでは、1回の印刷アクション
で、複数のプリンタに同時に印刷することができない。
このため、資料の配布等を行うとき、繰り返し印刷起動
をかけ、印刷物を手作業で仕分けし、さらに郵便等で配
布する手間がかかる。
【0004】また、昨今のメイルの普及により、ワード
プロセッサなどにより作成された少量かつ固定的ドキュ
メントは、メイルで代替えすることができるが、アプリ
ケーション稼働による集計データ等の管理帳票の印刷や
大量のドキュメントの印刷などについては、メイルでは
代替不可能である。さらに、大量の印刷を行う時、複数
のプリンタに分散して印刷することができず、開始頁と
終了頁と出力先プリンタとを各プリンタごとに繰り返し
指定する必要がある。
【0005】これらの問題を解決するため、従来では、
基幹業務帳票印刷用の専用のAPI(アプリケーション
・インタフェース関数)を用意し、そのAPIを用い
て、Windowsなどのオペレーティングシステムの
有する印刷制御の不備を補う方法があった。
【0006】図12は、従来の分散印刷方法を説明する
ブロック図である。図12において、アプリケーション
201は、専用の印刷制御関数として、API203を
呼び出す。ここで、API203には、プリンタ名称、
開始頁及び終了頁の組を複数受け取ることができるイン
ターフェースが設られ、API203にこのインターフ
ェースを設けることにより、分散印刷を可能としてい
る。API203が、パラメータ202として、プリン
タ名称、開始頁及び終了頁の組を複数受け取るととも
に、描画データをアプリケーション201から受け取る
と、受け取ったパラメータ202と描画データとを、オ
ペレーティングシステム204及びファイルドライバ2
05を経由してスプールファイル206に格納する。
【0007】一方、スプールライタ207は、ある決め
られたディレクトリ(スプールディレクトリ)をポーリ
ングしており、完成したスプールファイル206を検知
すると、スプールファイル206の読み出しを開始し、
スプールファイル206内に格納されたパラメータ20
2を取り出す。また、各ページの描画データをスプール
ファイル206から順次読み出すとともに、GDI20
8を呼び出し、パラメータ202の情報に従って、指定
の頁の印刷を指定のプリンタ211a、211bに行わ
せる。なお、GDI208は、オペレーティングシステ
ム204と密接に結びついたグラフィカルデバイス描画
用の関数群である。
【0008】例えば、スプールファイル206に格納さ
れる100頁分の印刷データを2台のプリンタ211
a、211bに均等に分配して印刷するために、プリン
タ211aのプリンタ名称、開始頁=1、終了頁=5
0、プリンタ211bのプリンタ名称、開始頁=51、
終了頁=100を、パラメータ202として与えたもの
とする。この場合、GDI208では、プリンタ単位の
描画を取り扱うため、スプールライタ207は、まず、
プリンタ211aを指定して、GDI208を呼び出
す。すると、プリンタ211a専用のスプールキューに
1頁から50頁までの印刷データが出力され、スプール
ファイル209aが生成される。次に、スプールライタ
207は、プリンタ211bを指定して、GDI208
を呼び出す。すると、プリンタ211b専用のスプール
キューに51頁から100頁までの印刷データが出力さ
れ、スプールファイル209bが生成される。
【0009】スプールファイル209a、209bが生
成されると、各プリンタ211a、211b専用のプリ
ンタドライバ210a、210bによって、プリンタ2
11a、211bの物理的コマンドコードに変換された
後、各々のプリンタ211a、211bに出力され印刷
される。
【0010】
【発明が解決しようとする課題】しかしながら、従来の
API203を提供する手法では、API203を呼び
出すことが可能な専用のアプリケーション221だけに
しか、適用することができなかった。このため、API
203を呼び出す機能がないワードプロセッサなどの汎
用パッケージアプリケーションには適用することができ
ないという問題があった。また、提供されたAPI20
3を用いて印刷用のアプリケーション201を構築しな
ければならないという問題もあった。
【0011】また、1つのアプリケーション201から
印刷要求されたドキュメント(文書)を複数のプリンタ
211a、211bに同時に分散して印刷を行う場合、
描画データがプリンタ211a、211bごとに分別さ
れた待ち行列(以下、プリンタキューと言う)に予め振
り分けられ、描画データをプリンタキューにページ単位
で格納し直すことが行われる。このため、各プリンタ2
11a、211bに対する印刷するページの配分をプリ
ンタキューに格納した後に変更するには、描画データを
スプールファイル206から読み出し、その描画データ
をプリンタキューごとに再度格納し直す必要があり、印
刷するページの配分の変更が非常に困難になるという問
題があった。
【0012】また、アプリケーション201が出力した
描画データがスプールファイル206に格納された後、
スプールファイル206に格納されている描画データ
が、スプールファイル206とは別個のスプールファイ
ル209a、209bに再格納されるため、スプール処
理に時間がかかるという問題もあった。
【0013】また、従来のAPI203を提供する手法
では、1つのアプリケーション201が出力したドキュ
メント単位に印刷が行われるため、複数のアプリケーシ
ョンが出力するドキュメントにより、1つのドキュメン
ト文書(以下、仮想ドキュメントと言う)を構成する場
合、アプリケーション201を複数起動して開始頁、終
了頁を指定して印刷動作を行わなければならなず、操作
が煩雑になるという問題もあった。
【0014】そこで、本発明の第1の目的は、印刷デー
タのスプール処理を効率的に行うことが可能な印刷シス
テムを提供することである。また、本発明の第2の目的
は、複数のアプリケーションが出力したドキュメントを
統一して扱うことが可能な印刷システムを提供すること
である。
【0015】
【課題を解決するための手段】上述した課題を解決する
ために、本発明によれば、描画データを格納する描画デ
ータ格納手段と、前記描画データの出力要求を、前記描
画データの出力先ごとに格納する出力要求格納手段と、
前記描画データの出力要求に基づいて、前記描画データ
を前記描画データ格納手段から前記出力先に転送する描
画データ転送手段とを備えている。
【0016】このことにより、描画データ格納手段に格
納されている描画データを、描画データの出力先に対応
させて再度格納し直すことなく、出力先に転送する描画
データを描画データ格納手段から直接読み出して、出力
先に転送することが可能となり、描画データを出力先に
転送する際に、描画データをその出力先ごとに再格納す
る処理を省略することが可能となることから、スプール
処理を高速化することが可能となる。
【0017】また、本発明の一態様によれば、前記出力
要求は、前記描画データを識別する識別情報及び前記描
画データの印刷頁を指定する頁情報を含んでいる。この
ことにより、出力する描画データの印刷頁を変更する場
合には、出力要求格納手段に格納されている頁情報を変
更するだけでよく、印刷頁の変更に対応した描画データ
の再格納が不要になることから、スプール処理を効率的
に行うことが可能となる。
【0018】また、本発明の一態様によれば、複数のア
プリケーションにより作成された描画データを格納する
描画データ格納手段と、前記複数のアプリケーションに
より作成された描画データに基づいて、仮想的なドキュ
メントを生成する仮想ドキュメント生成手段と、前記仮
想的なドキュメントの出力要求を、前記仮想的なドキュ
メントの出力先ごとに格納する出力要求格納手段と、前
記仮想的なドキュメントの出力要求に基づいて、前記仮
想的なドキュメントに含まれる描画データを、前記描画
データ格納手段から前記出力先に転送する描画データ転
送手段とを備えている。
【0019】このことにより、複数のアプリケーション
により作成された描画データを統合し、この統合された
描画データを一体的に扱うことが可能となり、各アプリ
ケーションごとの印刷指定を何度も行うことなく、統合
された仮想的なドキュメントについての印刷指定を1回
行うだけで、複数のアプリケーションにより作成された
描画データの印刷を行うことが可能となることから、複
数のアプリケーションを扱う印刷処理を効率的に行うこ
とが可能となる。
【0020】また、仮想的なドキュメントの描画データ
を、その描画データの出力先に対応させて構成すること
なく、仮想的なドキュメントの出力要求に基づいて、仮
想的なドキュメントに含まれる描画データを描画データ
格納手段から順次に読み出して、出力先に転送すること
が可能となり、仮想的なドキュメントの描画データを出
力先に転送する際に、仮想的なドキュメントごとの描画
データを格納しておく処理を省略することが可能となる
ことから、複数のアプリケーションを扱うスプール処理
を高速化することが可能となる。
【0021】
【発明の実施の形態】以下、本発明の一実施例に係わる
印刷システムについて図面を参照しながら説明する。な
お、以下の実施例では、Windowsによるオペレー
ティングシステム下における出力装置運用支援(以下C
APCALと称する)制御方式について説明する。
【0022】図1は、本発明の一実施例に係わる印刷シ
ステムの構成を示すブロック図である。図1において、
クライアント100とサーバ103とが通信ネットワー
ク101、102を介して接続され、サーバ103はプ
リンタ9と接続されている。ここで、通信ネットワーク
102は、例えば、LAN(ローカルエリアネットワー
ク)、通信ネットワーク101は、例えば、LAN、W
AN(ワイドエリアネットワーク)、インターネットで
ある。クライアント100には、アプリケーション1、
GDI2、Windows印刷制御部3及びクライアン
ト制御部4が設けられ、サーバ103には、Windo
ws印刷制御部5、サーバ制御部6、GDI7及びプリ
ンタ出力制御部8が設けられている。ここで、GDI
2、7は、Windowsのプログラムが画面表示やプ
リンタ9への印刷を行う際に利用するインターフェース
(API)である。
【0023】Windowsによる印刷処理を行う場
合、Windows印刷制御部3、5による処理が行わ
れ、クライアント100側で生成された印刷データは通
信回線102を介してサーバ側へ送れられる。一方、C
APCAL制御を行う場合、クライアント制御部4及び
サーバ制御部6による処理が行われ、クライアント10
0側で生成された印刷データは通信回線101を介して
サーバ側へ送られる。なお、CAPCAL制御を選択す
る場合、CAPCAL制御用に設けられたCAPCAL
ドライバをアプリケーション1で指定してGDI2を呼
び出す。
【0024】図2は、図1のクライアント制御部4の構
成を説明するブロック図である。図2において、クライ
アント制御部4には、CAPCALドライバ14、CA
PCALドライバプロパティ制御スレッド15、出力制
御情報ファイル17、ジョブ記述ファイル18、EMF
ファイル19、24、CAPCALクライアント定義フ
ァイル20、CAPCALプリントプロセッサ21、C
APCALジョブ記述ファイル23、CAPCAL転送
先定義ファイル25、CAPCALクライアントメイン
プロセス26及びCAPCALジョブ転送スレッド27
が設けられている。また、Windows印刷制御部3
には、スプーラプロセス11、ローカルプリントプロバ
イダ12及びプリントプロセッサ13が設けられてい
る。ここで、クライアント制御部4は、Windows
によるオペレーティングシステム上で稼働するアプリケ
ーション1が描画した印刷データをCAPCALの処理
環境に取り込み、サーバ103へ転送するまでの処理を
制御する。
【0025】アプリケーション1が描画した印刷データ
をCAPCAL環境で処理する場合、アプリケーション
1は、仮想ドライバとして設けられたCAPCALドラ
イバ14を指定し、GDI2を呼び出す。なお、CAP
CALドライバ14は、実際のプリンタに対応するドラ
イバとは別個に設けられた仮想的なものであり、Win
dowsのプリンタドライバとは別個独立のものであ
る。
【0026】GDI2が呼び出されると、CAPCAL
ドライバ14から描画機能を取得し、アプリケーション
1の要求した描画プリミティブをCAPCALドライバ
14が有する描画機能に変換して、システムスプールキ
ュー16にスプールする。このシステムスプールキュー
16には、印刷要求したユーザ名や、アプリケーション
名などを格納したジョブ記述ファイル18と、描画情報
をフォーマット化して格納したEMFファイル19が作
成される。EMFとは、Enhanced Meta−
Fileの略で、Windowsにおける描画データの
論理的な格納形式である。なお、ジョブ記述ファイル1
8及びEMFファイル19の形式は、Windows標
準の形式と完全に同一である。このため、ジョブ記述フ
ァイル18及びEMFファイル19は、Windows
に備わっているデフォルト機能により生成させることが
できる。
【0027】また、CAPCALドライバ14は、CA
PCAL特有の出力制御情報を出力制御情報ファイル1
7として、システムスプールキュー16に書き込む。な
お、この出力制御情報は、CAPCALドライバ14側
からダイアログ画面を開き、配布や分散などの印刷条件
をオペレータに指定させることにより、設定することが
できる。
【0028】アプリケーション1の全描画データのスプ
ールが完了すると、CAPCALプリントプロセッサ2
1が呼び出される。このCAPCALプリントプロセッ
サ21の呼び出しは、アプリケーション1でCAPCA
Lドライバ14を指定することにより行われる。なお、
アプリケーション1で他のドライバが指定された場合
は、Windowsに備わっているプリントプロセッサ
13が呼び出され、Windowsによる印刷処理を行
うことができる。
【0029】CAPCALプリントプロセッサ21は、
システムスプールキュー16からジョブ記述ファイル1
8と出力制御情報ファイル17の内容を取り込み、CA
PCALスプールキュー22にCAPCALジョブ記述
ファイル23として書き込む。ここで、CAPCALク
ライアント定義ファイル20には、出力制御情報のデフ
ォルト値が定義されており、出力制御情報ファイル17
に出力制御情報が格納されていない場合は、CAPCA
Lクライアント定義ファイル20から出力制御情報を取
り込む。
【0030】また、CAPCALプリントプロセッサ2
1は、システムスプールキュー16のEMFファイル1
9を、そのままCAPCALスプールキュー22のEM
Fファイル24に書き込む。CAPCALジョブ記述フ
ァイル23及びEMFファイル24が、CAPCALス
プールキュー22へ書き込まれると、CAPCALプリ
ントプロセッサ21は、このことをCAPCALジョブ
転送スレッド27に通知する。
【0031】CAPCALジョブ転送スレッド27は、
予め定義された転送手段に基づいて、CAPCALジョ
ブ記述ファイル23及びEMFファイル24の内容をサ
ーバ103に転送する。なお、転送手段及び転送先のサ
ーバ名は、CAPCAL転送先定義ファイル25に格納
されており、CAPCALジョブ転送スレッド27は、
CAPCAL転送先定義ファイル25の内容に従って、
転送手段及び転送先のサーバ103を決定する。なお、
転送手段として、ファイル転送プロトコル(ftp)を
用いた通信ネットワーク28やメイルの添付ファイルを
用いた通信ネットワーク29が使用可能である。また、
これら以外の転送手段を用いるようにしてもよい。
【0032】このように、仮想ドライバとしてのCAP
CALドライバ14をクライアント制御部4に設け、こ
のCAPCALドライバ14により出力情報制御ファイ
ル17をシステムスプールキュー16にスプールさせ
る。このCAPCALドライバ14は、仮想的に設けら
れたものであり、特定のプリンタ機種やメーカに依存す
ることがないため、Windowsに予め備わっている
印刷機能では実現不可能な機能をCAPCALドライバ
14上で独自に構築することが可能となり、ドキュメン
ト配布処理、分散印刷処理、配布先自動検出処理、プリ
ンタエラー及び印刷完了の通知処理等を容易に実現する
ことが可能となる。
【0033】また、Windows上のGDI2を利用
して、ジョブ記述ファイル18及びEMFファイル19
をシステムスプールキュー16にスプールさせることに
より、ジョブ記述ファイル18及びEMFファイル19
の形式を、Windows標準の形式と一致させること
が可能となり、Windowsのアプリケーションイン
タフェースを一切変更せずに、汎用パッケージソフトを
含むWindows上で動作する全てのアプリケーショ
ンについて、ドキュメント配布処理、分散印刷処理、配
布先自動検出処理、プリンタエラー及び印刷完了の通知
処理等を容易に実現することが可能となる。
【0034】図3は、図1のサーバ制御部6の構成を説
明するブロック図である。図3において、サーバ制御部
6には、メイル用のCAPCAL受信スレッド30、f
tp用のCAPCAL受信スレッド31、CAPCAL
サーバメインプロセス32、CAPCALジョブ記述フ
ァイル34、EMFファイル35、ジョブ制御ファイル
36、配布分散処理スレッド37、出力制御ファイル3
9、CAPCALサーバ側定義ファイル40、プリンタ
別出力スレッド41、42及びCAPCALジョブ転送
スレッド43が設けられている。
【0035】CAPCALサーバメインプロセス32に
よりCAPCAL受信スレッド30、31が起動される
と、CAPCAL受信スレッド30、31は、CAPC
ALジョブ転送スレッド27から送信されたCAPCA
Lジョブ記述ファイル23及びEMFファイル24を受
信する。そして、受信したCAPCALジョブ記述ファ
イル23及びEMFファイル24の内容を、CAPCA
Lスプールドキュメントキュー33のCAPCALジョ
ブ記述ファイル34及びEMFファイル35に書き込
む。ここで、CAPCAL受信スレッド30、31は、
ファイル名(ジョブID)が重複しないように管理を行
う。CAPCALスプールドキュメントキュー33への
書き込みが完了したら、CAPCALサーバメインプロ
セス32は配布分散処理スレッド37を起動し、CAP
CALスプールドキュメントキュー33への書き込み完
了を、配布分散処理スレッド37に通知する。
【0036】配布分散処理スレッド37は、CAPCA
Lジョブ記述ファイル34から出力制御情報を取り込
む。また、CAPCALサーバ側定義ファイル40の内
容を予め読み込んでおく。そして、配布分散処理スレッ
ド37は、出力制御情報及びサーバ側定義ファイル40
の内容から、出力プリンタ及び出力する開始頁、終了頁
を検出し、ジョブ制御ファイル36を生成する。ジョブ
制御ファイル36には、プリンタ名及びCAPCALプ
リントジョブIDが格納される。ここで、CAPCAL
プリントジョブIDは、CAPCALスプールプリント
キュー38ごとにユニークに与えられるIDである。ま
た、配布分散処理スレッド37は、出力プリンタ及び出
力する開始頁、終了頁を検出すると、出力プリンタ9ご
とに設けられるCAPCALスプールプリントキュー3
8に印刷要求を投入する。
【0037】配布分散処理スレッド37は、CAPCA
Lスプールプリントキュー38に印刷要求を投入する
と、出力制御ファイル39を生成する。この出力制御フ
ァイル39には、CAPCALジョブID、開始頁、終
了頁及びWinジョブIDが格納される。ここで、CA
PCALジョブIDは、CAPCALシステムが独自に
ユニークに作成する管理上のIDであり、このCAPC
ALジョブIDを指定することにより、CAPCALス
プールドキュメントキュー33に格納されているCAP
CALジョブ記述ファイル34の内容及びEMFファイ
ル35の内容を特定することができる。
【0038】CAPCALサーバ側定義ファイル40に
は、配布先名とプリンタ名(またはサーバ名)との対応
関係が格納されており、配布先が論理名で特定されてい
る場合においても、CAPCALサーバ側定義ファイル
40を参照することにより、出力プリンタを決定するこ
とができる。CAPCALスプールプリントキュー38
への印刷要求の投入が完了したら、印刷要求があったプ
リンタ9を専門に受け持つプリンタ別出力スレッド41
通知する。
【0039】プリンタ別出力スレッド41は、CAPC
ALスプールプリントキュー38の出力制御ファイル3
9に格納されているCAPCALジョブIDを参照する
ことにより、CAPCALスプールドキュメントキュー
33に格納されているCAPCALジョブ記述ファイル
34及びEMFファイル35を特定する。そして、特定
されたCAPCALジョブ記述ファイル34及びEMF
ファイル35の内容のうち、出力制御ファイル39で指
定される開始頁から終了頁までの部分を、CAPCAL
スプールドキュメントキュー33から取り出し、GDI
7を呼び出すことにより、Windows印刷制御5に
描画データが渡るようにする。
【0040】なお、出力制御情報及びCAPCALサー
バ側定義ファイル40の内容により、出力プリンタとし
て、サーバ103が管理しているプリンタ9以外のプリ
ンタが指定されている場合、配布分散処理スレッド37
は、CAPCALジョブ転送スレッド43から通信ネッ
トワーク44を介し、指定されているプリンタを管理し
ているサーバに印刷要求を送る。
【0041】このように、CAPCALスプールプリン
トキュー38に、CAPCALスプールドキュメントキ
ュー33に格納されているCAPCALジョブ記述ファ
イル34及びEMFファイル35の内容を書き込むので
はなく、CAPCALジョブ記述ファイル34及びEM
Fファイル35の内容を特定する情報を書き込む。そし
て、プリンタ別出力スレッド41、42が描画データを
GDI7に送る際には、CAPCALスプールプリント
キュー38から描画データを取り出すのではなく、出力
制御ファイル39で指定される情報に従って、CAPC
ALスプールドキュメントキュー33から描画データを
取り出すようにする。
【0042】このことにより、CAPCALスプールプ
リントキュー38に描画データを書き込む必要がなくな
り、スプール処理を高速化することが可能となる。ま
た、印刷頁を変更する場合は、出力制御ファイル39の
印刷頁を書き換えるだけでよく、CAPCALスプール
プリントキュー38への描画データの再書き込みを行う
必要がなくなることから、印刷頁の変更など容易に行う
ことが可能となる。
【0043】図4は、図1のプリンタ出力制御部8の構
成を説明するブロック図である。図4において、プリン
タ出力制御部8には、セントロポートモニタ48及びプ
リンタ出力管理部50が設けられ、サーバ制御部6に
は、CAPCALサーバメインプロセス32、EMFフ
ァイル35及びプリンタ別出力スレッド41が設けら
れ、Windows印刷制御部5には、Rawスプール
ファイル46、プリントプロセッサ47及びスプーラプ
ロセスメイン49が設けられ、クライアント100に
は、CAPCALクライアントメインプロセス26が設
けられている。
【0044】プリンタ別出力スレッド41は、CAPC
ALスプールドキュメントキュー35からEMFファイ
ル35を取り出し、GDI7を呼び出すことにより、W
indows印刷制御部5に描画データを送る。GDI
7は、印刷指定されたプリンタ9用のプリンタドライバ
45と交信し、印刷指定されたプリンタ9専用のコマン
ド(ESCシーケンス)にEMFファイル35を変換す
る。変換して得られたESCシーケンスは、Windo
wsのシステムスプールキューに格納される。これをR
awスプールファイル46と言う。Rawスプールファ
イル46は、純粋なプリンタコマンド(ESCシーケン
ス)だけで構成される。Rawスプールファイル46
は、Windowsのスプーラプロセスメイン49によ
りプリントプロセッサ47で読み込まれ、1頁分の描画
データ単位で、セントロポートモニタ48に送られる。
【0045】プリンタ9とサーバ100とのインタフェ
ースがLANの場合、LANポートモニタに送られ、そ
の他のインタフェースの場合、そのインタフェース用の
ポートモニタが送られる。なお、ここまでの処理は、W
indows印刷制御部5によるデータ処理と同一であ
る。
【0046】セントロポートモニタ48は、スプーラプ
ロセスメイン49経由で受け取ったプリンタ9のコマン
ドデータを、セントロポートに出力する。ここで、プリ
ンタ9にエラーが発生し、コマンドデータを出力できな
かった場合、セントロポートモニタ48は、プリンタ出
力管理部50に、プリンタ名称、エラーコード及び元の
ドキュメントを識別するジョブIDを通知する。また、
他のポートモニタ51も、他のポートモニタ51に接続
されているプリンタにエラーが発生した場合、プリンタ
出力管理部50に、プリンタ名称、エラーコード及び元
のドキュメントを識別するジョブIDを通知する。ここ
で、ジョブIDは、Windows印刷制御の仕組みに
存在するプリントジョブを特定するIDであり、ジョブ
IDをプリンタ出力管理部50に通知することにより、
プリンタ出力管理部50は、元のドキュメント名称、印
刷要求したクライアントホスト名称及びユーザ名称を取
得することができる。
【0047】プリンタ出力管理部50は、プリンタ名
称、エラーコード及びジョブIDをセントロポートモニ
タ48から受け取ると、CAPCALサーバメインプロ
セス32に、これらの情報を通知する。
【0048】CAPCALサーバメインプロセス32
は、取得したジョブIDから印刷要求を発行したクライ
アントホスト名を検出し、そのクライアントホスト上で
稼働するCAPCALクライアントメインプロセス26
にドキュメント名称、ユーザ名及びエラーコードを通知
する。また、画面呼び出し52を行うことにより、これ
らの情報を表示する。
【0049】CAPCALクライアントメインプロセス
26は、CAPCALサーバメインプロセス32からド
キュメント名称、ユーザ名及びエラーコードを受信する
と、画面呼び出し53を行うことにより、ユーザ名、印
刷中のドキュメント名称、エラーメッセージを表示す
る。
【0050】また、セントロポートモニタ48は、1つ
のジョブの出力が完全に終了したら、プリンタ出力管理
部50にプリンタ名称及びジョブIDを通知する。プリ
ンタ出力管理部50は、セントロポートモニタ48から
プリンタ名称及びジョブIDを受け取ると、CAPCA
Lサーバメインプロセス32に、これらの情報を通知す
る。
【0051】CAPCALサーバメインプロセス32
は、取得したジョブIDから印刷要求を発行したクライ
アントホスト名を検出し、そのクライアントホスト上で
稼働するCAPCALクライアントメインプロセス26
に、ドキュメント名称及びユーザ名を通知する。また、
画面呼び出し52を行うことにより、これらの情報を表
示する。
【0052】CAPCALクライアントメインプロセス
26は、CAPCALサーバメインプロセス32からド
キュメント名称及びユーザ名を受信すると、画面呼び出
し53を行うことにより、ドキュメントの印刷が完了し
たことを示すメッセージを表示する。
【0053】このように、セントロポートモニタ48
は、元のドキュメントを識別するジョブIDをプリンタ
出力管理部50に通知することにより、プリンタ出力管
理部50は、印刷要求したクライアントホスト名を認識
することが可能となり、印刷要求したクライアント10
0に対し、印刷エラーや印刷完了を通知することが可能
となることから、ドキュメントの印刷状況をクライアン
ト100側で認識することが可能となる。
【0054】以下、本発明の第1実施例に係わるドキュ
メント管理制御方法についてより詳細に説明する。図5
は、本発明の第1実施例に係わるドキュメント管理制御
方法を示すブロック図である。図5において、1つのア
プリケーション1が印刷実行されると、CAPCALジ
ョブ記述ファイル34及びEMFファイル35が、CA
PCALクライアント制御部4の各モジュールを経由し
て、CAPCALサーバ制御部6のCAPCALスプー
ルドキュメントキュー33に生成される。
【0055】ここで、CAPCALジョブ記述ファイル
34及びEMFファイル35のファイル名称形式は、以
下のように表される。 ・「nnnnn.cshd」…CAPCALジョブ記述
ファイル ・「nnnnn.cspl」…EMFファイル ただし、「nnnnn」の部分は、CAPCALジョブ
IDと呼び、CAPCALシステムが独自にユニークに
作成する管理上のIDである。CAPCALジョブID
が同じCAPCALジョブ記述ファイル34とEMFフ
ァイル35とで、1つのスプールジョブを構成する。
【0056】配布分散処理スレッド37は、実際の出力
先(プリンタ名)、出力開始頁及び出力終了頁を検出す
ると、プリンタ名とCAPCALプリントジョブIDを
ジョブ制御ファイル36に書き込む。ここで、印刷結果
を複数のプリンタに出力させる場合、各プリンタごとの
プリンタ名及びCAPCALプリントジョブIDがジョ
ブ制御ファイル36に書き込まれる。
【0057】また、このジョブ制御ファイル36に書き
込まれたCAPCALプリントジョブIDに対応して、
出力するプリンタ台数分のCAPCALスプールプリン
トキュー39a、39b、・・・が生成される。そし
て、配布分散処理スレッド37は、各CAPCALスプ
ールプリントキュー38a、38b、・・・に対応させ
て、出力制御ファイル39a、39b、・・・を生成
し、各出力制御ファイル39a、39b、・・・に対
し、CAPCALジョブID、開始頁、終了頁及びWi
nジョブIDを書き込む。
【0058】例えば、出力制御ファイル39aが生成さ
れると、配布分散処理スレッド37は、ジョブ制御ファ
イル36で指定されたプリンタを受け持つプリンタ別出
力スレッド41を起動する。プリンタ別出力スレッド4
1は、CAPCALスプールドキュメントキュー33に
格納されているCAPCALジョブ記述ファイル34及
びEMFファイル35の内容のうち、出力制御ファイル
39aで指定される開始頁から終了頁までの部分を、C
APCALスプールドキュメントキュー33から取り出
し、GDI7を呼び出して、Windows印刷制御5
に描画データを送る。
【0059】また、出力制御ファイル39bが生成され
ると、配布分散処理スレッド37は、ジョブ制御ファイ
ル36で指定されたプリンタを受け持つプリンタ別出力
スレッド42を起動する。プリンタ別出力スレッド42
は、CAPCALスプールドキュメントキュー33に格
納されているCAPCALジョブ記述ファイル34及び
EMFファイル35の内容のうち、出力制御ファイル3
9bで指定される開始頁から終了頁までの部分を、CA
PCALスプールドキュメントキュー33から取り出
し、GDI7を呼び出して、Windows印刷制御5
に描画データを送る。
【0060】図6(a)は、図5のジョブ制御ファイル
36の内容の一例を示す図である。図6(a)におい
て、ジョブ制御ファイル36には、出力するプリンタ台
数分のプリンタ名及びCAPCALプリントジョブID
が書き込まれる。ここで、CAPCALプリントジョブ
IDは、CAPCALスプールプリントキュー38a、
38b、・・・ごとにユニークな5桁の数字文字列であ
る。この5桁の数字文字列を1エントリとし、出力する
プリンタが複数ある場合には、複数のエントリを書き込
む。なお、ジョブ制御ファイル36のファイル名は、
「(CAPCALジョブID).jctI」とすること
ができる。
【0061】図6(b)は、図5の出力制御ファイル3
9aの内容の一例を示す図である。図6(b)におい
て、出力制御ファイル39aには、CAPCALジョブ
ID、開始頁、終了頁及びWinジョブIDが書き込ま
れる。ここで、CAPCALジョブIDは、CAPCA
Lスプールドキュメントキュー33上のスプールファイ
ルの実体を特定するIDである。また、WinジョブI
Dは、プリンタ別出力スレッド41がGDI7に描画デ
ータを出力した時、Windowsスプールジョブを特
定するための管理IDである。出力制御ファイル39a
にWinジョブIDを格納するのは、後に印刷の取消が
指示された時に、Windowsスプールジョブの削除
を行うためには、WinジョブIDを記憶しておく必要
があるからである。なお、出力制御ファイル39aのフ
ァイル名は、「(CAPCALプリントジョブID).
pctI」とすることができる。図5の出力制御ファイ
ル39b、・・・の構成も同様である。
【0062】図7は、本発明の第1実施例に係わるドキ
ュメント管理制御方法を示すフローチャートである。図
7において、配布分散処理スレッド37は、CAPCA
Lジョブ記述ファイル34及びEMFファイル35がC
APCALスプールドキュメントキュー33に生成さ
れ、実際の出力先(プリンタ名)、出力開始頁及び出力
終了頁を検出すると、CAPCALスプールドキュメン
トキュー33にジョブ制御ファイル36を生成する(ス
テップS1)。
【0063】次に、各CAPCALスプールプリントキ
ュー38a、38b、・・・に対応させて、出力制御フ
ァイル39a、39b、・・・を生成し(ステップS
2)、使用するプリンタ専用のプリンタ別出力スレッド
41、42にイベントで通知する(ステップS3)。
【0064】プリンタ別出力スレッド41、42への通
知が行われると、該当するCAPCALスプールプリン
トキュー38a、38b、・・・下の出力制御ファイル
39a、39b、・・・を読み込み、CAPCALジョ
ブID、開始頁及び終了頁を認識する(ステップS1
1)。次に、出力制御ファイル39a、39b、・・・
から読み出した開始頁を変数Nに格納し(ステップS1
2)、出力制御ファイル39a、39b、・・・から読
み出したCAPCALジョブIDにより特定されるCA
PCALスプールドキュメントキュー33下のEMFフ
ァイル35の第N頁目を読み込み(ステップS13)、
GDI7に出力する。。
【0065】次に、変数Nの値を1だけ増やしながら
(ステップS14)、変数Nの値が出力制御ファイル3
9a、39b、・・・から読み出した終了頁を越えるま
で(ステップS15)、CAPCALスプールドキュメ
ントキュー33下のEMFファイル35の第N頁目を読
み込みを繰り返す。
【0066】変数Nの値が出力制御ファイル39a、3
9b、・・・から読み出した終了頁を越えると、出力す
るプリンタ台数分の処理を行ったかどうかを判断し(ス
テップS4)、出力するプリンタ台数分の処理が終了し
ていない場合は、ステップS2に戻り、出力制御ファイ
ル39a、39b、・・・の作成及びプリンタ別出力ス
レッド41、42のジョブ投入処理を繰り返す。
【0067】このように、本発明の第1実施例によれ
ば、アプリケーション1が出力したスプールファイルで
ある描画データの実体はシステムに唯一存在させ、CA
PCALスプールプリントキュー38a、38b、・・
・に描画データの実体をスプールするのではなく、CA
PCALスプールプリントキュー38a、38b、・・
・に印刷要求ファイルを作成し、この印刷要求ファイル
にEMFファイル35の中の当該プリンタで印刷する頁
情報を格納することにより、スプール処理を高速に行う
ことが可能となる。
【0068】また、CAPCALスプールプリントキュ
ー38a、38b、・・・に印刷要求ファイルを作成し
た後に、当該プリンタへ印刷する頁数等を変更する場合
においても、出力制御ファイル39a、39b、・・・
内の開始頁、終了頁を書き換えるだけでよく、CAPC
ALジョブ記述ファイル34及びEMFファイル35の
印刷データのスプールをやり直す必要がなくなることか
ら、当該プリンタへ印刷する頁数等の変更も容易に行う
ことが可能となる。次に、本発明の第2実施例に係わる
仮想ドキュメント管理制御方法について図面を参照しな
がら説明する。
【0069】図8は、本発明の第2実施例に係わる仮想
ドキュメント管理制御方法を示すブロック図である。図
8において、サーバ制御部6には、仮想ドキュメントエ
ディタ60が設けられている。仮想ドキュメントエディ
タ60は、複数のアプリケーションが出力したスプール
ファイル群を元に、任意の頁構成で仮想ドキュメントを
構築するマンマシンインタフェースを提供するユーティ
リティアプリケーションである。
【0070】この仮想ドキュメントエディタ60は、複
数のアプリケーションが出力したスプールファイルを読
み込み、頁単位に表示させる。そして、オペレーション
指示により、複数のアプリケーションが出力した文書デ
ータを指示頁単位に抜き出して、仮想ドキュメントを作
成する。その後、作成した仮想ドキュメント単位で、特
定プリンタへの印刷、複写印刷、複数のプリンタで同時
印刷などを実行させる。
【0071】具体的には、複数のアプリケーションから
出力された文書データに対応して、複数のCAPCAL
ジョブ記述ファイル34a、・・・、34b及びEMF
ファイル35a、・・・、35bが、CAPCALスプ
ールドキュメントキュー33に生成されているものとす
ると、仮想ドキュメントエディタ60は、CAPCAL
スプールドキュメントキュー33にジョブ制御ファイル
36’を作成する。ここで、仮想ドキュメントエディタ
60により作成されたジョブ制御ファイル36’は、図
5の配布分散処理スレッド37が作成するジョブ制御フ
ァイル36と同等である。すなわち、ジョブ制御ファイ
ル36’には、プリンタ名とCAPCALプリントジョ
ブIDを書き込まれ、印刷結果を複数のプリンタに出力
させる場合には、各プリンタごとのプリンタ名及びCA
PCALプリントジョブIDがジョブ制御ファイル3
6’に書き込まれる。
【0072】また、このジョブ制御ファイル36’に書
き込まれたCAPCALプリントジョブIDに対応し
て、出力するプリンタ台数分のCAPCALスプールプ
リントキュー38a’、38b’、・・・が生成され
る。そして、仮想ドキュメントエディタ60は、各CA
PCALスプールプリントキュー38a’、38b’、
・・・に対応させて、出力制御ファイル39a’、39
b’、・・・を生成し、各出力制御ファイル39a’、
39b’、・・・に対し、CAPCALジョブID、開
始頁、終了頁及びWinジョブIDを書き込む。ここ
で、仮想ドキュメントエディタ60により生成された仮
想ドキュメントが、複数のアプリケーションから出力さ
れた文書データを統合したものである場合、各出力制御
ファイル39a’、39b’、・・・には、各アプリケ
ーションごとのCAPCALジョブID、開始頁、終了
頁及びWinジョブIDが格納される。
【0073】例えば、出力制御ファイル39a’が生成
されると、仮想ドキュメントエディタ60は、ジョブ制
御ファイル36’で指定されたプリンタを受け持つプリ
ンタ別出力スレッド41を起動する。プリンタ別出力ス
レッド41は、まず、出力制御ファイル39a’に格納
されている1番目のCAPCALジョブIDを参照する
ことにより、CAPCALスプールドキュメントキュー
33に格納されているCAPCALジョブ記述ファイル
34a、・・・、34b及びEMFファイル35a、・
・・、35bを特定する。例えば、出力制御ファイル3
9a’に格納されている1番目のCAPCALジョブI
Dが、CAPCALジョブ記述ファイル34a及びEM
Fファイル35aを指定している場合、CAPCALジ
ョブ記述ファイル34a及びEMFファイル35aの内
容のうち、出力制御ファイル39a’で指定される開始
頁から終了頁までの部分を、CAPCALスプールドキ
ュメントキュー33から取り出し、GDI7を呼び出し
て、Windows印刷制御5に描画データを送る。
【0074】次に、プリンタ別出力スレッド41は、出
力制御ファイル39a’に格納されている2番目のCA
PCALジョブIDを参照することにより、CAPCA
Lスプールドキュメントキュー33に格納されているC
APCALジョブ記述ファイル34a、・・・、34b
及びEMFファイル35a、・・・、35bを特定す
る。例えば、出力制御ファイル39a’に格納されてい
る2番目のCAPCALジョブIDが、CAPCALジ
ョブ記述ファイル34b及びEMFファイル35bを指
定している場合、CAPCALジョブ記述ファイル34
b及びEMFファイル35bの内容のうち、出力制御フ
ァイル39a’で指定される開始頁から終了頁までの部
分を、CAPCALスプールドキュメントキュー33か
ら取り出し、GDI7を呼び出して、Windows印
刷制御5に描画データを送る。
【0075】プリンタ別出力スレッド41は、出力制御
ファイル39a’に格納されている全てのCAPCAL
ジョブIDについて、以上の処理を行う。また、出力制
御ファイル39b’が生成されると、仮想ドキュメント
エディタ60は、ジョブ制御ファイル36’で指定され
たプリンタを受け持つプリンタ別出力スレッド42を起
動する。プリンタ別出力スレッド42は、まず、出力制
御ファイル39b’に格納されている1番目のCAPC
ALジョブIDを参照することにより、CAPCALス
プールドキュメントキュー33に格納されているCAP
CALジョブ記述ファイル34a、・・・、34b及び
EMFファイル35a、・・・、35bを特定する。例
えば、出力制御ファイル39b’に格納されている1番
目のCAPCALジョブIDが、CAPCALジョブ記
述ファイル34a及びEMFファイル35aを指定して
いる場合、CAPCALジョブ記述ファイル34a及び
EMFファイル35aの内容のうち、出力制御ファイル
39b’で指定される開始頁から終了頁までの部分を、
CAPCALスプールドキュメントキュー33から取り
出し、GDI7を呼び出して、Windows印刷制御
5に描画データを送る。
【0076】次に、プリンタ別出力スレッド42は、出
力制御ファイル39b’に格納されている2番目のCA
PCALジョブIDを参照することにより、CAPCA
Lスプールドキュメントキュー33に格納されているC
APCALジョブ記述ファイル34a、・・・、34b
及びEMFファイル35a、・・・、35bを特定す
る。例えば、出力制御ファイル39b’に格納されてい
る2番目のCAPCALジョブIDが、CAPCALジ
ョブ記述ファイル34b及びEMFファイル35bを指
定している場合、CAPCALジョブ記述ファイル34
b及びEMFファイル35bの内容のうち、出力制御フ
ァイル39b’で指定される開始頁から終了頁までの部
分を、CAPCALスプールドキュメントキュー33か
ら取り出し、GDI7を呼び出して、Windows印
刷制御5に描画データを送る。
【0077】プリンタ別出力スレッド42は、出力制御
ファイル39a’に格納されている全てのCAPCAL
ジョブIDについて、以上の処理を行う。この結果、複
数のアプリケーションにより作成された仮想ドキュメン
トの描画データをプリンタキューに形成することなく、
仮想ドキュメントの複数のプリンタによる分散印刷を行
うことが可能となる。
【0078】このように、仮想ドキュメントエディタ6
0が、CAPCALジョブ記述ファイル34a、・・
・、34b及びEMFファイル35a、・・・、35b
を統合した文書を仮想的に生成する。そして、この仮想
的に生成された仮想ドキュメントの描画データをCAP
CALスプールプリントキュー38a’、38b’、・
・・に書き込むのではなく、この仮想ドキュメントの印
刷要求をCAPCALスプールプリントキュー38
a’、38b’、・・・に書き込む。このことにより、
複数のアプリケーションで作成された文書を統合して印
刷する場合においても、スプール処理を高速に行うこと
が可能となるととも、使用するアプリケーションの変更
や指定頁の変更なども容易に行うことが可能となる。
【0079】図9(a)は図8のジョブ制御ファイル3
6’の内容の一例を示す図である。図9(a)におい
て、ジョブ制御ファイル36’には、出力するプリンタ
台数分のプリンタ名及びCAPCALプリントジョブI
Dが書き込まれる。ここで、CAPCALプリントジョ
ブIDは、CAPCALスプールプリントキュー38
a’、38b’、・・・ごとにユニークな5桁の数字文
字列である。この5桁の数字文字列を1エントリとし、
出力するプリンタが複数ある場合には、複数のエントリ
を書き込む。なお、ジョブ制御ファイル36’のファイ
ル名は、「(CAPCALジョブID).jctI」と
することができる。
【0080】図9(b)は図8の出力制御ファイル39
a’の内容の一例を示す図である。図9(b)におい
て、出力制御ファイル39a’には、CAPCALジョ
ブID、開始頁、終了頁及びWinジョブIDが書き込
まれる。ここで、CAPCALジョブIDは、CAPC
ALスプールドキュメントキュー33上のCAPCAL
ジョブ記述ファイル34a、・・・、34b及びEMF
ファイル35a、・・・、35bの実体を特定するID
である。すなわち、各CAPCALジョブ記述ファイル
34a、・・・、34b及びEMFファイル35a、・
・・、35bごとに、異なるCAPCALジョブIDが
付与される。また、WinジョブIDは、プリンタ別出
力スレッド41がGDI7に描画データを出力した時、
Windowsスプールジョブを特定するための管理I
Dである。ここで、複数のCAPCALジョブ記述ファ
イル34a、・・・、34b及びEMFファイル35
a、・・・、35bを特定する場合、CAPCALジョ
ブID、開始頁、終了頁、WinジョブIDを1エント
リとして、複数エントリの情報が出力制御ファイル39
a’に書き込まれる。なお、出力制御ファイル39a’
のファイル名は、「(CAPCALプリントジョブI
D).pctI」とすることができる。図8の出力制御
ファイル39b’、・・・の構成も同様である。
【0081】図10は、本発明の第2実施例に係わる仮
想ドキュメント管理制御方法を示すフローチャートであ
る。図10において、仮想ドキュメントエディタ60
は、CAPCALジョブ記述ファイル34a、・・・、
34b及びEMFファイル35a、・・・、35bがC
APCALスプールドキュメントキュー33に生成さ
れ、仮想ドキュメントの実際の出力先(プリンタ名)を
検出すると、CAPCALスプールドキュメントキュー
33にジョブ制御ファイル36’を生成する(ステップ
S21)。
【0082】次に、各CAPCALスプールプリントキ
ュー38a’、38b’、・・・に対応させて、出力制
御ファイル39a’、39b’、・・・を生成し(ステ
ップS22)、仮想ドキュメントに含まれるスプールフ
ァイル(CAPCALジョブ記述ファイル34a、・・
・、34b及びEMFファイル35a、・・・、35
b)の数だけループすることにより(ステップS2
3)、仮想ドキュメントに含まれるスプールファイルの
個数に対応したエントリ情報(CAPCALジョブI
D、開始頁、終了頁)を書き込む。
【0083】次に、出力制御ファイル39a’、39
b’、・・・へのエントリ情報(CAPCALジョブI
D、開始頁、終了頁)の書き込みが終了すると、使用す
るプリンタ専用のプリンタ別出力スレッド41、42に
イベントで通知する(ステップS24)。
【0084】次に、プリンタ別出力スレッド41,42
は、当該プリンタごとに生成されたCAPCALスプー
ルプリントキュー38a’、38b’、・・・から、フ
ァイル作成時間が古い順に出力制御ファイル39a’、
39b’、・・・の内容を読み込む(ステップS3
1)。そして、出力制御ファイル39a’、39b’、
・・・から、1エントリ情報(CAPCALジョブI
D、開始頁、終了頁)を取り出し(ステップS32)、
1ジョブ印刷処理を行う(ステップS33)。
【0085】1ジョブ印刷処理では、出力制御ファイル
39a’、39b’、・・・の1エントリ情報内の開始
頁を変数Nに格納し(ステップS41)、出力制御ファ
イル39a’、39b’、・・・の1エントリ情報内の
CAPCALジョブIDにより特定されるCAPCAL
スプールドキュメントキュー33下のEMFファイル3
5a、・・・、35bの第N頁目を読み込み(ステップ
S42)、GDI7に出力する。
【0086】次に、変数Nの値を1だけ増やしながら
(ステップS43)、変数Nの値が出力制御ファイル3
9a’、39b’、・・・の1エントリ情報内の終了頁
を越えるまで(ステップS44)、CAPCALスプー
ルドキュメントキュー33下のEMFファイル35a、
・・・、35bの第N頁目を読み込みを繰り返す。
【0087】1ジョブ印刷処理が終了すると、出力制御
ファイル39a’、39b’、・・・に次のエントリが
あるかどうかを判断し(ステップS34)、出力制御フ
ァイル39a’、39b’、・・・に次のエントリがあ
る場合は、ステップS32に戻り、エントリ情報(CA
PCALジョブID、開始頁、終了頁)の取り出し及び
1ジョブ印刷処理を繰り返す。
【0088】出力制御ファイル39a’、39b’、・
・・に次のエントリがなくなると、出力するプリンタ台
数分の処理を行ったかどうかを判断し(ステップS2
5)、出力するプリンタ台数分の処理が終了していない
場合は、ステップS22に戻り、出力制御ファイル39
a、39b、・・・の作成及びプリンタ別出力スレッド
41、42のジョブ投入処理を繰り返す。
【0089】このように、本発明の第2実施例では、複
数のアプリケーションから出力された描画データを統合
する仮想ドキュメントエディタ60を設け、仮想ドキュ
メントエディタ60で生成された仮想ドキュメントを1
つのドキュメントファイルとして管理することにより、
仮想ドキュメントの指定を行うだけで、複数のアプリケ
ーションから出力された描画データを一体的に扱って、
何度でも印刷することが可能となり、複数のアプリケー
ションを用いた印刷処理を容易に行うことが可能とな
る。また、仮想ドキュメント単位でプリンタから出力さ
せることができるので、複数のアプリケーションを用い
て印刷された印刷物を仕分けしたり、手書きで頁連番を
書き加えるたりすることなく、複数のアプリケーション
を用いた印刷された印刷物に通し番号を印字するなどの
印刷処理を自動的に行うことが可能となる。
【0090】図11は、本発明の一実施例に係わる印刷
システムのシステム構成を示すブロック図である。図1
1において、151は全体的な処理を行う中央演算処理
ユニット(CPU)、152はリードオンリメモリ(R
OM)、153はランダムアクセスメモリ(RAM)、
154は通信インターフェイス、155は通信ネットワ
ーク、156はバス、157は入出力インターフェイ
ス、158は印刷イメージなどを表示するディスプレ
イ、159は印刷結果を出力するプリンタ、160はキ
ーボード、161はマウス、162は記憶媒体を駆動す
るドライバ、163はハードディスク、164はICメ
モリカード、165は磁気テープ、166はフロッピー
ディスク、167はCD−ROMやDVD−ROMなど
の光ディスクである。
【0091】印刷処理を行うプログラムや印刷データな
どは、ハードディスク163、ICメモリカード16
4、磁気テープ165、フロッピーディスク166、光
ディスク167などの記憶媒体に格納される。そして、
印刷処理を行うプログラムをこれらの記憶媒体からRA
M153に読み出すことにより、印刷処理を行うことが
できる。また、印刷処理を行うプログラムをROM15
2に格納しておくこともできる。
【0092】さらに、印刷処理を行うプログラムや印刷
データなどを通信インターフェイス154を介して通信
ネットワーク155から取り出すこともできる。通信イ
ンターフェイス24に接続される通信ネットワーク15
5として、例えば、LAN(Local Area N
etwork)、WAN(Wide Area Net
work)、インターネット、アナログ電話網、デジタ
ル電話網(ISDN:Integral Servic
e Digital Network)、PHS(パー
ソナルハンディシステム)や衛星通信などの無線通信網
を用いることができる。
【0093】CPU151は、印刷処理を行うプログラ
ムが起動されると、キーボード160やマウス161な
どで入力された描画データをハードディスク163、I
Cメモリカード164、磁気テープ165、フロッピー
ディスク166、光ディスク167などの記憶媒体に格
納する。そして、これらの記憶媒体に格納された描画デ
ータをプリンタ159に送って印刷させたり、通信ネッ
トワーク155を介して他のサーバやプリンタに送った
りする。
【0094】
【発明の効果】以上説明したように、本発明によれば、
描画データ格納手段に格納されている描画データを、描
画データの出力先に対応させて再度格納し直すことな
く、出力先に転送する描画データを描画データ格納手段
から直接読み出して、出力先に転送することにより、描
画データを出力先に転送する際に、描画データをその出
力先ごとに再格納する処理を省略することが可能となる
ことから、スプール処理を高速化することが可能とな
る。
【0095】また、本発明の一態様によれば、描画デー
タを識別する識別情報及び描画データの印刷頁を指定す
る頁情報を、描画データの代わりに格納しておくことに
より、出力する描画データの印刷頁を変更する場合に
は、描画データの内容を再格納することなく、頁情報を
変更するだけで済むことから、スプール処理を効率的に
行うことが可能となる。
【0096】また、本発明の一態様によれば、複数のア
プリケーションにより作成された描画データを統合した
仮想ドキュメントを生成することにより、複数のアプリ
ケーションにより作成された描画データを一体的に扱う
ことが可能となり、各アプリケーションごとの印刷指定
を何度も行うことなく、統合された仮想ドキュメントに
ついての印刷指定を1回行うだけで、複数のアプリケー
ションにより作成された描画データの印刷を行うことが
可能となり、印刷処理を効率的に行うことが可能とな
る。
【0097】また、仮想ドキュメントの描画データを、
その描画データの出力先に対応させて構成することな
く、仮想ドキュメントの出力要求に基づいて、仮想ドキ
ュメントに含まれる描画データを描画データ格納手段か
ら順次に読み出して、出力先に転送することが可能とな
り、仮想ドキュメントの描画データを出力先に転送する
際に、仮想ドキュメントごとの描画データを格納してお
く処理を省略することが可能となることから、スプール
処理を高速化することが可能となる。
【図面の簡単な説明】
【図1】本発明の一実施例に係わる印刷システムの構成
を示すブロック図である。
【図2】図1のクライアント制御部の構成を説明するブ
ロック図である。
【図3】図1のサーバ制御部の構成を説明するブロック
図である。
【図4】図1のプリンタ出力制御部の構成を説明するブ
ロック図である。
【図5】本発明の第1実施例に係わるドキュメント管理
制御方法を示すブロック図である。
【図6】(a)は図5のジョブ制御ファイルの内容の一
例を示す図、(b)は図5の出力制御ファイルの内容の
一例を示す図である。
【図7】本発明の第1実施例に係わるドキュメント管理
制御方法を示すフローチャートである。
【図8】本発明の第2実施例に係わる仮想ドキュメント
管理制御方法を示すブロック図である。
【図9】(a)は図8のジョブ制御ファイルの内容の一
例を示す図、(b)は図8の出力制御ファイルの内容の
一例を示す図である。
【図10】本発明の第2実施例に係わる仮想ドキュメン
ト管理制御方法を示すフローチャートである。
【図11】本発明の一実施例に係わる印刷システムのシ
ステム構成を示すブロック図である。
【図12】従来の分散印刷方法を説明するブロック図で
ある。
【符号の説明】
100 クライアント 103 サーバ 101、102、28、29、44 通信回線 1 アプリケーション 2、7 GDI 3、5 Windows印刷制御部 4 クライアント制御部 6 サーバ制御部 8 プリンタ出力制御部 9 プリンタ 11 スプーラプロセス 12 プロバイダ 13、47 プリントプロセッサ 14 仮想ドライバ 15 CAPCALドライバプロパティ制御スレッド 16 システムスプールキュー 17 出力制御情報ファイル 18 ジョブ記述ファイル 19、24、35、35a、35b EMFファイル 20 CAPCALクライアント定義ファイル 21 CAPCALプリントプロセッサ 22 CAPCALスプールキュー 23、34a、34b CAPCALジョブ記述ファイ
ル 25 CAPCAL転送先定義ファイル 26 CAPCALクライアントメインプロセス 27 CAPCALジョブ転送スレッド 30、31 CAPCAL受信スレッド 32 CAPCALサーバメインプロセス 33 CAPCALスプールドキュメントキュー 36、36 ジョブ制御ファイル 37 配布分散処理スレッド 38、38a、38b、38a’、38b’ CAPC
ALスプールプリンタキュー 39、39a、39b、39a’、39b’ 出力制御
ファイル 40 CAPCALサーバ側定義ファイル 41、42 プリンタ別出力スレッド 43 CAPCALジョブ転送スレッド 45 プリンタドライバ 46 Rawスプールファイル 48 セントロポートモニタ 49 スプーラプロセスメイン 50 プリンタ出力管理部 51 ポートモニタ 52、53 画面呼び出し 60 仮想ドキュメントエディタ 151 CPU 152 ROM 153 RAM 154 通信インターフェース 155 通信ネットワーク 156 バス 157 入出力インターフェース 158 ディスプレイ 159 プリンタ 160 キーボード 161 マウス 162 ドライバ 163 ハードディスク 164 ICメモリカード 165 磁気テープ 166 フロッピーディスク 167 光ディスク
フロントページの続き (72)発明者 波多野 英二 東京都東大和市桜が丘2丁目229番地 カ シオ計算機株式会社東京事業所内 (72)発明者 天利 忠義 東京都東大和市桜が丘2丁目229番地 カ シオ計算機株式会社東京事業所内 (72)発明者 田村 恒治 東京都東大和市桜が丘2丁目229番地 カ シオ計算機株式会社東京事業所内

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 描画データを格納する描画データ格納手
    段と、 前記描画データの出力要求を、前記描画データの出力先
    ごとに格納する出力要求格納手段と、 前記描画データの出力要求に基づいて、前記描画データ
    を前記描画データ格納手段から前記出力先に転送する描
    画データ転送手段とを備えることを特徴とする印刷シス
    テム。
  2. 【請求項2】 前記出力要求は、前記描画データを識別
    する識別情報及び前記描画データの印刷頁を指定する頁
    情報を含んでいることを特徴とする請求項1記載の印刷
    システム。
  3. 【請求項3】 複数のアプリケーションにより作成され
    た描画データを格納する描画データ格納手段と、 前記複数のアプリケーションにより作成された描画デー
    タに基づいて、仮想的なドキュメントを生成する仮想ド
    キュメント生成手段と、 前記仮想的なドキュメントの出力要求を、前記仮想的な
    ドキュメントの出力先ごとに格納する出力要求格納手段
    と、 前記仮想的なドキュメントの出力要求に基づいて、前記
    仮想的なドキュメントに含まれる描画データを、前記描
    画データ格納手段から前記出力先に転送する描画データ
    転送手段とを備えることを特徴とする印刷システム。
  4. 【請求項4】 描画データを前記描画データの出力先と
    独立に格納する機能と、 前記描画データの出力要求を、前記描画データの出力先
    ごとに格納する機能と、 前記描画データの出力要求に基づいて、前記出力先と独
    立に格納されている描画データを前記出力先に転送する
    機能とをコンピュータに実行させるプログラムを格納し
    たコンピュータ読み取り可能な記憶媒体。
JP13497698A 1998-05-18 1998-05-18 印刷システム Expired - Lifetime JP3823534B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13497698A JP3823534B2 (ja) 1998-05-18 1998-05-18 印刷システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13497698A JP3823534B2 (ja) 1998-05-18 1998-05-18 印刷システム

Publications (2)

Publication Number Publication Date
JPH11327821A true JPH11327821A (ja) 1999-11-30
JP3823534B2 JP3823534B2 (ja) 2006-09-20

Family

ID=15141017

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13497698A Expired - Lifetime JP3823534B2 (ja) 1998-05-18 1998-05-18 印刷システム

Country Status (1)

Country Link
JP (1) JP3823534B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005341343A (ja) * 2004-05-28 2005-12-08 Fuji Xerox Co Ltd 画像処理装置および画像処理方法
JP2008186445A (ja) * 2007-01-26 2008-08-14 Sharp Corp クラスタ印刷方法、およびクラスタ印刷システム
US7417754B2 (en) 2001-09-05 2008-08-26 Hewlett-Packard Development Company, L.P. Wireless printing interface kit and method
US7613798B2 (en) 2001-01-29 2009-11-03 Thinprint Gmbh Method for processing printing orders in server-based networks, and corresponding server-based network

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7613798B2 (en) 2001-01-29 2009-11-03 Thinprint Gmbh Method for processing printing orders in server-based networks, and corresponding server-based network
US7417754B2 (en) 2001-09-05 2008-08-26 Hewlett-Packard Development Company, L.P. Wireless printing interface kit and method
JP2005341343A (ja) * 2004-05-28 2005-12-08 Fuji Xerox Co Ltd 画像処理装置および画像処理方法
JP2008186445A (ja) * 2007-01-26 2008-08-14 Sharp Corp クラスタ印刷方法、およびクラスタ印刷システム

Also Published As

Publication number Publication date
JP3823534B2 (ja) 2006-09-20

Similar Documents

Publication Publication Date Title
US6874034B1 (en) Intelligent peer hybrid printing protocol
US5699495A (en) Point-and-print in a distributed environment
US7382477B2 (en) Information processing apparatus capable of transferring print job to another information processing apparatus, and its control method
US7088462B2 (en) Print manager having a user interface for specifying how documents are directed to print devices
US20020163666A1 (en) Control of distributed printers
JP5293035B2 (ja) データ処理装置、データ処理方法、プログラムおよび記録媒体
JP5782865B2 (ja) プリンタドライバ
JP3495845B2 (ja) 情報処理装置及びその方法、プリンタシステム
JP2519001B2 (ja) タスク制御サブシステム及びタスクの処理の調整方法
US20030020944A1 (en) Printer pausing and reordering
JP3832978B2 (ja) 印刷制御装置及び印刷制御方法
US20020159092A1 (en) Method and apparatus for embodying documents
JPH11143661A (ja) 印刷システム
US6275299B1 (en) Multiple spooler printing system
JP3456411B2 (ja) 印刷情報処理システム
JPH11327821A (ja) 印刷システム
US7577693B2 (en) Performing multiple actions on a spool file by assigning a particular action to be performed on each segment of the spool file
JP3884876B2 (ja) 情報処理装置、情報処理方法及びコンピュータ読み取り可能なプログラムが格納された記憶媒体
JP3399461B2 (ja) 印刷システム
US7468802B1 (en) Method and apparatus for processing print jobs via parallel spooling and despooling operations
US20070268504A1 (en) Enhanced imaging spooler
JP2001154961A (ja) 文書出力装置及びその方法
JP2001078018A (ja) データ編集装置
JP3536668B2 (ja) 印刷制御装置
US20020101603A1 (en) Method and apparatus for embodying documents

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051101

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051222

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: 20060606

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060619

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090707

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100707

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110707

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110707

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120707

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120707

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130707

Year of fee payment: 7

EXPY Cancellation because of completion of term