JP2007025845A - プリンタの制御方法およびプログラム - Google Patents
プリンタの制御方法およびプログラム Download PDFInfo
- Publication number
- JP2007025845A JP2007025845A JP2005203916A JP2005203916A JP2007025845A JP 2007025845 A JP2007025845 A JP 2007025845A JP 2005203916 A JP2005203916 A JP 2005203916A JP 2005203916 A JP2005203916 A JP 2005203916A JP 2007025845 A JP2007025845 A JP 2007025845A
- Authority
- JP
- Japan
- Prior art keywords
- printer
- data
- setting
- conversion
- 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.)
- Withdrawn
Links
Abstract
【課題】 アプリケーションおよびプリンタの組み合わせに拘わらず所望の印刷を可能にするプリンタの制御方法およびプリンタドライバを提供する。
【解決手段】 プリンタ1の制御方法は、アプリケーション3から印刷データを取得するステップと、アプリケーション3が対応可能な第二の印刷モードをエミュレーション(疑似)プリンタに設定し、実際に印刷するプリンタ1へ第一の印刷モードを設定する印刷設定ステップと、第二の印刷モードの印刷データを、プリンタ1によって印刷が可能な第一の印刷モードの変換データへ変換する変換ステップと、プリンタ1に変換データを印刷させる印刷ステップと、を有することを特徴とする。
【選択図】 図6
【解決手段】 プリンタ1の制御方法は、アプリケーション3から印刷データを取得するステップと、アプリケーション3が対応可能な第二の印刷モードをエミュレーション(疑似)プリンタに設定し、実際に印刷するプリンタ1へ第一の印刷モードを設定する印刷設定ステップと、第二の印刷モードの印刷データを、プリンタ1によって印刷が可能な第一の印刷モードの変換データへ変換する変換ステップと、プリンタ1に変換データを印刷させる印刷ステップと、を有することを特徴とする。
【選択図】 図6
Description
本発明は、アプリケーションが作成した印刷データをプリンタに印刷させるためのプリンタの制御方法およびその制御をコンピュータに実行させるプログラムに関する。
従来、プリンタの印刷制御は、プリンタ固有の仕様(内部に備えられたファームウェアなど)に対応するため、アプリケーションからホストコンピュータに備えられたプログラム(以下、プリンタドライバと称する)によってなされている。プリンタは、プリンタドライバを介して、アプリケーションにより作成された印刷データを受信してから印刷している。また、プリンタを多様なアプリケーションに対応させるために、プリンタドライバが複数のファームウエアを有していて、アプリケーションの要求とプリンタの仕様とをプリンタドライバが把握した上で、最適と判断したファームウエアをプリンタへダウンロードする方法がある。この方法によれば、プリンタは、プリンタ内に種々のファームウエアを備えておくことなく、多様なアプリケーションに対応することが可能である(たとえば特許文献1)。
しかし、従来の技術では、ある特定のプリンタの仕様に合わせて作成されているアプリケーションを用いて他のプリンタへ印刷をしたい場合、およびアプリケーションが想定している規格以外の印刷用紙等へ印刷をしたい場合などにおいて、印刷位置がずれてしまうなど、目的とする印刷(従来使用していたプリンタとほぼ同様な印刷結果が得られること)がされない場合がある。目的とする印刷をするためには、アプリケーションの変更が必要となる。例えば、ロール紙へレシートを印刷したり、商品ラベルなどの印刷をするプリンタを組み込んだPOS端末においては、用途により専用仕様のプリンタが使われる場合があり、これらのプリンタ仕様に合わせ特化したアプリケーションが作成されている場合が多い。都合により他のプリンタへ置き換えするには、アプリケーションも変更せざるを得ず、新たな投資が必要であった。
本発明は、上記課題を解決するために、アプリケーションとプリンタとの組み合わせに拘わらず、目的とする印刷を可能にするプリンタの制御方法およびプリンタドライバを提供することを目的とする。
本発明のプリンタの制御方法は、プリンタに対して当該プリンタの仕様に対応している第一の印刷モードを設定し、第一の印刷モードに対応していないアプリケーションに対しては、アプリケーションが対応している第二の印刷モードを設定する印刷設定ステップと、アプリケーションが第二の印刷モードに基づいて作成した印刷データを、第一の印刷モードが設定されているプリンタに対し印刷可能な変換データへ変換する変換ステップと、プリンタに変換データを印刷させる印刷ステップと、を有することを特徴とする。
このプリンタの制御方法によれば、印刷設定ステップで、プリンタが対応している第一の印刷モードの設定およびアプリケーションが対応している第二の印刷モードの設定を前提にし、その組合せでは目的とする印刷ができないため、変換ステップにおいて、第二の印刷モードで構成されている印刷データを、第一の印刷モードに合わせ変換した変換データとする。この変換により、アプリケーションが第二の印刷モードで作成した印刷用データを、第一の印刷モードが設定されているプリンタで、目的とする印刷結果を印刷可能にする。換言すれば、ある特定のプリンタ用の仕様に合わせてアプリケーションが作成する印刷用データであっても、当該印刷用データを他の仕様のプリンタに対応した変換データへ変換することにより、特定のプリンタ以外の別のプリンタでも目的とする印刷結果の印刷が可能となる。このようなプリンタの制御方法により、他のプリンタに置き換えても、同じアプリケーションで作成した印刷データを当該他のプリンタでも印刷することが可能である。従って、アプリケーションを変更せずに済み、新たな投資が必要ない。
この場合、印刷設定ステップおよび変換ステップは、印刷データまたは変換データを印刷するための印刷用紙を設定するステップと、印刷用紙の印刷可能領域を設定するステップと、印刷データまたは変換データの印刷開始位置を設定するステップと、印刷データまたは変換データが印刷される大きさである印刷サイズを設定するステップと、印刷データまたは変換データの印刷解像度を設定するステップと、をそれぞれ有することが好ましい。
この方法によれば、印刷設定ステップにおいては、印刷データまたは変換データを印刷するために必要な印刷用紙、印刷可能領域、印刷開始位置、印刷サイズおよび印刷解像度がそれぞれ設定できる。そして、変換ステップにおいては、印刷データとして設定されている印刷用紙、印刷可能領域、印刷開始位置、印刷サイズおよび印刷解像度を変換データへそれぞれ変換する処理が実行される。これらにより、プリンタが対応していない印刷データを当該プリンタが対応する変換データへと変換することができ、他のプリンタに置き換えても、同じアプリケーションから目的とする印刷データの内容を印刷することが可能になる。
そして、印刷用紙に対し印刷開始位置を設定するステップは、少なくとも変換データの印刷開始位置を当該変換データの印刷可能領域内の任意位置へ設定することが好ましい。
この方法によれば、変換データの印刷が印刷可能領域内のいずれの位置からでも開始でき、変換データを印刷可能領域内の自在な位置に配置可能である。これにより、設定された変換データの印刷可能領域に対して、変換データを印刷用紙の見易い位置またはバランスの良い位置などへ印刷することが可能である。
また、印刷サイズを設定するステップは、印刷開始位置を設定するステップにより任意位置へ設定された変換データの印刷サイズが当該変換データの印刷可能領域の大きさと異なる場合に、当該変換データの印刷サイズを縮小または拡大することが好ましい。
この方法によれば、変換データを印刷領域内へ印刷する大きさである印刷サイズが、印刷可能領域より大きくて入りきらないなど、印刷開始位置の変更のみでは対応できない場合であっても、変換データを縮小して印刷することにより、印刷可能領域内へ印刷可能となる。また、変換データの印刷サイズが印刷可能領域より小さく見にくい場合でも、変換データを拡大して印刷することにより印刷可能領域内へ見やすく且つバランス良く印刷可能となる。これにより、いかなる印刷サイズの印刷データであっても、変換データへ縮小または拡大して変換することにより、印刷可能領域内へ印刷可能である。
さらに、印刷解像度を設定するステップは、印刷サイズを設定するステップにより印刷データまたは変換データの印刷サイズを設定するとき、印刷データと変換データとにおける同一方向のピクセル数がそれぞれ同数になるように設定することが好ましい。
この方法によれば、印刷データを縮小または拡大して変換データに変換する際に、それぞれの同一方向のピクセル数を同数に設定する変換を行う。アプリケーションが作成したアウトラインフォントやグラフィックスデータを、プリンタの解像度に応じたビットマップデータに変換する(ラスタライズ)ことが必要となる。従来の場合、ラスタライズによって、印刷イメージに近いビットマップ状の変換データをプリンタへ送って、印刷する。この時に、ピクセル数(プリンタ間の解像度の違い)を考慮せず単純に印刷データを変換データに変換すると、一部のデータが消失したり、印刷が変形したりしていた。従来と異なり、ピクセル数を考慮して変換することにより、データの消失、印刷の変形などが回避可能である。
本発明のプリンタドライバは、プリンタに対して当該プリンタが対応している第一の印刷モードを設定し、第一の印刷モードに対応していないアプリケーションに対してアプリケーションが対応している第二の印刷モードを設定する印刷設定ステップと、アプリケーションが第二の印刷モードに基づいて作成した印刷データを、第一の印刷モードが設定されているプリンタに対し印刷可能な変換データへ変換する変換ステップと、プリンタに変換データを印刷させる印刷ステップと、をコンピュータに実行させることを特徴とする。
このプリンタドライバによれば、印刷設定ステップで、プリンタが対応している第一の印刷モードの設定およびアプリケーションが対応している第二の印刷モードの設定を前提にして、変換ステップにおいて、そのままでは目的とする印刷ができないため、第二の印刷モードで作成されている印刷データを第一の印刷モードに合わせて変換した変換データとする。この変換により、アプリケーションが第二の印刷モードで作成した印刷用データを第一の印刷モードが設定されているプリンタで、目的とする印刷結果を印刷可能にする。このような機能をコンピュータに実行させることにより、他のプリンタに置き換えても、同じアプリケーションで作成した印刷データを当該他のプリンタでも印刷することが可能である。従って、このプリンタドライバを用いれば、他のプリンタと対応するようにアプリケーションを変更する必要がない。
この場合、印刷設定ステップおよび変換ステップは、印刷データまたは変換データを印刷するための印刷用紙を用紙設定部が設定するステップと、印刷用紙の印刷可能領域を領域設定部が設定するステップと、印刷データまたは変換データの印刷開始位置を始点設定部が印刷可能領域内の任意の位置へ設定するステップと、印刷データまたは変換データが印刷される大きさである印刷サイズを印刷サイズ設定部が縮小または拡大して設定するステップと、印刷データと変換データとの印刷解像度を解像度設定部が同一方向のピクセル数がそれぞれ同数になるように設定するステップと、をそれぞれコンピュータに実行させることが好ましい。
この方法によれば、コンピュータが実行する印刷設定ステップにおいては、印刷用データまたは変換データを印刷するために必要な印刷用紙、印刷可能領域、印刷開始位置、印刷サイズおよび印刷解像度をそれぞれ設定することができる。そして、変換ステップにおいては、印刷データとして設定されている印刷用紙、印刷可能領域、印刷開始位置、印刷サイズおよび印刷解像度を変換データに変換する処理が実行される。これらのステップにより、プリンタが対応していない印刷データを当該プリンタが対応する変換データへと変換し、他のプリンタに置き換えても、印刷データの内容を目的の印刷結果となるように印刷することが可能になる。
以下、本発明を具体化した実施形態について説明する。実施形態では、プリンタとホストコンピュータとが互いに接続されている構成であって、ホストコンピュータは、プリンタを制御するプリンタドライバを有している。
(実施形態)
(実施形態)
図1は、プリンタとホストコンピュータの構成を示すブロック図である。(以下、アプリケーション3はプリンタ1とは異なる仕様のプリンタに合わせて作成されたものとする。すなわちプリンタ1は、当初のプリンタから置き換えられたものとする。)プリンタ1と接続されているホストコンピュータ2は、プリンタ1で印刷するための印刷データを作成するアプリケーション3と、アプリケーション3などのプログラムに基づきシステム全体を制御するOS(Operating System)4と、印刷データをプリンタ1で印刷可能な変換データとして、印刷設定をするプリンタドライバ5と、を有する。そして、プリンタドライバ5から送られる変換データを、一時的に記憶してプリンタ1の印刷の進捗に合わせて順次送り出すスプーラ6と、変換データをプリンタ1へ送信するなどの、情報の送受信をするための通信インタフェース7と、を有している。
プリンタ1は、プリンタ1を制御する制御部10と、印刷用紙へ変換データを印刷する印刷機構部16と、を備えている。制御部10は、ホストコンピュータ2の通信インタフェース7と情報の送受信をするための入出力インタフェース11と、ホストコンピュータ2から送られてきた変換データを一旦記憶しておくRAM(Random Access Memory)12と、プリンタ1を制御するためのファームウエアや文字フォントデータなどを記憶しているROM(Read Only Memory)13と、ファームウエアに従ってプリンタ1を制御するCPU(Central Processing Unit)14と、印刷機構部16を制御する印刷制御部15と、を有している。
これら入出力インタフェース11、RAM12、ROM13、CPU14および印刷制御部15は、互いにバス17を介して接続されている。このような構成において、アプリケーション3による印刷データの作成から、プリンタ1による印刷までを詳細に説明する。この場合、プリンタ1に設定されている印刷設定(第一の印刷モード)に対して、アプリケーション3が対応していなくても、印刷データをプリンタ1で印刷することが可能であり、以下では、このような関係にあるプリンタ1とアプリケーション3とを例にして説明する。
最初に、アプリケーション3によって作成された印刷データは、OS4へ引き渡される。以下、プリンタ1に記憶されている文字フォントデータでなく、アウトラインフォントやグラフィックデータを用いた場合について説明する。このときの印刷データは、ベクトルデータから成るグラフィックデータ(アウトラインフォントを含む)であって解像度などに依存しないデータである。印刷データを受け取ったOSは、プリンタドライバ5の印刷設定(第二の印刷モード)に基づいて、印刷データをグラフィックデータにラスタライズ(プリンタの解像度に応じたビットマップデータへの変換)する。これにより、印刷されたイメージに近いビットマップデータが生成される。ビットマップデータは、解像度に依存するデータであり、第二の印刷モードに合致した印刷解像度で作成されている。
しかし、プリンタドライバ5で設定されている第二の印刷モードは、アプリケーション3が対応しているものであり、プリンタ1に設定されている第一の印刷モードには対応していないため、OS4によるラスタライズが正しく行われない。そこで、プリンタドライバ5は、第一の印刷モードに代えて、アプリケーション3が対応する第二の印刷モードをOS4へ送り、ラスタライズが正しく行えるようにする。つまり、プリンタドライバ5はOS4に対し、第一の印刷モードに設定されているプリンタ1の設定を代えて、第二の印刷モードに設定されている他のプリンタへ一旦エミュレーションして認識させる。他のプリンタは、OS4から見て疑似化されていることから、エミュレーションプリンタと称される。
そして、プリンタドライバ5は、OS4から受け取ったグラフィックデータ化された印刷データを、実際のプリンタ1が理解して印刷可能とするために、第一の印刷モードで作成された変換データへと変換する。変換データは、スプーラ6へ送られ、スプーラ6の管理下でホストコンピュータ2のハードディスクなどの記憶部に、一時的に記憶される。アプリケーション3側は、プリンタ1の状態に係わらずスプーラ6に対し送信できるため、印刷データの送信を素早く終了することができ、並行してエミュレーションプリンタへのデータ作成作業と変換データ作成作業が滞ることなく処理できる。この後、スプーラ6は、通信インタフェース7を介して、順次変換データをプリンタ1へ送信する。このように、プリンタ1による印刷が全て完了しなくても、アプリケーション3は、プリンタ1への送信作業(実際にはスプーラ6への送信作業)を素早く終了させて開放され、次の作業を進めることが可能である。
プリンタ1は、入出力インタフェース11で変換データを受信すると、RAM12へ変換データを一時記憶する。CPU14は、ROM13のファームウエアに基づいて、変換データを処理し、印刷制御部15へ印刷指示を出す。印刷指示により、印刷機構部16が印刷用紙へ印刷を開始する。
ここで、印刷設定としては、印刷用紙、印刷可能領域、印刷開始位置、印刷サイズ、印刷解像度の各設定が挙げられる。これらをエミュレーションプリンタに設定してデータを生成した後、プリンタ1に合わせたデータに変換することにより、アプリケーション3の印刷データが、アプリケーション3が対応していないプリンタ1によって印刷可能となる。
次に、これらの設定および変換の機能を実行するプリンタドライバについて説明する。図2は、プリンタドライバが実行する機能を示すブロック図である。各機能は、ホストコンピュータ2のCPUやOS4を用い、プリンタドライバ5を機能させることにより実行可能である。このプリンタドライバ5は、OS4を介して、アプリケーション3が作成した印刷データ(アウトラインフォントを含むグラフィックデータ)を取得する印刷データ取得部20と、エミュレーションプリンタおよびプリンタ1への印刷設定および印刷データの変換データへの変換をするプリンタ設定部21と、プリンタ1へ印刷指示をする印刷指示部22としての機能を有する。
プリンタ設定部21は、印刷用紙を設定する用紙設定部23と、印刷用紙上に印刷領域や余白などを設定して印刷可能な領域を設定する領域設定部24と、印刷用紙に対し印刷を開始する位置(座標)を設定する始点設定部25と、縮小または拡大の実行を含んで実際に印刷される大きさを設定する印刷サイズ設定部26と、印刷解像度を設定する解像度設定部27と、を有する。
印刷解像度については、印刷データを縮小または拡大して変換データへ変換する際に、印刷データと変換データとの同一方向のピクセル数が同数になるように印刷解像度の設定をしておかないと、一部のデータの消失、印刷の変形などが生じ、目的とする印刷が行われない場合がある。このようなことを防止するために、印刷解像度の設定を行う。プリンタ1が内蔵された文字フォントデータを使用せず、全てをグラフィックデータからラスタライズされたビットマップデータで印刷するタイプのプリンタなどの場合には、必須の設定である。詳細については、図4を参照して後述する。
次に、プリンタドライバ5のプリンタ設定部21が実行する各機能の詳細について、図3および図4を参照して説明する。まず、図3(a)は、プリンタドライバが実行する印刷用紙および印刷可能領域の設定を示す模式図である。模式図における左図は、プリンタ設定部21によるエミュレーションプリンタの設定を示している。エミュレーションプリンタとは、プリンタドライバ5がOS4およびアプリケーション3に対して、印刷データを印刷するプリンタであるかのように装って設定された疑似的なプリンタのことである。エミュレーションプリンタには、アプリケーション3が対応する第二の設定モードが設定されている。実際に印刷する際は、第一の設定モードに設定されているプリンタ1が、第一の設定モードに合わせて変換された変換データを印刷データとして印刷する。
ここでは、エミュレーションプリンタの設定として、印刷用紙サイズ30と、余白等を除いて印刷データの印刷が可能な領域である印刷可能領域32aと、を設定する。この印刷可能領域32aの内側へ、印刷データがエミュレーションプリンタで印刷される大きさである印刷サイズ34aで印刷されるような設定である。印刷開始位置33aは、印刷サイズ34aで印刷される印刷データの印刷を開始する位置を示す。
また、模式図における右図は、実際に印刷するプリンタ1の設定を示している。プリンタ1には、第一の印刷モードが設定されており、エミュレーションプリンタとは異なる実印刷用紙サイズ31と、実印刷可能領域32bとが設定されている。従って、エミュレーションプリンタ用の印刷データと同じ設定の印刷サイズ34aおよび印刷開始位置33aによる印刷では、実印刷可能領域32b内へ印刷サイズ34aのすべてが印刷できない場合がある。仮にすべてが実印刷可能領域32b内に印刷できても、実印刷可能領域32bの偏った方向に印刷されてしまうなど、バランスの良くない印刷結果となる。これらを回避するには、印刷データを第一の設定モードに合った変換データに変換し、印刷開始位置33aなどを新たに設定する必要がある。
次に、印刷データの印刷開始位置33aに相当する変換データの実印刷開始位置33bの設定について説明する。図3(b)は、プリンタドライバが実行する印刷開始位置の設定を示す模式図である。左図に示すエミュレーションプリンタの設定は、図3(a)と同様である。右図に示す実際に印刷するプリンタ1の設定では、実印刷可能領域32bがエミュレーションプリンタの印刷サイズ34aより大きいため、変換データの実印刷サイズ34bを印刷サイズ34aと同じ大きさに設定し、実印刷サイズ34bが実印刷可能領域32b内へバランス良く配置されるように実印刷開始位置33bを設定する。実印刷開始位置33bの設定により、変換データは、エミュレーションプリンタでの印刷データの印刷サイズ34aと同じ大きさで、実印刷可能領域32b内へ印刷される。
実印刷可能領域32bがエミュレーションプリンタの印刷サイズ34aより小さい場合、実印刷開始位置33bの設定を変えるだけでは、変換データのすべてを実印刷可能領域32bへ印刷できない。この場合の対応について、図3(c)を参照して説明する。図3(c)は、プリンタドライバが実行する印刷サイズの設定を示す模式図である。左図に示すエミュレーションプリンタの設定は、図3(a)および(b)と同様である。
右図に示す実際に印刷するプリンタ1の第一印刷モードでは、実印刷可能領域32bがエミュレーションプリンタの印刷サイズ34aより小さく設定されている。このような場合、実印刷可能領域32b内へ印刷データのすべてが印刷されるように、印刷データの印刷サイズ34aを縮小して変換データの実印刷サイズ34bとする。なお、当該右図では、実印刷開始位置33bをエミュレーションプリンタの印刷開始位置33aと同じに設定しているが、図3(b)で説明したように、任意の位置へ実印刷開始位置33bを変更することも可能である。
また、実印刷可能領域32bがエミュレーションプリンタの印刷サイズ34aより大きく設定されているような場合、印刷サイズ34aで印刷すれば変換データのすべてを印刷可能であるが、実印刷可能領域32bとのバランス等を考慮して、拡大した実印刷サイズ34bによる変換データの印刷も可能である。これにより、いかなる大きさの実印刷可能領域32bに対しても、変換データのすべてを見易く、且つ、バランス良く印刷することが可能である。
ここで、プリンタ1に送られる変換データがコマンドの形式でデータを生成するページ記述言語の場合は、印刷解像度を考慮することなく印刷データを縮小または拡大しても、変換データの印刷に支障を生じることはない。換言すると、ページ記述言語対応のプリンタ1は、自身で適切なラスタライズを行うからである。しかし、プリンタ1がページ記述言語対応していないプリンタ等であって、プリンタドライバ5を経由してグラフィックデータをラスタライズしてビットマップデータ化したデータを生成している場合は、印刷データと変換データとの同一方向のピクセル数を同数にするように印刷解像度を設定して、印刷に支障が生じないように変換する必要がある。このような場合の印刷解像度の設定について、次に説明する。
図4(d)は、プリンタドライバが実行する印刷解像度の設定方法を示す模式図である。左図に示すエミュレーションプリンタの設定は、図3(c)と同様であり、印刷解像度の説明のために、印刷データの印刷サイズ34aのXおよびY方向の寸法としてそれぞれ80mmを記してある。右図に示す実際に印刷するプリンタ1の設定では、実印刷可能領域32b内へ変換データを印刷するために、変換データの実印刷サイズ34bをXおよびY方向とも60mmに縮小してある。この場合、実印刷開始位置33bは、エミュレーションプリンタの印刷開始位置33aと同じであり、プリンタ1の実印刷解像度は、180dpi(dot per inch)である。
印刷データと変換データとの同一方向のピクセル数を同数にするということは、印刷データのX方向の長さ(Li)におけるピクセル数(Pi)と、変換データのX方向の長さ(Lh)におけるピクセル数(Ph)とが同数になるように、印刷データの印刷解像度(Ki)および変換データの実印刷解像度(Kh)を設定することである。この場合、それぞれのピクセル数は、Pi=Li/25.4×Ki、Ph=Lh/25.4×Khで表される。(1inchを25.4mmとする)
変換データの実印刷解像度(Kh)は、実際に印刷を実行するプリンタ1の180dpiであり、変換データのX方向の長さ(Lh)60mmにおけるピクセル数(Ph)は、Ph=Lh/25.4×Kh=60/25.4×180=425となる。プリンタ1の実印刷解像度180dpiを基準にして、印刷データのX方向の長さ(Li)80mmにおけるピクセル数(Pi)を425ピクセルに等しくなるように、エミュレーションプリンタの印刷解像度(Ki)を設定する。つまり、Ki=Lh/Li×180=60/80×180=135となり、印刷解像度(Ki)を135dpiに設定すれば、変換データの印刷に支障を生じることはない。同様にして、印刷データおよび変換データそれぞれのY方向の印刷解像度(Ki)を算出する。この場合、X方向と同じ135dpiとなる。
次に、以上説明した印刷設定を、具体的に設定する印刷設定画面について説明する。図5は、印刷設定画面を示す模式図である。印刷設定画面40における設定数字などは、図4の印刷解像度を説明した例示に準じている。印刷設定画面40は、プリンタドライバ5に制御され、第二の印刷モードを示すエミュレーションプリンタの印刷設定画面41と、第一の印刷モードを示す実際に印刷するプリンタの印刷設定画面42とを有する。
エミュレーションプリンタの印刷設定画面41は、設定する項目として、プリンタの指定43と、印刷用紙種類44と、印刷用紙サイズ30と、印刷可能領域32aと、印刷開始位置33aと、印刷サイズ34aと、印刷解像度46aとを有し、さらに、これら設定による印刷プレビューを表示する印刷データ表示部48を有する。また、実際に印刷するプリンタの印刷設定画面42は、実際に印刷するプリンタ1を示す表示「XX−YYYYZ」と、設定する項目として、実印刷用紙種類45と、実印刷用紙サイズ31と、実印刷可能領域32bと、実印刷開始位置33bと、実印刷サイズ34bと、実印刷解像度46bと、サイズ比率47とを有し、さらに、これら設定による印刷プレビューを表示する変換データ表示部49を有する。
プリンタの指定43は、アプリケーション3が対応するプリンタが表示される選択ボックスの中から、エミュレーションプリンタとなるプリンタを選択するためのものである。ここではエミュレーションプリンタとして、「PPPPP」が選択されており、プリンタドライバ5は、選択されたプリンタ「PPPPP」が実際に印刷するプリンタであるかのようにOS4に認識させる。さらに、「詳細印刷設定をエミュレーションする」項目にチェック50が入れられると、エミュレーションプリンタの印刷設定画面41で表示される詳細な印刷設定の項目に従って印刷データが設定可能である。チェック50が入れられなければ、アプリケーション3による印刷データの設定が適用される。
一方、実際に印刷するプリンタの印刷設定画面42において、プリンタ「XX−YYYYZ」は、ホストコンピュータ2と接続されて実際に印刷をするプリンタ1であり、指定されることなく表示される。そして、「エミュレーションプリンタの印刷設定を無視する」項目にチェック51が入れられると、エミュレーションプリンタの印刷設定画面41の印刷設定を無視して、実際に印刷するプリンタの印刷設定画面42による印刷設定の項目に従って変換データが設定される。チェック51が入れられなければ、エミュレーションプリンタの印刷設定が適用される。以降、これらチェック50、51は入れられているものとして説明する。
印刷用紙種類44および実印刷用紙種類45は、共に選択ボックスの中から該当する種類の用紙を選択するためのものであり、用紙設定部23によって制御される。ここでは、ユーザー定義サイズが選択されているが、エミュレーションプリンタまたはプリンタ1が対応するA4、A3、はがき、ロール紙などの選択も可能である。印刷用紙種類44において、アプリケーション3が設定している印刷用紙が選択されると、印刷用紙サイズ30および印刷可能領域32aには、アプリケーション3による設定値が表示される。アプリケーション3が設定している「ユーザー定義サイズ」としての印刷用紙サイズ30は、横(X方向)100mm、縦(Y方向)100mmのサイズであり、印刷データの印刷可能領域32aは、横90mm、縦90mmである。アプリケーション3が設定している「ユーザー定義サイズ」以外の印刷用紙を選択して、改めて印刷用紙を設定することも可能である。
実印刷用紙種類45においては、プリンタ1に装着されている印刷用紙として「ユーザー定義サイズ」が選択され、実印刷用紙サイズ31が、横(X方向)80mm、縦(Y方向)100mm、変換データの実印刷可能領域32bが横70mm、縦90mmのサイズである。「ユーザー定義サイズ」は任意の実印刷用紙種類45を設定し記憶することが可能であり、再度読み出して簡単に設定することができる。印刷可能領域32aおよび実印刷可能領域32bは、それぞれ印刷用紙サイズ30および実印刷用紙サイズ31から横、縦5mmずつを余白とした設定であり、領域設定部24によって制御される。
次に、エミュレーションプリンタにおいて、印刷可能領域32a内へ印刷データを印刷するための印刷開始位置33aと、印刷サイズ34aとを設定する。印刷データの印刷サイズ34aは、横80mm、縦80mmに設定し、印刷開始位置33aは、印刷可能領域32a側へ印刷用紙の左端部から横方向へ10mm、上端部から縦方向へ10mm入った位置である。これにより、印刷データは、印刷可能領域32a内へバランス良く配置されたことが、印刷データ表示部48の表示で確認可能である。
そして、プリンタ1において、実印刷可能領域32b内へ変換データを印刷するため、変換データの実印刷サイズ34bを、横60mm、縦60mmに設定し、実印刷開始位置33bは、印刷データと同様に横方向へ10mm、縦方向へ10mmの位置に設定する。つまり、変換データの実印刷サイズ34bは、実印刷可能領域32b内へ変換データを印刷するため、印刷データの印刷サイズ34aの75%に縮小されている。この値は、サイズ比率47へ表示される。これにより、変換データは、実印刷可能領域32b内へバランス良く配置されたことが、変換データ表示部49の表示で確認可能である。印刷開始位置33aおよび実印刷開始位置33bは、始点設定部25によって制御され、印刷サイズ34aおよび実印刷サイズ34bは、印刷サイズ設定部26によって制御される。
最後に、印刷解像度46aおよび実印刷解像度46bは、プリンタ1がラスタプリンタ等の場合に、印刷データと変換データとにおける同一方向のピクセル数が同数になるように設定する必要がある。この場合、実印刷解像度46bは、実際に印刷するプリンタ1の解像度である180dpiに設定される。プリンタ1の解像度180dpiの設定を受けて、図4を参照して説明したように印刷データの印刷解像度46aを算出し、算出結果の135dpiを印刷解像度46aとして設定する。印刷解像度46aは、オプションボタンの「指定」が選択されていれば、算出結果の値の入力またはラスタプリンタ等ではない場合における任意値の入力が可能である。また、「自動調整」が選択されていれば、プリンタ1がラスタプリンタ等であることを前提にして、解像度設定部27によって自動的に印刷解像度46aが算出されて設定される。印刷設定がすべて終了し、コマンドボタン52の「OK」がクリックされると、プリンタドライバ5は、印刷実行をプリンタ1へ指示するための表示へ切り替わる。
次に、プリンタドライバ5によるプリンタの制御方法を、フローチャートにまとめて簡単に説明する。図6は、プリンタドライバによるプリンタの制御方法を示すフローチャートである。フローチャートは、プリンタドライバ5がホストコンピュータ2内で、図2に示す各機能を実行させることによって成り立っている。
まず、ステップS1において、アプリケーション3からエミュレーションプリンタ用の印刷データを、印刷データ取得部20が取得する。取得後、ステップS2へ進む。
ステップS2において、エミュレーションプリンタの印刷設定を、プリンタ設定部21が行う。プリンタ設定部21は、用紙設定部23、領域設定部24、始点設定部25、印刷サイズ設定部26、解像度設定部27の機能を有し、図5に示すエミュレーションプリンタの印刷設定画面41の各設定項目について、それぞれ入力された情報に基づいて設定する。設定後、ステップS3へ進む。
ステップS3において、実際に印刷するプリンタ1の印刷設定を、プリンタ設定部21が行う。エミュレーションプリンタの印刷設定と同様に、実際に印刷するプリンタの印刷設定画面42の各設定項目について、それぞれ入力された情報に基づいて設定する。設定後、ステップS4へ進む。
ステップS4において、アプリケーション3が作成した印刷データを、実際に印刷するプリンタ1に対応した変換データへ変換する。変換は、プリンタ設定部21が行い、具体的には、図5の印刷設定画面40に設定表示されているエミュレーションプリンタの印刷設定画面41の各設定を、実際に印刷するプリンタ1の印刷設定画面42の各設定へ変換する。この変換により、プリンタ1に対応していない第二の印刷設定である印刷データが、プリンタ1によって印刷可能となる。変換後、ステップS5へ進む。
ステップS5において、実際に印刷するプリンタ1へ印刷実行を指示する。指示は、印刷指示部22が行う。詳細に述べると、変換後に印刷指示する表示に切り替わり、変換内容での印刷の確認がなされた後、印刷指示部22がプリンタ1へ印刷の指示を行う。
以上で、フローが終了する。なお、ステップS2は、第二の印刷モードを設定する印刷設定ステップに該当し、ステップS3は、第一の印刷モードを設定する印刷設定ステップ、ステップS4は、変換データを作成するステップ、ステップS5は、プリンタ1に印刷指示をするステップにそれぞれ該当する。
以下、本発明を具体的に実施した一例である実施形態の効果をまとめて記載する。
(1)プリンタドライバ5による変換ステップを実行することにより、プリンタ1が対応していない印刷データが、プリンタ1で印刷可能な変換データへ変換され、プリンタ1で印刷することが可能である。これにより、プリンタ1に対応していないアプリケーション3が作成した印刷データであっても、プリンタ1で印刷でき、アプリケーション3をプリンタ1に対応するように変更する必要がない。
(2)印刷開始位置を設定するステップにより、変換データを自在に配置することが可能であり、印刷データの印刷可能領域32aとは異なる大きさの変換データの実印刷可能領域32b内へ、変換データをバランス良く印刷可能である。
(3)印刷サイズを設定するステップにより、変換データを縮小または拡大して印刷することが可能である。これにより、いかなる印刷サイズの印刷データであっても変換データへ縮小または拡大して変換することによって、実印刷可能領域32b内へ印刷可能である。
(4)印刷解像度を設定するステップにより、印刷データと変換データとの同一方向のピクセル数が同数になるように印刷データの印刷解像度を設定することが可能であり、プリンタ1がラスタプリンタ等の場合においても、一部のデータが消失したり印刷が変形したりすることを回避可能である。プリンタドライバ5は、このような考慮が不要なページ記述言語を用いるプリンタだけでなく、プリンタドライバによりラスタライズを行う通常のプリンタにも対応可能である。
また、本発明は上記の実施形態に限定されるものではなく、次のような変形例が挙げられる。
(変形例1)プリンタドライバ5のプリンタ設定部21は、機能別にエミュレーションプリンタ設定部と、プリンタ1の設定部と、変換設定部とに、さらに分けられた印刷設定部であっても良い。印刷設定画面40の各設定との関連がより分かりやすいプリンタドライバ5となる。
(変形例2)変換データの実印刷サイズ34bの設定における縮小または拡大は、縦および横の縮小または拡大の設定比率が別々の設定であっても良い。変換データの実印刷可能領域32bへの印刷が、実印刷可能領域32bの大きさに則して、よりバランス良く配置可能である。
(変形例3)印刷設定画面40でのエミュレーションプリンタの印刷設定画面41の各設定は、アプリケーション3の設定に準じて表示され、実際に印刷するプリンタ1の印刷設定画面42の各設定は、実印刷用紙サイズ31が入力設定されれば、他の設定をプリンタ設定部21が自動的に設定する方法であっても良い。変換データの作成がより簡便になる。
1…プリンタ、2…ホストコンピュータ、3…アプリケーション、5…プリンタドライバ、7…通信インタフェース、10…制御部、11…入出力インタフェース、12…RAM、13…ROM、14…CPU、15…印刷制御部、20…印刷データ取得部、21…プリンタ設定部、22…印刷指示部、23…用紙設定部、24…領域設定部、25…始点設定部、26…印刷サイズ設定部、27…解像度設定部、30、31…印刷用紙サイズ、32a…印刷可能領域、32b…実印刷可能領域、33a…印刷開始位置、33b…実印刷開始位置、34a…印刷サイズ、34b…実印刷サイズ、40…印刷設定画面、41…エミュレーションプリンタの印刷設定画面、42…実際に印刷するプリンタの印刷設定画面、43…プリンタの指定、44、45…印刷用紙種類、46a…印刷解像度、46b…実印刷解像度、47…サイズ比率、48…印刷データ表示部、49…変換データ表示部、50、51…チェック、52…選択ボタン。
Claims (7)
- プリンタに対して前記プリンタが対応可能な第一の印刷モードを設定し、前記第一の印刷モードに対応していないアプリケーションに対して前記アプリケーションが対応可能な第二の印刷モードを設定する印刷設定ステップと、
前記アプリケーションが作成し前記第二の印刷モードに基づいている印刷データを、前記第一の印刷モードが設定されている前記プリンタによって印刷可能な変換データへ変換する変換ステップと、
前記プリンタに前記変換データを印刷させる印刷ステップと、
を有することを特徴とするプリンタの制御方法。 - 請求項1に記載のプリンタの制御方法において、
前記印刷設定ステップおよび前記変換ステップは、
前記印刷データまたは前記変換データを印刷するための印刷用紙を設定するステップと、
前記印刷用紙の印刷可能領域を設定するステップと、
前記印刷データまたは前記変換データの印刷開始位置を設定するステップと、
前記印刷データまたは前記変換データが印刷される大きさである印刷サイズを設定するステップと、
前記印刷データまたは前記変換データの印刷解像度を設定するステップと、の少なくともいずれかのステップを有することを特徴とするプリンタの制御方法。 - 請求項2に記載のプリンタの制御方法において、
前記印刷開始位置を設定するステップは、少なくとも前記変換データの印刷開始位置を当該変換データの印刷可能領域内の任意位置へ設定することを特徴とするプリンタの制御方法。 - 請求項3に記載のプリンタの制御方法において、
前記印刷サイズを設定するステップは、前記印刷開始位置を設定するステップにより任意位置へ設定された前記変換データの印刷サイズが当該変換データの印刷可能領域の大きさと異なる場合に、当該変換データの前記印刷サイズを縮小または拡大することを特徴とするプリンタの制御方法。 - 請求項2に記載のプリンタの制御方法において、
前記印刷解像度を設定するステップは、前記印刷サイズを設定するステップにより前記印刷データまたは前記変換データの印刷サイズを設定するとき、前記印刷データと前記変換データとにおける同一方向のピクセル数がそれぞれ同数になるように設定することを特徴とするプリンタの制御方法。 - プリンタに対して前記プリンタが対応可能な第一の印刷モードを設定し、前記第一の印刷モードに対応していないアプリケーションに対して前記アプリケーションが対応可能な第二の印刷モードを設定する印刷設定ステップと、
前記アプリケーションが作成し前記第二の印刷モードに基づいている印刷データを、前記第一の印刷モードが設定されている前記プリンタによって印刷可能な変換データへ変換する変換ステップと、
前記プリンタに前記変換データを印刷させる印刷ステップと、をコンピュータに実行させることを特徴とするプログラム。 - 請求項6に記載のプログラムにおいて、
前記印刷設定ステップおよび前記変換ステップは、
前記印刷データまたは前記変換データを印刷するための印刷用紙を用紙設定部が設定するステップと、
前記印刷用紙の印刷可能領域を領域設定部が設定するステップと、
前記印刷データまたは前記変換データの印刷開始位置を始点設定部が前記印刷可能領域内の任意の位置へ設定するステップと、
前記印刷データまたは前記変換データが印刷される大きさである印刷サイズを印刷サイズ設定部が縮小または拡大して設定するステップと、
前記印刷データと前記変換データとの印刷解像度を解像度設定部が同一方向のピクセル数がそれぞれ同数になるように設定するステップと、の少なくともいずれかのステップをコンピュータに実行させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005203916A JP2007025845A (ja) | 2005-07-13 | 2005-07-13 | プリンタの制御方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005203916A JP2007025845A (ja) | 2005-07-13 | 2005-07-13 | プリンタの制御方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007025845A true JP2007025845A (ja) | 2007-02-01 |
Family
ID=37786548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005203916A Withdrawn JP2007025845A (ja) | 2005-07-13 | 2005-07-13 | プリンタの制御方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007025845A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010140224A (ja) * | 2008-12-11 | 2010-06-24 | Oki Data Corp | プリンタ制御装置およびプリンタ制御方法、ならびにプリンタドライバ |
JP2012048415A (ja) * | 2010-08-25 | 2012-03-08 | Brother Ind Ltd | 印字管理装置及び印字システム |
JP4968417B1 (ja) * | 2012-01-26 | 2012-07-04 | 富士ゼロックス株式会社 | 印刷データ変換装置及びプログラム |
JP2016081437A (ja) * | 2014-10-21 | 2016-05-16 | 京セラドキュメントソリューションズ株式会社 | プリンタードライバー |
-
2005
- 2005-07-13 JP JP2005203916A patent/JP2007025845A/ja not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010140224A (ja) * | 2008-12-11 | 2010-06-24 | Oki Data Corp | プリンタ制御装置およびプリンタ制御方法、ならびにプリンタドライバ |
JP2012048415A (ja) * | 2010-08-25 | 2012-03-08 | Brother Ind Ltd | 印字管理装置及び印字システム |
JP4968417B1 (ja) * | 2012-01-26 | 2012-07-04 | 富士ゼロックス株式会社 | 印刷データ変換装置及びプログラム |
JP2016081437A (ja) * | 2014-10-21 | 2016-05-16 | 京セラドキュメントソリューションズ株式会社 | プリンタードライバー |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20040061897A1 (en) | Printing control method and printing control apparatus | |
US8274719B2 (en) | Printing system, print preview method, and preview method using a printer driver | |
JPH08286860A (ja) | 出力制御方法及びその装置とそのコンピュータプログラム製品 | |
JP4903388B2 (ja) | プリンタドライバ、印刷制御装置、印刷システムおよび印刷制御方法 | |
JP4250470B2 (ja) | 情報処理装置及び情報処理方法及び印刷制御プログラム | |
JP2007025845A (ja) | プリンタの制御方法およびプログラム | |
US20050094163A1 (en) | Printer driver and method of forming user interface | |
JP4709317B2 (ja) | 情報処理装置及び情報処理方法及び印刷制御プログラム | |
US20190344585A1 (en) | Information Processing Apparatus, Method of Controlling the Same and Non-Transitory Computer-Readable Medium Storing Instructions Therefor | |
JP2000225756A (ja) | フォントダウンロード装置 | |
JP6330790B2 (ja) | 印刷制御システム、印刷制御装置およびプログラム | |
US7310166B2 (en) | Information processing apparatus and method, and print control program | |
JP2009269179A (ja) | 印刷装置、プログラム及び記録媒体 | |
JP2010211439A (ja) | 文字出力装置およびプログラム | |
KR100633100B1 (ko) | 인쇄제어장치 및 인쇄제어방법 | |
JP2006347115A (ja) | 印刷装置 | |
JP3833106B2 (ja) | 情報処理装置、情報処理方法、プログラムおよび記憶媒体 | |
KR100571788B1 (ko) | 문서의 지정영역을 확대 출력하는 방법 | |
US20220317943A1 (en) | Control method and information processing apparatus | |
JP2005275671A (ja) | 印刷制御装置、印刷制御方法および印刷制御プログラムを記録した媒体 | |
JP4552695B2 (ja) | ドライバプログラム及び印刷制御方法 | |
JP2005242828A (ja) | 情報処理システム、その制御方法、画像形成装置、及び制御プログラム | |
JP2010079793A (ja) | 印字制御装置、印字制御プログラムおよび印字制御方法 | |
JP2006093771A (ja) | 画像処理装置、画像出力装置、画像処理方法、画像出力方法、画像処理プログラムおよび画像出力プログラム | |
JP2003177908A (ja) | 情報処理装置及びその表示方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20070404 |
|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20081007 |