(57)【要約】【課題】商品ラベルを含む用紙への印刷時にオブジェクトが印刷されない商品ラベルの数を削減する。【解決手段】２１枚の商品ラベル７０に２１個のバーコード画像７２を印刷可能な用紙６２のサイズである第１サイズの画像からバーコード画像７２が抽出される。次に、１個のバーコード画像７２を配置可能な第２サイズの用紙６０に、１個のバーコード画像７２を印刷するための印刷用画像データが作成される。そして、作成された印刷用画像データがプリンタに送信される。これにより、少ない数の商品ラベル７０を含む用紙６０に、バーコード画像７２を印刷することが可能となり、オブジェクトが印刷されない商品ラベル７０の数を削減することが可能となる。【選択図】図５
2019040564.tif 000002
【特許請求の範囲】
【請求項１】
通信インタフェースを備える情報処理装置のコンピュータが読み取り可能なプリンタドライバであって、
前記コンピュータは、
第１数の第１オブジェクトを印刷可能な用紙サイズである第１サイズの画像を示す画像データを出力可能なアプリケーションも読み取り可能であり、
前記コンピュータを、
前記アプリケーションから前記第１サイズの画像を示す画像データを受け付ける画像データ受付手段と、
前記画像データ受付手段により受け付けられた前記第１サイズの画像データである第１画像データに含まれる第２画像データを抽出する抽出手段と、
して機能させ、
前記第２画像データは、前記第１オブジェクトを示す画像データであり、
前記コンピュータを、
前記抽出手段により抽出された前記第２画像データに基づく、前記第１数より少ない第２数の前記第１オブジェクトを第２サイズの用紙に配置して印刷するための第１印刷データを作成する作成手段と、
して機能させ、
前記第１サイズは、前記第１数の前記第１オブジェクトを配置することが可能な用紙サイズであり、
前記第２サイズは、前記第１数の前記第１オブジェクトは配置できず、前記第２数の前記第１オブジェクトは配置可能な用紙サイズであり、
前記コンピュータを、
前記作成手段により作成された前記第１印刷データを、前記通信インタフェースを介して、プリンタに送信する送信手段と、
して機能させることを特徴とするプリンタドライバ。
【請求項２】
前記第１サイズは、前記第１数の前記第１オブジェクトをＭ列で配置することが可能な用紙サイズであり、
前記作成手段は、
前記第２数の前記第１オブジェクトを前記第２サイズの用紙に、前記Ｍ列より少ないＮ列で配置して印刷するための第１印刷データを作成することを特徴とする請求項１に記載のプリンタドライバ。
【請求項３】
前記第２サイズは、
切断可能なテープ状の用紙において、前記第２数の前記第１オブジェクトが印刷された後に切断された場合の用紙サイズであることを特徴とする請求項１又は２に記載のプリンタドライバ。
【請求項４】
通信インタフェースを備える情報処理装置のコンピュータが読み取り可能なプリンタドライバであって、
前記コンピュータは、
Ｍ列の第１オブジェクトを印刷可能な用紙サイズである第１サイズの画像を示す画像データを出力可能なアプリケーションも読み取り可能であり、
前記コンピュータを、
前記アプリケーションから前記第１サイズの画像を示す画像データを受け付ける画像データ受付手段と、
前記画像データ受付手段により受け付けられた前記第１サイズの画像データである第１画像データに含まれる第２画像データを抽出する抽出手段と、
して機能させ、
前記第２画像データは、前記第１オブジェクトを示す画像データであり、
前記コンピュータを、
前記抽出手段により抽出された前記第２画像データに基づく、前記Ｍ列より少ないＮ列の前記第１オブジェクトを第２サイズの用紙に配置して印刷するための第１印刷データを作成する作成手段と、
して機能させ、
前記第１サイズは、前記Ｍ列の前記第１オブジェクトを配置することが可能な用紙サイズであり、
前記第２サイズは、前記Ｍ列の前記第１オブジェクトは配置できず、前記Ｎ列の前記第１オブジェクトは配置可能な用紙サイズであり、
前記コンピュータを、
前記作成手段により作成された前記第１印刷データを、前記通信インタフェースを介して、プリンタに送信する送信手段と、
して機能させることを特徴とするプリンタドライバ。
【請求項５】
前記作成手段は、
前記抽出手段により抽出された前記第２画像データに基づく１の前記第１オブジェクトを、２枚以上の前記第２サイズの用紙に亘って配置することなく、１枚の前記第２サイズの用紙に配置して印刷するための前記第１印刷データを作成することを特徴とする請求項１乃至４の何れか１項に記載のプリンタドライバ。
【請求項６】
前記第１オブジェクトは、バーコードを含むオブジェクトであり、
前記抽出手段は、
前記第１画像データに含まれる前記バーコードの描画領域を検出し、検出された領域を含む所定の領域から前記第２画像データを抽出することを特徴とする請求項１乃至５の何れか１項に記載のプリンタドライバ。
【請求項７】
前記情報処理装置は、ユーザ操作を受け付ける操作受付インタフェースを備え、
前記コンピュータを、
前記第１オブジェクトを前記第２サイズの用紙に印刷することを示す操作である第１操作を前記操作受付インタフェースが受け付けたことに応じて、前記第１サイズの画像を示す画像データの要求を出力する第１出力手段として機能させ、
前記画像データ受付手段は、
前記第１出力手段による前記第１サイズの画像を示す画像データの要求の出力に応じて、前記アプリケーションから前記第１サイズの画像を示す画像データを受け付けることを特徴とする請求項１乃至６の何れか１項に記載のプリンタドライバ。
【請求項８】
前記コンピュータを、
前記第１操作と異なる操作であって、前記第２サイズの用紙に印刷することを示す操作である第２操作を前記操作受付インタフェースが受け付けたことに応じて、前記第２サイズの画像を示す画像データの要求を出力する第２出力手段として機能させ、
前記画像データ受付手段は、
前記第２出力手段による前記第２サイズの画像を示す画像データの要求の出力に応じて、前記アプリケーションから前記第２サイズの画像を示す画像データを受け付け、
前記送信手段は、
前記画像データ受付手段により受け付けられた前記第２サイズの画像を示す画像データを前記第２サイズの用紙に印刷するための第２印刷データを、前記通信インタフェースを介して、前記プリンタに送信することを特徴とする請求項７に記載のプリンタドライバ。
【請求項９】
前記コンピュータを、
前記第２操作を前記操作受付インタフェースが受け付けた場合に入力可能な印刷設定情報のうちの予め定められた印刷設定情報を入力することができないことを情報を、前記第１操作を前記操作受付インタフェースが受け付けたことに応じて、前記アプリケーションに出力する第３出力手段として機能させることを特徴とする請求項８に記載のプリンタドライバ。
【請求項１０】
前記コンピュータを、
前記第１操作を前記操作受付インタフェースが受け付けたことに応じて、前記第２操作を前記操作受付インタフェースが受け付けた場合に出力される前記第２サイズの画像の画像データの出力を禁止し、前記第１サイズの画像の画像データの出力を許容することを情報を前記アプリケーションに出力する第４出力手段として機能させることを特徴とする請求項８又は９に記載のプリンタドライバ。
【請求項１１】
前記作成手段は、
印刷用紙のサイズとして、前記第２サイズを指定する操作を前記操作受付インタフェースが受け付けたことに応じて、前記第１印刷データを作成する請求項７乃至１０の何れか１項に記載のプリンタドライバ。
【請求項１２】
前記作成手段は、
前記抽出手段により抽出された前記第２画像データに基づく第１オブジェクトを拡大若しくは縮小することなく、前記抽出手段により抽出された前記第２画像データに基づく第１オブジェクトのサイズで前記第１印刷データを作成することを特徴とする請求項１乃至１１の何れか１項に記載のプリンタドライバ。
【請求項１３】
前記情報処理装置が、表示インタフェースを備え、
前記アプリケーションは、前記第１サイズの画像に前記第１オブジェクトが含まれた状態の画像を前記表示インタフェースに表示させることが可能であり、
前記コンピュータを、
前記第２サイズの画像に前記第１オブジェクトが含まれた状態の画像を前記表示インタフェースに表示させる表示制御手段として機能させることを特徴とする請求項１乃至１２の何れか１項に記載のプリンタドライバ。
【請求項１４】
通信インタフェースと、
制御装置と、
を備える情報処理装置であって、
前記制御装置は、
第１数の第１オブジェクトを印刷可能な用紙サイズである第１サイズの画像を示す画像データを受け付ける画像データ受付手段と、
前記画像データ受付手段により受け付けられた前記第１サイズの画像データである第１画像データに含まれる第２画像データを抽出する抽出手段と、
を有し、
前記第２画像データは、前記第１オブジェクトを示す画像データであり、
前記制御装置は、
前記抽出手段により抽出された前記第２画像データに基づく、前記第１数より少ない第２数の前記第１オブジェクトを第２サイズの用紙に配置して印刷するための第１印刷データを作成する作成手段を有し、
前記第１サイズは、前記第１数の前記第１オブジェクトを配置することが可能な用紙サイズであり、
前記第２サイズは、前記第１数の前記第１オブジェクトは配置できず、前記第２数の前記第１オブジェクトは配置可能な用紙サイズであり、
前記制御装置は、
前記作成手段により作成された前記第１印刷データを、前記通信インタフェースを介して、プリンタに送信する送信手段を有することを特徴とする情報処理装置。
【請求項１５】
通信インタフェースと、
制御装置と、
を備える情報処理装置であって、
前記制御装置は、
Ｍ列の第１オブジェクトを印刷可能な用紙サイズである第１サイズの画像を示す画像データを受け付ける画像データ受付手段と、
前記画像データ受付手段により受け付けられた前記第１サイズの画像データである第１画像データに含まれる第２画像データを抽出する抽出手段と、
を有し、
前記第２画像データは、前記第１オブジェクトを示す画像データであり、
前記制御装置は、
前記抽出手段により抽出された前記第２画像データに基づく、前記Ｍ列より少ないＮ列の前記第１オブジェクトを第２サイズの用紙に配置して印刷するための第１印刷データを作成する作成手段を有し、
前記第１サイズは、前記Ｍ列の前記第１オブジェクトを配置することが可能な用紙サイズであり、
前記第２サイズは、前記Ｍ列の前記第１オブジェクトは配置できず、前記Ｎ列の前記第１オブジェクトは配置可能な用紙サイズであり、
前記制御装置は、
前記作成手段により作成された前記第１印刷データを、前記通信インタフェースを介して、プリンタに送信する送信手段を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、用紙にバーコード等のオブジェクトを印刷可能なプリンタドライバ等に関する。
【背景技術】
【０００２】
下記非特許文献に記載のＵＲＬにアクセスすることで、商品ラベルを含む用紙にバーコード等のオブジェクトを印刷するための技術を閲覧することができる。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】インターネット＜ＵＲＬ：https://images-na.ssl-images-amazon.com/images/G/09/rainier/fba-help/quickguide/3_ItemLabel.pdf＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記文献に記載の技術によれば、商品ラベルにオブジェクトを印刷することが可能である。ただし、用紙に含まれる商品ラベルの数が多く、オブジェクトが印刷されない商品ラベルが生じると、無駄となる。そこで、オブジェクトが印刷されない商品ラベルの数を削減することを課題とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、実施例に開示するプリンタドライバは、通信インタフェースを備える情報処理装置のコンピュータが読み取り可能なプリンタドライバであって、前記コンピュータは、第１数の第１オブジェクトを印刷可能な用紙サイズである第１サイズの画像を示す画像データを出力可能なアプリケーションも読み取り可能であり、前記コンピュータを、前記アプリケーションから前記第１サイズの画像を示す画像データを受け付ける画像データ受付手段と、前記画像データ受付手段により受け付けられた前記第１サイズの画像データである第１画像データに含まれる第２画像データを抽出する抽出手段と、して機能させ、前記第２画像データは、前記第１オブジェクトを示す画像データであり、前記コンピュータを、前記抽出手段により抽出された前記第２画像データに基づく、前記第１数より少ない第２数の前記第１オブジェクトを第２サイズの用紙に配置して印刷するための第１印刷データを作成する作成手段と、して機能させ、前記第１サイズは、前記第１数の前記第１オブジェクトを配置することが可能な用紙サイズであり、前記第２サイズは、前記第１数の前記第１オブジェクトは配置できず、前記第２数の前記第１オブジェクトは配置可能な用紙サイズであり、前記コンピュータを、前記作成手段により作成された前記第１印刷データを、前記通信インタフェースを介して、プリンタに送信する送信手段と、して機能させることを特徴とする。
【０００６】
上記課題を解決するために、実施例に開示するプリンタドライバは、通信インタフェースを備える情報処理装置のコンピュータが読み取り可能なプリンタドライバであって、前記コンピュータは、Ｍ列の第１オブジェクトを印刷可能な用紙サイズである第１サイズの画像を示す画像データを出力可能なアプリケーションも読み取り可能であり、前記コンピュータを、前記アプリケーションから前記第１サイズの画像を示す画像データを受け付ける画像データ受付手段と、前記画像データ受付手段により受け付けられた前記第１サイズの画像データである第１画像データに含まれる第２画像データを抽出する抽出手段と、して機能させ、前記第２画像データは、前記第１オブジェクトを示す画像データであり、前記コンピュータを、前記抽出手段により抽出された前記第２画像データに基づく、前記Ｍ列より少ないＮ列の前記第１オブジェクトを第２サイズの用紙に配置して印刷するための第１印刷データを作成する作成手段と、して機能させ、前記第１サイズは、前記Ｍ列の前記第１オブジェクトを配置することが可能な用紙サイズであり、前記第２サイズは、前記Ｍ列の前記第１オブジェクトは配置できず、前記Ｎ列の前記第１オブジェクトは配置可能な用紙サイズであり、前記コンピュータを、前記作成手段により作成された前記第１印刷データを、前記通信インタフェースを介して、プリンタに送信する送信手段と、して機能させることを特徴とする。
【発明の効果】
【０００７】
実施例に開示するプリンタドライバにより、例えば、少ない数の商品ラベルを含む用紙に、第１オブジェクトを印刷することが可能となり、オブジェクトが印刷されない商品ラベルの数を削減することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】通信システム１のブロック図である。
【図２】バーコード画像７２を示す図である。
【図３】バーコード画像表示画面８０を示す図である。
【図４】アプリ対応設定画面８６を示す図である。
【図５】各種用紙を示す図である。
【図６】アプリ対応設定画面８６を示す図である。
【図７】ドライバ対応第１設定画面１００を示す図である。
【図８】ドライバ対応第２設定画面１１２を示す図である。
【図９】ドライバ対応第３設定画面１２０を示す図である。
【図１０】ＤｅｖＭｏｄｅ１３０を示す図である。
【図１１】Ａ４Ｌｅｔｔｅｒサイズを概念的に示す図である。
【図１２】プリンタドライバ２８のフローチャートを示す図である。
【図１３】プリンタドライバ２８のフローチャートを示す図である。
【図１４】プリンタドライバ２８のフローチャートを示す図である。
【図１５】プリンタドライバ２８のフローチャートを示す図である。
【発明を実施するための形態】
【０００９】
＜通信システムの構成＞
図１に、本願に係る実施形態として例示される通信システム１のブロック図を示す。通信システム１は、ＰＣ（本発明の情報処理装置の一例）１０、プリンタ（本発明のプリンタの一例）５０、プリンタ５２、サーバ５４、ルータ５６、インターネット５８を備える。
【００１０】
ＰＣ１０は、ＣＰＵ（本発明のコンピュータ及び制御装置の一例）１２、メモリ１４、ＬＣＤ（本発明の表示インタフェースの一例）１６、入力Ｉ／Ｆ（本発明の操作受付インタフェースの一例）１８、ネットワークＩ／Ｆ（本発明の通信インタフェースの一例）２０を主に備えている。これらの構成要素は、バス２２を介して互いに通信可能とされている。
【００１１】
ＣＰＵ１２は、メモリ１４内の制御プログラム（本発明のアプリケーションの一例）２６、プリンタドライバ２８、プリンタドライバ３０、オペレーティングシステム（以下、「ＯＳ」と略す）３２に従って処理を実行する。制御プログラム２６は、所定の形式、例えば、ＰＤＦ形式のファイルの閲覧，印刷等を実行するためのプログラムであり、具体的には、Ａｄｏｂｅ  Ｒｅａｄｅｒ（登録商標）である。また、プリンタドライバ２８は、プリンタ５０のデバイスドライバであり、プリンタ５０の作動を制御し、プリンタドライバ３０は、プリンタ５２のデバイスドライバであり、プリンタ５２の作動を制御する。すなわち、プリンタドライバは、プリンタを制御するプログラムである。また、ＯＳ３２は、制御プログラム２６、プリンタドライバ２８，３０に利用される基本的な機能を提供するプログラムである。なお、制御プログラム２６等を実行するＣＰＵ１２のことを、単にプログラム名でも記載する場合がある。例えば、「制御プログラム２６が」という記載は、「制御プログラム２６を実行するＣＰＵ１２が」ということを意味する場合がある。
【００１２】
また、メモリ１４は、データ記憶領域３４を備える。データ記憶領域３４は、制御プログラム２６等の実行に必要なデータなどを記憶する領域である。なお、メモリ１４は、ＲＡＭ、ＲＯＭ、フラッシュメモリー、ＨＤＤ、ＣＰＵ１２が備えるバッファなどが組み合わされて構成されている。
【００１３】
メモリ１４は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体である。ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体には、上記の例の他に、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の記録媒体も含まれる。また、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体は、ｔａｎｇｉｂｌｅな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙなコンピュータが読み取り可能なストレージ媒体には含まれない。
【００１４】
ＬＣＤ１６は、ＰＣ１０の各種機能を表示する。入力Ｉ／Ｆ１８は、キーボード，マウス等を含み、ユーザ操作を入力するためのＩ／Ｆである。ネットワークＩ／Ｆ２０は、ルータ５６を介して、プリンタ５０，５２に接続されている。また、ルータ５６は、インターネット５８を介して、サーバ５４に接続されている。これにより、ＰＣ１０は、プリンタ５０，５２、サーバ５４等との間で情報の送受信を行う。
【００１５】
なお、プリンタ５０は、特殊な用紙、具体的には、テープ状の用紙（図５（ｂ）参照）６０への印刷を行うことが可能なデバイスであり、プリンタ５２は、一般的な用紙、具体的には、Ａ４サイズの用紙（図５（ａ）参照）６２等への印刷を行うことが可能なデバイスである。
【００１６】
＜通信システムの動作＞
本明細書では、主に、プログラムに記述された命令に従ったＣＰＵ１２の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「取得」、「受付」、「制御」等の処理は、ＣＰＵ１２の処理を表している。ＣＰＵ１２による処理は、ＯＳ３２を介したハードウェア制御も含む。なお「取得」は要求を必須とはしない概念で用いる。すなわち、ＣＰＵ１２が要求することなくデータを受信するという処理も、「ＣＰＵ１２がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。また、「命令」「応答」「要求」等の処理は、「命令」「応答」「要求」等を示す情報を通信することにより行われる。また、「設定」等の処理は、入力された設定情報をメモリに記憶することで行われる。
【００１７】
通信システム１では、サービス提供会社が提供するサービスにおいて用いられる商品ラベルの印刷を行うことが可能である。FULFILLMENT by AMAZON（登録商標）は、サービスの一例である。
【００１８】
具体的には、サーバ５４は、サービス提供会社が運営するサーバであり、ユーザが操作するＰＣ１０は、サーバ５４にアクセスし、商品ラベルに印刷される画像の画像データを取得する。なお、図２に示すように、商品ラベル７０に印刷される画像（以下、「バーコード画像」と記載する）（本発明の第１オブジェクトの一例）７２は、商品を識別するためのバーコード７４と、商品の商品名７６と、商品のコンディション７８とにより構成されている。このため、ユーザは、出品対象の商品毎に商品ラベル７０を添付する必要があり、出品対象の商品の全てに応じたバーコード画像を示す画像データ（以下、「バーコード画像データ」と記載する）を取得する必要がある。つまり、出品対象の商品が１０個である場合に、ユーザは、１０個のバーコード画像７２を示すバーコード画像データをサーバ５４から取得する必要がある。
【００１９】
そこで、ユーザは、ＰＣ１０を用いて、販売対象の商品を示す商品ラベル７０の画像データ、つまり、バーコード画像７２を示すバーコード画像データをサーバ５４から取得する。ちなみに、サーバ５４から取得するバーコード画像データは、ＰＤＦ形式の画像データである。ユーザは、ＰＣ１０を用いてサーバ５４のウェブページにアクセスし、ユーザの販売者アカウント、商品名、商品の個数、商品のコンディションなどを入力する。また、ユーザは、３列７行に配置された２１枚の商品ラベル７０を含むＡ４サイズの用紙６２が印刷用紙であることをウェブページに入力する。これにより、サーバ５４は、３列７行の商品ラベル７０に合わせた位置にバーコード画像７２が配置された画像を示すＰＤＦ形式の画像データを作成し、ＰＣ１０に送信する。なお、３個の商品Ａと、７個の商品Ｂを販売することをユーザが入力した場合、バーコード画像７２は、商品Ａを示す３つのバーコード画像と、商品Ｂを示す７つのバーコード画像が含まれる。商品Ａを示すバーコード画像、商品Ｂを示すバーコード画像のいずれも、本発明の第１オブジェクトの一例である。
【００２０】
制御プログラム２６はＰＤＦ形式の画像データを表示するアプリケーションである。制御プログラム２６は、サーバ５４が作成したＰＤＦ形式の画像データに基づいて、図３に示すバーコード画像表示画面８０をＬＣＤ１６に表示する。なお、サーバ５４が作成する画像データには、バーコード画像７２以外のオブジェクト（例えば、サービス提供外社名のロゴ）が含まれていても良いし、含まれていなくてもよい。
【００２１】
次に、バーコード画像表示画面８０において、印刷ボタン８２が操作されると、制御プログラム２６の実行により、図４に示すアプリ対応設定画面８６がＬＣＤ１６に表示される。アプリ対応設定画面８６において印刷ボタン８８が操作されると、制御プログラム２６の実行により、サーバ５４から取得した画像データ、つまり、印刷対象のバーコード画像データが、プリンタドライバ３０に向けて出力される。そして、プリンタドライバ３０が画像データを受け付けると、プリンタドライバ３０の実行により、受け付けた画像データに基づく画像、つまり、印刷対象のバーコード画像７２を印刷用紙に印刷するための印刷用画像データが作成される。なお、アプリ対応設定画面８６において、印刷処理を実行するデバイスとしてプリンタ５２を選択する入力がされてもよいし、各種印刷設定情報の入力が行われてもよい。
【００２２】
詳しくは、プリンタ５２では、複数のバーコード画像７２を印刷するための印刷用紙として、例えば、図５（ａ）に示す用紙６２が用いられる。この用紙６２は、Ａ４サイズの用紙であり、３列（本発明のＭ列の一例）×７行に配置された２１枚（本発明の第１数の一例）の商品ラベル７０を含んでいる。
【００２３】
しかしながら、２１枚の商品ラベル７０を含む用紙６２を用いて、バーコード画像７２の印刷処理が実行されると、バーコード画像７２が印刷されない商品ラベル７０が無駄に残存する場合がある。詳しくは、出品対象の商品が１０個である場合に、１０のバーコード画像データがサーバ５４から取得され、その１０のバーコード画像データに基づくバーコード画像７２が用紙６２の商品ラベル７０に印刷される。この際、図５（ａ）に示すように、２１枚の商品ラベル７０のうちの１０枚の商品ラベル７０にバーコード画像７２が印刷されるが、残りの１１枚の商品ラベル７０にバーコード画像７２は印刷されない。このように、１１枚の商品ラベル７０にバーコード画像７２が印刷されない場合には、その１１枚の商品ラベル７０は無駄になる。
【００２４】
このようなことに鑑みて、通信システム１では、プリンタ５０において、図５（ｂ）に示すように、商品ラベル７０が１列（本発明の第Ｎ列の一例）に配置されたテープ状の用紙６０を用いて、バーコード画像７２の印刷処理が実行される。詳しくは、テープ状の用紙６０は、用紙６０の延びる方向に沿って１列に並べられた状態の複数の商品ラベル７０を含んでいる。そして、プリンタ５０に、その用紙６０がロール状に巻回されて収納されており、用紙６０に含まれる商品ラベル７０に、順次、画像が印刷される。また、プリンタ５０では、商品ラベル７０に画像が印刷される毎に、用紙を切断することが可能である。つまり、プリンタ５０は、テープ状の用紙６０において１（本発明の第２数の一例）の画像が商品ラベル７０に印刷された後に切断された場合の用紙サイズ（本発明の第２サイズの一例）に、画像を印刷することが可能なデバイスである。ちなみに、その用紙サイズは、例えば、５２ｍｍ×２９ｍｍ，６２ｍｍ×２９ｍｍとされている。なお、プリンタ５０において、５２ｍｍ×２９ｍｍ，６２ｍｍ×２９ｍｍ等のラベルサイズの用紙６０への印刷処理は可能であるが、一般的な用紙、例えば、Ａ４サイズ等の用紙への印刷処理ができなくてもよい。
【００２５】
印刷処理を実行するデバイスとして、プリンタ５２が選択されたことに応じて、制御プログラム２６は、プリンタ５０のケーパビリティ情報をプリンタドライバ２８に要求する。制御プログラム２６は、印刷処理を実行するデバイスとして、プリンタ５２が選択されているときに、アプリ対応設定画面８６を表示するタイミングでケーパビリティ情報をプリンタドライバ２８に要求してもよいし、別のタイミングで要求してもよい。制御プログラム２６は、プリンタドライバ２８への要求を、例えば、ＡＰＩ（Application Programming Interfaceの略）呼び出し（具体的には、例えば、GetPrintCapabilities等）にて行う。そして、プリンタドライバ２８はＡＰＩ呼び出しを受け付けると、プリンタ５０のケーパビリティ情報を制御プログラム２６に出力する。ケーパビリティ情報は、印刷処理に関する性能を示す情報であり、印刷可能な用紙サイズなどが含まれる。
【００２６】
そして、制御プログラム２６は、プリンタドライバ２８から受け付けたケーパビリティ情報に基づいて、アプリ対応設定画面８６の設定内容を決定する。具体的には、設定可能な印刷用紙のサイズとして、６２ｍｍ×２９ｍｍ等のサイズが設定され、Ａ４サイズ等の一般的な用紙のサイズは設定されない。これにより、アプリ対応設定画面８６において、印刷処理を実行するデバイスとして、プリンタ５０が設定された場合に、プリンタ５０で印刷処理を実行可能な用紙サイズのみが選択可能な状態となる。また、設定可能な印刷用紙のサイズとして、６２ｍｍ×２９ｍｍのサイズが設定されることで、図６に示すように、アプリ対応設定画面８６のプレビュー画面９０に、６２ｍｍ×２９ｍｍのサイズの用紙への印刷が可能であることが示される。
【００２７】
また、アプリ対応設定画面８６において、プロパティボタン９２が操作されると、制御プログラム２６からのＡＰＩ呼び出しにより、プリンタドライバ２８に設定画面の表示が要求され、プリンタドライバ２８が、図７に示すドライバ対応第１設定画面１００をＬＣＤ１６に表示する。ドライバ対応第１設定画面１００は、プリンタ５０による通常のラベル印刷処理の印刷設定情報の入力を行うための画面であり、ドライバ対応第１設定画面１００には、印刷用紙のサイズを設定する複数のサイズ設定ボタン１０２、ミラー印刷処理を設定するミラー設定ボタン１０４、トリム印刷処理を設定するトリム設定ボタン１０６等が表示される。
【００２８】
ちなみに、ミラー印刷処理は、画像を鏡に映したように反転させて印刷する処理であり、トリム処理は、商品ラベル７０に印刷される画像の後端部に空白部がある場合に、その空白部を除去して印刷する処理である。そして、ドライバ対応第１設定画面１００において、サイズ設定ボタン１０２等が操作され、各種印刷設定情報の入力がされた後に、ＯＫボタン１０８が操作されることで、プリンタ５０による通常のラベル印刷処理の設定が完了する。
【００２９】
また、ドライバ対応第１設定画面１００だけでなく、図８に示すドライバ対応第２設定画面１１２においても、通常のラベル印刷処理の設定を行うことが可能である。詳しくは、アドバンスタブ１０９が操作されることで、プリンタドライバ２８は、ドライバ対応第２設定画面１１２をＬＣＤ１６に表示する。ドライバ対応第２設定画面１１２には、画調を設定するためのラジオボタン１１４、明度を設定するための第１スライダ１１５、コントラストを設定するための第２スライダ１１６などが表示されている。そして、ドライバ対応第２設定画面１１２において、ラジオボタン１１４等が操作され、各種設定がされた後に、ＯＫボタン１０８が操作されることで、プリンタ５０による通常のラベル印刷処理の設定が完了する。なお、プリンタ５０による通常のラベル印刷処理については、後に詳しく説明する。
【００３０】
また、クロップ印刷タブ１１８が操作されると、プリンタドライバ２８は、図９に示すドライバ対応第３設定画面１２０をＬＣＤ１６に表示する。ドライバ対応第３設定画面１２０は、プリンタ５０によるクロップ印刷処理の印刷設定情報の入力を行うための画面であり、ドライバ対応第３設定画面１２０には、クロップ印刷処理が有効であることを示すクロップ印刷設定情報を入力するためのチェックボックス１２２、印刷用紙のサイズを示す設定情報を入力するためのサイズ設定ボタン１２４、クロップ印刷処理により印刷される用紙６０のイメージ画像１２６等が表示される。なお、クロップ印刷処理は、上述したように、サーバ５４から取得したバーコード画像データを含む画像データから、バーコード画像データを抽出し、その抽出したバーコード画像データに基づくバーコード画像７２を、プリンタ５０において、用紙６０の商品ラベル７０に印刷するための印刷処理である。
【００３１】
詳しくは、ドライバ対応第３設定画面１２０において、ユーザは、クロップ印刷処理の実行を望む場合に、チェックボックス１２２に対してチェックを入れるための操作をする。これにより、クロップ印刷処理が有効とされる。そして、ユーザは、サイズ設定ボタン１２４に対して操作し、印刷用紙のサイズを示す設定情報を入力する。なお、サイズ設定ボタン１２４では、ラベルサイズの用紙６２を示す設定情報のみを入力することが可能とされている。このように、ドライバ対応第３設定画面１２０においてチェックボックス１２２等が操作され、各種印刷設定情報の入力がされた後に、ＯＫボタン１０８が操作されることで、プリンタ５０によるクロップ印刷処理に関する設定情報の入力が完了する。
【００３２】
また、ドライバ対応第1設定画面１００およびドライバ対応第２設定画面１１２において入力された印刷設定情報も、クロップ印刷処理において使用される。
【００３３】
ただし、クロップ印刷処理が有効とされた場合において、ドライバ対応第２設定画面１１２のラジオボタン１１４はグレーアウトとされ、ユーザ操作の対象から外される。これは、クロップ印刷処理は、バーコード画像７２を商品ラベル７０に印刷するための処理であり、バーコード画像７２を印刷するために適した画調が予め設定されており、任意に印刷画調を変更することが望ましくないためである。なお、クロップ印刷処理が有効とされた場合であっても、ドライバ対応第２設定画面１１２の第１スライダ１１５及び第２スライダ１１６は、ユーザ操作の対象から外されない。このため、クロップ印刷処理時の印刷設定として、明度，コントラストを変更するとは可能である。
【００３４】
また、クロップ印刷処理が有効とされた場合には、図７に示すドライバ対応第１設定画面１００において、サイズ設定ボタン１０２とミラー設定ボタン１０４とトリム設定ボタン１０６とが、グレーアウトとされ、ユーザ操作の対象から外される。これは、印刷用紙のサイズは、ドライバ対応第３設定画面１２０において設定されており、ドライバ対応第１設定画面１００において印刷用紙のサイズを変更することは望ましくないためである。また、ミラー印刷処理は、画像を鏡に映したように反転させて印刷する処理であり、バーコード画像７２が反転して印刷されると、バーコードの読み取りができない虞があり、バーコード画像７２の印刷処理に適さないためである。また、トリム印刷処理は、画像の端部の空白部を除去して印刷する処理である。このため、バーコード画像７２に含まれるバーコードの端部の空白部が除去されると、バーコードの読み取りができない虞があり、バーコード画像７２の印刷処理に適さないためである。
【００３５】
そして、ドライバ対応第３設定画面１２０においてチェックボックス１２２及びサイズ設定ボタン１２４に対して操作され、クロップ印刷処理が有効とされた後、若しくは、クロップ印刷処理が有効とされ、ドライバ対応第２設定画面１１２において第１スライダ１１５等に対して操作された後に、ＯＫボタン１０８が操作されることで、プリンタドライバ２８は、図１０（ａ）に示すＤｅｖＭｏｄｅ１３０を制御プログラム２６に出力する。
【００３６】
ＤｅｖＭｏｄｅ１３０は、ドライバ対応第１設定画面１００，ドライバ対応第２設定画面１１２，ドライバ対応第３設定画面１２０において入力された印刷設定情報を示す情報であり、Ｐｕｂｌｉｃ領域１３２とＰｒｉｖａｔｅ領域１３４とにより構成されている。Ｐｕｂｌｉｃ領域１３２には、ｄｍｐａｐｅｒｓｉｚｅとｗｉｄｔｈとｈｅｉｇｈｔとが含まれ、Ｐｒｉｖａｔｅ領域１３４には、ｏｕｔｐａｐｅｒｓｉｚｅとｗｉｄｔｈとｈｅｉｇｈｔとクロップ印刷処理情報とミラー印刷処理情報とトリム印刷処理情報とが含まれる。
【００３７】
Ｐｕｂｌｉｃ領域１３２に含まれるｄｍｐａｐｅｒｓｉｚｅは、印刷対象の１以上のバーコード画像７２を含む画像の用紙サイズを示すＩＤナンバーであり、Ｐｕｂｌｉｃ領域１３２に含まれるｗｉｄｔｈとｈｅｉｇｈｔとは、そのＩＤナンバーに応じた用紙サイズの具体的な寸法である。また、Ｐｒｉｖａｔｅ領域１３４に含まれるｏｕｔｐａｐｅｒｓｉｚｅは、印刷用紙のサイズを示すＩＤナンバーであり、Ｐｒｉｖａｔｅ領域１３４に含まれるｗｉｄｔｈとｈｅｉｇｈｔとは、そのＩＤナンバーに応じた用紙サイズの具体的な寸法である。
【００３８】
ちなみに、ＩＤナンバー「２６１」は、Ａ４サイズの用紙とＬｅｔｔｅｒサイズの用紙とを包含する用紙サイズ（本発明の第１サイズの一例）を示している。詳しくは、図１１に示すように、Ａ４サイズの用紙１４０の寸法は、２１０ｍｍ×２９７ｍｍであり、Ｌｅｔｔｅｒサイズの用紙１４２の寸法は、２１５．９ｍｍ×２７９．４ｍｍである。このため、Ａ４サイズの用紙１４０とＬｅｔｔｅｒサイズの用紙１４２とを包含する用紙１４４の寸法は、２１５．９ｍｍ×２９７ｍｍとなり、ＩＤナンバー「２６１」は、その寸法の用紙サイズ（以下、「Ａ４Ｌｅｔｔｅｒサイズ」と記載する）を示している。また、ＩＤナンバー「２６０」は、６２ｍｍ×２９ｍｍの用紙サイズを示している。
【００３９】
つまり、図１０（ａ）に示すＤｅｖＭｏｄｅ１３０は、印刷対象の１以上のバーコード画像７２を含む画像の用紙サイズがＡ４Ｌｅｔｔｅｒサイズであり、印刷用紙のサイズが６２ｍｍ×２９ｍｍの用紙サイズ、つまり、プリンタ５０において印刷可能なラベルサイズの用紙サイズであることを示している。
【００４０】
また、Ｐｒｉｖａｔｅ領域１３４に含まれるクロップ印刷処理情報は、ドライバ対応第３設定画面１２０において入力された印刷設定情報、つまり、チェックボックス１２２に対する操作により入力された印刷設定情報を示す情報である。なお、図１０（ａ）に示すＤｅｖＭｏｄｅ１３０は、クロップ印刷処理が有効とされた場合に出力されるものである。このため、図１０（ａ）に示すＤｅｖＭｏｄｅ１３０において、Ｐｒｉｖａｔｅ領域１３４に含まれるクロップ印刷処理情報はＯＮとされる。つまり、図１０（ａ）に示すＤｅｖＭｏｄｅ１３０において、クロップ印刷処理が設定されていることを示している。
【００４１】
また、Ｐｒｉｖａｔｅ領域１３４に含まれるミラー印刷処理情報とトリム印刷処理情報とは、ドライバ対応第１設定画面１００において入力された印刷設定情報、つまり、ミラー設定ボタン１０４およびトリム設定ボタン１０６に対する操作により入力された印刷設定情報を示す情報である。なお、図１０（ａ）に示すＤｅｖＭｏｄｅ１３０は、クロップ印刷処理が有効とされた場合に出力されるものであり、クロップ印刷処理が有効とされた場合において、ミラー設定ボタン１０４とトリム設定ボタン１０６とはユーザ操作の対象から外される。つまり、クロップ印刷処理が有効とされた場合において、ミラー印刷処理及びトリム印刷処理を実行するための状態に設定できない。このため、図１０（ａ）に示すＤｅｖＭｏｄｅ１３０において、Ｐｒｉｖａｔｅ領域１３４に含まれるミラー印刷処理情報とトリム印刷処理情報とはＯＦＦとされる。つまり、図１０（ａ）に示すＤｅｖＭｏｄｅ１３０において、ミラー印刷処理とトリム印刷処理との両方とも、設定されていないことを示している。
【００４２】
制御プログラム２６は、印刷命令を、ＯＳ３２を介して、プリンタドライバ２８に出力する。例えば、アプリ対応設定画面８６において印刷ボタン８８が操作されたときに、制御プログラム２６は、印刷命令をプリンタドライバ２８に出力する。このとき、ＰＤＦ形式の画像データを基に、プリンタドライバ２８が解釈可能なラスター形式の画像データに変換された画像データ（本発明の第１画像データの一例）が、印刷命令と、プリンタドライバ２８から受け付けたＤｅｖＭｏｄｅ１３０と共に、プリンタドライバ２８に出力される。また、このとき、ＰＤＦ形式の画像データは、制御プログラムがプリンタドライバ２８から受け取ったＤｅｖＭｏｄｅ１３０に従って、ｄｍｐａｐｅｒｓｉｚｅの用紙に応じたサイズの画像を示す画像データに変換されている。すなわち、サーバ５４が作成した、Ａ４サイズの用紙６２の商品ラベル７０にバーコード画像７２を合わせた状態のＰＤＦデータを、図１０（ａ）に示すＤｅｖＭｏｄｅ１３０を受け付けた制御プログラム２６が出力する場合には、Ａ４Ｌｅｔｔｅｒサイズの画像を示す、ラスター形式の画像データに変換された画像データがプリンタドライバ２８に出力される。なお、サーバ５４が作成したＡ４サイズの画像を示すＰＤＦ形式の画像データは、拡大・縮小されることなく、Ａ４Ｌｅｔｔｅｒサイズの画像を示す画像データに変換される。なお、サーバ５４が作成したＬｅｔｔｅｒサイズの画像データも、拡大・縮小されることなく、Ａ４Ｌｅｔｔｅｒサイズの画像を示す画像データに変換される。
【００４３】
なお、アプリ対応設定画面８６において、プロパティボタン９２が操作されたとき以外のタイミングで、プリンタドライバ２８に対する印刷設定情報の入力が行われた場合にも、制御プログラム２６は、プリンタドライバ２８からＤｅｖＭｏｄｅ１３０を受け取った後のタイミングで、ＯＳ３２を介して、プリンタドライバ２８に画像データを出力する。
【００４４】
続いて、プリンタドライバ２８は、印刷命令などを制御プログラム２６から受け付けると、印刷命令と共に受け付けたベクター形式の画像データを、ビットマップ形式の画像データに変換することをＯＳ３２に依頼する。ＯＳ３２は、その依頼を受け付けると、ベクター形式の画像データをビットマップ形式の画像データに変換する。
【００４５】
次に、プリンタドライバ２８は、印刷命令と共に受け付けたＤｅｖＭｏｄｅ１３０、つまり、図１０（ａ）に示すＤｅｖＭｏｄｅ１３０に基づいて、制御プログラム２６から受け付けた印刷命令の対象となる印刷処理が、クロップ印刷処理であるか否かを判断する。ＤｅｖＭｏｄｅ１３０のＰｒｉｖａｔｅ領域１３４には、上述したように、クロップ印刷処理情報が含まれており、クロップ印刷処理情報がＯＮとされている場合に、クロップ印刷処理は有効であり、クロップ印刷処理情報がＯＦＦとされている場合に、クロップ印刷処理は無効である。これにより、ＤｅｖＭｏｄｅ１３０に基づいて、印刷命令の対象となる印刷処理が、クロップ印刷処理であるか否かが判断される。
【００４６】
そして、制御プログラム２６から受け付けたＤｅｖＭｏｄｅ１３０に基づいて、制御プログラム２６から受け付けた印刷命令の対象となる印刷処理が、クロップ印刷処理であると判断されると、ＤｅｖＭｏｄｅ１３０のＰｕｂｌｉｃ領域１３２に含まれるｄｍｐａｐｅｒｓｉｚｅがＡ４Ｌｅｔｔｅｒサイズであるか否かが判断される。そして、ｄｍｐａｐｅｒｓｉｚｅがＡ４Ｌｅｔｔｅｒサイズである場合に、プリンタドライバ２８は、ＯＳ３２により変換されたビットマップ形式の画像データからバーコード画像７２を示す画像データ（本発明の第２画像データの一例）を抽出する。
【００４７】
詳しくは、プリンタドライバ２８は、まず、ビットマップ形式の画像データを解析し、バーコードを示す画像データとしての特徴を持つ特徴データを検出する。そして、検出した特徴データが示す画像の位置を示す位置情報を、バーコード画像７２に含まれるバーコード７４の位置を示す位置情報として取得する。そして、ビットマップ形式の画像データに基づく画像の所定の角の座標からの、バーコード７４のオフセット量を演算する。また、プリンタドライバ２８には、バーコード画像７２の幅寸法および高さ寸法が予め入力されている。そこで、プリンタドライバ２８は、バーコード７４のオフセット量と、バーコード画像７２の幅寸法および高さ寸法とに基づいて、ビットマップ形式の画像データに基づく画像から、バーコード画像７２を切り出すための領域（以下、「クロップ領域」と記載する）を特定する。そして、プリンタドライバ２８は、ビットマップ形式の画像データからクロップ領域の画像データを抽出する。これにより、バーコード画像７２の画像データが抽出される。なお、特徴データが複数検出された場合、プリンタドライバ２８は、検出された特徴データそれぞれに対応する、複数のバーコード画像７２の画像データを抽出する。また、プリンタドライバ２８は、抽出されたバーコード画像７２の数を示すデータをメモリ１４に記憶する。
【００４８】
次に、バーコード画像７２の画像データが抽出されると、プリンタドライバ２８は、そのバーコード画像７２が、そのバーコード画像７２の印字領域に収まるか否かを判断する。詳しくは、まず、バーコード画像７２の印字領域が、制御プログラム２６から受け付けたＤｅｖＭｏｄｅ１３０のＰｒｉｖａｔｅ領域１３４に含まれるｏｕｔｐｕｔｐａｐｅｒｓｉｚｅに基づいて特定される。例えば、図１０（ａ）に示すＤｅｖＭｏｄｅ１３０において、ｏｕｔｐｕｔｐａｐｅｒｓｉｚｅはＩＤナンバー「２６０」であり、印刷用紙サイズが６２ｍｍ×２９ｍｍの用紙サイズである。そして、ＩＤナンバーと、そのＩＤナンバーに応じた用紙サイズでの印字領域とが関連付けられている。このため、ＩＤナンバー「２６０」に応じた印字領域が特定される。そして、バーコード画像７２が特定された印字領域に収まるか否かが判断される。
【００４９】
この際、バーコード画像７２が印字領域に収まらないと判断された場合に、バーコード画像７２が、６２ｍｍ×２９ｍｍの用紙、つまり、図９に示すドライバ対応第３設定画面１２０で入力されたサイズの用紙からはみ出す。このため、エラー処理、例えば、クロップ印刷できないことを示すエラー画面の表示などが行われる。一方、バーコード画像７２が印字領域に収まると判断された場合に、バーコード画像７２のバーコード７４の縞模様状の線の延びる方向を、印刷時における副走査方向とした場合に、バーコード画像７２が印字領域に収まるか否かが判断される。
【００５０】
この際、バーコード画像７２が印字領域に収まると判断されると、プリンタドライバ２８は、印刷用紙サイズの印字領域、つまり、６２ｍｍ×２９ｍｍの用紙サイズの印字領域に、バーコード画像７２が配置されるように、画像データを作成する。次に、プリンタドライバ２８は、その画像データをプリンタ５０において印刷可能な形式の画像データ、例えば、ベクター形式の画像データに変換し、印刷用の画像データ（以下、「印刷用画像データ」と記載する）（本発明の第１印刷データの一例）を作成する。この際、１のバーコード画像７２が、２以上の６２ｍｍ×２９ｍｍの用紙に亘って配置することなく、１の６２ｍｍ×２９ｍｍの用紙に配置され、その１のバーコード画像７２の配置された画像を印刷するための印刷用画像データが作成される。
【００５１】
そして、プリンタドライバ２８は、印刷用画像データをプリンタ５０に出力する。このため、プリンタ５０において、印刷用画像データに基づく印刷処理が実行された場合に、バーコード画像７２のバーコード７４の縞模様状の線が副走査方向に延びた状態で、印刷される。これにより、印刷時におけるバーコード７４の縞模様状の線のズレ等を防止することが可能となり、バーコード７４を適切に印刷することが可能となる。
【００５２】
また、バーコード画像７２のバーコード７４の縞模様状の線の延びる方向を、印刷時における副走査方向とした場合に、バーコード画像７２が印字領域に収まらないと判断されると、プリンタドライバ２８は、バーコード画像７２の回転処理を実行する。この際、バーコード画像７２は、９０度、回転した状態とされる。次に、プリンタドライバ２８は、印刷用紙サイズの印字領域、つまり、６２ｍｍ×２９ｍｍの用紙サイズの印字領域に、回転処理されたバーコード画像７２が配置されるように、画像データを作成する。そして、プリンタドライバ２８は、その画像データをプリンタ５０において印刷可能な形式の画像データ、例えば、ベクター形式の画像データに変換し、印刷用画像データを作成する。そして、プリンタドライバ２８は、印刷用画像データをプリンタ５０に出力する。
【００５３】
以上の処理によりクロップ印刷処理が実行される。つまり、クロップ印刷処理では、ＰＣ１０が、バーコード画像７２が３列７行に配置された商品ラベル７０に合わせた状態の画像データを取得すると、その画像データから、バーコード画像７２の画像データを抽出する。そして、ＰＣ１０は、抽出されたバーコード画像７２がラベルサイズの用紙に印刷されるように、印刷用画像データを作成し、プリンタ５０において、ラベルサイズの用紙にバーコード画像７２が印刷される。この際、プリンタ５０では、１枚のラベルサイズの用紙に、１のバーコード画像７２が印刷される。
【００５４】
つまり、クロップ印刷処理が実行されることで、プリンタ５０では、１０枚のラベルサイズの用紙に、１０のバーコード画像７２が印刷される。一方、プリンタ５２では、３列７行に配置された２１枚の商品ラベル７０を含む用紙（図５（ａ）参照）６２に１０のバーコード画像７２が印刷される場合に、１１枚の商品ラベル７０が無駄となっていた。一方、プリンタ５０では、ラベルサイズの用紙、つまり、商品ラベル７０を１枚も無駄にすることなく、１０のバーコード画像７２を印刷することが可能である。このように、クロップ印刷処理を実行することで、商品ラベル７０の浪費を抑制することが可能となる。
【００５５】
なお、クロップ印刷処理が上述した手順に従って設定されている際に、制御プログラム２６の実行により、ＧｅｔＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ等のＡＰＩ呼び出しが、プリンタドライバ２８に出力される場合がある。このような場合に、プリンタドライバ２８は、ケーパビリティ情報として、設定可能な用紙サイズがＡ４Ｌｅｔｔｅｒサイズであることを示す情報を、制御プログラム２６に出力する。なお、クロップ印刷処理が設定されていない場合に、プリンタドライバ２８が、ＧｅｔＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ等のＡＰＩ呼び出しを受け付けると、上述したように、ケーパビリティ情報として、設定可能な用紙サイズが６２ｍｍ×２９ｍｍ等のラベルサイズであることを示す情報を、制御プログラム２６に出力する。
【００５６】
また、プリンタ５０では、クロップ印刷処理でなく、通常の印刷処理、つまり、先に説明した通常のラベル印刷処理も行うことが可能である。詳しくは、図７に示すドライバ対応第１設定画面１００において、ユーザは、サイズ設定ボタン１０２に対して操作をすることで、印刷用紙サイズを選択する。また、ラベル印刷処理において、ユーザが、ミラー印刷処理，トリム印刷処理の実行を望む場合には、ミラー設定ボタン１０４，トリム設定ボタン１０６に対し操作をすることで、ミラー印刷処理，トリム印刷処理の設定を行う。そして、各種印刷設定情報の入力がされた後に、ＯＫボタン１０８が操作されることで、プリンタドライバ２８は、図１０（ｂ）に示すＤｅｖＭｏｄｅ１３０を、制御プログラム２６に出力する。
【００５７】
なお、図１０（ｂ）に示すＤｅｖＭｏｄｅ１３０では、Ｐｕｂｌｉｃ領域１３２のｄｍｐａｐｅｒｓｉｚｅは、ドライバ対応第１設定画面１００のサイズ設定ボタン１０２で選択された印刷用紙サイズを示すＩＤナンバーとされている。具体的には、６２ｍｍ×２９ｍｍのラベルサイズの用紙を示すＩＤナンバー「２６０」とされている。そして、Ｐｕｂｌｉｃ領域１３２のｗｉｄｔｈとｈｅｉｇｈｔとは、そのＩＤナンバーに応じた用紙サイズの具体的な寸法とされている。また、Ｐｒｉｖａｔｅ領域１３４のｏｕｔｐｕｔｐａｐｅｒｓｉｚｅは、Ｐｕｂｌｉｃ領域１３２のｄｍｐａｐｅｒｓｉｚｅと同じＩＤナンバー、つまり、「２６０」とされており、Ｐｒｉｖａｔｅ領域１３４のｗｉｄｔｈとｈｅｉｇｈｔとは、そのＩＤナンバーに応じた用紙サイズの具体的な寸法とされている。
【００５８】
さらに、Ｐｒｉｖａｔｅ領域１３４のクロップ印刷処理情報はＯＦＦとされている。これは、ドライバ対応第１設定画面１００において入力される印刷設定情報は、クロップ印刷処理の設定情報でなく、通常のラベル印刷処理の設定情報であるためである。なお、Ｐｒｉｖａｔｅ領域１３４のミラー印刷処理情報および、トリム印刷処理情報は、ドライバ対応第１設定画面１００でのミラー設定ボタン１０４，トリム設定ボタン１０６への操作に応じて、ＯＮ若しくはＯＦＦとされている。
【００５９】
図１０（ｂ）に示すＤｅｖＭｏｄｅ１３０を受け付けた制御プログラム２６が印刷命令を出力する場合には、制御プログラム２６は、ＤｅｖＭｏｄｅ１３０のＰｕｂｌｉｃ領域１３２に含まれるｄｍｐａｐｅｒｓｉｚｅ、つまり、６２ｍｍ×２９ｍｍのラベルサイズ画像を示すベクター形式の画像データと、図１０（ｂ）に示すＤｅｖＭｏｄｅ１３０と、印刷命令とを、ＯＳ３２を介して、プリンタドライバ２８に出力する。
【００６０】
図１０（ｂ）に示すＤｅｖＭｏｄｅ１３０を制御プログラム２６に受け渡したプリンタドライバ２８は、印刷命令と、図１０（ｂ）に示すＤｅｖＭｏｄｅ１３０と、６２ｍｍ×２９ｍｍのラベルサイズ画像を示すベクター形式の画像データなどを制御プログラム２６から受け付けることになる。
【００６１】
次に、プリンタドライバ２８は、制御プログラム２６から受け付けたＤｅｖＭｏｄｅ１３０、つまり、図１０（ｂ）に示すＤｅｖＭｏｄｅ１３０に基づいて、制御プログラム２６から受け付けた印刷命令の対象となる印刷処理が、クロップ印刷処理であるか否かを判断する。この際、図１０（ｂ）に示すＤｅｖＭｏｄｅ１３０では、クロップ印刷処理情報がＯＦＦとされているので、印刷命令の対象となる印刷処理はクロップ印刷処理でないと判断される。
【００６２】
そして、印刷命令の対象となる印刷処理が、クロップ印刷処理でないと判断されると、ＤｅｖＭｏｄｅ１３０のＰｕｂｌｉｃ領域１３２に含まれるｄｍｐａｐｅｒｓｉｚｅがラベルサイズであるか否かが判断される。そして、ｄｍｐａｐｅｒｓｉｚｅがラベルサイズである場合に、プリンタドライバ２８は、ＯＳ３２により変換されたビットマップ形式の画像データを、プリンタ５０において印刷可能な形式の画像データ、例えば、ベクター形式の画像データに変換し、印刷用画像データを作成する。そして、プリンタドライバ２８は、印刷用画像データをプリンタ５０に出力し、プリンタ５０において、出力された印刷用画像データに基づく印刷処理が実行されることで、通常のラベル印刷処理が完了する。
【００６３】
なお、ＰＤＦデータが示す画像にバーコード画像７２が１つだけ含まれている場合に、プリンタドライバ２８が作成する印刷用画像データが示す画像に含まれるバーコード画像の数と、ＰＤＦデータが示す画像に含まれるバーコード画像の数とが同数になることがあるが、あくまで例外的な場合である。通常は、ＰＤＦデータが示す画像に含まれるバーコード画像７２の数よりも、プリンタドライバ２８が作成する印刷用画像データが示す画像に含まれるバーコード画像の数のほうが少ない。
【００６４】
＜プリンタドライバの処理＞
上記クロップ印刷処理及び、通常のラベル印刷処理は、ＰＣ１０のＣＰＵ１２においてプリンタドライバ２８が実行されることによって行われる。以下に、図１２乃至図１５を用いて、プリンタドライバ２８のフローが実行される際の処理を説明する。
【００６５】
本フローでは、制御プログラム２６が、バーコード画像表示画面８０の表示によるＡＰＩ呼び出しを出力すると、プリンタドライバ２８は、図１２に示すように、そのＡＰＩ呼び出しを受け付ける（Ｓ１００）。そして、プリンタドライバ２８は、ＡＰＩ呼び出しを受け付けた際に、図９に示すドライバ対応第３設定画面１２０においてクロップ印刷処理が設定されているか否かを判断する（Ｓ１０２）。
【００６６】
この際、クロップ印刷処理が設定されている場合（Ｓ１０２：ＹＥＳ）に、プリンタドライバ２８は、設定可能な用紙サイズとして、Ａ４Ｌｅｔｔｅｒサイズを示すケーパビリティ情報を、制御プログラム２６に出力する（Ｓ１０４）。そして、図１２に示すフローが終了する。一方、クロップ印刷処理が設定されていない場合（Ｓ１０２：ＮＯ）に、プリンタドライバ２８は、設定可能な用紙サイズとして、ラベルサイズを示すケーパビリティ情報を、制御プログラム２６に出力する（Ｓ１０６）。そして、図１２に示すフローが終了する。
【００６７】
また、プリンタドライバ２８のフローでは、制御プログラム２６がアプリ対応設定画面８６のプロパティボタン９２への操作によるＡＰＩ呼び出しを出力すると、プリンタドライバ２８は、図１３に示すように、そのＡＰＩ呼び出しを受け付ける（Ｓ１１０）。そして、プリンタドライバ２８は、ＡＰＩ呼び出しを受け付けると、ドライバ対応第１設定画面１００をＬＣＤ１６に表示する（Ｓ１１２）。また、クロップ印刷タブ１１８等への操作により、プリンタドライバ２８は、ドライバ対応第２設定画面１１２若しくは、ドライバ対応第３設定画面１２０をＬＣＤ１６に表示する（Ｓ１１２）。
【００６８】
そして、ドライバ対応第１〜３設定画面においてＯＫボタン１０８が操作されると、プリンタドライバ２８は、そのＯＫボタン１０８の操作を受け付ける（Ｓ１１４）。次に、プリンタドライバ２８は、ＯＫボタン１０８の操作を受け付けた際に、クロップ印刷処理が設定されているか否かを判断する（Ｓ１１６）。
【００６９】
この際、クロップ印刷処理が設定されている場合（Ｓ１１６：ＹＥＳ）に、プリンタドライバ２８は、図１０（ａ）に示すＤｅｖＭｏｄｅ１３０、つまり、ｄｍｐａｐｅｒｓｉｚｅとして、Ａ４Ｌｅｔｔｅｒサイズを示すＤｅｖＭｏｄｅ１３０を、制御プログラム２６に出力する（Ｓ１１８）。そして、図１３に示すフローが終了する。一方、クロップ印刷処理が設定されていない場合（Ｓ１１６：ＮＯ）に、図１０（ｂ）に示すＤｅｖＭｏｄｅ１３０、つまり、ｄｍｐａｐｅｒｓｉｚｅとして、ラベルサイズを示すＤｅｖＭｏｄｅ１３０を、制御プログラム２６に出力する（Ｓ１２０）。そして、図１３に示すフローが終了する。
【００７０】
また、プリンタドライバ２８のフローでは、制御プログラム２６が印刷命令，画像データ，ＤｅｖＭｏｄｅ１３０を出力すると、プリンタドライバ２８は、図１４に示すように、それら印刷命令，画像データ，ＤｅｖＭｏｄｅ１３０を受け付ける（Ｓ１３０）。次に、プリンタドライバ２８は、ベクター形式の画像データをビットマップ形式の画像データに変換することをＯＳ３２に依頼する（Ｓ１３２）。そして、プリンタドライバ２８は、ＯＳ３２からビットマップ形式の画像データを受け付ける（Ｓ１３４）。
【００７１】
次に、プリンタドライバ２８は、Ｓ１３０で受け付けたＤｅｖＭｏｄｅ１３０に基づいて、印刷命令の対象となる印刷処理がクロップ印刷処理であるか否かを判断する（Ｓ１３６）。この際、印刷命令の対象となる印刷処理がクロップ印刷処理である場合（Ｓ１３６：ＹＥＳ）に、プリンタドライバ２８は、Ｓ１３０で受け付けたＤｅｖＭｏｄｅ１３０のＰｕｂｌｉｃ領域１３２のｄｍｐａｐｅｒｓｉｚｅがＡ４Ｌｅｔｔｅｒサイズであるか否かを判断する（Ｓ１３８）。
【００７２】
Ｐｕｂｌｉｃ領域１３２のｄｍｐａｐｅｒｓｉｚｅがＡ４Ｌｅｔｔｅｒサイズである場合（Ｓ１３８：ＹＥＳ）に、プリンタドライバ２８は、Ｓ１３４で受け付けたビットマップ形式の画像データからバーコード画像７２を抽出する（Ｓ１４０）。次に、プリンタドライバ２８は、ビットマップ形式の画像データからバーコード画像７２が抽出されたか否かを、メモリ１４に記憶された、抽出されたバーコード画像７２の数を示すデータに基づいて判断する（Ｓ１４２）。そして、プリンタドライバ２８は、バーコード画像７２が抽出されていると判断した場合（Ｓ１４２：ＹＥＳ）に、未処理の抽出済みのバーコード画像７２があるか否かを判断する（Ｓ１４３）。具体的には、抽出済みのバーコード画像７２のうちに、後述するＳ１４４〜Ｓ１５４の対象になっていない画像データがあるか否かを判断する。そして、未処理の抽出済みのバーコード画像７２がある場合（Ｓ１４３：ＹＥＳ）に、プリンタドライバ２８は、その抽出されたバーコード画像７２が用紙の印字領域に収まるか否かを判断する（Ｓ１４４）。
【００７３】
抽出されたバーコード画像７２が用紙の印字領域に収まると判断された場合（Ｓ１４４：ＹＥＳ）に、プリンタドライバ２８は、バーコード画像７２のバーコード７４の線の延びる方向を副走査方向として、バーコード画像７２が用紙の印字領域に収まるか否かを判断する（Ｓ１４６）。バーコード７４の線の延びる方向を副走査方向として、バーコード画像７２が用紙の印字領域に収まる場合（Ｓ１４６：ＹＥＳ）に、Ｓ１４８に進む。また、バーコード７４の線の延びる方向を副走査方向として、バーコード画像７２が用紙の印字領域に収まらない場合（Ｓ１４６：ＮＯ）に、プリンタドライバ２８は、バーコード画像７２の回転処理を行う（Ｓ１５０）。そして、Ｓ１４８に進む。
【００７４】
Ｓ１４８では、プリンタドライバ２８は、バーコード画像７２を用紙の印字領域に配置する（Ｓ１４８）。そして、プリンタドライバ２８は、印刷用画像データを作成する（Ｓ１５２）。続いて、プリンタドライバ２８は、印刷用画像データをプリンタ５０に送信する（Ｓ１５４）。これにより、図１４及び図１５に示すフローが終了する。
【００７５】
すなわち、Ｓ１４４〜Ｓ１５４でバーコード１個の印刷用画像データが作成され、プリンタに送信されます。そして、Ｓ１４２でＮｏになるまで、１０回、Ｓ１４４〜Ｓ１５４の処理が繰り返される。これにより、１０個のバーコード画像７２が印刷される。また、Ｓ１５４で印刷用画像データがプリンタに送信されると、プリンタは、図５（ｂ）に示されるラベル７０を１つだけ印刷して、用紙を搬送する。そして、Ｓ１５４による処理、つまり、バーコード１個の印刷用画像データの送信が複数回繰り返されることで、プリンタによる１枚のラベル印刷及び用紙搬送が繰り返されて、図５（ｂ）に示されるように、ラベルが１列にならんだ状態で印刷されることになる。
【００７６】
また、Ｓ１３６で印刷命令の対象となる印刷処理がクロップ印刷処理でない場合（Ｓ１３６：ＮＯ）、つまり、印刷命令の対象となる印刷処理が通常のラベル印刷処理である場合に、プリンタドライバ２８は、Ｓ１３０で受け付けたＤｅｖＭｏｄｅ１３０のＰｕｂｌｉｃ領域１３２のｄｍｐａｐｅｒｓｉｚｅがラベルサイズであるか否かを判断する（Ｓ１５６）。Ｐｕｂｌｉｃ領域１３２のｄｍｐａｐｅｒｓｉｚｅがラベルサイズである場合（Ｓ１５６：ＹＥＳ）に、Ｓ１５２以降の処理が実行され、図１４及び図１５に示すフローが終了する。
【００７７】
また、Ｓ１３８でＰｕｂｌｉｃ領域１３２のｄｍｐａｐｅｒｓｉｚｅがラベルサイズである場合（Ｓ１３８：ＮＯ）、Ｓ１４２でビットマップ形式の画像データからバーコード画像７２が抽出されない場合（Ｓ１４２：ＮＯ）、Ｓ１４３で未処理の抽出済みのバーコード画像７２が無い場合（Ｓ１４３：ＮＯ）、Ｓ１４４でバーコード画像７２が用紙の印字領域に収まらない場合（Ｓ１４４：ＮＯ）、Ｓ１５６でＰｕｂｌｉｃ領域１３２のｄｍｐａｐｅｒｓｉｚｅがＡ４Ｌｅｔｔｅｒサイズである場合（Ｓ１５６：ＮＯ）に、エラー処理が実行される（Ｓ１５８）。そして、図１４及び図１５に示すフローが終了する。
【００７８】
なお、Ｓ１１２を実行するＣＰＵ１２は、表示制御手段の一例である。Ｓ１１８を実行するＣＰＵ１２は、第１出力手段，第３出力手段，第４出力手段の一例である。Ｓ１２０を実行するＣＰＵ１２は、第２出力手段の一例である。Ｓ１３０を実行するＣＰＵ１２は、画像データ受付手段の一例である。Ｓ１４０を実行するＣＰＵ１２は、抽出手段の一例である。Ｓ１５２を実行するＣＰＵ１２は、作成手段の一例である。Ｓ１５４を実行するＣＰＵ１２は、送信手段の一例である。
【００７９】
＜実施例の効果＞
上記した実施形態によれば、以下の効果を奏する。
【００８０】
前記第１サイズは、前記第１数の前記第１オブジェクトをＭ列で配置することが可能な用紙サイズであり、前記作成手段は、前記第２数の前記第１オブジェクトを前記第２サイズの用紙に、前記Ｍ列より少ないＮ列で配置して印刷するための第１印刷データを作成する。これにより、少ない列数の用紙に第一オブジェクトを印刷することができる。
【００８１】
前記第２サイズは、切断可能なテープ状の用紙において、前記第２数の前記第１オブジェクトが印刷された後に切断された場合の用紙サイズである。これにより、印刷されていない用紙を再活用できる。
【００８２】
前記作成手段は、前記抽出手段により抽出された前記第２画像データに基づく１の前記第１オブジェクトを、２枚以上の前記第２サイズの用紙に亘って配置することなく、１枚の前記第２サイズの用紙に配置して印刷するための前記第１印刷データを作成する。これにより、１枚の第２サイズの用紙にのみ第１オブジェクトを印刷できる。
【００８３】
前記第１オブジェクトは、バーコードを含むオブジェクトであり、前記抽出手段は、前記第１画像データに含まれる前記バーコードの描画領域を検出し、検出された領域を含む所定の領域から前記第２画像データを抽出する。これにより、第１オブジェクトとして、バーコードを適切に印刷できる。
【００８４】
前記情報処理装置は、ユーザ操作を受け付ける操作受付インタフェースを備え、前記コンピュータを、前記第１オブジェクトを前記第２サイズの用紙に印刷することを示す操作である第１操作を前記操作受付インタフェースが受け付けたことに応じて、前記第１サイズの画像を示す画像データの要求を出力する第１出力手段として機能させ、前記画像データ受付手段は、前記第１出力手段による前記第１サイズの画像を示す画像データの要求の出力に応じて、前記アプリケーションから前記第１サイズの画像を示す画像データを受け付ける。これにより、情報処理装置が、全ての第１オブジェクトを含む画像の画像データを取得できる。
【００８５】
前記コンピュータを、前記第１操作と異なる操作であって、前記第２サイズの用紙に印刷することを示す操作である第２操作を前記操作受付インタフェースが受け付けたことに応じて、前記第２サイズの画像を示す画像データの要求を出力する第２出力手段として機能させ、前記画像データ受付手段は、前記第２出力手段による前記第２サイズの画像を示す画像データの要求の出力に応じて、前記アプリケーションから前記第２サイズの画像を示す画像データを受け付け、前記送信手段は、前記画像データ受付手段により受け付けられた前記第２サイズの画像を示す画像データを前記第２サイズの用紙に印刷するための第２印刷データを、前記通信インタフェースを介して、前記プリンタに送信する。これにより、第２サイズを用いた通常の印刷を行うことができる。
【００８６】
前記コンピュータを、前記第２操作を前記操作受付インタフェースが受け付けた場合に実行可能な印刷設定情報のうちの予め定められた印刷設定情報を入力することができないことを示す情報を、前記第１操作を前記操作受付インタフェースが受け付けたことに応じて、前記アプリケーションに出力する第３出力手段として機能させる。これにより、実行不能な操作の受付を防止できる。
【００８７】
前記コンピュータを、前記第１操作を前記操作受付インタフェースが受け付けたことに応じて、前記第２操作を前記操作受付インタフェースが受け付けた場合に出力される前記第２サイズの画像の画像データの出力を禁止し、前記第１サイズの画像の画像データの出力を許容することを示す情報を前記アプリケーションに出力する第４出力手段として機能させる。これにより、第１操作受付時において、第２サイズの画像の画像データの出力を確実に防止できる。
【００８８】
前記作成手段は、印刷用紙のサイズとして、前記第２サイズを指定する操作を前記操作受付インタフェースが受け付けたことに応じて、前記第１印刷データを作成する。これにより、操作に応じた印刷データが作成される。
【００８９】
前記作成手段は、前記抽出手段により抽出された前記第２画像データに基づく第１オブジェクトを拡大若しくは縮小することなく、前記抽出手段により抽出された前記第２画像データに基づく第１オブジェクトのサイズで前記第１印刷データを作成する。これにより、元のサイズのままの第１オブジェクトを印刷することができる。
【００９０】
前記情報処理装置が、表示インタフェースを備え、前記アプリケーションは、前記第１サイズの画像に前記第１オブジェクトが含まれた状態の画像を前記表示インタフェースに表示させることが可能であり、前記コンピュータを、前記第２サイズの画像に前記第１オブジェクトが含まれた状態の画像を前記表示インタフェースに表示させる表示制御手段として機能させる。これにより、ユーザは、２サイズの画像に第１オブジェクトが含まれた状態の画像を、プレビュー画面として閲覧することができる。
【００９１】
また、本発明は、上記実施形態に限定されるものではなく、当業者の知識に基づいて種々の変更、改良を施した種々の態様で実施することが可能である。具体的には、例えば、上記実施形態では、プリンタ５０で用いられる印刷用紙として、図５（ｂ）に示す商品ラベル７０が１列に並べられた用紙６０が採用されているが、図５（ｃ）に示す商品ラベル７０が２列に並べられた用紙６６が採用されてもよい。この場合、例えば、用紙サイズが、１０４ｍｍ×２９ｍｍまたは１２４ｍｍ×２９ｍｍに設定され、図１４に示すフローチャートにおいて、プリンタドライバ２８は、Ｓ１４４〜Ｓ１５４のループで、２つのバーコード画像を２列に配置した状態の印刷用画像データを作成し、プリンタに送信する。
【００９２】
また、上記実施形態では、本発明が、商品ラベル７０にバーコード画像７２を印刷するための手法に適用されているが、商品ラベル７０に種々の画像を印刷するための手法に適用されてもよい。具体的には、例えば、お薬手帳に貼り付ける、薬の用法を記載した用法画像を印刷するための手法に本発明が適用されてもよい。この場合、プリンタドライバ２８は、Ｓ１４０で、用法画像の特徴を持つ画像を示す画像データである、用法画像データを抽出する。そして、プリンタドライバ２８は、用法画像データを対象にＳ１４０以降の処理を実行する。
【００９３】
また、上記実施例では、チェックボックス１２２へチェックを入れる操作入力により、クロップ印刷が有効とされるが、チェックボックス１２２への操作入力のほかに、特定の用紙サイズを図７のサイズ設定ボタン１０２に指定する操作を、クロップ印刷を有効するための操作入力として用いてもよい。また、特定の用紙サイズとは、具体的には、Ａ４、レターなど、プリンタ５０では印刷できない用紙サイズである。
【００９４】
また、上記実施形態では、ＣＰＵ１２によって図１２乃至図１６に示す処理が実行される例を説明したが、これら処理は、ＣＰＵ１２に限らず、ＡＳＩＣや他の論理集積回路により実行されてもよいし、これら処理が、ＣＰＵ等やＡＳＩＣ、他の論理集積回路が協働することにより実行されてもよい。
【符号の説明】
【００９５】
１０：ＰＣ、１２：ＣＰＵ、１６：ＬＣＤ、１８：入力Ｉ／Ｆ、２０：ネットワークＩ／Ｆ、２６：制御プログラム、２８：プリンタドライバ
【図１】
2019040564.tif 000003
【図２】
2019040564.tif 000004
【図３】
2019040564.tif 000005
【図４】
2019040564.tif 000006
【図５】
2019040564.tif 000007
【図６】
2019040564.tif 000008
【図７】
2019040564.tif 000009
【図８】
2019040564.tif 000010
【図９】
2019040564.tif 000011
【図１０】
2019040564.tif 000012
【図１１】
2019040564.tif 000013
【図１２】
2019040564.tif 000014
【図１３】
2019040564.tif 000015
【図１４】
2019040564.tif 000016
【図１５】
2019040564.tif 000017