JP6926876B2 - プログラム及び編集画面制御モジュール - Google Patents

プログラム及び編集画面制御モジュール Download PDF

Info

Publication number
JP6926876B2
JP6926876B2 JP2017178131A JP2017178131A JP6926876B2 JP 6926876 B2 JP6926876 B2 JP 6926876B2 JP 2017178131 A JP2017178131 A JP 2017178131A JP 2017178131 A JP2017178131 A JP 2017178131A JP 6926876 B2 JP6926876 B2 JP 6926876B2
Authority
JP
Japan
Prior art keywords
output
image data
instruction
information
control module
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.)
Active
Application number
JP2017178131A
Other languages
English (en)
Other versions
JP2019053605A (ja
Inventor
優 松尾
優 松尾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2017178131A priority Critical patent/JP6926876B2/ja
Priority to US16/022,093 priority patent/US10574842B2/en
Publication of JP2019053605A publication Critical patent/JP2019053605A/ja
Application granted granted Critical
Publication of JP6926876B2 publication Critical patent/JP6926876B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00482Output means outputting a plurality of job set-up options, e.g. number of copies, paper size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00132Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture in a digital photofinishing system, i.e. a system where digital photographic images undergo typical photofinishing processing, e.g. printing ordering
    • H04N1/00167Processing or editing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00413Display of information to the user, e.g. menus using menus, i.e. presenting the user with a plurality of selectable options
    • H04N1/00416Multi-level menus
    • H04N1/00419Arrangements for navigating between pages or parts of the menu
    • H04N1/00421Arrangements for navigating between pages or parts of the menu using drop-down menus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00413Display of information to the user, e.g. menus using menus, i.e. presenting the user with a plurality of selectable options
    • H04N1/00416Multi-level menus
    • H04N1/00419Arrangements for navigating between pages or parts of the menu
    • H04N1/00424Arrangements for navigating between pages or parts of the menu using a list of graphical elements, e.g. icons or icon bar
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00466Display of information to the user, e.g. menus displaying finishing information, e.g. position of punch holes or staple or orientation references

Description

本発明は、デバイスと通信を行う情報処理装置のコンピュータが読み取り可能なプログラム等に関する。
プリンタ等のデバイスによる印刷処理の一例として、下記特許文献に記載されているように、情報処理装置において、印刷用の画像データが作成され、その作成された印刷用の画像データに基づく画像の印刷処理が、プリンタにより実行される。
特開2014−71584号公報
情報処理装置が印刷用画像データを作成する際に用いられるプログラムには、画像データを作成するための機能だけでなく、画像データに基づく画像をプレビュー画面に表示するための機能,印刷設定のユーザ操作を受け付ける機能,プリンタに印刷処理を実行させるための機能など、多くの機能が求められている。このため、プログラムの構成が複雑になり、開発に多大な負荷が生じる。本願は、プログラムの開発に要する負荷を少なくすることを課題とする。
上記課題を解決するために、実施例に開示するプログラムは、ユーザインタフェースと、ネットワークインタフェースと、ディスプレイとを備えた情報処理装置のコンピュータが読み取り可能なプログラムであって、編集画面制御モジュールと、画像データ作成モジュールと、第1デバイス制御モジュールとを備え、前記編集画面制御モジュールは、前記コンピュータを、前記ユーザインタフェースを介して受け付けた操作入力が編集指示入力である場合に、表示用画像データの作成を指示する第1作成指示情報を、前記画像データ作成モジュールに出力する第1指示出力手段として機能させ、前記表示用画像データは、前記編集指示入力に従って編集されたオブジェクトを含む画像を示す画像データであり、前記画像データ作成モジュールは、前記コンピュータを、前記第1指示出力手段が出力した前記第1作成指示情報に従って、前記表示用画像データを作成する第1作成手段と、前記第1作成手段が作成した表示用画像データを、前記編集画面制御モジュールに出力する第1画像データ出力手段と、して機能させ、前記編集画面制御モジュールは、前記コンピュータを、前記第1指示出力手段が前記第1作成指示情報を出力した後に、前記第1画像データ出力手段が出力した表示用画像データを受け付けた場合に、当該表示用画像データに基づく画像である表示用画像を前記ディスプレイに表示させる第1表示制御手段と、前記ユーザインタフェースを介して受け付けた操作入力がデバイス使用指示入力である場合に、前記第1作成手段が作成した前記表示用画像データに対応する第1出力用画像データの作成を指示する第2作成指示情報を、前記画像データ作成モジュールに出力する第2指示出力手段として機能させ、前記第1出力用画像データは、前記第1デバイス制御モジュールにおいて、第2出力用画像データを作成するために用いられる画像データであり、前記画像データ作成モジュールは、前記コンピュータを、前記第2指示出力手段が出力した第2作成指示情報に従って、前記第1出力用画像データを作成する第2作成手段と、前記第2作成手段が作成した第1出力用画像データを、前記編集画面制御モジュールに出力する第2画像データ出力手段と、して機能させ、前記編集画面制御モジュールは、前記コンピュータを、前記第2指示出力手段が前記第2作成指示情報を出力した後に、前記第2画像データ出力手段が出力した第1出力用画像データを受け付けた場合に、前記第2出力用画像データの出力を指示する第1出力指示情報を、前記第1デバイス制御モジュールに出力する第3指示出力手段と、して機能させ、前記第1デバイス制御モジュールは、前記コンピュータを、前記第3指示出力手段が出力した第1出力指示情報に従って、選択デバイスに対応する前記第2出力用画像データを作成する第3作成手段として機能させ、前記選択デバイスは、複数の対応デバイスのうち、前記第2出力用画像データの出力先として選択されたデバイスであり、前記複数の対応デバイスはそれぞれ、前記第1デバイス制御モジュールが対応可能なタイプのデバイスであり、当該第2出力用画像データを、前記ネットワークインタフェースを介して、前記選択デバイスに出力するデバイス通信手段と、して機能させることを特徴とする。
実施例に開示するプログラムは、ユーザ操作の受け付け,画像データに基づく画像の表示等を行うための編集画面制御モジュールと、画像データを作成するための画像データ作成モジュールと、デバイスと送受信し、印刷指令等の送信等を行うための第1デバイス制御モジュールとを有している。このため、例えば、開発済みの機能がある場合には、開発済みの機能を実行するプログラムを流用し、未開発の機能に対応するプログラムのみを開発することができる。これにより、プログラムの開発に要する負荷を少なくすることができる。
プリンタシステム1のブロック図である。 アプリケーションプログラム26とOS32とデバイスとの関係を概念的に示すブロック図である。 印刷用の画像データ作成時の作動シーケンスを示す図である。 印刷用の画像データ作成時の作動シーケンスを示す図である。 プリンタ検索サブルーチンを示す図である。 プリンタ情報取得サブルーチンを示す図である。 プリンタ送信サブルーチンを示す図である。 編集画面100を示す図である。
<プリンタシステムの構成>
以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明する実施形態は、本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。例えば、後述する各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更できる。
図1は、本実施形態に係るプリンタシステム1のブロック図である。図1に示すプリンタシステム1は、PC(情報処理装置の一例)10、プリンタ50、プリンタ51を備える。PC10は、CPU(コンピュータの一例)12、メモリ14、ディスプレイI/F(インタフェースの略)(ディスプレイの一例)15、LCD(ユーザインタフェースの一例)16、入力I/F(ユーザインタフェースの一例)18、ネットワークI/F(ネットワークインタフェースの一例)20を主に備えている。これらの構成要素は、バス22を介して互いに通信可能とされている。
PC10及びプリンタ50,51は、ネットワークI/F20及びネットワーク56を通じて通信可能となっている。通信の方式としては、例えば、有線LAN、USB、Wi−Fi(登録商標)やBluetooth(登録商標)を採用できる。
プリンタ50,51は、例えば、ラベルプリンタであり、PC10との間で各種の情報や指示信号を送受信し、PC10による制御に基づいて、所望のテキストや画像等を印字したラベルを作成する。プリンタ50,51は、例えば、ラミネートフィルム等の長尺状のテープにテキスト等を印刷してラベルを作成する。
CPU12は、メモリ14内のアプリケーションプログラム26(プログラムの一例)、OS32に従って処理を実行する。アプリケーションプログラム26は、プリンタ50,51によってラベルを作成するためのプログラムである。アプリケーションプログラム26は、処理モジュールとして、編集画面制御モジュール27、画像データ作成モジュール28、デバイス制御モジュール29を備えている。また、編集画面制御モジュール27は、マネージャ30を備えている。尚、アプリケーションプログラム26を、上記したように複数のプログラムの集合体で構成せず、単一のプログラムで構成しても良い。
OS32は、アプリケーションプログラム26に利用される基本的な機能を提供するプログラムである。OS32は、例えば、Windows(登録商標)、MacOS(登録商標)、Linux(登録商標)、Android(登録商標)、iOS(登録商標)等のオペレーティングシステムである。なお、以下の説明では、アプリケーションプログラム26等を実行するCPU12のことを、単にプログラム名でも記載する場合がある。例えば、「アプリケーションプログラム26が」という記載は、「アプリケーションプログラム26を実行するCPU12が」ということを意味する場合がある。
図2は、各プログラムやデバイスの関係を概念的に示している。編集画面制御モジュール27は、例えば、ラベルの作成やラベルの編集を行うための編集画面をLCD16に表示するプログラムである。編集画面制御モジュール27は、例えば、OS32が提供するAPIによりOS32へ表示指示を実行し、OS32の表示プログラムを利用して表示処理を実行する。OS32は、編集画面制御モジュール27からの指示に応じてディスプレイI/F15を制御し、LCD16への表示を行う。
編集画面制御モジュール27は、編集対象のラベルを示すオブジェクトを編集画面に表示するための画像を示す画像データの作成を画像データ作成モジュール28に指示し、画像データ作成モジュール28が作成した画像データを画像データ作成モジュール28から受け取り、受け取った画像データに基づく画像をLCD16へ表示させる。ここでいうオブジェクトとは、ラベルを構成するテキスト、図形(直線や四角形など)、画像などである。編集画面制御モジュール27は、オブジェクトを編集する入力操作を入力I/F18から受付けたとき、編集されたオブジェクトを編集画面に表示するための画像を示す画像データの作成を画像データ作成モジュール28に指示する。オブジェクトの追加、削除、サイズ変更、移動、テキストの変更、色の変更などが、オブジェクトの編集の一例である。編集画面制御モジュール27は、編集画面で編集されたラベルの画像を示す画像データの作成を、ラベルの画像をプリンタから印刷するために、画像データ作成モジュール28に指示し、画像データ作成モジュール28が作成した画像データを画像データ作成モジュール28から受け取り、受け取った画像データと印刷指示とをデバイス制御モジュール29に受け渡すことで、プリンタ50またはプリンタ51からラベルを印刷させる。なお、編集画面制御モジュール27は、画像データ作成モジュール28から受け取った画像データと印刷指示とをOS32が備える汎用印刷モジュール17に受け渡すことで、プリンタからラベルを印刷させる。MacOSが備えるAirPrint(登録商標)モジュールは、汎用印刷モジュール17の一例であり、編集画面制御モジュール27から受け取った画像データの印刷指示を、ネットワークI/F20を介してプリンタ50,51を含む、汎用印刷モジュール17に対応するプリンタに送信する。
画像データ作成モジュール28は、ラベルを作成するための画像データの作成や編集を行うためのライブラリを備えており、画像データの作成、編集等を実行するプログラムである。画像データ作成モジュール28は、編集画面制御モジュール27からの指示に応じて、LCD16にラベルを示す画像を表示するための画像データや、ラベルを示す画像をプリンタ50,51で印刷するための画像データを作成する。
デバイス制御モジュール29は、ネットワークI/F20を介してプリンタ50に印刷を実行させるためのプログラムである。デバイス制御モジュール29は、例えば、図7に示すように、ラベルをプリンタから印刷するための画像を示す画像データと印刷指示とを編集画面制御モジュール27から受け取り、受け取った印刷指示に従って、画像データを、印刷に用いられる画像データである印刷データ(「印刷用画像データ」とも記載する)に変換し、変換した印刷データを、プリンタ50または51に送信することで、ラベルを示す画像をプリンタ50または51に印刷させる。なお、デバイス制御モジュール29は、OS32に指示することで、ネットワークI/F20を介して印刷データを送信する。
また、メモリ14は、データ記憶領域34を備える。データ記憶領域34は、アプリケーションプログラム26等の実行に必要なデータなどを記憶する領域である。なお、メモリ14は、RAM、ROM、フラッシュメモリ、HDD、PC10に着脱されるUSBメモリ等の可搬記憶媒体、CPU12が備えるバッファなどが組み合わされて構成されている。
また、メモリ14は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non−transitoryな媒体である。non−transitoryな媒体には、上記の例の他に、CD−ROM、DVD−ROM等の記録媒体も含まれる。また、non−transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non−transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。
LCD16は、PC10の各種情報を表示する。LCD16は、ディスプレイI/F15を介してバス22に接続されている。LCD16は、ディスプレイI/F15を介して表示データを取得する。尚、本願のディスプレイは、液晶ディスプレイに限らず、有機ELディスプレイ等の他の表示方式のディスプレイでも良い。
入力I/F18は、キーボード、マウス等を含み、ユーザ操作を入力するためのインタフェースである。尚、入力I/F18は、キーボード等に限らず、LCD16の表示画面に重畳された膜状のタッチセンサでも良い。
<ラベルの作成の作動シーケンス>
アプリケーションプログラム26のベンダーは、非常に多くの種類のデバイスに対応することが必要になっている。一方で、デバイスの種類によって、想定される用途・ユーザ像、印刷性能(用紙種類、サイズ、解像度、印刷色)、通信性能、制御方式(制御コマンドの系統、対応する制御コマンドの数)が異なっている。なお、本明細書では、印刷媒体を示す語として、便宜上「用紙」を用いる。すなわち「用紙」は、厳密に紙のみを示す語ではなく、樹脂、布、金属、ガラス、木材、繊維などであってもよい。
例えば、対応が必要なデバイスの例としては、プリンタ50,51、不図示のプリンタA,B,C,Dなどがある。アプリケーションプログラム26は、画像を編集し、編集した画像を各デバイスに形成させるための画像形成データを、各デバイスに提供するプログラムである。
プリンタ50は、家庭用ラベルプリンタであり、6mm〜36mm幅のラベル状の用紙が収められたカートリッジを装着することができ、装着されたカートリッジに収められた用紙に印刷を行うことができる。また、プリンタ50の印刷解像度は180dpiであり、プリンタ50は、単色印刷を実行する。また、プリンタ50では、家具や文具などありふれた場所に貼り付ける、注意書きや物の名前を示すラベルの作成が想定されている。このため、プリンタ50では、文字と簡単な記号、イラスト程度が印刷できればよい。なお、プリンタ50は、Wi−Fiで通信するデバイスである。
プリンタ51は、プロ向けラベルプリンタであり、15mm〜102mm幅のラベル状の用紙が収められたカートリッジを装着することができ、装着されたカートリッジに収められた用紙に印刷を行うことができる。また、プリンタ51の印刷解像度は300dpiであり、プリンタ51は、単色印刷を実行する。また、プリンタ51では、食品容器の表面に貼り付ける、食品ラベルの作成が想定されている。このため、プリンタ51では、文字、囲い線、表形式のレイアウト、大量の同じラベルの連続印刷が求められる。なお、プリンタ50は、Wi−Fi、有線LAN、USBで通信するデバイスである。
プリンタAは、ページプリンタであり、B5〜A4サイズのカット紙に印刷を行うことができる。また、プリンタAの印刷解像度は1200dpiであり、プリンタAは、カラー印刷を実行する。また、プリンタAでは、一般的な、事務印刷が想定されている。なお、プリンタAは、Wi−Fi、USBで通信するデバイスである。
プリンタBは、飾りつけラベル用プリンタであり、3.5mm〜12mm程度のラベルに印刷を行うことができる。ただし、装飾用に種々の色のラベルを発売するため、対応するラベルの種類がプリンタ50,51に比べてかなり多い。また、プリンタBの印刷解像度は180dpiであり、プリンタBは、単色印刷を実行する。また、プリンタBでは、マスキングテープのような装飾用ラベルの作成が想定されており、連続したリボンのような絵柄の印刷が想定されている。なお、プリンタBは、Wi−Fiで通信するデバイスである。
プリンタCは、金属加工・木材加工プリンタであり、セットされた印刷媒体(例えば、金属・木材・ガラス)の表面に画像を形成する。画像形成の方式は、レーザ光を用いた方式であってもよい。なお、プリンタCは、USBで通信するデバイスである。
プリンタDは、開発予定のプロ向けラベルプリンタであり、23mm〜62mm幅のラベルに印刷を行うことができる。また、プリンタDの印刷解像度は600dpiであり、プリンタ51は、3色印刷を実行する。また、プリンタDは、商品容器の表面に貼り付ける、ラベルの作成が想定されている。なお、プリンタDは、Wi−Fi、Bluetoothで通信するデバイスである。また、アプリケーションプログラム26のベンダーは、これらデバイスの他に、画像形成データが示す画像を立体で再現するデバイス(例えば、3Dプリンタ・工作機器)に対応する必要があってもよい。
このように、新しく発売する機種向けのアプリケーションを設計しようとするとき、その機種の用途・ユーザ像、印刷性能、通信性能、制御方式、すべてを考慮する必要があり、とても設計が大変となる。そこで、できる限り多くの用途・ユーザ像に適したユーザI/Fを実現するモジュール(編集画面制御モジュール27)と、できる限り多くの印刷性能に対応した画像データの作成を実現するモジュール(画像データ作成モジュール28)と、できる限り多くの通信性能、制御方式に対応した通信処理、制御を実現するモジュール(デバイス制御モジュール29)とを、それぞれ設計し、組み合わせて1つのアプリケーションとすることができるよう設計する。
これにより、1つ1つのモジュールの設計に、それぞれ別の人的リソースを割り当てて、並行で設計できる。また、例えば、用途・ユーザ像は新しいが、印刷性能、通信性能が従来の機種とほぼ同じである新機種向けのアプリケーション設計において、編集画面制御モジュール27をアップデート設計するリソースだけかけて、アップデート設計した新たな編集画面制御モジュールと、従来の画像データ作成モジュール28と、従来のデバイス制御モジュール29を小修正したものとを組み合わせるという設計方針1でアプリケーションを設計できる。また、新たな用途・ユーザ像のための設計リソースだけかけた新たな編集画面制御モジュールと、従来のモジュール画像データ作成モジュール28と、従来のデバイス制御モジュール29とを小修正したものとを組み合わせるという設計方針2でアプリケーションを設計できる。また、上記設計方針1、2のいずれをとることもできる、という設計上の柔軟性をもたらすことができる。
また、例えばWindows用のアプリケーションと同等の仕様の、MacOS用のアプリケーションを設計するときも、編集画面制御モジュール27はユーザI/F関係の箇所だけ、モジュール画像データ作成モジュール28は描画関係の箇所だけ、デバイス制御モジュール29は通信関係の箇所だけ、MacOS向けの設計変更をすればすむようになる。
また、例えば、用途・ユーザ像、印刷性能は従来の機種とほぼ同じであり、従来の機種と同等の通信性能を持ち、さらに、従来の機種とは異なる、新たな通信方式でも通信できる性能を持つ新機種を発売するとき、従来の編集画面制御モジュール27,モジュール画像データ作成モジュール28,デバイス制御モジュール29を小修正して組み合わせたアプリケーションをまずリリースしておくことで、新機種をユーザが使えるようにしておいてから、新たな通信方式で新機種と通信できるモジュール画像データ作成モジュールの開発にリソースをかけて設計し、新設計したデバイス制御モジュール29に、従来の編集画面制御モジュール27と、従来のモジュール画像データ作成モジュール28とを小修正して組み合わせたアプリケーションを改めてリリースする、ということも可能になる。
以下に、上述したようなアプリケーションプログラム26の作動シーケンスについて説明する。図3乃至図7は、ラベル作成の作動シーケンスの一例を示している。なお、本実施例では、便宜上、プリンタ50,51を対象にしたアプリケーションプログラム26を説明するが、他のプリンタに対応するアプリケーションプログラム26も、基本的な処理は、プリンタ50,51を対象にしたアプリケーションプログラム26と同様である。ただし、他のプリンタに対応するアプリケーションプログラム26は、他のプリンタの用途、ユーザ像に適したユーザI/Fを実現するモジュール(編集画面制御モジュール27)と、他のプリンタの印刷性能に対応した画像データの作成を実現するモジュール(画像データ作成モジュール28)と、他のプリンタの通信性能、制御方式に対応した通信処理、制御を実現するモジュール(デバイス制御モジュール29)とを、備えている。
本明細書のシーケンスチャートは、基本的に、プログラムに記述された命令に従ったCPU12の処理を示す。すなわち、以下の説明における「判断」「取得」、「受付」、「制御」「設定」等の処理は、CPU12の処理を表している。CPU12による処理は、OS32を介したハードウェア制御も含む。なお、「取得」は要求を必須とはしない概念で用いる。すなわち、CPU12が要求することなくデータを受信するという処理も、「CPU12がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。また、「命令」「応答」「要求」等の処理は、「命令」「応答」「要求」等を示す情報を通信することにより行われる。また、「命令」「応答」「要求」等の文言を、「命令」「応答」「要求」等を示す情報そのものという意味で記載してもよい。
アプリケーションプログラム26が起動すると、編集画面制御モジュール27が、PC10と通信可能なプリンタの検索指示をマネージャ30に出力する(S100:図3参照)。マネージャ30は、検索指示を受け付けると、プリンタの検索指示をデバイス制御モジュール29に出力する(S102)。また、マネージャ30は、検索指示を、デバイス制御モジュール29だけでなく、OS32の汎用印刷モジュール17にも出力する(S103)。以下の説明では、まず、マネージャ30がプリンタの検索指示をデバイス制御モジュール29に出力した以降の処理について説明し、その後に、マネージャ30がプリンタの検索指示を汎用印刷モジュール17に出力した以降の処理について説明する。
デバイス制御モジュール29は、マネージャ30からプリンタの検索指示を受け付けると、プリンタ検索サブルーチンを実行する(S104)。プリンタ検索サブルーチンでは、デバイス制御モジュール29は、図5に示すように、PC10と通信可能なプリンタを検索し、リストアップする(S300)。この際、デバイス制御モジュール29は、プリンタ50とプリンタ51との2台のプリンタを示すプリンタ基本情報をリストアップする。プリンタ基本情報には、プリンタを識別するプリンタ識別情報と、プリンタのモデルを示すモデル情報が含まれる。プリンタ識別情報は、IPアドレスやMACアドレスなど、プリンタを一意に識別する情報であればよい。プリンタを一意に識別できれば、プリンタのニックネームを、プリンタ識別情報として用いてもよい。次に、デバイス制御モジュール29は、自身で対応可能なプリンタを示すプリンタ基本情報を抽出する(S302)。具体的には、デバイス制御モジュール29には、デバイス制御モジュール29自身が対応可能なプリンタのモデルを示す対応モデル情報を取得し、リストアップされたプリンタ基本情報のうち、対応モデル情報を含むプリンタ基本情報を抽出する。デバイス制御モジュール29は、デバイス制御モジュール29がPC10にインストールされたときにメモリ14記憶された対応モデル情報を、メモリ14から読み出すことで取得してもよい。デバイス制御モジュール29のコード内に対応モデル情報が含まれていても良い。デバイス制御モジュール29は、コード内の対応モデル情報を、バッファにロードすることで取得してもよい。デバイス制御モジュール29は、新しいバージョンであるほど対応できる機種が多いことが通常である。例えば、バージョン1のデバイス制御モジュール29は10の機種を示す対応機種情報を取得でき、バージョン2のデバイス制御モジュール29は12の機種を示す対応機種情報を取得できる。本実施例では、デバイス制御モジュール29は、プリンタ50に対応しているが、プリンタ51に対応していないものとする。このため、デバイス制御モジュール29は、プリンタ50とプリンタ51との2台のプリンタのうちプリンタ50のプリンタ基本情報を抽出する。以降、プリンタ基本情報を抽出すること、またはプリンタ情報を抽出することを、単に「プリンタを抽出する」とも記載する。
デバイス制御モジュール29は、S302で抽出したプリンタ基本情報のリストをマネージャ30に出力する(S106:図3参照)。以降、プリンタ基本情報のリストを、単に「プリンタのリスト」とも記載する。そして、マネージャ30は、プリンタのリストを編集画面制御モジュール27に出力する(S108)。編集画面制御モジュール27は、受け付けたプリンタのリストに基づいて、プリンタを選択するためのプリンタ選択画面(図示省略)をLCD16に表示する(S110)。なお、詳しくは後述するが、編集画面制御モジュール27は、マネージャ30を介して、汎用印刷モジュール17からもプリンタ基本情報のリストを取得している。そして、編集画面制御モジュール27は、汎用印刷モジュール17から取得したリストと、デバイス制御モジュール29から取得したリストをマージし、マージしたリストに基づいてプリンタ選択画面を表示させる。すなわち、プリンタ選択画面は、汎用印刷モジュール17から取得したリストに含まれるプリンタ基本情報が示すプリンタと、デバイス制御モジュール29から取得したリストに含まれるプリンタ基本情報が示すプリンタと、のどちらも選択可能な画面である。
次に、プリンタ選択画面において、ユーザ操作により任意のプリンタが選択されると(S112)、編集画面制御モジュール27は、選択されたプリンタ(以下、「選択プリンタ」と記載する)(選択デバイスの一例)を示すプリンタ情報(デバイス情報の一例)の編集画面制御モジュール27への出力指示を、マネージャ30に出力する(S114)。出力指示には、選択プリンタを示すプリンタ基本情報が含まれている。
マネージャ30は、プリンタ情報の出力指示を編集画面制御モジュール27から受け付け、かつ、デバイス制御モジュール29が出力したプリンタ基本情報が出力指示に含まれている場合に、そのプリンタ情報の出力指示をデバイス制御モジュール29に出力する(S116)。そして、デバイス制御モジュール29は、プリンタ情報の出力指示を受け付けると、プリンタ情報取得サブルーチンを実行する(S118)。
プリンタ情報取得サブルーチンでは、デバイス制御モジュール29は、図6に示すように、選択プリンタのデバイス基本情報に含まれるプリンタ識別情報を用いて選択プリンタとネットワークI/F20を介して通信を行って、選択プリンタから動的プリンタ情報を取得する(S310)。また、デバイス制御モジュール29は、選択プリンタのデバイス基本情報に含まれるモデル情報に対応する、静的プリンタ情報を取得する(S312)。なお、デバイス制御モジュール29がインストールされたときに、デバイス制御モジュール29が対応するモデルを示すモデル情報と、それぞれのモデルの静的な情報を示す静的プリンタ情報は、対応付けられた形式で、データ記憶領域34に記憶されてもよい。デバイス制御モジュール29は、データ記憶領域34から読み出すことで、選択プリンタのモデル情報に対応する静的プリンタ情報を取得してもよい。静的プリンタ情報は、デバイス制御モジュール29のコード内に含まれていても良い。デバイス制御モジュール29は、コード内の、選択プリンタのモデル情報に対応する静的プリンタ情報を、バッファにロードすることで取得してもよい。静的プリンタ情報は、例えば、選択プリンタで印刷可能な用紙サイズなどの静的な情報であり、プリンタの状態が動的に変化しても変更されない。一方、選択プリンタから取得した動的プリンタ情報は、例えば、選択プリンタにセットされている用紙サイズ動的な情報であり、プリンタの状態が動的に変化した場合に対応した値となる。
そして、デバイス制御モジュール29は、選択プリンタの基本プリンタ情報と、取得した静的プリンタ情報と、動的プリンタ情報とを統合し(S314)、選択デバイスのプリンタ情報を作成する(S316)。プリンタ情報には、選択プリンタの基本プリンタ情報と、静的プリンタ情報と、動的プリンタ情報とが含まれる。
デバイス制御モジュール29は、S316で作成したプリンタ情報をマネージャ30に出力する(S120:図3参照)。そして、マネージャ30は、プリンタ情報を編集画面制御モジュール27に出力する(S122)。編集画面制御モジュール27は、受け付けたプリンタ情報に基づいて、図8に示す編集画面100をLCD16に表示する(S124)。編集画面100には、選択プリンタの特徴を示す画像を表示するプリンタ領域102及び、選択プリンタで設定可能な印刷条件を設定するための設定領域104が表示される。なお、編集画面制御モジュール27は主に、S122で受け付けたプリンタ情報に含まれる基本プリンタ情報、静的プリンタ情報に基づいて、プリンタ領域102を表示する。プリンタ領域102には、選択プリンタの外観図、モデル情報(例えば、“Printer800”)などが含まれる。また、編集画面制御モジュール27は、S122で受け付けたプリンタ情報に基づいて、設定領域104を表示する。設定領域104には、印刷対象の用紙サイズ等を設定するための設定欄,印刷時の解像度を設定するための設定欄,印刷時の余白サイズを設定するための設定欄等が含まれる。編集画面制御モジュール27は、OS32を介して、設定欄への操作入力を受付ける。編集画面制御モジュール27は、設定欄への操作入力を受付けると(S126)、設定欄への操作入力に応じた設定情報、例えば、印刷時の解像度、印刷時の余白サイズ、用紙サイズに関するパラメータなどを、メモリ14に記憶させる。また、編集画面制御モジュール27は、設定情報を画像データ作成モジュール28に出力する(S128)。また、詳細な図示は省略するが、S128において、編集画面制御モジュール27は、設定情報が示すサイズ、背景色であるラベルを示すオブジェクトを含む画像をプレビュー領域106に表示させる。具体的には、ラベルオブジェクトを含む画像データの作成指示を受け付けた画像データ作成モジュール28は指示に従って画像データを作成し、作成した画像データを編集画面制御モジュール27に出力する。編集画面制御モジュール27は、画像データ作成モジュール28が出力した画像データを取得し、ラベルオブジェクトを含む画像を、プレビュー領域106に表示させる。なお、図示しないが、編集画面制御モジュール27は、表示されている設定欄への操作入力をいつでも受付けることが可能であり、受付ける都度、S126〜S128の処理を実行する。すなわち、ユーザは、任意のタイミングで設定欄への操作入力を行うことで、設定情報の変更を行うことができる。
編集画面100には、選択プリンタで印刷されるオブジェクトを追加するための複数のオブジェクト追加ボタンを含む、追加ボタン欄108も表示される。オブジェクト追加ボタンには、オブジェクトとしてテキストを追加するテキスト追加ボタン110,オブジェクトとしてイメージを追加するイメージ追加ボタン112などが含まれる。
そして、テキスト追加ボタン110が操作され、続く操作によってテキストが入力されると(S130)、編集画面制御モジュール27は、テキストオブジェクトを含む画像を示す画像データの作成指示を画像データ作成モジュール28に出力する(S132)。画像データの作成指示には、入力されたテキストを指定する情報,入力されたテキストの座標に関する情報等が含まれる。画像データ作成モジュール28は、画像データの作成指示を受け付けると、その画像データの作成指示に含まれる情報と、S128で受け付けている設定情報とに基づいて、表示用の画像データ(表示用画像データの一例)を作成する(S134)。つまり、画像データ作成モジュール28は、テキスト追加ボタン110への操作により、編集された画像の画像データを作成する。なお、編集された画像とは、何らかのオブジェクトが追加された画像,オブジェクトのサイズの変更された画像,オブジェクトの位置が変更された画像などを含む。この際、画像データ作成モジュール28は、設定情報に応じたサイズの用紙に、作成指示に含まれる情報により指定されるテキストを、作成指示に含まれる座標に描画するための画像データを、ベクター形式で作成する。
次に、画像データ作成モジュール28は、作成したベクター形式の画像データを、ラスター形式の画像データに変換する(S136)。続いて、画像データ作成モジュール28は、ラスター形式の画像データを編集画面制御モジュール27に出力する(S138)。そして、編集画面制御モジュール27は、画像データを受け付けると、その画像データに基づく画像を、プレビュー領域106に表示する(S140)。
また、編集画面100において、イメージ追加ボタン112が操作され、続く操作によってイメージが選択される(例 イメージデータを含むイメージファイルが選択される)と(S142:図4参照)、編集画面制御モジュール27は、イメージを示す画像データの作成指示を作成モジュール28に出力する(S144)。画像データの作成指示には、選択されたイメージを指定する情報,イメージの挿入位置の座標に関する情報等が含まれる。画像データ作成モジュール28は、画像データの作成指示を受け付けると、その画像データの作成指示に含まれる情報と、S128で受け付けている設定情報とに基づいて、表示用の画像データ(表示用画像データの一例)を作成する(S146)。つまり、画像データ作成モジュール28は、イメージ追加ボタン112への操作により、編集された画像の画像データを作成する。この際、画像データ作成モジュール28は、設定情報に応じたサイズの用紙に、挿入指示に含まれる情報により指定されるイメージ画像を、作成指示に含まれる座標に描画するための画像データを、ベクター形式で作成する。
次に、画像データ作成モジュール28は、作成したベクター形式の画像データを、ラスター形式の画像データに変換する(S148)。続いて、画像データ作成モジュール28は、ラスター形式の画像データを編集画面制御モジュール27に出力する(S150)。そして、編集画面制御モジュール27は、画像データを受け付けると、その画像データに基づく画像を、プレビュー画面106に表示する(S152)。
また、編集画面100には、プリントボタン(図8参照)120も表示されており、そのプリントボタン120が操作されると(S154)、編集画面制御モジュール27は、選択プリンタの能力情報の編集画面制御モジュール27への出力指示をマネージャ30に出力する(S156)。能力情報は、プリンタでの印刷処理時における能力を示す情報であり、具体的には、プリンタでの印刷処理時に必要な余白サイズに関する情報および、解像度に関する情報である。また、編集画面制御モジュール27は、能力情報の出力指示と関連付けて、印刷設定に関する設定情報も、マネージャ30に出力する。関連付けるという概念は、情報Aに情報Bを含めることを含む概念でもよい。また、関連付けるという概念は、情報Aと共に情報Bを出力することを含む概念でもよい。この際、出力される印刷設定に関する情報には、印刷時の解像度,余白サイズなどに関する情報であり、S126において編集画面制御モジュール27がメモリ14に記憶させた情報である。編集画面制御モジュール27は、メモリ14に記憶されている設定情報を読み出して、マネージャ30に出力する。
マネージャ30は、能力情報の出力指示を編集画面制御モジュール27から受け付けると、その能力情報の出力指示をデバイス制御モジュール29に出力する(S158)。そして、デバイス制御モジュール29は、能力情報の出力指示を受け付けると、選択プリンタとネットワークI/F20を介して通信を行って、選択プリンタから選択プリンタが対応する複数の解像度と、複数の余白サイズを示す情報を取得する(S160)。そして、デバイス制御モジュール29は、選択プリンタから取得した情報が示す、選択プリンタが対応する解像度と、余白サイズのうちから、出力指示と関連して出力された設定情報が示す解像度と余白サイズとに対応する解像度と余白サイズを、印刷時の解像度と余白サイズとして算出する(S160)。
次に、デバイス制御モジュール29は、算出した解像度と余白サイズとに関する情報を、能力情報としてマネージャ30に出力する(S162)。そして、マネージャ30は、デバイス制御モジュール29から受け付けた能力情報を編集画面制御モジュール27に出力する(S164)。続いて、編集画面制御モジュール27は、能力情報に含まれる余白サイズと解像度とを指定した画像データの作成指示を画像データ作成モジュール28に出力する(S166)。画像データの作成指示には、余白サイズと解像度とを示す情報が含まれていてもよい。
画像データ作成モジュール28は、算出された解像度と余白サイズを指定した画像データの作成指示を受け付けると、指定された解像度と余白サイズとを反映した画像データ(第1出力用画像データの一例)を、ベクター形式で作成する(S167)。次に、画像データ作成モジュール28は、作成したベクター形式の画像データを、ラスター形式の画像データに変換する(S168)。なお、画像データ作成モジュール28は、S128で編集画面制御モジュール27が出力した設定情報を取得しておき、取得した設定情報を、画像データの作成や、変換に用いてもよい。また、S132またはS144で編集画面制御モジュール27が出力した情報を取得しておき、画像データの作成や、変換に用いてもよい。続いて、画像データ作成モジュール28は、ラスター形式の画像データを編集画面制御モジュール27に出力する(S170)。そして、編集画面制御モジュール27は、画像データを受け付けると、その画像データをマネージャ30に出力する(S172)。なお、編集画面制御モジュール27は、画像データと関連付けて、メモリ14に記憶されている設定情報も、マネージャ30に出力する。
次に、マネージャ30は、選択プリンタのステータスの確認指示をデバイス制御モジュール29に出力する(S174)。デバイス制御モジュール29は、確認指示を受け付けると、選択プリンタとネットワークI/F20を介して通信を行って、選択プリンタのステータスを確認する(S176)。具体的には、デバイス制御モジュール29は選択プリンタからステータスを示す情報を受信する。さらに、デバイス制御モジュール29は、選択プリンタのステータスをマネージャ30に伝えるためのステータス情報を作成する。例えば、選択プリンタが印刷可能な状態であれば、そのこと示すステータス情報を、デバイス制御モジュール29は作成し、選択プリンタが印刷不能な状態であれば、そのこと示すステータス情報を、デバイス制御モジュール29は作成する。そして、デバイス制御モジュール29は、作成したステータス情報をマネージャ30に出力する(S178)。
次に、マネージャ30は、受け付けたステータス情報に基づいて、選択プリンタのステータスを確認する(S180)。そして、選択プリンタが印刷可能な状態であることをステータス情報が示している場合に、マネージャ30は、画像データ及び設定情報をデバイス制御モジュール29に出力する(S182)。デバイス制御モジュール29は、画像データを受け付けると、プリンタ送信サブルーチンを実行する(S184)。
プリンタ送信サブルーチンでは、デバイス制御モジュール29は、図7に示すように、設定情報に従って、受け付けた画像データに対応する印刷用の画像データ(第2出力用画像データの一例)を作成する(S320)。この際、デバイス制御モジュール29は、プリンタ50で印刷可能な形式で印刷用の画像データを作成する。次に、デバイス制御モジュール29は、作成した印刷用の画像データを、送信用の画像データに変換する(S322)。具体的には、例えば、デバイス制御モジュール29は、プリンタ50で印刷される1ライン毎に印刷用の画像データを分割し、分割された画像データ毎に、設定情報に応じて印刷を実行するためのコマンドを付加する。そして、デバイス制御モジュール29は、1ライン毎に分割され、コマンドの付加された画像データを、選択プリンタに送信する(S324)。これにより、プリンタ送信サブルーチンは終了する。なお、画像データを受信した選択プリンタは、画像データに付加されたコマンドに従って、1ライン毎の印刷処理を実行する。
また、先に説明したように、マネージャ30は、PC10と通信可能なプリンタの検索指示を編集画面制御モジュール27から受け付けると(S100:図3参照)、検索指示を、デバイス制御モジュール29だけでなく、OS32の汎用印刷モジュール17にも出力する(S103)。検索指示を受付けた汎用印刷モジュール17は、編集画面制御モジュール27であればS102〜S106に相当する処理を実行する。例えば、汎用印刷モジュール17は、OS32によってデータ記憶領域34に記憶されたプリンタ基本情報を取得し、マネージャ30に、プリンタ基本情報のリストを出力する。OS32は、ネットワークI/F20を介して接続しているプリンタのうちの、選択候補であるプリンタのうちから、汎用印刷モジュール17からの印刷に用いるプリンタを選択する。OS32は、データ記憶領域34に、選択候補であるプリンタのプリンタ基本情報を記憶させている。
先に説明したように、マネージャ30は、デバイス制御モジュール29が出力したプリンタ基本情報のリストと、汎用印刷モジュール17が出力したプリンタ基本情報のリストと、を編集画面制御モジュール27に出力する(S108)編集画面制御モジュール27は、双方のプリンタ基本情報のリストに基づいて、プリンタ選択画面をLCD16に表示する(S110)。
ユーザ操作により、汎用印刷モジュール17から出力されたプリンタ基本情報が示すプリンタが選択プリンタとして選択された場合は(S112)、S114〜S122の処理を実行することなく、編集画面制御モジュール27は、プリンタ基本情報に基づいて、図8に示す編集画面100をLCD16に表示する(S124)点が、デバイス制御モジュール29から出力されたプリンタ基本情報が示すプリンタが選択プリンタとして選択された場合と異なる。汎用印刷モジュール17は、デバイス制御モジュール29ほど高性能な、プリンタ情報を取得する機能が備えられていない。特定ベンダーの製品であるプリンタ50、51などに最適に設計されたデバイス制御モジュール29とは異なり、汎用印刷モジュール17はOS標準の汎用的なモジュールであるためである。そのため、編集画面制御モジュール27は、汎用印刷モジュール17から、基本プリンタ情報以上のプリンタ情報を取得しない。なお、編集画面制御モジュール27がS114を実行するものの、マネージャ30が情報取得できないことを示す返信を行い、編集画面制御モジュール27がS124を実行する、という構成でもよい。
なお、S126〜S154までの処理は、デバイス制御モジュール29から出力されたプリンタ基本情報が示すプリンタが選択プリンタとして選択されている場合の処理と基本的な違いはないので、説明を省略する。
汎用印刷モジュール17から出力されたプリンタ基本情報が示すプリンタが選択プリンタとして選択されている場合に、編集画面100において、プリントボタン120が操作されると(S154)、編集画面制御モジュール27は、S158〜S164の処理を実行することなく、画像データの作成指示を画像データ作成モジュール28に出力する(S166)。すなわち、画像データの作成指示は、デバイス制御モジュール29が算出した解像度と余白サイズとを指定していない。画像データ作成モジュール28は、画像データの作成指示を受け付けると、S128で編集画面制御モジュール27が出力した設定情報が示す解像度と余白サイズを反映した画像データを、ベクター形式で作成する(S247)。また、画像データ作成モジュール28は、画像データの作成指示がデバイス制御モジュール29が算出した解像度と余白サイズとを指定していない場合に、汎用印刷モジュール17による処理に適した解像度と余白サイズを反映した画像データを作成してもよい。また、汎用印刷モジュール17から出力されたプリンタ基本情報が示すプリンタが選択プリンタとして選択されている場合に、編集画面制御モジュール27は、汎用印刷モジュール17による処理に適した解像度と余白サイズを指定した画像データの作成指示を画像データ作成モジュール28に出力しても良い。
以降の処理は、の処理は、デバイス制御モジュール29から出力されたプリンタ基本情報が示すプリンタが選択プリンタとして選択されている場合の処理と基本的な違いはないので、説明を省略する。
このように、プリンタシステム1では、プリンタ50により印刷処理を行う際に、デバイス制御モジュール29がプリンタ50と通信を行って、プリンタ50からプリンタ情報を取得し、そのプリンタ情報に基づいて編集画面100が作成される。これにより、動的に変化するプリンタ50の状態を、編集画面100に反映することが可能となり、現状のプリンタ50に応じた編集画面100を作成することが可能となる。また、デバイス制御モジュール29は、プリンタ50と通信を行って、プリンタ50から能力情報を取得し、その能力情報に基づいて、画像データ作成モジュール28が画像データを作成する。これにより、プリンタ50の能力を充分に活かした画像データを作成することが可能となる。
また、デバイス制御モジュール29を利用して印刷処理を行うことができないプリンタ51であっても、汎用印刷モジュール17を利用することで、プリンタ51による印刷処理を実行することが可能となる。
また、プリンタ50の印刷処理を実行するためのアプリケーションプログラム26が、編集画面制御モジュール27と画像データ作成モジュール28とデバイス制御モジュール29とにより構成されている。編集画面制御モジュール27は、画像データ作成時に画像の作成等に用いられる編集画面100等の画面をLCD16に表示するプログラムである。また、画像データ作成モジュール28は、編集画面制御モジュール27からの指示に従って画像データを作成するプログラムである。また、デバイス制御モジュール29は、ネットワークI/F20を介してプリンタ50と通信し、プリンタ50からの各種情報の取得,プリンタ50への印刷指示の送信等を実行するプログラムである。このため、編集画面制御モジュール27と画像データ作成モジュール28とデバイス制御モジュール29とを並行して開発することで、画像作成処理の開発と、表示画像の開発と、プリンタ50との通信の開発とを、並行して行うことが可能である。また、編集画面制御モジュール27と画像データ作成モジュール28とデバイス制御モジュール29とを個別に開発することで、画像作成処理の開発と、表示画像の開発と、プリンタ50との通信の開発とを、個別に行うことが可能である。つまり、開発済みの処理がある場合には、開発済みの処理を実行するプログラムを流用し、未開発の処理に対応するプログラムのみを開発することが可能である。これにより、アプリケーションプログラム26の開発を効率的に行うことが可能となる。
なお、S132,S144を実行するCPU12は、第1指示出力手段の一例である。S136,S148を実行するCPU12は、第1作成手段の一例である。S138,S150を実行するCPU12は、第1画像データ出力手段の一例である。S140,S152を実行するCPU12は、第1表示制御手段の一例である。S166を実行するCPU12は、第2指示出力手段の一例である。S168を実行するCPU12は、第2作成手段の一例である。S170を実行するCPU12は、第2画像データ出力手段の一例である。S182を実行するCPU12は、第3指示出力手段の一例である。S320を実行するCPU12は、第3作成手段の一例である。S324を実行するCPU12は、デバイス通信手段の一例である。S116を実行するCPU12は、第5指示出力手段の一例である。S118を実行するCPU12は、第1取得手段の一例である。S120を実行するCPU12は、デバイス情報出力手段の一例である。S124を実行するCPU12は、第2表示制御手段の一例である。S102を実行するCPU12は、第4指示出力手段の一例である。S106を実行するCPU12は、第1識別情報出力手段の一例である。S202を実行するCPU12は、第6指示出力手段の一例である。S206を実行するCPU12は、第2識別情報出力手段の一例である。S158を実行するCPU12は、第7指示出力手段の一例である。S162を実行するCPU12は、能力情報出力手段及び、情報受付手段の一例である。S160を実行するCPU12は、第2取得手段の一例である。
<実施例の効果>
上記した実施形態によれば、以下の効果を奏する。
編集画面制御モジュール27は、ネットワークI/F20を介して通信可能なプリンタ50に関するプリンタ情報の出力を指示する出力指示情報を、デバイス制御モジュール29に出力する。デバイス制御モジュール29は、その出力指示情報を受け付けた場合に、ネットワークI/F20を介してプリンタ50と通信し、プリンタ情報を取得するとともに、プリンタ情報を編集画面制御モジュール27に出力する。編集画面制御モジュール27は、そのプリンタ情報を受け付けた場合に、当該プリンタ情報をLCD16に表示する。これにより、選択プリンタの動的に変化するプリンタ情報を、ユーザが閲覧することが可能となる。
LCD16に表示されたプリンタ情報のうちの任意のプリンタ情報が選択された場合に、編集画面制御モジュール27は、選択されたプリンタ情報と、表示用画像データの作成指示とを、画像データ作成モジュール28に出力する。画像データ作成モジュール28は、受け付けたプリンタ情報に従って表示用画像データを作成する。これにより、選択デバイスの動的に変化するプリンタ情報に応じた印刷処理を実行できる。
編集画面制御モジュール27は、ネットワークI/F20を介して通信可能なプリンタの識別情報の出力を指示する出力指示情報を、デバイス制御モジュール29に出力する。デバイス制御モジュール29は、出力指示情報に従って、プリンタの識別情報を編集画面制御モジュール27に出力する。そして、その識別情報により識別されるプリンタから任意のプリンタを選択プリンタとして選択された場合に、編集画面制御モジュール27は、選択デバイスに対応する表示用画像データの作成を指示する作成指示情報を、画像データ作成モジュール28に出力する。画像データ作成モジュール28は、作成指示情報に従って、選択デバイスに対応する表示用画像データを作成する。これにより、選択プリンタに応じた画像データを作成することができる。
編集画面制御モジュール27は、ネットワークI/F20を介して通信可能なプリンタの識別情報の出力を指示する出力指示情報を、汎用印刷モジュール17に出力する。汎用印刷モジュール17は、出力指示情報に従って、プリンタの識別情報を編集画面制御モジュール27に出力する。そして、その識別情報により識別されるプリンタから任意のプリンタを選択プリンタとして選択された場合に、編集画面制御モジュール27は、選択デバイスに対応する表示用画像データの作成を指示する作成指示情報を、画像データ作成モジュール28に出力する。画像データ作成モジュール28は、作成指示情報に従って、選択デバイスに対応する表示用画像データを作成する。これにより、デバイス制御モジュール29が対応不能なデバイス、つまり、プリンタ51による印刷処理を、汎用印刷モジュール17を用いて行うことができる。
選択プリンタで印刷可能な用紙サイズが選択された場合に、編集画面制御モジュール27は、選択された用紙サイズに対応する表示用画像データの作成を指示する第1作成指示情報を、画像データ作成モジュール28に出力する。画像データ作成モジュール28は、作成指示情報に従って、選択された用紙サイズに対応する表示用画像データを作成する。これにより、用紙サイズに応じた画像データを作成することができる。
編集画面制御モジュール27は、印刷指示を示す操作が入力された場合に、選択プリンタの能力を示す能力情報の出力を指示する出力指示情報を、デバイス制御モジュール29に出力する。デバイス制御モジュール29は、出力指示情報に従って、能力情報を編集画面制御モジュール27に出力する。編集画面制御モジュール27は、能力情報を受け付けると、受け付けた能力情報に基づく画像データの作成を指示する作成指示情報を、画像データ作成モジュール28に出力する。画像データ作成モジュール28は、作成指示情報に従って、能力情報に基づいて画像データを作成する。これにより、選択プリンタの能力に応じた画像データを作成することができる。
デバイス制御モジュール29は、ネットワークI/F20を介してプリンタ50と通信し、プリンタ50から能力情報を取得し、取得した能力情報を、編集画面制御モジュール27に出力する。これにより、選択プリンタの動的に変化する能力情報を反映した画像データを作成することができる。
また、本発明は、上記実施形態に限定されるものではなく、当業者の知識に基づいて種々の変更、改良を施した種々の態様で実施することが可能である。具体的には、例えば、上記実施形態では、編集画面制御モジュール27がマネージャ30を有しており、マネージャ30を介して、デバイス制御モジュール29及び汎用印刷モジュール17とデータの入出力を行っているが、マネージャ30を介さずに、デバイス制御モジュール29及び汎用印刷モジュール17とデータの入出力を行ってもよい。
また、上記実施形態では、画像データ作成モジュール28が、ベクター形式の画像データを作成し、ベクター形式の画像データをラスター形式の画像データに変換しているが、画像データ作成モジュール28以外のモジュールが、ベクター形式の画像データをラスター形式の画像データに変換してもよい。例えば、画像データ作成モジュール28が、ベクター形式の画像データを作成し、デバイス制御モジュール29が、画像データ作成モジュール28から出力された画像データに対応する印刷用の画像データを、ラスター形式で作成してもよい。
また、上記実施形態では、CPU12によって図2乃至図7に示す処理が実行される例を説明したが、これら処理は、CPU12に限らず、ASICや他の論理集積回路により実行されてもよいし、これら処理が、CPU等やASIC、他の論理集積回路が協働することにより実行されてもよい。
10:PC、12:CPU、16:LCD、17:汎用印刷モジュール、18:入力I/F、20:ネットワークI/F、26:アプリケーションプログラム、27:編集画面制御モジュール、28:画像データ作成モジュール、29:デバイス制御モジュール、32:OS

Claims (9)

  1. ユーザインタフェースと、ネットワークインタフェースと、ディスプレイとを備えた情報処理装置のコンピュータが読み取り可能なプログラムであって、
    編集画面制御モジュールと、画像データ作成モジュールと、第1デバイス制御モジュールとを備え、
    前記編集画面制御モジュールは、
    前記コンピュータを、
    前記ユーザインタフェースを介して受け付けた操作入力が編集指示入力である場合に、表示用画像データの作成を指示する第1作成指示情報を、前記画像データ作成モジュールに出力する第1指示出力手段として機能させ、前記表示用画像データは、前記編集指示入力に従って編集されたオブジェクトを含む画像を示す画像データであり
    前記画像データ作成モジュールは、
    前記コンピュータを、
    前記第1指示出力手段が出力した前記第1作成指示情報に従って、前記表示用画像データを作成する第1作成手段と、
    前記第1作成手段が作成した表示用画像データを、前記編集画面制御モジュールに出力する第1画像データ出力手段と、
    して機能させ、
    前記編集画面制御モジュールは、
    前記コンピュータを、
    前記第1指示出力手段が前記第1作成指示情報を出力した後に、前記第1画像データ出力手段が出力した表示用画像データを受け付けた場合に、当該表示用画像データに基づく画像である表示用画像を前記ディスプレイに表示させる第1表示制御手段と、
    前記ユーザインタフェースを介して受け付けた操作入力がデバイス使用指示入力である場合に、前記第1作成手段が作成した前記表示用画像データに対応する第1出力用画像データの作成を指示する第2作成指示情報を、前記画像データ作成モジュールに出力する第2指示出力手段として機能させ、前記第1出力用画像データは、前記第1デバイス制御モジュールにおいて、第2出力用画像データを作成するために用いられる画像データであり、
    前記画像データ作成モジュールは、
    前記コンピュータを、
    前記第2指示出力手段が出力した第2作成指示情報に従って、前記第1出力用画像データを作成する第2作成手段と、
    前記第2作成手段が作成した第1出力用画像データを、前記編集画面制御モジュールに出力する第2画像データ出力手段と、
    して機能させ、
    前記編集画面制御モジュールは、
    前記コンピュータを、
    前記第2指示出力手段が前記第2作成指示情報を出力した後に、前記第2画像データ出力手段が出力した第1出力用画像データを受け付けた場合に、前記第2出力用画像データの出力を指示する第1出力指示情報を、前記第1デバイス制御モジュールに出力する第3指示出力手段と、
    して機能させ、
    前記第1デバイス制御モジュールは、
    前記コンピュータを、
    前記第3指示出力手段が出力した第1出力指示情報に従って、選択デバイスに対応する前記第2出力用画像データを作成する第3作成手段として機能させ、前記選択デバイスは、複数の対応デバイスのうち、前記第2出力用画像データの出力先として選択されたデバイスであり、前記複数の対応デバイスはそれぞれ、前記第1デバイス制御モジュールが対応可能なタイプのデバイスであり、
    当該第2出力用画像データを、前記ネットワークインタフェースを介して、前記選択デバイスに出力するデバイス通信手段と、
    して機能させることを特徴とするプログラム。
  2. 前記編集画面制御モジュールは、
    前記コンピュータを、
    前記ネットワークインタフェースを介して通信可能なデバイスに関するデバイス情報の出力を指示する第2出力指示情報を、前記第1デバイス制御モジュールに出力する第5指示出力手段と、
    して機能させ、
    前記第1デバイス制御モジュールは、
    前記コンピュータを、
    前記第5指示出力手段が出力した第2出力指示情報を受け付けた場合に、前記ネットワークインタフェースを介してデバイスと通信し、前記デバイス情報を取得する第1取得手段と、
    前記第1取得手段が取得したデバイス情報を前記編集画面制御モジュールに出力するデバイス情報出力手段と、
    して機能させ、
    前記編集画面制御モジュールは、
    前記コンピュータを、
    前記デバイス情報出力手段が出力したデバイス情報を受け付けた場合に、当該デバイス情報を前記ディスプレイに表示させる第2表示制御手段と、
    して機能させることを特徴とする請求項1に記載のプログラム。
  3. 前記編集指示入力が、前記第2表示制御手段が表示したデバイス情報のうちの任意のデバイス情報を選択するための操作入力である場合に、
    前記第1指示出力手段は、
    前記編集指示入力により選択されたデバイス情報と、前記第1作成指示情報とを、前記画像データ作成モジュールに出力し、
    前記第1作成手段は、
    前記第1指示出力手段が出力したデバイス情報に従って前記表示用画像データを作成することを特徴とする請求項2に記載のプログラム。
  4. 前記編集画面制御モジュールは、
    前記コンピュータを、
    前記ネットワークインタフェースを介して通信可能なデバイスの識別情報の出力を指示する第3出力指示情報を、前記第1デバイス制御モジュールに出力する第4指示出力手段と、
    して機能させ、
    前記第1デバイス制御モジュールは、
    前記コンピュータを、
    前記第4指示出力手段が出力した第3出力指示情報に従って、前記識別情報を、前記編集画面制御モジュールに出力する第1識別情報出力手段と、
    して機能させ、
    前記編集指示入力が、前記第1識別情報出力手段が出力した前記識別情報により識別されるデバイスから任意のデバイスを前記選択デバイスとして選択するための操作入力である場合に、
    前記第1指示出力手段は、
    前記編集指示入力により選択された選択デバイスに対応する前記表示用画像データの作成を指示する前記第1作成指示情報を、前記画像データ作成モジュールに出力し、
    前記第1作成手段は、
    前記第1指示出力手段が出力した第1作成指示情報に従って、前記選択デバイスに対応する前記表示用画像データを作成することを特徴とする請求項1乃至3の何れか1つに記載のプログラム。
  5. 前記情報処理装置のオペレーティングシステムは、第2デバイス制御モジュールを備え、
    前記編集画面制御モジュールは、
    前記コンピュータを、
    前記ネットワークインタフェースを介して通信可能なデバイスの識別情報の出力を指示する第4出力指示情報を、前記第2デバイス制御モジュールに出力する第6指示出力手段と、
    して機能させ、
    前記第2デバイス制御モジュールは、
    前記コンピュータを、
    前記第6指示出力手段が出力した第4出力指示情報に従って、前記識別情報を、前記編集画面制御モジュールに出力する第2識別情報出力手段と、
    して機能させ、
    前記編集指示入力が、前記第2識別情報出力手段が出力した前記識別情報により識別されるデバイスから任意のデバイスを前記選択デバイスとして選択するための操作入力である場合に、
    前記第1指示出力手段は、
    前記編集指示入力により選択された選択デバイスに対応する前記表示用画像データの作成を指示する前記第1作成指示情報を、前記画像データ作成モジュールに出力し、
    前記第1作成手段は、
    前記第1指示出力手段が出力した第1作成指示情報に従って、前記選択デバイスに対応する前記表示用画像データを作成することを特徴とする請求項1乃至4の何れか1つに記載のプログラム。
  6. 前記編集指示入力が、前記選択デバイスで印刷可能な用紙サイズを選択するための操作入力である場合に、
    前記第1指示出力手段は、
    前記編集指示入力により選択された用紙サイズに対応する前記表示用画像データの作成を指示する前記第1作成指示情報を、前記画像データ作成モジュールに出力し、
    前記第1作成手段は、
    前記第1指示出力手段が出力した第1作成指示情報に従って、前記編集指示入力により選択された用紙サイズに対応する前記表示用画像データを作成することを特徴とする請求項4又は5に記載のプログラム。
  7. 前記編集画面制御モジュールは、
    前記コンピュータを、
    前記デバイス使用指示入力が、印刷指示を示す操作入力である場合に、前記選択デバイスの能力を示す能力情報の出力を指示する第5出力指示情報を、前記第1デバイス制御モジュールに出力する第7指示出力手段と、
    して機能させ、
    前記第1デバイス制御モジュールは、
    前記コンピュータを、
    前記第7指示出力手段が出力した第5出力指示情報に従って、前記能力情報を前記編集画面制御モジュールに出力する能力情報出力手段と、
    して機能させ、
    前記編集画面制御モジュールは、
    前記コンピュータを、
    前記能力情報出力手段が出力した能力情報を受け付ける情報受付手段と、
    して機能させ、
    前記第2指示出力手段は、
    前記情報受付手段が受け付けた能力情報に基づく前記第1出力用画像データの作成を指示する前記第2作成指示情報を、前記画像データ作成モジュールに出力し、
    前記第2作成手段は、
    前記第2指示出力手段が出力した第2作成指示情報に従って、前記能力情報に基づいて前記第1出力用画像データを作成することを特徴とする請求項4乃至6の何れか1つに記載のプログラム。
  8. 前記第1デバイス制御モジュールは、
    前記コンピュータを、
    前記第7指示出力手段が出力した第5出力指示情報を受け付けた場合に、前記ネットワークインタフェースを介してデバイスと通信し、前記能力情報を取得する第2取得手段と、
    して機能させ、
    前記能力情報出力手段は、
    前記第2取得手段が取得した能力情報を、前記編集画面制御モジュールに出力することを特徴とする請求項7に記載のプログラム。
  9. ユーザインタフェースと、ディスプレイとを備えた情報処理装置のコンピュータが読み取り可能な編集画面制御モジュールであって、
    前記コンピュータは、画像データ作成モジュールと、第1デバイス制御モジュールとを読み取り可能であり、
    前記コンピュータを、
    前記ユーザインタフェースを介して受け付けた操作入力が編集指示入力である場合に、表示用画像データの作成を指示する第1作成指示情報を、前記画像データ作成モジュールに出力する第1指示出力手段として機能させ、前記表示用画像データは、前記編集指示入力に従って編集されたオブジェクトを含む画像を示す画像データであり
    前記コンピュータを、
    前記第1指示出力手段が前記第1作成指示情報を出力した後に、前記画像データ作成モジュールが出力した表示用画像データを受け付けた場合に、当該表示用画像データに基づく画像である表示用画像を前記ディスプレイに表示させる第1表示制御手段と、
    前記ユーザインタフェースを介して受け付けた操作入力がデバイス使用指示入力である場合に、前記画像データ作成モジュールが作成した前記表示用画像データに対応する第1出力用画像データの作成を指示する第2作成指示情報を、前記画像データ作成モジュールに出力する第2指示出力手段として機能させ、前記第1出力用画像データは、前記第1デバイス制御モジュールにおいて、第2出力用画像データを作成するために用いられる画像データであり、
    前記コンピュータを、
    前記第2指示出力手段が前記第2作成指示情報を出力した後に、前記画像データ作成モジュールが出力した第1出力用画像データを受け付けた場合に、前記第2出力用画像データの出力を指示する第1出力指示情報を、前記第1デバイス制御モジュールに出力する第3指示出力手段と、
    して機能させることを特徴とする編集画面制御モジュール。
JP2017178131A 2017-09-15 2017-09-15 プログラム及び編集画面制御モジュール Active JP6926876B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017178131A JP6926876B2 (ja) 2017-09-15 2017-09-15 プログラム及び編集画面制御モジュール
US16/022,093 US10574842B2 (en) 2017-09-15 2018-06-28 Information processing apparatus, method of controlling the same and non-transitory computer-readable medium storing instructions therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017178131A JP6926876B2 (ja) 2017-09-15 2017-09-15 プログラム及び編集画面制御モジュール

Publications (2)

Publication Number Publication Date
JP2019053605A JP2019053605A (ja) 2019-04-04
JP6926876B2 true JP6926876B2 (ja) 2021-08-25

Family

ID=65719545

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017178131A Active JP6926876B2 (ja) 2017-09-15 2017-09-15 プログラム及び編集画面制御モジュール

Country Status (2)

Country Link
US (1) US10574842B2 (ja)
JP (1) JP6926876B2 (ja)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001067347A (ja) * 1999-06-23 2001-03-16 Canon Inc 情報処理装置、情報処理方法およびコンピュータ読み取り可能なプログラムを格納した記憶媒体
WO2005041029A2 (en) * 2003-10-24 2005-05-06 Matsushita Electric Industrial Co., Ltd. Remote operation system, communication apparatus remote control system and document inspection apparatus
JP4793000B2 (ja) * 2006-02-01 2011-10-12 ブラザー工業株式会社 印刷データ編集装置及び印刷データ編集プログラム
US8259350B2 (en) * 2009-01-13 2012-09-04 Xerox Corporation Job-specific print defect management
JP5924218B2 (ja) 2012-09-28 2016-05-25 ブラザー工業株式会社 テンプレート処理プログラム及びテンプレート処理方法
JP6553946B2 (ja) * 2014-07-03 2019-07-31 キヤノン株式会社 印刷制御システム、印刷制御装置、印刷制御方法、及びプログラム
JP6672959B2 (ja) * 2016-03-31 2020-03-25 ブラザー工業株式会社 印刷システム、ドライバプログラム、及びプリンタ

Also Published As

Publication number Publication date
JP2019053605A (ja) 2019-04-04
US10574842B2 (en) 2020-02-25
US20190089851A1 (en) 2019-03-21

Similar Documents

Publication Publication Date Title
US11039039B2 (en) Apparatus, system, and product for converting designated image area with object for printing in a spot color into printing data
JP4743260B2 (ja) プリンタ
JP4895347B2 (ja) 文書管理システム及びその制御方法
US20100077379A1 (en) Image processing apparatus, image processing method, and recording medium
US11650778B2 (en) Control method, information processing apparatus, and print system
JP7040204B2 (ja) アプリケーションプログラム
JP6558165B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP7119490B2 (ja) アプリケーションプログラム
US11403049B2 (en) Printing system, non-transitory recording medium, and print control method
US20120274975A1 (en) Printing system, print data generator, processor, printing method and non-transitory recording medium
JP5077105B2 (ja) 画像処理装置、画像処理プログラム及び画像処理システム
JP6933077B2 (ja) プログラムおよび印刷システム
JP6926876B2 (ja) プログラム及び編集画面制御モジュール
JP7022305B2 (ja) 制御プログラム及び、情報処理装置
JP6365093B2 (ja) 情報処理装置及びプログラム
JP7005181B2 (ja) 情報処理装置及びその制御方法、並びにプログラム
JP6907851B2 (ja) 制御プログラム
JP2014228954A (ja) 機能記述作成プログラム、機能記述作成方法及び機能記述作成システム
JP7024547B2 (ja) アプリケーションプログラム
JP2019053403A (ja) プログラムおよび印刷システム
US9588942B2 (en) Information processing apparatus and information processing method
JP6950391B2 (ja) 制御プログラム及び画像データ作成モジュール
JP2021002245A (ja) 制御プログラム、および情報処理装置
JP2019125081A (ja) プログラム及び情報処理装置
US20230004332A1 (en) Printing system, non-transitory computer-executable medium, and image forming apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200904

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210628

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210706

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210719

R150 Certificate of patent or registration of utility model

Ref document number: 6926876

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150