JP2014191634A - プログラムおよび情報処理装置 - Google Patents
プログラムおよび情報処理装置 Download PDFInfo
- Publication number
- JP2014191634A JP2014191634A JP2013067254A JP2013067254A JP2014191634A JP 2014191634 A JP2014191634 A JP 2014191634A JP 2013067254 A JP2013067254 A JP 2013067254A JP 2013067254 A JP2013067254 A JP 2013067254A JP 2014191634 A JP2014191634 A JP 2014191634A
- Authority
- JP
- Japan
- Prior art keywords
- printing
- print data
- stored
- data
- log
- 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.)
- Pending
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
【課題】シートに印刷された画像と,ログデータとして記憶される画像とを一致させる。
【解決手段】PC1(プリンタドライバ40)は,印刷データ42とその印刷データ42に対応するログデータ41とを生成する。さらに,1ページ分あるいは1ページ分よりも少ない所定量分の印刷データの生成ごとに,プリンタ2の状態を示す状態情報を取得する。そして,その状態情報に基づいて印刷可能と判断されたページあるいは所定量分の印刷データ42に対応するログデータ41を記憶装置14に記憶させる。
【選択図】図2
【解決手段】PC1(プリンタドライバ40)は,印刷データ42とその印刷データ42に対応するログデータ41とを生成する。さらに,1ページ分あるいは1ページ分よりも少ない所定量分の印刷データの生成ごとに,プリンタ2の状態を示す状態情報を取得する。そして,その状態情報に基づいて印刷可能と判断されたページあるいは所定量分の印刷データ42に対応するログデータ41を記憶装置14に記憶させる。
【選択図】図2
Description
本発明は,プログラムおよび情報処理装置に関する。さらに詳細には,情報処理装置が,印刷装置に画像を印刷させる印刷ジョブに関する情報を記録するためのログデータを生成する技術に関するものである。
従来から,パーソナルコンピュータ(PC)等の情報処理装置から印刷装置に印刷データを送信し,印刷装置に当該印刷データに基づく印刷を行わせる際,情報処理装置にてその印刷に関する情報をログデータとして生成し,そのログデータを記憶装置に保存する技術が知られている。
上述の技術を開示した文献としては,例えば特許文献1がある。特許文献1では,プリンタ(印刷装置)と,ホスト(情報処理装置)と,サーバとを備えるシステムであって,ホストが印刷データとその印刷データに対応するログデータとを生成し,プリンタが印刷データに基づく印刷を行い,サーバがログデータを管理する技術が開示されている。
ログデータは,印刷が完了したことに対する情報を記憶したものであるため,実際にシートに印刷された画像と,ログデータに記憶される画像とが一致することが望まれる。しかしながら,前記した従来の技術には,印刷途中に印刷装置に異常が発生してしまうと,実際に印刷された画像と,ログデータとして記憶された画像とが一致しない可能性がある,という問題があった。
本発明は,前記した従来の技術が有する問題点を解決するためになされたものである。すなわちその課題とするところは,シートに印刷された画像と,ログデータとして記憶される画像との一致が期待できる技術を提供することにある。
この課題の解決を目的としてなされたプログラムは,情報処理装置に,印刷データとその印刷データに対応するログデータとを生成する生成処理と,前記生成処理にて生成された印刷データを,印刷装置に出力する出力処理と,前記生成処理にて1ページ分あるいは1ページ分よりも少ない所定量分の印刷データを生成するに際し,前記印刷装置の状態を示す状態情報を取得する取得処理と,前記取得処理にて取得した状態情報に基づいて,前記印刷装置が印刷可能か不能かを判断する状態判断処理と,前記状態判断処理にて印刷可能と判断された場合に,生成された印刷データに対応するログデータを記憶装置に記憶させる記憶処理とを実行させることを特徴としている。
本明細書に開示されるプログラムは,印刷データとその印刷データに対応するログデータとを生成する。さらに,1ページ分あるいは1ページ分よりも少ない所定量分の印刷データを生成するに際し,印刷装置の状態を示す状態情報を取得する。状態情報の取得方法としては,印刷装置に直接問い合わせてもよいし,デバイスステータスモニタやポートモニタ等,別のモジュールが印刷装置の状態を監視している場合には,そのモジュールを介して取得してもよい。また,状態情報の取得は,印刷データの生成ごとであればよく,印刷データを生成する前であっても後であってもよい。そして,その状態情報に基づいて印刷可能と判断された場合には,ログデータを記憶装置に記憶させる。記憶装置は,情報装置のメモリであってもよいし,サーバ等,外部装置のメモリであってもよい。
すなわち,本明細書に開示されるプログラムでは,1ページ分あるいは1ページ分よりも少ない所定量分の印刷データの生成の度に印刷装置の状態情報を取得し,印刷装置が印刷可能状態の場合にそのページあるいはその所定量分のログデータを記憶装置に記憶させる。この構成により,印刷途中に印刷装置に異常が発生した場合には,異常が発生する前までの印刷データに対応するログデータが記憶される。よって,シートに印刷された画像とログデータとして記憶された画像とが一致する可能性が高まる。
また,前記記憶処理では,前記状態判断処理にて印刷不能と判断された場合に,当該判断に利用された状態情報の取得に際して生成された印刷データに対応するログデータを,前記状態判断処理にて印刷可能と判断された場合に前記記憶装置に記憶されるログデータを格納するファイルとは別のファイルに格納するとよい。この構成によれば,印刷不能と判断された際のログデータと印刷可能と判断された際のログデータとが別のファイルに記憶されるため,印刷済みの画像と未印刷の画像とをユーザが確認し易い。
また,本明細書に開示されるプログラムは,前記取得処理にて取得した状態情報に基づいて,前記印刷装置の状態変化を判断する状態変化判断処理を前記情報処理装置に実行させ,前記記憶処理では,前記状態変化判断処理にて印刷可能から印刷不能への変化を判断した場合に,前記状態判断処理にて印刷不能と判断される前までに出力された印刷データに対応するログデータを前記記憶装置に記憶させ,前記状態変化判断処理にて印刷不能から印刷可能への変化を判断した場合に,前記状態判断処理にて印刷不能と判断された後に出力される印刷データに対応するログデータを前記記憶装置に記憶させるとよい。印刷不能から印刷可能に復帰した後は,印刷が継続されることが想定される。そのため,印刷不能になるまでのログデータに加え,再び印刷可能になってからのログデータを記憶することで,印刷が完了した画像とログデータの画像とが一致する可能性がより高まる。
また,前記記憶処理は,前記状態変化判断処理にて印刷可能から印刷不能への変化を判断した場合に,前記状態判断処理にて印刷不能と判断される前までに出力された印刷データに対応するログデータを格納するファイルである復帰前ファイルを生成して当該復帰前ファイルを前記記憶装置に記憶させ,前記状態変化判断処理にて印刷不能から印刷可能への変化を判断した場合に,前記復帰前ファイルとは別のファイルであって,前記状態判断処理にて印刷不能と判断された後に出力される印刷データに対応するログデータを格納する復帰後ファイルを生成して前記記憶装置に記憶させるものであり,前記復帰後ファイルに,前記状態変化判断処理にて印刷不能から印刷可能への変化を判断した時刻を格納するとよい。復帰した時刻を復帰後ファイルに記憶することで,復帰後ファイルが複数あったとしても,ユーザがその生成順を把握し易い。なお,時刻は,データとしてファイルに記憶してもよいし,ファイル名として付加してもよい。
また,前記記憶処理では,前記状態判断処理にて印刷不能と判断された場合に,当該判断に利用された状態情報の取得に際して生成された印刷データに対応するログデータを前記記憶装置に記憶させないとよい。この構成によれば,印刷不能と判断された際のログデータが記憶されないため,印刷が完了した画像とログデータの画像とが一致する可能性がより高まる。
また,前記記憶処理では,ページごとあるいは前記所定量ごとに,前記状態判断処理にて印刷可能と判断されたか否かを示す判断情報を記憶し,前記出力処理にて全ての印刷データの出力が完了した後,前記判断情報に基づいてログデータを前記記憶装置に記憶させるとよい。判断情報は,例えば,印刷不能であった場合に記憶されるページ番号(あるいはバンド番号)が該当する。この構成によれば,ログデータの記憶装置への記憶が,印刷データの出力の後に纏めて行われる。そのため,印刷データの送信遅延が抑制され,間欠印刷等の不具合の発生が抑えられる。
また,本明細書に開示されるプログラムは,前記状態判断処理にて印刷不能と判断された場合に,当該判断に利用された状態情報の取得に際して生成された印刷データに対応する前記印刷装置用のビットマップデータを生成する生成処理を前記情報処理装置に実行させるとよい。印刷装置用のビットマップデータを生成しておくことで,復帰後にそのビットマップデータを利用して,印刷不能となった後の続きを印刷できる。
また,本明細書には,他装置との間で通信を行う通信部と,制御部とを備え,前記制御部は,印刷データとその印刷データに対応するログデータとを生成する生成処理と,前記生成処理にて生成された印刷データを,前記通信部を介して印刷装置に出力する出力処理と,前記生成処理にて1ページ分あるいは1ページ分よりも少ない所定量分の印刷データを生成するに際し,前記印刷装置の状態を示す状態情報を取得する取得処理と,前記取得処理にて取得した状態情報に基づいて,前記印刷装置が印刷可能か不能かを判断する状態判断処理と,前記状態判断処理にて印刷可能と判断された場合に,生成された印刷データに対応するログデータを記憶装置に記憶させる記憶処理とを実行することを特徴とする情報処理装置が開示されている。
本発明によれば,シートに印刷された画像と,ログデータとして記憶される画像との一致が期待できる技術が実現される。
以下,本発明にかかる装置を具体化した実施の形態について,添付図面を参照しつつ詳細に説明する。本形態は,プリンタと,そのプリンタ用のプリンタドライバが組み込まれたパーソナルコンピュータ(PC)とを有するプリントシステムに本発明を適用したものである。
[プリントシステムの構成]
本形態のプリントシステム100は,図1に示すように,プリンタ2(印刷装置の一例)と,プリンタ2を制御するPC1(情報処理装置の一例)とを備えている。プリントシステム100では,PC1とプリンタ2とが有線LANケーブルを介して通信可能に接続されている。
本形態のプリントシステム100は,図1に示すように,プリンタ2(印刷装置の一例)と,プリンタ2を制御するPC1(情報処理装置の一例)とを備えている。プリントシステム100では,PC1とプリンタ2とが有線LANケーブルを介して通信可能に接続されている。
なお,プリントシステム100を構成するプリンタおよびPCは各1台に限るものではなく,それぞれ複数台接続してもよい。また,PC1とプリンタ2との接続は,有線LANケーブルに限らず,その他のシリアル通信ケーブル,パラレル通信ケーブル,またはUSBケーブルを介するものであってもよいし,さらには無線LAN等の無線通信であってもよい。
PC1は,各種処理を実行するCPU11(制御部の一例)と,当該PC1の起動時にCPU11が行う起動処理のプログラム(BIOS)等を記憶したROM12と,CPU11が各種処理を行う際に一時的な記憶領域として利用されるRAM13と,各種のプログラムやデータを記憶したハードディスクドライブ(HDD)14(記憶装置の一例)とを備えている。なお,図1中のコントローラ30は,CPU11等,PC1の制御に利用されるハードウェアを纏めた総称であって,実際にPC1に存在する単一のハードウェアと表すとは限らない。
また,PC1は,キーボードやマウス等からなる操作部15と,液晶ディスプレイ等からなる表示部16と,USBインターフェース17(通信部の一例)と,ネットワークインターフェース18(通信部の一例)とを備え,これらがCPU11と電気的に接続され,これらがCPU11によって制御される。USBインターフェース17はUSBケーブルを介して接続された装置と通信を行うためのハードウェアである。ネットワークインターフェース18はLANケーブルを介して接続された装置と通信を行うためのハードウェアである。
HDD14には,オペレーティングシステム(OS)と,アプリケーションプログラム(文書作成ソフト,作図ソフト,表計算ソフト,写真データ編集ソフト等)と,プリンタ2を制御するプリンタドライバ(プログラムの一例)とが記憶されている。なお,各種プログラムは,CD−ROMなどの記憶媒体に記憶されているものをインストールしてもよいし,ネットワーク上のサーバに記憶されているものをダウンロードしてインストールしてもよい。
プリンタ2は,用紙に画像を形成する機能を有していればよく,その画像形成方式は,電子写真方式,インクジェット方式,その他の一般的な画像形成方式を採用していればよい。また,カラー画像及びモノクロ画像の画像形成が可能であっても,モノクロ画像のみの画像形成が可能であってもよい。
[PCの動作]
続いて,本形態のプリントシステム100にて印刷を行う際の,PC1の動作について,図2のブロック図を参照しつつ説明する。なお,図2中,グラフィックエンジン51およびスプーラ52は,OSの一部として提供され,デバイスステータスモニタ55は,デバイスメーカによって提供される。
続いて,本形態のプリントシステム100にて印刷を行う際の,PC1の動作について,図2のブロック図を参照しつつ説明する。なお,図2中,グラフィックエンジン51およびスプーラ52は,OSの一部として提供され,デバイスステータスモニタ55は,デバイスメーカによって提供される。
図2中,プリンタドライバ40は,印刷設定に基づいて印刷対象となる画像データから印刷データ42を生成する生成処理,さらにはその印刷データ42の印刷ログとなるログデータ41の生成処理を行う。印刷設定としては,例えば,ウォータマーク,ヘッダー,フッター等の合成,拡大,縮小等の倍率変更,画像回転,2in1,4in1等のページの集約が該当する。
また,プリンタドライバ40は,図3に示すような印刷設定値の入力を受け付ける印刷設定画面401を表示する。印刷設定画面401では,用紙サイズ,用紙種類,印刷品質,印刷向き,印刷ログなどの印刷設定項目と各印刷設定項目に設定される設定値が表示される。印刷設定画面401では,印刷ログに関する設定として,保存されるログデータ41のサイズの設定値を受け付ける。ログデータ41のサイズの設定値として,小,中,大が含まれる。プリンタドライバ40は,ログデータ41として,画像情報を数ドット間隔で記憶する,つまりドット情報の間引き量を調整することでログデータ41のサイズを変更する。ログデータ41のサイズを小さくするほど,間引き量を大きくする。ログデータ41のサイズが大の場合は,間引きを行わない。
グラフィックエンジン51は,プリンタ2や表示部16の出力デバイスの制御を行うモジュールである。グラフィックエンジン51は,アプリケーションプログラム61からの命令を受け付け,その命令をデバイスドライバ(本形態ではプリンタドライバ40)に受け渡す。
スプーラ52は,プリンタドライバ40によって生成された印刷データ42を一時的に格納し,印刷データ42を順次にプリンタ2に出力する機能を有するモジュールである。本明細書において「プリンタドライバ40が印刷データ42をプリンタ2に送信する」と記載した場合,それは「プリンタドライバ40が印刷データ42をスプーラ52に格納する」ことを意味し,実際にスプーラ52によってプリンタ2に印刷データ42が送信されたことまでは意味しない。
デバイスステータスモニタ55は,PC1と通信可能に接続する全てのプリンタ(本形態ではプリンタ2)の状態を定期的に取得するモジュールである。
本形態のプリントシステム100にて印刷を行う際には,先ず,PC1に組み込まれているアプリケーションプログラム61がユーザからの印刷指示を受け付け,印刷開始通知を出力する。そして,OSの一部であるグラフィックエンジン51がその印刷開始通知を受け付け,アプリケーションプログラム61から印刷対象の画像データの取得を開始する。
グラフィックエンジン51は,画像データの取得を開始すると,プリンタドライバ40に対して描画命令を行う。プリンタドライバ40は,描画命令を受け付けると,当該描画命令に基づいてビットマップ画像(BMP画像)を生成し,さらにそのBMP画像に基づいてPDL形式の印刷データ42を生成する。印刷データ42の生成の際には,印刷設定に応じて,画像反転等の加工処理を行う。さらに,プリンタドライバ40は,印刷データ42の生成に伴って,印刷画像に関するログデータ41の生成も行う。ログデータ41のファイル形式は,ユーザが閲覧可能なものであればよく,例えば,BMP,XML,JPEGが適用可能である。
プリンタドライバ40は,印刷データ42の生成後,当該印刷データ42をスプーラ52に格納する。印刷データ42がスプーラ52に格納されると,スプーラ52は格納されている印刷データ42をプリンタ2に送信する。印刷データ42を受信したプリンタ2は,その印刷データ42に基づいて印刷を行う。
また,プリンタドライバ40は,全ページ分の印刷データを送信した後,プリンタ2の状態に応じてログデータ41を統合し,1つのPDFファイルを生成する。このPDFファイルは,HDD14の指定フォルダに記憶される。
[印刷処理]
続いて,前述した印刷手順を実現するPC1の印刷処理について,4つの形態に分けて図4から図7のフローチャートに基づいて説明する。各フローチャートは,プリンタドライバ40の手順を示しており,アプリケーションプログラム61からOSを介して印刷指示を受け付けたことを契機に,CPU11によって実行される。
続いて,前述した印刷手順を実現するPC1の印刷処理について,4つの形態に分けて図4から図7のフローチャートに基づいて説明する。各フローチャートは,プリンタドライバ40の手順を示しており,アプリケーションプログラム61からOSを介して印刷指示を受け付けたことを契機に,CPU11によって実行される。
[第1の形態]
始めに,第1の形態の印刷処理について,図4のフローチャートを参照しつつ説明する。第1の形態の印刷処理では,先ず,OSから現在の時刻を取得し,RAM13に記憶する(S101)。
始めに,第1の形態の印刷処理について,図4のフローチャートを参照しつつ説明する。第1の形態の印刷処理では,先ず,OSから現在の時刻を取得し,RAM13に記憶する(S101)。
S101の後,グラフィックエンジン51から1ページ分の描画命令を受け付ける(S102)。そして,受け付けた1ページ分の描画命令を,1ページ分のBMP画像に変換する(S103)。ここで印刷設定としてウォータマーク,ヘッダー,フッター等の合成,拡大,縮小等の倍率変更,画像回転,2in1,4in1等のページの集約が指定されていれば,それらに応じて加工したBMP画像に変換される。なお,BMP画像への変換は,プリンタドライバ40自身が行ってもよいし,グラフィックエンジン51がBMP画像の生成機能を有している場合には,グラフィックエンジン51にBMP画像の変換する指示を行ってもよい。
S103の後,プリンタ2の状態を取得する(S104)。S104では,プリンタの状態として,少なくとも印刷可能状態か,印刷不能状態かを取得する。本形態の印刷不能状態には,通信不能によってプリンタ2が使用できないオフライン状態のほか,オンライン状態であったとしても故障や着色剤不足等によって印刷不能になっている状態も含まれる。印刷可能状態であれば,さらに印刷実行中であるか待機中であるかの情報を取得してもよい。また,印刷不能状態であれば,エラーの詳細情報を取得してもよい。また,プリンタ2の状態を取得する方法としては,デバイスステータスモニタ55が起動中であってデバイスステータスモニタ55が定期的なモニタリングを実行中であれば,デバイスステータスモニタ55からプリンタ2の状態を取得するとよい。また,デバイスステータスモニタ55が起動していない,あるいは起動していてもモニタリングを実行していない場合には,プリンタ2に直接状態を問い合わせればよい。また,ポートモニタ等,デバイスステータスモニタ55以外のモジュールからプリンタ2の状態を取得してもよい。
S104の後,プリンタ2が印刷可能であったか否かを判断する(S105)。印刷不能であった場合には(S105:NO),現在処理対象のページ番号をRAM13に記憶する(S111)。ここで,現在処理対象のページ番号とは,スプーラ52に送信される前の印刷データのページ番号を意味する。
S111の後,あるいは印刷可能であった場合には(S105:YES),S103で生成されたBMP画像に基づいて,ログデータ41を生成してRAM13に一時的に記憶する(S106)。具体的にS106では,S103で生成されたBMP画像をコピーし,さらにログデータのサイズ設定値(図3参照)に従って,コピーされたBMP画像に対して間引きを行う。以後,間引き後のBMP画像を,ログデータ41と記す。
S106の後,印刷データ42を生成し,生成した印刷データ42をプリンタ2に送信する(S107)。具体的にS107では,S103で生成されたBMP画像からPDLデータを生成する。なお,プリンタドライバ40としての印刷データ42の送信は,スプーラ52に対して印刷データ42を格納するまでである。すなわち,S107では,実際にスプーラ52がプリンタ2への印刷データ42の送信を完了させたことまでを含めなくてもよい。印刷データの送信完了後,S103で生成されたBMP画像は消去される。
S107の後,全ページ分の処理が完了したか否かを判断する(S108)。全ページ分の処理が完了していない場合には(S108:NO),S102に移行して次のページの描画命令を受け付ける。
一方,全ページ分の処理が完了している場合には(S108:YES),ページ番号が記憶されているか否かを判断する(S121)。印刷処理では,印刷不能中にログデータ41の生成を行ったページのページ番号が記憶される。そこで,ページ番号が記憶されていない場合には(S121:NO),全てのページが印刷されたと推測されることから,全ページ分のログデータ41を1つに纏めたPDF形式のログファイルを生成し,当該ファイルをHDD14に保存する(S122)。ログファイルのファイル名には,S101で記憶した時刻を付加し,他の印刷ジョブのログファイルと区別する。
一方,ページ番号が記憶されている場合には(S121:YES),印刷不能中に生成したログデータ41が存在する。そこで,ページ番号が記憶されているページのログデータ41を1つに纏めたログファイルと,ページ番号が記憶されていないページのログデータ41を1つに纏めたログファイルとの,2つのログファイルを生成し,それぞれHDD14に保存する(S131,132)。ログファイルを分けることで,印刷されたページの印刷ログと印刷されなかったページの印刷ログとを,ユーザが明確に区別できる。なお,ページ番号が記憶されていない側のログファイル,すなわち印刷された側のログファイルについては,ファイル名にS101で取得した時刻を付加する。一方,ページ番号が記憶されていた側のログファイル,すなわち印刷されていない側のログファイルについては,ファイル名にS101で取得した時刻に加えて未印刷であったことを意味する符号を付加する。S122の後あるいはS132の後,印刷処理を終了する。
前述したように,第1の形態では,プリンタ2が印刷不能中であったページ番号を記憶し,印刷不能中に生成されたログデータ41を,印刷可能中に生成されたログデータ41と区別してログファイルに保存している。そのため,印刷可能中に生成されたログデータ41を記憶するログファイルについては,当該ログファイルに記憶されている画像と印刷された画像とが一致する可能性が高い。
なお,第1の形態では,印刷不能中に生成されたログデータ41もファイルに保存しているが,少なくとも印刷可能中に生成されたログデータ41を保存すれば,印刷された画像とログデータ41とを一致させることができる。そのため,印刷不能中に生成されたログデータ41については,ファイルに保存しなくてもよい。
また,第1の形態では,プリンタ2の状態取得(S104),ログデータ41の生成(S106),印刷データの生成(S107)の順に,実行しているが,これらの実行順はこれに限るものではない。すなわち,これらの処理は順序不問であり,同時に実行されてもよい。
[第2の形態]
続いて,印刷処理の別の形態について,図5のフローチャートを参照しつつ説明する。第2の形態では,送信先のプリンタ2が印刷不能であった場合,ログデータ41の代わりに高解像度のBMP画像を生成する。この点,印刷不能であっても,印刷可能のときと同等のログデータ41を生成する第1の形態と異なる。なお,以下の説明では,第1の形態と同様の処理については,同じ符号を付して説明を省略する。
続いて,印刷処理の別の形態について,図5のフローチャートを参照しつつ説明する。第2の形態では,送信先のプリンタ2が印刷不能であった場合,ログデータ41の代わりに高解像度のBMP画像を生成する。この点,印刷不能であっても,印刷可能のときと同等のログデータ41を生成する第1の形態と異なる。なお,以下の説明では,第1の形態と同様の処理については,同じ符号を付して説明を省略する。
第2の形態の印刷処理では,1ページ分の描画命令を,1ページ分のBMP画像に変換した後(S103),プリンタ2の状態を取得する(S104)。そして,プリンタ2が印刷可能であったか否かを判断する(S105)。プリンタ2が印刷可能であった場合には(S105:YES),S103で生成されたBMP画像に基づいて,ログデータ41を生成してRAM13に一時的に記憶する(S106)。
一方,プリンタ2が印刷不能であった場合には(S105:NO),高解像度のBMP画像を生成し,HDD14に保存する(S211)。具体的にS211では,S103で生成されたBMP画像をコピーすることにより,印刷データと同等の解像度となるBMP画像を生成する。すなわち,S106とは異なり,BMP画像について間引きを行わない。
S211の後,あるいはS106の後,印刷データ42を生成し,生成した印刷データ42をプリンタ2に送信する(S107)。その後,全ページ分の処理が完了したか否かを判断する(S108)。全ページ分の処理が完了していない場合には(S108:NO),S102に移行して次のページの描画命令を受け付ける。
一方,全ページ分の処理が完了している場合には(S108:YES),S106で生成された全てのログデータ41を1つに纏めたPDF形式のログファイルを生成し,当該ファイルをHDD14に保存する(S222)。第2の形態では,印刷不能中はログデータ41が生成されないため,ログファイルは印刷可能中に生成されたログデータ41のみとなる。S222の後は,印刷処理を終了する。
前述したように,第2の形態では,プリンタ2が印刷不能中であれば,ログデータ41が生成されない。そのため,ログファイルに記憶されるログデータ41は,印刷可能中に生成されたログデータとなる。そのため,ログファイルに記憶されている画像と印刷された画像とが一致する可能性が高い。また,印刷不能中は,印刷データに相当する高解像度のBMP画像が保存される。そのため,プリンタ2が印刷可能に復帰した後に,そのBMP画像をそのまま利用して印刷することで,印刷不能であったために印刷できなかった画像を簡単に印刷できる。
[第3の形態]
続いて,印刷処理のさらなる別の形態について,図6のフローチャートを参照しつつ説明する。第3の形態では,全ページの処理が完了する前に,プリンタ2の状態が印刷可能から印刷不能に変化したことを条件として,それまで記憶していたログデータ41からログファイルを生成する。この点,ログファイルの生成を,全ページの処理が完了した後に行う第1の形態ないし第2の形態と異なる。なお,以下の説明では,第1の形態ないし第2の形態と同様の処理については,同じ符号を付して説明を省略する。
続いて,印刷処理のさらなる別の形態について,図6のフローチャートを参照しつつ説明する。第3の形態では,全ページの処理が完了する前に,プリンタ2の状態が印刷可能から印刷不能に変化したことを条件として,それまで記憶していたログデータ41からログファイルを生成する。この点,ログファイルの生成を,全ページの処理が完了した後に行う第1の形態ないし第2の形態と異なる。なお,以下の説明では,第1の形態ないし第2の形態と同様の処理については,同じ符号を付して説明を省略する。
第3の形態の印刷処理では,1ページ分の描画命令を,1ページ分のBMP画像に変換した後(S103),プリンタ2の状態を取得する(S104)。そして,プリンタ2が印刷可能であったか否かを判断する(S105)。
プリンタ2が印刷可能であった場合には(S105:YES),前回の状態が印刷不能であったか否かを判断する(S305)。前回の状態が印刷不能であった場合には(S305:YES),プリンタ2の状態が印刷不能から印刷可能に変化した,すなわちプリンタ2が実行可能状態に復帰したと判断できる。そこで,現時刻をRAM13に記憶する(S306)。これにより,S101で記憶された時刻がS307で取得した時刻に上書きされる。S306の後はS106に移行し,ログデータ41を生成する。一方,前回の状態も印刷可能であった場合には(S305:NO),プリンタ2の状態が変化していないと判断でき,時刻を記憶することなく,S106に移行する。
また,プリンタ2が印刷不能であった場合には(S105:NO),前回の状態が印刷可能であったか否かを判断する(S311)。前回の状態が印刷可能であった場合には(S311:YES),プリンタ2の状態が印刷可能から印刷不能に変化した,すなわちプリンタ2に異常が発生したと判断できる。そこで,現在記憶している時刻を読み出す(S312)。この時刻は,印刷処理を開始してから初めての異常であればS101で記憶した時刻が読み出され,2回目以降であればS306で記憶した時刻,すなわち復帰時刻が読み出される。
S311の後,現在までにRAM13に記憶されているログデータ41を1つに纏めたPDF形式のログファイルを生成し,当該ファイルをHDD14に保存する(S313)。すなわち,印刷不能となる前までのページのログデータ41を1つに纏めたログファイルを生成して保存する。S313の後は,現在までにRAM13に記憶されているログデータ41を削除する(S314)。一方,前回の状態も印刷不能であった場合には(S311:NO),プリンタ2の状態が変化していないと判断でき,ログファイルを生成しない。
S306の後,あるいはS314の後,あるいは前回の状態と変化がない場合には(S305:NO,S311:NO),ログデータを生成する(S106)。さらに,印刷データ42を生成し,生成した印刷データ42をプリンタ2に送信する(S107)。その後,全ページ分の処理が完了したか否かを判断する(S108)。全ページ分の処理が完了していない場合には(S108:NO),S102に移行して次のページの描画命令を受け付ける。
一方,全ページ分の処理が完了している場合には(S108:YES),プリンタ2が印刷可能な状態で全ページ分の処理が完了したか否かを判断する(S321)。プリンタ2が印刷可能であった場合には(S321:YES),現在までにRAM13に記憶されている全てのログデータ41を1つに纏めたPDF形式のログファイルを生成し,当該ファイルをHDD14に保存する(S222)。ログファイルに記憶されるログデータ41は,印刷処理の途中で印刷可能から印刷不能に変化していない場合には最初から最後までのページ分であり,途中で印刷可能から印刷不能に変化し,さらに印刷可能に復帰した場合には,復帰してから印刷されたページ分である。そして,前者の場合にはS101で記憶した時刻がログファイルのファイル名に付加され,後者の場合にはS306で記憶した復帰時刻がログファイルのファイル名に付加される。S222の後は,印刷処理を終了する。
プリンタ2が印刷不能の場合には(S321:NO),ログファイルを生成することなく,印刷処理を終了する。なお,印刷処理の開始時は印刷可能であり,印刷処理途中で印刷不能になった場合には,印刷可能から印刷不能に変化したタイミングでS313にてログファイルが生成される。そのため,それまでに印刷された分のログデータはそのログファイルに記憶されている。
前述したように,第3の形態でも,プリンタ2が印刷不能のまま印刷処理が完了すれば,印刷不能となった以降のログデータ41はログファイルに記憶されない。すなわち,ログファイルに記憶されるログデータ41は印刷されたページのログデータとなる。そのため,ログファイルに記憶されている画像と印刷された画像とが一致する可能性が高い。また,印刷不能のまま印刷処理が終了した場合であっても,途中まで印刷可能であった場合には,その印刷可能であった分のログデータを記憶するログファイルが生成される。さらに印刷可能に復帰した場合には,その復帰後のログデータを格納するログファイルも,別に生成される。このようにログファイルを分けることで復帰前のログデータと復帰後のログデータとを区別でき,印刷ログの使い勝手が良い。なお,復帰後のログデータを復帰前のログデータに追加して1つのファイルにしてもよい。
[第4の形態]
続いて,印刷処理のさらなる別の形態について,図7のフローチャートを参照しつつ説明する。第4の形態では,1ページ分のデータを複数に分割し,分割したデータの単位でログデータ41および印刷データ42を生成する。この点,ログデータ41および印刷データ42の生成をページ単位で行う第1から第3の形態と異なる。なお,以下の説明では,第1から第3の形態と同様の処理については,同じ符号を付して説明を省略する。
続いて,印刷処理のさらなる別の形態について,図7のフローチャートを参照しつつ説明する。第4の形態では,1ページ分のデータを複数に分割し,分割したデータの単位でログデータ41および印刷データ42を生成する。この点,ログデータ41および印刷データ42の生成をページ単位で行う第1から第3の形態と異なる。なお,以下の説明では,第1から第3の形態と同様の処理については,同じ符号を付して説明を省略する。
第4の形態の印刷処理では,現時刻を取得した後(S101),グラフィックエンジン51に対して,1ページ分のデータを複数に分割する分割命令を入力する(S401)。具体的に本形態では,1ページ分のデータを前半部分と後半部分とに2分割する分割命令を入力する。以下,1ページ分のデータを複数に分割した1単位をバンドとし,バンド単位に分割されたデータをバンドデータとする。本形態では,前半部分のデータや後半部分のデータが1バンド分のバンドデータに該当する。これにより,プリンタドライバ40は,グラフィックエンジン51からバンド単位で描画命令を受け取ることになる。なお,プリンタドライバ40がデータの分割機能を有している場合には,プリンタドライバ40自身がデータ分割を行ってもよい。
S401の後,グラフィックエンジン51から1バンド分の描画命令を受け付ける(S102)。本形態では,1ページ分の処理を開始する場合には前半部分のバンドデータに関する描画命令を受け付け,前半部分の処理が完了している場合には後半部分のバンドデータに関する描画命令を受け付けることになる。そして,受け付けた1バンド分の描画命令を,1バンド分のBMP画像に変換する(S103)。
S103の後,プリンタ2の状態を取得する(S104)。そして,プリンタ2が印刷可能であったか否かを判断する(S105)。印刷不能であった場合には(S105:NO),ページ番号に加え,ページの前半か後半のバンドの部位を記憶する(S411)。ここで,記憶されるのは,スプーラ52に送信される前の印刷データのページ番号やバンドの部位である。その後,S103で生成されたBMP画像に基づいて,ログデータ41を生成してRAM13に一時的に記憶する(S106)。さらに,印刷データ42を生成し,生成した印刷データ42をプリンタ2に送信する(S107)。
S107の後,1ページ分の処理が完了したか否かを判断する(S407)。本形態では,1ページ分のデータが2分割されるため,前半部分の印刷データ42を生成した後では1ページ分の処理が完了しておらず,後半部分の印刷データ42を生成した後では1ページ分の処理は完了していることになる。1ページ分の処理が完了していない場合には(S407:NO),S102に移行し,次のバンドである後半部分の描画命令を受け付ける。
1ページ分の処理が完了している場合には(S407:YES),全ページ分の処理が完了したか否かを判断する(S108)。全ページ分の処理が完了していない場合には(S108:NO),S401に移行して次のページに対する分割命令を入力し,次のページの描画命令を受け付ける。全ページ分の処理が完了している場合(S108:YES),それ以降の処理は第1の形態と同様であり説明を省略する。ただしバンド単位で処理を行うため,ログファイルにはバンド単位でのログデータが格納される。
前述したように,第4の形態では,1ページ分のデータを複数に分割したバンド単位でログデータ41を生成している。このような形態であっても,第1の形態と同様に印刷可能中に生成されたログデータ41と印刷不能中に生成されたログデータ41とを区別したログファイルが生成される。そして,印刷可能中に生成されたログデータ41を記憶するログファイルについては,当該ログファイルに記憶されている画像と印刷された画像とが一致する可能性が高い。
なお,第4の形態では,1ページ分のデータを前半部分と後半部分とに2分割しているが,分割数は2よりも大きくてもよい。送信先のプリンタ2のメモリ容量が小さいほど,分割数が多い方が好ましい。一方で,分割数が多いほど制御が複雑になり,処理に時間がかかるため,処理速度を優先するには分割数が少ない方が好ましい。また,第4の形態は,第1の形態にバンド単位の処理を加えたものであるが,第2の形態や第3の形態にバンド単位の処理を加えてもよい。
以上詳細に説明したように本形態のPC1では,プリンタ2に対する印刷ジョブを受け付けた際,1ページ分あるいは1ページ分よりも少ない1バンド分の印刷データ42を生成するに際し,プリンタ2の状態情報を取得する。そして,少なくとも印刷可能中に生成されたログデータ41を記憶するログファイルをHDD14に記憶させる。一方,印刷不能中に生成されたログデータ41については,別ファイルに記憶するか,ログデータ41をログファイルに記憶しない。よって,シートに印刷された画像とログファイルに記憶されているログデータ41の画像とが一致する可能性が高まる。
なお,本実施の形態は単なる例示にすぎず,本発明を何ら限定するものではない。したがって本発明は当然に,その要旨を逸脱しない範囲内で種々の改良,変形が可能である。例えば,印刷装置としてはプリンタに限るものではなく,コピー機,FAX,あるいは印刷機能を有する複合機等であってもよい。また,情報処理装置としてはPCに限るものではなく,ワークステーション,スマートフォン,PDA等であってもよい。
また,実施の形態では,ログデータ41を自装置のHDD14に記憶しているが,これに限るものではない。例えば,ログデータ41をネットワークインターフェース18を介して接続するサーバ等の外部ストレージに記憶してもよい。
また,実施の形態では,印刷データ42の送信後に,ログデータ41を纏めるログファイルを生成しているが,始めにログファイルの生成を行い,ログデータ41を生成する度に,そのログデータ41をログファイルに追加するようにしてもよい。ただし,ログデータ41の追加に時間がかかると印刷データの送信が遅延し,その結果として間欠的な印刷になる可能性が高まる。間欠的な印刷は,印刷と停止とが繰り返されるため,ユーザにとって耳触りとなる。また,定着器の温度が印刷停止によって下がってしまい,無駄な放熱が行われる。そのため,全ページ分の印刷データの送信が完了した後にログファイルの生成を行うことで,上述の間欠印刷の抑制が期待できる。
また,実施の形態では,複数のログデータ41を1つに纏めたログファイルを生成しているが,ログファイルを生成しなくてもよい。すなわち,ログデータ41をそのまま保存してもよい。
また,実施の形態に開示されている処理は,単一のCPU,複数のCPU,ASICなどのハードウェア,またはそれらの組み合わせで実行されてもよい。また,実施の形態に開示されている処理は,その処理を実行するためのプログラムを記録した記録媒体,または方法等の種々の態様で実現することができる。
1 PC
2 プリンタ
40 プリンタドライバ
41 ログデータ
42 印刷データ
52 スプーラ
55 デバイスステータスモニタ
61 アプリケーションプログラム
100 プリントシステム
2 プリンタ
40 プリンタドライバ
41 ログデータ
42 印刷データ
52 スプーラ
55 デバイスステータスモニタ
61 アプリケーションプログラム
100 プリントシステム
Claims (8)
- 情報処理装置に,
印刷データとその印刷データに対応するログデータとを生成する生成処理と,
前記生成処理にて生成された印刷データを,印刷装置に出力する出力処理と,
前記生成処理にて1ページ分あるいは1ページ分よりも少ない所定量分の印刷データを生成するに際し,前記印刷装置の状態を示す状態情報を取得する取得処理と,
前記取得処理にて取得した状態情報に基づいて,前記印刷装置が印刷可能か不能かを判断する状態判断処理と,
前記状態判断処理にて印刷可能と判断された場合に,生成された印刷データに対応するログデータを記憶装置に記憶させる記憶処理と,
を実行させることを特徴とするプログラム。 - 請求項1に記載するプログラムにおいて,
前記記憶処理では,前記状態判断処理にて印刷不能と判断された場合に,当該判断に利用された状態情報の取得に際して生成された印刷データに対応するログデータを,前記状態判断処理にて印刷可能と判断された場合に前記記憶装置に記憶されるログデータを格納するファイルとは別のファイルに格納することを特徴とするプログラム。 - 請求項1または請求項2に記載するプログラムにおいて,
前記取得処理にて取得した状態情報に基づいて,前記印刷装置の状態変化を判断する状態変化判断処理を前記情報処理装置に実行させ,
前記記憶処理では,前記状態変化判断処理にて印刷可能から印刷不能への変化を判断した場合に,前記状態判断処理にて印刷不能と判断される前までに出力された印刷データに対応するログデータを前記記憶装置に記憶させ,前記状態変化判断処理にて印刷不能から印刷可能への変化を判断した場合に,前記状態判断処理にて印刷不能と判断された後に出力される印刷データに対応するログデータを前記記憶装置に記憶させることを特徴とするプログラム。 - 請求項3に記載するプログラムにおいて,
前記記憶処理は,前記状態変化判断処理にて印刷可能から印刷不能への変化を判断した場合に,前記状態判断処理にて印刷不能と判断される前までに出力された印刷データに対応するログデータを格納するファイルである復帰前ファイルを生成して当該復帰前ファイルを前記記憶装置に記憶させ,前記状態変化判断処理にて印刷不能から印刷可能への変化を判断した場合に,前記復帰前ファイルとは別のファイルであって,前記状態判断処理にて印刷不能と判断された後に出力される印刷データに対応するログデータを格納する復帰後ファイルを生成して前記記憶装置に記憶させるものであり,前記復帰後ファイルに,前記状態変化判断処理にて印刷不能から印刷可能への変化を判断した時刻を格納することを特徴とするプログラム。 - 請求項1に記載するプログラムにおいて,
前記記憶処理では,前記状態判断処理にて印刷不能と判断された場合に,当該判断に利用された状態情報の取得に際して生成された印刷データに対応するログデータを前記記憶装置に記憶させないことを特徴とするプログラム。 - 請求項1から請求項5のいずれか1つに記載するプログラムにおいて,
前記記憶処理では,ページごとあるいは前記所定量ごとに,前記状態判断処理にて印刷可能と判断されたか否かを示す判断情報を記憶し,前記出力処理にて全ての印刷データの出力が完了した後,前記判断情報に基づいてログデータを前記記憶装置に記憶させることを特徴とするプログラム。 - 請求項1から請求項5のいずれか1つに記載するプログラムにおいて,
前記状態判断処理にて印刷不能と判断された場合に,当該判断に利用された状態情報の取得に際して生成された印刷データに対応する前記印刷装置用のビットマップデータを生成する生成処理を前記情報処理装置に実行させることを特徴とするプログラム。 - 他装置との間で通信を行う通信部と,
制御部と,
を備え,
前記制御部は,
印刷データとその印刷データに対応するログデータとを生成する生成処理と,
前記生成処理にて生成された印刷データを,前記通信部を介して印刷装置に出力する出力処理と,
前記生成処理にて1ページ分あるいは1ページ分よりも少ない所定量分の印刷データを生成するに際し,前記印刷装置の状態を示す状態情報を取得する取得処理と,
前記取得処理にて取得した状態情報に基づいて,前記印刷装置が印刷可能か不能かを判断する状態判断処理と,
前記状態判断処理にて印刷可能と判断された場合に,生成された印刷データに対応するログデータを記憶装置に記憶させる記憶処理と,
を実行することを特徴とする情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013067254A JP2014191634A (ja) | 2013-03-27 | 2013-03-27 | プログラムおよび情報処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013067254A JP2014191634A (ja) | 2013-03-27 | 2013-03-27 | プログラムおよび情報処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014191634A true JP2014191634A (ja) | 2014-10-06 |
Family
ID=51837814
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013067254A Pending JP2014191634A (ja) | 2013-03-27 | 2013-03-27 | プログラムおよび情報処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014191634A (ja) |
-
2013
- 2013-03-27 JP JP2013067254A patent/JP2014191634A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5072676B2 (ja) | 情報処理装置、情報処理方法及び印刷システム | |
JP2010208304A (ja) | 印刷管理装置および印刷管理方法並びにそのプログラム | |
US10579456B2 (en) | Program and information processing apparatus | |
US20130044335A1 (en) | Print control method, information processing apparatus, and recording medium | |
US9361056B2 (en) | Information processing apparatus and method for generating a conflict confirmation print job | |
US20110019226A1 (en) | Server, printer, and computer readable medium | |
JP2009113474A (ja) | 動的なプリンタの構成のためのシステムと方法 | |
JP4483970B2 (ja) | 印刷制御装置および印刷制御プログラム | |
JP2009107332A (ja) | 印刷の計数のシステム及び方法 | |
US20120182580A1 (en) | Information processing system, information processing apparatus, information processing method, and storage medium storing program | |
US9507544B2 (en) | Information processing apparatus, recording medium, and control method to process print data using filters | |
EP3021567B1 (en) | Image processing apparatus, method for performing specific process, computer-readable storage medium for computer program | |
JP2013140554A (ja) | 印刷制御システム、印刷制御方法、プログラムおよびコンピュータ | |
JP5099594B2 (ja) | 画像処理装置、画像処理システムおよび画像処理プログラム | |
JP2011237901A (ja) | プレビュー画面表示制御装置およびプログラム | |
JP5929374B2 (ja) | プログラムおよび情報処理装置 | |
JP7487277B2 (ja) | プログラム、情報処理装置、及び情報処理装置の制御方法 | |
JP2008003954A (ja) | 印刷システム及び画像形成装置ならびに再印刷制御方法及び再印刷制御プログラム | |
JP2012128651A (ja) | 情報処理装置、印刷制御方法、及びプログラム | |
JP5857594B2 (ja) | 分散印刷システム及び印刷装置 | |
US20140233057A1 (en) | Control system for forming and outputting image, control apparatus for forming and outputting image, and recording medium storing a control program for forming and outputting image | |
US9165225B2 (en) | Program and information processing apparatus | |
JP2014191634A (ja) | プログラムおよび情報処理装置 | |
US8699071B2 (en) | Image forming apparatus and method of forming an image thereof | |
JP2010218325A (ja) | 印刷制御装置および印刷システム |