JP3812278B2 - 記録媒体およびコンピュータ - Google Patents
記録媒体およびコンピュータ Download PDFInfo
- Publication number
- JP3812278B2 JP3812278B2 JP2000103195A JP2000103195A JP3812278B2 JP 3812278 B2 JP3812278 B2 JP 3812278B2 JP 2000103195 A JP2000103195 A JP 2000103195A JP 2000103195 A JP2000103195 A JP 2000103195A JP 3812278 B2 JP3812278 B2 JP 3812278B2
- Authority
- JP
- Japan
- Prior art keywords
- file
- command
- printer
- subfile
- 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
Links
Images
Landscapes
- Record Information Processing For Printing (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Description
【発明の属する技術分野】
本発明は、コンピュータシステムにおける印刷処理に係り、特に、印刷時において、操作者からの印刷キャンセル命令を受付ける技術に関する。
【0002】
【従来の技術】
印刷実行の際、プリンタへの出力によって、コンピュータシステム本体の計算完了が遅くなるのを防いだり、ネットワークに接続されたコンピュータからのプリンタ出力要求をさばき、順序を整えてプリンタにデータを送るという目的のため、コンピュータシステムはプリントスプールという手法を通常採用している。
【0003】
図7は、ローカル接続プリンタでの印刷時の処理の概要を示すブロック図である。プリンタドライバ231で生成された印刷データ(プリンタ制御言語で記述されたデータ)は、オぺレーティングシステムのプリントシステム240のモジュールの一つであるスプーラ241に送られる。印刷データを受け取ったスプーラ241は、印刷データを一旦スプールファイル260として、ハードディスク上に格納する。そしてプリントシステム240のモジュールの一つであるプリントプロセッサ242が、このスプールファイル260を読み込み、プリンタ20に転送する。
【0004】
【発明が解決しようとする課題】
しかし、印刷処理が一旦開始すると、操作者が印刷を中止しようとして、キャンセルボタンをクリックしても、コンピュータ処理とのタイミング等によりキャンセルが実行されなかったり、迅速なキャンセル処理ができない等の問題がある。特に、スプールファイル260作成後、プリントプロセッサ242が、プリント20に印刷データの転送を開始した後は、キャンセル処理は一層不確実なものとなっている。
【0005】
本発明の目的は、印刷時において、印刷キャンセルコマンドを迅速に作成・検知し、検知以降の印刷データの転送を確実に中止することにある。
【0006】
【課題を解決するための手段】
前記目的を達成するため、本発明は、操作者からの印刷命令に従って、プリンタを制御する印刷データを作成するプリンタドライバであって、当該プリンタドライバがインストールされたコンピュータで利用できるプリントプロセッサが、当該プリンタドライバが作成可能な独自の印刷データに従って、プリンタへの転送制御ができるものであるかどうかを判定する判定手段と、プリントプロセッサが、当該プリンタドライバが作成可能な独自の印刷データに従って、プリンタへの印刷制御ができるものであると判定された場合に、印刷データを1または複数のデータに分割して、かつ、データを識別するための情報をそれぞれのデータに付加し、これらをファイルとして記録する手段と、前記ファイルを特定するための情報を含むデータを、前記ファイルとは別に作成する手段と、を有することを特徴とするプリンタドライバを提供する。
【0007】
また、本発明では、プリントスプールファイルを読込み、プリンタへの転送を制御するプリントプロセッサであって、プリントスプールファイルが、印刷データが含まれる、一または複数のファイルを特定するための情報を含むかどうかを判定する判定手段と、プリントスプールファイルが、、印刷データが含まれる、一または複数のファイルを特定するための情報を含むと判定された場合に、当該プリントスプールファイルを読み込み、前記ファイルを特定するための情報を参照する手段と、特定されたファイルを読み込み、ファイルに含まれる印刷データを出力する手段と、を有することを特徴とするプリントプロセッサも提供する。
【0008】
【発明の実施の形態】
本発明の実施例について、図面を参照して説明する。本実施例は、ローカル接続されたプリンタで印刷を行うコンピュータシステムに、本発明を適用した場合である。
【0009】
まず、本実施例におけるコンピュータシステムの構成について説明する。
【0010】
図5は、コンピュータシステムのハードウェア構成を示すブロック図である。本図において、コンピュータ本体10は、CPU11と、画像制御装置12と、主記憶装置13と、外部記憶装置14と、入出力制御装置15と、インタフェース16と、これらを接続するバス17とから構成される。
【0011】
CPU11は、コンピュータの中心的な制御を行う装置で、主記憶装置に格納された種々の命令を解読して、実行する機能を有している。画像制御装置12は、画像を生成するための演算等を行う。主記憶装置13は、コンピュータが取り扱うデータ、ソフトウェア、オペレーティングシステム等を一時的に格納する機能を有している。外部記憶装置14は、ハードディスク等の読み書き可能の記録媒体を有する記憶装置であって、ソフトウェア、一時ファイル等が格納される。入出力制御装置15は、操作者の指示を受け付けるとともに、データを外部に接続された装置に出力する際の制御を行う。インタフェース16は、プリンタ20等の周辺装置と接続する際の仲立ちを行う。バス17は、アドレス、データ等の信号が流れる線である。
【0012】
コンピュータ本体10には、インタフェース16を介して、マウス18とキーボード19と、プリンタ本体20が接続される。マウス17およびキーボードは、コンピュータ操作者の入力を受付ける。プリンタ本体20は、コンピュータ10から印刷データを受付けて、印刷を実行する。
【0013】
なお、コンピュータシステムの構成は、本構成に限られるものではない。
【0014】
次に、ワードプロセッサ、グラフィック等のアプリケーションソフトウェアの印刷コマンドを実行した時の印刷データの流れの概要を、図9を参照して説明する。本図において、アプリケーションソフトウェア50と、プリンタドライバ31と、プリントシステム40は、ソフトウェアで、主記憶装置13に格納されている。CPU11は、これらのソフトウェアを参照して、本図に示す処理を行う。アプリケーションソフトウェア50は、コンピュータ10で実行しているプログラムである。操作者からの印刷命令を受付けると、アプリケーションソフトウェア50は、印刷対象物の描画データ51(主として、画像出力用のデータ形式)をプリンタドライバ31に送る。
【0015】
プリンタドライバ31は、送られた描画データ51を印刷データ52(プリンタ制御言語で記述されたデータ)に展開して、プリントシステム40に送る。
【0016】
プリントシステム40は、送られた印刷データ52を外部記憶装置14に一時的に格納する。その後、格納した印刷データ52をプリンタ20に送り、コンピュータ本体10の印刷処理を終了する。
【0017】
印刷データ52を受け取ったプリンタ20は、印刷を実行する。
【0018】
図1は、本実施例の構成および処理の概要を説明するブロック図である。本図において、スプーラ41とプリントプロセッサ42とは、プリントシステム40を構成するソフトウェアモジュールである。スプーラ41は、プリンタドライバ31から送られ、プリントシステム41が受け取ったデータを、外部記憶装置14に格納する。プリントプロセッサ42は、格納された印刷データを読み込んで、プリンタ20に送る。プリントプロセッサ42は、通常オぺレーティングシステムの一部として、提供されるが、独自仕様のものを開発し、利用することも可能である。
【0019】
以上の構成により行われる、本実施例における処理の概要について説明する。
【0020】
プリンタドライバ31は、印刷データを生成すると、この印刷データを後述するサブファイル70に分割して、外部記憶装置14に格納する。そして、サブファイル70のファイル名と、印刷制御コマンドファイル71のファイル名をスプーラ41に送る。ここで、印刷制御コマンドファイル71とは、プリンタドライバ31が、プリンタを制御するコマンド、例えばキャンセル命令を書き込むために外部記憶装置14等に作成するファイルである。
【0021】
これらを受付けたスプーラ41は、サブファイル名61と、印刷制御コマンドファイルのファイル名62をスプールファイル60として外部記憶装置14に格納する。
【0022】
プリントプロセッサ42は、スプールファイル60から、サブファイル名61を参照し、対応するサブファイル70を順次オープンする。そして、サブファイル70を読込み、印刷データを再構成し、プリンタ20に送る。そして、プリンタ20に送った印刷データに対応するサブファイル70を順次削除する。また、プリントプロセッサ42は、スプールファイル60から、印刷制御コマンドファイル名62を参照し、対応する印刷制御コマンドファイル71を監視する。
【0023】
次に、本実施例におけるプリンタドライバ31の動作について詳細に説明する。プリンタドライバ31は、プリントプロセッサ42が本発明による印刷処理が可能である否かを調べ、可能である場合には、以下の処理を行う。可能でない場合には、従来の処理を行う。なお、プリントプロセッサ42が本発明による印刷処理が可能か否かの判別は、例えば、本発明による印刷処理が可能なプリントプロセッサ42に、識別用のコードを付し、プリンタドライバ31が、そのコードを検出した場合には、本発明による印刷処理が可能であると決定すること等により実現できる。
【0024】
ユーザからの印刷命令により、あるジョブに対する印刷処理を開始したプリンタドライバ31は、本発明による印刷処理を行うことを示す識別データと、印刷制御コマンドファイルのファイル名とを、スプーラ41に送る。なお、ジョブとは、1つの印刷命令で行われる印刷処理の単位をいう。印刷されるページ数の複単、部数の複単は問わない。
【0025】
次に、プリンタドライバ31は、印刷データを加工し、複数のサブファイル70に分割し、外部記憶装置14に格納する。そして、サブファイルのファイル名をスプーラ41に送る。
【0026】
ここで、プリンタドライバ31が、印刷データを加工し、複数のサブファイル70に分割する処理について説明する。
【0027】
図2は、サブファイル70を説明する概念図である。本図(a)に示すようにサブファイル70は、ヘッダ部71と、本体部72と、フッタ部73とから構成される。本体部72は、さらにパケット部(72a、72b、…)から構成される(本図(b))。
【0028】
ヘッダ部71は、サブファイル70の種類の識別等に用いられる。パケット部(72a、72b、…)は、ジョブの開始を識別するためのコード、ページの開始を識別するためのコード、印刷データ等から構成される。フッタ部73は、サブファイルの終了の識別に用いられる。
【0029】
ヘッダ部71と、フッタ部73と、パケット部(72a、72b、…)は、図2(c)に示すような共通のフォーマットを有している。パケット部72aは、可変長で、パケットサイズ部721と、パケットコード部722と、パケットID部723と、パケットデータ部724とから構成される。
【0030】
パケットサイズ部721は、パケットデータ72aのデータサイズを格納する。パケットコード部722は、パケットの種類を示すコードを格納する。パケットID部723は、パケットデータ72aのデータ種類(パケットの種類におけるデータの種類)を識別するコードを格納する。パケットデータ部724は、データ本体を格納する。
【0031】
なお、印刷制御コマンドファイル71の構成も、上記で説明したサブファイル70と同様であり、両者はヘッダ部71の内容で識別される。
【0032】
図3は、プリンタドライバ31が、印刷データ52を、サブファイル70に分割する処理を説明する概念図である。本図において70a、70b、70cは、サブファイルである。それぞれのサブファイルは、ヘッダ部(71a、71b、71c)と、フッタ部(73a、73b、73c)と、本体部であるパケット部(72a、72b…)とから構成される。
【0033】
プリンタドライバ31は、印刷データを、パケットに分解し、いくつかのパケットをまとめ、ヘッダ部と、フッタ部を付加してサブファイルとする。パケットに分解する単位は、少なくとも、ジョブ開始、ページ開始等の印刷用コマンドは1パケットとするが、それ以外の印刷データは任意のサイズにすることができる。また、パケットをまとめて1サブファイルとする単位も任意である。ただし、印刷データの並び順を変更することは許されない。
【0034】
図4は、プリンタドライバ31が作成するサブファイル70と、プリンタドライバ31からスプーラ41にファイル名が送られ、スプーラ41が作成するスプールファイル60の関係について説明する図であり、(a)(b)の2例を示している。いずれも、印刷制御コマンドファイル名61は、印刷制御コマンドファイル71のファイル名を格納している。
【0035】
図4(a)は、作成したサブファイルのファイル名をすべてスプールファイルで保持する方法を示す。本図においてスプールファイル60は、印刷制御コマンドファイル名61と、サブファイル名1、サブファイル名2…(62a、62b…)とから構成される。
【0036】
図4(b)は、作成したサブファイルのファイル名の代表名をスプールファイルで保持する方法を示す。本図においてスプールファイル60は、印刷制御コマンドファイル名61と、サブファイル名62とから構成される。サブファイル1、サブファイル2…は、サブファイル名62を参照することにより、順次特定可能となる。
【0037】
次に、プリンタドライバ31が、ユーザが指示したキャンセル命令を受け取った場合の処理について説明する。
【0038】
プリンタドライバ31は、ユーザからの印刷キャンセル命令を受付けると、キャンセルを表すプリンタ制御コマンドを、印刷データとは別個に、印刷制御コマンドファイル71に書き込む。このため、迅速にキャンセル命令コマンドを作成することができる。
【0039】
次に、実施例におけるプリントプロセッサ42の動作について詳細に説明する。
【0040】
プリントプロセッサ42は、プリントシステム40から印刷命令を受付けると、スプールファイル60中に、本発明による印刷処理が行われていることを示す識別データがあるか否かを調べる。そして識別データを検出した場合は、以下の処理を行う。なお、識別データは、本処理を行ったプリンタドライバ31からスプーラ41に送られ、スプーラ41がスプールファイル60中に書き込んだものである。
【0041】
プリントプロセッサ42は、スプールファイル60を参照し、サブファイル名61と、印刷制御コマンドファイル名62を取得する。プリントプロセッサ42は、サブファイル名61の最初のファイル名に対応するサブファイル70をオープンし、パケット単位(ヘッダ部71とフッタ部73とを含む)で読み込む。そして、印刷データであるパケットデータ部724を順次、プリンタ20に送る。
【0042】
プリントプロセッサ42がフッタ部73を読み込んだときは、読込み済みのサブファイルをクローズして、サブファイル名61の次のファイル名に対応するサブファイル70をオープンし、同様の処理を行うと共に、読込み済みである最初のサブファイルを消去する。これにより、外部記憶装置のディスク容量の節約が実現される。以下この処理が印刷データの終了まで繰り返される。
【0043】
プリントプロセッサ42が、ジョブ終了パケットを読み込んだときは、印刷を終了し、最後のサブファイル70をクローズし、消去する。
【0044】
プリントプロセッサ42は、最初のサブファイルが作成されると、ジョブ全体のサブファイルが完成されるのを待たずに、プリンタへのデータを開始することができるため、印刷開始までの待ち時間を短縮することが可能となる。
【0045】
プリントプロセッサ42は、パケット単位でのファイルの読込み毎に、印刷制御コマンドファイル71を監視する。そして、印刷制御コマンドファイル71のファイルサイズ増加等により、印刷制御コマンドファイル71が更新されたことを検知すると、印刷制御コマンドファイル71を読み込む。
【0046】
読込みの結果、印刷制御コマンドファイル71に印刷キャンセル命令が追加されていた場合は、それ以降のパケットのプリンタ20への転送を中止し、ページ終了コマンドおよびジョブ終了コマンドをプリンタ20に送り、印刷を終了させる。
【0047】
この印刷キャンセル処理により、パケット処理毎にキャンセル検知が可能となり、また、検知以後のパケットをプリンタ20に転送することなく印刷を中止することができるようになる。
【0048】
【発明の効果】
上述のように本発明によれば、印刷時において、印刷キャンセルコマンドを迅速に作成・検知し、検知以降の印刷データの転送を確実に中止することが可能となる。
【図面の簡単な説明】
【図1】 実施例の構成と処理の概要を説明するブロック図。
【図2】 サブファイルを説明する概念図。
【図3】 印刷データをサブファイルに分割する処理を説明する概念図。
【図4】 スプールファイルとサブファイルの関係を説明する概念図。
【図5】 コンピュータシステムのハードウェア構成を示すブロック図
【図6】 印刷データの流れの概要を説明するブロック図。
【図7】 ローカル接続プリンタでの印刷時の処理の概要を示すブロック図。
【符号の説明】
10…コンピュータ本体、
20…プリンタ、
31…プリンタドライバ、
40…プリントシステム、
41…スプーラ、
42…プリントプロセッサ、
60…スプールファイル、
70…サブファイル、
71…印刷制御コマンドファイル。
Claims (2)
- 分割された印刷データを含むサブファイルを特定するための情報と、印刷を中止させるキャンセルコマンドを含む、プリンタを制御するコマンド群を記録したコマンドファイルを特定するための情報とを含むスプールファイルを読込み、プリンタへの印刷データの転送を制御する処理をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記スプールファイルにより特定されるサブファイルを読み込み、前記サブファイルに含まれる印刷データを出力する処理と、
前記スプールファイルにより特定されるコマンドファイルが更新されたことを検知すると、前記コマンドファイルを読込み、追加されたコマンドがキャンセルコマンドであった場合には、印刷データの出力を中止し、前記プリンタにおける印刷を中止させるための処理とをコンピュータに実行させるためのプログラムを記録したコンピュータ読取可能な記録媒体。 - 分割された印刷データを含むサブファイルを特定するための情報と、印刷を中止させるキャンセルコマンドを含む、プリンタを制御するコマンド群を記録したコマンドファイルを特定するための情報とを含むスプールファイルを読込む手段と、
前記スプールファイルにより特定されるサブファイルを読み込み、前記サブファイルに含まれる印刷データを出力する手段と、
前記スプールファイルにより特定されるコマンドファイルが更新されたことを検知すると、前記コマンドファイルを読込み、追加されたコマンドがキャンセルコマンドであった場合には、印刷データの出力を中止し、前記プリンタにおける印刷を中止させるための処理を行なう手段とを備えることを特徴とするコンピュータ。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000103195A JP3812278B2 (ja) | 2000-04-05 | 2000-04-05 | 記録媒体およびコンピュータ |
EP05076920A EP1596276A3 (en) | 2000-04-05 | 2001-04-05 | Methods for creating printing data and for transferring printing data |
AT01303230T ATE323303T1 (de) | 2000-04-05 | 2001-04-05 | Verfahren um druckdaten zu erzeugen und zu übertragen |
US09/826,308 US7333222B2 (en) | 2000-04-05 | 2001-04-05 | Methods for creating printing data and for transferring printing data |
EP01303230A EP1143330B1 (en) | 2000-04-05 | 2001-04-05 | Methods for creating printing data and for transferring printing data |
DE60118643T DE60118643T2 (de) | 2000-04-05 | 2001-04-05 | Verfahren um Druckdaten zu erzeugen und zu übertragen |
US11/534,504 US7330284B2 (en) | 2000-04-05 | 2006-09-22 | Methods for creating printing data and for transferring printing data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000103195A JP3812278B2 (ja) | 2000-04-05 | 2000-04-05 | 記録媒体およびコンピュータ |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2001290617A JP2001290617A (ja) | 2001-10-19 |
JP2001290617A5 JP2001290617A5 (ja) | 2004-09-24 |
JP3812278B2 true JP3812278B2 (ja) | 2006-08-23 |
Family
ID=18616950
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000103195A Expired - Fee Related JP3812278B2 (ja) | 2000-04-05 | 2000-04-05 | 記録媒体およびコンピュータ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3812278B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4748246B2 (ja) * | 2009-04-22 | 2011-08-17 | ブラザー工業株式会社 | プログラム、およびコンピュータ |
-
2000
- 2000-04-05 JP JP2000103195A patent/JP3812278B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001290617A (ja) | 2001-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7330284B2 (en) | Methods for creating printing data and for transferring printing data | |
JP3812278B2 (ja) | 記録媒体およびコンピュータ | |
US7339688B1 (en) | Processor for a requested print job | |
US7042582B1 (en) | Printer and printer data processing method | |
JP3812277B2 (ja) | 記録媒体、コンピュータ、印刷データ作成方法および印刷データ転送方法 | |
JP3695027B2 (ja) | ジョブ処理装置 | |
JP4400097B2 (ja) | 印刷装置、印刷制御方法、プログラム及び記録媒体 | |
JPH0895810A (ja) | バッチジョブ実行方式 | |
JPH0437450B2 (ja) | ||
JP3904054B2 (ja) | 用紙排出プログラムを記録した媒体、データ識別プログラムを記録した媒体、用紙排出装置、データ識別装置、用紙排出方法およびデータ識別方法 | |
JP3840002B2 (ja) | 情報処理装置および印刷制御装置および印刷制御方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体 | |
JP3951083B2 (ja) | ネットワークプリンタ及びネットワーク印刷システム | |
JP3037537B2 (ja) | 印刷システムおよび印刷システムに使用する印刷装置 | |
JP2001243028A (ja) | 印刷制御プログラムを記録した媒体、印刷制御装置および印刷制御方法 | |
JP2966431B2 (ja) | 情報処理装置におけるファイル領域クリア方法 | |
JP2001290617A5 (ja) | ||
JP2003316529A (ja) | 情報処理装置および印刷制御装置および印刷システムおよびデータ処理方法およびコンピュータが読み取り可能な記憶媒体およびプログラム | |
JP2001216114A5 (ja) | ||
JPH07225675A (ja) | 情報出力装置 | |
JPH1178134A (ja) | 画像処理装置及びその方法並びにメモリ媒体 | |
JPH08263640A (ja) | 画像入力システム | |
JPH10207783A (ja) | ボリュームコピーシステム、ボリュームコピー方法およ びボリュームコピープログラムを記録した計算機読み取 り可能な記録媒体 | |
JPH1040028A (ja) | 印刷データ格納方法及び印刷制御装置 | |
JPH01196625A (ja) | 記録装置 | |
JPH09245098A (ja) | 帳票作成システム及びその帳票印刷制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051108 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051115 |
|
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: 20060509 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060522 |
|
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: 20100609 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110609 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110609 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120609 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130609 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130609 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |