(57)【特許請求の範囲】
【請求項１】
記録媒体に記録する記録装置に接続可能な制御装置であって、
前記記録装置によって前記記録媒体に画像を記録させる場合、所定のアプリケーションの機能により、前記記録媒体における前記アプリケーションが管理するマージンを示す情報、及び、前記記録媒体に記録すべき画像の画像データを少なくとも含む画像情報を出力するアプリケーション実行部と、
プリンタードライバーの機能により、前記アプリケーション実行部から入力された前記画像情報に基づいて、前記記録媒体の辺から、前記アプリケーションが管理するマージンの値、離間した辺によって規定される領域であるアプリ指定領域に、前記画像データが示す画像を記録させる制御コマンドを生成し、前記記録装置に出力するプリンタードライバー実行部と、を備え、
前記プリンタードライバー実行部は、
前記アプリケーション実行部から入力された前記画像情報の前記画像データが示す画像のサイズが、前記アプリ指定領域より大きい場合、前記アプリケーションが管理するマージンと、前記プリンタードライバーが管理するマージンとの差に対応する分、前記記録媒体の辺を仮想的に移動し、仮想的に移動した辺から前記プリンタードライバーが管理するマージンの値、離間した辺によって規定される領域であって、前記アプリ指定領域から拡張された拡張後領域に、前記画像データが示す画像を記録させる制御コマンドを生成し、前記記録装置に出力することを特徴とする制御装置。
【請求項２】
前記拡張後領域は、前記記録媒体に画像を記録可能な最大の領域である記録可能領域と対応する領域であって、
前記記録可能領域は、前記プリンタードライバーが管理するマージンによって規定される領域であることを特徴とする請求項１に記載の制御装置。
【請求項３】
記録媒体に記録する記録装置に接続可能に構成された制御装置の制御方法であって、
前記記録装置によって前記記録媒体に画像を記録させる場合、所定のアプリケーションの機能により、前記記録媒体における前記アプリケーションが管理するマージンを示す情報、及び、前記記録媒体に記録すべき画像の画像データを少なくとも含む画像情報を出力し、
プリンタードライバーの機能により、前記画像情報に基づいて、前記記録媒体の辺から、前記アプリケーションが管理するマージンの値、離間した辺によって規定される領域であるアプリ指定領域に、前記画像データが示す画像を記録させる制御コマンドを生成し、前記記録装置に出力し、
前記画像データが示す画像のサイズが、前記アプリ指定領域より大きい場合、前記アプリケーションが管理するマージンと、前記プリンタードライバーが管理するマージンとの差に対応する分、前記記録媒体の辺を仮想的に移動し、仮想的に移動した辺から前記プリンタードライバーが管理するマージンの値、離間した辺によって規定される領域であって、前記アプリ指定領域から拡張された拡張後領域に、画像データが示す画像を記録させる制御コマンドを生成し、前記記録装置に出力することを特徴とする制御装置の制御方法。
【請求項４】
記録媒体に記録する記録装置に接続可能な制御装置を制御する制御部により実行されるプログラムであって、
前記制御部を、
前記記録装置によって前記記録媒体に画像を記録させる場合、所定のアプリケーションの機能により、前記記録媒体における前記アプリケーションが管理するマージンを示す情報、及び、前記記録媒体に記録すべき画像の画像データを少なくとも含む画像情報を出力するアプリケーション実行部と、
プリンタードライバーの機能により、前記アプリケーション実行部から入力された前記画像情報に基づいて、前記記録媒体の辺から、前記アプリケーションが管理するマージンの値、離間した辺によって規定される領域であるアプリ指定領域に、前記画像データが示す画像を記録させる制御コマンドを生成し、前記記録装置に出力するプリンタードライバー実行部として機能させ、
前記プリンタードライバー実行部に、
前記アプリケーション実行部から入力された前記画像情報の前記画像データが示す画像のサイズが、前記アプリ指定領域より大きい場合、前記アプリケーションが管理するマージンと、前記プリンタードライバーが管理するマージンとの差に対応する分、前記記録媒体の辺を仮想的に移動させ、仮想的に移動した辺から前記プリンタードライバーが管理するマージンの値、離間した辺によって規定される領域であって、前記アプリ指定領域から拡張された拡張後領域に、画像データが示す画像を記録させる制御コマンドを生成させ、前記記録装置に出力させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録媒体に記録する記録装置に接続可能な制御装置、当該制御装置の制御方法、及び、当該制御装置を制御するためのプログラムに関する。
【背景技術】
【０００２】
従来、制御装置（ホストコンピューター）の制御の下、記録媒体に画像を記録可能な最大の領域である記録可能領域（印字可能領域）内に、画像を記録する記録装置（プリンター）が知られている（例えば、特許文献１参照）。
一般に、制御装置が記録装置によって記録媒体に画像を記録させる場合、制御装置に予めインストールされたアプリケーションの機能により、記録媒体に記録すべき画像の情報が生成され、さらに、予めインストールされたプリンタードライバーの機能により、アプリケーションの機能により生成された画像の情報に基づいて、記録媒体に画像を記録させる制御コマンドが生成され、制御装置から記録装置に送信される。なお、上述した記録可能領域は、プリンタードライバーが管理する上下左右のマージンによって規定される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２６９３２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、プリンタードライバー側だけではなく、アプリケーション側でも上下左右のマージンが管理され、画像を記録する際は、アプリケーションの実行部が、上下左右のマージンを指定する場合がある。この場合、アプリケーションが指定する上下左右のマージンが、プリンタードライバーによって管理される上下左右のマージンと比して大きく、アプリケーションの実行部が指定する上下左右のマージンによって規定される領域に、画像が収まらず、画像の一部が記録されないとった事態が生じる可能性があった。
本発明は、上述した事情に鑑みてなされたものであり、アプリケーションによって管理される上下左右のマージンによって規定される領域に、記録すべき画像が収まらない場合であっても、画像の一部が記録されない事態が生じることを抑制することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明は、記録媒体に記録する記録装置に接続可能な制御装置であって、前記記録装置によって前記記録媒体に画像を記録させる場合、所定のアプリケーションの機能により、前記記録媒体における前記アプリケーションが管理するマージンを示す情報、及び、前記記録媒体に記録すべき画像の画像データを少なくとも含む画像情報を出力するアプリケーション実行部と、プリンタードライバーの機能により、前記アプリケーション実行部から入力された前記画像情報に基づいて、前記記録媒体の辺から、前記プリンタードライバーが管理するマージンの値、離間した辺によって規定される領域であるアプリ指定領域に、前記画像データが示す画像を記録させる制御コマンドを生成し、前記記録装置に出力するプリンタードライバー実行部と、を備え、前記プリンタードライバー実行部は、前記アプリケーション実行部から前記画像情報が入力された場合、前記画像データが示す画像のサイズが、前記アプリ指定領域より大きい場合、前記記録媒体の辺を仮想的に移動し、仮想的に移動した辺から前記プリンタードライバーが管理するマージンの値、離間した辺によって規定される領域であって、前記アプリ指定領域から拡張された拡張後領域に、前記画像データが示す画像を記録させる制御コマンドを生成し、前記記録装置に出力することを特徴とする。
この構成によれば、プリンタードライバー実行部は、記録装置に画像を記録させる場合において、アプリケーション実行部から画像情報が入力された場合、アプリケーションが管理する上下左右のマージンによって規定される領域であるアプリ指定領域に、記録しようとしている画像が収まるか否かを判別し、収まらない場合は、記録媒体の上下左右の辺の位置を仮想的に拡張し、仮想的に拡張した辺から上下左右のマージン分離間した辺によって規定される領域である拡張後領域に画像を記録させることを指示する。このため、アプリ指定領域に画像が収まりきれない場合であっても、このアプリ指定領域よりもサイズの大きい拡張後領域に画像が記録されることとなり、画像の一部が記録されないリスクを低減できる。特に、上記構成によれば、拡張後領域を算出する処理に際し、アプリケーションが指定する上下左右のマージン自体の値を変更せずに処理を行うため、異なる複数のアプリケーションのそれぞれについて、アプリケーションごとに上下左右のマージン自体の値を適切に変更して処理を行うことなく適切に拡張後領域を算出可能であり、汎用性が高い。
【０００６】
また、本発明は、前記プリンタードライバー実行部は、前記拡張後領域が、前記記録媒体に画像を記録可能な最大の領域である記録可能領域と対応する領域となるような態様で、前記記録媒体の辺を仮想的に移動することを特徴とする。
この構成によれば、拡張後領域が、記録可能領域と対応する領域となるため、より効果的に、画像の一部が記録されないリスクを低減できる。
【０００７】
また、本発明は、前記記録可能領域は、前記記録可能領域は、前記プリンタードライバーによって管理されるマージンによって規定される領域であり、前記プリンタードライバー実行部は、前記アプリケーションが管理するマージンと、前記プリンタードライバーが管理するマージンとの差に対応する分、前記記録媒体の辺を仮想的に移動することにより、前記拡張後領域が、前記記録可能領域と対応する領域となるようにすることを特徴とする。
この構成によれば、アプリケーション実行部が指定する上下左右の各マージンと、プリンタードライバーが管理する上下左右の各マージンとの差に対応する分、記録媒体の上下左右の辺を仮想的に拡張する、という画一的な処理によって、拡張後領域を、記録可能領域と対応する領域とすることができ、処理効率の向上を図ることができる。
【０００８】
また、上記目的を達成するために、本発明は、記録媒体に記録する記録装置に接続可能に構成された制御装置の制御方法であって、前記記録装置によって前記記録媒体に画像を記録させる場合、所定のアプリケーションの機能により、前記記録媒体における前記アプリケーションが管理するマージンを示す情報、及び、前記記録媒体に記録すべき画像の画像データを少なくとも含む画像情報を出力し、プリンタードライバーの機能により、前記アプリケーション実行部から入力された前記画像情報に基づいて、前記記録媒体の辺から、前記プリンタードライバーが管理するマージンの値、離間した辺によって規定される領域であるアプリ指定領域に、前記画像データが示す画像を記録させる制御コマンドを生成し、前記記録装置に出力し、前記画像データが示す画像のサイズが、前記アプリ指定領域より大きい場合、前記記録媒体の辺を仮想的に移動し、仮想的に移動した辺から前記プリンタードライバーが管理するマージンの値、離間した辺によって規定される領域であって、前記アプリ指定領域から拡張された拡張後領域に、画像データが示す画像を記録させる制御コマンドを生成し、前記記録装置に出力することを特徴とする。
この制御方法によれば、アプリ指定領域に画像が収まりきれない場合であっても、このアプリ指定領域よりもサイズの大きい拡張後領域に画像が記録されることとなり、画像の一部が記録されないリスクを低減できる。特に、上記構成によれば、拡張後領域を算出する処理に際し、アプリケーションが指定する上下左右のマージン自体の値を変更せずに処理を行うため、異なる複数のアプリケーションのそれぞれについて、アプリケーションごとに上下左右のマージン自体の値を適切に変更して処理を行うことなく適切に拡張後領域を算出可能であり、汎用性が高い。
【０００９】
また、上記目的を達成するために、本発明は、  記録媒体に記録する記録装置に接続可能な制御装置を制御する制御部により実行されるプログラムであって、前記制御部を、前記記録装置によって前記記録媒体に画像を記録させる場合、所定のアプリケーションの機能により、前記記録媒体における前記アプリケーションが管理するマージンを示す情報、及び、前記記録媒体に記録すべき画像の画像データを少なくとも含む画像情報を出力するアプリケーション実行部と、プリンタードライバーの機能により、前記アプリケーション実行部から入力された前記画像情報に基づいて、前記記録媒体の辺から、前記プリンタードライバーが管理するマージンの値、離間した辺によって規定される領域であるアプリ指定領域に、前記画像データが示す画像を記録させる制御コマンドを生成し、前記記録装置に出力するプリンタードライバー実行部と、として機能させ、前記プリンタードライバー実行部に、前記アプリケーション実行部から前記画像情報が入力された場合、前記画像データが示す画像のサイズが、前記アプリ指定領域より大きい場合、前記記録媒体の辺を仮想的に移動させ、仮想的に移動した辺から前記プリンタードライバーが管理するマージンの値、離間した辺によって規定される領域であって、前記アプリ指定領域から拡張された拡張後領域に、画像データが示す画像を記録させる制御コマンドを生成させ、前記記録装置に出力させることを特徴とする。
このプログラムによれば、アプリ指定領域に画像が収まりきれない場合であっても、このアプリ指定領域よりもサイズの大きい拡張後領域に画像が記録されることとなり、画像の一部が記録されないリスクを低減できる。特に、上記構成によれば、拡張後領域を算出する処理に際し、アプリケーションが指定する上下左右のマージン自体の値を変更せずに処理を行うため、異なる複数のアプリケーションのそれぞれについて、アプリケーションごとに上下左右のマージン自体の値を適切に変更して処理を行うことなく適切に拡張後領域を算出可能であり、汎用性が高い。
【発明の効果】
【００１０】
本発明によれば、アプリケーションによって管理される上下左右のマージンによって規定される領域に、記録すべき画像が収まらない場合であっても、画像の一部が記録されない事態が生じることを抑制できる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態に係る記録システムの機能的構成を示すブロック図である。
【図２】記録可能領域、及び、アプリ指定領域の説明に利用する図である。
【図３】ホストコンピューターの動作を示すフローチャートである。
【図４】拡張後領域の説明に利用する図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明の実施形態について説明する。
図１は、本実施形態に係る記録システム１の機能的構成を示すブロック図である。
記録システム１は、ホストコンピューター１０（制御装置）の制御の下、当該ホストコンピューター１０に接続されたプリンター１１（記録装置）により、記録媒体としての単票紙に画像を記録するシステムである。
図１に示すように、ホストコンピューター１０は、制御部１５と、表示部１６と、入力部１７と、インターフェイス部１８（Ｉ／Ｆ）と、記憶部１９と、を備えている。
制御部１５は、ＣＰＵや、ＲＯＭ、ＲＡＭ、その他の周辺回路等を備え、ホストコンピューター１０の各部を中枢的に制御する。制御部１５は、アプリケーション実行部２０と、プリンタードライバー実行部２１と、を備えているが、これらについては後述する。表示部１６は、液晶パネル等の表示パネルを備え、制御部１５の制御の下、表示パネルに各種情報を表示する。入力部１７は、各種入力デバイスに接続され、これら入力デバイスに対する操作を検出し、制御部１５に出力する。インターフェイス部１８（Ｉ／Ｆ）は、制御部１５の制御の下、プリンター１１との間で通信規格に準拠した通信を行う。記憶部１９は、各種データを書き換え可能に記憶する部位であり、ハードディスクや、ＥＥＰＲＯＭ等の記憶装置を備えている。記憶部１９には、プリンター１１制御用のプリンタードライバーが記憶されている。
【００１３】
一方、プリンター１１は、記録ヘッド２３を備え、この記録ヘッド２３によって単票紙に画像を記録する記録装置である。記録ヘッド２３の記録の形式は、サーマル式、インクジェット式、ドットインパクト式、レーザー式等、何であってもよい。
図１に示すように、プリンター１１は、プリンター側制御部３０と、プリンター側表示部３１と、プリンター側入力部３２と、プリントエンジン３３と、プリンター側記憶部３５と、インターフェイス部３６（Ｉ／Ｆ）と、を備えている。
プリンター側制御部３０は、上述した制御部１５と同様、ＣＰＵや、ＲＯＭ、ＲＡＭ、その他の周辺回路を備え、プリンター１１の各部を中枢的に制御する。プリンター側表示部３１は、プリンター１１の動作状態等の各種情報を表示する液晶パネル等の表示パネルや、ＬＥＤ等を備え、プリンター側制御部３０の制御の下、当該表示パネルに各種情報を表示し、また、ＬＥＤを所定の態様で点灯／消灯する。プリンター側入力部３２は、プリンター１１に設けられた各種操作スイッチに接続され、操作スイッチに対する操作を検出し操作信号としてプリンター側制御部３０に出力する。プリントエンジン３３は、上述した記録ヘッド２３のほか、記録ヘッド２３を走査方向に走査するためのキャリッジや、単票紙を搬送する搬送機構等を備えている。プリンター側制御部３０は、インストールされたファームウェアを読み出して実行することにより、ホストコンピューター１０から受信した制御コマンドに基づいて、各種センサーの検出値を監視しながら、記録ヘッド２３や、各種機構を制御して、単票紙に画像を記録する。インターフェイス部３６（Ｉ／Ｆ）は、プリンター側制御部３０の制御の下、ホストコンピューター１０との間で通信規格に準拠した通信を行う。プリンター側記憶部３５は、ＥＥＰＲＯＭ等の不揮発性メモリーを備え、各種データを書き換え可能に不揮発的に記憶する。プリンター側記憶部３５には、プリンター１１の動作を制御するためのファームウェアが記憶されている。
【００１４】
次に、アプリケーション実行部２０、及び、プリンタードライバー実行部２１の説明を通して、プリンター１１によって画像を記録するときの、ホストコンピューター１０、及び、プリンター１１の基本的な動作について説明する。
アプリケーション実行部２０は、ホストコンピューター１０に予めインストールされたアプリケーションを実行することにより、単票紙に記録すべき画像の情報を含む画像情報（詳細は後述）を生成し、プリンタードライバー実行部２１に出力する。アプリケーションとは、例えば、ブラウザーや、文書作成ソフトウェア、ＣＧ作成ソフトウェア、表計算ソフトウェアである。
プリンタードライバー実行部２１は、ホストコンピューター１０に予めインストールされたプリンタードライバーを実行することにより、アプリケーション実行部２０から入力された画像情報に基づいて、プリンター１１のコマンド仕様に対応した制御コマンドを生成し、プリンター１１に送信する。制御コマンドとは、プリンター１１に単票紙への画像の記録に係る各種動作を行わせるためのコマンド群のことであり、画像の記録を指示するコマンドや、単票紙を搬送することを指示するコマンド等の各種コマンドが含まれている。
ホストコンピューター１０からプリンター１１に送信された制御コマンドは、順次、受信バッファー（不図示）に格納される。プリンター１１のプリンター側制御部３０は、ファームウェアの機能により、受信バッファーに格納された制御コマンドを、順次、読み出して実行することにより、プリントエンジン３３を制御して、単票紙への画像の記録に係る各種動作を実行する。
【００１５】
次に、本実施形態における記録可能領域について説明する。
図２（Ａ）は、記録可能領域の説明に利用する図である。図２（Ａ）において、符号Ｋは、単票紙の記録面の全域を模式的に表現した領域（以下、「単票紙領域」という。）であり、符号Ｑは、単票紙の記録面に形成された記録可能領域を示している。単票紙領域Ｋ、記録可能領域Ｑは、通常、長方形をなし、それぞれ、４つの辺で規定される。
記録可能領域Ｑは、単票紙領域Ｋにおいて画像を記録可能な最大の領域であり、具体的には、単票紙領域Ｋからプリンタードライバーによって管理されている上下左右のマージンを除いた領域である。これらマージンの値はプリンタードライバーによって参照可能な設定ファイル等に記述されており、ユーザーは、プリンタードライバーの機能によって提供されるユーザーインターフェイスを介して、マージンの値を任意に設定可能である。以下では、説明の明確化のため、プリンタードライバーによって管理されている上下左右のマージンを、適宜、ドライバー側上マージンＱＵ、ドライバー側下マージンＱＢ、ドライバー側左マージンＱＬ、ドライバー側右マージンＱＲと称する。
【００１６】
次に、プリンター１１によって単票紙に画像を記録する際の、アプリケーション実行部２０、及び、プリンタードライバー実行部２１の動作について詳述する。
上述したように、単票紙に画像を記録する場合、アプリケーション実行部２０は、プリンタードライバー実行部２１に画像情報を出力する。この画像情報には、少なくとも、単票紙に記録すべき画像の画像データ、及び、単票紙の記録面において、画像の記録を禁止すべき上下左右のマージンを示す情報が含まれている。
ここで、アプリケーションの種類によっては、又は、アプリケーションの設定によっては、アプリケーション自体が、プリンタードライバーが管理する上下左右のマージンとは別に、上下左右のマージンを管理する場合がある。これらマージンの値は、アプリケーションが参照可能なファイル等に記述されており、ユーザーは、アプリケーション、又は、ＯＳの機能によって提供されるユーザーインターフェイスを介して、マージンの値を任意に設定可能である。以下では、説明の明確化のため、アプリケーションによって管理されている上下左右のマージンを、適宜、アプリ側上マージンＡＵ、アプリ側下マージンＡＢ、アプリ側左マージンＡＬ、アプリ側右マージンＡＲと称する。また、説明の便宜のため、本実施形態に係るアプリケーション実行部２０は、上下左右のマージンを管理しており、単票紙に画像を記録する際は、自身が管理する上下左右のマージンを示す情報を含む画像情報をプリンタードライバー実行部２１に出力するものとする。
上記画像情報が入力されたプリンタードライバー実行部２１は、画像情報の内容に基づいて、アプリ指定領域（後述）を算出すると共に、当該領域を表す座標を算出する。
【００１７】
図２（Ｂ）は、アプリ指定領域の説明に利用する図である。
図２（Ｂ）において、符号Ａは、アプリ指定領域を示している。アプリ指定領域Ａは、アプリケーションによって管理される上下左右のマージンによって規定される領域であり、具体的には、単票紙領域Ｋから、アプリ側上マージンＡＵ、アプリ側下マージンＡＢ、アプリ側左マージンＡＬ、及び、アプリ側右マージンＡＲを除いた領域である。
プリンタードライバー実行部２１は、アプリケーション実行部２０から入力された画像情報に含まれる各マージンＡＵ、ＡＢ、ＡＬ、及び、ＡＲを示す情報に基づいて、図２（Ｂ）に示すように、単票紙領域Ｋに対するアプリ指定領域Ａの相対的な位置を特定する。次いで、プリンタードライバー実行部２１は、単票紙領域Ｋの図中左上の頂点を原点Ｏとした仮想的な座標系におけるアプリ指定領域Ａの４つの頂点ＡＰ０、ＡＰ１、ＡＰ２、及び、ＡＰ３の座標を特定する。上記仮想的な座標系は、単票紙領域Ｋに所定の記録解像度で形成可能なドットの位置を定義するための座標系であり、単票紙領域Ｋに形成可能なドットは、全て、当該座標系において原点Ｏとして定義された位置からの相対的な位置によって一意に定義される。アプリ指定領域Ａの４つの頂点ＡＰ０、ＡＰ１、ＡＰ２、及び、ＡＰ３の座標が、アプリ指定領域Ａを表す座標に該当する。
次いで、プリンタードライバー実行部２１は、特定したアプリ指定領域Ａの４つの頂点ＡＰ０、ＡＰ１、ＡＰ２、及び、ＡＰ３の座標を示す情報、及び、記録すべき画像の画像データを含み、これら４つの頂点の座標によって規定される領域に、画像データが示す画像を記録させるための制御コマンドを生成し、プリンター１１に送信する。
当該制御コマンドを受信したプリンター１１のプリンター側制御部３０は、上記仮想的な座標系と、単票紙の記録面との関係を適切に管理しており、仮想的な座標系において４つの頂点の座標によって規定される領域（＝アプリ指定領域Ａ）に、画像データが示す画像が記録されるように、図示せぬ画像バッファーの適切な領域に、適切なタイミングで、画像データを展開すると共に、画像バッファーに展開した画像データに基づいてプリントエンジン３３を適切に制御して、単票紙への記録を実行する。
なお、プリンター側制御部３０は、アプリ指定領域Ａに画像を記録する際、アプリ指定領域Ａの頂点のうち１つの頂点（図２（Ｂ）の頂点ＡＰ０に対応する頂点）を基点として、画像を記録する。そして、アプリ指定領域Ａに、画像が収まらない場合は、収まらない部分については記録を行わない。プリンター側制御部３０が、仮想的な座標系をサポートしていない場合は、プリンタードライバー実行部２１において、仮想的な座標系から、プリンターの物理的な座標系への変換を行ったうえで、プリンター制御のためのコマンドを生成する。特に、レシートプリンターのような小型プリンターでは、このような対応が必要になる場合が多い。
【００１８】
ところで、本実施形態のように、アプリケーション、及び、プリンタードライバーのそれぞれが単票紙における上下左右のマージンを管理する場合、以下の課題があった。
すなわち、アプリケーション側の各マージンの値は、ユーザーが任意に設定可能であるが、プリンタードライバー側の各マージンの値に比してアプリケーション側の各マージンの値が大きく、これに伴って、記録可能領域Ｑに比してアプリ指定領域Ａが不必要に小さくなる場合があった。図２（Ｂ）の例では、プリンタードライバー側の各マージンＱＵ、ＱＢ、ＱＬ、及び、ＱＲの値に比して、アプリケーション側の各マージンＡＵ、ＡＢ、ＡＬ、及び、ＡＲの値が大きく、この結果、記録可能領域Ｑに比して、アプリ指定領域Ａが不必要に小さくなっている。そして、上述したように、単票紙への画像の記録に際し、プリンタードライバー実行部２１は、プリンター１１に対して、アプリ指定領域Ａに画像を記録することを指示し、一方、プリンター１１は、アプリ指定領域Ａに画像が収まらない場合は、収まらない部分について記録を行わないため、アプリ指定領域Ａが不必要に小さい場合、画像の一部が記録されない事態が生じ得た。
以上のことに基づき、本実施形態に係るホストコンピューター１０は、以下の動作を実行することにより、画像の一部が記録されない事態が生じることを抑制している。
【００１９】
図３は、単票紙に画像を記録する際のホストコンピューター１０の動作を示すフローチャートである。
図３に示すように、単票紙への画像の記録に際し、まず、アプリケーション実行部２０からプリンタードライバー実行部２１に対して画像情報が出力される（ステップＳＡ１）。上述したように、この画像情報には、少なくとも、単票紙に記録すべき画像の画像データ、及び、アプリケーションが管理する上下左右のマージンＡＵ、ＡＢ、ＡＬ、及び、ＡＲを示す情報が含まれている。
画像情報が入力されると、プリンタードライバー実行部２１は、アプリ指定領域Ａに、画像データが示す画像が収まるか否かを判別する（ステップＳＡ２）。アプリ指定領域Ａに画像データが示す画像が収まるとは、換言すれば、アプリ指定領域Ａのサイズよりも、記録すべき画像のサイズの方が小さい、ということであり、ステップＳＡ２では、アプリ指定領域Ａよりも、画像データが示す画像のサイズが大きいか否かの判別が行われている。ステップＳＡ２の動作について詳述すると、プリンタードライバー実行部２１は、単票紙のサイズ、及び、上下左右のマージンＡＵ、ＡＢ、ＡＬ、及び、ＡＲの値に基づいて、アプリ指定領域Ａの横方向の長さＡＸ（図２（Ｂ））、及び、縦方向の長さＡＹ（図２（Ｂ））を算出する。そして、プリンタードライバー実行部２１は、画像データが示す画像の横方向の長さ、及び、縦方向の長さの双方が、アプリ指定領域Ａの横方向の長さＡＸ、及び、縦方向の長さＡＹ以下であるか否かを判別し、画像データに係る各長さの双方が、アプリ指定領域Ａに係る各長さ以下である場合は、アプリ指定領域Ａに画像が収まると判別し、画像データに係る各長さの少なくとも一方が、アプリ指定領域Ａに係る各長さを上回っている場合は、アプリ指定領域Ａに画像が収まらないと判別する。
アプリ指定領域Ａに、画像が収まると判別した場合（ステップＳＡ２：ＹＥＳ）、プリンタードライバー実行部２１は、画像情報に基づいて、上述した手順に従って制御コマンドを生成し、プリンター１１に出力し（ステップＳＡ３）、処理を終了する。
一方、アプリ指定領域Ａに画像データが収まらないと判別した場合（ステップＳＡ２：ＮＯ）、プリンタードライバー実行部２１は、画像情報に基づいて、拡張後領域（後述）を算出する（ステップＳＡ４）。ここで、アプリ指定領域Ａに画像が収まらない場合において、ホストコンピューター１０が、上述した手順に従って制御コマンドを生成し、プリンター１１に出力した場合、画像データが示す画像の一部が記録されない事態が生じる。そして、以下の、ステップＳＡ４〜ステップＳＡ５の処理は、このような事態の発生を抑制するために行われる処理である。以下、ステップＳＡ４の動作について詳述する。
【００２０】
図４は、拡張後領域の説明に利用する図である。
図４では、単票紙領域Ｋの図中左上の頂点を原点Ｏとし、図中左右に延びる軸をｘ軸、図中上下に延びる軸をｙ軸とする仮想的な座標系が展開されている。この座標系において、ｘ軸は、図中右に向かう方向がプラス方向であり、ｙ軸は、図中下に向かう方向がプラス方向である。プリンタードライバー実行部２１は、以下説明する各領域や、各辺の位置、範囲を、この仮想的な座標系における座標によって管理する。また、図４において、符号Ｅは、拡張後領域を示している。
さて、記録可能領域Ｑは、画像を記録可能な最大の領域である。従って、プリンタードライバー実行部２１は、アプリ指定領域Ａに画像が収まらない場合は、このアプリ指定領域Ａを、記録可能領域Ｑに対応する領域に対応して拡張し、拡張した領域に画像を記録させれば、画像の一部が記録されないリスクを最も低減することができる。この拡張した領域が、拡張後領域Ｅである。以上のことに基づき、ステップＳＡ４において、プリンタードライバー実行部２１は、以下の処理を行う。
図４に示すように、まず、プリンタードライバー実行部２１は、単票紙領域Ｋの左辺ＫＬを、アプリ側左マージンＡＬとドライバー側左マージンＱＬとの差に対応する分、ｘ軸マイナス方向へ仮想的に移動（拡張）する。以下、移動後の辺を「左辺ＫＬ’」という。次いで、プリンタードライバー実行部２１は、左辺ＫＬ’から、ｘ軸プラス方向に、アプリ側左マージンＡＬ分離間した辺を、拡張後領域Ｅの左辺ＥＬと定義する。このように、アプリ側左マージンＡＬとドライバー側左マージンＱＬとの差に対応する分、仮想的に拡張した左辺ＫＬ’から、アプリ側左マージンＡＬ分離間した辺を、拡張後領域Ｅの左辺ＥＬと定義することにより、座標系において、当該拡張後領域Ｅの左辺ＥＬの位置を、記録可能領域Ｑの左辺の位置と対応させることができる。
同様にして、プリンタードライバー実行部２１は、単票紙領域Ｋの上辺ＫＵ、下辺ＫＢ、及び、右辺ＫＲのそれぞれについて、アプリケーション側の対応するマージン、及び、プリンタードライバー側の対応するマージンの差に対応する分、所定方向に仮想的に拡張して、上辺ＫＵ’、下辺ＫＢ’、及び、右辺ＫＲ’を求め、これら拡張した辺から、アプリケーション側の対応するマージン分離間した辺を、それぞれ、拡張後領域Ｅの上辺ＥＵ、下辺ＥＢ、及び、右辺ＥＲと定義する。これら上辺ＥＵ、下辺ＥＢ、及び、右辺ＥＲのそれぞれの位置は、記録可能領域Ｑの上辺、下辺、及び、右辺に対応する位置となる。
次いで、プリンタードライバー実行部２１は、定義した上辺ＥＵ、下辺ＥＢ、左辺ＥＬ、及び、右辺ＥＲによって規定される領域（＝拡張後領域Ｅ）の４つの頂点の座標系における座標を取得し、ステップＳＡ４の処理を完了する。この拡張後領域Ｅは、記録可能領域Ｑと対応した領域となる。
【００２１】
このように、本実施形態では、拡張後領域Ｅを算出する処理に際し、アプリケーションが指定する上下左右のマージン自体の値を変更せずに処理を行う。つまり、記録可能領域Ｑと、アプリ指定領域Ａとの態様の相違を踏まえてアプリケーション側の各マージンを適切に調整し、単票紙領域Ｋの各辺から調整後のマージンを除いた領域を、拡張後領域Ｅとして定義することも処理としては可能であるが、本実施形態ではこのような処理を行っていない。これは以下の理由による。すなわち、アプリケーションは様々なものが存在し、かつ、アプリケーションごとに管理しているマージンの値は異なる。従って、アプリケーションが管理するマージンの値を適切に調整して拡張後領域Ｅを定義する方法の場合は、記録可能領域Ｑと、アプリ指定領域Ａとの態様の相違に応じてマージンの調整の方法を変更する必要があり、当該調整に係る処理が複雑化するという問題がある。一方で本実施形態では、単票紙領域Ｋの各辺を一定の法則に従って仮想的に拡張し、拡張後の各辺と、アプリケーションが管理するマージンの値との関係で、拡張後領域Ｅを定義するため、拡張後領域Ｅを算出する際に、マージンの値そのものを加工する必要が無く、アプリケーションにかかわらず、また、アプリケーションが管理するマージンの値にかかわらず、適切に拡張後領域Ｅを算出でき、汎用性が高く、処理効率がよい。また、本実施形態では、アプリケーション側の各マージンと、プリンタードライバー側の各マージンとの差に対応する分、単票紙領域Ｋの各辺を仮想的に拡張し、拡張した辺からアプリケーション側のマージン分離間した辺によって規定される領域を拡張後領域Ｅとする、という画一的な処理によって、拡張後領域Ｅを、記録可能領域Ｑと対応する領域とすることができ、処理効率の向上を図ることができる。
【００２２】
ステップＳＡ４において、拡張後領域Ｅの４つの頂点の座標を取得した後、プリンタードライバー実行部２１は、取得した４つの頂点の座標を示す情報、及び、記録すべき画像の画像データを含み、これら４つの頂点の座標によって規定される領域（＝拡張後領域Ｅ）に、画像データが示す画像を記録させるための制御コマンドを生成し、プリンター１１に送信する。
当該制御コマンドを受信したプリンター１１は、上述した手段により、拡張後領域Ｅに画像を記録する。なお、プリンター側制御部３０が、仮想的な座標系をサポートしていない場合は、プリンタードライバー実行部２１において、仮想的な座標系から、プリンターの物理的な座標系への変換を行った上で、プリンター制御のためのコマンドを生成するようにする。
【００２３】
以上説明したように、本実施形態に係るプリンタードライバー実行部２１は、アプリケーション実行部２０から画像情報が入力された場合、アプリ指定領域Ａよりも、画像データが示す画像のサイズが大きいか否か判別し、大きい場合、仮想的な座標系における単票紙領域Ｋの各辺の位置を仮想的に拡張し、仮想的に拡張した各辺からアプリケーション側の各マージン分離間した辺によって規定される領域である拡張後領域Ｅに、画像データが示す画像を記録させる制御コマンドを生成し、プリンター１１に出力する。
この構成によれば、アプリ指定領域Ａに画像が収まりきれない場合であっても、このアプリ指定領域Ａよりもサイズの大きい拡張後領域Ｅに画像が記録されることとなり、画像の一部が記録されないリスクを低減できる。特に、上記構成によれば、拡張後領域Ｅを算出する処理に際し、アプリケーションが指定する上下左右のマージン自体の値を変更せずに処理を行うため、異なる複数のアプリケーションのそれぞれについて、アプリケーションごとに上下左右のマージン自体の値を適切に変更して処理を行うことなく適切に拡張後領域Ｅを算出可能であり、汎用性が高い。
【００２４】
また、本実施形態では、プリンタードライバー実行部２１は、拡張後領域Ｅが、記録可能領域Ｑと対応する領域となるような態様で、仮想的な座標系において単票紙領域Ｋの各辺を仮想的に拡張する。
この構成によれば、拡張後領域Ｅが、記録可能領域Ｑと対応する領域となるため、より効果的に、画像の一部が記録されないリスクを低減できる。
【００２５】
また、本実施形態では、プリンタードライバー実行部２１は、アプリケーション実行部２０から入力された画像情報が示す上下左右の各マージンと、プリンタードライバーが管理する上下左右の各マージンとの差に対応する分、単票紙領域Ｋの各辺を仮想的に拡張し、拡張した各辺からアプリケーション側のマージン分離間した辺によって規定される領域を拡張後領域Ｅとする、という画一的な処理によって、拡張後領域Ｅを、記録可能領域Ｑと対応する領域とすることができ、処理効率の向上を図ることができる。
【００２６】
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
例えば、図１に示す各機能ブロックはハードウェアとソフトウェアの協働により任意に実現可能であり、特定のハードウェア構成を示唆するものではない。また、ホストコンピューター１０の各機能ブロックの機能を、ホストコンピューター１０に外部接続される別の装置に持たせるようにしてもよい。また、ホストコンピューター１０は、外部接続される記憶媒体に記憶させたプログラムを実行することにより、図３のフローチャートに係る動作を含む各種動作を実行するようにしてもよい。
【符号の説明】
【００２７】
１…記録システム、１０…ホストコンピューター（制御装置）、１１…プリンター（記録装置）、１５…制御部、２０…アプリケーション実行部、２１…プリンタードライバー実行部、Ａ…アプリ指定領域、Ｅ…拡張後領域、Ｑ…記録可能領域。
【図１】
0005906829.tif 000002
【図２】
0005906829.tif 000003
【図３】
0005906829.tif 000004
【図４】
0005906829.tif 000005