JP3833090B2 - Control method, control device, program, and storage medium - Google Patents

Control method, control device, program, and storage medium Download PDF

Info

Publication number
JP3833090B2
JP3833090B2 JP2001279597A JP2001279597A JP3833090B2 JP 3833090 B2 JP3833090 B2 JP 3833090B2 JP 2001279597 A JP2001279597 A JP 2001279597A JP 2001279597 A JP2001279597 A JP 2001279597A JP 3833090 B2 JP3833090 B2 JP 3833090B2
Authority
JP
Japan
Prior art keywords
printable area
member printers
printers
determining
printing
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
JP2001279597A
Other languages
Japanese (ja)
Other versions
JP2003084948A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2001279597A priority Critical patent/JP3833090B2/en
Priority to US10/241,572 priority patent/US7804607B2/en
Publication of JP2003084948A publication Critical patent/JP2003084948A/en
Application granted granted Critical
Publication of JP3833090B2 publication Critical patent/JP3833090B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、印字可能領域の決定についての制御方法、制御装置、プログラム及び記憶媒体に関する。
【0002】
【従来の技術】
近年、ネットワーク機器が一般に利用され、ネットワーク上に多数のパソコン(以下、PC)やプリンターが接続されるようになった。このようなネットワーク環境において、印刷を行う際、ページ数の多いドキュメントあるいは部数の多いドキュメントについては、印刷時間の短縮を図るために、いったん印刷ジョブをスプールし、複数のプリンタに頁ごとあるいは部数ごとに分散して出力する印刷ジョブ制御システム(分散印刷システム)が知られている。
【0003】
さらに、このようなネットワーク環境において、カラー頁、モノクロ頁が混在する一つのドキュメントに対して、印刷時のコストおよび印刷時間の短縮を図るために、カラー頁はカラープリンタへ、モノクロ頁はモノクロプリンタへ分散して出力する印刷ジョブ制御システム(カラー・モノクロ分散印刷システム)が知られている。
【0004】
さらに、このようなネットワーク環境において、一つのドキュメントを一度の印刷指示で、複数のプリンタに同時に送信し印刷する印刷ジョブ制御システム(同報印刷システム)が知られている。
【0005】
さらに、このようなネットワーク環境において、一つのプリンタに送信したドキュメントに対し、そのプリンタでエラーが発生した場合は、自動的に他のプリンタに切り替えて印刷する印刷ジョブ制御システム(エラー代行印刷システム)が知られている。
【0006】
【発明が解決しようとする課題】
しかしながら、同じサイズの紙に印字する場合でも、使用するプリンタによって印刷できる印字可能領域は異なる場合があり、印刷ジョブ制御システムで複数のプリンタを使用して分散、同報、代行等の印刷を行った場合に、夫々のプリンタに固有の特性(印字可能領域)を考慮して正常な印刷出力物が得られるように一括して設定するような効率的な設定方法はなかった。
【0007】
従来の設定方法によれば、それぞれのプリンタの印字可能領域を調べ、全てのプリンタで印字できる範囲で個々のプリンタあるいは個々のプリンタドライバに対し、同じ印刷領域を設定することもできるが、個別に設定を行う煩雑な操作が必要であった。
【0008】
また、接続された複数のプリンタへの印刷指示を、それぞれのプリンタをまとめた一つの仮想的なプリンタドライバで余白などの印字領域に関する設定をするような場合に、あるプリンタの印字領域に合わせて印刷指示を行うと、他のプリンタで印字欠けが発生する可能性があり、正常な印刷出力物を得るにはユーザはやはり、それぞれのプリンタの印字可能領域を調べ、全てのプリンタで印字できる範囲を自分で求める必要があった。
【0009】
また、複数のプリンタを対象とした印刷処理を想定した場合、複数のプリンタの組み合わせが変更されることもあり、このように変更された複数のプリンタの組合せに対して、正常な印刷出力物を得られるように印字可能領域に関する設定を行うには、ユーザはやはり個別のプリンタの印字領域を調べ夫々設定する必要があった。
【0010】
本発明は、上記問題点を鑑みてなされたものであり、複数のプリンタを用いる印刷環境下において、ユーザにとって利便性の高い印字可能領域の設定ができる仕組みを提供することにある。
【0011】
【課題を解決するための手段】
本発明は上記目的を達成するために、制御方法において、複数のメンバプリンタの夫々の印字可能領域情報を取得する取得ステップと、前記取得ステップにて取得された前記複数のメンバプリンタの夫々の印字可能領域情報に基づく印字可能領域を決定する決定ステップと、複数のメンバプリンタを利用する印刷処理に際して、代表となる印字可能領域を変更指定可能なユーザインターフェースに前記決定ステップにより決定された前記印字可能領域に基づく値を含めるよう制御する制御ステップとを有することを特徴とする。
【0019】
【発明の実施の形態】
(第1の実施の形態)
以下、本発明を適用するのに好適である実施形態について説明を行う。
【0020】
図1は、本発明を適用可能な情報処理システムの構成を説明するブロック図である。なお、本システムにおけるクライアントコンピュータは、1台、または複数台接続されていることを仮定している。
【0021】
図1において、102、103、104はクライアントコンピュータ(クライアント)としての情報処理装置であり、イーサネット(登録商標)などのネットワークケーブルによって、ネットワーク106に接続され、アプリケーションプログラム等の各種のプログラムを実行可能であり、印刷データをプリンタに対応するプリンタ言語に変換する機能を有するプリンタドライバを搭載している。なお、プリンタドライバは複数のプリンタドライバをサポートするものとする。
【0022】
101は本実施形態のサーバ(以下、プリントサーバと呼ぶ)としての情報処理装置であり、ネットワークケーブルによって、ネットワーク106に接続され、ネットワークで使用されるファイルを蓄積したり、ネットワーク106の使用状態を監視したりする。プリントサーバ101は、ネットワーク106に接続されている複数のプリンタを管理している。
【0023】
構成としては、クライアント102〜104とプリントサーバ101は、一般的な情報処理装置であり、クライアントとプリントサーバには、それぞれ異なる制御を行う印刷制御プログラムが実行可能に格納されている。
また、プリントサーバ101は、一般的な情報処理装置であり、クライアント102〜104の機能を同時に持つこともできる。
【0024】
本実施形態におけるプリントサーバ101は、さらにクライアントコンピュータ102、103、104から印刷要求が出された印字データを含む印刷ジョブを格納して印刷したり、または、クライアントコンピュータ102、103、104から印字データを含まないジョブ情報のみ受け取り、クライアントコンピュータ102、103、104の印刷順序を管理し、印刷順序になったクライアントに対して印字データを含む印刷ジョブの送信許可を通知したり、ネットワークプリンタ105のステータスや印刷ジョブの各種情報を取得し、クライアントコンピュータ102、103、104に通知したりする機能を揃えている。
【0025】
105は印刷制御装置であるネットワークプリンタであり、図示省略したネットワークインターフェイスを介してネットワーク106と接続されており、クライアントコンピュータから送信される印字データを含む印刷ジョブを解析して1ページずつドットイメージに変換して、1ページ毎に印刷する。106はネットワークであり、クライントコンピュータ102、103、104、サーバ101、ネットワークプリンタ105等と接続している。
【0026】
図2は、本発明の情報処理装置の構成を説明するブロック図であり、情報処理装置であるクライントコンピュータ102、103、104も同じ構成であり、さらにサーバ101も同様あるいは同等のハードウエア構成とする。よって、クライアントとサーバの構成を説明するブロック図として説明する。
【0027】
図2において、200は情報処理装置の制御手段であるCPUであり、ハードディスク(HD)205に格納されているアプリケーションプログラム、プリンタドライバプログラム、OSや本発明のネットワークプリンタ制御プログラム等を実行し、RAM202にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。
【0028】
201は記憶手段であるROMであり、内部には、基本I/Oプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。202は一時記憶手段であるRAMであり、CPU200の主メモリ、ワークエリア等として機能する。
【0029】
203は記憶媒体読み込み手段としてのフロッピー(登録商標)ディスク(FD)ドライブであり、後述する図5に示すようにFDドライブ203を通じて記憶媒体としてのFD204に記憶されたプログラム等を本コンピュータシステムにロードすることができる。なお、記憶媒体は、FDに限らず、CD−ROM、CD−R、CD−RW、PCカード、DVD、ICメモリカード、MO、メモリスティック等、任意である。
【0030】
204は記憶媒体であるフロッピーディスク(FD)であり、コンピュータが読み取り可能なプログラムが格納された記憶媒体である。
【0031】
205は外部記憶手段の一つであり、大容量メモリとして機能するハードディスク(HD)であり、アプリケーションプログラム、プリンタドライバプログラム、OS、ネットワークプリンタ制御プログラム、関連プログラム等を格納している。さらにスプール手段であるスプーラはここに確保される。スプール手段は、クライアントではクライアントスプーラのことであり、プリントサーバではサーバスプーラのことである。また、プリントサーバでは、クライアントから受けたジョブ情報を格納し、順序制御を行うためのテーブルもこの外部記憶手段に生成されて格納される。
【0032】
206は指示入力手段であるキーボードであり、ユーザがクライアントコンピュータに対して、また、オペレータや管理者がプリントサーバに対して、デバイスの制御コマンドの命令等を入力指示するものである。
【0033】
207は表示手段であるディスプレイであり、キーボード206から入力したコマンドや、プリンタの状態等を表示したりするものである。
【0034】
208はシステムバスであり、クライアントやプリントサーバであるコンピュータ内のデータの流れを司るものである。
【0035】
209は入出力手段であるインターフェイスであり、該インターフェイス209を介して情報処理装置は外部装置とのデータのやり取りを行う。
【0036】
図3は、図2に示したRAM202のメモリマップの一例を示す図であり、FD204からロードされる上記ネットワークプリンタ制御プログラムが、RAM202にロードされ実行可能となった状態のメモリマップである。
【0037】
本実施形態では、FD204からネットワークプリンタ制御プログラムおよび関連データを直接RAM202にロードして実行させる例を示すが、これ以外にも、FD204からネットワークプリンタ制御プログラムを動作させる度に、既にネットワークプリンタ制御プログラムがインストールされているHD205からRAM202にロードするようにしてもよい。
【0038】
また、本ネットワークプリンタ制御プログラムを記憶する媒体は、FD以外にCD−ROM、CD−R、PCカード、DVD、ICメモリカードであってもよい。さらに、本ネットワークプリンタ制御プログラムをROM201に記憶しておき、これをメモリマップの一部となすように構成し、直接CPU200で実行することも可能である。
【0039】
また、以上の各装置と同等の機能を実現するソフトウェアをもって、ハードウェア装置の代替として構成することもできる。
【0040】
また、本ネットワークプリンタ制御プログラムのことを、簡単に印刷制御プログラムと呼ぶこともある。印刷制御プログラムは、クライアントにおいて印刷ジョブの印刷先の変更を指示したり、印刷順序を変更する指示をするための制御を行うプログラムを含み、また、プリントサーバにおいて、印刷ジョブの順序制御を行ったり、印刷ジョブの印刷終了や印刷先変更要求などを通知するためのプログラムを含んでいる。また、このような制御を行う本発明の印刷制御プログラムは、クライアントにインストールされるモジュールと、プリントサーバにインストールされるモジュールを別々に分けてもよいし、ひとつの印刷制御プログラムが、実行される環境によりクライアント用として機能したり、またはプリントサーバ用として機能するようにしてもよい。あるいは一台のコンピュータに、クライアント用の機能を持つモジュールと、プリントサーバ用として機能するモジュールをともにインストールし、同時に、あるいは時分割で擬似的に平行動作させる構成も可能である。
【0041】
301は基本I/Oプログラムであり、本制御装置の電源がONされたときに、HD205からOSがRAM202に読み込まれ、OSの動作を開始させるIPL(イニシャルプログラムローデイング)機能などを有しているプログラムが入っている領域である。
【0042】
302はオペレーティングシステム(OS)であり、303はネットワークプリンタ制御プログラムで、RAM202上に確保される領域に記憶される。304は関連データで、RAM202上に確保される領域に記憶される。305はワークエリアで、CPU200が本プリンタ制御プログラムを実行する領域が確保されている。
【0043】
図4は、図2に示したFD204のメモリマップの一例を示す図である。
【0044】
図4において、400は前記FD204のデータ内容であり、401はデータの情報を示すボリューム情報であり、402はディレクトリ情報、403は本実施形態で説明する印刷制御プログラムであるネットワークプリンタ制御プログラム、404はその関連データである。403のネットワークプリンタ制御プログラムは、実施形態で説明するフローチャートに基づいてプログラム化したものであり、本実施例では、クライアント、サーバ共、同様の構成をとっている。
【0045】
図5は、図2に示したFDドライブ203に対して挿入されるFD204との関係を示す図であり、図2と同一のものには同一の符号を付してある。
【0046】
図5において、FD204には、本実施形態で説明するネットワークプリンタ制御プログラムおよび関連データを格納している。
【0047】
次に本実施の形態における、プリンタを複数台使用して、前述の分散、同報、代行といった印刷処理を行う、印刷ジョブ制御システムについて説明する。
【0048】
なお、本実施の形態では、複数のプリンタを1台のプリンタとして仮想的に束ねるプリンタをグループプリンタ、束ねられるプリンタをメンバプリンタと呼ぶ。また、それに対応するプリンタドライバをそれぞれグループプリンタドライバ、メンバプリンタドライバ、と呼ぶ。
【0049】
図6は本システムのクライアントサーバモデルにおいてMicrosoft Wordなどの一般的なアプリケーションから発行された印刷ジョブが、印刷ジョブ制御システムにおいてどのように処理されるかを示した図である。図6において、600はクライアントマシンで、印刷ジョブ制御システムのクライアントモジュールが動作するマシンを指す。
【0050】
通常、印刷の指示がされるとアプリケーションプログラムは一連の描画命令を生成し、プリンタドライバを経てWindows Spoolerに渡される。Windows Spoolerは、ユーザが選択したポートモニタにプリントジョブデータを渡してプリンタデバイスに送信させる手順をとる。
【0051】
本実施の形態では、ユーザはあらかじめ印刷ジョブ制御システム用のポートモニタ621(以降、本実施例ではジョブ制御ポートモニタと略記)を指定して印刷を指示する。アプリケーションプログラム601は一連の描画命令を生成する。描画命令を受け取ったグループプリンタドライバ603では、汎用印刷ファイルを生成し、プリンタデバイスへプリントジョブデータを送信するポートモニタではなく、ジョブ制御ポートモニタ621にプリントジョブデータとして送信する。ジョブ制御ポートモニタ621はプリントジョブデータをプリンタデバイス650に送信するのではなく、印刷ジョブ制御システム用プリントサービス622(以降、本実施例ではジョブ制御プリントサービスと略記)に送信する。ジョブ制御プリントサービス622は、プリントジョブデータに対して、後述するような印刷ジョブ制御処理を行う。
【0052】
印刷ジョブ制御システム用プリントマネージャ623(以降、本実施例ではジョブ制御プリントマネージャと略記)は、ユーザがジョブ制御プリントサービス622内部でプリントジョブがどのような状態にあるかを調べたり、プリントジョブを操作したりするためのユーザインターフェイス(UI)を提供するプログラムである。
ジョブ制御プリントマネージャ623はジョブ制御プリントサービス622のソフトウェアのインターフェイス(API)を介して、ジョブ制御プリントサービス622と情報・指示をやり取りしている。
【0053】
印刷ジョブ制御システム用サーバ630(以降、本実施例ではジョブ制御サーバと略記)は、個々のクライアント600上のジョブ制御プリントサービス622がプリンタデバイス650にプリントジョブデータを送信するタイミングを集中制御(スケジューリング)している。
【0054】
印刷ジョブ制御システム用マネージメントコンソール633(以降、本実施例ではジョブ制御マネージメントコンソールと略記)は、ジョブ制御サーバ630が持つソフトウェアがアクセスするためのAPIを介してジョブ制御サーバ630と情報・指示をやり取りすることで、印刷ジョブ制御システム全体を監視することができる。
【0055】
また、ジョブ制御サーバ630はデバイス情報コントロールモジュール631を用いて各プリンタデバイス650と通信を行い、各プリンタ内の印刷ジョブや動作状態に関する情報を入手したり、操作を行ったりする。入手した情報はクライアント600側のジョブ制御プリントサービス622に渡すことができる。
【0056】
次に本実施の形態におけるグループプリンタドライバ603からの印刷について説明する。
【0057】
グループプリンタドライバ603はアプリケーションプログラムが生成した一連の描画コマンドを、プリンタデバイスの種類に依存しない中間フォーマットのファイルである汎用印刷ファイルに変換する。この汎用印刷ファイルの構成については後述する。
【0058】
この汎用印刷ファイルは前述したようにWindows スプーラ604からジョブ制御ポートモニタ621を経て(a)、ジョブ制御プリントサービス622に導かれる(b)。ジョブ制御プリントサービス622はこのプリントジョブに対して行うジョブ制御の種類に応じて、汎用印刷ファイルをもとに描画コマンドを生成し(c)、続いてPDLドライバ602がその描画コマンドをプリンタデバイス650が解釈可能なPDLファイルにする。図6では、ジョブ制御プリントサービス622で、このプリントジョブに対してプリントジョブをふたつに分けるジョブ制御が行われる例で、2つのメンバジョブが生成された例を2つの矢印(c)で示している。PDLドライバ602で生成されたPDLファイルはWindows スプーラ604、ジョブ制御ポートモニタ621を経て(d)、再びジョブ制御プリントサービス622に渡される (e)。ジョブ制御プリントサービス622は、ジョブ制御サーバ630の指示に従ってPDLのプリントジョブデータをプリンタデバイス650に送信する(f)。
【0059】
ジョブ制御プリントサービス622は、汎用印刷ファイル中の印刷指示書の指示にしたがって、一つの汎用印刷ファイルを複数のプリントジョブに論理的に分割してそれぞれ別のプリンタデバイスに送信したり、一度送信したプリントジョブデータを別のプリンタデバイスに送信し直したりする。図A中の(c) (d) (e) (f) はそのような場合のプリントジョブデータの経路を示している。
【0060】
一方、汎用印刷ファイルをアプリケーションソフトウェアが作成し、そのアプリケーションソフトウェアが直接汎用印刷ファイルを印刷ジョブとして投入する場合、一般のアプリケーションとはグループプリンタドライバ603への情報の渡し方や、グループプリンタドライバ603での処理内容が異なる。前述のように、一般のアプリケーションの場合、アプリケーションはグループプリンタドライバ603に描画情報を渡す際、通常のプリンタドライバと同じようにWindowsのGDI関数を呼び出し、グループプリンタドライバ603がそれに応じて汎用印刷ファイルを生成する。これに対して汎用印刷ファイルを直接作成するアプリケーションの場合は、アプリケーションが汎用印刷ファイルをすでに持ち、それをグループプリンタドライバ603に供給する。グループプリンタドライバ603は必要に応じてあらかじめ設定された印刷方法にもとづいて汎用印刷ファイル内部の印刷指示書を書き換えてWindows Spooler604に送る。
【0061】
図8は、汎用印刷ファイルの構成の一例を示した図である。
本実施の形態で使用される汎用印刷ファイルは、印刷指示部8−aと、ドキュメントデータ部8−bからなる。印刷指示部は、ドキュメントの情報と印刷指示を記述した部分である。また、ドキュメントデータは、アプリケーションのドキュメントのデータを汎用的な形式のデータに変換したものであり、プリンタ言語に依存しないデータフォーマットとなっている。
印刷指示部はヘッダ部、ページ情報部、印刷体裁指示部、出力方法指定部、グループプリンタドライバ設定情報部、メンバプリンタ数、メンバプリンタドライバ名、メンバプリンタドライバ設定情報部などから構成されている。
ヘッダ部は本ファイルのバージョン識別やファイル情報などの情報を格納する部分である。
【0062】
ページ情報部は、ドキュメントデータ部8−bのドキュメントデータのページ数、各ページのサイズなどの情報を格納する部分である。
印刷体裁指示部は、印刷ページ範囲、印刷部数、ドキュメントデータの面付け情報(N−UPや製本印刷など)、ステイプル指示やパンチ指示など、出力体裁に関する情報を格納する部分である。
【0063】
出力方法指定部は、出力方法として、分散印刷、カラーモノクロ分散印刷、代行印刷、同報印刷などの情報を格納する部分である。
グループプリンタドライバ設定情報部は、後述するグループプリンタドライバのUIの設定情報を格納する部分である。
【0064】
メンバプリンタ数はグループプリンタドライバが関連付けているメンバプリンタの数を格納する部分である。
メンバプリンタドライバ名は、メンバプリンタのプリンタドライバ名を格納する部分である。
【0065】
メンバプリンタドライバ設定情報部はメンバプリンタのドライバUIの設定情報として例えばDEVMODEと呼ばれるWindows Systemのプリンタドライバ設定項目情報を格納する部分である。
【0066】
このメンバプリンタドライバ名とメンバプリンタドライバ設定情報部は、前述のメンバプリンタ数に格納された数だけの格納エリアを持っている。
前述の図6で説明したグループプリンタドライバ603では、汎用印刷ファイルを生成する際、グループプリンタドライバGUI上の設定を印刷指示部8−aへ記録する。さらに、グループプリンタドライバ603はGDIで受け取ったデータを汎用的なデータに変換しドキュメントデータとして、本汎用印刷ファイルのドキュメントデータ部に記録することとなる。
【0067】
なお、本ファイルは、印刷指示部8−aとドキュメントデータ部8−bが異なるファイルであってもかまわない。その場合、印刷指示部は印刷指示書ファイルとして、ドキュメントデータ部はドキュメントデータファイルとしてそれぞれ存在し、これらを一つのアーカイブ形式でまとめて同様に一つのファイルのように扱うこともが可能である。
【0068】
次に図7でWindowsが提供するPrintSystemと印刷ジョブ制御システムにおける印刷ジョブの関係と処理概要をさらに詳しく述べる。
【0069】
図7中で印刷ジョブ制御システム700は、サーバとクライアントの制御プログラムが動作する物理的なマシンをまたいだ、印刷ジョブ制御システムの範囲を示している。 また、サーバが管理している出力ポート(Output Port)711は、クライアントのジョブ制御プリントサービス622のプロキシ出力ポート(Proxy Output Port)712と関連付けられ、ひとつのポートに関連づけられた各クライアント上のプロキシ出力ポート全てを統一的に管理している。本実施例では、実際のプリントジョブデータはおのおののクライアントのプロキシ出力ポート712に保持される。ジョブ制御サーバ630は、プリントジョブデータ自体の送信処理は行わず、ジョブ制御プリントサービス622に対して印刷ジョブの送信指示のみを行う。その指示に応じてクライアントのジョブ制御プリントサービス622はプリントジョブデータをデバイス650に送信する。
【0070】
次に、印刷ジョブ制御システム700が、代行印刷、分散印刷、同報印刷などの付加価値的な印刷を行う場合の処理を説明する。
印刷ジョブ制御システム700が、代行印刷、分散印刷、同報印刷などの付加価値的な印刷を行う場合には、前述のようにユーザまたはアプリケーション601はグループプリンタドライバ603が割り当てられたプリンタに印刷ジョブを発行しなければならない。ジョブ制御プリントサービス622は、グループプリンタドライバ603によって処理されたジョブデータをジョブ制御ポートモニタ621を介して汎用印刷ファイルとして受け取る。ジョブ制御プリントサービス622はこのジョブを受け取り、Despooler701を介してPDLドライバが割り当てられた別のプリンタにジョブ(メンバジョブ)を発行して印刷を行わせる。この時、Despooler701は前述の図8で説明した汎用印刷ファイルの印刷指示部8−aを解釈し、ドキュメントデータ部8−bのドキュメントデータを加工して、WindowsのGDIに変換し、各プリンタドライバに対して印刷指示を行い印刷ジョブを発行する。例えば印刷体裁指定部に、2−UPの指示が記録されていた場合、用紙1枚に2ページ分のドキュメントデータを縮小レイアウトする。また分散印刷あるいは同報印刷の場合には、それらの設定に応じて印刷指示部8−aに記述されている複数のメンバプリンタにジョブを発行する。代行印刷の場合は、代行する条件が満たされた時に、自動代行では事前の設定、手動代行ではユーザの操作に応じてメンバジョブを発行する。
【0071】
また、Despooler701は各メンバプリンタにジョブを発行する際、メンバプリンタドライバに対応する印刷指示として、各メンバプリンタのDEVMODEを作成する必要があるが、このDEVMODEは印刷指示部8−aに記載された内容を適宜各メンバプリンタのDEVMODEに反映させて生成する。
【0072】
クライアント側のジョブ制御プリントサービス622は、PDLドライバ602によってレンダリングされた、それぞれのメンバジョブのPDLデータをジョブ制御ポートモニタ621を介して受け取り、受け取ったジョブに関する情報をサーバ側に知らせ、ジョブデータは自身のプロキシ出力キュー(Proxy Output Port)712で一時保持する。その後、ジョブ制御サーバ630からの送信指示を受けた後にプリントデバイス650に送信する。
【0073】
次に本発明の実施形態における、印刷ジョブ制御システムのためのグループプリンタドライバの制御について説明する。
【0074】
図9は、本発明のグループプリンタドライバのシステムへのインストール時の処理制御フローを示すフローチャートである。この図9のフローチャートの各ステップの処理は上に説明した情報処理装置に設けられたCPU(中央演算処理装置)が、ROM、FD、ハードディスク(HD)等の所定の記憶媒体に記憶された制御プログラムを読込み、該読込んだプログラムに基づく処理を実行することに応じて実現されるものとする。また後述する図10、11、15のフローチャートについても同様のこととする。
【0075】
先ず、ステップS901において、インストールが開始されると、印刷ジョブ制御システムAPIを使って、グループプリンタドライバで使用するメンバプリンタ名を取得する。
【0076】
そしてステップS902にて、メンバプリンタドライバの保持するIDを元に各メンバプリンタドライの印字可能領域情報に関する情報を取得する。尚、本実施の形態における印字可領域とは、所定のプリンタにおいて、1枚の記録媒体においてどこまでの印刷範囲を指定することができるかの印刷可能な範囲のことを指す。
【0077】
ここで、メンバプリンタドライバのIDについて詳しく説明すると、本実施の形態におけるメンバプリンタドライバのIDとしては、例えば、プリンタドライバに対応したアイコンに登録された名称(テキストデータ)や、プリンタドライバに独自に割り当てられたシリアル番号などの識別情報、登録されたプリンタドライバの管理テーブルに独自に割り当てられた識別情報などが想定されるが、夫々のメンバプリンタドライバを特定することができる情報であれば適用可能となる。また、後述する図10、図11、図15においても同様の事が想定される。
【0078】
また、紙などの所定の記録媒体のサイズと(例えばA4用紙サイズならば縦×横=297×210(mm))、印刷(画像形成)が実施になされる範囲を示す情報と、より余白値を算出することができるので、ステップS902において取得される印字可能領域に関する情報とは、余白値を示す情報そのもの、或は、所定のサイズの記録媒体に対して画像形成を行うことができる範囲を示す情報の双方が適用可能となる。
【0079】
そして、ステップS903においては、ステップS902において実行された処理を、対象となる全てのメンバプリンタに対して繰り返し行う。
【0080】
そして、ステップS904では、ステップS901からステップS903の処理を介して取得された各メンバプリンタドライの印字可能領域の情報より、複数のメンバプリンタドライバの夫々の属性において最適な印刷可能領域を決定する。
【0081】
なお、ステップS904にて決定された最適な印字可能領域はドライバのデフォルト設定値として所定の記憶部に保持されたのち、図9に示されたフローチャートの処理は終了される。
【0082】
図14にグループプリンタドライバのユーザインターフェイスの表示様子の一例を示す。この図14の表示は、本発明の印刷制御用プログラム(グループプリンタドライバを含む)に含まれるユーザインターフェイスを表示するための画面情報に基づく表示が、OSを介して表示部に表示されたものに相当するものであり、本実施形態における表示も同様の仕組みで表示されたものになる。
【0083】
この、図14においてはステップS904にて決定された最適な印字可能領域の情報が1401の余白に設定欄におけるデフォルト値としてユーザインターフェイスに反映されている。また、更なる好適な別の形態として、1402の余白の選択可能範囲(1402においては1.0〜52.5mmと表示)の最小値に、決定された印字可能領域に関する情報を反映させることも想定されこれによりユーザが不適切な余白値を設定するようなことを未然に防ぐことができる。即ち、コンフリクト処理の結果を最小値に反映させる。
【0084】
以上説明してきたように図9のフローチャートによれば、本発明の印刷制御プログラムがインストールされた時点において印字可能領域が決定され、更にデフォルトの設定として保持されているため、その後のアプリケーションからの問い合わせに対し、適正な印字可能領域を指定するための値を正しく返答することができるようになる。
【0085】
また、図9のステップS902の制御は、WindowsSystemを介してメンバプリンタドライバに問い合わせても良いし、あるいは、直接メンバプリンタに問い合わせても良い。または、印刷ジョブ制御システムにあらかじめ各メンバプリンタの印刷可能領域を登録しておき、グループプリンタドライバインストール時には印刷ジョブ制御システムに問い合わせる構成をとることも可能である。
【0086】
図10は、本発明におけるグループプリンタドライバのUI表示処理時の処理制御フローを示すフローチャートである。この図10のフローチャートの各ステップの処理は上に説明した情報処理装置に設けられたCPU(中央演算処理装置)が、ROM、FD、ハードディスク(HD)等の所定の記憶媒体に記憶された制御プログラムを読込み、該読込んだプログラムに基づく処理を実行することに応じて実現されるものとする。
【0087】
まず、ステップS1001では、WindowsSystemを介してアプリケーションからUI表示要求があると、印刷ジョブ制御システムAPIを使って、グループプリンタドライバで使用するメンバプリンタドライバのIDの取得が行われる。
【0088】
ステップS1002では、この際に取得された各メンバプリンタドライバIDと予めグループプリンタドライバが保持するメンバプリンタドライバの構成とを比較する処理が実行される。言い換えれば前回取得された複数のメンバプリンタドライバのIDと、今回取得された複数のメンバプリンタドライバのIDとの一致を調べる調査処理を実行する。
【0089】
ステップS1002の判定の結果、メンバプリンタドライの構成に変更がなかったと判定した場合には、ステップS1006で前回に決定した最適な印字可能領域の値に基づいてユーザインタ−フェイスの表示を行う制御がなされる。
【0090】
一方、ステップS1002における判定処理の結果、メンバプリンタドライバの構成(複数のメンバプリンタドライバのIDの組合せ)が以前と変更されていると判定された場合には、再度、印字可能領域に関する情報の調査を行う(S1003)。具体的には、図9のフローチャートにて説明した処理と同様のものであり、メンバプリンタドライバのIDを元に各メンバプリンタドライバの印字可能領域情報を取得する処理が施される。
【0091】
そして、全てのメンバプリンタドライバに対してステップS1003の処理が施されたか否かの判定が行われ(S1004)、終了したと判定されれば、処理をステップS1005に進める。
【0092】
そして、ステップS1005においては、ステップS1003及びステップS1004の処理により取得された各メンバプリンタドライバの印字可能領域に関する情報に基づく最適な印刷可能領域を決定する。そして、S1005にて決定された最適な印字可能領域の情報はグループプリンタドライバのデフォルトの設定値として所定の記憶部に保持され、その後、ステップS1005にて決定された最適な印字可能領域に基づくユーザインターフェイスを表示させるような制御が本発明の印刷制御プログラムによって実行される(S1006)。
【0093】
図10のフローチャートにより図9の場合と同様に、図14に示されるようなユーザインターフェイスが表示され、この場合には、ステップS1005にて決定された最適な印字可能領域に関する情報が1401の余白のデフォルト値としてユーザインターフェイスに反映されている。また、好適な別の形態そして、1402の余白の選択可能範囲の最小値に決定された印字可能領域に関する情報を反映させることも想定され、これにより、予めユーザが不適切な余白に関する設定値を設定することを未然に防ぐことができる。
【0094】
また、図10のフローチャートによれば、メンバプリンタドライバの構成が変更されることに応じて、図14の1401、或は、1402の値も変更されて設定されるよう制御が行われるので、ユーザは常にメンバプリンタの構成が変わろうとも、常に最適な印字可能領域に関する情報を得ることができる。
【0095】
図10のフローチャートの処理によれば、最適な印刷可能領域が決定され、グループプリンタドライバの設定値として所定の記憶部に保持されるため、その後のアプリケーションからの問い合わせに対し、最適な印刷可能領域を正しく返答することができる。
【0096】
ここで、更に、ステップS904、或は、ステップS1005の最適な印字可能領域の決定の処理について詳しく説明すると、ステップS904、或は、ステップS1005では取得された各メンバプリンタの印字可能領域に関する情報から、上下左右について各々もっとも狭い幅を印刷幅とし採用し最適な印刷可能領域に決定する。また、この処理は用紙サイズ毎に異なる印刷可能領域として決定される。
【0097】
尚、記録媒体のサイズと、該サイズに対する印字可能範囲と、が定まれば余白値が決定されることは明らかである。即ち、ステップS904、或は、ステップS1005における最適な印字可能領域は余白値としても無論提供することができる。
【0098】
(第2の実施の形態)
第1の実施の形態では、所定の用紙サイズに対して最も狭い印刷範囲を採用するよう処理について説明してきた。
【0099】
これとは別の最適な印字可能領域の決定方法として、得られた各メンバプリンタの印字可能領域から、上下左右について各々もっとも広い領域を採用すること、平均の値を採用する構成をとることも本発明では想定される。
【0100】
また、複数の印字可能領域決定の方法を持つ構成の場合に、その選択方法を一意に決定せず、ユーザーインターフェイスに表示することで、ユーザーに選択させることができる構成を取ることも可能である。
【0101】
以下、図面を参照しながら第2の実施の形態について説明をする。
【0102】
図11はそのグループプリンタドライバUIが表示される際の処理制御フローを示すフローチャートである。この図11のフローチャートの各ステップの処理は上に説明した情報処理装置に設けられたCPU(中央演算処理装置)が、ROM、FD、ハードディスク(HD)等の所定の記憶媒体に記憶された制御プログラムを読込み、該読込んだプログラムに基づく処理を実行することに応じて実現されるものとする。
【0103】
まず、ステップS1101では、WindowsSystemを介してアプリケーションからUI表示要求があると、印刷ジョブ制御システムAPIを使って、グループプリンタドライバを構築する各メンバプリンタドライバのIDの取得がされる。
【0104】
そして、ステップS1102では、グループプリンタドライバが予め保有するメンバプリンタドライバの構成と、ステップS1101で取得されたメンバプリンタドライバIDとの比較が行われる。
【0105】
ステップS1102において変更がなかったと判定された場合は、ステップS1116では、前回決定された最適な印字可能領域を反映させたグループプリンタドライバの各種設定を行うためのユーザインターフェイスの表示がなされる。
【0106】
また、ステップS1102における比較の判定の結果、メンバプリンタドライバの構成が変更されているとされた判定された場合には、夫々のメンバプリンタドライバのIDを元に各メンバプリンタドライバ固有の印字可能領域情報を取得し(S1103)、ステップS1103の処理を全てのメンバプリンタドライバに対して繰り返し行う(S1104)。
【0107】
そして、ステップS1103、ステップS1104にて得られた各メンバプリンタドライバの印字可能領域に関する情報と、図13に示されるようなユーザーインターフェイスを介して前回、或は予め指示された最適な印字可能領域決定方法と、に基づいて印刷可能領域を決定する(S1105)。
【0108】
そして、ステップS1105にて決定された印字可能領域の値をグループプリンタドライバのUIに反映させて表示させるようにする制御が施される(S1106)。
【0109】
さらに、ステップS1107では、ユーザーが印字可能領域決定方法を所定の印字可能領域決定方法に変更するよう指示がなされたか否かの判定が行われる。
【0110】
ステップS1107にて変更するよう指示が入力されたと認識した場合には、変更されるよう指示された印字可能領域決定と、ステップS1103、ステップS1104の処理にて取得された各メンバプリンタドライバの印刷可能領域の情報と、に基づいて再度印字可能領域を決定する(S1105)。
【0111】
ステップS1106では、ステップS1105にて再度決定された印字可能領域の値をグループプリンタドライバのUIに反映させて表示させるようにする制御が行われる。
【0112】
また、ステップS1107にて、印字可能領域決定方法を変更するよう指示がなかったと判定した場合には、現在選択されている印字可能領域決定方法と、ステップS1105にて決定された印字可能領域をグループプリンタドライバの設定値として所定の記憶部に保持させ処理を終了する。
【0113】
このように図11のフローチャートによれば、ユーザ所望の印字可能領域決定方法で印字可能領域を決定することを容易に実現できる。
【0114】
図13は、この構成におけるUI表示の一例を示したものである。ユーザは1301から1303をマウス等のポインティングデバイスを介して所望の印字可能領域決定方法を選択することができる。また、1301から1303の印字可能領域決定方法の変更に対して決定された印字可能領域の値は、1304にデフォルト値として反映され表示される。
【0115】
(第3の実施の形態)
第3の実施の形態では、図12に示されるような対応表に従って、印刷ジョブ制御システム700が、代行印刷、分散印刷、同報印刷などの付加価値的な印刷の内、いずれを行うかに従って、処理方法を自動的に選択する処理についての説明を行う。
【0116】
以下、図15を参照しながら説明をする。
【0117】
まずステップS1501から1503においては、現在設定されている出力方法が同報印刷か、或は、分散印刷か、或は、カラー/モノクロ分散印刷かの判定が行われる。何れもステップにおいても、判定結果がNoであった場合には、出力方法は代行印刷であると判定される。無論、出力方法が更にある場合には図15のフローに様々な出力方法についての判定処理と、夫々の出力方法に対応した印字可能領域決定方法が適用可能であることが想定される。
【0118】
また、グループプリンタドライに設定されている出力方法が、ステップS1501から1503の何れかの出力方法に該当すると判定された場合には、最適な印刷可能領域を決定する方法として”最小範囲選択”が採用される(S1505)。
【0119】
ここで、”最小範囲選択”の方法は、第1の実施の形態でも説明したように、取得された各メンバプリンタの印字可能領域に関する情報から、所定の用紙サイズ毎に、上下左右について各々もっとも狭い幅を印刷幅とし選択し、それを最適な印刷可能領域にするような制御に相当するものである。
【0120】
また、ステップS1501からステップS1503の出力方法の何れも該当しないと判定された場合、即ち、現在設定されている出力方法が”代行印刷”であると判定された場合には、代行先のプリンタに対する最適な印字可能領域の決定方法は、代表メンバプリンタに設定された印字可能領域と同じ印字可能領域が代行先のメンバプリンタドライバに対する実際の印刷対象領域として設定される(S1504)。
【0121】
ここで、代表のメンバプリンタ(代表メンバプリンタドライバ)とは、ユーザインターフェイスを介して優先順位を設定した複数のメンバプリンタの何れかのうち、優先順位が第1番目のものを指し、それを代表のメンバプリンタドライバとする。優先順位は、ユーザーに指示に応じて任意に設定させれるが、この際、優先順位が2番目、3番目、4番目、・・n番目のメンバプリンタドライバの印字可能領域に代表メンバプリンタドライバの印字可能領域が最適な印字可能領域として設定される。なお、最適印字可能領域が変更される際に、クライアントの表示部に、「最適印時可能領域の算出方法を変更してもよろしいですか?」などの警告を表示させるようにすれば、よりユーザに優しい。
【0122】
また、図15のフローチャートにおいて説明した制御は、第1の実施の形態にて説明した、図9のステップS904、或は、図10のステップS1005に当てはめて考えることができ、ことにより、現在設定されている出力方法(同報、分散、カラーモノクロ分散印刷、代行印刷など)に応じて最適な印刷可能領域算出方法が自動的選択されることになる。
【0123】
図15のフローチャートによれば、複数のメンバプリンタドライバを対象にした印刷処理において、分散印刷、代行印刷などの出力方法に応じて異なる最適な印字可能領域の決定方法を選択を、ユーザが特別な操作をすることなく実現することができる。
【0124】
また、出力方法に応じて異なる、最適な印刷可能領域を算出する方法は、図12に示したようなものに限定されるもんではなく、例えば、「代行印刷」に対して「最大範囲選択」、「分散印刷」に対して「最小範囲選択」、「カラーモノクロ分散印刷」に対して「最小範囲選択」、「同報印刷」に対して「範囲平均選択」と適宜変更することも本発明では想定される。
【0125】
以上の説明したように、ユーザーは煩雑な作業を強いられることなく、接続された複数のプリンタ全において正常な印刷が保証される印刷領域に、印刷を行うことが効率良く実現される。
また、印刷ジョブ制御システムの動作設定ごとに最適な印字可能領域決定方法をとることで、印字可能領域を印刷ジョブ制御の目的に合わせて、最適な印字可能領域を自動で設定できる。
【0126】
また、印字可能領域を明示的に指示することが可能なユーザインターフェイスを持つことで、自動決定された印字可能領域に不満のあるユーザに対しても、より柔軟な印字可能領域設定を提供できる。その際には、印字可能領域決定手段により決定された印字可能領域を規定値として表示することで、ほとんどのユーザに再度選択する手間をかけさせずに適切な印字可能領域設定を提供できる。さらに、いずれかの印刷装置で印字できない範囲については、表示、選択させないことで、誤って印字結果が欠けてしまうことを未然に防ぐことができる。
【0127】
以上のように、複数のプリンタ(メンバプリンタドライバ)を操作対象とするような印刷環境下において、ユーザにとって簡易に印字可能領域に関する印刷設定を行える仕組みを提供することができる。
【0128】
なお、本発明は、複数の機器(例えばホストコンピュータ、インターフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(複写機、プリンタ、ファクシミリ装置など)に適用してもよい。
【0129】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、システムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成される。
【0130】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体、或は、そのプログラムコード自体は本発明を構成することになる。
【0131】
プログラムコードを供給するための記憶媒体としては、上にも説明したようにフロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、DVD、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
【0132】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0133】
更に、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0134】
【発明の効果】
以上説明したように、本発明によれば、複数のプリンタを用いる印刷環境下において、印字可能領域の設定を効率的に且つ容易にユーザが設定できる仕組みを提供することが実現される。
【0138】
また、複数のプリンタを対象とした印刷処理において、複数のプリンタの組み合わせが変更されたとしても、変更に応じた印字可能領域をユーザに提供することができるようになった。
【図面の簡単な説明】
【図1】本発明を適用可能な情報処理システムの構成を説明するブロック図。
【図2】本発明の情報処理装置の構成を説明するブロック図。
【図3】図2に示したRAM202のメモリマップの一例。
【図4】図2に示したFD204のメモリマップの一例。
【図5】図2に示したFDドライブ203に対して挿入されるFD204との関係を示す図。
【図6】本発明の情報処理装置のプリント制御モジュール構成を説明するブロック図。
【図7】本発明の情報処理装置のプリント制御モジュール構成を説明するブロック図。
【図8】本発明の汎用印刷ファイルの構成の一例を示した図。
【図9】本発明のグループプリンタドライバのシステムへのインストール時の制御を示すフローチャート。
【図10】本発明におけるグループプリンタドライバのUI表示処理時の制御を示すフローチャートの一例。
【図11】本発明におけるグループプリンタドライバのUI表示処理時の制御を示すフローチャートの一例。
【図12】本発明の印字可能領域決定の方法を制御するためのテーブルの一例。
【図13】本発明のUI表示の一例。
【図14】本発明のUI表示の一例。
【図15】本発明の出力方法に応じて、最適な印刷可能領域を決定する方法を決定するためのテーブル。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a control method, control device, program, and storage medium for determining a printable area.
[0002]
[Prior art]
In recent years, network devices are generally used, and many personal computers (hereinafter referred to as PCs) and printers are connected to the network. In such a network environment, when printing a document with a large number of pages or a document with a large number of copies, a print job is spooled once for each page or the number of copies in a plurality of printers in order to shorten the printing time. 2. Description of the Related Art A print job control system (distributed printing system) that outputs data in a distributed manner is known.
[0003]
Furthermore, in such a network environment, in order to reduce the printing cost and the printing time for a single document in which color pages and monochrome pages are mixed, color pages are transferred to color printers, and monochrome pages are transferred to monochrome printers. 2. Description of the Related Art A print job control system (color / monochrome distributed printing system) that outputs data in a distributed manner is known.
[0004]
Furthermore, in such a network environment, a print job control system (broadcast printing system) is known that simultaneously transmits a single document to a plurality of printers with a single print instruction.
[0005]
Further, in such a network environment, when an error occurs in a document sent to one printer, the print job control system (error substitution printing system) that automatically switches to another printer and prints it. It has been known.
[0006]
[Problems to be solved by the invention]
However, even when printing on paper of the same size, the printable area that can be printed may vary depending on the printer used, and printing, such as distributed, broadcast, proxy, etc., is performed using multiple printers in the print job control system. In such a case, there has been no efficient setting method in which batch setting is performed so that a normal printout can be obtained in consideration of characteristics (printable area) unique to each printer.
[0007]
According to the conventional setting method, the printable area of each printer can be checked, and the same print area can be set for each printer or individual printer driver within the range that can be printed by all printers. A complicated operation for setting was necessary.
[0008]
Also, when printing instructions for multiple connected printers are set for a print area such as margins using a single virtual printer driver that combines the printers, it is matched to the print area of a certain printer. When printing instructions are given, there is a possibility that printing failure may occur in other printers, and in order to obtain a normal printed output, the user must also check the printable area of each printer and be able to print on all printers. I had to ask for myself.
[0009]
In addition, when a printing process for a plurality of printers is assumed, a combination of a plurality of printers may be changed, and a normal printout is output for a combination of the plurality of printers thus changed. In order to make a setting relating to the printable area so as to be obtained, the user still has to check the print area of each individual printer and set each.
[0010]
SUMMARY An advantage of some aspects of the invention is that it provides a mechanism that allows a user to set a printable area that is convenient for a user in a printing environment using a plurality of printers.
[0011]
[Means for Solving the Problems]
In order to achieve the above object, according to the present invention, in the control method, an acquisition step of acquiring printable area information of each of a plurality of member printers, and a print of each of the plurality of member printers acquired in the acquisition step A determination step for determining a printable area based on the printable area information, and the printability determined by the determination step in a user interface capable of changing and specifying a representative printable area in a printing process using a plurality of member printers. And a control step for controlling to include a value based on the region.
[0019]
DETAILED DESCRIPTION OF THE INVENTION
(First embodiment)
Hereinafter, an embodiment suitable for applying the present invention will be described.
[0020]
FIG. 1 is a block diagram illustrating a configuration of an information processing system to which the present invention can be applied. It is assumed that one or more client computers are connected in this system.
[0021]
In FIG. 1, reference numerals 102, 103, and 104 denote information processing apparatuses as client computers (clients), which are connected to a network 106 by a network cable such as Ethernet (registered trademark) and can execute various programs such as application programs. And a printer driver having a function of converting print data into a printer language corresponding to the printer. Note that the printer driver supports a plurality of printer drivers.
[0022]
Reference numeral 101 denotes an information processing apparatus as a server (hereinafter referred to as a print server) according to the present embodiment. The information processing apparatus 101 is connected to the network 106 via a network cable and stores files used in the network, Or monitor. The print server 101 manages a plurality of printers connected to the network 106.
[0023]
As the configuration, the clients 102 to 104 and the print server 101 are general information processing apparatuses, and the client and the print server each store a print control program for performing different controls.
The print server 101 is a general information processing apparatus and can simultaneously have the functions of the clients 102 to 104.
[0024]
The print server 101 in the present embodiment further stores and prints a print job including print data for which a print request has been issued from the client computers 102, 103, 104, or print data from the client computers 102, 103, 104. Only the job information that does not contain data, manages the print order of the client computers 102, 103, and 104, notifies the client in the print order of permission to send a print job including print data, and the status of the network printer 105 And a function for acquiring various types of print job information and notifying the client computers 102, 103, and 104.
[0025]
A network printer 105, which is a print control apparatus, is connected to the network 106 via a network interface (not shown). The print job including print data transmitted from the client computer is analyzed and converted into a dot image page by page. Convert and print page by page. A network 106 is connected to the client computers 102, 103, 104, the server 101, the network printer 105, and the like.
[0026]
FIG. 2 is a block diagram for explaining the configuration of the information processing apparatus according to the present invention. The client computers 102, 103, and 104, which are information processing apparatuses, have the same configuration, and the server 101 has the same or equivalent hardware configuration. To do. Therefore, it demonstrates as a block diagram explaining the structure of a client and a server.
[0027]
In FIG. 2, reference numeral 200 denotes a CPU that is a control unit of the information processing apparatus, which executes an application program, a printer driver program, an OS, a network printer control program of the present invention, and the like stored in a hard disk (HD) 205. Control to temporarily store information, files, etc. necessary for program execution.
[0028]
Reference numeral 201 denotes a ROM which is a storage unit, and stores therein various data such as a program such as a basic I / O program, font data used in document processing, and template data. Reference numeral 202 denotes a RAM which is temporary storage means, and functions as a main memory, work area, and the like of the CPU 200.
[0029]
Reference numeral 203 denotes a floppy (registered trademark) disk (FD) drive as a storage medium reading means. As shown in FIG. 5 to be described later, a program stored in the FD 204 as a storage medium is loaded into the computer system through the FD drive 203. can do. Note that the storage medium is not limited to the FD, and may be any CD-ROM, CD-R, CD-RW, PC card, DVD, IC memory card, MO, memory stick, and the like.
[0030]
Reference numeral 204 denotes a floppy disk (FD) as a storage medium, which is a storage medium storing a computer-readable program.
[0031]
Reference numeral 205 denotes one of external storage means, which is a hard disk (HD) that functions as a large-capacity memory, and stores an application program, a printer driver program, an OS, a network printer control program, related programs, and the like. Further, a spooler which is a spool means is secured here. The spool means is a client spooler in the client, and a server spooler in the print server. In the print server, job information received from the client is stored, and a table for controlling the order is also generated and stored in the external storage means.
[0032]
Reference numeral 206 denotes a keyboard which is an instruction input unit. The user instructs the client computer and the operator or administrator inputs an instruction of a device control command to the print server.
[0033]
A display 207 is a display unit that displays commands input from the keyboard 206, the status of the printer, and the like.
[0034]
A system bus 208 controls the flow of data in a computer that is a client or a print server.
[0035]
Reference numeral 209 denotes an interface serving as an input / output unit, and the information processing apparatus exchanges data with an external apparatus via the interface 209.
[0036]
FIG. 3 is a diagram showing an example of the memory map of the RAM 202 shown in FIG. 2, and is a memory map in a state where the network printer control program loaded from the FD 204 is loaded into the RAM 202 and can be executed.
[0037]
In this embodiment, the network printer control program and related data are loaded directly from the FD 204 into the RAM 202 and executed. However, every time the network printer control program is operated from the FD 204, the network printer control program is already executed. May be loaded into the RAM 202 from the HD 205 in which is installed.
[0038]
The medium for storing the network printer control program may be a CD-ROM, CD-R, PC card, DVD, or IC memory card in addition to the FD. Furthermore, it is possible to store the network printer control program in the ROM 201, configure it as a part of the memory map, and execute it directly by the CPU 200.
[0039]
In addition, software that realizes the same function as each of the above devices can be used as an alternative to a hardware device.
[0040]
The network printer control program may be simply referred to as a print control program. The print control program includes a program for instructing the client to change the print destination of the print job, or for instructing to change the print order, and in the print server to perform the print job order control. , A program for notifying the end of printing of a print job, a request for changing the printing destination, and the like is included. The print control program of the present invention for performing such control may separately divide a module installed in the client and a module installed in the print server, or one print control program is executed. It may function as a client or a print server depending on the environment. Alternatively, it is possible to install a module having a client function and a module functioning as a print server on one computer, and to perform a pseudo parallel operation at the same time or in a time division manner.
[0041]
Reference numeral 301 denotes a basic I / O program, which has an IPL (Initial Program Loading) function for starting the operation of the OS by reading the OS from the HD 205 into the RAM 202 when the control device is turned on. This is the area that contains the program.
[0042]
Reference numeral 302 denotes an operating system (OS), and 303 denotes a network printer control program, which is stored in an area secured on the RAM 202. Reference numeral 304 denotes related data, which is stored in an area secured on the RAM 202. Reference numeral 305 denotes a work area in which an area for the CPU 200 to execute the printer control program is secured.
[0043]
FIG. 4 is a diagram illustrating an example of a memory map of the FD 204 illustrated in FIG.
[0044]
In FIG. 4, 400 is the data content of the FD 204, 401 is volume information indicating data information, 402 is directory information, 403 is a network printer control program which is a print control program described in the present embodiment, 404 Is the related data. The network printer control program 403 is a program based on the flowchart described in the embodiment. In this embodiment, the client and the server have the same configuration.
[0045]
FIG. 5 is a diagram showing a relationship with the FD 204 inserted into the FD drive 203 shown in FIG. 2, and the same components as those in FIG. 2 are denoted by the same reference numerals.
[0046]
In FIG. 5, the FD 204 stores a network printer control program and related data described in the present embodiment.
[0047]
Next, a print job control system that uses a plurality of printers according to the present embodiment and performs the above-described printing processing such as distribution, broadcast, and substitution will be described.
[0048]
In this embodiment, a printer that virtually bundles a plurality of printers as one printer is called a group printer, and a printer that can be bundled is called a member printer. The corresponding printer drivers are called a group printer driver and a member printer driver, respectively.
[0049]
FIG. 6 is a diagram showing how a print job issued from a general application such as Microsoft Word in the client server model of this system is processed in the print job control system. In FIG. 6, reference numeral 600 denotes a client machine, which indicates a machine on which a client module of the print job control system operates.
[0050]
Normally, when a printing instruction is given, the application program generates a series of drawing commands and passes them to Windows Spooler via a printer driver. Windows Spooler takes a procedure of passing print job data to the port monitor selected by the user and transmitting it to the printer device.
[0051]
In the present embodiment, the user designates a print job control system port monitor 621 (hereinafter abbreviated as job control port monitor in this embodiment) and instructs printing in advance. The application program 601 generates a series of drawing commands. Upon receiving the drawing command, the group printer driver 603 generates a general-purpose print file and transmits it as print job data to the job control port monitor 621 instead of a port monitor that transmits print job data to the printer device. The job control port monitor 621 does not transmit print job data to the printer device 650 but transmits it to the print job control system print service 622 (hereinafter abbreviated as job control print service in this embodiment). The job control print service 622 performs print job control processing as described later on print job data.
[0052]
The print job control system print manager 623 (hereinafter abbreviated as job control print manager in this embodiment) checks the state of the print job in the job control print service 622 by the user, It is a program that provides a user interface (UI) for operation.
The job control print manager 623 exchanges information and instructions with the job control print service 622 via the software interface (API) of the job control print service 622.
[0053]
The print job control system server 630 (hereinafter abbreviated as job control server in the present embodiment) performs centralized control (scheduling) the timing at which the job control print service 622 on each client 600 transmits print job data to the printer device 650. )is doing.
[0054]
The print job control system management console 633 (hereinafter abbreviated as “job control management console” in this embodiment) exchanges information and instructions with the job control server 630 via an API for accessing software of the job control server 630. By doing so, the entire print job control system can be monitored.
[0055]
Further, the job control server 630 communicates with each printer device 650 using the device information control module 631 to obtain information about a print job and an operation state in each printer and perform an operation. The acquired information can be transferred to the job control print service 622 on the client 600 side.
[0056]
Next, printing from the group printer driver 603 in this embodiment will be described.
[0057]
The group printer driver 603 converts a series of drawing commands generated by the application program into a general-purpose print file that is an intermediate format file independent of the type of printer device. The configuration of this general-purpose print file will be described later.
[0058]
As described above, the general-purpose print file is guided from the Windows spooler 604 through the job control port monitor 621 (a) to the job control print service 622 (b). The job control print service 622 generates a drawing command based on the general-purpose print file according to the type of job control performed on the print job (c), and then the PDL driver 602 sends the drawing command to the printer device 650. Is a PDL file that can be interpreted. In FIG. 6, an example in which job control print service 622 performs job control for dividing a print job into two for this print job, and an example in which two member jobs are generated is indicated by two arrows (c). Yes. The PDL file generated by the PDL driver 602 passes through the Windows spooler 604 and the job control port monitor 621 (d), and is again delivered to the job control print service 622 (e). The job control print service 622 transmits PDL print job data to the printer device 650 in accordance with an instruction from the job control server 630 (f).
[0059]
The job control print service 622 logically divides one general-purpose print file into a plurality of print jobs in accordance with the instructions in the print instruction document in the general-purpose print file, and transmits them to different printer devices or once. Re-send print job data to another printer device. (C), (d), (e), and (f) in FIG. A indicate the print job data path in such a case.
[0060]
On the other hand, when the application software creates a general-purpose print file and the application software directly inputs the general-purpose print file as a print job, the general application is a method of passing information to the group printer driver 603 or the group printer driver 603. The processing content of is different. As described above, in the case of a general application, when the application passes drawing information to the group printer driver 603, the Windows GDI function is called in the same way as a normal printer driver, and the group printer driver 603 responds accordingly to the general-purpose print file. Is generated. On the other hand, in the case of an application that directly creates a general-purpose print file, the application already has a general-purpose print file and supplies it to the group printer driver 603. The group printer driver 603 rewrites the print instruction in the general-purpose print file based on a preset printing method as necessary, and sends it to the Windows Spooler 604.
[0061]
FIG. 8 is a diagram showing an example of the configuration of a general-purpose print file.
The general-purpose print file used in the present embodiment is composed of a print instruction section 8-a and a document data section 8-b. The print instruction part is a part describing document information and a print instruction. The document data is obtained by converting application document data into general-purpose data, and has a data format independent of the printer language.
The print instruction unit includes a header part, a page information part, a print format instruction part, an output method designation part, a group printer driver setting information part, a member printer number, a member printer driver name, and a member printer driver setting information part.
The header part is a part for storing information such as version identification and file information of this file.
[0062]
The page information part is a part for storing information such as the number of pages of document data in the document data part 8-b and the size of each page.
The print format instruction unit is a part that stores information related to the output format such as a print page range, the number of copies, document data imposition information (N-UP, bookbinding printing, etc.), a staple command, a punch command, and the like.
[0063]
The output method designating unit is a part that stores information such as distributed printing, color / monochrome distributed printing, proxy printing, and broadcast printing as an output method.
The group printer driver setting information part is a part for storing UI setting information of a group printer driver described later.
[0064]
The number of member printers is a part for storing the number of member printers associated with the group printer driver.
The member printer driver name is a part for storing the printer driver name of the member printer.
[0065]
The member printer driver setting information section stores, for example, printer driver setting item information of a Windows System called DEVMODE as setting information of the driver UI of the member printer.
[0066]
The member printer driver name and member printer driver setting information section have as many storage areas as the number of member printers stored.
The group printer driver 603 described with reference to FIG. 6 records the settings on the group printer driver GUI in the print instruction unit 8-a when generating a general-purpose print file. Further, the group printer driver 603 converts the data received by the GDI into general-purpose data and records it as document data in the document data portion of the general-purpose print file.
[0067]
Note that this file may be a file in which the print instruction section 8-a and the document data section 8-b are different. In that case, the print instruction part exists as a print instruction document file and the document data part exists as a document data file, and these can be handled together as one file in a single archive format.
[0068]
Next, the relationship between the Print System provided by Windows and the print job in the print job control system and the processing outline will be described in more detail with reference to FIG.
[0069]
In FIG. 7, a print job control system 700 indicates a range of the print job control system that straddles physical machines on which the server and client control programs operate. The output port (Output Port) 711 managed by the server is associated with the proxy output port (Proxy Output Port) 712 of the job control print service 622 of the client, and the proxy on each client associated with one port. All output ports are managed in a unified manner. In this embodiment, actual print job data is held in the proxy output port 712 of each client. The job control server 630 does not perform transmission processing of the print job data itself, but only instructs the job control print service 622 to transmit a print job. In response to the instruction, the job control print service 622 of the client transmits print job data to the device 650.
[0070]
Next, processing when the print job control system 700 performs value-added printing such as proxy printing, distributed printing, and broadcast printing will be described.
When the print job control system 700 performs value-added printing such as proxy printing, distributed printing, and broadcast printing, as described above, the user or application 601 prints to a printer to which the group printer driver 603 is assigned. Must be issued. The job control print service 622 receives job data processed by the group printer driver 603 as a general-purpose print file via the job control port monitor 621. The job control print service 622 receives this job, and issues a job (member job) to another printer to which the PDL driver is assigned via the Despooler 701 for printing. At this time, the Despooler 701 interprets the print instruction unit 8-a of the general-purpose print file described with reference to FIG. 8, processes the document data in the document data unit 8-b, converts the document data into Windows GDI, and each printer driver. A print instruction is issued and a print job is issued. For example, when a 2-UP instruction is recorded in the print format designation section, document data for two pages is reduced and laid out on one sheet of paper. In the case of distributed printing or broadcast printing, a job is issued to a plurality of member printers described in the print instruction section 8-a according to these settings. In the case of proxy printing, when a proxy condition is satisfied, a member job is issued in accordance with a user's operation in advance for automatic proxy and for manual proxy.
[0071]
Further, when the Despooler 701 issues a job to each member printer, it is necessary to create a DEVMODE for each member printer as a print instruction corresponding to the member printer driver. This DEVMODE is described in the print instruction section 8-a. The contents are appropriately reflected in the DEVMODE of each member printer.
[0072]
The job control print service 622 on the client side receives the PDL data of each member job rendered by the PDL driver 602 via the job control port monitor 621, notifies the server side of information regarding the received job, It is temporarily stored in its own proxy output queue (Proxy Output Port) 712. Thereafter, after receiving a transmission instruction from the job control server 630, it is transmitted to the print device 650.
[0073]
Next, control of the group printer driver for the print job control system in the embodiment of the present invention will be described.
[0074]
FIG. 9 is a flowchart showing a processing control flow when the group printer driver of the present invention is installed in the system. The processing of each step in the flowchart of FIG. 9 is controlled by a CPU (central processing unit) provided in the information processing apparatus described above, stored in a predetermined storage medium such as a ROM, FD, or hard disk (HD). It is assumed that the program is realized by reading a program and executing processing based on the read program. The same applies to the flowcharts of FIGS.
[0075]
First, in step S901, when installation is started, a member printer name used by the group printer driver is acquired using the print job control system API.
[0076]
In step S902, information about printable area information of each member printer dry is acquired based on the ID held by the member printer driver. Note that the printable area in the present embodiment refers to a printable range indicating how far a print range can be designated on a single recording medium in a predetermined printer.
[0077]
Here, the ID of the member printer driver will be described in detail. As the ID of the member printer driver in the present embodiment, for example, the name (text data) registered in the icon corresponding to the printer driver or the printer driver uniquely Identification information such as the assigned serial number and identification information uniquely assigned to the registered printer driver management table are assumed, but any information that can identify each member printer driver is applicable. It becomes. The same is assumed in FIGS. 10, 11, and 15 described later.
[0078]
Also, the size of a predetermined recording medium such as paper (for example, vertical x horizontal = 297 x 210 (mm) for A4 paper size), information indicating the range in which printing (image formation) is performed, and a margin value Therefore, the information relating to the printable area acquired in step S902 is the information indicating the margin value itself, or the range in which image formation can be performed on a recording medium of a predetermined size. Both pieces of information shown can be applied.
[0079]
In step S903, the process executed in step S902 is repeated for all target member printers.
[0080]
In step S904, the optimum printable area is determined for each attribute of the plurality of member printer drivers from the information of the printable area of each member printer dry acquired through the processing in steps S901 to S903.
[0081]
Note that the optimum printable area determined in step S904 is held in a predetermined storage unit as a default setting value of the driver, and then the processing of the flowchart shown in FIG. 9 is ended.
[0082]
FIG. 14 shows an example of a display state of the user interface of the group printer driver. The display of FIG. 14 is the display based on the screen information for displaying the user interface included in the print control program (including the group printer driver) of the present invention displayed on the display unit via the OS. This is equivalent, and the display in the present embodiment is also displayed with the same mechanism.
[0083]
In FIG. 14, the information of the optimum printable area determined in step S904 is reflected on the user interface as the default value in the setting column in the margin of 1401. Further, as another preferred embodiment, information regarding the determined printable area may be reflected on the minimum value of the margin selectable range 1402 (displayed as 1.0 to 52.5 mm in 1402). As a result, it is possible to prevent the user from setting an inappropriate margin value. That is, the result of the conflict process is reflected on the minimum value.
[0084]
As described above, according to the flowchart of FIG. 9, the printable area is determined at the time when the print control program of the present invention is installed, and is retained as a default setting. On the other hand, the value for designating an appropriate printable area can be correctly returned.
[0085]
The control in step S902 in FIG. 9 may be inquired to the member printer driver via the Windows System or may be inquired directly to the member printer. Alternatively, it is possible to register the printable area of each member printer in advance in the print job control system and inquire the print job control system when installing the group printer driver.
[0086]
FIG. 10 is a flowchart showing a process control flow during the UI display process of the group printer driver in the present invention. The processing of each step in the flowchart of FIG. 10 is controlled by a CPU (central processing unit) provided in the information processing apparatus described above, stored in a predetermined storage medium such as a ROM, FD, or hard disk (HD). It is assumed that the program is realized by reading a program and executing processing based on the read program.
[0087]
First, in step S1001, when a UI display request is received from an application via Windows System, the ID of a member printer driver used by the group printer driver is acquired using the print job control system API.
[0088]
In step S1002, a process of comparing each member printer driver ID acquired at this time with the configuration of the member printer driver held in advance by the group printer driver is executed. In other words, an investigation process is performed to check the match between the IDs of the plurality of member printer drivers acquired last time and the IDs of the plurality of member printer drivers acquired this time.
[0089]
If it is determined in step S1002 that the member printer dry configuration has not been changed, control for displaying the user interface based on the value of the optimum printable area previously determined in step S1006 is performed. Made.
[0090]
On the other hand, as a result of the determination processing in step S1002, if it is determined that the configuration of the member printer driver (combination of IDs of a plurality of member printer drivers) has been changed from the previous one, the information on the printable area is checked again. (S1003). Specifically, the processing is the same as that described with reference to the flowchart of FIG. 9, and processing for obtaining printable area information of each member printer driver is performed based on the ID of the member printer driver.
[0091]
Then, it is determined whether or not the process of step S1003 has been performed for all member printer drivers (S1004). If it is determined that the process has been completed, the process proceeds to step S1005.
[0092]
In step S1005, an optimum printable area is determined based on the information relating to the printable area of each member printer driver acquired by the processes in steps S1003 and S1004. The information on the optimum printable area determined in S1005 is held in a predetermined storage unit as the default setting value of the group printer driver, and then the user based on the optimum printable area determined in step S1005. Control for displaying the interface is executed by the print control program of the present invention (S1006).
[0093]
10, the user interface as shown in FIG. 14 is displayed in the same manner as in FIG. 9. In this case, information on the optimum printable area determined in step S1005 is the margin of 1401. The default value is reflected in the user interface. It is also assumed that the information regarding the printable area determined in another preferred form and the minimum value of the margin selectable range of 1402 is reflected, so that the user can previously set a setting value regarding an inappropriate margin. Setting can be prevented in advance.
[0094]
Further, according to the flowchart of FIG. 10, in accordance with the change of the configuration of the member printer driver, the control is performed so that the value 1401 or 1402 of FIG. 14 is also changed and set. Can always obtain information on the optimum printable area even if the member printer configuration changes.
[0095]
According to the processing of the flowchart of FIG. 10, an optimum printable area is determined and held in a predetermined storage unit as a setting value of the group printer driver. Can be answered correctly.
[0096]
Here, further, the process of determining the optimum printable area in step S904 or step S1005 will be described in detail. In step S904 or step S1005, information obtained from the printable area of each member printer is obtained. The narrowest width in each of the upper, lower, left and right directions is adopted as the print width, and the optimum printable area is determined. Also, this process is determined as a printable area that differs for each paper size.
[0097]
It is obvious that the margin value is determined if the size of the recording medium and the printable range for the size are determined. That is, the optimum printable area in step S904 or step S1005 can of course be provided as a margin value.
[0098]
(Second Embodiment)
In the first embodiment, the processing has been described so as to adopt the narrowest print range for a predetermined paper size.
[0099]
As another method for determining the optimum printable area, it is also possible to adopt the configuration in which the widest area is adopted for each of the obtained member printers in the vertical and horizontal directions, and the average value is adopted. This is envisioned in the present invention.
[0100]
Further, in the case of a configuration having a plurality of printable area determination methods, it is possible to adopt a configuration that allows the user to select by displaying on the user interface without uniquely determining the selection method. .
[0101]
Hereinafter, the second embodiment will be described with reference to the drawings.
[0102]
FIG. 11 is a flowchart showing a processing control flow when the group printer driver UI is displayed. The processing of each step in the flowchart of FIG. 11 is controlled by a CPU (central processing unit) provided in the information processing apparatus described above, stored in a predetermined storage medium such as a ROM, FD, or hard disk (HD). It is assumed that the program is realized by reading a program and executing processing based on the read program.
[0103]
First, in step S1101, when there is a UI display request from an application via Windows System, the ID of each member printer driver that constructs a group printer driver is acquired using the print job control system API.
[0104]
In step S1102, the configuration of the member printer driver held in advance by the group printer driver is compared with the member printer driver ID acquired in step S1101.
[0105]
If it is determined in step S1102 that there has been no change, in step S1116, a user interface for performing various group printer driver settings reflecting the previously determined optimum printable area is displayed.
[0106]
If it is determined that the configuration of the member printer driver has been changed as a result of the comparison determination in step S1102, the printable area unique to each member printer driver based on the ID of each member printer driver. Information is acquired (S1103), and the process of step S1103 is repeated for all member printer drivers (S1104).
[0107]
Then, information on the printable area of each member printer driver obtained in steps S1103 and S1104, and determination of the optimum printable area previously or in advance designated via the user interface as shown in FIG. The printable area is determined based on the method (S1105).
[0108]
Then, control is performed so that the value of the printable area determined in step S1105 is reflected on the UI of the group printer driver for display (S1106).
[0109]
In step S1107, it is determined whether or not the user has instructed to change the printable area determination method to a predetermined printable area determination method.
[0110]
If it is recognized in step S1107 that an instruction to change is input, determination of the printable area instructed to be changed and printing of each member printer driver acquired in steps S1103 and S1104 are possible. A printable area is determined again based on the area information (S1105).
[0111]
In step S1106, control is performed so that the value of the printable area determined again in step S1105 is reflected and displayed on the UI of the group printer driver.
[0112]
If it is determined in step S1107 that there is no instruction to change the printable area determination method, the currently selected printable area determination method and the printable area determined in step S1105 are grouped. The setting value of the printer driver is held in a predetermined storage unit, and the process ends.
[0113]
As described above, according to the flowchart of FIG. 11, it is possible to easily determine the printable area by the user-desired printable area determination method.
[0114]
FIG. 13 shows an example of UI display in this configuration. The user can select a desired printable area determination method 1301 to 1303 via a pointing device such as a mouse. Further, the value of the printable area determined in response to the change of the printable area determination method 1301 to 1303 is reflected and displayed as a default value in 1304.
[0115]
(Third embodiment)
In the third embodiment, according to the correspondence table as shown in FIG. 12, the print job control system 700 performs any of value-added printing such as proxy printing, distributed printing, and broadcast printing. A process for automatically selecting a processing method will be described.
[0116]
Hereinafter, description will be given with reference to FIG.
[0117]
First, in steps S1501 to S1503, it is determined whether the currently set output method is broadcast printing, distributed printing, or color / monochrome distributed printing. In any of the steps, if the determination result is No, it is determined that the output method is proxy printing. Of course, when there are further output methods, it is assumed that the determination process for various output methods and the printable area determination method corresponding to each output method can be applied to the flow of FIG.
[0118]
If it is determined that the output method set for the group printer dry corresponds to one of the output methods in steps S1501 to S1503, “minimum range selection” is used as a method for determining the optimum printable area. Adopted (S1505).
[0119]
Here, as described in the first embodiment, the “minimum range selection” method is based on the acquired information on the printable area of each member printer, and is the most suitable for each of the predetermined sheet sizes. This is equivalent to control in which a narrow width is selected as the print width and the optimum printable area is selected.
[0120]
If it is determined that none of the output methods in steps S1501 to S1503 correspond, that is, if it is determined that the currently set output method is “proxy printing”, the output to the proxy printer is performed. As an optimum printable area determination method, the same printable area as the printable area set for the representative member printer is set as the actual print target area for the substitute member printer driver (S1504).
[0121]
Here, the representative member printer (representative member printer driver) refers to the one having the first priority among the plurality of member printers for which priority is set via the user interface. Member printer driver. The priority is arbitrarily set by the user according to the instruction. At this time, the priority member printer driver's printable area of the second, third, fourth,. The printable area is set as the optimum printable area. If the optimal printable area is changed, a warning message such as "Are you sure you want to change the calculation method for the optimal imprintable area?" User friendly.
[0122]
Further, the control described in the flowchart of FIG. 15 can be considered by applying it to step S904 of FIG. 9 or step S1005 of FIG. 10 described in the first embodiment. The optimum printable area calculation method is automatically selected according to the output method (broadcast, distributed, color / monochrome distributed printing, proxy printing, etc.).
[0123]
According to the flowchart of FIG. 15, in a printing process for a plurality of member printer drivers, the user selects a method for determining an optimal printable area that differs depending on an output method such as distributed printing or proxy printing. This can be realized without any operation.
[0124]
Further, the method for calculating the optimum printable area, which differs depending on the output method, is not limited to that shown in FIG. 12, but for example, “maximum range selection” for “proxy printing”. Also, the present invention can be changed as appropriate with “minimum range selection” for “distributed printing”, “minimum range selection” for “color / monochrome distributed printing”, and “range average selection” for “broadcast printing” It is assumed.
[0125]
As described above, the user can efficiently perform printing in a printing area in which normal printing is guaranteed in all the connected printers without being forced to perform complicated operations.
Further, by adopting an optimum printable area determining method for each operation setting of the print job control system, the optimum printable area can be automatically set according to the purpose of print job control.
[0126]
In addition, by having a user interface that can explicitly specify the printable area, it is possible to provide a more flexible printable area setting even for users who are dissatisfied with the automatically determined printable area. In this case, by displaying the printable area determined by the printable area determining unit as a specified value, it is possible to provide an appropriate printable area setting without requiring most users to select again. Further, by not displaying or selecting the range that cannot be printed by any of the printing apparatuses, it is possible to prevent the printing result from being accidentally lost.
[0127]
As described above, it is possible to provide a mechanism that allows a user to easily perform print settings related to a printable area under a printing environment in which a plurality of printers (member printer drivers) are operated.
[0128]
Note that the present invention can be applied to a system (copier, printer, facsimile machine, etc.) composed of a single device even if it is applied to a system composed of a plurality of devices (eg, host computer, interface device, reader, printer, etc.). You may apply.
[0129]
Another object of the present invention is to read a program code stored in a storage medium by a computer (or CPU or MPU) of a system or apparatus, which stores a program code of software that realizes the functions of the above-described embodiments. It is also achieved by executing.
[0130]
In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code or the program code itself constitutes the present invention. become.
[0131]
As described above, the storage medium for supplying the program code includes a floppy disk, hard disk, optical disk, magneto-optical disk, MO, CD-ROM, CD-R, DVD, magnetic tape, and nonvolatile memory card. ROM can be used.
[0132]
Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) operating on the computer based on the instruction of the program code. A case where part or all of actual processing is performed and the functions of the above-described embodiments are realized by the processing is also included.
[0133]
Furthermore, after the program code read from the storage medium is written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion board is based on the instruction of the program code. The CPU included in the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.
[0134]
【The invention's effect】
As described above, according to the present invention, it is possible to provide a mechanism that allows a user to set a printable area efficiently and easily in a printing environment using a plurality of printers.
[0138]
Further, in a print process for a plurality of printers, even if a combination of a plurality of printers is changed, a printable area corresponding to the change can be provided to the user.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of an information processing system to which the present invention can be applied.
FIG. 2 is a block diagram illustrating a configuration of an information processing apparatus according to the present invention.
3 is an example of a memory map of a RAM 202 shown in FIG.
4 shows an example of a memory map of the FD 204 shown in FIG.
5 is a diagram showing a relationship with an FD 204 inserted into the FD drive 203 shown in FIG.
FIG. 6 is a block diagram illustrating the configuration of a print control module of the information processing apparatus according to the present invention.
FIG. 7 is a block diagram illustrating the configuration of a print control module of the information processing apparatus according to the present invention.
FIG. 8 is a diagram showing an example of the configuration of a general-purpose print file according to the present invention.
FIG. 9 is a flowchart showing control at the time of installing the group printer driver of the present invention in the system.
FIG. 10 is an example of a flowchart illustrating control during UI display processing of the group printer driver according to the present invention.
FIG. 11 is an example of a flowchart showing control during UI display processing of the group printer driver in the present invention.
FIG. 12 shows an example of a table for controlling the printable area determination method of the present invention.
FIG. 13 shows an example of a UI display according to the present invention.
FIG. 14 shows an example of a UI display according to the present invention.
FIG. 15 is a table for determining a method for determining an optimum printable area according to the output method of the present invention.

Claims (18)

複数のメンバプリンタの夫々の印字可能領域情報を取得する取得ステップと、
前記取得ステップにて取得された前記複数のメンバプリンタの夫々の印字可能領域情報に基づく印字可能領域を決定する決定ステップと
複数のメンバプリンタを利用する印刷処理に際して、代表となる印字可能領域を変更指定可能なユーザインターフェースに前記決定ステップにより決定された前記印字可能領域に基づく値を含めるよう制御する制御ステップとを有することを特徴とする制御方法。
An acquisition step of acquiring printable area information of each of the plurality of member printers;
A determination step of determining a printable area based on printable area information of each of the plurality of member printers acquired in the acquisition step ;
A control step for controlling to include a value based on the printable area determined by the determination step in a user interface that can change and designate a representative printable area in a printing process using a plurality of member printers. A control method characterized by the above.
前記複数のメンバプリンタの何れかを利用した出力方法について複数種類の出力方法を制御可能であり、前記決定ステップは前記出力方法の種類に応じて前記印字可能領域の決定方法を異ならせることを特徴とする請求項1に記載の制御方法。A plurality of types of output methods can be controlled with respect to an output method using any one of the plurality of member printers, and the determining step varies the method for determining the printable area according to the type of the output method. The control method according to claim 1. 前記複数のメンバプリンタの組合せの構成が変更されたか否かを判定する判定ステップを有し、前記判定ステップにより前記複数のメンバプリンタの構成が変更されたと判定された場合に、前記決定ステップは前記変更された複数のメンバプリンタの夫々の印字可能領域情報により印字可能領域を決定することを特徴とする請求項1又は2に記載の制御方法。A determination step for determining whether or not the configuration of the combination of the plurality of member printers has been changed, and when the determination step determines that the configuration of the plurality of member printers has been changed, the determination step includes: 3. The control method according to claim 1, wherein the printable area is determined based on the printable area information of each of the changed member printers. 複数のメンバプリンタが関連付けられ、前記複数のメンバプリンタの何れかを利用した出力方法について複数種類の出力方法を制御可能なグループプリンタによる制御方法であって、
前記複数のメンバプリンタの夫々の印字可能領域情報を取得する取得ステップと、
前記取得ステップにおいて取得された前記複数のメンバプリンタの夫々の印字可能領域情報に基づく印字可能領域を決定する決定ステップとを有し、前記決定ステップは前記出力方法の種類に応じて前記印字可能領域の決定方法を異ならせることを特徴とする制御方法。
A control method using a group printer that is associated with a plurality of member printers and can control a plurality of types of output methods for an output method using any of the plurality of member printers.
An acquisition step of acquiring printable area information of each of the plurality of member printers;
And a determining step of determining a print area based on the respective print area information of the plurality of member printer obtained in said obtaining step, said determining step said possible printing according to the type of the output method A control method characterized in that a method for determining an area is made different.
前記複数種類の出力方法には、代行印刷と、分散印刷或は同報印刷或はカラーモノクロ分散印刷と、が含まれており、前記決定ステップは、出力方法が代行印刷の場合には第1優先度のメンバプリンタの印字可能領域情報に基づき前記印字可能領域を決定し、出力方法が分散印刷或は同報印刷或はカラーモノクロ分散印刷の場合には前記取得ステップにおいて取得された複数のメンバプリンタの夫々の印字可能領域情報に基づく印字可能領域を決定することを特徴とする請求項4に記載の制御方法。The plurality of types of output methods include proxy printing, distributed printing or broadcast printing, or color / monochrome distributed printing, and the determining step is the first when the output method is proxy printing. The printable area is determined based on the printable area information of the priority member printer, and when the output method is distributed printing, broadcast printing, or color / monochrome distributed printing, the plurality of members acquired in the acquisition step 5. The control method according to claim 4, wherein a printable area is determined based on printable area information of each of the printers. 前記複数のメンバプリンタの組合せの構成が変更されたか否かを判定する判定ステップを更に有し、前記判定ステップの判定結果が前記複数のメンバプリンタの構成が変更された判定の場合に、前記決定ステップは前記変更された複数のメンバプリンタの夫々の印字可能領域情報により印字可能領域を決定することを特徴とする請求項4又は5に記載の制御方法。A determination step for determining whether or not a configuration of the combination of the plurality of member printers has been changed; and when the determination result of the determination step is a determination that the configuration of the plurality of member printers has been changed. 6. The control method according to claim 4, wherein the step determines a printable area based on the printable area information of each of the changed member printers. 複数のメンバプリンタが関連付けられ、前記複数のメンバプリンタの何れかを利用した出力方法について複数種類の出力方法を制御可能なグループプリンタによる制御方法であって、
前記複数のメンバプリンタの夫々の印字可能領域情報を取得する取得ステップと、
前記取得ステップにおいて取得された前記複数のメンバプリンタの夫々の印字可能領域情報に基づく印字可能領域を決定する決定ステップと、
前記複数のメンバプリンタの組合せの構成が変更されたか否かを判定する判定ステップ有し、前記判定ステップの判定結果が前記複数のメンバプリンタ構成が変更された判定の場合に、前記決定ステップは前記変更された複数のメンバプリンタの夫々の印字可能領域情報により印字可能領域を決定することを特徴とする制御方法。
A control method using a group printer that is associated with a plurality of member printers and can control a plurality of types of output methods for an output method using any of the plurality of member printers.
An acquisition step of acquiring printable area information of each of the plurality of member printers;
A determination step of determining a printable area based on printable area information of each of the plurality of member printers acquired in the acquisition step;
Includes a determination step of determining whether configuration of the combination of the plurality of member printer is changed, if the determination that the determination step of the determination result configuration of the plurality of member printer has changed, the decision step A control method for determining a printable area based on printable area information of each of the changed member printers.
複数のメンバプリンタの識別情報を取得する識別情報取得ステップを有し、前記判定ステップは、該取得された識別情報の組合せに基づき前記複数のメンバプリンタの組合せの構成の変更を判定することを特徴とする請求項7に記載の制御方法。 Possess the identification information acquisition step of acquiring identification information of a plurality of member printers, the determination step, characterized by determining the change in the structure of the combination of the plurality of member printers based on a combination of the acquired identification information The control method according to claim 7. 複数のメンバプリンタの夫々の印字可能領域情報を取得する取得手段と、
前記取得手段によって取得された前記複数のメンバプリンタの夫々の印字可能領域情報に基づく印字可能領域を決定する決定手段と
複数のメンバプリンタを利用する印刷処理に際して、代表となる印字可能領域を変更指定可能なユーザインターフェースに前記決定手段により決定された前記印字可能領域に基づく値を含めるよう制御する制御手段とを有することを特徴とする制御装置。
Acquisition means for acquiring printable area information of each of a plurality of member printers;
Determining means for determining a printable area based on printable area information of each of the plurality of member printers acquired by the acquiring means ;
Control means for controlling to include a value based on the printable area determined by the determining means in a user interface capable of changing and designating a representative printable area in a printing process using a plurality of member printers. A control device characterized by.
前記複数のメンバプリンタの何れかを利用した出力方法について複数種類の出力方法を制御可能であり、前記決定手段は前記出力方法の種類に応じて前記印字可能領域の決定方法を異ならせることを特徴とする請求項9に記載の制御装置。A plurality of types of output methods can be controlled with respect to an output method using any one of the plurality of member printers, and the determination unit varies the determination method of the printable area according to the type of the output method. The control device according to claim 9. 前記複数のメンバプリンタの組合せの構成が変更されたか否かを判定する判定手段を有し、前記判定手段により前記複数のメンバプリンタの構成が変更されたと判定された場合に、前記決定手段は前記変更された複数のメンバプリンタの夫々の印字可能領域情報により印字可能領域を決定することを特徴とする請求項9又は10に記載の制御装置。A determination unit configured to determine whether or not a configuration of the combination of the plurality of member printers has been changed; and when the determination unit determines that the configuration of the plurality of member printers has been changed, 11. The control device according to claim 9, wherein the printable area is determined based on printable area information of each of the changed member printers. 複数のメンバプリンタが関連付けられ、前記複数のメンバプリンタの何れかを利用した出力方法について複数種類の出力方法を制御可能なグループプリンタを備えた制御装置であって、
前記複数のメンバプリンタの夫々の印字可能領域情報を取得する取得手段と、
前記取得手段により取得された前記複数のメンバプリンタの夫々の印字可能領域情報に基づく印字可能領域を決定する決定手段とを有し、前記決定手段は前記出力方法の種類に応じて前記印字可能領域の決定方法を異ならせることを特徴とする制御装置。
A control device comprising a group printer that is associated with a plurality of member printers and that can control a plurality of types of output methods for an output method using any of the plurality of member printers,
Obtaining means for obtaining printable area information of each of the plurality of member printers;
Determining means for determining a printable area based on printable area information of each of the plurality of member printers acquired by the acquisition means, and the determining means determines the printable area according to the type of the output method. The control apparatus characterized by making the determination method of different.
前記複数種類の出力方法には、代行印刷と、分散印刷或は同報印刷或はカラーモノクロ分散印刷と、が含まれており、前記決定手段は、出力方法が代行印刷の場合には第1優先度のメンバプリンタの印字可能領域情報に基づき前記印字可能領域を決定し、出力方法が分散印刷或は同報印刷或はカラーモノクロ分散印刷の場合には前記取得手段において取得された複数のメンバプリンタの夫々の印字可能領域情報に基づく印字可能領域を決定することを特徴とする請求項12に記載の制御装置。The plurality of types of output methods include proxy printing, distributed printing or broadcast printing, or color / monochrome distributed printing, and the determining means is the first when the output method is proxy printing. The printable area is determined based on the printable area information of the priority member printer, and when the output method is distributed printing, broadcast printing, or color / monochrome distributed printing, a plurality of members acquired by the acquisition unit The control device according to claim 12, wherein a printable area is determined based on printable area information of each of the printers. 前記複数のメンバプリンタの組合せの構成が変更されたか否かを判定する判定手段を更に有し、前記判定手段の判定結果が前記複数のメンバプリンタの構成が変更された判定の場合に、前記決定手段は前記変更された複数のメンバプリンタの夫々の印字可能領域情報により印字可能領域を決定することを特徴とする請求項12又は13に記載の制御装置。A determination unit configured to determine whether or not a configuration of the combination of the plurality of member printers has been changed, and the determination is performed when the determination result of the determination unit indicates that the configuration of the plurality of member printers has been changed; 14. The control apparatus according to claim 12, wherein the means determines a printable area based on the printable area information of each of the changed member printers. 複数のメンバプリンタが関連付けられ、前記複数のメンバプリンタの何れかを利用した出力方法について複数種類の出力方法を制御可能なグループプリンタを備えた制御装置であって、
前記複数のメンバプリンタの夫々の印字可能領域情報を取得する取得手段と、
前記取得手段により取得された前記複数のメンバプリンタの夫々の印字可能領域情報に基づく印字可能領域を決定する決定手段と、前記複数のメンバプリンタの組合せの構成が変更されたか否かを判定する判定手段有し、前記判定手段の判定結果が前記複数のメンバプリンの構成が変更された判定の場合に、前記決定手段は前記変更された複数のメンバプリンタの夫々の印字可能領域情報により印字可能領域を決定することを特徴とする制御装置。
A control device comprising a group printer that is associated with a plurality of member printers and that can control a plurality of types of output methods for an output method using any of the plurality of member printers,
Obtaining means for obtaining printable area information of each of the plurality of member printers;
Determination means for determining a printable area based on printable area information of each of the plurality of member printers acquired by the acquisition means, and determination for determining whether or not a configuration of a combination of the plurality of member printers has been changed includes a means printing, when the determination judgment result of said judgment means the configuration of the plurality of member printers is changed, the determination unit by respective printable area information of the plurality of member printers the changed A control device characterized by determining a possible area .
複数のメンバプリンタの識別情報を取得する識別情報取得手段を有し、前記判定手段は、該取得された識別情報の組合せに基づき前記複数のメンバプリンタの組合せの構成の変更を判定することを特徴とする請求項15に記載の制御装置。 Possess the identification information acquiring means for acquiring identification information of a plurality of member printers, said determination means, characterized by determining the change in the structure of the combination of the plurality of member printers based on a combination of the acquired identification information The control device according to claim 15 . 請求項1乃至8の何れかに記載の制御方法をコンピュータに実行させる為のプログラム。A program for causing a computer to execute the control method according to claim 1. 請求項1乃至8の何れかに記載の制御方法をコンピュータに実行させる為のプログラムをコンピュータ読み取り可能な形態で記憶した記憶媒体。A storage medium storing a program for causing a computer to execute the control method according to claim 1 in a computer-readable form.
JP2001279597A 2001-09-14 2001-09-14 Control method, control device, program, and storage medium Expired - Fee Related JP3833090B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001279597A JP3833090B2 (en) 2001-09-14 2001-09-14 Control method, control device, program, and storage medium
US10/241,572 US7804607B2 (en) 2001-09-14 2002-09-12 Group printer for multiple member printers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001279597A JP3833090B2 (en) 2001-09-14 2001-09-14 Control method, control device, program, and storage medium

