JP3904054B2 - Medium recording paper discharge program, medium recording data identification program, paper discharge apparatus, data identification apparatus, paper discharge method, and data identification method - Google Patents

Medium recording paper discharge program, medium recording data identification program, paper discharge apparatus, data identification apparatus, paper discharge method, and data identification method Download PDF

Info

Publication number
JP3904054B2
JP3904054B2 JP2000032739A JP2000032739A JP3904054B2 JP 3904054 B2 JP3904054 B2 JP 3904054B2 JP 2000032739 A JP2000032739 A JP 2000032739A JP 2000032739 A JP2000032739 A JP 2000032739A JP 3904054 B2 JP3904054 B2 JP 3904054B2
Authority
JP
Japan
Prior art keywords
data
paper discharge
spooler
spool
function
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
JP2000032739A
Other languages
Japanese (ja)
Other versions
JP2001216114A (en
JP2001216114A5 (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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2000032739A priority Critical patent/JP3904054B2/en
Publication of JP2001216114A publication Critical patent/JP2001216114A/en
Publication of JP2001216114A5 publication Critical patent/JP2001216114A5/ja
Application granted granted Critical
Publication of JP3904054B2 publication Critical patent/JP3904054B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Controlling Sheets Or Webs (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、用紙排出プログラムを記録した媒体、データ識別プログラムを記録した媒体、用紙排出装置、データ識別装置、用紙排出方法およびデータ識別方法に関する。
【0002】
【従来の技術】
コンピュータから文書や図面等をプリンタにて印刷するためには、通常コンピュータ上でドライバ,スプーラおよびランゲージモニタ等が連携して印刷データをプリンタに転送している。すなわち、ドライバが生成する印刷データをスプーラが一時的にスプールし、ランゲージモニタがプリンタの状態を監視するなどして適正量のデータを適正タイミングでプリンタに供給する。
【0003】
【発明が解決しようとする課題】
上述した従来の印刷実行においては、以下の問題があった。すなわち、利用者が印刷を取り消すときに、ドライバにて印刷を取り消せば当該ドライバがプリンタにおいてキャンセル処理を行うためのコマンドを出力することができるものの、スプーラにデータが転送されてから利用者が印刷を取り消した場合には、プリンタが適正なキャンセル処理を行うことができずに印刷用紙が排出されない場合があった。かかる場合にはプリンタ自体に備える排出ボタンにて印刷用紙を排出することなども考えられるが、当該排出ボタンを設けないような低コストのプリンタではかかる排出は不可能であり、電源を切ってからプリンタのカバーを開けて印刷用紙を取り出す必要がある。
【0004】
本発明は、上記課題にかんがみてなされたもので、スプーラによる印刷キャンセルがなされたときも利用者の手を煩わすことなくプリンタに印刷用紙を排出させることが可能な用紙排出プログラムを記録した媒体、データ識別プログラムを記録した媒体、用紙排出装置、データ識別装置、用紙排出方法およびデータ識別方法の提供を目的とする。
【0005】
【課題を解決するための手段】
上記目的を達成するため、請求項1にかかる発明は、印刷ジョブがスプーラによってキャンセルされたときに印刷装置にて印刷用紙を排出させる用紙排出プログラムを記録した媒体であって、上記スプーラが出力するスプールデータ中の後尾から所定サイズのデータを格納するスプールデータ参照機能と、上記スプーラによるキャンセル時に起動され、上記スプールデータ参照機能により格納されているデータを参照して所定態様のデータの有無を検出するデータ検出機能と、同データ検出機能によって所定態様のデータが検出されなかったときに上記印刷装置に対して用紙排出コマンドを出力する用紙排出コマンド出力機能とをコンピュータに実現させ、上記所定サイズは、上記スプーラが出力する最大のデータサイズよりも小さい構成としてある。
【0006】
上記のように構成した請求項1にかかる発明においては、上記データ検出機能がスプーラによる印刷ジョブのキャンセル時に起動されるようになっており、当該キャンセル時にスプールデータ中の後尾データに所定態様のデータがあるか否かを検出する。そして、所定態様のデータが検出されなかったときに上記印刷装置に対して用紙排出コマンドを出力する。すなわち、印刷ジョブを終了させるためには通常ドライバがその終了を示す何らかのデータをスプールデータの最後に所定態様で付し、正常に印刷を終了するとかかる所定態様データによって印刷装置において適正に用紙が排出される。
【0007】
しかし、スプーラにおいて印刷ジョブをキャンセルしたときには、途中でスプールデータの送信が停止し、上記所定態様のデータは印刷装置に送信されない。そこで、データ検出機能によって上記所定態様データが検出されないときに用紙排出コマンドを出力する。従って、このようなスプーラによるキャンセル時にも印刷装置において用紙が排出されずに停止したままになることはない。尚、このデータ検出機能は上記スプーラによるキャンセル時に起動されるので、スプーラが処理を実行中にたまたま処理が滞ってしばらくデータが送信されなかった場合に用紙排出コマンドを出力してしまうようなことはない。
【0008】
また、上述のようにスプーラによるキャンセル時にデータ検出機能が実行されるように構成するためには様々な態様が考えられ、例えば、ランゲージモニタ等のモジュールとして構成され、スプーラによるキャンセル時に実行されるEndDocPort関数の処理の一部として実現することなどが考えられる。
【0009】
このように、データ検出機能にて所定態様のデータの有無を検出するためには、上記スプールデータ参照機能においてスプールデータの後尾から所定サイズのデータを参照することができればよい。その構成としては、例えば、上記所定態様データの検出に必要なビット数のデータを参照する構成とすることができる。この場合、さらには参照する後尾から所定サイズのデータを格納可能に構成すると好適である。
【0010】
すなわち、上記スプーラは通常大きな印刷データを処理する際には当該印刷データをいくつかのファイルに分割して印刷装置に対して出力する。この場合、偶然一番最後の出力データが上記所定態様データのビット数に満たないものであることもあり得る。そこで、分割して出力されるデータの後尾から所定サイズのデータを格納しておけば、当該格納データと一番最後の出力データとを使用して所定態様データのビット数分のデータを参照することが可能になる。ここで所定サイズとは、上記スプーラが分割して出力するファイルの最大のデータサイズよりも小さいサイズである。さらに、このように参照する所定態様データは種々のものが考えられるが、その好適な一例として、通常ドライバによってスプールデータの最後尾に付与される印刷ジョブの終了を示すデータを使用することができる。
【0011】
また、このように転送データ中において所定態様のデータの有無を検出し、当該検出結果に応じて何らかの処理を実行する手法は、上述の印刷装置における排紙処理に限られず種々のものにて採用可能である。そこで、中間転送データ中に含まれうる所定態様のデータを識別するためのデータ識別プログラムを記録した媒体であって、中間転送データを取得する中間転送データ取得機能と、同中間転送データ取得機能が取得した中間転送データ中の所定位置を参照する中間転送データ参照機能と、同中間転送データ参照機能が参照する所定位置のデータが所定態様のデータであるか否かを判別するデータ態様判別機能とをコンピュータに実現させる構成も考えられる
【0012】
上記のように構成すると、中間転送データ中に含まれうる所定態様のデータを識別する。すなわち、中間転送データを取得して当該所定データが記載されうる所定位置を参照し、当該位置に所定態様のデータがあるか否かを判別する。この結果、転送データをすべてスキャンすることなく所定態様のデータを発見することが可能になり、当該所定態様のデータに基づいて何らかの処理を実行する場合の処理が非常に簡単になり、その処理も高速になる。
【0013】
むろん、以上述べてきた記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。また、一次複製品、二次複製品などの複製段階については全く問う余地無く同等である。上記媒体とは異なるが、供給方法として通信回線を利用して行なう場合であれば通信回線が伝送媒体となって本発明が利用されることになる。
さらに、一部がソフトウェアであって、一部がハードウェアで実現されている場合においても発明の思想において全く異なるものではなく、一部を記録媒体上に記憶しておいて必要に応じて適宜読み込まれるような形態のものとしてあってもよい。
【0014】
このように、スプーラが出力するスプールデータ中の後尾データを参照して所定態様のデータの有無を検出する手法は実体のあるコンピュータおいて実現され、その意味で本発明をそのような装置としても適用可能であることは容易に理解できる。このため、請求項〜請求項にかかる発明においても、基本的には同様の作用となる。むろん、このような装置は単独で実施される場合もあるし、ある機器に組み込まれた状態で他の方法とともに実施されることもあるなど、発明の思想としてはこれに限らず、各種の態様を含むものであって、適宜、変更可能である。
【0015】
また、このような用紙排出プログラムは、かかる制御に従って処理を進めていく上でその根底にはその手順に発明が存在するということは当然であり、方法としても適用可能であることは容易に理解できる。このため、請求項〜請求項12にかかる発明においても、基本的には同様の作用となる。すなわち、必ずしも実体のある媒体などに限らず、その方法としても有効であることに相違はない。
【0016】
【発明の効果】
以上説明したように請求項1、請求項、請求項にかかる発明によれば、印刷ジョブがスプーラによってキャンセルされた場合でも的確に印刷用紙を排出させることができる。
また、請求項2、請求項、請求項10にかかる発明によれば、簡単に所定態様のデータの有無を検出することができる。
さらに、請求項3、請求項、請求項11にかかる発明によれば、確実に所定態様のデータの有無を検出することができる。
さらに、請求項4、請求項、請求項12にかかる発明によれば、簡易な構成によりスプーラによるキャンセル時の処理を行うことができる
【0017】
【発明の実施の形態】
以下、図面にもとづいて本発明の実施形態を説明する。
図1はコンピュータに周辺機器として印刷装置が接続されている状態の概略ハードウェア構成を示しており、図2は本発明がコンピュータにおいて複数のモジュールからなる用紙排出プログラムとして実現された場合における概略構成図を示している。
【0018】
まず、図1に示す概略ハードウェア構成について説明する。コンピュータ10は演算処理の中枢をなすCPU11を備えており、このCPU11はシステムバス12を介してBIOSなどの記載されたROM13やRAM14にアクセス可能となっている。また、システムバス12には外部記憶装置としてのハードディスクドライブ15とフロッピーディスクドライブ16とCD−ROMドライブ17とが接続されており、ハードディスクドライブ15に記憶されたOS20やアプリケーションプログラム(APL)50がRAM14に転送され、CPU11はROM13とRAM14に適宜アクセスしてソフトウェアを実行する。すなわち、RAM14を一時的なワークエリアとして種々のプログラムを実行する。
【0019】
シリアル通信用I/O19aにはキーボード41やマウス42の操作用入力機器が接続され、図示しないビデオボードを介して表示用のディスプレイ18も接続されている。さらに、印刷装置30とはパラレル通信用I/O19bを介して接続可能となっている。また、本コンピュータ10の構成は簡略化して説明しているが、パーソナルコンピュータとして一般的な構成を有するものを採用することができる。むろん、本発明が適用されるコンピュータはパーソナルコンピュータに限定されるものではない。この実施例はいわゆるデスクトップ型コンピュータであるが、ノート型であるとか、モバイル対応のものであっても良い。また、コンピュータ10と印刷装置30との接続インタフェースも上記パラレル通信用I/O19bに限る必要はなくUSB接続やSCSI接続等種々の接続態様を採用可能であるし、今後開発されるいかなる接続態様であっても同様である。
【0020】
この例では各プログラムの類はハードディスクドライブ15に記憶されているが、記録媒体はこれに限定されるものではない。例えば、フロッピーディスク16aであるとか、CD−ROM17aであってもよい。これらの記録媒体に記録されたプログラムはフロッピーディスクドライブ16やCD−ROMドライブ17を介してコンピュータ10にて読み込まれ、ハードディスクドライブ15にインストールされる。そして、ハードディスクドライブ15を介してRAM14上に読み込まれてコンピュータを制御することになる。
【0021】
また、記録媒体はこれに限らず、光磁気ディスクなどであってもよい。さらに、半導体デバイスとしてフラッシュカードなどの不揮発性メモリなどを利用することも可能であるし、モデムや通信回線を介して外部のファイルサーバにアクセスしてダウンロードする場合には通信回線が伝送媒体となって本発明が利用される。印刷装置30は図示しないCPU,ファームウェア等を備えており、当該ファームウェアに記載されたプログラムに従って上記コンピュータ10から送信される印刷データを所定のI/Oを介して受信する。そして、印刷装置30では当該データに基づいて所定のモータでヘッドや印刷用紙搬送機構を駆動しつつ印刷を実行する。
【0022】
一方、本実施形態にかかるコンピュータ10では、プリンタドライバ(PRTDRV)21とスプーラ22とランゲージモニタ23とがOS20に組み込まれている。図2に示すように、APL50において利用者は上記キーボード41やマウス42を介して文書や図面等を作成し、印刷装置30にて印刷を実行するための指示を出すことが可能である。PRTDRV21は同APL50からの制御信号によってAPL50の扱うデータを印刷用データに変換する処理等を担い、印刷データはスプーラ22に対して出力される。また、PRTDRV21はこの印刷データの出力時にデータの最後尾に「n」ビットで印刷ジョブの終了を示すコマンドデータを付加するようになっている。
【0023】
スプーラ22はPRTDRV21から入力される印刷データを上記ハードディスクドライブ15にスプールするようになっており、さらに当該スプールデータは同スプーラ22によって所定の容量毎に分割され、各分割データ毎に上記ランゲージモニタ23に渡される。ランゲージモニタ23は上記パラレル通信用I/O19bを介して上記印刷装置30に対して受領分割データを出力するようになっている。すなわち、スプーラ22とランゲージモニタ23とが連携して、上記印刷装置30のの印刷進捗状況に応じて印刷データを出力するようになっている。
【0024】
より具体的には、ランゲージモニタ23にはStartDocPort関数,WritePort関数23a,EndDocPort関数23b等種々の関数が備えられており、スプーラ22がその処理に応じて適切な関数を実行することによって印刷処理が進行する。印刷開始時にはOpenPort関数とStartDocPort関数とが実行され、上記PRTDRV21の処理対象である印刷装置30がその装置名やポート名で指定されるなどして、上記パラレル通信用I/O19bを介する双方向通信可能状態が確保される。
【0025】
スプーラ22がランゲージモニタ23に対して上記分割データを出力する際にはWritePort関数23aが実行されるようになっている。例えば、一回の印刷ジョブにかかる印刷データを4つに分割して出力する際には、当該WritePort関数23aが4回実行され、ランゲージモニタ23はかかる分割データ毎にパラレル通信用I/O19bを介して印刷装置30に対してデータを送信する。また、本実施形態にかかるWritePort関数23aにおいては上記各分割データの後尾の「n」ビットのデータをセーブデータとして上記RAM14に格納するようになっている。尚、分割して入力されるデータが「n」ビットに満たないときは、後述するように印刷データ全体として後ろから「n」ビットのデータをセーブデータとして確保する。
【0026】
印刷ジョブの終了時およびスプーラ22における印刷ジョブのキャンセル時には上記ランゲージモニタ23においてはEndDocPort関数23bとClosePort関数とが実行され、上記パラレル通信用I/O19bの解放等の処理がなされる。EndDocPort関数23bにおいては上記セーブデータが上記印刷ジョブの終了を示すコマンドデータと一致するか否かを判別するようになっており、両者が一致しないときにパラレル通信用I/O19bを介して印刷用紙排出のためのリセットコマンドを出力させる。
【0027】
すなわち、EndDocPort関数23bがスプーラ22によるキャンセル時に起動された場合には、スプーラ22はデータの送信を途中で中断するので印刷ジョブの終了を示すコマンドデータがランゲージモニタ23に入力されず、当該コマンドを印刷装置30に出力することができない。この場合は、上記セーブデータが上記印刷ジョブの終了を示すコマンドデータと一致しないので、リセットコマンドを出力させて印刷用紙を排出させる。一方、EndDocPort関数23bが印刷ジョブの終了時に起動された場合には、上記セーブデータが上記印刷ジョブの終了を示すコマンドデータと一致するので、リセットコマンドを出力させることはない。
【0028】
図3はかかる構成において上記WritePort関数23aが実行する上記セーブデータにかかる処理のフローを示している。ここで、上記分割データはスプーラ22によって所定の容量に分けられるものであり、最後に入力される分割データの前までは一つの印刷データについて等容量である。しかし、印刷データは常に等容量に分割できるわけではないので、等分割できない部分は最後の分割データで調整するようになっている。また、スプーラ22によって途中で印刷ジョブがキャンセルされたときにはデータの送信は途中で中断される。従って、最後に入力されるデータあるいはスプーラ22がキャンセルした時点でのデータに関してはそれ以前の分割データと等容量になるとは限らない。
【0029】
そこで、以降はいずれの場合であっても上記WritePort関数23aに実際に入力される各データをバッファデータと呼ぶことにし、そのサイズを「m」ビットとする。同図の説明において同バッファデータの後ろに[x]と付し、バッファデータが最初から何番目のビットのものかを示すものとしてある。従って、バッファデータ[x]という表記において当該「x」は「1〜m」の整数である。また、上記セーブデータの後ろにも同様に[x]と付してあり、当該セーブデータが最初から何番目のものかを示し、セーブデータ[x]という表記において当該「x」は「1〜n」の整数である。
【0030】
本WritePort関数23aは、上記バッファデータとそのサイズ「m」とをパラメタとして付与されつつ起動されるようになっており、図3に示すフローにおいては、分割データが上述の「n」ビットに満たない場合も含めて後にEndDocPort関数23bで適正な判別が行えるようにセーブデータを確保するための処理を行っている。このためにまず、ステップS100では上記分割データサイズ「m」が上記印刷ジョブの終了を示すコマンドサイズ「n」より小さいか否かを判別する。
【0031】
同ステップS100にてバッファデータサイズ「m」が上記印刷ジョブの終了を示すコマンドサイズ「n」より小さいと判別されないときには、ステップS110〜S116の処理によって上記バッファデータの後尾「n」ビットのデータをセーブデータとして上記RAM14に格納する。具体的には、ステップS110にて当該処理に使用するカウンタ「i」に「1」を代入して初期化し、ステップS112にてセーブデータ[i]にバッファデータ[m−n+i]を代入する。
【0032】
ここで、バッファデータの「m−n+1」番目というのは当該バッファデータの後尾「n」ビットの先頭である。従って、上記ステップS112の処理によってセーブデータ[i]の先頭がバッファデータの後尾「n」ビットの先頭になる。
【0033】
ステップS114ではカウンタ「i」をインクリメントし、ステップS116にてカウンタ「i」が終了コマンドサイズ「n」より大きいか否かを判別する。そして、同ステップS116にてカウンタ「i」が終了コマンドサイズ「n」より大きいと判別されるまでステップS112以降の処理を繰り返す。すなわち、セーブデータ[1]〜[n]までのすべてに対し、バッファデータの後尾データを格納する。
【0034】
上記ステップS100にてバッファデータサイズ「m」が上記印刷ジョブの終了を示すコマンドサイズ「n」より小さいと判別された時には、ステップS120〜S136の処理によって、前バッファデータの後尾と現バッファデータとを併せて正味「n」ビット分のセーブデータを確保する。ここで、前バッファデータとは、上記各分割データの処理を実行するためにWritePort関数23aが複数回起動されるが、現在起動されているWritePort関数23aの直前に起動されていたものにおけるバッファデータを意味している。
【0035】
具体的には、ステップS120にて当該処理に使用するカウンタ「i」に「1」を代入して初期化し、ステップS122にてセーブデータ[i]に前セーブデータ[m+i]を代入する。前回のWritePort関数23aによって格納された前セーブデータ[i]は「n」ビットである。従って、セーブデータの先頭は前セーブデータの「m+1」番目である。
【0036】
上記ステップS122における処理の後ステップS124にてカウンタ「i」をインクリメントし、ステップS126にて同カウンタ「i」が「n−m」より大きいか否かを判別する。そして、同ステップS126にてカウンタ「i」が「n−m」より大きいと判別されるまで上記ステップS122〜ステップS126までの処理を繰り返す。この結果、上記前セーブデータ[m+1]〜[n]までがセーブデータ[1]〜[n−m]までとして新たに確保される。
【0037】
さらに、ステップS130にて当該処理に使用するカウンタ「i」に再び「1」を代入して初期化し、ステップS132にてセーブデータ[n−m+i]に現バッファデータ[i]を代入する。すなわち、上述のステップS122〜ステップS126にて生成したセーブデータ[1]〜[n−m]の次に現バッファデータの先頭を対応させて代入する。ステップS134ではカウンタ「i」をインクリメントし、ステップS136にて同カウンタ「i」が「m」より大きいか否かを判別する。
【0038】
そして、同ステップS136にてカウンタ「i」が「m」より大きいと判別されるまで上記ステップS132〜ステップS136までの処理を繰り返す。この結果、上記バッファデータ[1]〜[m]までがセーブデータ[n−m+1]〜[n]までとして新たに確保される。すなわち、上述の処理によって前セーブデータの後尾の必要ビット数分と現バッファデータとをあわせたものが現セーブデータとして確保され、結果としてセーブデータが「n」ビットになる。
【0039】
図4はかかる構成において上記EndDocPort関数23bが実行する上記セーブデータと終了コマンドとの比較にかかる処理のフローを示している。ステップS200では、上記RAM14に格納されているセーブデータを参照し、当該ランゲージモニタがデフォルトで有している上記終了コマンドデータと上記参照データとを比較する。同ステップS200にて両者が一致すると判別されたときには、終了コマンドデータ等を付すなどの処理を特に実行することはなく、通常のEndDocPort関数23bの機能を実行する。
【0040】
上記ステップS200にて両者が一致すると判別されないときには、ステップS210にてパラレル通信用I/O19bを介して印刷用紙排出のためのリセットコマンドを出力させる。本EndDocPort関数23bが起動されるのは上述のように印刷ジョブの終了時およびスプーラ22における印刷ジョブのキャンセル時である。印刷ジョブの終了時には上述のWritePort関数23aの処理によってセーブデータが終了コマンドになっているので、EndDocPort関数23bにて何ら処理を行わなくても当該終了コマンドが上記印刷装置30に出力される。
【0041】
一方、スプーラ22における印刷ジョブのキャンセル時には印刷データが最後まで出力されず、上述のWritePort関数23aの処理によって取得したセーブデータは終了コマンドになっていない。しかし、ステップS210の処理によってリセットコマンドが印刷装置30に対して出力されるので、印刷装置30において印刷用紙の途中まで印字した段階で適切に当該印刷用紙が排出される。
【0042】
次に上記構成およびフローによって実現される印刷ジョブ処理の具体例を説明する。ここでは、スプーラ22にて印刷ジョブのキャンセルを実行した場合の例を示す。PRTDRV21は上記APL50にて印刷指示等がなされたときに、上記所定の処理を実行して当該処理データをひとまとまりの状態でスプーラ22に出力する。このとき、PRTDRV21は印刷データの後尾に終了コマンドを付している。
【0043】
同印刷データが与えられると同スプーラ22はこの印刷データをスプールするとともに所定の容量毎に分割し、これらを印刷データ列の順番通りに出力していく
【0044】
ランゲージモニタ23においては、スプーラ22が分割データを出力するたびに上記WritePort関数23aが実行される。本具体例においては、2番目の分割データの処理においてバッファデータサイズは終了コマンドサイズより大きいので上記ステップS100の判別によりバッファデータの後尾「n」ビットをセーブデータ[i]とする。尚、ランゲージモニタ23が取得した1番目と2番目の分割データは上記パラレル通信用I/O19bに対して出力されるので、上記印刷装置30においては、これら1番目と2番目の分割データに基づく印刷は実行される。
【0045】
上述のようにスプーラ22にて印刷ジョブのキャンセルが実行された場合には、ランゲージモニタ23にて上記EndDocPort関数23bが起動される。ここで、上記セーブデータは上記終了コマンドではないのでステップS200の判別を経てステップS210において上記リセットコマンドを出力させる。従って、印刷装置30においては上記1番目と2番目の分割データに基づく印刷が実行された後に印刷用紙が排出され、スプーラ22におけるキャンセル時において印刷装置30の印刷が途中で停止して印刷用紙が中途半端に送られたままになることはない。
【0046】
さらに、他の具体例として、スプーラ22によってキャンセルが実行されることなく最後まで印刷ジョブを実行し、かつ、分割データの最後が終了コマンドサイズに満たない場合を説明する。この場合、上述の例と同様にPRTDRV21が上記APL50にて印刷指示等がなされたときに上記所定の処理を実行し、当該処理データの後尾に終了コマンドを付しつつひとまとまりの状態でスプーラ22に出力する。
【0047】
同印刷データが与えられると同スプーラ22はこの印刷データをスプールするとともに所定の容量毎に分割し、これらを印刷データ列の順番通りに出力していくランゲージモニタ23においては、スプーラ22が分割データを出力するたびに上記WritePort関数23aが実行される。スプーラ22が入力された印刷データを4つに分割し、4番目の分割データが終了コマンドサイズに満たないような具体例においては、4番目の分割データの処理においてバッファデータサイズは終了コマンドサイズより小さいので上記ステップS100の判別により3番目の分割データのセーブデータを使用して、ステップS120〜S126の処理において必要なビット数のデータをセーブデータ[i]の先頭から順に格納し、ステップS130〜S136の処理において4番目のバッファデータを加えてセーブデータ[i]とする。
【0048】
本具体例においては、スプーラ22においてキャンセルが実行されることなく印刷ジョブの処理が進行するので、ランゲージモニタ23は分割データの1番目から4番目までのすべてを上記パラレル通信用I/O19bに出力する。従って、印刷装置30では印刷用紙の排出処理を含めて適正に印刷を実行する。また、スプーラ22が4番目の分割データまでのすべてを出力すると、ランゲージモニタ23においてはEndDocPort関数23bが実行されるが、同EndDocPort関数23bのステップS200ではセーブデータが終了コマンドと一致すると判別するので、上記リセットコマンドを出力することはない。
【0049】
このように、本発明においてはスプーラによるキャンセル時にスプールデータ中の後尾データを参照し、当該参照後尾データに所定態様のデータが検出されなかったときに、印刷用紙に対して用紙排出コマンドを出力する。従って、スプーラによる印刷キャンセルがなされたときも利用者の手を煩わすことなくプリンタに印刷用紙を排出させることができる。
【図面の簡単な説明】
【図1】 コンピュータに周辺機器として印刷装置が接続されている状態の概略ハードウェア構成の概略図である。
【図2】 用紙排出プログラムのモジュールの概略構成図である。
【図3】 WritePort関数が実行するセーブデータにかかる処理のフローチャートである。
【図4】 EndDocPort関数が実行するセーブデータと終了コマンドとの比較にかかる処理のフローチャートである。
【符号の説明】
10…コンピュータ
11…CPU
12…システムバス
13…ROM
14…RAM
15…ハードディスクドライブ
16…フロッピーディスクドライブ
16a…フロッピーディスク
17…CD−ROMドライブ
17a…CD−ROM
18…ディスプレイ
19a…シリアル通信用I/O
19b…パラレル通信用I/O
20…OS
21…PRTDRV
22…スプーラ
23…ランゲージモニタ
23a…WritePort関数
23b…EndDocPort関数
30…印刷装置
41…キーボード
42…マウス
50…APL
[0001]
BACKGROUND OF THE INVENTION
  The present invention relates to a medium on which a paper discharge program is recorded, a medium on which a data identification program is recorded, a paper discharge apparatus, a data identification apparatus, a paper discharge method, and a data identification method.
[0002]
[Prior art]
  In order to print a document, a drawing, or the like from a computer using a printer, a driver, a spooler, a language monitor, and the like are usually transferred on the computer to the printer. That is, the spooler temporarily spools the print data generated by the driver, and the language monitor monitors the status of the printer and supplies an appropriate amount of data to the printer at an appropriate timing.
[0003]
[Problems to be solved by the invention]
  The conventional printing described above has the following problems. In other words, when a user cancels printing, if the driver cancels printing, the driver can output a command for canceling processing in the printer, but the user prints after data is transferred to the spooler. When canceling is canceled, the printer may not be able to perform an appropriate cancellation process, and the printing paper may not be discharged. In such a case, it may be possible to discharge the printing paper with the discharge button provided in the printer itself. However, such a discharge cannot be performed with a low-cost printer that does not have the discharge button. It is necessary to open the printer cover and remove the printing paper.
[0004]
  The present invention has been made in view of the above problems, and a medium on which is recorded a paper discharge program capable of causing the printer to discharge print paper without bothering the user even when printing cancellation by the spooler is made, It is an object of the present invention to provide a medium on which a data identification program is recorded, a paper ejection device, a data identification device, a paper ejection method, and a data identification method.
[0005]
[Means for Solving the Problems]
  In order to achieve the above object, the invention according to claim 1 is a medium on which is recorded a paper discharge program for discharging print paper by a printing apparatus when a print job is canceled by the spooler, and the spooler outputs the medium. The tail in spool dataFrom the predetermined sizeDataStoreThis function is activated when the spool data is referenced by the spooler and the spooler is canceled by the spooler.StoreddataSeeA data detection function for detecting the presence / absence of data in a predetermined mode, and a paper discharge command output function for outputting a paper discharge command to the printing apparatus when data in the predetermined mode is not detected by the data detection function To realizeThe predetermined size is smaller than the maximum data size output by the spooler.As a configuration.
[0006]
  In the invention according to claim 1 configured as described above, the data detection function is activated when a print job is canceled by the spooler, and data in a predetermined mode is added to the tail data in the spool data at the time of cancellation. Detect if there is any. Then, when no data of a predetermined mode is detected, a paper discharge command is output to the printing apparatus. In other words, in order to end the print job, the normal driver adds some data indicating the end of the print data in a predetermined manner at the end of the spool data, and when the printing is completed normally, the paper is properly discharged by the predetermined state data. Is done.
[0007]
  However, when the spooler cancels the print job, the transmission of the spool data stops halfway, and the data in the predetermined mode is not transmitted to the printing apparatus. Therefore, a paper discharge command is output when the predetermined mode data is not detected by the data detection function. Accordingly, even when canceling by such a spooler, the printing apparatus does not discharge the paper and does not remain stopped. Note that this data detection function is activated when the spooler cancels, so if the spooler happens to be running and the data is not sent for a while, the paper discharge command will not be output. Absent.
[0008]
  In addition, as described above, various modes are conceivable for configuring the data detection function to be executed at the time of cancellation by the spooler. For example, EndDocPort is configured as a module such as a language monitor and executed at the time of cancellation by the spooler. It can be realized as part of function processing.
[0009]
  As described above, in order to detect the presence / absence of data in a predetermined mode by the data detection function, the spool data reference function uses the tail of the spool data.From the predetermined sizeIt only has to be able to refer to the data. As its configuration, for example, it is possible to refer to data of the number of bits necessary for detecting the predetermined mode data. In this case, the tailFrom the predetermined sizeIt is preferable that data can be stored.
[0010]
  In other words, the spooler normally divides the print data into several files and outputs them to the printing apparatus when processing large print data. In this case, the last output data by chance may be less than the number of bits of the predetermined mode data. Therefore, the tail of the data that is divided and outputFrom the predetermined sizeIf the data is stored, it is possible to refer to the data corresponding to the number of bits of the predetermined mode data using the stored data and the last output data.Here, the predetermined size is a size smaller than the maximum data size of the file divided and output by the spooler.Further, there are various predetermined mode data to be referred to in this way. As a suitable example, data indicating the end of a print job given to the end of spool data by a normal driver can be used. .
[0011]
  In addition, the method for detecting the presence or absence of data in a predetermined mode in the transfer data and executing some processing according to the detection result is not limited to the paper discharge process in the printing apparatus described above, and is adopted in various methods. Is possible. Thereso,A medium in which a data identification program for identifying data in a predetermined mode that can be included in intermediate transfer data is recorded, and acquired by the intermediate transfer data acquisition function for acquiring intermediate transfer data and the intermediate transfer data acquisition function An intermediate transfer data reference function for referring to a predetermined position in intermediate transfer data, and a data mode determination function for determining whether or not data at a predetermined position referred to by the intermediate transfer data reference function is data in a predetermined mode To achieveCan also be considered.
[0012]
  Configured as aboveThenThe data of a predetermined mode that can be included in the intermediate transfer data is identified. That is, the intermediate transfer data is acquired and a predetermined position where the predetermined data can be described is referred to, and it is determined whether or not there is data in a predetermined mode at the position. As a result, it becomes possible to find data in a predetermined mode without scanning all transfer data, and the processing when executing some processing based on the data in the predetermined mode becomes very simple. Become faster.
[0013]
  Of course, the recording medium described above may be a magnetic recording medium, a magneto-optical recording medium, or any recording medium that will be developed in the future. In addition, the duplication stages such as the primary duplication product and the secondary duplication product are equivalent without any question. Although different from the above medium, the communication line is used as a transmission medium when the communication method is used as a supply method, and the present invention is used.
  Further, even when a part is software and a part is realized by hardware, the idea of the invention is not completely different, and a part is stored on a recording medium and is appropriately changed as necessary. It may be in the form of being read.
[0014]
  As described above, the method for detecting the presence or absence of data in a predetermined mode by referring to the tail data in the spool data output from the spooler is realized in a substantial computer. In this sense, the present invention can be used as such a device. It can be easily understood that it is applicable. For this reason, the claim5~ Claim8In the invention according to this embodiment, the same operation is basically performed. Of course, such an apparatus may be implemented alone, or may be implemented together with other methods in a state of being incorporated in a certain device. Can be changed as appropriate.
[0015]
  In addition, it is obvious that such a paper discharge program has an invention in its procedure at the base of proceeding with processing according to such control, and it is easily understood that it can be applied as a method. it can. For this reason, the claim9~ Claim12In the invention according to this embodiment, the same operation is basically performed. In other words, the present invention is not necessarily limited to a tangible medium, and there is no difference that the method is effective.
[0016]
【The invention's effect】
  Claim 1 and claim as described above5, Claims9According to the invention, even when the print job is canceled by the spooler, the print paper can be accurately discharged.
  Claim 2 and Claim6, Claims10According to the invention, it is possible to easily detect the presence or absence of data in a predetermined mode.
  Furthermore, claim 3 and claim7, Claims11According to the invention, it is possible to reliably detect the presence or absence of data in a predetermined mode.
  Furthermore, Claim 4, Claim8, Claims12According to the invention, it is possible to perform processing at the time of cancellation by the spooler with a simple configuration..
[0017]
DETAILED DESCRIPTION OF THE INVENTION
  Hereinafter, embodiments of the present invention will be described with reference to the drawings.
  FIG. 1 shows a schematic hardware configuration in a state where a printing apparatus is connected as a peripheral device to a computer, and FIG. 2 shows a schematic configuration when the present invention is realized as a paper discharge program composed of a plurality of modules in the computer. The figure is shown.
[0018]
  First, the schematic hardware configuration shown in FIG. 1 will be described. The computer 10 includes a CPU 11 serving as the center of arithmetic processing. The CPU 11 can access a ROM 13 and a RAM 14 such as a BIOS via a system bus 12. Further, a hard disk drive 15, a floppy disk drive 16 and a CD-ROM drive 17 as external storage devices are connected to the system bus 12, and an OS 20 and an application program (APL) 50 stored in the hard disk drive 15 are stored in the RAM 14. The CPU 11 appropriately accesses the ROM 13 and RAM 14 to execute the software. That is, various programs are executed using the RAM 14 as a temporary work area.
[0019]
  The serial communication I / O 19a is connected to input devices for operating a keyboard 41 and a mouse 42, and a display 18 for display is also connected via a video board (not shown). Further, it can be connected to the printing apparatus 30 via the parallel communication I / O 19b. Further, although the configuration of the computer 10 has been described in a simplified manner, a computer having a general configuration as a personal computer can be employed. Of course, the computer to which the present invention is applied is not limited to a personal computer. Although this embodiment is a so-called desktop computer, it may be a notebook computer or a mobile computer. Further, the connection interface between the computer 10 and the printing apparatus 30 is not limited to the parallel communication I / O 19b, and various connection modes such as USB connection and SCSI connection can be employed. It is the same even if there is.
[0020]
  In this example, each type of program is stored in the hard disk drive 15, but the recording medium is not limited to this. For example, it may be a floppy disk 16a or a CD-ROM 17a. The programs recorded on these recording media are read by the computer 10 via the floppy disk drive 16 and the CD-ROM drive 17 and installed in the hard disk drive 15. Then, it is read into the RAM 14 via the hard disk drive 15 to control the computer.
[0021]
  The recording medium is not limited to this, and may be a magneto-optical disk or the like. In addition, a non-volatile memory such as a flash card can be used as a semiconductor device, and the communication line becomes a transmission medium when accessing and downloading an external file server via a modem or communication line. The present invention is utilized. The printing apparatus 30 includes a CPU, firmware, and the like (not shown), and receives print data transmitted from the computer 10 via a predetermined I / O according to a program described in the firmware. The printing apparatus 30 executes printing based on the data while driving the head and the printing paper transport mechanism with a predetermined motor.
[0022]
  on the other hand,In the computer 10 according to the present embodiment, a printer driver (PRTDRV) 21, a spooler 22, and a language monitor 23 are incorporated in the OS 20. As shown in FIG.In the APL 50, a user can create a document, a drawing, or the like via the keyboard 41 or the mouse 42 and issue an instruction for executing printing on the printing apparatus 30. The PRTDRV 21 performs processing for converting data handled by the APL 50 into print data in accordance with a control signal from the APL 50, and the print data is output to the spooler 22. The PRTDRV 21 adds command data indicating the end of the print job with an “n” bit at the end of the data when outputting the print data.
[0023]
  The spooler 22 spools print data input from the PRTDRV 21 to the hard disk drive 15, and the spool data is further divided into predetermined capacities by the spooler 22, and the language monitor 23 is divided for each divided data. Passed to. The language monitor 23 outputs the received divided data to the printing apparatus 30 via the parallel communication I / O 19b. That is, the spooler 22 and the language monitor 23 cooperate to output print data in accordance with the printing progress status of the printing apparatus 30.
[0024]
  More specifically, the language monitor 23 is provided with various functions such as a StartDocPort function, a WritePort function 23a, an EndDocPort function 23b, and the spooler 22 executes an appropriate function in accordance with the processing, thereby performing printing processing. proceed. At the start of printing, the OpenPort function and the StartDocPort function are executed, and the two-way communication via the parallel communication I / O 19b is performed, for example, the printing device 30 that is the processing target of the PRTDRV 21 is designated by its device name or port name. A possible state is secured.
[0025]
  When the spooler 22 outputs the divided data to the language monitor 23, the Write Port function 23a is executed. For example, when the print data related to one print job is divided into four and output, the write port function 23a is executed four times, and the language monitor 23 sets the parallel communication I / O 19b for each divided data. Data is transmitted to the printing apparatus 30 via the network. In the Write Port function 23a according to the present embodiment, the last “n” bits of the divided data are stored in the RAM 14 as save data. If the divided input data is less than “n” bits, “n” bits of data are secured as save data from the back as the entire print data as will be described later.
[0026]
  At the end of the print job and when the spooler 22 cancels the print job, the language monitor 23 executes the EndDocPort function 23b and the ClosePort function, and performs processing such as releasing the parallel communication I / O 19b. In the EndDocPort function 23b, it is determined whether or not the save data matches the command data indicating the end of the print job. When the two do not match, the print paper is sent via the parallel communication I / O 19b. Output a reset command for ejection.
[0027]
  That is, when the EndDocPort function 23b is activated at the time of cancellation by the spooler 22, the spooler 22 interrupts the transmission of data, so that command data indicating the end of the print job is not input to the language monitor 23, and the command It cannot be output to the printing apparatus 30. In this case, since the save data does not match the command data indicating the end of the print job, a reset command is output and the printing paper is discharged. On the other hand, when the EndDocPort function 23b is activated at the end of the print job, the save data matches the command data indicating the end of the print job, so that no reset command is output.
[0028]
  FIG. 3 shows a flow of processing relating to the save data executed by the Write Port function 23a in such a configuration. Here, the divided data is divided into predetermined capacities by the spooler 22 and is equal in capacity for one print data before the last input divided data. However, since the print data cannot always be divided into equal volumes, the portion that cannot be divided equally is adjusted with the last divided data. Further, when the print job is canceled halfway by the spooler 22, data transmission is interrupted halfway. Therefore, the last input data or the data when the spooler 22 is canceled does not always have the same capacity as the previous divided data.
[0029]
  Therefore, in any case, each data actually input to the Write Port function 23a is referred to as buffer data, and its size is “m” bits. In the description of the figure, [x] is appended to the end of the buffer data to indicate the number of bits from the beginning of the buffer data. Therefore, in the notation of buffer data [x], “x” is an integer from “1 to m”. Similarly, [x] is also added to the end of the save data, indicating the number of the save data from the beginning, and in the notation of save data [x], the “x” is “1 to 1”. n "is an integer.
[0030]
  The Write Port function 23a is activated while being given the above buffer data and its size “m” as parameters, and in the flow shown in FIG. 3, the divided data satisfies the above “n” bits. A process for securing save data is performed so that appropriate determination can be performed later by the EndDocPort function 23b, including the case where there is no data. For this purpose, first, in step S100, it is determined whether or not the divided data size “m” is smaller than the command size “n” indicating the end of the print job.
[0031]
  If it is not determined in step S100 that the buffer data size “m” is smaller than the command size “n” indicating the end of the print job, the last “n” bits of the buffer data are obtained by the processing in steps S110 to S116. It is stored in the RAM 14 as save data. Specifically, in step S110, "1" is substituted for initialization to the counter "i" used for the processing, and buffer data [mn-i] is substituted for save data [i] in step S112.
[0032]
  here,The “mn + 1” th of the buffer data is the head of the last “n” bit of the buffer data. Therefore, the head of the save data [i] becomes the head of the tail “n” bit of the buffer data by the process of step S112.
[0033]
  In step S114, the counter “i” is incremented, and in step S116, it is determined whether or not the counter “i” is larger than the end command size “n”. Then, the processing from step S112 is repeated until it is determined in step S116 that the counter “i” is larger than the end command size “n”. That is, the tail data of the buffer data is stored for all the save data [1] to [n].
[0034]
  When it is determined in step S100 that the buffer data size “m” is smaller than the command size “n” indicating the end of the print job, the processing of steps S120 to S136 performs the tail of the previous buffer data, the current buffer data, In addition, save data for net “n” bits is secured. Here, the previous buffer data means that the write port function 23a is activated a plurality of times in order to execute the processing of each of the divided data, but the buffer data in the data activated immediately before the currently activated write port function 23a. Means.
[0035]
  Specifically, in step S120, "1" is substituted and initialized in the counter "i" used for the processing, and in step S122, the previous save data [m + i] is substituted in save data [i].. in frontThe previous save data [i] stored by the write port function 23a of the number of times is “n” bits. Therefore, the top of the save data is the “m + 1” th of the previous save data.
[0036]
  After the process in step S122, the counter “i” is incremented in step S124, and in step S126, it is determined whether or not the counter “i” is greater than “nm”. Then, the processing from step S122 to step S126 is repeated until it is determined in step S126 that the counter “i” is larger than “nm”. As a result, the previous saved data [m + 1] to [n] are newly secured as saved data [1] to [nm].
[0037]
  Further, in step S130, "1" is again substituted and initialized for the counter "i" used for the processing, and in step S132, the current buffer data [i] is substituted for the save data [n-m + i]. That is, after the save data [1] to [nm] generated in the above-described steps S122 to S126, the head of the current buffer data is substituted and assigned. In step S134, the counter “i” is incremented, and in step S136, it is determined whether or not the counter “i” is greater than “m”.
[0038]
  Then, the processing from step S132 to step S136 is repeated until it is determined in step S136 that the counter “i” is larger than “m”. As a result, the buffer data [1] to [m] are newly secured as save data [n−m + 1] to [n]. That is, the above-described processing secures the current buffer data as a sum of the necessary number of bits at the end of the previous save data and the current buffer data. As a result, the save data becomes “n” bits.
[0039]
  FIG.Shows the flow of processing relating to the comparison between the save data and the end command executed by the EndDocPort function 23b in such a configuration. In step S200, the save data stored in the RAM 14 is referred to, and the end command data that the language monitor has by default is compared with the reference data. If it is determined in step S200 that the two match, processing such as attaching end command data or the like is not particularly executed, and the function of the normal EndDocPort function 23b is executed.
[0040]
  If it is not determined in step S200 that the two match, a reset command for discharging the printing paper is output via the parallel communication I / O 19b in step S210. The EndDocPort function 23b is activated when the print job ends and when the print job is canceled in the spooler 22 as described above. At the end of the print job, since the save data is an end command by the processing of the above-described Write Port function 23a, the end command is output to the printing apparatus 30 without performing any processing in the EndDocPort function 23b.
[0041]
  On the other hand, when the print job is canceled in the spooler 22, the print data is not output to the end, and the save data acquired by the processing of the above-described Write Port function 23a is not an end command. However, since the reset command is output to the printing apparatus 30 by the processing in step S210, the printing paper is appropriately discharged when the printing apparatus 30 prints halfway through the printing paper.
[0042]
  Next, a specific example of print job processing realized by the above configuration and flow will be described.Here, an example in which the print job is canceled by the spooler 22 is shown.When a print instruction or the like is given by the APL 50, the PRTDRV 21 executes the predetermined processing and outputs the processing data to the spooler 22 in a collective state. At this time, the PRTDRV 21 attaches an end command to the end of the print data.
[0043]
  When the print data is given, the spooler 22 spools the print data and divides the print data into predetermined capacities, and outputs them in the order of the print data sequence..
[0044]
  In the language monitor 23, the write port function 23a is executed each time the spooler 22 outputs divided data. In this specific example, since the buffer data size is larger than the end command size in the processing of the second divided data, the tail “n” bit of the buffer data is set as the save data [i] by the determination in step S100. Since the first and second divided data acquired by the language monitor 23 are output to the parallel communication I / O 19b, the printing apparatus 30 is based on the first and second divided data. Printing is performed.
[0045]
  When the spooler 22 cancels the print job as described above, the EndDocPort function 23b is activated on the language monitor 23. Here, since the save data is not the end command, the reset command is output in step S210 after the determination in step S200. Accordingly, in the printing apparatus 30, the printing paper is discharged after the printing based on the first and second divided data is executed, and when the spooler 22 cancels, the printing of the printing apparatus 30 stops halfway and the printing paper is discharged. It never gets sent halfway.
[0046]
  Furthermore, as another specific exampleA case where the print job is executed to the end without being canceled by the spooler 22 and the end of the divided data is less than the end command size will be described. in this case,Similar to the above example, the PRTDRV 21 executes the predetermined processing when the APL 50 gives a print instruction or the like, and outputs to the spooler 22 in a bundled state with an end command added to the end of the processing data. .
[0047]
  When the print data is given, the spooler 22 spools the print data and divides the print data into predetermined capacities, and outputs them in the order of the print data sequence..In the language monitor 23, the write port function 23a is executed each time the spooler 22 outputs divided data. In a specific example in which the spooler 22 divides the input print data into four, and the fourth divided data is less than the end command size, the buffer data size in the fourth divided data processing is larger than the end command size. Since it is small, the save data of the third divided data is used by the discrimination in step S100, and the data of the number of bits necessary in the processing of steps S120 to S126 is stored in order from the head of the save data [i]. In the process of S136, the fourth buffer data is added to obtain save data [i].
[0048]
  In this specific example, since the print job process proceeds without canceling in the spooler 22, the language monitor 23 outputs all of the first to fourth divided data to the parallel communication I / O 19b. To do. Accordingly, the printing apparatus 30 properly executes printing including the printing paper discharge process. When the spooler 22 outputs all of the data up to the fourth divided data, the enddocport function 23b is executed in the language monitor 23. However, in step S200 of the enddocport function 23b, it is determined that the save data matches the end command. The reset command is not output.
[0049]
  As described above, in the present invention, the tail data in the spool data is referred to when canceling by the spooler, and a paper discharge command is output to the printing paper when data in a predetermined mode is not detected in the reference tail data. . Therefore, even when printing cancellation by the spooler is performed, the printer can discharge the printing paper without bothering the user.
[Brief description of the drawings]
FIG. 1 is a schematic diagram of a schematic hardware configuration in a state where a printing apparatus is connected as a peripheral device to a computer.
FIG. 2 is a schematic configuration diagram of a module of a paper discharge program.
FIG. 3 is a flowchart of processing related to save data executed by a WritePort function.
FIG. 4 is a flowchart of processing related to comparison between save data and an end command executed by an EndDocPort function.
[Explanation of symbols]
10 ... Computer
11 ... CPU
12 ... System bus
13 ... ROM
14 ... RAM
15. Hard disk drive
16. Floppy disk drive
16a ... floppy disk
17 ... CD-ROM drive
17a ... CD-ROM
18 ... Display
19a ... I / O for serial communication
19b ... I / O for parallel communication
20 ... OS
21 ... PRTDRV
22 ... Spooler
23 ... Language monitor
23a: WritePort function
23b ... EndDocPort function
30 ... Printing device
41 ... Keyboard
42 ... Mouse
50 ... APL

Claims (12)

印刷ジョブがスプーラによってキャンセルされたときに印刷装置にて印刷用紙を排出させる用紙排出プログラムを記録した媒体であって、
上記スプーラが出力するスプールデータ中の後尾から所定サイズのデータを格納するスプールデータ参照機能と、
上記スプーラによるキャンセル時に起動され、上記スプールデータ参照機能により格納されているデータを参照して所定態様のデータの有無を検出するデータ検出機能と、
同データ検出機能によって所定態様のデータが検出されなかったときに上記印刷装置に対して用紙排出コマンドを出力する用紙排出コマンド出力機能とをコンピュータに実現させ
上記所定サイズは、上記スプーラが出力する最大のデータサイズよりも小さいことを特徴とする用紙排出プログラムを記録した媒体。
A medium that records a paper discharge program that causes a printing device to discharge print paper when a print job is canceled by a spooler.
A spool data reference function for storing data of a predetermined size from the tail of the spool data output by the spooler;
Is started when cancellation by the spooler, and a data detecting function to detect the presence or absence of data in a predetermined manner with reference to the data stored Ri by the above spool data reference function,
Causing the computer to realize a paper discharge command output function for outputting a paper discharge command to the printing apparatus when data of a predetermined mode is not detected by the data detection function ;
The medium on which the paper discharge program is recorded , wherein the predetermined size is smaller than a maximum data size output by the spooler .
上記請求項1に記載の用紙排出プログラムを記録した媒体であって、
上記スプールデータ参照機能は、上記所定態様データの検出に必要なビット数のデータを参照することを特徴とする用紙排出プログラムを記録した媒体。
A medium on which the paper discharge program according to claim 1 is recorded,
A medium having a paper discharge program recorded thereon, wherein the spool data reference function refers to data having a number of bits necessary for detecting the predetermined mode data.
上記請求項1または請求項2のいずれかに記載の用紙排出プログラムを記録した媒体であって、
上記スプールデータ参照機能は上記格納されているデータを用いて、分割された上記所定態様のデータを復元可能であることを特徴とする用紙排出プログラムを記録した媒体。
A medium on which the paper discharge program according to claim 1 or 2 is recorded,
A medium on which a paper discharge program is recorded, wherein the spool data reference function can restore the divided data in the predetermined mode using the stored data .
上記請求項1〜請求項3のいずれかに記載の用紙排出プログラムを記録した媒体において、
上記データ検出機能は、印刷ジョブの終了を示すデータを検出することを特徴とする用紙排出プログラムを記録した媒体。
In the medium on which the paper discharge program according to any one of claims 1 to 3 is recorded,
A medium having a paper discharge program recorded thereon, wherein the data detection function detects data indicating the end of a print job.
印刷ジョブがスプーラによってキャンセルされたときに印刷装置にて印刷用紙を排出させる用紙排出装置であって、
上記スプーラが出力するスプールデータ中の後尾から所定サイズのデータを格納するスプールデータ参照手段と、
上記スプーラによるキャンセル時に起動され、上記スプールデータ参照手段により格納されているデータを参照して所定態様のデータの有無を検出するデータ検出手段と、
同データ検出手段によって所定態様のデータが検出されなかったときに上記印刷装置に対して用紙排出コマンドを出力する用紙排出コマンド出力手段とを有し、上記所定サイズは、上記スプーラが出力する最大のデータサイズよりも小さいことを特徴とする用紙排出装置。
A paper discharge device for discharging print paper in a printing device when a print job is canceled by a spooler;
Spool data reference means for storing data of a predetermined size from the tail in the spool data output by the spooler;
Is started when cancellation by the spooler, and a data detecting means for detecting the presence of data of a predetermined manner with reference to the data stored Ri by the the spool data reference unit,
Paper discharge command output means for outputting a paper discharge command to the printing apparatus when no data of a predetermined mode is detected by the data detection means, and the predetermined size is the maximum output by the spooler. A paper discharge device characterized by being smaller than the data size .
上記請求項に記載の用紙排出装置であって、
上記スプールデータ参照手段は、上記所定態様データの検出に必要なビット数のデータを参照することを特徴とする用紙排出装置。
The paper discharge device according to claim 5 ,
The paper discharge device, wherein the spool data reference means refers to data having a number of bits necessary for detecting the predetermined mode data.
上記請求項または請求項のいずれかに記載の用紙排出装置であって、
上記スプールデータ参照手段は上記格納されているデータを用いて、分割された上記所定態様のデータを復元可能であることを特徴とする用紙排出装置。
The paper discharge device according to any one of claims 5 and 6 ,
The paper discharge device according to claim 1, wherein the spool data reference means can restore the divided data in the predetermined mode by using the stored data .
上記請求項〜請求項のいずれかに記載の用紙排出装置において、
上記データ検出手段は、印刷ジョブの終了を示すデータを検出することを特徴とする用紙排出装置。
In the paper discharge apparatus according to any one of claims 5 to 7 ,
The paper discharge device, wherein the data detection means detects data indicating the end of a print job.
印刷ジョブがスプーラによってキャンセルされたときに印刷装置にて印刷用紙を排出させる用紙排出方法であって、
上記スプーラが出力するスプールデータ中の後尾から所定サイズのデータを格納するスプールデータ参照工程と、
上記スプーラによるキャンセル時に起動され、上記スプールデータ参照工程により格納されているデータを参照して所定態様のデータの有無を検出するデータ検出工程と、
同データ検出工程によって所定態様のデータが検出されなかったときに上記印刷装置に対して用紙排出コマンドを出力する用紙排出コマンド出力工程とを含み、
上記所定サイズは、上記スプーラが出力する最大のデータサイズよりも小さいことを特徴とする用紙排出方法。
A paper discharge method for discharging printing paper in a printing device when a print job is canceled by a spooler,
A spool data reference step of storing data of a predetermined size from the tail in the spool data output by the spooler;
Is started when cancellation by the spooler, and a data detector detecting the presence or absence of data in a predetermined manner with reference to the data stored Ri by the above spool data reference process,
A paper discharge command output step of outputting a paper discharge command to the printing apparatus when data of a predetermined mode is not detected by the data detection step ,
The paper discharge method according to claim 1, wherein the predetermined size is smaller than a maximum data size output by the spooler .
上記請求項に記載の用紙排出方法であって、
上記スプールデータ参照工程は、上記所定態様データの検出に必要なビット数のデータを参照することを特徴とする用紙排出方法。
The paper discharge method according to claim 9 , wherein
The spool data reference step refers to data of the number of bits necessary for detection of the predetermined mode data.
上記請求項または請求項10のいずれかに記載の用紙排出方法であって、
上記スプールデータ参照工程は上記格納されているデータを用いて、分割された上記所定態様のデータを復元可能であることを特徴と
する用紙排出方法。
The paper discharge method according to claim 9 or 10 , wherein:
The paper discharge method according to claim 1, wherein in the spool data reference step , the divided data in the predetermined mode can be restored using the stored data .
上記請求項〜請求項11のいずれかに記載の用紙排出方法において、
上記データ検出工程は、印刷ジョブの終了を示すデータを検出することを特徴とする用紙排出方法。
In the paper discharge method according to any one of claims 9 to 11 ,
The paper detection method, wherein the data detection step detects data indicating the end of a print job.
JP2000032739A 2000-02-04 2000-02-04 Medium recording paper discharge program, medium recording data identification program, paper discharge apparatus, data identification apparatus, paper discharge method, and data identification method Expired - Fee Related JP3904054B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000032739A JP3904054B2 (en) 2000-02-04 2000-02-04 Medium recording paper discharge program, medium recording data identification program, paper discharge apparatus, data identification apparatus, paper discharge method, and data identification method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000032739A JP3904054B2 (en) 2000-02-04 2000-02-04 Medium recording paper discharge program, medium recording data identification program, paper discharge apparatus, data identification apparatus, paper discharge method, and data identification method

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2004113194A Division JP2004280845A (en) 2004-04-07 2004-04-07 Medium in which paper ejection program is recorded, medium in which data identification program is recorded, paper ejector, data identifier, paper projection method and data identification method

Publications (3)

Publication Number Publication Date
JP2001216114A JP2001216114A (en) 2001-08-10
JP2001216114A5 JP2001216114A5 (en) 2005-03-17
JP3904054B2 true JP3904054B2 (en) 2007-04-11

Family

ID=18557302

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000032739A Expired - Fee Related JP3904054B2 (en) 2000-02-04 2000-02-04 Medium recording paper discharge program, medium recording data identification program, paper discharge apparatus, data identification apparatus, paper discharge method, and data identification method

Country Status (1)

Country Link
JP (1) JP3904054B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4748246B2 (en) * 2009-04-22 2011-08-17 ブラザー工業株式会社 Program and computer

Also Published As

Publication number Publication date
JP2001216114A (en) 2001-08-10

Similar Documents

Publication Publication Date Title
US6683696B1 (en) Filter based data imaging method for an image forming device
US8316179B2 (en) Command suspension in response, at least in part, to detected acceleration and/or orientation change
US7330284B2 (en) Methods for creating printing data and for transferring printing data
JP5415750B2 (en) Information processing apparatus, information processing method, program, and information processing system
US20070073957A1 (en) Bridge, error notification method therefor and system
JP3904054B2 (en) Medium recording paper discharge program, medium recording data identification program, paper discharge apparatus, data identification apparatus, paper discharge method, and data identification method
JP3896689B2 (en) Printer and printing method
JP2001216114A5 (en)
US7042582B1 (en) Printer and printer data processing method
JP2004280845A (en) Medium in which paper ejection program is recorded, medium in which data identification program is recorded, paper ejector, data identifier, paper projection method and data identification method
JP4854144B2 (en) Printing system, management method, and printing apparatus
US7251052B2 (en) Method and apparatus for selecting job control device profiles
JP4148834B2 (en) Data transfer apparatus, image forming apparatus, data transfer control method, computer program, and recording medium
JP3812278B2 (en) Recording medium and computer
JP7191713B2 (en) Printer controller, printer control program, and printer
CN103530071A (en) A printing control device and an image forming system
JP4046892B2 (en) Printing apparatus and paper discharge control method
JP7107188B2 (en) Information processing device, image forming device and program
JP2000181644A (en) Image processor, control method therefor, printer and recording medium
US7589859B2 (en) Print apparatus, print control method, storage medium storing computer-readable program, and program
JP2004062875A (en) Printing system, printer, and printing control method
JP3303264B2 (en) Printer device
JP5743531B2 (en) Image processing apparatus, control method thereof, and program
JP4898953B2 (en) Printing apparatus and management method thereof
JP2013186678A (en) Information processing apparatus, information processing method, information processing system, and program for executing information processing method

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040413

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040413

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060425

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060510

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060706

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070102

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110119

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110119

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120119

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120119

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130119

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130119

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140119

Year of fee payment: 7

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees