[実施例1]
[システム構成]
図1は、本実施例に係る情報処理装置100を含む印刷システムの構成の一例を示すブロック図である。図1に示すように、印刷システムは、情報処理装置100と、前述の段階別課金に対応した機種である画像形成装置101と、段階別課金に対応していない機種である画像形成装置102とから構成される。
これらはLAN104等のネットワークを介して接続されており、情報処理装置100と、画像形成装置101又は画像形成装置102とは互いに、各種データをやり取りすることが可能である。
情報処理装置100は、画像形成装置101や画像形成装置102に対し、印刷ジョブ(PDLで記述された印刷データとその印刷設定を含む)を送信する。情報処理装置とは、例えばPCである。以下、簡単のため、情報処理装置100をPC100と表記する。
段階別課金に対応した機種である画像形成装置101及び段階別課金に対応していない機種である画像形成装置102は、PC100から受け取った印刷ジョブに従い、用紙に印刷を行う。画像形成装置とは具体的には、プリンタ、FAX、複合機等の印刷機能を有する装置である。以下、簡単のため、段階別課金に対応した機種である画像形成装置101を対応プリンタ101と表記し、段階別課金に対応していない機種である画像形成装置102を非対応プリンタ102と表記する。
PC100には、対応プリンタ101を使用するのに必要なプリンタドライバがインストールされており、また、非対応プリンタ102を使用するのに必要なプリンタドライバがインストールされている。対応プリンタと非対応プリンタとが異なる機種のプリンタである場合、それぞれのプリンタ用の異なるプリンタドライバがPC100にインストールされている。ただし、対応プリンタと非対応プリンタとが同一機種のプリンタであって、段階別課金機能が例えば別売りのオプション機能としてプリンタに対して付与される場合も想定される。このような場合は、対応プリンタ101と非対応プリンタ102とに共通のプリンタドライバが、PC100にインストールされることになる。
サービスマンや管理者は、対応プリンタ101において、段階別課金機能を利用するか否かと、ユーザへの課金情報の提示及びユーザからの課金情報の変更を許可するか否か(即ち、課金情報表示・変更機能を有効にするか否か)とについて、それぞれON/OFFで設定することが出来る。段階別課金機能及び課金情報表示・変更機能が共にONに設定されている場合、対応プリンタ101を出力先に指定したPC100のユーザは、印刷処理を行う際の課金に関する情報を、PC100の表示部に表示されるプロパティ画面(後述の図7(a)を参照)や課金情報基本画面(後述の図11を参照)等を介して確認及び変更することが可能となる。
本実施例では、PC100から出力先を対応プリンタ101に指定して印刷する場合、上述のプロパティ画面を介してユーザが課金情報の表示を希望すると、図2に例示するような課金情報が表示される。ここで、課金情報とは、段階別課金における課金レベルを確認可能なグラフ等の課金に関する情報である。課金情報の詳細は、図7(a)や図11等を用いて後述する。一方、PC100から出力先を非対応プリンタ102に指定して印刷する際には、上述の課金情報が表示されることはない(図7(b)を参照)。
[PCの構成]
図3は、PC100の内部構成を示す機能ブロック図である。図3に示すように、PC100は、制御部300と、画像調整処理部301と、トナー消費量調整部302と、送受信部303と、記憶部304とから構成される。
制御部300は、CPU、ROM、RAM等を備え、ROMに格納されたプログラムをRAMに展開し実行することによりPC100を統括的に制御し、以下の各部を実現する。また、制御部300は、印刷対象のアプリケーションデータからのRGBビットマップ画像データの生成や、さらにRGBビットマップ画像データからプリンタで使用するCMYKビットマップ画像データの生成なども行なう。
画像調整処理部301は、CMYKビットマップ画像データに対し、濃度調整処理、シャープネス処理、トナーリダクション処理といった画像処理を、画像調整設定値に従って実行する。画像調整設定値とは、上述の濃度調整処理やシャープネス処理における程度を規定する値であり、ユーザが任意に設定可能である。画像調整処理部301の詳細については、後述する。
トナー消費量調整部302は、課金情報をユーザに提示する画面(以下、課金情報画面)で表示される課金状態を導出するために必要となるトナー消費量を、上述の画像処理がなされた後のCMYKビットマップ画像データから、計算などによって求める。また、トナー消費量調整部302は、求めたトナー消費量が許容される最大トナー消費量を越えてしまった場合に、トナー消費量を、当該最大トナー消費量以下に抑える処理などのトナー消費量を調整する処理(以下、トナー調整処理)を行う。
送受信部303は、対応プリンタ101や非対応プリンタ102等の外部機器に印刷ジョブ等のデータを送信する。また、送受信部303は、これら外部機器としてのプリンタ101/102から当該プリンタに固有の機種情報や管理者等が設定する設定情報といったプリンタ情報等のデータを受信する。
記憶部304は、プログラムやデータを記憶する例えばハードディスクで構成される。本実施例に係る記憶部304には、濃度調整等の画像処理が未だなされていないCMYKビットマップ画像データや上述の画像調整設定値のデータ等を保存するための第1メモリ3040と、濃度調整等の画像処理がなされた後のCMYKビットマップ画像データ及びこれに対応付けされた各種データ(トナー消費量等)を保存するための第2メモリ3041とが存在する。尚、第1メモリ3040と第2メモリ3041は、物理的に別個の記憶手段として構成しても良いし、同一の記憶手段の領域を内部で分けて用いても良い。
[PCの構成‐画像処理部の構成]
図4は、画像調整処理部301の内部構成を示す機能ブロック図である。図4に示すように、画像調整処理部301は、濃度調整処理部400と、シャープネス処理部401と、トナーリダクション処理部402とから構成される。
濃度調整処理部400は、画像調整設定値に含まれる濃度調整設定値に応じて、CMYKビットマップ画像データに対し濃度調整処理を行う。具体的には、CMYKビットマップ画像データの一画素毎に、濃度調整設定値から決定される係数を用いた一次関数によって画素値(濃度値)を調整する。
シャープネス処理部401は、画像調整設定値に含まれるシャープネス調整設定値に応じて、CMYKビットマップ画像データに対しシャープネス処理を行う。具体的には、シャープネス調整設定値から決定される係数配列を用いて畳み込み演算を行って画像内のエッジ部分を強調したりぼかしたりする。
トナーリダクション処理部402は、CMYKビットマップ画像データに対しCMYKの各色トナーの載り量の合計を既定値(載り量制限)以下に変換(低減)する処理を行う。
[対応プリンタ及び非対応プリンタの構成]
図5は、画像形成装置としての対応プリンタ101及び非対応プリンタ102の内部構成を示す機能ブロック図であり、図5(a)は対応プリンタ101のブロック図、図5(b)は非対応プリンタ102のブロック図である。
図5(a)に示すように、対応プリンタ101は、トナー消費量導出部501と、ガンマ処理部502と、ハーフトーン処理部503と、送受信部504とを備える。
トナー消費量導出部501は、PC100から受け取った印刷ジョブに含まれる印刷データとしてのCMYKビットマップ画像データから、当該画像データの印刷処理に要するトナー消費量を計算等によって導出する。実際の課金は対応プリンタ101上で行われるので、PC100が課金情報画面を表示する際に求めるトナー消費量とは別に、対応プリンタ101側でもトナー消費量を導出する必要がある。そのため、PC100のトナー消費量調整部302とは別に、対応プリンタ101側でもトナー消費量導出部501を有している。
ガンマ処理部502は、CMYKビットマップ画像データに対しガンマ処理を施す。ガンマ処理とは、プリンタの階調特性を理想の状態に合わせるために行う処理である。ガンマ処理された画像データは、ハーフトーン処理部503に送られる。
ハーフトーン処理部503は、ガンマ処理されたCMYKビットマップ画像データに対しハーフトーン処理を行って、印字部(不図示)での出力に適した階調数のハーフトーン画像データを生成する。具体的には、例えば8ビット256階調の多値画像データから、一画素毎の画素値の階調を、例えば2値、4値、16値といった階調数に低減した画像データが生成される。
送受信部504は、PC100から前述の印刷ジョブを受け取る等、各種データの送受信を行う。
非対応プリンタ102は、段階別課金機能を有さないことから、印刷処理に要するトナー消費量を導出する必要が無い。従って、図5(b)に示すように、非対応プリンタ102には、トナー消費量導出部501が存在しない。
[課金情報画面の表示前準備処理]
図6は、PC100におけるプリンタドライバの起動から、本実施例特有の課金情報画面の表示を開始するために必要なデータを生成し保存するまでの、表示前準備処理の流れを示すフローチャートである。
ワードやエクセル等で作成されたアプリケーションデータを印刷する際の、ユーザによる出力先の指定(プリンタを選択する操作)がトリガーとなって、ステップS601において、制御部300は、当該選択されたプリンタに対するプリンタドライバを起動する。
ステップS602において、送受信部303は、ユーザが選択したプリンタのプリンタ情報を求める要求を送信し、当該要求に対する応答を受信する。これにより、送受信部303は、ユーザが選択したプリンタのプリンタ情報を取得する。ここで、プリンタ情報には、選択されたプリンタが対応プリンタ101の場合は、当該プリンタに固有の情報である段階別課金の対応機種であることを示す機種情報の他、管理者等によって設定される段階別課金機能のON/OFF設定情報、課金情報表示・変更機能のON/OFF設定情報が含まれる。また、選択されたプリンタが非対応プリンタ102の場合は、段階別課金の対応機種ではないことを示す機種情報がプリンタ情報に含まれる。
ステップS603において、制御部300は、印刷対象のアプリケーションデータに係る画像調整設定値(デフォルト値)を第1メモリ3040に保存する。
ステップS604において、制御部300は、ステップS602で取得したプリンタ情報に基づいて、選択されたプリンタが段階別課金の対応機種であり、段階別課金機能の設定がONであり、且つ課金情報表示・変更機能の設定がONであるか否かを判定する。判定の結果、条件を満足する場合(Yesの場合)はステップS605に進み、条件を満足しない場合(Noの場合)はステップS616に進む。
ステップS605において、制御部300は、プリンタドライバの設定画面(プロパティ画面)を作成し、不図示の表示部に表示する。図7(a)は、対応プリンタ101(Printer001)のプロパティ画面の一例を示す図である。プロパティ画面700には、基本設定タブ、ページ設定タブ、仕上げタブ、給紙タブ、印刷品質タブが存在し、表示直後の基本設定タブが選択された状態である。ユーザは、プロパティ画面700を介して、部数、用紙サイズ等を指定することが可能である。また、プロパティ画面700には、チェックボックス701、OKボタン702、キャンセルボタン703が存在する。チェックボックス701は、ユーザが課金情報の表示を望む場合にチェックを入れるための、ユーザインターフェース画面上に表示される入力項目である。チェックボックスの代わりに、入力項目として、ボタンやプルダウンメニュー等を用いても良い。OKボタン702は、表示中の設定を確定して操作を進めるボタンである。キャンセルボタン703は、表示中の設定を破棄し、現在表示中のプロパティ画面700が表示される直前の設定内容に戻すためのボタンである。
ユーザがOKボタン702を押下すると、ステップS606において、制御部300は、チェックボックス701にチェックがあるか否かを判定する。判定の結果、チェックがある場合はステップS607に進み、チェックが無い場合はステップS617に進む。
ステップS607において、制御部300は、印刷対象のアプリケーションデータに含まれる1ページ目のデータを取得し、レンダリングにより1ページ目のRGBビットマップ画像データを生成し、CMYKビットマップ画像データに変換する。RGBビットマップ画像データからCMYKビットマップ画像データへの変換には、既定の変換テーブルに基づく補間を用いた方法やマトリクス演算を用いた方法など一般的な手法を用いて良い。こうして生成した1ページ目のCMYKビットマップ画像データは、第1メモリ3040に保存される。
ステップS607以降の処理については、1ページ目のデータに対する処理(ステップS608〜S610)と、2ページ目以降のデータに対する処理(ステップS611〜S615)とが、並行して実行される。
ステップS608において、画像調整処理部301は、1ページ目のCMYKビットマップ画像データに対する、トナーリダクション処理を含む画像調整処理を実行する。この画像調整処理については、後述する。
ステップS609において、トナー消費量調整部302は、ステップS608で生成した1ページ目のトナーリダクション処理後のCMYKビットマップ画像データを印刷処理する場合に必要なトナー消費量を計算する。具体的には、CMYKビットマップ画像の一画素毎に、CMYKの各値とトナー消費量との関係に基づき、1ページ目のトナーリダクション処理後のCMYKビットマップ画像データを印刷処理する場合に必要なトナー消費量を計算し、全画素の和を求める。例えば、一画素毎にトナー消費量を計算する際、CMYKの各値とトナー消費量との関係がそれぞれリニアな関係であって、そのリニアな関係がCMYK間で同一であれば、CMYK値の合計値をトナー消費量としても良い。そして、計算されたトナー消費量と、これに対応付けされた1ページ目のトナーリダクション処理後のCMYKビットマップ画像データとは、第2メモリ3041に保存される。
ステップS610において、制御部300は、第2メモリ3041から1ページ目のトナーリダクション処理後のCMYKビットマップ画像データと、これに対応付けされたトナー消費量とを取得する。
ここまでの処理を経て、後述する図10に示す処理(課金情報の表示を伴う印刷データ送信処理)へと続く。
上述の通り、ステップS611〜S615では、印刷対象のアプリケーションデータに含まれる2ページ目以降に対する処理が1ページ目の処理と並行して実行される。
ステップS611において、制御部300は、印刷対象のアプリケーションデータに含まれる2ページ目以降のデータを順次取得し、レンダリングによりRGBビットマップ画像データを生成して、CMYKビットマップ画像データに変換する。こうして生成された処理対象ページのCMYKビットマップ画像データは、第1メモリ3040に保存される。
ステップS612において、画像調整処理部301は、処理対象ページのCMYKビットマップ画像データに対する、トナーリダクション処理を含む画像調整処理を実行する。
ステップS613において、トナー消費量調整部302は、ステップS612で生成した処理対象ページのトナーリダクション処理後のCMYKビットマップ画像データの印刷処理に必要なトナー消費量を計算する。そして、計算されたトナー消費量と、これに対応付けされた処理対象ページのトナーリダクション処理後のCMYKビットマップ画像データとは、第2メモリ3041に保存される。
ステップS614において、制御部300は、印刷対象のアプリケーションデータの最終ページまで処理が完了したか否かを判定する。判定の結果、最終ページまでの処理が完了している場合は、後述する図10のステップ1001にて表示された課金情報基本画面におけるユーザ入力を受け付けた後に、ステップS1002へ進む(詳細は後述する)。一方、未処理のページがある場合は、ステップS615にて処理対象ページを次のページに更新した後、ステップS611に戻って処理を続行する。
最終ページまでの処理が完了すると、第2メモリ3041には、印刷対象のアプリケーションデータの各ページに対する、CMYKビットマップ画像データと、トナー消費量とが対応付けされて、全ページ分保存されることとなる。尚、印刷対象のアプリケーションデータが1ページのみの場合、ステップS611〜S615の処理は実行されない。
ここで一旦説明を、ステップS604での判定の結果がNoであった場合に戻す。
ステップS616において、制御部300は、プロパティ画面を作成し、不図示の表示部に表示する。図7(b)は、非対応プリンタ102(Printer002)のプロパティ画面の一例を示す図である。プロパティ画面704には、ユーザが課金情報の表示を望む場合にチェックを入れるチェックボックスが存在しない。ユーザがOKボタン705を押下すると、ステップS617に進む。
ステップS617において、制御部300は、アプリケーションデータに含まれる全ページのデータを取得し、レンダリングにより全ページのRGBビットマップ画像データを生成して、CMYKビットマップ画像データに変換する。生成された全ページのCMYKビットマップ画像データは、第1メモリ3040に保存される。ここまでの処理を経て、必要な画像調整処理が施された印刷用の画像データを、PC100が、ユーザ指定のプリンタ101/102に対し送信する印刷データ送信処理へと続く。印刷データ送信処理については、後述する。
[画像調整処理]
図8は、前述した図6のステップS608及びステップS612、後述する図9のステップS901、後述する図10のステップS1007、並びに後述する図15のステップS1504及びS1509における、画像調整処理の流れを示すフローチャートである。
ステップS801において、画像調整処理部301は、処理対象ページのCMYKビットマップ画像データを第1メモリ3040から取得する。例えば、ステップS608の際には1ページ目のCMYKビットマップ画像データが取得され、ステップS612の際には2ページ目以降の処理対象ページのCMYKビットマップ画像データが取得される。取得したCMYKビットマップ画像データは、まず濃度調整処理部400に送られる。
ステップS802において、画像調整処理部301は、処理対象ページに対する画像調整設定値を第1メモリ3040から取得する。ここで取得する画像調整設定値には、濃度調整設定値とシャープネス調整設定値とが含まれ、濃度調整設定値は濃度調整処理部400に送られ、シャープネス調整設定値はシャープネス処理部401に送られる。
ステップS803において、濃度調整処理部400は、受け取ったCMYKビットマップ画像データに対し、濃度調整設定値に応じた濃度調整処理を行う。濃度調整処理が施されたCMYKビットマップ画像データは、シャープネス処理部401に送られる。
ステップS804において、シャープネス処理部401は、濃度調整処理が施されたCMYKビットマップ画像データに対し、シャープネス調整設定値に応じたシャープネス処理を行う。シャープネス処理が施されたCMYKビットマップ画像データは、トナーリダクション処理部402に送られる。
ステップS805において、トナーリダクション処理部402は、シャープネス処理が施されたCMYKビットマップ画像データに対するトナーリダクション処理を行う。前述の通り、トナーリダクション処理後のCMYKビットマップ画像データは、第2メモリ3041に保存される。
以上が、画像調整処理の内容である。
[印刷データ送信処理]
図9は、前述した図6のフローのステップS617後などに実行される、ユーザが出力先に指定したプリンタへの印刷データ送信処理の流れを示すフローチャートである。
ステップS901において、画像調整処理部301は、印刷が指示されたアプリケーションデータの全ページのCMYKビットマップ画像データのうち処理対象ページのCMYKビットマップ画像データに対し、前述の画像調整処理(図8を参照)を行う。この場合において、通常は1ページ目が最初の処理対象ページとなり、以降、最終ページまで順に処理される。画像調整処理が施されたページのCMYKビットマップ画像データは、送受信部303に送られる。
ステップS902において、送受信部303は、画像調整処理が施された処理対象ページのCMYKビットマップ画像データ(印刷データ)を、ユーザが出力先に指定したプリンタ(本実施例では、対応プリンタ101又は非対応プリンタ102)に送信する。
ステップS903において、制御部300は、印刷が指示されたアプリケーションデータの全ページについて処理が完了したか否かを判定する。判定の結果、未処理のページがある場合は、ステップS904にて処理対象ページを次のページに更新した後、ステップS901に戻って処理を続行する。一方、判定の結果、最終ページまでの画像調整処理及び印刷データ送信処理が完了している場合は、本処理を終了する。
以上の処理が終了すると、ユーザが出力先に指定したプリンタに対する、画像調整処理が施された全ページのCMYKビットマップ画像データの送信が完了した状態となる。
以上が、印刷データ送信処理の内容である。
[課金情報の表示を伴う印刷データ送信処理]
図10は、前述の表示前準備処理の後、即ち、図6のフローにおけるステップS610後に実行される、課金情報(例えば図2を参照)を含む課金情報画面の表示処理、並びに、当該表示処理が実行された場合のプリンタ(本実施例では対応プリンタ101)への印刷データ送信処理の流れを示すフローチャートである。
ステップS1001において、制御部300は、課金情報画面を作成し、不図示の表示部に表示する。図11は、ユーザに課金情報を提示するための最も基本的な画面(以下、課金情報基本画面)の一例を示す図である。課金情報基本画面1100には、段階別課金の課金体系を示す課金体系表示領域1101が存在する。課金体系表示領域1101の内部には、印刷対象データのうちの1ページ目を印刷するために要するトナー消費量に相当する課金レベル(図11の例では“中”)を示す課金レベル表示領域1102が含まれる。この課金レベルは、現時点での画像調整設定値に基づいて導出されている。また、課金情報基本画面1100には、ジョブ単位設定ボタン1103と、ページ単位設定ボタン1104とが存在する。ジョブ単位設定ボタン1103は、ユーザがジョブ毎の課金設定を望む場合に使用するボタンであり、押下によって後述のジョブ単位設定画面が表示される。ページ単位設定ボタン1104は、ユーザがページ毎の課金設定を望む場合に使用するボタンであり、押下によって後述のページ単位設定画面が表示される。更に、課金情報基本画面1100には、出力ボタン1105と、キャンセルボタン1106とが存在する。出力ボタン1105は、ユーザが印刷出力を指示する場合に使用するボタンであり、押下によって印刷処理が開始する。キャンセルボタン1106は、ユーザが現在の課金設定の内容を破棄したい場合に使用するボタンであり、押下によって設定内容はデフォルトの状態(課金設定を行っていない状態)となり、課金情報基本画面1100に代わって前述のプロパティ画面700が表示される。尚、図11の例では、課金レベルの段階数は3であるが、任意の段階数を設定することが可能である。また、図11の例では課金レベルを「高」、「中」、「低」の文字で表現しているが、例えば数値等で表現しても良い。
図10のフローの説明に戻る。
前述の図6のステップS614にて最終ページまでの処理が完了したと判定され、かつ、ステップS1001で表示された課金情報基本画面におけるユーザ選択を受け付けると、ステップS1002において、制御部300は、ユーザによりどの処理が選択されたかを判定する。即ち、ジョブ単位設定ボタン1103が押下された場合は、ステップS1003に進む。一方では、ページ単位設定ボタン1104が押下された場合は、ステップS1011に進む。一方では、出力ボタン1105が押下された場合は、前述の図9におけるステップS901に進み、印刷データ送信処理が実行される。尚、図10のフローでは示されていないが、キャンセルボタン1106が押下された場合は、前述の通りプロパティ画面700へと表示が切り替わる。1ページ目のデータ以外の2ページ目以降のデータについては、本ステップにおいてどのようなユーザ選択がなされたかによって、以降に実行される処理が切り替わる。即ち、2ページ目以降のデータに対し、ジョブ単位設定が選択されていた場合はステップS1003以降の処理が実行され、ページ単位設定が選択されていた場合はステップS1011以降の処理が実行され、出力が選択されていた場合は前述の印刷データ送信処理(図9を参照)が実行される。
ステップS1003において、制御部300は、ジョブ単位設定画面を作成し、不図示の表示部に表示する。図12(a)は、ジョブ単位設定画面の一例を示す図である。図12(a)に示すジョブ単位設定画面1200には、設定中の課金レベルの上限を表示する領域(以下、課金レベル上限設定領域)1201が存在し、その右横には課金レベルの上限を引き上げるための上げるボタン1202と、課金レベルの上限を引き下げるための下げるボタン1203とが存在する。ここで、課金レベルの「上限」としているのは、例えばあるページの印刷処理に要するトナー消費量が課金レベル“高”に相当するような場合には“中”のレベルにまでトナー消費量を引き下げるが、あるページの印刷処理に要するトナー消費量が課金レベル“低”に相当する場合にわざわざ“中”のレベルにまでトナー消費量を引き上げる必要は無いということを意味している。前述の通り、本実施例では、「高」、「中」、「低」という3段階の課金レベルが存在する(図11を参照)。従って、図12(a)に示す状態で上げるボタン1202を押下すると課金レベルの上限は「高」に変化すると共に、上げるボタン1202が無効となる(例えば、上げるボタン1202がグレーアウト表示される)。また、図12(a)に示す状態で下げるボタン1203を押下すると課金レベルの上限は「低」に変化すると共に、下げるボタン1203が無効となる(例えば、下げるボタン1203がグレーアウト表示される)。ジョブ単位設定画面1200には、超過ページ確認ボタン1204、出力ボタン1205、戻るボタン1206も存在する。出力ボタン1205が押下されると、印刷データの全ページについて、印刷に要するトナー消費量がその時点で指定されている課金レベルの上限に応じた最大トナー消費量以下となるよう、自動でトナー調整処理を行いながら印刷出力する処理が開始される。一方、戻るボタン1206が押下されると、ジョブ単位設定を中止して課金情報基本画面1100に表示が切り替えられる。ただしこのとき、課金レベル上限設定領域1201で表示されている、課金レベルの上限設定は維持される。超過ページ確認ボタン1204は、設定された課金レベルの上限を超過するページ(以下、超過ページ)をユーザが確認したい場合に使用するボタンである。超過ページ確認ボタン1204が押下されると、課金レベル上限設定領域1201において、その時点で指定されている課金レベルの上限に応じた最大トナー消費量を超過してしまうページを、プレビュー画像により確認することが可能となる。このプレビュー画像の詳細については後述する。
図10のフローの説明に戻る。
ステップS1004において、制御部300は、上述のジョブ単位設定画面1200におけるユーザの選択を受け付ける。超過ページ確認ボタン1204が押下された場合は、後述の図15のフローに進み、超過ページ確認処理が実行される。超過ページ確認処理については、後述する。出力ボタン1205が押下された場合は、ステップS1005に進む。尚、図10のフローでは示されていないが、戻るボタン1206が押下された場合は、上述の通り課金情報基本画面1100へと表示が切り替わる。
ステップS1005において、制御部300は、処理対象ページにおけるトナー消費量が、課金レベル上限設定領域1201で設定されている課金レベルの上限に応じた最大トナー消費量より多いか否かを判定する。判定の結果、処理対象ページのトナー消費量が最大トナー消費量より多い場合は、ステップS1006に進み、処理対象ページのトナー消費量が最大トナー消費量以下の場合は、ステップS1007に進む。
ステップS1006において、トナー消費量調整部302は、処理対象ページにおけるトナー消費量を、課金レベル上限設定領域1201で設定されている課金レベルの上限に応じた最大トナー消費量以下に抑えるようにトナー調整処理を行う。トナー調整処理については、後述する。トナー調整処理が施されたCMYKビットマップ画像データは、画像調整処理部301に送られる。
ステップS1007において、画像調整処理部301は、CMYKビットマップ画像データに対し、前述の画像調整処理(図8を参照)を行う。画像調整処理が施されたCMYKビットマップ画像データは、送受信部303に送られる。
ステップS1008において、送受信部303は、画像調整処理が施されたCMYKビットマップ画像データを対応プリンタ101に送信する。
ステップS1009において、制御部300は、印刷が指示されたアプリケーションデータの全ページについて印刷データ送信処理が完了したか否かを判定する。判定の結果、未処理のページがある場合は、ステップS1010に進み、最終ページまでの印刷データ送信処理が完了している場合は、印刷データ送信処理を終了する。
ステップS1010において、制御部300は、次のページを処理対象ページに設定し、設定された処理対象ページのCMYKビットマップ画像データと、これに対応付けされたトナー消費量とを、第2メモリ3041から取得する。処理対象ページのCMYKビットマップ画像データと、これに対応付けされたトナー消費量とを取得すると、ステップS1005に戻り、当該処理対象ページについてステップS1005〜S1008の処理が実行される。
ここまでが、課金情報基本画面1100にてユーザがジョブ単位設定を選択した場合(S1002→S1003の場合)の、課金情報の表示を伴う印刷データ送信処理である。
続いて、課金情報基本画面1100にて、ユーザがページ単位設定を選択した場合(S1002→S1011の場合)について説明する。
ステップS1011において、制御部300は、ページ単位設定画面を作成し、不図示の表示部に表示する。図13(a)は、ページ単位設定画面の一例を示す図である。図13(a)に示すページ単位設定画面1300には、ページプレビュー領域1301と、ページを切り替える2つのボタン(前へボタン1302及び次へボタン1303)とが存在する。ユーザは、この2つのボタンを押下することで、プレビュー表示を行う対象(課金レベル設定及び画像調整設定の変更を行う対象)のページを切り替えることが出来る。
また、ページ単位設定画面1300には、表示中のページの課金レベルを表示及び設定するための領域(課金レベル設定領域)1304が存在し、その右横には課金レベルを引き上げるための上げるボタン1305と、課金レベルを引き下げるための下げるボタン1306とが存在する。前述の通り、本実施例では、「高」、「中」、「低」という3段階の課金レベルが存在する(図11を参照)。従って、図13(a)に示す状態で上げるボタン1305を押下すると、課金レベルが「高」に変化すると共に、上げるボタン1305が無効となる(例えば、上げるボタン1305がグレーアウト表示される)。また、図13(a)に示す状態で下げるボタン1306を押下すると、課金レベルが「低」に変化すると共に下げるボタン1306が無効になる(例えば、下げるボタン1306がグレーアウト表示される)。尚、課金レベル設定領域1304において、課金レベルに加えて課金額そのものを表示しても良い。また、課金レベル設定領域1304に代替する領域として、課金額そのものを表示及び設定するための領域を設けても良い。
更に、ページ単位設定画面1300には、画像調整設定領域1310が存在し、その内部には濃度調整スライドバー1311と、シャープネス調整スライドバー1312とが存在する。ユーザは、出力画像の濃度を調整したい場合、濃度調整スライドバー1311上のポインタをスライドさせることで濃度調整設定値を所望の値に設定することが出来る。同様に、ユーザは、出力画像のシャープネスを調整したい場合、シャープネス調整スライドバー1312上のポインタをスライドさせることでシャープネス調整設定値を所望の値に設定することが出来る。
加えて、ページ単位設定画面1300には、出力ボタン1307と、戻るボタン1308とが存在する。出力ボタン1307が押下されると、その時点で各ページに設定されている画像調整設定値が確定し、全ページの印刷出力が開始される。一方、戻るボタン1308が押下されると、ページ単位設定を中止して課金情報基本画面1100に表示が切り替えられる。ただしこのとき、ページ単位設定画面1300を介して行った設定は維持される。
ページ単位設定画面1300では、プレビュー表示中の処理対象ページに対して、課金レベル設定と画像調整設定とを繰り返し変更することが可能であり、それらの設定が連動して表示が更新される。例えば、図13(a)に示した状態から、濃度調整スライドバー1311上のポインタを図13(b)に示すように、右側(高濃度側)にずらすとする。このとき、プレビュー中のページは図13(a)のときより濃く表示され、画像調整設定の変更に連動して、課金レベルの設定が「中」から「高」に変更される。
このように課金レベル設定と画像調整設定とを連動させる場合、一方の設定に対して設定変更しようとしたときに、他方の設定の設定値が許容可能な範囲(設定可能範囲)を超えてしまう場合がある。例えば、あるページに対する課金レベルの設定を最低レベル(本実施例では「低」)に変更しようとしたとき、濃度調整設定値等の画像調整設定値を最大限に調整しても、印刷に要するトナー消費量が課金レベル「低」で許容される最大トナー消費量を超えてしまう場合が想定される。このような場合には、図14(a)に例示するような警告画面がポップアップ表示され、各画像調整設定値をデフォルト値に戻すとともに、当該デフォルト値に基づいて導出されるレベルに課金レベルが設定される。その後、上記警告画面が消え、ページ単位設定画面1300の表示が更新される。
図10のフローの説明に戻る。
ステップS1011の後、制御部300は、ページ毎の設定処理(以下、ページ単位設定処理)を行う。ページ単位設定処理については、後述する。
以上が、課金情報の表示を行う場合の、印刷データ送信処理の内容である。
[超過ページ確認処理]
続いて、ジョブ単位設定においてユーザが超過ページの確認を希望した場合(前述の図10のフローのステップS1004でYes)に実行される、超過ページ確認処理について詳細に説明する。図15は、超過ページ確認処理の流れを示すフローチャートである。
ステップS1501において、制御部300は、処理対象ページに対する現時点で見込まれるトナー消費量がジョブ単位設定画面1200の課金レベル上限設定領域1201で設定されている課金レベルの上限に応じた最大トナー消費量より多いか否かを判定する。尚、処理対象ページは通常、印刷対象データの1ページ目から始まり、2ページ目、3ページ目といった具合に順次更新される。判定の結果、処理対象ページのトナー消費量が最大トナー消費量より多い場合は、ステップS1502に進み、処理対象ページのトナー消費量が最大トナー消費量以下の場合は、ステップS1511に進む。
ステップS1502において、制御部300は、第1メモリ3040から処理対象ページの画像調整設定値を読み出し、制御部300内のRAM等に一時的に保存する。
ステップS1503において、制御部300は、後述のトナー調整処理を行う。
ステップS1504において、画像調整処理部301は、前述の画像調整処理(図8のフローを参照)を行う。
ステップS1505において、制御部300は、トナーリダクション処理がなされた後のCMYKビットマップ画像データを制御部300内のRAM等に一時的に保存する。
ステップS1506において、制御部300は、プレビュー画面を作成し、不図示の表示部に表示する。図12(b)は、ジョブ単位設定画面1200内の超過ページ確認ボタン1204の押下に応じてポップアップ表示されるプレビュー画面の一例を示す図である。プレビュー画面1210内の領域1211は、原画像のプレビュー表示を行う領域であり、設定された課金レベルの上限を超えて通常の印刷処理が実行された場合の画像が表示される。また、プレビュー画面1210内の領域1212は、課金レベル優先処理を行なった画像のプレビュー表示を行う領域であり、設定された課金レベルの上限に応じた最大トナー消費量以下となるようトナー調整処理がなされて印刷処理が実行された場合の画像が表示される。ユーザはこの2つの画像を見比べて、所望の画像を選択する。即ち、課金レベル優先処理を行なった画像で印刷を行いたい場合にはOKボタン1213を押下し、原画像で印刷を行いたい場合にはNGボタン1214を押下する。OKボタン1213又はNGボタンが押下されると、他に超過ページが存在すれば、次の超過ページについてのポップアップ表示が同様になされる。一方、他に超過ページが存在しなければ、図12(c)に例示するような超過ページ確認完了画面のポップアップ表示がなされる。超過ページ確認完了画面については、後述する。
ステップS1507において、制御部300は、上述のプレビュー画面1210におけるユーザ入力を受け付け、OKボタン1213と、NGボタン1214とのいずれが押下されたかを判定する。判定の結果、OKボタン1213が押下された場合は、ステップS1512に進み、NGボタン1214が押下された場合は、ステップS1508に進む。
ステップS1508において、制御部300は、S1502で一時的に保存した画像調整設定値(即ち、処理対象ページの原画像(トナー調整処理前の画像)に係る画像調整設定値)を、第1メモリ3040において上書き保存する。
ステップS1509において、画像調整処理部301は、前述の画像調整処理(図8のフローを参照)を行う。
ステップS1510において、制御部300は、ステップS1509でトナーリダクション処理がなされた後のCMYKビットマップ画像データを制御部300内のRAM等に一時的に保存する。この際、一時的に保存されるデータは、S1505で一時保存されたデータに上書き保存される。ステップS1510の後、ステップS1512に進む。
ステップS1501にて処理対象ページのトナー消費量が最大トナー消費量以下と判定された場合(ステップS1501でNo)、ステップS1511において、制御部300は、処理対象ページのCMYKビットマップ画像データを第2メモリ3041から取得して、制御部300内のRAM等に一時的に保存する。ステップS1511の後、ステップS1512に進む。
ステップS1512において、制御部300は、印刷が指示されたアプリケーションデータの全ページについて処理が完了したか否かを判定する。判定の結果、未処理のページがある場合は、ステップS1513に進み、最終ページまでの処理が完了している場合は、ステップS1514に進む。
ステップS1513において、制御部300は、次のページを処理対象ページに設定し、設定された処理対象ページのCMYKビットマップ画像データと、これに対応付けされたトナー消費量とを、第2メモリ3041から取得する。その後、ステップS1501に戻り、当該処理対象ページに対する処理を続行する。
最終ページまでの処理が完了すると、ステップS1514において、制御部300は、ジョブ単位設定における超過ページ確認が完了した旨をユーザに通知する画面(超過ページ確認完了画面)を作成し、不図示の表示部にポップアップ表示する。図12(c)は、超過ページ確認完了画面の一例を示す図である。超過ページ確認完了画面1220内のOKボタン1221が押下されると印刷処理が開始され、キャンセルボタン1222が押下されるとジョブ単位設定を中止して、図10におけるS1001に進み、課金情報基本画面1100が表示される。
ステップS1515において、制御部300は、OKボタン1221と、キャンセルボタン1222とのいずれが押下されたかを判定する。判定の結果、OKボタン1221が押下された場合、ステップS1516に進み、キャンセルボタン1222が押下された場合、図10のステップS1001に進んで課金情報基本画面1100が表示される。
ステップS1516において、送受信部303は、ステップS1505、ステップS1510、又はステップS1511の何れかで一時保存した各ページのデータから成る、全ページのCMYKビットマップ画像データを、ユーザが出力先に指定した対応プリンタ101に送信する。ここで、ステップS1505で一時保存したデータはトナー調整処理が実行されたページのデータである。一方、ステップS1510又はステップS1511で一時保存したデータは、トナー調整処理が実行されていないページのデータである。
尚、上記の例では、印刷対象となるアプリケーションデータに超過ページが含まれているか否かにかかわらず、超過ページ確認ボタン1204は常に有効である。しかし、印刷対象となるアプリケーションデータに超過ページが含まれていない場合には、超過ページ確認ボタン1204を、グレーアウト表示したり非表示にする等して無効化しても良い。
以上が超過ページ確認処理の内容である。
[ページ単位設定処理]
続いて、前述の図10のフローのステップS1011後に実行されるページ単位設定処理について説明する。図16は、ページ単位設定処理の流れを示すフローチャートである。
ステップS1601において、制御部300は、前述のページ単位設定画面1300におけるユーザ入力を受け付け、出力ボタン1307が押下されたか否かを判定する。判定の結果、出力ボタン1307が押下されていた場合は、図9におけるステップS901に進み前述の印刷データ送信処理が実行され、出力ボタン1307が押下されていない場合は、ステップS1602に進む。
ステップS1602において、制御部300は、ページの切り替え指示(本実施例では、前へボタン1302又は次へボタン1303の押下)がなされたか否かを判定する。判定の結果、ページ切り替え指示があった場合は、ステップS1609に進み、ページ切り替え指示が無い場合は、ステップS1603に進む。
ステップS1603において、制御部300は、何らかの設定変更の指示がなされたか否かを判定する。判定の結果、設定変更の指示がなされていない場合はステップS1601に戻り、課金レベル設定の変更の指示がなされた場合はステップS1611に進み、画像調整設定の変更の指示がなされた場合はステップS1604に進む。
ステップS1604において、制御部300は、変更後の画像調整設定値を第1メモリ3040に上書き保存する。
ステップS1605において、画像調整処理部301は、前述の画像調整処理(図8のフローを参照)を行う。
ステップS1606において、トナー消費量調整部302は、処理対象ページについて、S1605で画像調整処理がなされた後のCMYKビットマップ画像データに対するトナー消費量を再び導出する。
ステップS1607において、制御部300は、ステップS1606で導出されたトナー消費量に対応する課金レベルを決定し、当該決定された課金レベルが画像調整設定を変更する前の課金レベルと異なる課金レベルであるか否かを判定する。判定の結果、課金レベルに変化が無い場合、ステップS1601に戻り、課金レベルに変化がある場合、ステップS1608に進む。
ステップS1608において、制御部300は、課金レベル設定領域1304に表示される課金レベルを更新する。例えば、課金レベル設定領域1304に表示中の課金レベルが「中」から「高」に変更される。その後、ステップS1601に戻り次のユーザ入力に備える。
ページ単位設定画面1300において、ページ切り替え指示がなされた場合(ステップS1602でYes)、ステップS1609において、切り替え後のページが処理対象ページとなる。このとき、処理対象ページに対する画像調整設定値は第1メモリ3040から取得され、処理対象ページに対するCMYKビットマップ画像データと、これに対応付けされたトナー消費量とは、第2メモリ3041から取得される。そして、続くステップS1610において、ページプレビュー領域1301の表示が更新された新たなページ単位設定画面1300が作成され表示される。その際は、ステップS1609で取得したCMYKビットマップ画像データからページプレビュー用の画像を生成するとともに、取得したトナー消費量から課金レベルを決定する。こうして生成されたプレビュー用画像と決定された課金レベルは、新たなページ単位設定画面1300における、ページプレビュー領域1301及び課金レベル設定領域1304に表示する内容として反映される。さらに、取得した画像調整設定値に応じて、画像調整設定領域1310内の表示内容も更新される。例えば、濃度調整スライドバー1311上のポインタやシャープネス調整スライドバー1312上のポインタが取得した画像調整設定値に応じてスライドする。ページ単位設定画面1300の更新が終了すると、ステップS1601に戻り、次のユーザ入力に備える。
ステップS1603において、課金レベル設定の変更の指示がなされた場合について説明する。この場合、ステップS1611において、トナー消費量調整部302は、変更後の課金レベルに基づき、後述のトナー調整処理を行う。そして、続くステップS1612において、制御部300は、画像調整設定領域1310内の表示内容を更新する。ページ単位設定画面1300の更新が終了すると、ステップS1601に戻り、次のユーザ入力に備える。
以上がページ単位設定処理の内容である。
[トナー調整処理]
続いて、前述のステップS1006、S1503、S1611等において実行されるトナー調整処理について説明する。図17は、ページ単位設定におけるトナー調整処理、即ち、ステップS1611で実行されるトナー調整処理の流れを示すフローチャートである。ページ単位設定において実行されるトナー調整処理の一例として、現時点で見込まれるトナー消費量が、設定されている課金レベルに対応する最大トナー消費量を越えてしまうような場合に、各種の画像調整設定値を変更することで、当該最大トナー消費量以下までトナー消費量を低減させる処理が存在する。以下、濃度調整によって、トナー消費量を、設定されている課金レベルに対応する最大トナー消費量以下に低減させる場合について説明する。
ステップS1701において、トナー消費量調整部302は、処理対象ページの現時点における画像調整設定値を取得する。ここでは、画像調整設定値として、処理対象ページのCMYKビットマップ画像データに適用される濃度調整設定値を第1メモリ3040から取得する。本実施例において、濃度調整設定値は−6から+6までのレベルがあるものとする(前述の図13に示すページ単位設定画面1300における濃度調整スライドバー1311を参照)。この場合において、濃度調整設定値を下げて濃度を薄くすることでトナー消費量を下げることが出来る。本実施例では、画像調整設定値を1レベル下げる度に5%薄くなり、6レベル下げれば30%薄くなるものとする。
ステップS1702において、トナー消費量調整部302は、画像調整設定値をあと何レベル下げることが可能であるかを確認し、画像調整可能量を求める。ここでは、取得した濃度調整設定値と、設定可能な濃度調整設定値の最低値との差が何レベルであるかを計算等によって求め、トナー消費量調整部302内の不図示のRAM等に一時的に保存する。この差、即ち、調整可能なレベル数が画像調整可能量となる。
ステップS1703において、トナー消費量調整部302は、現時点で見込まれるトナー消費量を、設定されている課金レベルに対応する最大トナー消費量以下に低減させるためのトナー調整量を計算等によって求める。そして、求めたトナー調整量分のトナーを削減するための、トナー調整量に相当する画像調整量を導出する。この画像調整量を導出する手順は以下の通りである。
1)まず、現時点で見込まれるトナー消費量と、設定されている課金レベルに対応する許容トナー消費量の範囲とを、記憶部304から取得する。
2)次に、現時点で見込まれるトナー消費量から、設定されている課金レベルに対応する許容トナー消費量の範囲内における所定値を引いてトナー調整量を求める。ここで、所定値は、設定されている課金レベルに対応する範囲内における最大のトナー消費量又は中間程度のトナー消費量等、設定されている課金レベルに対応する範囲に含まれる任意の値で良い。
3)そして、求めたトナー調整量と、現時点で見込まれるトナー消費量との割合から、濃度を何%薄くする必要があるかを求め、それに応じた画像調整量を決定する。例えば、3%薄くする必要がある場合には1レベル、10%薄くする必要がある場合には2レベルといった具合に画像調整量が決定される。ただし、本実施例の場合、30%以上薄くしたい場合には濃度調整設定値のレベル調整だけでは実現不可能となる。このようにして導出された画像調整量は、トナー消費量調整部302内の不図示のRAM等に一時的に保存される。
ステップS1704において、トナー消費量調整部302は、ステップS1702で導出した画像調整可能量と、ステップS1703で導出した画像調整量とを、RAM等から読み出し、いずれが大きいか判定する。判定の結果、画像調整量が画像調整可能量以下の場合には、ステップS1705に進み、画像調整量が画像調整可能量より大きい場合には、ステップS1706に進む。
ステップS1705において、トナー消費量調整部302は、ステップS1701で取得した現時点における画像調整設定値と、ステップS1703で導出した画像調整量とに基づき、設定されている課金レベルに対応する最大トナー消費量以下となるようにトナー消費量を調整した場合の画像調整設定値を決定する。具体的には、ステップS1701で取得した現時点における画像調整設定値をレベルN、ステップS1703で導出した画像調整量をレベルMとすると、ステップS1705にて画像調整設定値はレベルN−Mと決定される。尚、当該決定された画像調整設定値は、第1メモリ3040において上書き保存される。
ステップS1706において、トナー消費量調整部302は、トナー調整が不可能である旨を、警告画面を不図示の表示部に表示する等してユーザに通知する(前述の図14(a)の警告画面を参照)。このような警告を行った上で、トナー消費量調整部302は、現時点における画像調整設定値を第1メモリ3040において上書き保存する。このとき、第1メモリ3040に保存される画像調整設定値は、上書き保存の前後で変わらない。或いは、例えば、ユーザが課金レベルを「高」から「低」に変更した場合であって、課金レベル「低」を満たす画像調整設定値が存在しない場合等に、図14(a)の警告画面の代わりに図14(b)に例示するような警告画面を表示しても良い。このとき、OKボタン1401が押下されると、課金レベル「中」を満たすような画像調整設定値が第1メモリ3040において上書き保存される。一方、NGボタン1402が押下されると、現時点における画像調整設定値が第1メモリ3040において上書き保存される。
ここでは画像調整設定値に含まれる濃度調整設定値を用いてトナー調整を行う方法を説明したが、トナー調整を行うための画像調整設定は濃度調整に限られない。トナー消費量を変更できるような調整であれば良い。
尚、上記の説明では、ページ単位設定においてトナー消費量を低減するために実行されるトナー調整処理について説明した。ジョブ単位設定におけるトナー調整処理についても同様である。即ち、上記のトナー調整処理の説明における「設定されている課金レベル」を「設定されている課金レベルの上限」と読みかえれば良い。
以上がトナー調整処理の内容である。
[実施例2]
ここでは主に、実施例1と異なる点について説明する。
実施例1では、課金体系の一例である段階別課金を例に挙げて説明した。しかし、課金体系には、段階別課金の他に、カラー印刷かモノクロ印刷かに基づいて異なる固定額を課金する態様や、トナー消費量に応じて課金額が非段階的に変化する従量課金等の体系も存在する。
従って、このような課金体系をプリンタが採用している場合に、制御部300は、上記各種の課金体系に応じたプリンタ情報を取得し、取得したプリンタ情報に含まれる課金体系に沿った機種情報や設定情報に応じて、課金体系表示領域1101及び課金レベル表示領域1102の表示を切り替えて、非図示の表示部に表示する必要がある。
例えば、プリンタが採用している課金体系が、実施例1で示したような課金レベルが3段階の段階別課金である場合、制御部300は、課金体系表示領域1101には階段状のグラフを表示し、課金レベル表示領域1102には「高」、「中」、「低」といった課金レベルを表示する(図11を参照)。一方で、プリンタが採用している課金体系が従量課金である場合、制御部300は、課金体系表示領域1101にはトナー消費量に応じて課金額が増加する様子を示す右肩上がりの直線や曲線等を表示し、課金レベル表示領域1102には課金額そのものを表示したり、予め定めておいた大まかな課金レベルを数字で表示したりする。図12(a)の課金レベル上限設定領域1201や、図13の課金レベル設定領域1304に関しても同様に、プリンタが採用している課金体系に応じた表示を行う必要があり、それに合わせてボタンの表示等も変更される。
以上のように、プリンタが採用している課金体系に応じて、課金情報の表示形式を切り替えることで、より多くの機種のプリンタに対応した課金情報の表示が可能となる。
[その他の実施例]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。