Publications (2)

Publication Number Publication Date
JP2003084948A JP2003084948A (en) 2003-03-20
JP3833090B2 true JP3833090B2 (en) 2006-10-11

Family

ID=19103761

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001279597A Expired - Fee Related JP3833090B2 (en) 2001-09-14 2001-09-14 Control method, control device, program, and storage medium

Country Status (1)

Country Link
JP (1) JP3833090B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101539844B (en) * 2004-01-20 2011-08-03 佳能株式会社 Information processing apparatus and method
JP4574344B2 (en) * 2004-01-20 2010-11-04 キヤノン株式会社 Information processing apparatus and method
JP4642793B2 (en) * 2007-03-20 2011-03-02 武藤工業株式会社 How to set printer specifications

Also Published As

Publication number Publication date
JP2003084948A (en) 2003-03-20

Similar Documents

Publication Publication Date Title
JP3634784B2 (en) Information processing method and print control apparatus
JP3634783B2 (en) Printing system and printing data processing method
US7894083B2 (en) Print control with interfaces provided in correspondence with printing methods
US7312886B2 (en) Printer control method, information processing apparatus, program, and storage medium
US7372590B2 (en) Printing method, printing apparatus, printing program executable by information processing apparatus, and computer-readable storage medium storing program
JP3833127B2 (en) Proxy print processing apparatus, proxy print processing method, program, and storage medium
JP3639821B2 (en) Print control method, print control apparatus, print control program executable by information processing apparatus, and storage medium storing computer-readable program
JP3740472B2 (en) Program, print job control system, print data processing method, and storage medium
US20040036908A1 (en) Information processing apparatus, print system, printing control method for information processing apparatus, and printing control program
US8605316B2 (en) Information processing apparatus and control method thereof, and storage medium
JP4125044B2 (en) Information processing apparatus, information processing apparatus control method, program, and storage medium
US7804607B2 (en) Group printer for multiple member printers
JP2006301860A (en) Information processor
JP3880575B2 (en) Print setting method and computer
JP2002014797A (en) Information processor, print controller and its control method, and storage medium and its control program
JP3833090B2 (en) Control method, control device, program, and storage medium
JP3706823B2 (en) Print control method, print control apparatus, print control program for executing print data processing executable by computer, and computer-readable storage medium
JP3740448B2 (en) Control device, control method, program, and storage medium
JP2006202332A (en) Proxy print processing device and method, program, and storage medium
JP2006171991A (en) Proxy and distributed printing system
JP4323982B2 (en) Information processing method, information processing apparatus, program, and storage medium
JP4110021B2 (en) Print processing program, information processing apparatus, information processing method, and storage medium for performing print processing with department management
JP4261784B2 (en) PRINT CONTROL METHOD, PRINT CONTROL SYSTEM, PROGRAM, AND STORAGE MEDIUM
JP2006259853A (en) Information processing device
JP4411256B2 (en) PRINT CONTROL METHOD, PRINT CONTROL SYSTEM, PROGRAM, AND STORAGE MEDIUM

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20031210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050624

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050628

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050829

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060718

R150 Certificate of patent or registration of utility model

Ref document number: 3833090

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090728

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100728

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100728

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110728

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120728

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120728

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130728

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees