(57)【要約】【課題】ミラー印刷処理などの印刷処理の設定を好適に行う。【解決手段】制御プログラム３０は、選択プリンタに対応するプリンタ特性提供モジュール３６に、選択プリンタによりミラー印刷処理を実行できるか否かを問い合わせる（Ｓ２０２）。この際、制御プログラム３０が、選択プリンタがミラー印刷処理を実行できる旨の情報をプリンタ特性提供モジュール３６から受け付けた場合（Ｓ２０８：ＹＥＳ）に、ミラー印刷処理の設定入力の受付を有効にする。そして、制御プログラム３０は、ミラー印刷処理の設定入力を受け付けると、ミラー印刷処理の設定情報をプリンタに送信する（Ｓ２１４）。これにより、プリンタがミラー印刷処理を実行可能である場合にのみ、ミラー印刷処理を設定することが可能となり、ミラー印刷処理の設定を好適に行うことが可能となる。【選択図】図５
2019128691.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置のコンピュータが読み取り可能な制御プログラムであって、
前記コンピュータを、
前記情報処理装置にインストールされているデバイスドライバを識別可能なドライバ情報を取得するドライバ情報取得手段と、
前記ドライバ情報取得手段により取得されたドライバ情報により識別されるデバイスドライバに対応付けて前記情報処理装置にインストールされているプログラムである対応プログラムに、対象デバイスが参照するパラメータ設定メモリにパラメータを設定可能な画像形成機能を示す機能情報を要求する要求手段として機能させ、前記対象デバイスは、対応デバイスドライバによる画像形成指示の対象となるデバイスであり、前記対応デバイスドライバは、前記情報処理装置にインストールされているデバイスドライバのうち、当該対応プログラムが対応付けられたデバイスドライバであり、
前記コンピュータを、
前記要求手段による要求の後に前記対応プログラムが提供する前記機能情報を取得する機能情報取得手段と、
前記機能情報取得手段が取得した機能情報により示される画像形成機能のパラメータの、前記情報処理装置のユーザインタフェースを介した入力の受付を有効にする受付制御手段と、
前記受付制御手段により受付が有効とされたパラメータを、前記ユーザインタフェースを介して受け付ける受付手段と、
前記受付手段が受け付けたパラメータを、前記情報処理装置の通信インタフェースを介して、前記対応デバイスに送信する送信手段と、
して機能させることを特徴とする制御プログラム。
【請求項２】
前記受付制御手段は、
前記機能情報取得手段が前記機能情報を取得した場合に、前記パラメータの入力の受付が有効とされた第１の設定画面を表示することで、前記パラメータの前記ユーザインタフェースを介した入力の受付を有効にし、前記機能情報取得手段が前記機能情報を取得しなかった場合に、前記パラメータの入力の受付が無効とされた第２の設定画面を表示することで、前記パラメータの前記ユーザインタフェースを介した入力の受付を無効にすることを特徴とする請求項１に記載の制御プログラム。
【請求項３】
前記要求手段は、
前記対応プログラムに、前記対応デバイスドライバを介さずに画像形成要求を受け付けた前記対象デバイスが、前記パラメータに従って実行できる前記画像形成機能を示す情報を、前記機能情報として要求することを特徴とする請求項１又は２に記載の制御プログラム。
【請求項４】
前記コンピュータを、
前記ドライバ情報取得手段が複数の前記ドライバ情報を取得した場合に、前記複数のドライバ情報により識別される複数のデバイスから任意のデバイスを選択するための選択画面を、前記情報処理装置の表示インタフェースに表示させる表示制御手段として機能させ、
前記要求手段は、
前記選択画面において選択されたデバイスのデバイスドライバに対応付けられている対応プログラムに、前記機能情報を要求する請求項１乃至３の何れか１項に記載の制御プログラム。
【請求項５】
特定のデバイスの前記機能情報は、前記制御プログラムにプログラミングされており、
前記選択画面において選択されたデバイスが前記特定のデバイスである場合に、
前記要求手段は、
前記対応プログラムに、前記機能情報を要求せずに、
前記受付制御手段は、
前記制御プログラムにプログラミングされている機能情報により示される画像形成機能のパラメータの、前記ユーザインタフェースを介した入力の受付を有効にし、
前記選択画面において選択されたデバイスが前記特定のデバイス以外のデバイスである場合に、
前記要求手段は、
前記対応プログラムに、前記機能情報を要求し、
前記受付制御手段は、
前記要求手段による要求に応じて前記機能情報を取得した場合に、取得した機能情報により示される画像形成機能のパラメータの、前記ユーザインタフェースを介した入力の受付を有効にすることを特徴とする請求項４に記載の制御プログラム。
【請求項６】
情報処理装置のコンピュータが読み取り可能な制御プログラムであって、
前記制御プログラムは、デバイスドライバに対応付けて前記情報処理装置にインストールされたプログラムであり、対象デバイスが参照するパラメータ設定メモリにパラメータを設定可能な画像形成機能を示す機能情報の要求を、前記デバイスドライバと異なるプログラムから受け付けるように構成されており、前記対象デバイスは、前記デバイスドライバによる画像形成指示の対象となるデバイスであり、
前記コンピュータを、
前記制御プログラムが前記機能情報の要求を受け付けた場合に、前記制御プログラムが対応付けられたデバイスドライバを用いることなく、前記パラメータに従って実行できる前記画像形成機能を示す実行機能情報を、前記機能情報として取得する第１取得手段と、
前記第１取得手段が取得した実行機能情報を、前記機能情報を要求したプログラムに出力する出力手段と、
して機能させることを特徴とする制御プログラム。
【請求項７】
前記実行機能情報は、前記制御プログラムにプログラミングされており、
前記第１取得手段は、
前記制御プログラムが前記機能情報の要求を受け付けた場合に、前記制御プログラムにプログラミングされている実行機能情報を、前記機能情報として取得することを特徴とする請求項６に記載の制御プログラム。
【請求項８】
前記情報処理装置は、前記制御プログラムが対応付けられたデバイスドライバ専用の記憶領域を備え、
前記コンピュータを、
前記実行機能情報以外の情報を前記記憶領域から取得する第２取得手段として機能させ、
前記出力手段は、
前記第２取得手段が取得した情報を、前記機能情報を要求したプログラムに出力することを特徴とする請求項６又は７に記載の制御プログラム。
【請求項９】
前記実行機能情報は、前記制御プログラムにプログラミングされており、
前記制御プログラムが対応付けられたデバイスドライバは、前記制御プログラムにプログラミングされている実行機能情報を用いることなく、前記記憶領域に記憶されている情報を用いた画面を、前記情報処理装置の表示インタフェースに表示させるように構成されたことを特徴とする請求項８に記載の制御プログラム。
【請求項１０】
情報処理装置のコンピュータが読み取り可能な第１の制御プログラムと第２の制御プログラムと第３の制御プログラムとにより構成されるプログラム群であって、
前記第１の制御プログラムは、デバイスドライバを用いて処理を実行するように構成され、
前記第２の制御プログラムは、前記デバイスドライバを用いることなく処理を実行するように構成され、
前記第３の制御プログラムは、前記デバイスドライバに対応付けて前記情報処理装置にインストールされており、
前記コンピュータを、
対象デバイスが参照するパラメータ設定メモリにパラメータを設定可能な画像形成機能を示す機能情報として、前記デバイスドライバを用いることなく前記パラメータに従って実行できる前記画像形成機能を示す第１の実行機能情報の前記第３の制御プログラムへの要求を、前記第２の制御プログラムに実行させる第１実行手段として機能させ、前記対象デバイスは、前記デバイスドライバによる画像形成指示の対象となるデバイスであり、
前記コンピュータを、
前記第１実行手段による要求に応じて前記第１の実行機能情報を前記第２の制御プログラムに受け付けさせる第２実行手段と、
前記第２実行手段により受け付けられた第１の実行機能情報が、前記デバイスドライバを用いることなく前記画像形成機能を実行できることを示している場合に、前記画像形成機能のパラメータの入力が可能とされた第１の設定画面の、前記情報処理装置の表示インタフェースへの表示を、前記第２の制御プログラムに実行させ、前記第２実行手段により受け付けられた第１の実行機能情報が、前記デバイスドライバを用いることなく前記画像形成機能を実行できないことを示している場合に、前記画像形成機能のパラメータの入力が不能とされた第２の設定画面の前記表示インタフェースへの表示を、前記第２の制御プログラムに実行させる第３実行手段と、
前記機能情報として、前記デバイスドライバを用いた場合、若しくは、前記デバイスドライバを用いることなく前記パラメータに従って実行できる前記画像形成機能を示す第２の実行機能情報の前記第３の制御プログラムへの要求を、前記第１の制御プログラムに実行させる第４実行手段と、
前記第４実行手段による要求に応じて前記第２の実行機能情報を前記第１の制御プログラムに受け付けさせる第５実行手段と、
前記第５実行手段により受け付けられた第２の実行機能情報が、前記デバイスドライバを用いた場合、若しくは、前記デバイスドライバを用いることなく前記画像形成機能を実行できることを示している場合に、前記第１の設定画面の前記表示インタフェースへの表示を、前記第１の制御プログラムに実行させ、前記第５実行手段により受け付けられた第２の実行機能情報が、前記デバイスドライバの使用に関わらず前記画像形成機能を実行できないことを示している場合に、前記第２の設定画面の前記表示インタフェースへの表示を、前記第１の制御プログラムに実行させる第６実行手段と、
して機能させることを特徴とするプログラム群。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバイスと通信を行う情報処理装置のコンピュータが読み取り可能な制御プログラム等に関する。
【背景技術】
【０００２】
下記特許文献には、情報処理装置が、デバイスによる画像形成処理の設定パラメータの入力を受け付けた場合に、その受け付けた設定パラメータをデバイスに送信する技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１５９０９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
近年、多くの種類のデバイスが開発されており、それら多くの種類のデバイス毎に画像形成機能が異なっているため、設定パラメータもデバイスの種類毎に異なると想定される。一方で、上記特許文献に記載の技術では、このような想定に好適に対処することができるとは、考えられない。そこで、上記想定に好適に対処可能な制御プログラム等の提供を課題とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、実施例に開示する制御プログラムは、情報処理装置のコンピュータが読み取り可能な制御プログラムであって、前記コンピュータを、前記情報処理装置にインストールされているデバイスドライバを識別可能なドライバ情報を取得するドライバ情報取得手段と、前記ドライバ情報取得手段により取得されたドライバ情報により識別されるデバイスドライバに対応付けて前記情報処理装置にインストールされているプログラムである対応プログラムに、対象デバイスが参照するパラメータ設定メモリにパラメータを設定可能な画像形成機能を示す機能情報を要求する要求手段として機能させ、前記対象デバイスは、対応デバイスドライバによる画像形成指示の対象となるデバイスであり、前記対応デバイスドライバは、前記情報処理装置にインストールされているデバイスドライバのうち、当該対応プログラムが対応付けられたデバイスドライバであり、前記コンピュータを、前記要求手段による要求の後に前記対応プログラムが提供する前記機能情報を取得する機能情報取得手段と、前記機能情報取得手段が取得した機能情報により示される画像形成機能のパラメータの、前記情報処理装置のユーザインタフェースを介した入力の受付を有効にする受付制御手段と、前記受付制御手段により受付が有効とされたパラメータを、前記ユーザインタフェースを介して受け付ける受付手段と、前記受付手段が受け付けたパラメータを、前記情報処理装置の通信インタフェースを介して、前記対応デバイスに送信する送信手段と、して機能させることを特徴とする。
【発明の効果】
【０００６】
実施例に開示する制御プログラムは、所定のデバイスに対応するデバイスドライバとともに、インストールされた対応プログラムに、パラメータを設定可能な画像形成機能を示す機能情報を要求する。そして、制御プログラムが、機能情報を取得した場合に、機能情報により示される画像形成機能のパラメータの入力の受付を有効にする。この際、制御プログラム３０は、受付が有効とされたことにより受け付けたパラメータを、デバイスに送信する。これにより、多くの種類のデバイス毎に画像形成機能が異なっており、設定パラメータがデバイスの種類毎に異なっている場合であっても、所定の画像形成機能のパラメータを設定可能なデバイスにおいてのみ、その所定の画像形成機能のパラメータを設定できる。
【図面の簡単な説明】
【０００７】
【図１】プリンタシステム１のブロック図である。
【図２】制御プログラム３０と画像形成プログラム３２とプリンタドライバ３４とプリンタ特性提供モジュール３６とドライバ専用ファイル４０との関係を概念的に示すブロック図である。
【図３】プリンタシステム１の作動シーケンスを示す図である。
【図４】画像データテーブル６０を概念的に示す図である。
【図５】プリンタシステム１の作動シーケンスを示す図である。
【図６】第３設定画面７０を示す図である。
【図７】第４設定画面７６を示す図である。
【図８】制御プログラム３０のフローチャートを示す図である。
【図９】制御プログラム３０のフローチャートを示す図である。
【発明を実施するための形態】
【０００８】
以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明する実施形態は、本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。例えば、後述する各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更できる。
【０００９】
図１は、本実施形態に係るプリンタシステム１のブロック図である。図１に示すプリンタシステム１は、ＰＣ（情報処理装置の一例）１０、プリンタ（デバイスの一例）５０ａ〜ｄを備える。ＰＣ１０は、ＣＰＵ（コンピュータの一例）１２、メモリ１４、ＬＣＤ（表示インタフェースの一例）１６、入力Ｉ／Ｆ（ユーザインタフェースの一例）１８、ネットワークＩ／Ｆ（通信インタフェースの一例）２０を主に備えている。これらの構成要素は、バス２２を介して互いに通信可能とされている。
【００１０】
ＰＣ１０及びプリンタ５０ａ〜ｄは、ネットワークＩ／Ｆ２０及びネットワーク５２を通じて通信可能となっている。通信の方式としては、例えば、有線ＬＡＮ、ＵＳＢ、Ｗｉ−Ｆｉ（登録商標）やＢｌｕｅｔｏｏｔｈ（登録商標）を採用できる。
【００１１】
プリンタ５０ａ〜ｄは、例えば、ラベルプリンタであり、ＰＣ１０との間で各種の情報や指示信号を送受信し、ＰＣ１０による制御に基づいて、所望のテキストや画像等を印字したラベルを作成する。プリンタ５０ａ〜ｄは、例えば、ラミネートフィルム等の長尺状のテープにテキスト等を印刷してラベルを作成する。また、プリンタ５０ａ〜ｃに、バーコードリーダ５６ａ〜ｃが接続されているが、プリンタ５０ｄにバーコードリーダは接続されていない。なお、プリンタ５０ａ〜ｄは、パラメータ設定メモリを有しており、そのパラメータ設定メモリに印刷機能に関するパラメータが記憶されている。
【００１２】
ＣＰＵ１２は、メモリ１４内の制御プログラム（制御プログラム、及び、第２の制御プログラムの一例）３０，画像形成プログラム（第１の制御プログラムの一例）３２，プリンタドライバ３４ａ〜ｄ，プリンタ特性提供モジュール（制御プログラム、対応プログラム、及び、第３の制御プログラムの一例）３６ａ〜ｄ，ＯＳ３７に従って処理を実行する。制御プログラム３０は、後に詳しく説明するが、バーコードリーダ５６ａ〜ｃを利用した印刷処理（以下、「バーコード印刷処理」と記載する）が実行される際の印刷条件等を設定するためのプログラムである。画像形成プログラム３２は、画像データを形成するためのプログラムである。画像形成プログラム３２は、ラベルプリンタに印刷させるためのラベル画像を示す画像データを作成するアプリケーションである。文書作成アプリケーション、表計算アプリケーション、画像編集アプリケーションなどが画像形成プログラム３２の一例であってもよい。各アプリケーションが作成する文書データ、表計算データなどが、画像データの一例であってもよい。プリンタドライバ３４ａ〜ｄの各々は、プリンタ５０ａ〜ｄの各々に対応するデバイスドライバであり、例えば、画像形成プログラム３２により形成された画像データを、対応するプリンタに対応する形式の印刷データに変換するプログラムである。
【００１３】
プリンタ特性提供モジュール３６ａ〜ｄの各々は、プリンタドライバ３４ａ〜ｄの各々に対応し、対応するプリンタドライバがＰＣ１０にインストールされる際に、対応するプリンタドライバとともにＰＣ１０にインストールされる。なお、各プリンタ特性提供モジュール３６ａ〜ｄは、対応するプリンタドライバに応じたプリンタのモデル特有の情報を提供するためのプログラムである。
【００１４】
ＯＳ３７は、制御プログラム３０，画像形成プログラム３２等に利用される基本的な機能を提供するプログラムである。ＯＳ３７は、例えば、Ｗｉｎｄｏｗｓ（登録商標）、ＭａｃＯＳ（登録商標）、Ｌｉｎｕｘ（登録商標）、Ａｎｄｒｏｉｄ（登録商標）、ｉＯＳ（登録商標）等のオペレーティングシステムである。なお、以下の説明では、制御プログラム３０等を実行するＣＰＵ１２のことを、単にプログラム名でも記載する場合がある。例えば、「制御プログラム３０が」という記載は、「制御プログラム３０を実行するＣＰＵ１２が」ということを意味する場合がある。
【００１５】
また、メモリ１４は、データ記憶領域３８を備える。データ記憶領域３８は、制御プログラム３０等の実行に必要なデータなどを記憶する領域である。なお、メモリ１４は、ＲＡＭ、ＲＯＭ、フラッシュメモリ、ＨＤＤ、ＰＣ１０に着脱されるＵＳＢメモリ等の可搬記憶媒体、ＣＰＵ１２が備えるバッファなどが組み合わされて構成されている。また、メモリ１４は、各プリンタドライバ３４ａ〜ｄの専用のドライバ専用ファイル（記憶領域の一例）４０ａ〜ｄを記憶している。各ドライバ専用ファイル４０ａ〜ｄは、対応するプリンタドライバがＰＣ１０にインストールされる際に、対応するプリンタドライバとともにＰＣ１０にインストールされる。つまり、ドライバ専用ファイル４０ａ〜ｄとプリンタ特性提供モジュール３６ａ〜ｄとの各々は、対応するプリンタドライバがＰＣ１０にインストールされる際に、対応するプリンタドライバとともにＰＣ１０にインストールされ、各プリンタドライバ３４ａ〜ｄと各プリンタ特性提供モジュール３６ａ〜ｄと各ドライバ専用ファイル４０ａ〜ｄとが対応付けられる。
【００１６】
プリンタドライバ３４ａ〜ｄは、ＯＳ３７が定義するレジストリにプリンタドライバを示す情報が記憶されることで、ＯＳ３７に登録されるようになっている。また、ＯＳ３７に登録されたプリンタドライバ３４ａ〜ｄは、プリンタ５０ａ〜ｄを識別するプリンタ識別情報と対応付けられる。画像形成プログラム３２は、プリンタ識別情報を選択して、画像データの印刷を指示することができるように構成されている。画像形成プログラム３２が印刷を指示すると、ＯＳ３７はプリンタ識別情報に対応するプリンタドライバ３４ａ〜ｄに、画像形成プログラム３２が作成した画像データに基づいて印刷データを作成するよう指示し、プリンタドライバ３４ａ〜ｄが作成した印刷データをプリンタ５０ａ〜ｄに送信することで、プリンタ５０ａ〜ｄに印刷させる。プリンタドライバ３４ａ〜ｄが、作成した印刷データをＯＳ３７に渡すことを、「プリンタドライバ３４ａ〜ｄがプリンタ５０ａ〜ｄに印刷を指示する」と記載してもよい。
【００１７】
プリンタドライバ３４ａ〜ｄのインストーラは、プリンタドライバ３４ａ〜ｄをＯＳ３７に登録し、プリンタドライバ３４ａ〜ｄとプリンタ識別情報とを対応付けるときに、プリンタドライバ３４ａ〜ｄを示す情報と、プリンタ特性提供モジュール３６ａ〜ｄのファイル名とを対応付けてレジストリに記憶する。これにより、プリンタドライバ３４ａ〜ｄとプリンタ特性提供モジュール３６ａ〜ｄとは対応付けられる。プリンタ特性提供モジュール３６ａ〜ｄはドライバ専用ファイルのファイル名をモジュール内に記憶しているため、プリンタ特性提供モジュール３６ａ〜ｄとドライバ専用ファイル４０ａ〜ｄとは、インストールされた時点で対応付けられることになる。
【００１８】
なお、プリンタドライバインストール時において、ドライバ専用ファイル及びプリンタ特性提供モジュールだけでなく、プリンタドライバに対応するドライバ専用のドライバインタフェースもインストールされるが、ドライバインタフェースの図示は省略する。ちなみに、各ドライバ専用ファイル４０ａ〜ｄには、対応するプリンタドライバに応じたプリンタのモデル特有のモデル情報，対応するプリンタドライバに応じたプリンタで印刷可能な印刷用紙に関する情報等が記憶されている。
【００１９】
なお、メモリ１４は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体である。ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体には、上記の例の他に、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の記録媒体も含まれる。また、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体は、ｔａｎｇｉｂｌｅな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙなコンピュータが読み取り可能なストレージ媒体には含まれない。
【００２０】
また、図２に、制御プログラム３０，画像形成プログラム３２等の各プログラムとドライバ専用ファイル４０ａ〜ｄとの関係を概念的に示す。具体的には、画像形成プログラム３２は、印刷用の画像データを作成するプログラムであり、ユーザの操作に従って印刷用の画像データを作成することと、作成した印刷用の画像データをプリンタドライバ３４ａ〜ｄに出力することができる。このとき、ユーザの操作で指定された、印刷に使われるパラメータも画像データに付加することができる。そして、プリンタドライバ３４ａ〜ｄは、ネットワークＩ／Ｆ２０を介して、受け付けた画像データ及び、印刷指示を、対応するプリンタ５０ａ〜ｄに送信する。プリンタドライバは、画像形成プログラム３２が出力したパラメータ、および、プリンタドライバへのユーザ操作で指定されたパラメータに基づいて、印刷データを作成する際に画像データを加工したり、印刷指示に反映したりすることができる。これにより、プリンタ５０ａ〜ｄにおいて、受信した画像データに基づく、印刷に使われるパラメータに従った印刷処理が実行される。
【００２１】
また、制御プログラム３０は、バーコード印刷処理が実行される際の印刷条件等を設定するためのプログラムであり、印刷条件が設定されると、設定された印刷条件を、ネットワークＩ／Ｆ２０を介して、プリンタ５０ａ〜ｄに送信する。そして、プリンタ５０ａ〜ｄにおいて、受信した印刷条件に従って、バーコード印刷処理が実行される。
【００２２】
また、プリンタ特性提供モジュール３６ａ〜ｄには、対応するプリンタのモデル特有の情報が含まれており、プリンタ特性提供モジュール３６ａ〜ｄは、含まれてされている情報を、制御プログラム３０及び画像形成プログラム３２に提供する。モジュールに情報が含まれていることを「プログラミングされている」とも記載する。また、プリンタ特性提供モジュール３６ａ〜ｄは、対応するドライバ専用ファイル４０ａ〜ｄから情報を取得し、取得した情報を、制御プログラム３０及び画像形成プログラム３２に提供する。
【００２３】
また、ＬＣＤ１６は、ＰＣ１０の各種情報を表示する。なお、本願のディスプレイは、液晶ディスプレイに限らず、有機ＥＬディスプレイ等の他の表示方式のディスプレイでも良い。入力Ｉ／Ｆ１８は、キーボード、マウス等を含み、ユーザ操作を入力するためのインタフェースである。なお、入力Ｉ／Ｆ１８は、キーボード等に限らず、ＬＣＤ１６の表示画面に重畳された膜状のタッチセンサでも良い。
【００２４】
プリンタシステム１では、ＰＣ１０のプリンタドライバが作成した印刷データをプリンタに入力することで印刷をする印刷処理（以下、「ＰＣ印刷処理」と記載する）と、プリンタのメモリに記憶されている画像データのうちいずれを印刷するかを指定するバーコードを、プリンタに接続されたバーコードリーダでの読み込むことにより実行される、バーコードが指定する画像データを印刷する印刷処理、つまり、バーコード印刷処理とを実行することが可能とされている。バーコード印刷に用いられる画像データを記憶するメモリは、プリンタに装着されたメモリカードであってもよいし、プリンタと通信可能な装置に備えられたハードディスクなどのメモリであってもよい。メモリに記憶された画像データのことをテンプレートデータと記載してもよい。バーコード印刷処理のことをテンプレート印刷処理と記載してもよい。以下に、各印刷処理について具体的に説明する。
【００２５】
なお、本明細書では、基本的に、プログラムに記述された命令に従ったＣＰＵ１２の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「取得」、「受付」、「制御」「設定」等の処理は、ＣＰＵ１２の処理を表している。ＣＰＵ１２による処理は、ＯＳ３８を介したハードウェア制御も含む。なお、「取得」は要求を必須とはしない概念で用いる。すなわち、ＣＰＵ１２が要求することなくデータを受信するという処理も、「ＣＰＵ１２がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。また、「命令」「応答」「要求」等の処理は、「命令」「応答」「要求」等を示す情報を通信することにより行われる。また、「命令」「応答」「要求」等の文言を、「命令」「応答」「要求」等を示す情報そのものという意味で記載してもよい。また、ＣＰＵによる、情報Ａは事柄Ｂであることを示しているか否かを判断する処理を、「情報Ａから、事柄Ｂであるか否かを判断する」のように概念的に記載することがある。ＣＰＵによる、情報Ａが事柄Ｂであることを示しているか、事柄Ｃであるかを示しているかを判断する処理を、「情報Ａから、事柄Ｂであるか事柄Ｃであるかを判断する」のように概念的に記載することがある。
【００２６】
まず、ＰＣ印刷処理では、画像形成プログラム３２が、ＰＣ１０と通信可能なプリンタ５０を識別することが可能なプリンタ識別情報を、ＯＳ３７から取得する。次に、画像形成プログラム３２は、取得したプリンタ識別情報により識別されるプリンタ５０のうちの画像形成プログラム３２により印刷処理を実行させることが可能なプリンタ５０を抽出する。そして、画像形成プログラム３２は、抽出されたプリンタ５０から任意のプリンタ５０を選択するための選択画面（図示省略）をＣＰＵ１２に表示する。
【００２７】
続いて、選択画面へのユーザ操作によりプリンタ５０が選択されると、画像形成プログラム３２は、選択されたプリンタ（以下、「選択プリンタ」と記載する）に対応するプリンタ特性提供モジュール３６に、そのプリンタ特性提供モジュール３６に対応するプリンタ５０（すなわち、選択プリンタ）で印刷可能な用紙サイズに関する情報（以下、「用紙情報」と記載する）を要求する（図３参照：Ｓ１００）。そして、プリンタ特性提供モジュール３６は、用紙サイズ情報の要求を受け付けると、対応するドライバ専用ファイル４０に用紙情報を要求する（Ｓ１０２）。なお、プリンタ特性提供モジュール３６とドライバ専用ファイル４０との情報の送受信は、不図示のドライバインタフェースを介して行われる。
【００２８】
ドライバ専用ファイル４０は、対応するプリンタ５０の用紙情報を記憶しており、対応するプリンタ特性提供モジュール３６からの要求によって、用紙情報がプリンタ特性提供モジュール３６に取得される（Ｓ１０４）。そして、プリンタ特性提供モジュール３６は、取得した用紙情報を画像形成プログラム３２に出力する（Ｓ１０６）。また、画像形成プログラム３２は、用紙情報を受け付けると、選択プリンタにおいてミラー印刷処理を実行することができるか否かを含む、印刷に用いられるパラメータに関する特性を、選択プリンタに対応するプリンタ特性提供モジュール３６に問い合わせる（Ｓ１０６）。すなわち、ミラー印刷処理のパラメータは、印刷に用いられるパラメータである。なお、ミラー印刷処理の実行の可否に関して、プリンタ５０のみでミラー印刷処理を実行できる場合と、プリンタ５０とプリンタドライバ３４とによりミラー印刷処理を実行できる場合と、プリンタドライバ３４の有無に関わらずミラー印刷処理を実行できない場合がある。「プロダクトとしてミラー印刷処理を実行できる」とは、プリンタ５０のみでミラー印刷処理を実行できる場合と、プリンタ５０とプリンタドライバ３４とによりミラー印刷処理を実行できる場合の両方を含む概念である。
【００２９】
具体的には、ミラー印刷処理に対応しているプリンタでは、ミラー印刷用の画像データが有れば、そのミラー印刷用の画像データに基づいて、ミラー印刷処理を実行することが可能である。しかしながら、プリンタのモデルに応じて、プリンタがミラー印刷用の画像データを作成することができないが、そのプリンタに対応するプリンタドライバがミラー印刷用の画像データを作成することが可能なプリンタモデルが存在する。このような場合には、プリンタのみでミラー印刷処理を実行できないが、プリンタ５０とプリンタドライバ３４とによりミラー印刷処理を実行できる。一方、プリンタのモデルに応じて、プリンタがミラー印刷用の画像データを作成することが可能なプリンタモデルが存在する。このような場合には、プリンタのみでミラー印刷処理を実行できる。また、ミラー印刷処理に対応していないプリンタでは、ミラー印刷用の画像データがあっても、ミラー印刷用の画像データに基づいて、ミラー印刷処理を実行することが不能である。このような場合には、プリンタドライバ３４の有無に関わらずミラー印刷処理を実行できない。つまり、ミラー印刷処理に対応しているプリンタには、プリンタとプリンタドライバとにより構成されるプロダクトによりミラー印刷処理を実行できるプリンタと、プリンタのみによりミラー印刷処理を実行できるプリンタとがある。
【００３０】
このような前提のもとに、画像形成プログラム３２は、用紙情報を受け付けると、選択プリンタはミラー印刷処理に対応しているか否かを、プリンタ特性提供モジュール３６に問い合わせる（Ｓ１０６）。つまり、画像形成プログラム３２は、選択プリンタが、プリンタとプリンタドライバとにより構成されるプロダクトによりミラー印刷処理を実行できるものか、プリンタのみによりミラー印刷処理を実行できるものかを、プリンタ特性提供モジュール３６に問い合わせる。
【００３１】
プリンタ特性提供モジュール３６には、対応するプリンタのモデル特有の情報（以下、「プリンタ特性情報」と記載する）（機能情報及び実行機能情報の一例）がプログラミングされている。このプリンタ特性情報には、対応するプリンタがミラー印刷処理に対応しているか否かを示す情報が含まれており、さらに、対応するプリンタがミラー印刷処理に対応している場合に、ミラー印刷用の画像データをプリンタが作成するか、プリンタドライバが作成するかを示す情報も含まれている。そして、プリンタ特性提供モジュール３６は、プリンタ特性情報に基づいて、対応するプリンタがミラー印刷処理に対応しているか否かを判断し（Ｓ１０８）、判断結果を画像形成プログラム３２に出力する（Ｓ１１０）。
【００３２】
画像形成プログラム３２は、判断結果を受け付けると、その受け付けた判断結果、及び、Ｓ１０５で受け付けた用紙情報に基づいて、ＰＣ印刷処理の印刷条件を設定するための設定画面を、ＬＣＤ１６に表示する。具体的には、画像形成プログラム３２は、判断結果を受け付けると、その判断結果に基づいて、選択プリンタがミラー印刷処理に対応しているか否かを判断する（Ｓ１１２）。つまり、画像形成プログラム３２は、選択プリンタが、プリンタとプリンタドライバとにより構成されるプロダクトとして、若しくは、プリンタのみでミラー印刷処理を実行可能であるか否かを判断する。
【００３３】
そして、選択プリンタが、プリンタとプリンタドライバとにより構成されるプロダクトとして、若しくは、プリンタのみでミラー印刷処理を実行可能である場合（Ｓ１１２：ＹＥＳ）に、画像形成プログラム３２は、第１設定画面（図示省略）をＬＣＤ１６に表示する（Ｓ１１４）。第１設定画面には、Ｓ１０５で受け付けた用紙情報に応じた用紙サイズを選択するための用紙サイズ選択ボタン，ミラー印刷処理を設定するためのミラー印刷処理設定ボタンなどが表示される。つまり、第１設定画面には、ミラー印刷処理の設定入力の受付が有効な状態でミラー印刷処理設定ボタンが表示される。
【００３４】
一方、選択プリンタが、プリンタとプリンタドライバとにより構成されるプロダクトとして、若しくは、プリンタのみでミラー印刷処理を実行不能である場合（Ｓ１１２：ＮＯ）、つまり、選択プリンタがミラー印刷処理に対応していない場合に、画像形成プログラム３２は、第２設定画面（図示省略）をＬＣＤ１６に表示する（Ｓ１１６）。第２設定画面には、Ｓ１０５で受け付けた用紙情報に応じた用紙サイズを選択するための用紙サイズ選択ボタン等は表示されるが、ミラー印刷処理を設定するためのミラー印刷処理設定ボタンは表示されない。なお、ミラー印刷処理設定ボタンは、第２設定画面に、操作不能な状態、例えば、グレーアウトの状態で表示されてもよい。つまり、第２設定画面には、ミラー印刷処理の設定入力の受付が無効な状態でミラー印刷処理設定ボタンが表示される。
【００３５】
これにより、設定画面において、選択プリンタで印刷可能な用紙サイズを選択するとともに、選択プリンタがミラー印刷処理に対応したプリンタである場合にのみ、ミラー印刷処理を設定することが可能となる。そして、第１設定画面、若しくは、第２設定画面において印刷条件が設定されると、画像形成プログラム３２は、印刷対象の画像の画像データ、つまり、画像形成プログラム３２により作成された画像データを、設定画面において設定された印刷条件に関する情報（以下、「設定情報」と記載する）とともに、対応するプリンタドライバ３４に出力する（Ｓ１１８）。
【００３６】
そして、プリンタドライバ３４は、受け付けた画像データと設定情報とを対応するプリンタ５０に送信する（Ｓ１２０）。なお、選択プリンタがプロダクトとしてミラー印刷処理に対応しているものの、選択プリンタ自体がミラー印刷用の画像データを作成できない場合には、プリンタドライバ３４が、画像形成プログラム３２から受け付けた画像データに基づいて、ミラー印刷用の画像データを作成し、そのミラー印刷用の画像データをプリンタ５０に送信する。そして、プリンタ５０は、受信した画像データに基づくＰＣ印刷処理を、受け付けた設定情報に基づいて実行する（Ｓ１２２）。また、選択プリンタがプロダクトとしてミラー印刷処理に対応しており、選択プリンタ自体がミラー印刷用の画像データを作成できる場合に、プリンタ５０は、プリンタドライバ３４から受信した画像データに基づいて、ミラー印刷用の画像データを作成し、そのミラー印刷用の画像データに基づいてＰＣ印刷処理を実行する。
【００３７】
次に、バーコード印刷処理について説明する。バーコード印刷処理を実行可能なプリンタには、パラメータ設定メモリに、図４に示す画像データテーブル６０が記憶されている。画像データテーブル６０は、バーコード印刷に用いる画像データ毎に、画像ナンバーを関連付けたテーブルである。また、画像データの各々に、各画像データに基づく画像の印刷対象の印刷用紙のサイズに関する情報、つまり、用紙情報が関連付けられている。つまり、画像データテーブル６０では、画像ナンバー毎に、画像データと用紙情報とが関連付けられている。なお、画像データテーブル６０は、ユーザの操作によって、プリンタ５０のデータ記憶領域３８に記憶されている。例えば、ユーザが画像形成プログラム３２を操作して、用紙情報を選択し、その用紙情報が示す用紙に印刷するための画像データの作成を指示すると、画像形成プログラム３２は、用紙情報に対応するサイズの画像データを作成し、画像データと用紙情報とを対応付けてデータ記憶領域３８に記憶させる。ユーザが、ＰＣ１０で動作する画像データテーブル転送プログラムを操作して、画像データと、画像データに対応付ける画像ナンバーとを指定し、プリンタへの送信を指示すると、画像データテーブル転送プログラムは、画像データと、用紙情報と、画像ナンバーとを対応付け、プリンタへと送信する。プリンタは、画像データテーブル転送プログラムを介して受信した画像データを、プリンタのメモリに記憶し、画像データに対応する画像データテーブルをパラメータ設定メモリに記憶する。すなわち、画像データテーブルには、画像データの作成時点で必要なパラメータが含まれているが、画像データの作成時点では必要なく、印刷時点で使われるパラメータは含まれていない、とも言える。
【００３８】
そして、ユーザが、プリンタ５０に接続されているバーコードリーダ５６を用いて、バーコードを読み取ると、バーコードリーダ５６に読み取られた情報（以下、「バーコード情報」と記載する）に応じた印刷処理、つまり、バーコード印刷処理が実行される。詳しくは、バーコードには、画像ナンバーを指定する情報（以下、「ナンバー指定情報」と記載する）と、印刷処理の実行を指令する指令情報とが書き込まれている。このため、バーコードリーダ５６を用いたバーコードの読取により、プリンタ５０は、ナンバー指定情報と指令情報とを含むバーコード情報を取得する。
【００３９】
そして、プリンタ５０は、取得したナンバー指定情報により指定される画像ナンバーの画像データと用紙情報とを、画像データテーブル６０に基づいて特定する。これにより、プリンタ５０において、特定された画像データに基づく画像を、特定された用紙情報に応じたサイズの印刷用紙に印刷するバーコード印刷処理が実行される。なお、バーコード情報に、指令情報は含まれているが、ナンバー指定情報が含まれていない場合がある。このような場合に、プリンタ５０は、デフォルト値として設定されている画像ナンバーに応じた画像データと用紙情報とを特定する。そして、プリンタ５０において、特定された画像データと用紙情報とに基づいて、バーコード印刷処理が実行される。
【００４０】
ただし、画像データテーブル６０には、印刷条件として、印刷用紙の用紙サイズを示す用紙情報しか含まれていない。また、バーコード情報に、印刷条件に関する情報は含まれていない。このため、バーコード印刷処理の印刷条件として、画像データテーブル６０およびバーコード情報では、例えば、ミラー印刷処理などのパラメータを設定することができない。そこで、プリンタシステム１では、ＰＣ１０の制御プログラム３０を利用して、バーコード印刷処理の印刷条件として、ミラー印刷処理等の設定が行われる。すなわち、制御プログラム３０によって、画像データの作成時には必要ないが、バーコード印刷時には使いたいパラメータを、バーコード印刷処理の印刷条件として設定することができる、とも言える。また、制御プログラム３０は、画像形成プログラム３２が画像データに対応付けることができるパラメータ以外のパラメータをプリンタに設定することができる、とも言える。また、制御プログラム３０は、画像形成プログラム３２によって記憶された画像データに対応付いていないパラメータをプリンタに設定することができる、とも言える。
【００４１】
制御プログラム３０は、ＰＣ１０と通信可能なプリンタ５０を識別することが可能な情報、つまり、プリンタ識別情報を、ＯＳ３７から取得する。次に、制御プログラム３０は、取得したプリンタ識別情報により識別されるプリンタ５０の機種情報を取得して、バーコード印刷処理を実行させることが可能な機種であるプリンタ５０を抽出する。ちなみに、プリンタシステム１では、プリンタ５０ａ〜ｃはバーコード印刷処理を実行することが可能な機種であり、バーコードリーダ５６ａ〜ｃが接続されている。プリンタ５０ｄは、バーコード印刷処理を実行することができない機種である。
【００４２】
そして、制御プログラム３０は、抽出されたプリンタ５０から任意のプリンタ５０を選択するための選択画面（図示省略）をＣＰＵ１２に表示する。続いて、選択画面へのユーザ操作によりプリンタ５０が選択されると、選択されたプリンタ、つまり、選択プリンタのプリンタ特性情報を取得するべく、制御プログラム３０は、画像形成プログラム３２と同様に、選択プリンタに対応するプリンタ特性提供モジュール３６に、選択プリンタによるミラー印刷処理の実行の可否を問い合わせる。
【００４３】
ただし、制御プログラム３０には、画像形成プログラム３２と異なり、プリンタ５０ａ〜ｃの一部のプリンタ特性情報、つまり、プリンタによるミラー印刷処理の実行の可否を示す情報がプログラミングされている。具体的には、制御プログラム３０に、プリンタ５０ａのプリンタ特性情報がプログラミングされているが、プリンタ５０ｂ，ｃのプリンタ特性情報はプログラミングされていない。これは、例えば、制御プログラム３０がプログラミングされたタイミングで、プリンタ５０ａが開発されており、プリンタ５０ｂ，ｃは開発されていないためである。
【００４４】
このため、選択プリンタがプリンタ５０ａであれば、制御プログラム３０は、プリンタ特性提供モジュール３６に、選択プリンタによるミラー印刷処理の実行の可否を問い合わせる必要はなく、自身にプログラミングされているプリンタ特性情報を取得すればよい。一方、選択プリンタがプリンタ５０ｂ，ｃであれば、制御プログラム３０は、プリンタ特性提供モジュール３６に、選択プリンタによるミラー印刷処理の実行の可否を問い合わせ、その問い合わせ結果をプリンタ特性提供モジュール３６から取得する必要がある。
【００４５】
そこで、選択画面においてプリンタが選択されると、制御プログラム３０は、選択されたプリンタ、つまり、選択プリンタのプリンタ特性情報が自身にプログラミングされているか否かを判断する（図５参照：Ｓ２００）。そして、選択プリンタのプリンタ特性情報が制御プログラム３０にプログラミングされていない場合（Ｓ２００：ＮＯ）に、制御プログラム３０は、選択プリンタに対応するプリンタ特性提供モジュール３６に、選択プリンタによるミラー印刷処理の実行の可否を問い合わせる。なお、バーコード印刷処理の対象となる画像データは、プリンタ５０の画像データテーブル６０に記憶されており、プリンタ５０において、その画像データに基づいてバーコード印刷処理が実行される。このため、バーコード印刷処理時において、プリンタドライバ３４は使用されない。つまり、バーコード印刷処理時において、ミラー印刷用の画像データをプリンタドライバ３４により作成することはできず、プリンタ５０においてミラー印刷用の画像データを作成する必要がある。
【００４６】
このため、選択プリンタのプリンタ特性情報が制御プログラム３０にプログラミングされていない場合（Ｓ２００：ＮＯ）に、制御プログラム３０は、選択プリンタがミラー印刷用の画像データを作成し、作成したミラー印刷用の画像データに基づいてミラー印刷処理を実行することができるか否かを、プリンタ特性提供モジュール３６に問い合わせる（Ｓ２０２）。つまり、制御プログラム３０は、選択プリンタのみでミラー印刷処理を実行することができるか否かを、プリンタ特性提供モジュール３６に問い合わせる。そして、プリンタ特性提供モジュール３６は、プリンタ特性情報に基づいて、プリンタのみによりミラー印刷処理を実行することができるか否かを判断し（Ｓ２０４）、判断結果を制御プログラム３０に出力する（Ｓ２０６）。そして、Ｓ２０８に進む。
【００４７】
また、Ｓ２００において、選択プリンタのプリンタ特性情報が制御プログラム３０にプログラミングされている場合（Ｓ２００：ＹＥＳ）に、制御プログラム３０は、自身にプログラミングされている選択プリンタのプリンタ特性情報を取得する（Ｓ２０７）。そして、Ｓ２０８に進む。
【００４８】
そして、制御プログラム３０は、判断結果を受け付けた後、若しくは、自身にプログラミングされているプリンタ特性情報を取得した後に、その受け付けた判断結果、若しくは、取得した判断結果に基づいて、バーコード印刷処理の印刷条件を設定するための設定画面を、ＬＣＤ１６に表示する。具体的には、制御プログラム３０は、受け付けた判断結果、若しくは、取得したプリンタ特性情報に基づいて、選択プリンタがミラー印刷処理に対応しているか否かを判断する（Ｓ２０８）。つまり、制御プログラム３０は、選択プリンタのみでミラー印刷処理を実行可能であるか否かを判断する。
【００４９】
そして、選択プリンタのみでミラー印刷処理を実行可能である場合（Ｓ２０８：ＹＥＳ）に、画像形成プログラム３２は、図６に示す第３設定画面（第１の設定画面の一例）７０をＬＣＤ１６に表示する（Ｓ２１０）。第３設定画面７０には、ミラー印刷処理を設定するためのミラー印刷処理設定ボタン７２などが表示される。つまり、第３設定画面７０には、ミラー印刷処理の設定入力の受付が有効な状態でミラー印刷処理設定ボタン７２が表示される。
【００５０】
一方、選択プリンタのみでミラー印刷処理を実行できない場合（Ｓ２０８：ＮＯ）、つまり、プリンタとプリンタドライバとにより構成されるプロダクトとしてミラー印刷処理を実行可能である場合、及び、プリンタがミラー印刷処理に対応していない場合に、制御プログラム３０は、図７に示す第４設定画面（第２の設定画面の一例）７６をＬＣＤ１６に表示する（Ｓ２１２）。第４設定画面７６には、ミラー印刷処理を設定するためのミラー印刷処理設定ボタン７２は表示されない。
【００５１】
これにより、設定画面において、選択プリンタのみでミラー印刷処理を実行できる場合にのみ、ミラー印刷処理を設定することが可能となる。続いて、第３設定画面７０、若しくは、第４設定画面７６において印刷条件が設定されると、制御プログラム３０は、図５に示すように、第３設定画面７０、若しくは、第４設定画面７６において設定された印刷条件に関する情報、つまり、設定情報を選択プリンタに送信する（Ｓ２１４）。そして、選択プリンタは、受信した設定情報をパラメータ設定メモリに記憶する（Ｓ２１６）。
【００５２】
また、選択プリンタにおいて、ユーザがバーコードリーダ５６を用いてバーコードを読み取ると、選択プリンタは、バーコード情報を受け付ける（Ｓ２１８）。続いて、選択プリンタは、受け付けたバーコード情報に基づいて、画像データ及び用紙情報を特定する（Ｓ２２０）。そして、選択プリンタは、Ｓ２２０で特定した画像データ及び用紙情報、および、Ｓ２１６で記憶した設定情報に基づいて、バーコード印刷処理を実行する（Ｓ２２２）。つまり、選択プリンタは、設定情報に基づいて、ミラー印刷処理が設定されているか否かを判断する。そして、ミラー印刷処理が設定されている場合に、選択ドライバは、特定した画像データに基づいて、ミラー印刷用の画像データを作成し、その作成したミラー印刷用の画像データに基づく画像を、特定した用紙サイズに応じた印刷用紙に印刷する。また、ミラー印刷処理が設定されていない場合に、選択ドライバは、特定した画像データに基づく画像を、特定した用紙サイズに応じた印刷用紙に印刷する。
【００５３】
このように、制御プログラム３０には、バーコード印刷処理を実行することが可能なプリンタ５０ａ〜ｃのうちの一部のプリンタのプリンタ特性情報しかプログラミングされていない。このため、制御プログラム３０は、その一部のプリンタのプリンタ特性情報を外部から取得する必要がなく、自身から取得する。また、制御プログラム３０は、自身にプログラミングされていないプリンタのプリンタ特性情報を、外部、つまり、プリンタ特性提供モジュール３６から取得する。これにより、新たなプリンタが開発される毎に、制御プログラム３０の開発，更新などを抑制することが可能となる。
【００５４】
詳しくは、制御プログラム３０は、上述したように、プリンタ５０ａが開発されてから、プリンタ５０ｂ，ｃが開発される迄のタイミングでプログラミングされている。このため、制御プログラム３０には、プリンタ５０ａのプリンタ特性情報はプログラミングされているが、プリンタ５０ｂ，ｃのプリンタ特性情報はプログラミングされていない。このような制御プログラム３０が、プリンタ５０ｂ，ｃのプリンタ特性情報を外部から取得できないように構成されていると、制御プログラム３０の更新等を行って、プリンタ５０ｂ，ｃのプリンタ特性情報を制御プログラム３０にプログラミングする必要がある。つまり、新たなプリンタが開発される毎に、制御プログラム３０を更新する必要があり、開発の負担，更新の負担など、種々の手間が発生する。
【００５５】
このため、制御プログラム３０において、プログラミングされていないプリンタ特性情報がプリンタ特性提供モジュール３６から取得される。プリンタ特性提供モジュール３６は、プリンタドライバとともにデバイスにインストールされるものであり、プリンタ特性提供モジュール３６には、対応するプリンタのプリンタ特性情報が記憶されている。このため、新たなプリンタが開発された場合において、制御プログラム３０を更新しなくても、制御プログラム３０は、その新たに開発されたプリンタのプリンタ特性情報を取得することができる。これにより、新たなプリンタが開発される毎に、制御プログラム３０を更新する必要がなくなり、開発の負担，更新の負担など、種々の手間を少なくすることが可能となる。
【００５６】
上記バーコード印刷処理におけるミラー印刷処理の設定は、ＰＣ１０のＣＰＵ１２において制御プログラム３０が実行されることによって行われる。以下に、図８及び図９を用いて、制御プログラム３０のフローが実行される際の処理を説明する。
【００５７】
本フローでは、まず、制御プログラム３０が、図８に示すように、ＰＣ１０と通信可能なプリンタ５０のプリンタ識別情報をＯＳ３７から取得する（Ｓ３００）。次に、制御プログラム３０は、取得したプリンタ特性情報により識別されるプリンタから、バーコード印刷処理を実行可能なプリンタを抽出し、抽出したプリンタから任意のプリンタを選択するための選択画面をＬＣＤ１６に表示する（Ｓ３０２）。そして、制御プログラム３０は、選択画面においてプリンタが選択されたか否かを判断する（Ｓ３０４）。
【００５８】
この際、選択画面においてプリンタが選択されていない場合（Ｓ３０４：ＮＯ）に、Ｓ３０４の処理が繰り返される。一方、選択画面においてプリンタが選択された場合（Ｓ３０４：ＹＥＳ）に、制御プログラム３０は、選択プリンタのプリンタ特性情報が自身にプログラミングされているか否かを判断する（Ｓ３０６）。そして、選択プリンタのプリンタ特性情報がプログラミングされていない場合（Ｓ３０６：ＮＯ）に、制御プログラム３０は、選択プリンタに応じたプリンタ特性提供モジュール３６のファイル名をレジストリから取得する（Ｓ３０８）。続いて、制御プログラム３０は、取得したファイル名を利用して、プリンタ特性提供モジュール３６にアクセスし、選択プリンタのみでミラー印刷処理を実行することが可能であるか否かを問い合わせる（Ｓ３０９）。そして、制御プログラム３０は、プリンタ特性提供モジュール３６での判断結果を、プリンタ特性提供モジュール３６から取得する（Ｓ３１０）。そして、Ｓ３１２に進む。
【００５９】
一方、Ｓ３０６において、選択プリンタのプリンタ特性情報がプログラミングされている場合（Ｓ３０６：ＹＥＳ）に、制御プログラム３０は、自身にプログラミングされている選択プリンタのプリンタ特性情報を取得する（Ｓ３１４）。そして、Ｓ３１２に進む。
【００６０】
Ｓ３１２では、制御プログラム３０が、図９に示すように、プリンタ特性提供モジュール３６から取得した判断結果、若しくは、自身にプログラミングされているプリンタ特性情報に基づいて、選択プリンタのみでミラー印刷処理を印刷できるか否かを判断する（Ｓ３１２）。この際、選択プリンタのみでミラー印刷処理を実行できる場合（Ｓ３１２；ＹＥＳ）に、制御プログラム３０は、第３設定画面７０をＬＣＤ１６に表示する（Ｓ３１６）。そして、Ｓ３２０に進む。一方、選択プリンタのみでミラー印刷処理を実行できない場合（Ｓ３１２；ＮＯ）に、制御プログラム３０は、第４設定画面７６をＬＣＤ１６に表示する（Ｓ３１８）。そして、Ｓ３２０に進む。
【００６１】
Ｓ３２０では、制御プログラム３０は、第３設定画面７０、若しくは、第４設定画面７６において印刷条件が設定されたか否かを判断する（Ｓ３２０）。この際、第３設定画面７０、若しくは、第４設定画面７６において印刷条件が設定されていない場合（Ｓ３２０：ＮＯ）に、Ｓ３２０の処理が繰り返される。一方、第３設定画面７０、若しくは、第４設定画面７６において印刷条件が設定されている場合（Ｓ３２０：ＹＥＳ）に、制御プログラム３０は、第３設定画面７０、若しくは、第４設定画面７６において設定された印刷条件に関する情報、つまり、設定条件情報を選択プリンタに送信する（Ｓ３２２）。それにより、本フローが終了する。
【００６２】
なお、Ｓ３００を実行するＣＰＵ１２は、ドライバ情報取得手段の一例である。Ｓ３１４を実行するＣＰＵ１２は、機能情報取得手段の一例である。Ｓ３２０を実行するＣＰＵ１２は、受付手段の一例である。Ｓ２０２，Ｓ３０９を実行するＣＰＵ１２は、要求手段、及び、第１実行手段の一例である。Ｓ２１０，Ｓ３１６を実行するＣＰＵ１２は、受付制御手段の一例である。Ｓ２１４，Ｓ３２２を実行するＣＰＵ１２は、送信手段の一例である。Ｓ３０２を実行するＣＰＵ１２は、表示制御手段の一例である。Ｓ２０４を実行するＣＰＵ１２は、第１取得手段の一例である。Ｓ１０４を実行するＣＰＵ１２は、第２取得手段の一例である。Ｓ２０６を実行するＣＰＵ１２は、第２実行手段の一例である。Ｓ２１０，Ｓ２１２，Ｓ３１６，Ｓ３１８を実行するＣＰＵ１２は、第３実行手段の一例である。Ｓ１０６を実行するＣＰＵ１２は、第４実行手段の一例である。Ｓ１０８を実行するＣＰＵ１２は、第５実行手段の一例である。Ｓ１１４，Ｓ１１６を実行するＣＰＵ１２は、第６実行手段の一例である。
【００６３】
＜実施例の効果＞
上記した実施形態によれば、以下の効果を奏する。
【００６４】
制御プログラム３０は、所定のプリンタに対応するプリンタ特性提供モジュール３６に、その所定のプリンタによりミラー印刷処理を実行できるか否かを問い合わせる。この際、制御プログラム３０が、所定のプリンタがミラー印刷処理を実行できる旨の情報をプリンタ特性提供モジュール３６から受け付けた場合に、ミラー印刷処理の設定入力の受付を有効にする。そして、制御プログラム３０は、ミラー印刷処理の設定入力を受け付けると、ミラー印刷処理の設定情報をプリンタに送信する。これにより、プリンタがミラー印刷処理を実行可能である場合にのみ、ミラー印刷処理を設定することが可能となる。
【００６５】
制御プログラム３０が、所定のプリンタがミラー印刷処理を実行できる旨の情報をプリンタ特性提供モジュール３６から受け付けた場合に、ミラー印刷処理設定ボタン７２をＬＣＤ１６に表示することで、ミラー印刷処理の設定入力の受付を有効にする。一方、制御プログラム３０が、所定のプリンタがミラー印刷処理を実行できない旨の情報をプリンタ特性提供モジュール３６から受け付けた場合に、ミラー印刷処理設定ボタン７２をＬＣＤ１６に表示しないことで、ミラー印刷処理の設定入力の受付を無効にする。これにより、ミラー印刷処理の実行の可否が、ミラー印刷処理設定ボタン７２の有無により容易に判別できる。
【００６６】
制御プログラム３０は、所定のプリンタに対応するプリンタ特性提供モジュール３６に、プリンタドライバを用いることなく、プリンタのみでミラー印刷処理を実行できるか否かを問い合わる。これにより、プリンタがプリンタドライバを経由することなく、画像データを取得した場合であっても、プリンタにおいてミラー印刷処理を実行することができる。
【００６７】
制御プログラム３０は、ＰＣ１０と通信可能なプリンタ５０から任意のプリンタを選択するための選択画面をＬＣＤ１６に表示する。そして、制御プログラム３０は、選択画面において選択された選択プリンタに対応するプリンタ特性提供モジュール３６に、選択プリンタによりミラー印刷処理を実行できるか否かを問い合わる。これにより、ユーザが選択したプリンタにおいて、好適にミラー印刷処理を実行できる。
【００６８】
制御プログラム３０に、プリンタ５０ａのプリンタ特性情報はプログラミングされているが、プリンタ５０ｂ，ｃのプリンタ特性情報はプログラミングされていない。そして、選択プリンタがプリンタ５０ａである場合に、制御プログラム３０は、プリンタ特性提供モジュール３６に問い合わせを行うことなく、自身にプログラミングされているプリンタ特性情報がミラー印刷処理を実行可能であることを示していれば、ミラー印刷処理の設定入力の受付を有効にする。また、選択プリンタがプリンタ５０ｂ，ｃである場合に、制御プログラム３０は、プリンタ特性提供モジュール３６に問い合わせを行って、その問い合わせにより取得した判断結果がミラー印刷処理を実行可能であることを示していれば、ミラー印刷処理の設定入力の受付を有効にする。これにより、制御プログラム３０にプリンタ特性情報がプログラミングされているプリンタと、制御プログラム３０にプリンタ特性情報がプログラミングされていないプリンタとの何れにおいても、選択プリンタがミラー印刷処理を実行可能である場合にのみ、ミラー印刷処理を設定することが可能となる。
【００６９】
プリンタ特性提供モジュール３６は、プリンタがミラー印刷処理を実行できるか否かの問い合わせを制御プログラム３０から受け付けた場合に、プリンタドライバを用いることなく、プリンタがミラー印刷処理を実行できる否かを示すプリンタ特性情報を取得する。そして、プリンタ特性提供モジュール３６は、取得したプリンタ特性情報を制御プログラム３０に出力する。これにより、例えば、制御プログラム３０により、プリンタのみでミラー印刷処理を実行できるプリンタに対してのみ、ミラー印刷処理の設定を行うことが可能となる。
【００７０】
プリンタ特性情報は、プリンタ特性提供モジュール３６にプログラミングされている。そして、プリンタ特性提供モジュール３６は、制御プログラム３０から問い合わせを受け付けた場合に、自身にプログラミングされているプリンタ特性情報を取得し、取得したプリンタ特性情報を制御プログラム３０に出力する。これにより、プリンタ特性提供モジュール３６は、確実にプリンタ特性情報を取得することができる。
【００７１】
ＰＣ１０は、プリンタ特性提供モジュール３６とともに、インストールされたプリンタドライバ３４専用のドライバ専用ファイル４０を有しており、プリンタ特性提供モジュール３６が、プリンタ特性情報以外の情報、例えば、用紙情報の要求を制御プログラム３０若しくは、画像形成プログラム３２から受け付けた場合に、ドライバ専用ファイル４０から用紙情報を取得し、取得した用紙情報を、制御プログラム３０若しくは、画像形成プログラム３２に出力する。
【００７２】
プリンタドライバ３４は、プリンタ特性情報を利用することなく、ドライバ専用ファイル４０に記憶されている情報、例えば、用紙情報を利用して、設定画面などをＬＣＤ１６に表示する。これにより、プリンタドライバ３４に対応するプリンタで印刷可能な用紙サイズを適切にＬＣＤ１６に表示することができる。
【００７３】
また、本発明は、上記実施形態に限定されるものではなく、当業者の知識に基づいて種々の変更、改良を施した種々の態様で実施することが可能である。具体的には、例えば、上記実施形態では、プリンタ特性情報が、プリンタでミラー印刷処理を実行できるか否かを示す情報とされているが、他の処理を実行できるか否かを示す情報であってもよい。具体的には、例えば、テープ状の印刷用紙のカット位置を任意に設定するための処理，画像品質を向上させるための処理，特殊な印刷用紙を用いた印刷処理，画像を１８０度回転させた状態での印刷処理など、種々の処理を実行できるか否かを示す情報を、プリンタ特性情報として採用することが可能である。
【００７４】
また、上記実施形態では、用紙情報がドライバ専用ファイル４０に記憶されているが、プリンタ特性提供モジュール３６にプログラミングされていてもよい。また、上記実施形態では、プリンタ特性情報が、プリンタ特性提供モジュール３６にプログラミングされているが、ドライバ専用ファイル４０に記憶されていてもよい。つまり、プリンタによる印刷時に必要な印刷条件に関する情報、つまり、印刷条件情報は、プリンタ特性提供モジュール３６にプログラミングされていてもよく、ドライバ専用ファイル４０に記憶されていてもよい。ただし、理想を言えば、プリンタドライバ３４を用いた印刷処理、つまり、ＰＣ印刷処理において用いられる印刷条件情報は、ドライバ専用ファイル４０に記憶され、ＰＣ印刷処理において用いられない印刷条件情報は、プリンタ特性提供モジュール３６にプログラミングされることが好ましい。
【００７５】
また、上記実施形態では、ミラー印刷処理設定ボタン７２が表示されることで、ユーザ操作の入力が有効とされ、ミラー印刷処理設定ボタン７２が表示されないことで、ユーザ操作の入力が無効とされているが、ミラー印刷処理設定ボタン７２がグレー表示されることで、ユーザ操作の入力が無効とされてもよい。つまり、入力操作ができるようにすることで、ユーザ操作の入力が有効とされ、入力操作ができないようにすることで、ユーザ操作の入力が無効とされてもよい。また、入力操作ができる状態において、入力操作に従って設定を行うことで、ユーザ操作の入力が有効とされ、入力操作に従って設定を行わないことで、ユーザ操作の入力が無効とされてもよい。
【００７６】
また、上記実施形態では、デバイスとしてプリンタが採用されているが、スキャナ等の他のデバイスが採用されてもよい。つまり、画像形成に関する機能として印刷機能が採用されているが、スキャン機能等の他の画像形成機能が採用されてもよい。
【００７７】
また、上記実施形態では、プリンタドライバ３４とプリンタ特性提供モジュール３６とが個別のプログラムとされているが、プリンタドライバ３４とプリンタ特性提供モジュール３６とによって、１つのプログラムが構成されていてもよい。
【００７８】
また、上記実施形態では、ＣＰＵ１２によって図８及び図９に示す処理が実行される例を説明したが、これら処理は、ＣＰＵ１２に限らず、ＡＳＩＣや他の論理集積回路により実行されてもよいし、これら処理が、ＣＰＵ等やＡＳＩＣ、他の論理集積回路が協働することにより実行されてもよい。
【符号の説明】
【００７９】
１０：ＰＣ、１２：ＣＰＵ、１６：ＬＣＤ、１８：入力Ｉ／Ｆ、２０：ネットワークＩ／Ｆ、３０：制御プログラム、３２：画像形成プログラム、３４：プリンタドライバ、３６：プリンタ特性提供モジュール、４０：ドライバ専用ファイル、５０：プリンタ
【図１】
2019128691.tif 000003
【図２】
2019128691.tif 000004
【図３】
2019128691.tif 000005
【図４】
2019128691.tif 000006
【図５】
2019128691.tif 000007
【図６】
2019128691.tif 000008
【図７】
2019128691.tif 000009
【図８】
2019128691.tif 000010
【図９】
2019128691.tif 000011