(57)【要約】【課題】  オペレーションシステムにおいてユーザ定義用紙を作成する際に入力された余白値を考慮し、なおかつプリンタの有効印字領域から来る余白値も考慮しつつ、利便性を高めたプリンタドライバを提供する。【解決手段】  プリンタの余白値とユーザ定義用紙の余白値のどちらを優先させるかのＵＩをプリンタドライバに設ける。もしくはどちらも考慮して内部で切り替えるような処理をプリンタドライバに追加する。【選択図】  図１３
2008269324.tif 000002
【特許請求の範囲】
【請求項１】
情報機器内のオペレーティングシステムから非定型用紙のサイズと余白値を取得するサイズ余白取得手段と、前記サイズ余白取得手段で取得した非定型用紙サイズを前記オペレーティングシステムに対してリストする用紙サイズリスト手段をもつプリンタドライバにおいて、非定型用紙サイズの余白値として前記サイズ余白取得手段で取得した余白値をそのまま使用して処理を行う非定型用紙余白値使用処理と、前記サイズ余白取得手段で取得した値に関わらず画像出力装置の持つ余白値を使用する非定型用紙余白値不使用処理と、前記非定型用紙余白値使用処理と前記非定型用紙余白値不使用処理とを切り替える入力手段を持つ事を特徴とするプリンタドライバ。
【請求項２】
前記非定型用紙余白値使用処理における用紙サイズリスト手段が用紙サイズのリストの際に非定型用紙の余白値より画像出力装置のもつ余白値の方が大きい場合に前記非定型用紙をリストしないことを特徴とする請求項１に記載のプリンタドライバ。
【請求項３】
前記非定型用紙余白値不使用処理における用紙サイズリスト手段が用紙サイズのリストの際に非定型用紙の余白値より画像出力装置のもつ余白値の方が大きい場合に前記非定型用紙を下のほうにソートするソート処理を持つ事を特徴とする請求項１に記載のプリンタドライバ。
【請求項４】
前記非定型用紙余白値不使用処理における用紙サイズリスト手段が用紙サイズのリストの際に非定型用紙の余白値より画像出力装置のもつ余白値の方が大きい場合に前記非定型用紙に印をつける印つけ手段を持つ事を特徴とする請求項１に記載のプリンタドライバ。
【請求項５】
情報機器内のオペレーティングシステムから非定型用紙のサイズと余白値を取得するサイズ余白取得手段と、前記サイズ余白取得手段で取得した非定型用紙サイズを前記オペレーティングシステムに対してリストする用紙サイズリスト手段をもつプリンタドライバにおいて、前記サイズ余白取得手段で取得した余白値と画像出力装置の持つ余白値との大小を比較する余白値比較手段と、前記サイズ余白取得手段で取得した余白値が画像出力装置のもつ余白値よりも大きい場合には非定型用紙サイズの余白値として前記サイズ余白取得手段で取得した余白値をそのまま使用して処理を行い、前記サイズ余白取得手段で取得した余白値が画像出力装置の持つ余白地よりも小さい場合には画像出力装置のもつ余白値を使用する非定型用紙処理部とを持つ事を特徴とするプリンタドライバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はプリンタドライバに関するものである。
【背景技術】
【０００２】
一般にホストコンピュータ上のアプリケーションから印刷装置(以下プリンタ)への印刷指示を行う際にはプリンタドライバと呼ばれるソフトウェアを使用する。プリンタドライバはアプリケーションからの印刷指示をプリンタの解釈できる言語に変換してプリンタに送信する機能を持ち、ユーザからの印刷設定を受け付けるユーザインタフェース（ＵＩ）機能と印刷実行時の描画を担当するグラフィック機能の２つの機能を持っている。プリンタドライバのＵＩ機能はプリンタのサポートする用紙サイズの一覧を管理しており、アプリケーションは出力先のプリンタがサポートしている用紙サイズ一覧を取得してリスト表示することで、ユーザは用紙サイズ一覧から使用したい用紙を選択することができる。
【０００３】
また、プリンタのサポートする用紙サイズには定型用紙と非定型用紙が存在する。非定型用紙とは「Ａ４」や「Ｌｅｔｔｅｒ」などの定型用紙と異なり、ユーザが任意にサイズを定義することができる用紙のことである（以下、ユーザ定義用紙と呼ぶことにする）。ユーザ定義用紙は一般にＯＳが管理しており、例えばＷｉｎｄｏｗｓ２０００（Ｗｉｎｄｏｗｓは登録商標）においてはＯＳの提供する「プリントサーバーのプロパティ」ダイアログを使用することで、任意のユーザ定義用紙サイズを作成することが可能となっている。また、「プリントサーバーのプロパティ」ダイアログでは用紙サイズの他に上下左右の余白値を指定することができる。ユーザは余白部分に印刷できない領域のある用紙をＯＳに登録する際に、余白値を入力して作成することで、印刷できない領域をＯＳに伝えることができる。印刷できない領域はプリンタドライバを介してアプリケーションに伝えることができるため、アプリケーションはユーザ定義用紙に定義されている余白より内側のみに描画を行う事が可能になる。
【０００４】
従来例としては、印字データがプリンタの印字可能領域を越えている場合にも印字データの余白部分の余白量に応じて印字データの上下反転などを行い１ページ内におさめるものがある（特許文献１参照）。
【特許文献１】特開２０００−２５２９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
プリンタドライバはプリンタの有効印字領域を把握しているため、有効印字領域を超えて印字可能なユーザ定義用紙を「サポート外」にすることが可能である。これはユーザ定義用紙の持つ余白に従ってアプリケーションが描画を行ってきた際にプリンタの有効印字領域の外に描画を行おうとして意図しない結果となるのを防ぐためである。
【０００６】
しかし、「プリントサーバーのプロパティ」ダイアログにおいてはデフォルトの余白値が０ｍｍであることから、ユーザがあえて余白値をある一定の値よりも大きい値で入力しない限りそのプリンタドライバでは非サポートとなってしまうという問題がある。例えばプリンタの有効印字領域が余白５ｍｍであるプリンタのプリンタドライバではユーザが５ｍｍ以上の余白をつけて作成したユーザ定義用紙サイズしか選択することができない。
【０００７】
一方、ユーザ定義用紙は余白の大きさに関わらず全て「サポート」とし、ドライバからＯＳに通知する余白値として、ある一定の値を返すという方法を取ることもできる。この方法を取ることで、用紙として選択することができない事態は回避することができるが、もともと用紙に定義されている印刷できない領域に対しても印字を行ってしまうため、好ましくない。さらに、用紙選択画面において多くの用紙がリストされるため利便性が悪い。
【課題を解決するための手段】
【０００８】
前記課題を解決するために本発明のプリンタドライバは、情報機器内のオペレーティングシステムから非定型用紙のサイズと余白値を取得するサイズ余白取得手段と、前記サイズ余白取得手段で取得した非定型用紙サイズを前記オペレーティングシステムに対してリストする用紙サイズリスト手段をもつプリンタドライバにおいて、非定型用紙サイズの余白値として前記サイズ余白取得手段で取得した余白値をそのまま使用して処理を行う非定型用紙余白値使用処理と、前記サイズ余白取得手段で取得した値に関わらず画像出力装置の持つ余白値を使用する非定型用紙余白値不使用処理と、前記非定型用紙余白値使用処理と前記非定型用紙余白値不使用処理とを切り替える入力手段を持つ事を特徴とする。
【発明の効果】
【０００９】
本発明を実施することで、ユーザ定義用紙サイズを作成する際に余白の値をユーザがわざわざプリンタにあわせて入力する手間を省くことができ、かつユーザ定義用紙固有の余白値も考慮してプリンタドライバを動作させることが可能となる。さらに、数え切れない数のユーザ定義用紙がリストされた時の利便性を高めることができる。
【発明を実施するための最良の形態】
【００１０】
（実施例１）
以下、図面を参照して本発明の好適な実施形態について詳細に説明する。
【００１１】
図１は、実施形態における印刷システムの構成を示す図である。
【００１２】
同図において、ホストコンピュータ３０００は、ＲＯＭ５３のプログラム用ＲＯＭあるいは外部メモリ６１に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行するＣＰＵ５１を備え、システムバス５４に接続される各デバイスをＣＰＵ５１が総括的に制御する。また、このＲＯＭ５３のプログラム用ＲＯＭあるいは外部メモリ６１には、ＣＰＵ５１の制御プログラムであるオペレーティングシステムプログラム（以下ＯＳ）等を記憶し、ＲＯＭ５３のフォント用ＲＯＭあるいは外部メモリ６１には上記文書処理の際に使用するフォントデータ等を記憶し、ＲＯＭ５３のデータ用ＲＯＭあるいは外部メモリ６１には上記文書処理等を行う際に使用する各種データを記憶する。ＲＡＭ５２は、ＣＰＵ５１の主メモリ、ワークエリア等として機能する。
【００１３】
キーボードコントローラ（ＫＢＣ）５５は、キーボード５９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）５６は、ＣＲＴディスプレイ（ＣＲＴ）６０の表示を制御する。５７はディスクコントローラ（ＤＫＣ）で、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタ制御コマンド生成プログラム（以下プリンタドライバ）等を記憶するハードディスク（ＨＤ）、フレキシブルディスク（ＦＤ）等の外部メモリ６１とのアクセスを制御する。プリンタコントローラ（ＰＲＴＣ）５８は、双方向性インターフェース６５を介してプリンタ１５００に接続されて、プリンタ１５００との通信制御処理を実行する。
【００１４】
なお、ＣＰＵ５１は、例えばＲＡＭ５２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴ６０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ５１は、ＣＲＴ６０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行うことができる。
【００１５】
プリンタ１５００は、ＣＰＵ７２により制御される。ＣＰＵ７２は、ＲＯＭ７３のプログラム用ＲＯＭに記憶された制御プログラム等あるいは外部メモリ７４に記憶された制御プログラム等に基づいてシステムバス７５に接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。また、このＲＯＭ７３のプログラムＲＯＭには、ＣＰＵ７２の制御プログラム等を記憶する。ＲＯＭ７３のフォント用ＲＯＭには上記出力情報を生成する際に使用するフォントデータ等が記憶され、ＲＯＭ７３のデータ用ＲＯＭには、ハードディスク等の外部メモリ７４がないプリンタの場合には、ホストコンピュータ上で利用される情報等が記憶されている。
【００１６】
ＣＰＵ７２は入力部７８を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ３０００に通知できる。ＲＡＭ７９は、ＣＰＵ７２の主メモリや、ワークエリア等として機能するＲＡＭで、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。なお、ＲＡＭ７９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。ハードディスク（ＨＤ）、ＩＣカード等で構成される外部メモリ７４は、メモリコントローラ（ＭＣ）８０によりアクセスを制御される。外部メモリ７４は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、１５０１は操作パネルで操作のためのスイッチおよびＬＥＤ表示器等が配されている。
【００１７】
また、このプリンタ１５００には、課金のために、印刷枚数をカウントするカウンタ８１が設けられている。このカウンタ８１のカウント動作はＣＰＵ７２によって制御されうる。
【００１８】
また、前述した外部メモリ７４は１個に限らず、複数個備えられ、内蔵フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、図示しないＮＶＲＡＭを有し、操作パネル１５０１からのプリンタモード設定情報を記憶するようにしてもよい。
【００１９】
図２は、実施形態における印刷システムの印刷処理に係るソフトウェア構成を示す図である。
【００２０】
ホストコンピュータ３０００において、アプリケーション２０１、グラフィックエンジン２０２、プリンタドライバ２０３、およびシステムスプーラ２０４は、外部メモリ６１に保存され、ＯＳやそのプログラムを利用する別のプログラムからの指示によってＲＡＭ２にロードされ、ＣＰＵ１によって実行されるプログラムモジュールである。また、アプリケーション２０１およびプリンタドライバ２０３は、外部メモリ６１のＦＤや不図示のＣＤ−ＲＯＭもしくはネットワークを経由して外部ディスクのＨＤに追加することが可能となっている。外部メモリ６１に保存されているアプリケーション２０１はＲＡＭ２にロードされて実行されるが、このアプリケーション２０１からプリンタ１５００に対して印刷を行う際には、同様にＲＡＭ２にロードされ実行可能となっているグラフィックエンジン２０２を利用して出力（描画）を行う。
【００２１】
グラフィックエンジン２０２（ＷｉｎｄｏｗｓOS（Ｗｉｎｄｏｗｓは米国マイクロソフト社の登録商標）では、ＧＤＩと呼ばれるＯＳの描画手段に相当する）は、プリンタ１５００のために用意されたプリンタドライバ２０３を同様に外部メモリ６１からＲＡＭ２にロードし、アプリケーション２０１の出力をプリンタドライバ２０３に設定する。そして、アプリケーション２０１から受け取るＧＤＩ（Graphic Device Interface）関数からＤＤＩ（Device Driver Interface）関数に変換して、プリンタドライバ２０３へＤＤＩ関数を出力する。プリンタドライバ２０３は、グラフィックエンジン２０２から受け取ったＤＤＩ関数に基づいて、プリンタが認識可能な制御コマンド、例えばＰＤＬ（Page Description Language）に変換する。変換されたプリンタ制御コマンドは、ＯＳによってＲＡＭ２にロードされたシステムスプーラ２０４を経てインタフェイス２１経由でプリンタ１５００へ印刷データとして出力される仕組みとなっている。
【００２２】
本実施形態の印刷システムは更に、アプリケーション２０１からの印刷データを中間コードデータでスプールする構成を有する。図３は、かかる中間コードデータのスプールに係るソフトウェア構成を示す図である。
【００２３】
図３において、アプリケーション２０１からの印刷データは印刷データ保存用ドライバ３０２を介して中間データ形式の保存ファイル３０３として外部メモリ６１に保存（スプール）される。この保存ファイル３０３は印刷物のコンテンツデータや印刷用設定データ等を含む。ここで、印刷物のコンテンツデータとは、ユーザがアプリケーション２０１上で作成したデータの中間コードであり、印刷用設定データとは、コンテンツデータをどのように出力するか（出力体裁等）を記述したデータである。
【００２４】
そして、この保存ファイル３０３を印刷制御アプリケーション３０４が読み込む。このアプリケーションはこの読み込んだ保存ファイル３０３の出力体裁を変更し、表示し、保存し、印刷命令を出力することが可能である。実際に印刷を行わせるのは印刷アプリケーション（デスプーラ）３０５である。印刷制御アプリケーション３０４からの印刷命令を受けた印刷アプリケーション（デスプーラ）３０５は、印刷制御アプリケーション３０４で設定された出力体裁に従い、グラフィックエンジン３０６に出力指示を送る。これにより、プリンタドライバ２０３はグラフィックエンジン２０２から取得したＤＤＩ関数に基づいてページ記述言語等によるプリンタ制御コマンドを生成し、システムスプーラ２０４を経由してプリンタ１５００に出力することになる。
【００２５】
印刷制御アプリケーション３０４は、中間コード形式の保存ファイル３０３を加工することで印刷データの内容を変更することができる。これによりアプリケーション２０１からの印刷データに対して、拡大縮小や、複数ページを１ページに縮小して印刷する等、アプリケーション２０１が持たない機能を実現することができる。一般には、印刷制御アプリケーション３０４が提供するユーザインタフェース（ＵＩ）のウインドウを介して設定を行い、その設定内容がＲＡＭ２あるいは外部メモリ６１上に保管される。
【００２６】
図４は、プリンタ１５００の一例であるカラーレーザプリンタの断面図である。
【００２７】
このプリンタはホストコンピュータ３０００より入力した印刷データに基づいて得られる各色毎の画像データで変調されたレーザ光をポリゴンミラー３１により感光ドラム１５を走査して静電潜像を形成する。そして、この静電潜像をトナー現像して可視画像を得、これを中間転写体９へ全色について多重転写してカラー可視画像を形成する。そして更に、このカラー可視画像を転写材２へ転写し、転写材２上にカラー可視画像を定着させる。以上の制御を行う画像形成部は、感光ドラム１５を有するドラムユニット、接触帯電ローラ１７を有する一次帯電部、クリーニング部、現像部、中間転写体９、用紙カセット１や各種ローラ３、４、５、７を含む給紙部、転写ローラ１０を含む転写部及び定着部２５によって構成されている。
【００２８】
ドラムユニット１３は、感光ドラム（感光体）１５と感光ドラム１５のホルダを兼ねたクリーニング機構を有するクリーナ容器１４とを一体に構成したものである。このドラムユニット１３はプリンタ本体に対して着脱自在に支持され、感光ドラム１５の寿命に合わせて容易にユニット交換可能に構成されている。上記感光ドラム１５はアルミシリンダの外周に有機光導電体層を塗布して構成し、クリーナ容器１４に回転可能に支持されている。感光ドラム１５は、図示しない駆動モータの駆動力が伝達されて回転するもので、駆動モータは感光ドラム１５を画像形成動作に応じて反時計回り方向に回転させる。感光ドラム１５の表面を選択的に露光させることにより静電潜像が形成されるように構成されている。スキャナ部３０では、変調されたレーザ光を、モータ３１ａにより画像信号の水平同期信号を同期して回転するポリゴンミラーにより反射し、レンズ３２、反射鏡３３を介して感光ドラムを照射する。
【００２９】
現像部は、上記静電潜像を可視画像化するために、イエロー（Ｙ）、マゼンダ（Ｍ）、シアン（Ｃ）の現像を行う３個のカラー現像器２０Ｙ、２０Ｍ、２０Ｃと、ブラック（Ｂ）の現像を行う１個のブラック現像器２１Ｂとを備えた構成を有する。カラー現像器２０Ｙ、２０Ｍ、２０Ｃ及びブラック現像器２１Ｂには、スリープ２０ＹＳ、２０ＭＳ、２０ＣＳ及び２１ＢＳと、これらスリープ２０ＹＳ、２０ＭＳ、２０ＣＳ、２１ＢＳそれぞれの外周に圧接する塗布ブレード２０ＹＢ、２０ＭＢ、２０ＣＢ及び２１ＢＢとがそれぞれ設けられる。また３個のカラー現像器２０Ｙ、２０Ｍ、２０Ｃには塗布ローラ２０ＹＲ、２０ＭＲ、２０ＣＲが設けられている。
【００３０】
また、ブラック現像器２１Ｂはプリンタ本体に対して着脱可能に取り付けられており、カラー現像器２０Ｙ、２０Ｍ、２０Ｃは回転軸２２を中心に回転する現像ロータリー２３にそれぞれ着脱可能に取り付けられている。
【００３１】
ブラック現像器２１Ｂのスリープ２１ＢＳは感光ドラム１５に対して例えば３００μｍ程度の微小間隔を持って配置されている。ブラック現像器２１Ｂは、器内に内蔵された送り込み部材によってトナーを搬送すると共に、時計回り方向に回転するスリープ２１ＢＳの外周に塗布ブレード２１ＢＢによって塗布するように摩擦帯電によってトナーへ電荷を付与する。また、スリープ２１ＢＳに現像バイアスを印加することにより、静電潜像に応じて感光ドラム１５に対して現像を行って感光ドラム１５にブラックトナーによる可視画像を形成する。
【００３２】
３個のカラー現像器２０Ｙ、２０Ｍ、２０Ｃは、画像形成に際して現像ロータリー２３の回転に伴って回転し、所定のスリープ２０ＹＳ、２０ＭＳ、２０ＣＳが感光ドラム１５に対して３００μｍ程度の微小間隔を持って対向することになる。これにより所定のカラー現像器２０Ｙ、２０Ｍ、２０Ｃが感光ドラム１５に対向する現像位置に停止し、感光ドラム１５に可視画像が作成される。
【００３３】
カラー画像形成時には、中間転写体９の１回転毎に現像ロータリー２３が回転し、イエロー現像器２０Ｙ、マゼンダ現像器２０Ｍ、シアン現像器２０Ｃ、次いでブラック現像器２１Ｂの順で現像工程がなされ、中間転写体９が４回転してイエロー、マゼンダ、シアン、ブラックのそれぞれのトナーによる可視画像を順次形成し、その結果フルカラー可視画像を中間転写体９上に形成する。
【００３４】
中間転写体９は、感光ドラム１５に接触して感光ドラム１５の回転に伴って回転するように構成されたもので、カラー画像形成時に時計回り方向に回転し、感光ドラム１５から４回の可視画像の多重転写を受ける。また、中間転写体９は画像形成時に後述する転写ローラ１０が接触して転写材２を挟持搬送することにより転写材２に中間転写体９上のカラー可視画像を同時に多重転写する。中間転写体の外周部には、中間転写体９の回転方向に関する位置を検知するためのＴＯＰセンサ９ａ及びＲＳセンサ９ｂと、中間転写体に転写されたトナー像の濃度を検知するための濃度センサ９ｃが配置されている。
【００３５】
転写ローラ１０は、感光ドラム１５に対して接離可能に支承された転写帯電器を備えたもので、金属軸を中抵抗発泡弾性体により巻回することによって構成されている。
【００３６】
転写ローラ１０は、図４に実線で示すように中間転写体９上にカラー可視画像を多重転写している間は、カラー可視画像を乱さぬように下方に離開している。そして、上記中間転写体９上に４色のカラー可視画像が形成された後は、このカラー可視画像を転写材２に転写するタイミングに合わせてカム部材（不図示）により転写ローラ１０を図示点線で示す上方に位置させる。これにより転写ローラ１０は転写材２を介して中間転写体９に所定の押圧力で圧接すると共に、バイアス電圧が印加され、中間転写体９上のカラー可視画像が転写材２に転写される。
【００３７】
定着部２５は、転写２を搬送させながら、転写されたカラー可視画像を定着させるものであり、転写材２を加熱する定着ローラ２６と転写材２を定着ローラ２６に圧接させるための加圧ローラ２７とを備えている。定着ローラ２６と加圧ローラ２７とは中空状に形成され、内部にそれぞれヒータ２８、２９が内蔵されている。即ち、カラー可視画像を保持した転写材２は定着ローラ２６と加圧ローラ２７とにより搬送されると共に、熱及び圧力を加えることによりトナーが表面に定着される。
【００３８】
可視画像定着後の転写材２は、その後排紙ローラ３４、３５、３６によって排紙部３７へ排出して画像形成動作を終了する。
【００３９】
クリーニング手段は、感光ドラム１５上及び中間転写体９上に残ったトナーをクリーニングするものであり、感光ドラム１５上に形成されたトナーによる可視画像を中間転写体９に転写した後の廃トナーあるいは、中間転写体９上に作成された４色のカラー可視画像を転写材２に転写した後の廃トナーは、クリーナ容器１４に蓄えられる。
【００４０】
印刷される転写材（記録用紙）２は、用紙カセット１から給紙ローラ３により取り出されて中間転写体９と転写ローラ１０との間に挟まれるようにして搬送されてカラートナー画像が記録され、定着部２５を通過してトナー像が定着される。片面印刷の場合には、案内３８が上方の排紙部に記録用紙を導くように搬送経路を形成するが、両面印刷に対しては、下方の両面ユニットに導くように経路を形成する。
【００４１】
両面ユニットに導かれた記録用紙は、搬送ローラ４０により用紙カセット１の下部（二点鎖線で示す搬送経路）に一旦送り込まれた後に逆方向に搬送され、両面トレイ３９に送られる。両面トレイ３９上では、用紙は用紙カセット１に載置された状態とは表裏が逆になり、また搬送方向について前後が逆になっている。この状態で再びトナー像の転写、定着を再度行うことで、両面印刷ができる。
【００４２】
図５は本実施形態の印刷システムにおけるプリンタドライバ２０３のユーザインタフェースを示す図である（４０１）。プリンタドライバ２０３のユーザインタフェース４０１はＯＳのプリンタフォルダから開くことができ、また、アプリケーション２０１の印刷設定画面から開くこともできる。図に示すのは基本的な印刷設定を行うことのできるページ設定シート４０２のユーザインタフェースである。アプリケーション２０１から送られてくる原稿サイズ４０３や実際に印刷を行う出力用紙サイズ４０４の指定を行うことができる。また、印刷を行う部数４０３やポートレートやランドスケープ等の印刷の向き４０５、ページレイアウト４０６や自由拡縮のための倍率４０７を指定することができる。本実施例におけるプリンタドライバではユーザ定義用紙ボタン４０９によりユーザ定義用紙を作成することもできるようになっている。プリンタドライバは印刷実行時に本ユーザインタフェースで設定された内容とアプリケーションから指示された内容に基づいてＰＤＬデータを生成しプリンタへと送信する。
【００４３】
ユーザがユーザ定義ボタン４０９を押下した際に開くダイアログを示したのが図６である。用紙一覧４２０にてプリンタドライバ２０３のサポートする用紙サイズがリストされており、ユーザ定義用紙を作成する際にいずれかの用紙サイズを選択してから作成することで既存の用紙サイズの値を流用することが可能になっている。ユーザ定義用紙を登録したいユーザはユーザ定義用紙名４２１に対して新しい用紙名の記入を行い、用紙サイズ４２３にて幅、高さを単位４２２で指定した単位で入力する。最後に登録ボタン４２４を押下することで新たなユーザ定義用紙サイズを作成できるようになっている。ここで作成されたユーザ定義用紙サイズはＯＳが管理している用紙サイズのリストに追加されることで今後ＯＳによって管理されることになる。
【００４４】
図７はＷｉｎｄｏｗｓＯＳ（Ｗｉｎｄｏｗｓは登録商標）が用意しているサーバーのプロパティに存在する用紙の管理画面である。ＯＳの管理する用紙が用紙４３１欄にリストされ、新しい用紙を作成する４３３チェックボックスをチェックして、寸法４３４欄で指定した幅、高さ、左余白、右余白、上余白、下余白を入力し、用紙の保存ボタン４３５を押下することで作成することが可能である。こちらの画面で作成された用紙も前述の図６のものと同様ＯＳにより管理される。
【００４５】
ここからは図８でリストした用紙サイズ群をＯＳが管理しているものとして本発明の実施例について述べる。図８では用紙サイズとして幅、高さ、余白（上下左右）の値を示している。Ａ４、レターについては定型用紙サイズを、ユーザ極小、ユーザ極大、ユーザＡ４余白２ｍｍ、ユーザＡ４余白５ｍｍ、ユーザＡ４余白１０ｍｍに関してはユーザが図７で示したようなＯＳの提供するダイアログにて新しい用紙を作成したものと仮定する。ユーザ極小、ユーザ極大はそれぞれプリンタのサポートする用紙サイズの最小よりも小さく、最大よりも大きい用紙を想定している。また、ユーザＡ４余白２ｍｍ、ユーザＡ４余白５ｍｍ、ユーザＡ４余白１０ｍｍの３つはサイズをＡ４サイズと同じとし、上下左右の余白値のみ変更して作成したものとする。
【００４６】
図９は本実施形態におけるプリンタドライバのユーザインタフェースのひとつで、「プリンタで対応していない余白サイズを持つユーザ定義用紙を選択可能とする」かどうかの設定をチェックボックス４４０を用いて行うための画面である。チェックが外れている時はプリンタで対応していない余白サイズを持つユーザ定義用紙は非サポートとなる。逆にチェックがされている時はプリンタで対応していない余白サイズを持つユーザ定義用紙をプリンタドライバから指定可能になる。ここで、図９に挙げたユーザインタフェースの文言に関しては本実施形態のものと同じである必要はなく、ユーザに意図が伝わるものであれば何でも良い。
【００４７】
プリンタの余白が５ｍｍであると仮定し、チェックボックス４４０にチェックがされている時とされていない時のプリンタドライバユーザインタフェースの原稿サイズ４０３の具体例を示したのが図１０と図１１である。図１０はチェックがされていない時を示している。チェックがない時はユーザ定義用紙の余白を確認し、それがプリンタの余白よりも小さい時は原稿サイズ４０３にリストしない。これにより、余白の小さなユーザ定義用紙サイズを選択することでプリンタの余白を越えて印刷されることを防いでいる。一方、チェックがあるときはユーザ定義用紙の余白に関わらずリストを行う（図１０に比べると余白２ｍｍのユーザ定義用紙サイズもリストされているのがわかる）。ここで、余白２ｍｍのユーザ定義用紙サイズが選択された時にそのままアプリケーションに対して２ｍｍの余白を宣言すると、プリンタの有効印字領域外に印刷をしてしまうことになるため、一定の値をアプリケーションに宣言することになる。アプリケーションに宣言する余白の値に関しては後に図１２を用いて説明する。なお、プリンタのサポートしていないサイズであるユーザ極小、ユーザ極大サイズはチェックボックス４４０のチェックの有無に関わらずリストは行わない。これによりユーザが誤ってプリンタがサポートしていない用紙サイズを選択してしまうことを防いでいる。さらに、プリンタの有効印字領域外に印刷をしてしまう可能性のある用紙に関しては選択の際に明確になるように、ソートして選択肢の下のほうに設け、印をつけるなどしてユーザが容易に判別できるようにする。これにより、ユーザが気付かずに選択してしまうことによる描画不正等のトラブルを未然に防ぐことができる。
【００４８】
図１１までにチェックボックス４４０のチェック有り無しに応じて原稿サイズにリストする用紙の種類を変える方法を述べたが、図１２、図１３ではそれぞれのモードにおけるアプリケーションへの余白の宣言について説明している。図１２はアプリケーションが印刷を行う用紙の余白値を取得する際にアプリケーション、ＯＳ、プリンタドライバのそれぞれが行う作業を簡略化して示したものである。まず、アプリケーションは現在ＯＳが管理しているプリンタドライバのリストをＯＳに対して要求する。ＯＳはインストールされているプリンタドライバのリストを管理しているのでそれを返す。アプリケーションは取得したプリンタドライバの中から任意のプリンタドライバを選ぶことができる（通常はアプリケーションのユーザインタフェースに使用可能なプリンタのリストを表示してユーザに選択させる）。任意のプリンタドライバを選択したアプリケーションはＯＳに対してそのプリンタドライバのサポートしている用紙サイズのリストを要求する。ＯＳは該当するプリンタドライバに対して現在サポートしている用紙サイズのリストを問い合わせる。プリンタドライバは現在の設定においてサポートしている用紙サイズのリストを返却する。実際にはＯＳが管理している用紙サイズのリストから自分のサポートする用紙を複数選択してリストにして返すことになる。ここで、先述のチェックボックス４４０の有無により、用紙サイズリストにプリンタで対応していない余白サイズを持つユーザ定義用紙を含めるかどうかが決まる。具体的にはそれぞれの場合において図５に示すプリンタドライバユーザインタフェースの原稿サイズ４０３のリストと同じものを返すことになる（図１０、図１１参照）。ＯＳはその結果をそのままアプリケーションに返却する。アプリケーションはＯＳから受け取った用紙サイズのリストを自分のユーザインタフェース上でリストすることができ、通常はユーザがその中から所望の用紙サイズを選択することになる。よって、一般的にアプリケーションのユーザインタフェース上でユーザが選択できる用紙サイズはドライバユーザインタフェースの原稿サイズ４０３と等しくなる。ここではユーザが使用する用紙サイズとしてユーザ定義用紙を選択したと仮定する。ユーザが使用する用紙サイズを決定すると、今度はアプリケーションは該当する用紙サイズの余白値をＯＳに対して要求する。ＯＳは先ほどと同様にプリンタドライバに対して該当するユーザ定義用紙サイズの余白値を要求する。プリンタドライバは該当するユーザ定義用紙サイズの余白値を返却し、その値がアプリケーションに返却される。なお、図１３はアプリケーション、ＯＳ、プリンタドライバの間のデータのやり取りを簡略化して説明したものであるため、そのフローの順序を限定するものではない。データフローの順序が多少異なっても本発明を使用することが可能である。
【００４９】
プリンタドライバがＯＳに返すユーザ定義用紙サイズの余白値を決定するフローを示したのが図１３である。最初に対応していない余白のユーザ地祇用紙を選択可能か（チェックボックス４４０）を確認する。もし選択可能であれば（チェック有りの場合）該当するプリンタの余白情報を取得する（４５４）。次にＯＳに対してその値を返却する。この場合、ユーザ定義用紙サイズにおける余白値は無関係にプリンタの余白情報を返却することになる。一方、選択可能でないとき（チェック無しの場合）は該当するユーザ定義用紙サイズの余白情報を取得する（４５２）。次にＯＳに対してその値を返却する。この場合はプリンタの余白値とは無関係にユーザ定義用紙サイズの持つ余白情報を返却することになる。これによりユーザ定義用紙のもつ余白値が有効になる。プリンタの持つ余白値の方が広いようなユーザ定義用紙はもともとリストされていないことからアプリケーションから要求が来ることはない。
【００５０】
図１４に示すのはＯＳがアプリケーションに返す余白値を図１３のようにチェックの有り無しに応じてではなく、動的に切り替える方法を取ったもう１つの実施形態である。こちらの実施形態においては図９に示すような表示する用紙のダイアログボックスは存在せず、プリンタドライバのサポートするのユーザ定義用紙サイズとしては図１１に示しているものと同じでユーザ定義用紙の余白によらない。外観上は先述の実施形態において「プリンタで対応していない余白サイズを持つユーザ定義用紙を選択可能とする」チェックボックス（４４０）をチェックしたときと似ている。しかし、プリンタドライバからＯＳに返す余白の値をフロー図１４のように行うことで、それぞれの長所を生かすことができる。プリンタドライバはまず該当するユーザ定義用紙の余白を取得する（ユーザ定義用紙サイズの余白をＯＳが管理している時はＯＳから取得する）（４６０）。次に該当するプリンタの余白を取得する（プリンタドライバは一般的にプリンタの余白を管理しているためその情報を参照する）（４６１）。次にユーザ定義用紙の余白とプリンタの余白を比較する（４６２）。ユーザ定義用紙の余白がプリンタの余白よりも大きい時は、４６４に進みプリンタの余白値を返却する。逆にプリンタの余白がユーザ定義用紙の余白よりも大きい時はユーザ定義用紙の余白情報を返却する（４６３）。この方法をとることにより、ユーザ定義用紙サイズの余白値を尊重しつつ、プリンタの有効印字領域外への印字が行われることを自動的に予防することができるため非常に有用である。
【図面の簡単な説明】
【００５１】
【図１】実施形態における印刷システムの構成を示す図である。
【図２】実施形態における印刷システムの印刷処理に係わるソフトウエア構成を示す図である。
【図３】実施形態における印刷システムの中間コードデータのスプールに係わるソフトウエア構成を示す図である。
【図４】実施形態における両面印刷機能を有するカラーレーザプリンタの断面図である。
【図５】実施形態におけるプリンタドライバのユーザインタフェースを示す図である。
【図６】実施形態におけるプリンタドライバのユーザ定義用紙作成画面を示す図である。
【図７】実施形態におけるＯＳのユーザ定義用紙作成画面を示す図である。
【図８】実施形態における登録用紙サイズの例を示す図である。
【図９】実施形態におけるプリンタドライバの表示する用紙サイズを変更するユーザインタフェースを示す図である。
【図１０】実施形態における原稿サイズのリストを示す図である。
【図１１】実施形態における原稿サイズのリストを示す図である。
【図１２】実施形態におけるアプリケーション、ＯＳ、プリンタドライバのやり取りを示す図である。
【図１３】実施形態においてプリンタドライバがＯＳに対して余白値を返す際のフローを示す図である。
【図１４】実施形態においてプリンタドライバがＯＳに対して余白値を返す際のフローを示す図である。
【図１】
2008269324.tif 000003
【図２】
2008269324.tif 000004
【図３】
2008269324.tif 000005
【図４】
2008269324.tif 000006
【図５】
2008269324.tif 000007
【図６】
2008269324.tif 000008
【図７】
2008269324.tif 000009
【図８】
2008269324.tif 000010
【図９】
2008269324.tif 000011
【図１０】
2008269324.tif 000012
【図１１】
2008269324.tif 000013
【図１２】
2008269324.tif 000014
【図１３】
2008269324.tif 000015
【図１４】
2008269324.tif 000016