(57)【特許請求の範囲】
【請求項１】
印刷データを拡大又は縮小して出力する機能を備える出力装置において、
前記印刷データのうちのマージン部分を除いた画像部分のみの拡大又は縮小の実施又は不実施を設定する設定手段と、
前記設定手段によりマージン部分を除いた画像部分のみの拡大又は縮小の実施が設定されている場合に、前記印刷データを拡大又は縮小するとともに、拡大又は縮小後の印刷データの画像部分のみの出力開始位置を、その印刷データの拡大前又は縮小前の画像部分のみの印刷開始位置と同位置に決定する制御手段と、
を設けたことを特徴とする出力装置。
【請求項２】
請求項１記載の出力装置において、
前記制御手段は、前記設定手段により印刷データのマージン部分を除いた画像部分のみの拡大又は縮小が設定されている場合には、マージン部分の余白量を変化させないことを特徴とする出力装置。
【請求項３】
請求項１又は２記載の出力装置において、
マージン部分を印刷可能領域の外側としたことを特徴とする出力装置。
【請求項４】
印刷データを拡大又は縮小して出力する機能を備える出力装置において、
前記印刷データの印刷開始位置の変更の実施又は不実施を設定する変更設定手段と、
前記印刷データの拡大又は縮小倍率を設定する倍率を設定する設定手段と、
前記変更設定手段により、印刷開始位置の変更の不実施が設定されている場合には、前記印刷データのうちのマージン部分を除いた画像部分のみの拡大又は縮小の設定が許容され、前記印刷データを設定された倍率で拡大又は縮小するとともに、画像部分のみの拡大又は縮小前の印刷開始位置を、そのまま拡大又は縮小後の印刷開始位置に決定する制御手段と、
を設けたことを特徴とする出力装置。
【請求項５】
請求項４記載の出力装置において、
前記拡大又は縮小を設定する設定手段により前記印刷データの画像部分のみの拡大又は縮小の倍率が設定されている場合には、前記印刷データのマージン部分の余白量は拡大又は縮小の倍率に応じて変化させないことを特徴とする出力装置。
【請求項６】
請求項４記載の出力装置において、
前記制御手段は、前記変更設定手段により印刷開始位置の変更の実施が設定されている場合には、前記印刷データのマージン部分と画像部分とを共に設定された倍率で拡大又は縮小した印刷データに基づいて、新たに画像データの印刷開始位置を決定することを特徴とする出力装置。
【請求項７】
印刷データを拡大又は縮小して出力する機能を備える出力装置において、
前記印刷データの印刷開始位置の変更の実施又は不実施を設定する変更設定手段を有し、
前記変更設定手段により印刷開始位置の変更の不実施が設定されている場合には、前記印刷データのマージン部分を除いた画像部分のみの拡大又は縮小が実施され、また、前記変更設定手段により印刷開始位置の変更の実施が設定されている場合には、前記印刷データのマージン部分と画像部分とが共に拡大又は縮小されることを特徴とする出力装置。
【請求項８】
ホストコンピュータから送信された印刷データを拡大又は縮小して出力する機能を備える出力装置において、
前記ホストコンピュータから受信した前記印刷データに印刷開始位置の変更不実施が設定され、かつ、マージン部分を除いた画像部分のみの拡大又は縮小が設定されていた場合には、受信した前記印刷データを拡大又は縮小するとともに、拡大又は縮小後の前記印刷データの画像部分のみの印刷開始位置を、印刷データの拡大前又は縮小前の画像部分のみの印刷開始位置と一致させる制御を行う制御手段を設けたことを特徴とする出力装置。
【請求項９】
請求項８記載の出力装置において、
前記制御手段は、受信した前記印刷データのうち画像部分のみの拡大又は縮小の倍率が設定されている場合には、前記マージン部分の余白量を変化させないことを特徴とする出力装置。
【請求項１０】
請求項８記載の出力装置において、
前記制御手段は、さらに、受信した前記印刷データに印刷開始位置の変更実施が設定されている場合には、前記印刷データの拡大又は縮小の倍率に応じて画像部分の印刷開始位置を変更することを特徴とする出力装置。
【請求項１１】
印刷データのうちのマージン部分を除いた画像部分のみの拡大又は縮小の実施を設定し、
続いて、前記設定に基づいて前記印刷データを拡大又は縮小し、
続いて、拡大又は縮小後の印刷データの画像部分のみの出力開始位置を、その印刷データの拡大前又は縮小前の画像部分のみの印刷開始位置と同位置に決定し、
この決定に従って印刷データを出力することを特徴とする出力方法。
【請求項１２】
印刷データの印刷開始位置の変更の不実施を設定し、
この設定により、前記印刷データのうちのマージン部分を除いた画像部分のみの拡大又は縮小の設定を許容し、
この拡大又は縮小の設定の許容に基づいて前記印刷データを拡大又は縮小するとともに、拡大又は縮小後の印刷データの画像部分のみの出力開始位置を、その印刷データの拡大前又は縮小前の画像部分のみの印刷開始位置と同位置に決定し、
この決定に従って印刷データを出力することを特徴とする出力方法。
【請求項１３】
受信した印刷データに印刷開始位置の変更の不実施、及びマージン部分を除いた画像部分のみの拡大又は縮小が設定されていた場合には、受信した前記印刷データを拡大又は縮小するとともに、拡大又は縮小後の前記印刷データの画像部分のみの印刷開始位置を、その印刷データの拡大前又は縮小前の画像部分のみの印刷開始位置と同位置に決定し、
この決定に従って印刷データを出力することを特徴とする出力方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、印刷データを拡大・縮小して出力する機能を有する出力装置及び出力方法に関する。
【０００２】
【従来の技術】
従来、この種の出力装置としては、プリンタを接続したホストコンピュータ、プリンタ、ホストコンピュータとプリンタとの間に接続されたプリンタドライバがある。例えばプリンタでは、拡大又は縮小印刷の設定は、ホストコンピュータ上で動作するアプリケーション又は出力装置用のプリンタドライバのユーザインタフェースから、ホストコンピュータ側で倍率を指定することにより行われるようになっている。こうして設定された倍率は、ホストコンピュータ側でアプリケーションにより印刷データの倍率が変更されて印刷される場合と、プリンタドライバにより倍率を変更される場合がある。
【０００３】
上記アプリケーションにより拡大・縮小の倍率を設定され、さらに印刷データ自身もその設定により変更される場合は、ホストコンピュータのアプリケーションで拡大・縮小処理を行うので、プリンタドライバ及びプリンタは拡大・縮小処理を行わない。
【０００４】
しかし、アプリケーションが印刷データの拡大・縮小機能を有していない場合は、プリンタドライバによって倍率を設定することにより、プリンタドライバ又はプリンタにより印刷データの拡大・縮小処理を行う。
【０００５】
上記プリンタドライバにより倍率を変更された場合の拡大・縮小処理は、さらにプリンタドライバ内で行う場合と、プリンタドライバは拡大・縮小指定命令をプリンタへ出力しプリンタ側で実際の拡大・縮小処理を行う場合とに分けられる。
【０００６】
このような拡大・縮小処理は、ホストコンピュータのアプリケーション、プリンタドライバ、プリンタなどのいずれで行う場合にも、印刷データをマージン部分も含めて一律に拡大又は縮小するようになっていた。
【０００７】
【発明が解決しようとする課題】
しかし、印刷データを一律に拡大・縮小すると、図７及び図８に示すように画像部分（印刷部分）以外のマージン部分（１ページ分の印刷データのうちの上下左右の余白部分）についても拡大・縮小処理されてしまい印刷出力可能領域内（図中点線で示す領域）の画像部分の位置がずれてしまうという問題があった。
【０００８】
また、印刷データを拡大した場合、拡大後の画像部分の大きさが印刷出力可能領域内にあるにもかかわらず、拡大後の画像部分の位置がずれることにより、図７に示すように印刷出力可能領域をはみ出してしまうおそれもある。
【０００９】
また、プリンタの使用者が画像の拡大・縮小を設定する場合は、通常、印刷可能領域内の画像のみに注目し、マージン部分についてはあまり気にとめていない場合が多い傾向がある。このため、プリンタで印刷した後に画像部分の印刷位置がずれていることに気付いて、印刷位置の調整のための設定を行ってから印刷出力をやり直す場合が多く煩わしかった。
【００１０】
そこで、本発明は、印刷データを拡大・縮小する場合に、印刷データのうちのマージン部分を除く部分（画像部分）の出力開始位置を変えずにその部分のみを拡大・縮小することができ、これにより出力可能領域内で拡大できる範囲を広げることができ、さらに画像部分のみを拡大・縮小する場合のマージン部についての操作の煩わしさを軽減することができる印刷データの拡大縮小機能を有する出力装置及び出力方法を提供しようとするものである。
【００１１】
【課題を解決するための手段】
本発明は、印刷データを拡大又は縮小して出力する機能を備える出力装置において、印刷データのうちのマージン部分を除いた画像部分のみの拡大又は縮小を設定する設定手段と、この設定手段により画像部分のみの拡大又は縮小が設定されている場合に、印刷データを拡大又は縮小するとともに、拡大又は縮小後の印刷データの画像部分のみの出力開始位置を、その印刷データの拡大前又は縮小前の画像部分のみの印刷開始位置と同位置に決定する制御手段を設けた出力装置にある。
【００１２】
【発明の実施の形態】
以下、本発明をプリンタに適用した場合の実施の形態を図１ないし図６を参照して説明する。
図１は、本実施に係るプリンタの構成を示すブロック図で、１は制御部本体を構成するＣＰＵ（中央処理装置）、２はこのＣＰＵ１が各部を制御するためのプログラムデータ等を格納したＲＯＭ（リード・オンリ・メモリ）、３は通信ケーブル、通信回線などにより接続したホストコンピュータ４からコマンドデータや印刷データを受信するインタフェース、５はホストコンピュータ４から受信したデータを一時的に記憶する受信バッファ、上記ＣＰＵ１により受信バッファに記憶されたデータが解析されイメージ展開されたビデオデータ（イメージデータ）を記憶するメモリエリア、画像部分のみスケーリングフラグ５ａ等を設けたＲＡＭ（ランダム・アクセス・メモリ）、６は使用者が各種操作を行うキーや表示器を設けた操作パネル、７はハードディスク装置（ＨＤＤ）、８はＲＡＭ５に記憶されたビデオデータをビデオインタフェース９を介して印字ヘッドなどの印字機構を備えるプリンタエンジン１１へ送信するＡＳＩＣ（特定用途向けＩＣ）で構成した専用コントローラである。
【００１３】
上記ＣＰＵ１とＲＯＭ２、インタフェース３、ＲＡＭ５、操作パネル６、ＨＤＤ７、専用コントローラ８、ビデオインタフェース９とは制御バス、システムバス、データバス等のバスライン１２により電気的に接続している。
【００１４】
ここで、上記プリンタが受信するデータの構成を図２を参照しながら説明する。
上記プリンタで印刷を行うときに、ホストコンピュータ４からのデータは、プリンタ初期化コマンド、印刷条件設定コマンド、印刷開始位置移動コマンドからなるコマンドデータに続く、印刷データにより構成される。
【００１５】
上記印刷データは、１ページにおける上下の余白部分（非印刷部分）であるマージン部分及びこのマージン部分を除いた画像、文字等を印刷する画像部分（印刷部分）からなる。
【００１６】
上記プリンタ初期化コマンドは、受信バッファの初期化などプリンタの初期化を行わせるためのコマンドである。印刷条件設定コマンドは、例えばプリンタ解像度、印刷枚数、用紙給紙トレイの選択、用紙種類、拡大縮小（スケール）などの印刷条件を設定させるためのコマンドである。従って、拡大縮小コマンドはこの印刷条件設定コマンドに含まれる。
【００１７】
また、印刷開始位置移動コマンドは、印刷データの画像部分の印字開始位置を垂直方向に移動させるための垂直方向移動コマンド、印刷データの画像部分の印字開始位置を水平方向に移動させるための水平方向移動コマンドからなる。但し、後述する「印刷開始位置は変更しない」にチェックがあった場合は印刷データの画像部分のみを拡大縮小させるための画像のみ拡大縮小コマンドを垂直方向移動コマンドの前に付加する。なお、印刷開始位置移動コマンドは、必ず印刷データの前に付される。
【００１８】
図３は、ホストコンピュータ４にインストールされた本発明に係るプリンタ用のデバイスドライバのユーザインタフェース（プログラム）を立ち上げた場合に、ホストコンピュータ４に表示される画面で、プリンタ設定のタブを選択したときのものである。
【００１９】
このプリンタ設定において、レイアウトの「スケーリング」の部分には、印刷データの拡大縮小倍率を入力して設定する（図３では１２０％の拡大を入力した場合である）。また、レイアウトの「印刷開始位置は変更しない」の部分をチェックすると拡大縮小後の印刷開始位置を変更しない設定となり、チェックを外すと従来と同様に拡大縮小後の印刷開始位置も上記拡大縮小倍率に応じて変更する設定となる。前者は印刷データのうちの画像部分のみを拡大縮小させたい場合に有効であり、後者は用紙サイズを変えて同じような位置に印刷させる場合に有効である。
【００２０】
これらの設定に基づいて図２に示す各コマンドが作成され、印刷データの前に付されることになる。例えば、「印刷開始位置は変更しない」がチェックされていれば図２に示す印刷開始位置移動コマンドの垂直方向移動コマンドの前に画像のみ拡大縮小コマンドが付加され、「印刷開始位置は変更しない」がチェックされていなければ画像のみ拡大縮小コマンドは付加されない。
【００２１】
なお、ここでは拡大縮小倍率及び印刷開始位置を変更するか否かの設定をプリンタ用のデバイスドライバのユーザインタフェースによって行う場合について述べたが、必ずしもこれに限られず、ホストコンピュータのアプリケーション（プログラム）において設定するようにしてもよく、またプリンタの操作パネル６によって設定するようにしてもよい。
【００２２】
ここで、上記プリンタが印刷データを受信してから実際に印刷されるまでの動作を説明する。
印刷の処理動作に必要な情報と実際に印刷すべき情報は、ホストコンピュータ４によりプリンタが理解できるデータ（コマンドデータ、印刷データなど）に変更されてプリンタのインタフェース３から受信する。インタフェース３から受信したコマンドや印刷データは、ＲＡＭ５の受信バッファに一時的に蓄えられ、ＲＯＭ２のプログラムの一部により解析され、印刷データについてはビデオデータに展開されて、再びＲＡＭ５のメモリエリアに格納される。また、このときＲＡＭ５の代わりにＨＤＤ７が使用されこともある。
【００２３】
受信された命令や印刷データは、プリンタ内の初期設定に従って、予め決められたプログラムの処理方法に従って解析されるが、この初期設定はホストコンピュータ４からの命令やプリンタの操作パネル６からの操作により変更できるようになっている。ＲＡＭ５又はＨＤＤ７に格納された処理済の印刷データ（ビデオデータ）が印刷開始可能となると、印刷データ（ビデオデータ）は専用コントローラ８の制御によりビデオインタフェース９を介してプリンタエンジン１１に転送される。これによりプリンタエンジン１１では印刷データ（ビデオデータ）に基づいて用紙に印刷を行う。
【００２４】
上記ＣＰＵ１は、以上の処理を図４に示すような印刷制御に基づいて行うようになっている。
ＣＰＵ１は先ずＳＴ（ステップ）１にてホストコンピュータ４からデータの受信待ちとなる。ＳＴ１にてデータを受信したと判断した場合、データの解析結果からＳＴ２にて受信したデータがコマンドデータか否かを判断する。
【００２５】
ＳＴ２にて受信したデータがコマンドのデータであると判断した場合はＳＴ３にてそのコマンドが印刷条件設定コマンドの拡大縮小（スケール）コマンド又は印刷開始位置移動か否かを判断する。ＳＴ３にて受信したコマンドが拡大縮小（スケール）コマンドであると判断した場合はＳＴ４にて拡大縮小倍率をＲＡＭ５に記憶（設定）してＳＴ１の処理に戻る。
【００２６】
ＳＴ３にて受信したコマンドが拡大縮小コマンドでないと判断した場合はＳＴ５にて受信したコマンドが画像部分のみ拡大縮小コマンドか否かを判断する。ＳＴ５にて画像部分のみ拡大縮小コマンドであると判断した場合はＳＴ６にてＲＡＭ５の画像部分のみスケーリングフラグ５ａをセットして（設定手段）、ＳＴ１の処理に戻る。
【００２７】
ＳＴ５にて受信したコマンドが画像部分のみ拡大縮小コマンドでないと判断した場合はＳＴ７にて受信したコマンドが印刷位置移動コマンド、すなわち垂直方向移動コマンド又は水平方向移動コマンドか否かを判断する。ＳＴ７にて受信したコマンドが印刷位置移動コマンドでないと判断した場合はＳＴ８にて該当するコマンドの処理を行いＳＴ１の処理に戻る。
【００２８】
ＳＴ７にて受信したコマンドが印刷位置移動コマンドであると判断した場合はＳＴ９にて画像部分のみスケーリングフラグ５ａがセットされているかを判断する。ＳＴ９にて画像部分のみスケーリングフラグ５ａがセットされていると判断した場合はそのままＳＴ１１の処理に移り、画像部分のみスケーリングフラグ５ａがセットされてないと判断いた場合はＳＴ１０にてＲＡＭ５に記憶した拡大縮小倍率に応じた印刷開始位置の移動量を算出してＳＴ１１の処理に移る。
【００２９】
ＳＴ１１にて拡大・縮小後の印刷データの印刷開始位置を決定してＳＴ１の処理に戻る。すなわち、画像部分のみスケーリングフラグ５ａがセットされていない場合は、拡大縮小倍率に依存した印刷開始位置移動量に基づいて印刷開始位置を決定する。これにより、水平方向については左マージン部（左余白）の移動量、垂直方向については上マージン部（上余白）の改行量が、ＲＡＭ５に記憶した拡大縮小倍率に応じて変更される。
【００３０】
これに対して、画像部分のみスケーリングフラグ５ａがセットされている場合は、拡大縮小倍率に依存せずに印刷開始位置を決定する。拡大又は縮小前の印刷データのうちマージン部分を除いた部分（画像部分）の出力開始位置をそのまま拡大又は縮小後の印刷データの印刷開始位置に決定する（制御手段）。これにより、水平方向については左マージン部（左余白）の移動量、垂直方向については上マージン部（上余白）の改行量はともに変更されない。
【００３１】
上記ＳＴ２にて受信したデータがコマンドデータでないと判断した場合はＳＴ１２にて受信したデータが印刷データか否かを判断する。ＳＴ１２にて受信したデータが印刷データでないと判断した場合は印刷制御を終了し、ＳＴ１２にて受信したデータが印刷データであると判断した場合はＳＴ１３にて拡大・縮小倍率が設定済か否かを判断する。すなわち、拡大・縮小倍率がＲＡＭ５に記憶されているか否かを判断する。
【００３２】
ＳＴ１３にて拡大・縮小倍率が設定済でないと判断した場合はそのままＳＴ１５の処理に移り、拡大・縮小倍率が設定済であると判断した場合はＳＴ１４にてＲＡＭ５に記憶した拡大縮小率を読出してＳＴ１５の処理に移る。
【００３３】
そして、ＳＴ１５にて受信した印刷データの処理を行って（制御手段）、ＳＴ１の処理に移る。すなわち、拡大縮小倍率が設定されていない場合は印刷データをそのままビデオデータに展開して、専用コントローラ８の制御によりビデオインタフェース９を介してプリンタエンジン１１に転送する。これによりプリンタエンジン１１では上記印刷データ（ビデオデータ）に基づいて用紙に印刷を行う。
【００３４】
これに対して、拡大縮小倍率が設定されている場合はＳＴ１４にてＲＡＭ５から読込んだ拡大・縮小倍率に基づいて印刷データを拡大・縮小する。
【００３５】
ＳＴ１１で決定した印刷開始位置から画像部分が印刷されるようにビデオデータを展開する。すなわち、印刷データは垂直方向の改行量については拡大・縮小倍率に応じて拡大・縮小処理するが、左マージン部（左余白）を示す水平方向移動量については拡大縮小の倍率に依存せずに拡大・縮小処理する。そして、展開したビデオデータを専用コントローラ８の制御によりビデオインタフェース９を介してプリンタエンジン１１に転送する。これによりプリンタエンジン１１では上記印刷データ（ビデオデータ）に基づいて用紙に印刷を行う。
【００３６】
このような構成の本発明の実施の形態においては、拡大・縮小倍率が設定され、画像部分のみ拡大・縮小が設定された場合には、拡大・縮小コマンドの処理については印刷データのうちの画像部分は拡大・縮小倍率に基づいて拡大・縮小し、かつ印刷開始位置移動コマンドの処理については印刷データのうちのマージン部については拡大・縮小倍率に依存しないように印刷開始位置を決定して、ビデオデータに展開するようにしたので、図５・図６に示すように印刷データのうちの画像部分について拡大・縮小したものが、拡大・縮小前の印刷開始位置から印刷される。
【００３７】
これにより、印刷データを拡大・縮小する場合に、印刷データのうちのマージン部分を除く部分（画像部分）の印刷開始位置を変えずにその部分のみを拡大・縮小することことができる。従って、印刷開始位置が変らないので、見た目で画像部分のみが拡大・縮小されたイメージの印刷結果を得ることができる。
【００３８】
また、印刷開始位置が変らないので、プリンタの印刷出力可能領域内で拡大できる範囲を広げることができる。例えば、図５に示すものは図７と同様の拡大倍率であるにもかかわらず、印刷開始位置が移動していないので拡大後の画像部分は印字出力可能領域をはみ出さない。
さらに画像部分のみを拡大・縮小する場合のマージン部についての操作の煩わしさを軽減することができる。
【００３９】
なお、本実施の形態では、出力装置をプリンタとしプリンタ側で拡大・縮小処理を行うようにしているが、出力装置をホストコンピュータ４又はプリンタデバイスドライバ側とし、ホストコンピュータ４側又はプリンタデバイスドライバ側で拡大・縮小処理を行ってもよい。
【００４０】
なお、ホストコンピュータ４側やプリンタドライバ側で拡大処理をした場合には印刷データが増大するので、特にＬＡＮ（ローカルエリアネットワーク）により多数のコンピュータが１台のプリンタを共有することが一般的である近年のオフィス環境では、限られたネットワーク帯域の中で効率よく印刷を行うために印刷データの拡大処理はホストコンピュータ側やプリンタドライバ側では行わず、プリンタ側で行うことにより、通信時間の短縮を図ることができる。
【００４１】
【発明の効果】
以上詳述したように本発明によれば、印刷データを拡大・縮小する場合に、印刷データのうちのマージン部分を除く部分（画像部分）の印刷開始位置を変えずに画像部分のみを拡大・縮小することことができる。従って、出力可能領域内で拡大できる範囲を広げることができ、さらに画像部分のみを拡大・縮小する場合のマージン部についての操作の煩わしさを軽減することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るプリンタの構成を示すブロック図。
【図２】同実施の形態におけるプリンタが受信するデータの構成を示す図。
【図３】同実施の形態においてプリンタデバイスドライバのユーザインタフェースを立ち上げた場合に、ホストコンピュータ４に表示される画面を示す図。
【図４】図１に示すＣＰＵが行う印刷制御を示す流れ図。
【図５】同実施の形態に係るプリンタにおいて、印刷データの画像部分のみを拡大した場合の拡大前と拡大後の印刷結果を示す図。
【図６】同実施の形態に係るプリンタにおいて、印刷データの画像部分のみを縮小した場合の縮小前と縮小後の印刷結果を示す図。
【図７】従来のプリンタにおいて、印刷データを拡大した場合の拡大前と拡大後の印刷結果を示す図。
【図８】従来のプリンタにおいて、印刷データを縮小した場合の縮小前と縮小後の印刷結果を示す図。
【符号の説明】
１…ＣＰＵ
２…ＲＯＭ
３…インタフェース
４…ホストコンピュータ
５…ＲＡＭ
５ａ…画像部分のみスケーリングフラグ（Ｆ）
６…操作パネル
８…専用コントローラ
９…ビデオインタフェース
１１…プリンタエンジン
【図１】
0004057202.tif 000002
【図２】
0004057202.tif 000003
【図３】
0004057202.tif 000004
【図４】
0004057202.tif 000005
【図５】
0004057202.tif 000006
【図６】
0004057202.tif 000007
【図７】
0004057202.tif 000008
【図８】
0004057202.tif 000009