(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-03
(45)【発行日】2023-07-11
(54)【発明の名称】アプリケーションプログラムおよび情報処理装置
(51)【国際特許分類】
G06F 3/12 20060101AFI20230704BHJP
【FI】
G06F3/12 324
G06F3/12 325
G06F3/12 328
G06F3/12 373
G06F3/12 304
(21)【出願番号】P 2019054213
(22)【出願日】2019-03-22
【審査請求日】2022-03-01
(73)【特許権者】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000291
【氏名又は名称】弁理士法人コスモス国際特許商標事務所
(72)【発明者】
【氏名】甲斐 卓文
【審査官】征矢 崇
(56)【参考文献】
【文献】特開2016-057799(JP,A)
【文献】特開2014-109856(JP,A)
【文献】特開2015-084590(JP,A)
【文献】特開2012-139890(JP,A)
【文献】特開2013-218472(JP,A)
【文献】特開2019-008546(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F3/12
(57)【特許請求の範囲】
【請求項1】
情報処理装置のコンピュータによって実行可能なアプリケーションプログラムであって、
前記コンピュータに、
デバイスでの画像処理に用いる設定値を、前記情報処理装置のオペレーティングシステムから取得する取得処理と、
前記取得処理にて取得した前記設定値が前記アプリケーションプログラムで設定可能な設定値である場合に、前記取得処理にて取得した前記設定値を前記アプリケーションプログラムの設定値に設定する第1設定処理と、
前記取得処理にて取得した前記設定値が前記アプリケーションプログラムで設定可能な設定値でない場合に、前記取得処理にて取得した前記設定値を前記アプリケーションプログラムの設定値に設定しないで前記情報処理装置のメモリに記憶する設定値記憶処理と、
前記メモリに前記設定値が記憶されており、かつ前記メモリに記憶されている前記設定値が前記アプリケーションプログラムで設定可能な設定値である場合に、前記メモリに記憶されている前記設定値を前記アプリケーションプログラムの設定値に設定する第2設定処理と、
を実行させ
、
さらに前記コンピュータに、
前記第2設定処理を、前記アプリケーションプログラムでのデバイスの選択時であって、選択されたデバイスが前記アプリケーションプログラムのアップデート後に最初に選択された場合に実行させる、
ことを特徴とするアプリケーションプログラム。
【請求項2】
請求項1に記載するアプリケーションプログラムにおいて、
前記アプリケーションプログラムは、前記デバイスに前記画像処理を行わせることが可能であり、
前記取得処理では、
前記デバイスに対応するドライバプログラムを用いて前記デバイスに前記画像処理を行わせた際の設定値を、前記オペレーティングシステムから取得する、
ことを特徴とするアプリケーションプログラム。
【請求項3】
請求項1
または請求項2に記載するアプリケーションプログラムにおいて、
前記コンピュータに、
前記第1設定処理の実行後、前記第1設定処理の実行済みを示す実行情報を前記メモリに記憶する実行情報記憶処理を実行させ、
さらに前記コンピュータに、
前記メモリに前記実行情報が記憶されていなかった場合に、前記取得処理を実行させる、
ことを特徴とするアプリケーションプログラム。
【請求項4】
請求項1から
請求項3のいずれか1つに記載するアプリケーションプログラムにおいて、
前記オペレーティングシステムは、前記デバイスに対応するドライバプログラムを用いて前記画像処理を行わせるデバイスを登録又は削除可能であり、
前記取得処理では、
前記設定値のうち、前記オペレーティングシステムに登録されているデバイスの画像処理に用いる前記設定値を、前記オペレーティングシステムから取得する一方、前記オペレーティングシステムに登録されていないデバイスの画像処理に用いる前記設定値を、前記オペレーティングシステムから取得しない、
ことを特徴とするアプリケーションプログラム。
【請求項5】
請求項1から
請求項4のいずれか1つに記載するアプリケーションプログラムにおいて、
前記第1設定処理では、
前記取得処理にて取得した前記設定値が前記アプリケーションプログラムで設定可能な設定値である場合に、前記取得処理にて取得した前記設定値を前記アプリケーションプログラムの設定値に設定するか否かの選択を受け付け、設定する選択を受け付けた場合に、前記取得処理にて取得した前記設定値を前記アプリケーションプログラムの設定値に設定する、
ことを特徴とするアプリケーションプログラム。
【請求項6】
請求項1から
請求項5のいずれか1つに記載するアプリケーションプログラムにおいて、
前記第2設定処理では、
前記メモリに前記設定値が記憶されており、かつ前記メモリに記憶されている前記設定値が前記アプリケーションプログラムで設定可能な設定値である場合に、前記メモリに記憶されている前記設定値を前記アプリケーションプログラムの設定値に設定するか否かの選択を受け付け、設定する選択を受け付けた場合に、前記メモリに記憶されている前記設定値を前記アプリケーションプログラムの設定値に設定する、
ことを特徴とするアプリケーションプログラム。
【請求項7】
請求項1から
請求項6のいずれか1つに記載するアプリケーションプログラムにおいて、
前記コンピュータに、
前記取得処理にて取得した前記設定値が前記アプリケーションプログラムで設定可能な設定値でない場合、前記取得処理にて取得した前記設定値を示す情報を、前記デバイスのメーカのサーバに送信する送信処理を実行させる、
ことを特徴とするアプリケーションプログラム。
【請求項8】
請求項1から
請求項7のいずれか1つに記載するアプリケーションプログラムにおいて、
前記オペレーティングシステムは、前記デバイスに対応するドライバプログラムを用いた前記画像処理の実行履歴を前記メモリに記憶するものであり、
前記取得処理では、
前記実行履歴から、前記設定値を取得する、
ことを特徴とするアプリケーションプログラム。
【請求項9】
請求項1から
請求項7のいずれか1つに記載するアプリケーションプログラムにおいて、
前記オペレーティングシステムは、前記デバイスに対応するドライバプログラムを用いた前記画像処理の条件のプリセット情報を前記メモリに記憶するものであり、
前記取得処理では、
前記プリセット情報から、前記設定値を取得する、
ことを特徴とするアプリケーションプログラム。
【請求項10】
請求項1から
請求項9のいずれか1つに記載するアプリケーションプログラムにおいて、
前記第2設定処理では、
前記メモリに記憶されている前記設定値が前記アプリケーションプログラムで設定可能な設定値である場合に、前記メモリに記憶されている前記設定値を前記アプリケーションプログラムの設定値に設定した後、前記設定値を削除する、
ことを特徴とするアプリケーションプログラム。
【請求項11】
メモリと、
コンピュータと、
を備え、デバイスに画像処理を指示することが可能なアプリケーションプログラムが組み込まれた情報処理装置であって、
前記コンピュータは、
前記デバイスでの前記画像処理に用いる設定値を、前記情報処理装置のオペレーティングシステムから取得する取得処理と、
前記取得処理にて取得した前記設定値が前記アプリケーションプログラムで設定可能な設定値である場合に、前記取得処理にて取得した前記設定値を前記アプリケーションプログラムの設定値に設定する第1設定処理と、
前記取得処理にて取得した前記設定値が前記アプリケーションプログラムで設定可能な設定値でない場合に、前記取得処理にて取得した前記設定値を前記アプリケーションプログラムの設定値に設定しないで前記メモリに記憶する設定値記憶処理と、
前記メモリに前記設定値が記憶されており、かつ前記メモリに記憶されている前記設定値が前記アプリケーションプログラムで設定可能な設定値である場合に、前記メモリに記憶されている前記設定値を前記アプリケーションプログラムの設定値に設定する第2設定処理と、
を実行
し、
さらに前記コンピュータは、
前記第2設定処理を、前記アプリケーションプログラムでのデバイスの選択時であって、選択されたデバイスが前記アプリケーションプログラムのアップデート後に最初に選択された場合に実行する、
ことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デバイスと通信可能な情報処理装置に組み込まれるアプリケーションプログラムに関する。さらに詳細には、アプリケーションプログラムの印刷設定に関するものである。
【背景技術】
【0002】
デバイスと通信可能な情報処理装置において、印刷設定を自動的に行う技術が知られている。例えば、特許文献1では、複数のデバイスドライバがインストールされている情報処理装置であって、デバイスの切り替え前の設定値を、切り替え後のデバイスの設定値として引き継ぐ技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に開示されている技術では、複数のデバイスドライバで設定値を共有する機能を有するオペレーティングシステムを用いて、デバイスドライバ間での印刷設定の引き継ぎを行っている。しかしながら、デバイスドライバを介さずに印刷を行うことが可能なアプリケーションの場合、特許文献1の技術を適用することができない。そのため、印刷設定をやり直す必要が有り、ユーザにとって手間になる。
【0005】
本明細書は、デバイスと通信可能な情報処理装置に組み込まれるアプリケーションプログラムにおいて、画像処理に用いる設定の手間を軽減する技術を開示する。
【課題を解決するための手段】
【0006】
この課題の解決を目的としてなされたアプリケーションプログラムは、情報処理装置のコンピュータによって実行可能なアプリケーションプログラムであって、前記コンピュータに、デバイスでの画像処理に用いる設定値を、前記情報処理装置のオペレーティングシステムから取得する取得処理と、前記取得処理にて取得した前記設定値が前記アプリケーションプログラムで設定可能な設定値である場合に、前記取得処理にて取得した前記設定値を前記アプリケーションプログラムの設定値に設定する第1設定処理と、前記取得処理にて取得した前記設定値が前記アプリケーションプログラムで設定可能な設定値でない場合に、前記取得処理にて取得した前記設定値を前記アプリケーションプログラムの設定値に設定しないで前記情報処理装置のメモリに記憶する設定値記憶処理と、前記メモリに前記設定値が記憶されており、かつ前記メモリに記憶されている前記設定値が前記アプリケーションプログラムで設定可能な設定値である場合に、前記メモリに記憶されている前記設定値を前記アプリケーションプログラムの設定値に設定する第2設定処理と、を実行させる、ことを特徴としている。
【0007】
本明細書に開示されるアプリケーションプログラムが組み込まれる情報処理装置は、オペレーティングシステムに記憶されている設定値が、アプリケーションプログラムで設定可能のものでなければ一旦メモリに記憶する。そして、メモリに設定値が記憶されており、そのメモリに記憶されている設定値がアプリケーションプログラムで設定可能な設定値であれば、アプリケーションプログラムに設定する。この構成によれば、デバイスドライバを介さずに画像処理を行うことが可能なアプリケーションプログラムであっても過去の画像処理時の設定値を引き継ぐことが可能であり、さらにオペレーティングシステムから設定値を取得した後のタイミングでアプリケーションプログラムで設定可能になった設定値があった場合にも、その設定値を設定できる。これにより、ユーザにとっての設定の手間が軽減される。
【0008】
上記アプリケーションプログラムが組み込まれた情報処理装置、アプリケーションプログラムの機能を実現するための制御方法、および当該アプリケーションプログラムを格納するコンピュータにて読取可能な記憶媒体も、新規で有用である。
【発明の効果】
【0009】
本発明によれば、デバイスと通信可能な情報処理装置に組み込まれるアプリケーションプログラムにおいて、画像処理に用いる設定の手間を軽減する技術が実現される。
【図面の簡単な説明】
【0010】
【
図1】実施の形態にかかる印刷システムの概略構成図である。
【
図2】情報処理装置の印刷用のプログラムの構成を示す説明図である。
【
図4】印刷設定適用処理の手順を示すフローチャートである。
【
図5】インポート処理の手順を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、アプリケーションプログラム(以下、「アプリ」とする)を具体化した実施の形態について、添付図面を参照しつつ詳細に説明する。本形態は、アプリが搭載されているパーソナルコンピュータ(以下、「PC」とする)と、PCの指示に基づく印刷を行うプリンタと、を含む印刷システムに本発明を適用したものである。
【0012】
本形態の印刷システム100は、
図1に示すように、PC1と、プリンタ2とを有し、これらが互いに通信可能に接続されて構成されている。PC1は、各種のプログラムの実行が可能な装置である。PC1は、情報処理装置の一例である。PC1に代えて、例えば、スマートフォン、タブレットコンピュータであってもよい。プリンタ2は、PC1から印刷命令やラスタライズデータを受信し、各種の媒体への印刷を実行する装置である。プリンタ2は、デバイスの一例である。なお、印刷システム100を構成するPC1やプリンタ2は、それぞれ1台に限らず、複数台有ってもよい。
【0013】
PC1は、
図1に示すように、CPU11と、ROM12と、RAM13と、不揮発性メモリ14と、を含むコントローラ10を備えている。そして、PC1は、さらに、ユーザインタフェース(以下、「ユーザIF」とする)15と、通信インターフェース(以下、「通信IF」とする)16と、を備え、これらがコントローラ10に電気的に接続されている。なお、
図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。
【0014】
CPU11は、ROM12や不揮発性メモリ14から読み出したプログラムに従って、また、ユーザの指示に基づいて、各種の処理を実行する。ROM12には、PC1を動作させるためのプログラム等が記憶されている。RAM13は、各種処理が実行される際に作業領域として、あるいは、データを一時的に記憶する記憶領域として利用される。不揮発性メモリ14は、例えば、SDD、HDD、フラッシュメモリであり、各種のプログラムやデータを記憶する。ROM12、RAM13、不揮発性メモリ14は、メモリの一例である。CPU11がバッファを備えるものであれば、CPU11のバッファもメモリの一例である。
【0015】
ユーザIF15は、ユーザによる入力を受け付けるとともに情報の表示を行うハードウェアを含む。ユーザIF15は、例えば、タッチパネルでも良いし、キーボードやマウスとディスプレイとの組合せでもよい。通信IF16は、プリンタ2等の外部装置と通信を行うためのハードウェアを含む。通信IF16の通信方式は、USB、LANなど、どのような規格の方式でもよいし、無線でも有線でもよい。
【0016】
本形態のPC1は、
図1に示すように、画像編集用のアプリケーションプログラム(以下、「画像編集アプリ」とする)41と、専用印刷プログラム42と、CUPS(登録商標)(「Common Unix(登録商標) Printing System」の略)プリンタドライバ43を含むオペレーティングシステム(以下、「OS」とする)46とを、不揮発性メモリ14に記憶している。OS46は、印刷システムとしてCUPSを採用している。
【0017】
各プログラムの構成を
図2に示す。
図2に示すように、CUPSプリンタドライバ43は、PC1のOS46に組み込まれている。CUPSプリンタドライバ43は、ドライバプログラムの一例である。一方、画像編集アプリ41や専用印刷プログラム42は、OS46には組み込まれていない。専用印刷プログラム42は、アプリケーションプログラムの一例である。OS46には、さらに通信プログラム47が含まれる。PC1は、通信プログラム47によって通信IF16を制御して、プリンタ2等の外部機器との通信を行う。
【0018】
画像編集アプリ41は、ユーザIF15を介してユーザの指示を受け付け、画像の表示、選択、編集、保存等を行う機能を有するプログラムである。画像編集アプリ41は、ユーザIF15を介してユーザの印刷指示および印刷時の印刷設定を受け付ける機能も有する。印刷設定は、印刷解像度、用紙サイズ、カラー/モノクロの別、などの設定項目の情報と、設定項目ごとの設定値の情報とを含む。プリンタ2は、そのモデルごとに受け付け可能な設定項目は異なり、受け付け可能な設定項目であっても設定可能な設定値の範囲は異なる。例えば、モノクロ専用のプリンタでは、カラー印刷の設定は受け付けない。また、高解像度印刷に対応不可能なプリンタは、印刷解像度の設定項目について、高解像度の設定値は受け付けない。
【0019】
画像編集アプリ41は、ユーザの印刷指示を受け付けた場合、
図2に示すように、受け付けた印刷指示に基づく各種の情報を、専用印刷プログラム42またはCUPSプリンタドライバ43に渡す。画像編集アプリ41から専用印刷プログラム42またはCUPSプリンタドライバ43に渡される情報には、例えば、印刷対象の画像を示す画像データの情報や印刷設定の情報が含まれる。なお、ユーザの印刷指示を受け付けるプログラムは、画像編集アプリ41に限らない。
【0020】
専用印刷プログラム42やCUPSプリンタドライバ43は、画像編集アプリ41等にてプリンタ2に印刷を行わせる指示を受け付けた際に、印刷対象として選択された画像データをラスタライズしてラスタライズデータを生成し、生成したラスタライズデータを通信プログラム47に渡す機能を有するプログラムである。専用印刷プログラム42は、様々なモデルのプリンタに対応するプログラムである一方、CUPSプリンタドライバ43は、特定のモデルのプリンタに対応する専用のプログラムであるが、いずれも、プリンタ2の製造メーカによって提供される。
【0021】
専用印刷プログラム42とCUPSプリンタドライバ43との両方を備えるPC1は、同じプリンタ2での印刷であっても、専用印刷プログラム42を用いて印刷する経路と、CUPSプリンタドライバ43を用いて印刷する経路と、の2経路からの選択を受け付ける。PC1は、例えば、印刷させる装置の選択を受け付ける画面にて、両方の経路を別の装置としてそれぞれ表示させ、ユーザの選択を受け付ける。なお、さらに他の経路があっても良い。
【0022】
図2では、画像編集アプリ41にてユーザの印刷指示を受け付けた場合における画像データの流れを2種類の矢印で示している。専用印刷プログラム42を用いて印刷する経路が選択されている場合、
図2に実線の矢印で示すように、印刷対象の画像データは、画像編集アプリ41から専用印刷プログラム42に渡され、専用印刷プログラム42にてラスタライズされてラスタライズデータが生成される。生成されたラスタライズデータは、専用印刷プログラム42から通信プログラム47に渡される。専用印刷プログラム42を用いて印刷する経路では、CUPSプリンタドライバ43は使用されない。
【0023】
CUPSプリンタドライバ43を用いて印刷する経路が選択されている場合、
図2に一点鎖線の矢印で示すように、印刷対象の画像データは、画像編集アプリ41からCUPSプリンタドライバ43に渡され、CUPSプリンタドライバ43にてラスタライズされてラスタライズデータが生成される。生成されたラスタライズデータは、CUPSプリンタドライバ43から通信プログラム47に渡される。そして、通信プログラム47は、専用印刷プログラム42またはCUPSプリンタドライバ43から受け取ったラスタライズデータをプリンタ2に送信する。
【0024】
なお、CUPSプリンタドライバ43は、プリンタ2のモデルに専用のプログラムであり、プリンタ2にて設定可能な印刷設定のすべてに対応している。画像編集アプリ41では、CUPSプリンタドライバ43を介してプリンタ2に印刷させる経路が選択された場合、プリンタ2にて受け付け可能な全ての設定項目とその設定値について、ユーザの指定を受け付ける。
【0025】
一方、専用印刷プログラム42は、プリンタ2のモデルのみではなく広範囲のモデルに対応するプログラムである。専用印刷プログラム42は、モデルごとに対応可能な印刷設定をモデルを識別する情報と関連付けて有しているが、全てのモデルについての全ての印刷設定に対応可能とは限らない。そのため、専用印刷プログラム42を介してプリンタ2に印刷させる経路が選択された場合、プリンタ2が受け付け可能な印刷設定であっても、専用印刷プログラム42ではユーザによる指定を受け付けない印刷設定の設定項目や設定値が有り得る。なお、専用印刷プログラム42のアップデートにより、受け付け可能な印刷設定の範囲は変わる可能性がある。
【0026】
OS46は、通信プログラム47を制御して、受け取ったラスタライズデータを含む印刷命令をプリンタ2に送信する機能を有する。このとき、OS46は、印刷命令を送信したことを示す情報である印刷履歴情報を不揮発性メモリ14の所定の領域に記憶する。OS46は、例えば、
図3に示すようなキューファイル48を作成し、印刷履歴情報をキューファイル48に記憶する。キューファイル48は、印刷命令の送信ごとに作成される印刷履歴レコード481を含むファイルである。なお、OS46は、画像編集アプリ41を使用した印刷命令に限らず、他のアプリを使用した印刷命令に基づく印刷履歴情報もキューファイル48に記憶する。印刷履歴レコード481は、実行履歴の一例である。
【0027】
各印刷履歴レコード481には、例えば、
図3に示すように、画像データを受け付けたアプリ名、印刷対象の画像の画像データを示すファイル名、印刷を実行させる装置を示すデバイス名、指定された印刷設定の情報である印刷設定情報、印刷を実行した日の情報である印刷月日、使用した通信IFの情報である通信I/F情報、が含まれる。
図3に示す例のキューファイル48には、CUPSプリンタドライバ43を介して印刷を実行した際の印刷履歴レコード481が含まれる。なお、デバイス名には、デバイスのモデル情報も含まれる。印刷設定情報は、画像処理に用いる設定値の一例である。
【0028】
本形態のPC1は、CUPSプリンタドライバ43を用いる経路にて印刷が実行されたことのあるプリンタ2に対して、専用印刷プログラム42を用いる経路が選択された場合、CUPSプリンタドライバ43を用いて行った印刷の印刷設定の情報をキューファイル48から読み出す。そして、PC1は、キューファイル48から読み出した印刷設定の情報を、専用印刷プログラム42を用いる経路での印刷の印刷設定の初期値として設定する。なお、CUPSプリンタドライバ43を用いる経路にて印刷が実行されたことがあれば、キューファイル48に印刷履歴レコード481が記憶されている。つまり、専用印刷プログラム42を用いる経路が選択された際、CUPSプリンタドライバ43自体は削除されていても良い。
【0029】
ただし、前述したように、CUPSプリンタドライバ43を用いる経路では設定可能であっても、専用印刷プログラム42を用いる経路では設定可能ではない印刷設定があり、そのような印刷設定が印刷履歴レコード481に含まれている可能性もある。つまり、専用印刷プログラム42を用いる経路では、キューファイル48に記憶されている印刷設定の全てに対応可能であるとは限らない。本形態の専用印刷プログラム42は、印刷履歴レコード481に含まれている印刷設定のうち、受け付け可能な印刷設定を自身の印刷設定として設定し、受け付け可能ではない印刷設定を自身の印刷設定として設定しないで不揮発性メモリ14に記憶する。
【0030】
続いて、本形態の印刷システム100による印刷設定適用処理の手順について、
図4のフローチャートを参照して説明する。なお、以下の処理及びフローチャートの各ステップは、基本的に、専用印刷プログラム42に記述された命令に従ったCPU11の処理を示す。本明細書では、OS46による処理を省略して各プログラムの動作を説明する。
【0031】
印刷設定適用処理は、例えば、専用印刷プログラム42の起動時にPC1のCPU11にて実行される。専用印刷プログラム42は、例えば、画像編集アプリ41にて専用印刷プログラム42を用いる経路でのプリンタ2が選択されたことを契機に、OS46によって起動される。CPU11は、印刷設定適用処理を、専用印刷プログラム42の起動の度に実行しても良いし、専用印刷プログラム42を用いる経路でのプリンタ2の情報が更新されたタイミングで実行しても良い。
【0032】
専用印刷プログラム42を用いる経路でのプリンタ2の情報が更新されるタイミングは、例えば、専用印刷プログラム42のインストール時、インストール後の専用印刷プログラム42の初回の実行時、専用印刷プログラム42がアップデートされた後の初回の実行時、デバイス選択において専用印刷プログラム42を用いる経路でのプリンタ2が最初に選択された時、専用印刷プログラム42のアップデート後でプリンタ2が最初に選択された時、である。また、CPU11は、印刷設定適用処理を、例えば、前回の実行から所定時間以上が経過した際、に実行しても良い。
【0033】
印刷設定適用処理では、CPU11は、まず、インポート済み情報が不揮発性メモリ14に記憶されているか否かを判断する(S101)。インポート済み情報は、後述するインポート処理にて不揮発性メモリ14に記憶される情報であり、キューファイル48から読み出した印刷設定の情報を、専用印刷プログラム42を用いる経路での印刷の印刷設定に設定する処理を実行済みであることを示す情報である。インポート済み情報は、実行情報の一例である。
【0034】
インポート済みではないと判断した場合(S101:NO)、CPU11は、インポート処理を実行する(S102)。例えば、専用印刷プログラム42の実行が初回であればインポートは未実行であり、CPU11はS101にてNOと判断する。インポート処理は、CUPSプリンタドライバ43を介して過去に行った印刷における印刷設定を、初期設定として専用印刷プログラム42に設定する処理である。インポート処理の手順について、
図5のフローチャートを参照して説明する。
【0035】
インポート処理では、CPU11は、今回の処理の対象となっているプリンタのモデル情報を取得する(S201)。プリンタが選択されている状態で実行された印刷設定適用処理からインポート処理が呼び出された場合、今回の処理の対象は、選択されているプリンタである。
【0036】
一方、プリンタが選択されていない状態で実行された印刷設定適用処理からインポート処理が呼び出された場合、PC1に接続されている全てのプリンタが今回の処理の対象である。対象のプリンタが複数有る場合には、CPU11は、各プリンタについて順にインポート処理を実行する。なお、PC1に接続されているプリンタの情報は、例えば、ユーザの指示によってOS46に登録又は削除される。CPU11は、OS46に登録されている全てのプリンタをインポート処理の対象とし、OS46に登録されていないプリンタをインポート処理の対象としない。OS46から削除されたプリンタの印刷設定を専用印刷プログラム42にて使用する可能性は低いため、インポート処理の対象としないことで、処理の無駄を省くことができる。
【0037】
さらに、CPU11は、CUPSプリンタドライバ43の印刷設定として、処理対象のプリンタに対応する印刷設定の情報が不揮発性メモリ14の所定の領域に記憶されているか否かを判断する(S202)。CPU11は、キューファイル48を参照して、デバイス名が対象のプリンタである印刷履歴レコード481に印刷設定情報が含まれていれば、S202にてYESと判断する。
【0038】
なお、CUPSの印刷設定の情報は、キューファイル48に限らず、ユーザ指定のプリセットファイルから読み出しても良い。プリセットファイルは、ユーザの指示に基づいて、例えば、頻繁に使用する印刷設定を纏めて記憶したファイルである。プリセットファイルも、キューファイル48と同様に印刷設定の情報を含み、OS46によって不揮発性メモリ14の所定の領域に記憶される。プリセットファイルは、プリセット情報の一例である。CPU11は、ユーザ指定のプリセットファイルが記憶されている場合にも、S202にてYESと判断する。
【0039】
CUPSの印刷設定の情報が有ると判断した場合(S202:YES)、CPU11は、その印刷設定をインポートするか否かを判断する(S203)。CPU11は、例えば、CUPSプリンタドライバ43の印刷設定を引き継ぐか否かを問い合わせる画面を、ユーザIF15に表示させ、ユーザの選択を受け付ける。印刷設定の引き継ぎを行うか否かをユーザに確認することで、ユーザの意思を反映できる。
【0040】
インポートすると判断した場合(S203:YES)、CPU11は、該当する印刷履歴レコード481またはプリセットファイルから印刷設定情報を読み出すことで、印刷設定情報を取得する(S204)。S204は、取得処理の一例である。なお、キューファイル48に、デバイス名が指定されたプリンタである印刷履歴レコード481が複数記憶されている場合、CPU11は、例えば、最新の印刷履歴レコード481から印刷設定情報を取得する。あるいは、使用頻度が最も高い印刷設定情報を取得しても良い。
【0041】
CPU11は、取得した印刷設定情報に含まれる設定項目ごとに、まず、その設定項目とその設定値とが専用印刷プログラム42でも設定可能であるか否かを判断する(S205)。設定項目とは、例えば、用紙サイズ、片面/両面印刷、Nin1印刷である。設定可能な設定項目や設定値であるか否かは、例えば、プリンタのモデルごとに異なり、CPU11は、S201にて取得したモデル情報に基づいて、S205の判断を行う。当該モデルにて設定可能な設定項目や設定値についての情報は、専用印刷プログラム42に記憶されていても良いし、プリンタ2から取得しても良いし、プリンタのベンダによって運営されるサーバ等の外部機器に問い合わせて取得しても良い。
【0042】
設定可能であると判断した場合(S205:YES)、CPU11は、その設定項目に対して印刷設定情報に含まれる設定値の情報を、専用印刷プログラム42にて取り扱う形式の情報に変換する(S206)。専用印刷プログラム42とCUPSプリンタドライバ43とは、いずれも同じプリンタ2の製造メーカによって提供されるプログラムであることから、専用印刷プログラム42によりCPU11は、印刷設定の形式を変換することができる。CPU11は、例えば、印刷設定の設定項目名をCUPSプリンタドライバ43用のものから、専用印刷プログラム42用のものに書き換える。なお、変換の不要な設定項目や設定値であれば、CPU11は、S206をスキップしても良い。そして、CPU11は、変換後の印刷設定を、当該プリンタに関する専用印刷プログラム42の印刷設定の初期値として設定する(S207)。S207は、第1設定処理の一例である。
【0043】
一方、設定不可能であると判断した場合(S205:NO)、CPU11は、S204にて取得した印刷設定情報のうち、該当する設定項目が未設定項目であることを示す情報を不揮発性メモリ14に記憶する(S208)。S208は、設定値記憶処理の一例である。CPU11は、未設定項目について、設定項目名とその設定値とを記憶する。
【0044】
CPU11は、例えば、
図6に示すように、S204にて取得した印刷設定情報に含まれる全ての設定項目とその設定値を含む設定ファイル51を作成し、未設定項目には未設定であることを示す情報としてマーク511を付加する。
図6の例は、カラー/モノクロの別を示す設定項目の設定値としてカラーが設定されており、この印刷設定は専用印刷プログラム42に設定可能である一方、部数を示す設定項目の設定値として2部が設定されており、この印刷設定は専用印刷プログラム42に設定不可能であることを示している。なお、
図6の例に示すように設定不可能な設定項目にマークを付加する代わりに、未設定項目の情報のみを含むファイルを作成して不揮発性メモリ14に記憶しても良い。
【0045】
S207またはS208の後、CPU11は、取得した印刷設定情報に含まれる全ての設定項目について、処理が終了したか否かを判断する(S209)。まだ未処理の設定項目が有ると判断した場合(S209:NO)、CPU11は、S205に戻り、次の設定項目について同様に処理を行う。
【0046】
全ての設定項目の処理が終了したと判断した場合(S209:YES)、CPU11は、当該プリンタについてのインポートを行ったことを示す情報であるインポート済み情報を不揮発性メモリ14に記憶する(S210)。S210は、実行情報記憶処理の一例である。このインポート済み情報は、前述した印刷設定適用処理のS101での判断に用いる情報である。インポート済み情報を記憶することで、同じデバイスに関するインポート処理を繰り返し実行することが避けられる。
【0047】
さらに、CPU11は、S208にて記憶した未設定項目に関する情報をデバイスのメーカが運営するサーバにアップロードする(S211)。S211は、送信処理の一例である。デバイスのメーカは、アップロードされた情報に基づいて、設定できなかった設定項目などの情報を取得でき、次回のアップデートの参考情報にできる。
【0048】
S211の後、または、CUPSの印刷設定情報が無いと判断した場合(S202:NO)、または、インポートしないと判断した場合(S203:NO)、CPU11は、インポート処理を終了して、
図4の印刷設定適用処理に戻る。
【0049】
図4の印刷設定適用処理の説明に戻る。インポート済み情報が有ると判断した場合(S101:YES)、CPU11は、不揮発性メモリ14に未設定項目の情報が記憶されているか否かを判断する(S103)。未設定項目の情報は、例えば、インポート処理のS208にて不揮発性メモリ14の所定の領域に記憶される情報である。未設定項目の情報が有ると判断した場合(S103:YES)、CPU11は、未設定項目の設定情報を取得する(S104)。
【0050】
次に、CPU11は、取得した未設定項目の1項目ごとに専用印刷プログラム42に設定可能であるか否かを判断する(S105)。例えば、専用印刷プログラム42のインストール時には未対応であった設定項目であっても、専用印刷プログラム42のアップデートによって設定可能となる場合がある。そこで、CPU11は、以前に未設定項目として記憶した設定項目と設定値が、現在は設定可能であるか否かを判断する。
【0051】
設定可能であると判断した場合(S105:YES)、CPU11は、その設定項目の設定値を印刷設定として設定するか否かを判断する(S106)。CPU11は、例えば、その印刷設定を設定するか否かを問い合わせる画面を、ユーザIF15に表示させ、ユーザの選択を受け付ける。設定するか否かをユーザに確認することで、ユーザの意思を反映できる。
【0052】
設定すると判断した場合(S106:YES)、CPU11は、その印刷設定の設定項目と設定値を、専用印刷プログラム42の印刷設定に追加して設定する(S107)。S107は、第2設定処理の一例である。設定項目の変換が必要であれば、変換も行う。CPU11は、例えば、インポート処理のS208にて不揮発性メモリ14に記憶する前に変換も行い、変換後の印刷設定を未設定項目として記憶しても良いし、変換せずに記憶して、S107の前に変換しても良い。変換が一律でない場合には、変換前の印刷設定を、例えば、設定ファイル51(
図6参照)に記憶しておき、追加して設定する際に変換することが望ましい。これにより、アップデート後の専用印刷プログラム42にて設定可能な形式に適切に変換できる。
【0053】
そして、CPU11は、追加して設定した設定項目の情報を未設定項目の情報から削除する(S108)。CPU11は、例えば、設定ファイル51から未設定項目であることを示すマーク511を削除する。あるいは、CPU11は、未設定項目のみを含むファイルから当該設定項目の情報を削除する。設定済みの設定項目の情報を削除することで、次回の印刷設定適用処理の実行時には、処理の対象から外されるので、無駄な処理を防ぐことができる。なお、マーク511が全て削除された場合、CPU11は、設定ファイル51を削除しても良い。
【0054】
S108の後、または、設定可能な設定項目ではないと判断した場合(S105:NO)、または、設定しないと判断した場合(S106:NO)、CPU11は、未設定項目として記憶されている全ての設定項目についての処理が終了したか否かを判断する(S109)。終了していないと判断した場合(S109:NO)、CPU11は、S105に戻って、次の設定項目についての処理を実行する。
【0055】
S102の後、または、未設定項目の情報が無いと判断した場合(S103:NO)、または、全ての未設定項目についての処理が終了したと判断した場合(S109:YES)、CPU11は、印刷設定適用処理を終了する。
【0056】
以上、詳細に説明したように、本形態の印刷システム100によれば、OS46に記憶されている印刷設定情報を取得し、その印刷設定が専用印刷プログラム42で設定可能なものであれば専用印刷プログラム42に設定し、専用印刷プログラム42で設定可能なものでなければ一旦不揮発性メモリ14の所定の領域に記憶する。そして、不揮発性メモリ14の所定の領域に設定値が記憶されており、記憶されている設定値が専用印刷プログラム42で設定可能なものであれば専用印刷プログラム42に設定する。これにより、専用印刷プログラム42を用いて印刷を行う場合であっても、過去のCUPSプリンタドライバ43による印刷実行時の印刷設定を引き継ぐことが可能である。さらにOS46から印刷設定情報を取得したタイミングから後のタイミングで専用印刷プログラム42にて設定可能になった印刷設定があった場合にも、その印刷設定を専用印刷プログラム42の印刷設定に設定することで、ユーザにとっての設定の手間が軽減される。
【0057】
なお、本実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本発明は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、画像処理を行うデバイスは、プリンタに限らず、複合機、複写機、スキャナ、FAX装置等、画像形成機能や画像読取機能などの画像処理機能を備える装置であればよい。本発明を画像読取機能を備えるデバイスを制御するPC1に適用する場合は、印刷設定情報に代えて、読取設定情報を設定すればよい。
【0058】
また、本実施の形態では、CUPSプリンタドライバ43を組み込んだOS46を例示して説明したが、あくまでも一例であり、OSはCUPSプリンタドライバを組み込んでいるものに限定されない。OSは、例えば、Windows用のプリンタドライバを組み込んだWindows(登録商標)であっても良い。
【0059】
また、例えば、OS46は、印刷を実行させる装置ごとに、または、ラスタライズデータを生成する印刷システムやプログラムが複数存在する場合には、その印刷システムやプログラムごとに、別のファイルとしてキューファイル48を作成して管理しても良い。また、キューファイル48の作成や印刷履歴レコード481の記憶は、OS46に限らず、画像編集アプリ41やCUPSプリンタドライバ43が行っても良い。
【0060】
また、例えば、印刷設定適用処理を実行するタイミングは、実施の形態の例に限らない。例えば、PC1は、プリンタが追加されたことを検知した場合に印刷設定適用処理を実行しても良い。また、例えば、専用印刷プログラム42のアップデートに基づくタイミングで実行すれば、設定可能となった印刷設定をユーザが直ぐに利用できる。また、OS46のアップデート時に実行しても良い。
【0061】
また、例えば、デバイスが選択されている状態であれば、選択されているデバイスについてのみ印刷設定適用処理を実行することで、選択されていないデバイスや削除されているデバイスについての処理の無駄を省くことができる。そして、デバイスが選択された時点で、当該デバイスについての印刷設定適用処理が未実行であれば実行するとすれば、初回の実行時における処理の負荷を減らすことができる。
【0062】
また、例えば、印刷設定を適用するか否かのユーザへの問い合わせは行わず、必ず設定するとしても良い。つまり、インポート処理のS203や印刷設定適用処理のS106は、無くてもよい。また、インポート済み情報は記憶しなくても良い。つまり、インポート処理のS210は、無くてもよい。その場合、印刷設定適用処理のS101も不要である。ただし、インポート済み情報を記憶することで、処理の繰り返しを抑制できる。また、サーバへのアップロードは、しなくても良い。つまり、インポート処理のS211は、無くてもよい。
【0063】
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
【0064】
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
【符号の説明】
【0065】
1 PC
2 プリンタ
42 専用印刷プログラム
43 CUPSプリンタドライバ
46 OS