JP2023112072A - 情報処理装置、情報処理装置の制御方法及びプログラム - Google Patents

情報処理装置、情報処理装置の制御方法及びプログラム Download PDF

Info

Publication number
JP2023112072A
JP2023112072A JP2023101716A JP2023101716A JP2023112072A JP 2023112072 A JP2023112072 A JP 2023112072A JP 2023101716 A JP2023101716 A JP 2023101716A JP 2023101716 A JP2023101716 A JP 2023101716A JP 2023112072 A JP2023112072 A JP 2023112072A
Authority
JP
Japan
Prior art keywords
information
printer
definition
specific
acquisition
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.)
Pending
Application number
JP2023101716A
Other languages
English (en)
Inventor
佳佑 森田
Keisuke Morita
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2023101716A priority Critical patent/JP2023112072A/ja
Publication of JP2023112072A publication Critical patent/JP2023112072A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1232Transmitting printer device capabilities, e.g. upon request or periodically
    • 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/00204Connection 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 with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00244Connection 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 with a digital computer or a digital computer system, e.g. an internet server with a server, e.g. an internet server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1254Automatic configuration, e.g. by driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1256User feedback, e.g. print preview, test print, proofing, pre-flight checks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1227Printer definition files

Abstract

【課題】汎用のデバイスドライバーにおいて、策定済みの規格では対応できない周辺装置の機種固有の機能に関する情報を取得すること。また、システムソフトウェアのデバイス依存部分を低減可能な仕組みを提供すること。【解決手段】汎用プリンタードライバー1053のプリンター能力取得部304は、ベンダや機種に依存しない各種プリンターに対して共通に利用可能な情報取得の定義情報(機器共通の情報取得定義)を用いて、プリンター201から、プリンター201に固有の情報取得の定義情報(機器固有の情報取得定義)を取得し(S1002、S1003)、機器固有の情報取得定義を用いて、プリンター201から、プリンター201に固有の構成情報を取得し(S1005~S1007)、プリンターごとの拡張情報格納部3032に保存する(S1007)。汎用プリンタードライバー1053は、拡張情報格納部3032に保存されているプリンター201の構成情報を用いて、プリンター201を制御する。【選択図】図10

Description

本発明は、印刷装置等の周辺装置から情報の取得を行う処理の制御に関する。
近年、情報処理端末のモバイル化や、業務環境においてもフリーアドレスのように業務中に特定の場所に座らない働き方をする企業があるなど、ユーザーが特定の場所に常駐しない環境が現れている。これに伴い、ユーザーが印刷を行う場合、従来のように固定の印刷装置に対してだけでなく、移動した場所に応じた様々なベンダの機種や様々なモデルの印刷装置を用いて印刷を行いたいケースが増えてきている。
ここで、機能が異なる複数種類の印刷装置を制御するためのプリンタードライバーとしてユニバーサルプリンタードライバーと称されるプリンタードライバーが知られている(特許文献1)。
また、印刷装置のベンダが提供するプリンタードライバーを使用することなく、印刷装置に対して印刷データを送信できるようにすることが考えられている。例えば、Ubuntu(登録商標)17.04では、OSのデフォルト機能として、IPP Everyware(登録商標)に対応する印刷装置に対して印刷データを送信する仕組みが搭載されている。IPP Everywareは、様々なベンダやブランドの印刷装置を使用した印刷を可能とする一連の規格であり、業界団体などで規格の策定や普及活動が行われている。
一般に、上述したようなユニバーサルプリンタードライバーは、ベンダごとに提供されている。従って、同じベンダが販売している機能が異なる複数種類の印刷装置については、1つのユニバーサルプリンタードライバーで対応することができる。しかし、異なるベンダの印刷装置を1つのユニバーサルプリンタードライバーで対応することは困難であった。これは、ベンダごとに各々異なる通信方式、PDL(ページ記述言語)やJDL(ジョブ記述言語)で印刷データのやり取りを行っているため、統一することが難しいといった事情に起因する。また、ベンダごとにPDLやJDLに独自の拡張を行っているため統一して動作させることが難しいといった事情にも起因する。
ところで、Windows(登録商標)等の実行環境でも、ベンダが提供するV3形式やV4形成のプリンタードライバーを個別にインストールすることなく印刷実行できる仕組みを提供できれば、ユーザーにとっての利便性を高めることができると想定される。
このような仕組みを実現するために、IPPに準拠する仕組みを使用した印刷サービスをWindows環境で利用できるようにすることも考えられる(非特許文献1)。
特開2011-243067号公報
http://ug.oipsrv.net/USRMA-0672-zz-PS-jaJP/contents/PS850_network725_printernosetuzokuhouhouippipps.html
ベンダや機種に依存しない汎用のプリンタードライバー(以下「汎用プリンタードライバー」という)では、各種ベンダが販売している印刷装置の印刷が可能である。しかし、従来の汎用プリンタードライバーでは、機器固有の機能については対応できなかった。
例えば、従来の汎用プリンタードライバーでは、印刷装置の構成情報(能力情報)を取得する場合、一般的な機能に関しては、IPPに準拠するデバイス構成情報の取得処理で取得することが可能であった。しかし、従来の汎用プリンタードライバーでは、機器固有の機能や新規機能に関する情報を、IPPに準拠するデバイス構成情報の取得処理で取得することはできなかった。
本発明は、上記の課題を鑑みてなされたものである。本発明の目的は、汎用のデバイスドライバーにおいて、策定済みの規格では対応できない周辺機器の機種固有の機能に関する情報を取得できる仕組みを提供することを目的とするものである。また、本発明は、システムソフトウェアのデバイス依存部分を低減する仕組みを提供することをさらに別の目的とする。
本発明は、複数の周辺装置に対して共通に利用可能なデバイスドライバーを有する情報処理装置であって、前記複数の周辺装置に対して共通に利用可能な情報取得の定義情報である第1定義情報を用いて、前記いずれかの周辺装置に固有の情報取得の定義情報である第2定義情報を取得する第1取得手段と、前記第1取得手段により取得された前記第2定義情報を用いて、該周辺装置から、該周辺装置に固有の構成情報を取得する第2取得手段と、前記第2取得手段により取得された前記第2定義情報を、前記デバイスドライバーで使用する周辺装置ごとの記憶領域に格納する格納手段と、を有することを特徴とする。
本発明の一つの側面によれば、汎用のデバイスドライバーにおいて、策定済みの規格では対応できない周辺装置の機種固有の機能に関する情報を取得することが可能となる。また、本発明の別の側面によれば、システムソフトウェアのデバイス依存部分を低減可能な仕組みを提供できる。
本実施形態の情報処理装置の構成の一例を示す図。 本実施形態の情報処理装置を含むシステムの構成の一例を示す図。 クライアントコンピューターのソフトウェア構成の一例を示す図。 OSの標準印刷設定画面の一例を示す図。 ベンダ固有の印刷拡張アプリの印刷設定画面の一例を示す図。 ベンダ固有の印刷拡張アプリの印刷設定画面の一例を示す図。 ベンダ固有のタイルアプリの画面を例示する図。 機器共通(機器非依存)の情報取得の定義の一例を示す図。 USBでの情報取得時の拡張定義の一例を示す図。 機器固有(機器依存)の情報取得の定義の一例を示す図。 第1実施形態における構成情報取得処理の一例を示すフローチャート。 第2実施形態における機器固有の情報取得の定義の取得処理の一例を示すフローチャート。
以下、本発明を実施するための形態について図面を用いて説明する。
〔第1実施形態〕
図1は、本発明の一実施形態を示す情報処理装置の構成の一例を示す図である。
図1において、クライアントコンピューター100は、本実施形態の情報処理装置であり、一般的なコンピューターを用いて構成されている。
CPU101は、主記憶装置102のROM1021、RAM1022あるいは補助記憶装置105に格納されたプログラムに従ってコンピューター100全体の制御を行う。
RAM1022は、CPU101が各処理を行う際のワークエリアとしても使用される。
補助記憶装置105には、アプリケーション(アプリ)1051やデバイスアプリケーション(デバイスアプリ)1052、汎用プリンタードライバー1053、オペレーティングシステム(OS)1054等の各種プログラムが格納される。プリンタードライバーは、デバイスドライバーの一例である。本発明は、デバイスドライバーに適用可能なものであり、プリンタードライバーに限定されるものではない。デバイスドライバーには、スキャナードライバーやファックスドライバーなどの各種の周辺装置(周辺機器)のデバイスドライバーを含む。
キーボード1031やマウス、タッチパネル、タッチパッドなどに代表されるポインティングデバイス1032等の入力機器は、入力インターフェース(I/F)103を通してコンピューター100に接続される。コンピューター100は、これらの入力機器を通してユーザーからのプログラムへの操作を受け付ける。
出力I/F104には、モニター1041等の出力デバイスが接続され、プログラムの指示に従いモニター上にUIを表示する。なお、スマートフォンやタブレット端末を始めとする端末に関してはポインティングデバイス1032とモニター1041が一体となっているものがあるが、ここでは役割ごとに分離して表記を行っているだけであり、置き換えて考えてももちろん構わない。
通信I/F106は、ネットワーク1061やUniversal Serial Bus(USB)1062に接続されており、コンピューター100の外部機器、例えば、図2のコンピューター202やプリンター201との通信が可能である。
上記各モジュールは、システムバス107で接続され、各モジュール間でデータのやり取りが可能である。また、本実施形態の機能を実現するためのプログラム(1051~1054等)は、不図示のCD-ROMやUSBメモリー等を介して補助記憶装置105に追加可能である。さらに、これらのプログラムを、ネットワーク1061を経由して補助記憶装置105に追加することも可能である。なお、特に断らない限り、本発明の機能が実行されるのであれば、機器の構成に係わらず本発明を適用できることは言うまでもない。単体の機器であっても、複数の機器からなるシステムであっても、Localネットワークを介して接続されて処理が行われるシステムであってもよい。
以下、図2を用いて、ネットワーク1061の環境について説明する。
図2は、本実施形態の情報処理装置を含むシステムの構成の一例を示す図である。
本実施形態のシステムでは、印刷を行う文書や画像を作成するコンピューター100/202等の印刷装置(画像形成装置ともいう)が単体もしくは複数ネットワークに接続されている。さらにプリンター201が単体もしくは複数ネットワークに接続されていることやUSB1062を経由してコンピューター100/202に接続されることもある。周辺機器の一例として画像形成装置がある。画像形成装置の一例としてプリンター201、スキャナ、ファクシミリ装置、これらの複合機があげられる。
上記ネットワークにはPersonal Area Network(PAN)、LANなどの小規模から大規模までのネットワークがあり、これらの機器が全てのネットワークに接続されている。なお、クラウドなど、サーバーやプリンターがインターネットを経由して接続されていても構わない。この際の通信方式であるがIEEE802.11規格に則ったワイヤレスLANでの通信はもちろんBluetooth(登録商標)通信、IMT-2000規格に則った携帯電話回線を始めとする通信等、特に限定は行わないものとする。IMT-2000は、「International Mobile Telecommunication 2000」を示す。また、USBに関しては直接接続する形態以外にもUSBハブや交換機のようなもので中継されていても構わない。
図3は、クライアントコンピューター100のソフトウェア構成の一例を示す図である。本実施形態では、アプリ1051と汎用プリンタードライバー1053について詳細に説明する。特に、アプリ1051に含まれる印刷拡張アプリ10511と、汎用プリンタードライバー1053の構成要素であるコンフィグモジュール10531、グラフィクスフィルタ10532に関して詳細に説明する。図3に示す各ソフトウェアモジュールは、CPU101が補助記憶装置105等に格納されるプログラムをRAM1022にロードして実行することにより実現され機能する。
アプリ1051は、ワードプロセッサやブラウザー等の一般的なアプリケーションである。アプリ1051は、モニター1041上にUIを表示し、ポインティングデバイス1032やキーボード1031等の入力機器によってユーザーの印刷要求を受け付ける。ユーザーの印刷要求を受けて、アプリ1051は、OS1054のサブシステムである印刷システム(不図示)へ印刷要求を出す。印刷システムは、アプリ1051と汎用プリンタードライバー1053の中間に位置し、印刷処理における共通処理の実行を行う。具体的な実行処理としては、印刷対象プリンターの選択や選択された汎用プリンタードライバー1053を用いてプリンター201が解釈可能な印刷命令への変換を行う。
印刷拡張アプリ10511は、タイルアプリ部301と詳細情報設定UI部302を有する。
タイルアプリ部301は、印刷拡張アプリ10511を起動するユーザー操作を受けたことに従って実行されるUI部である。タイルアプリ部301は、図6のように登録されたプリンターを一覧表示し、プリンターのステータス表示などの機能を提供する。
図6は、ベンダ固有のタイルアプリの画面を例示する図である。
図6に示す情報取得ボタン601は、プリンターのステータスを取得する場合に使用される。
詳細情報設定UI部302は、OS1054によって実行された詳細印刷設定イベントを受信することにより実行されるUI部である。具体的には、図4に示すOS標準の印刷設定画面に存在する詳細設定画面へのリンク401をクリックすることで、詳細情報設定UI部302が図5A、図5Bのような印刷拡張アプリ10511のUIの表示を行う。
図4は、OSの標準印刷設定画面の一例を示す図である。
図5A、図5Bは、ベンダ固有の印刷拡張アプリの印刷設定画面の一例を示す図である。詳細は後述する。
なお、一般的にプリンタードライバーは、印刷出力先のプリンターに依存する処理を受け持つモジュールである。しかし、本実施形態の汎用プリンタードライバー1053は、プリンターのベンダや機種に依存せず通信や印刷が可能な標準的な規格に則ったものである。汎用プリンタードライバー1053は、ベンダや機種が異なる複数のプリンターに対して共通に利用可能なプリンタードライバーである。なお、汎用プリンタードライバー1053は、印刷拡張アプリ10511を導入することで付加的な機能や詳細な設定画面を拡張させることが可能である。
コンフィグモジュール10531は、データ保持部303、プリンター能力取得部304を有する。
データ保持部303は、汎用プリンタードライバー1053で使用するデータを格納する記憶領域に対応する。ここでは、補助記憶装置105上にあるファイルシステムやレジストリはもちろん揮発性データとして一時的にRAM1022に格納されるものも該当する。
データ保持部303は、基本情報格納部3031と拡張情報格納部3032を有する。
基本情報格納部3031は、汎用プリンタードライバー1053が導入される際に定義されている各ベンダで共通のものやベンダ内で共通して用いられる設定や仕様に関する情報や定義等を格納する領域である。具体的には、対応する用紙サイズやカラー設定といった印刷に必要な能力や印刷設定に関する定義や、「A3サイズではステープルは打てない」といった禁則に関する定義、通信時に取得する情報に関する定義(機器共通の情報取得の定義)などである。また、ベンダのプリンターが持つ共通した依存性を解決するためのデータの変換テーブルや変換ロジックの定義を格納しても構わない。このように、基本情報格納部3031は、ベンダや機種が異なる複数のプリンターに対して共通に利用可能な情報を格納する。
一方、拡張情報格納部3032は、汎用プリンタードライバー1053の導入後に機能を拡張させる目的で定義されるデータが格納される。このデータには、例えば、特殊用紙のサポート情報や機器固有のフィニッシャーを用いた機能に関する定義といった機器固有の機能に関する定義や、デフォルト値のカスタマイズやお気に入り設定といったインストール後の設定を制御する情報が該当する。また、このデータは、印刷設定以外にもキャリブレーションといった画質の補正などの内部的に使用する情報であっても構わない。
このように、基本情報格納部3031には、ベンダや機種が異なる複数の印刷装置に対して共通に利用可能な情報(例えば機器共通の情報取得の定義情報)が格納されている。また、拡張情報格納部3032には、装置に固有の情報(例えば機器固有の情報取得の定義情報)が格納されている。なお、データ保持部303は、プリンターごとに設けられる。
プリンター能力取得部304は、プリンター201から、機器構成情報やユーザーにより設定された情報等の取得を行う。ここで用いられる通信はInternet Printing Protocol(IPP)やWeb Service on Devices(WSD)を始めとする標準的なプロトコルを用いたものを対象としており、OS1054が実行可能な通信を指す。
なお、印刷拡張アプリ10511を始めとするアプリケーションが独自にプリンター能力取得部304の処理を呼び出してもよいものとする。ここでは、一例として、IPPを使用する場合を例として説明する。プリンター能力取得部304は、基本情報格納部3031に格納される能力情報を“RFC2911”で既定されたプリンター属性要求操作(Get-Printer-Attributes Operations)を用いて取得する。また、プリンター能力取得部304は、Get-Printer-Attributes Requestをプリンター201に対して送信する。当該リクエストの応答として、プリンター201の属性情報が得られる。プリンター属性要求操作により得られるプリンターの能力情報は、例えば、「両面」や「カラー印刷」が可能かどうかなどの、標準的な印刷設定の能力情報などである。
グラフィクスフィルタ10532は、アプリ1051より、印刷システム経由で、プリンターが一般的に解釈可能な設定情報を含む標準文書データを受け取り、標準文書データ解析部305で解析を行う。そして、グラフィクスフィルタ10532は、該標準文書データを、出力データ生成部306を用いて、印刷設定を反映させた標準文書データに変換する。変換された標準文書データは、OS1054のサブシステムであるシステムスプーラ10541に受け渡され、プリンター201へ送信される。
なお、ここでの標準文書データは、XPSやPDF、Post Script(PS)のような標準的なPage Discription Language(PDL)かあるいはPDLに付加データを加えて拡張させたものを指す。XPSは、「XML Paper Specification」を示す。PDFは、「Portable Document Format」を示す。
以下、本実施形態の処理の概要について説明する。
本実施形態では、プリンター201から構成情報の取得を行うが、汎用プリンタードライバー1053は、ベンダや機種に対する依存性を持たないものである。このため、従来の方法では、機種固有の機能を始めとする機種依存の情報を取得することができなかった。例えば、「ステープル」の能力は一般的なものであるため、ベンダや機種共通の情報としての定義が可能であり、標準的な構成情報の取得処理で取得可能である。しかし、金属の針を使わずに留めを行う「針なしとじ」機能の能力は特定機種のみのものであるため、標準的な構成情報取得では、情報取得ができない。このため本実施形態では、まず、機種共通の情報取得の定義(ベンダや機種が異なる複数のプリンターに対して共通に利用可能)を用いて、プリンター201に機種固有の情報取得の定義の問い合わせを行う。そして、取得した機器固有(機種依存)の情報取得の定義を用いることで、プリンター201から機種固有の能力情報を取得する。
上記処理に関して図10のフローを用いて説明する。
図10は、第1実施形態における構成情報取得処理の一例を示すフローチャートである。本実施形態では、構成情報取得時にプリンターから機器依存の定義を取得して該機種依存の定義を用いてプリンターから機種固有の情報を取得する。このフローチャートの処理は、クライアントコンピューター100のCPU101が補助記憶装置105等に格納されるプログラムをRAM1022にロードして実行することにより実現される。なお、本フローチャートに示す処理は、特に断らない限りOS1054から呼び出された汎用プリンタードライバー1053のプリンター能力取得部304において実行されるものとする。ここではプリンター201を例として説明する。
また、本フローチャートに示す処理の実行タイミングは、OS1054から発生するイベント、プリンター201から発生するイベント、ユーザー操作により発生するイベントによって適宜呼び出される。まずOS1054から発生するイベントとは、汎用プリンタードライバー1053がインストールされ、初期化されたタイミングで発生するもの、OS1054がネットワークに接続されたり接続状態が変わったりした際に発生するイベント等を指す。また、システムにより予約された一定時間ごとか、特定の時刻により発生するイベントでも構わない。またプリンター201から発生するイベントとは、プリンター201側で設定の更新がされた際やプリンター201が起動された際、フィニッシャーなどのオプションが取り付け(取り外し)された際などに発生するイベントを指す。また、プリンター201から発生するイベントには、プリンター201のステータスが更新された際などに発生するイベントも含まれる。また、ユーザー操作により発生するイベントとは、汎用プリンタードライバー1053に結びついた印刷拡張アプリ10511が操作された際に発生するイベントである。例えば、タイルアプリ部301の情報取得ボタン601、詳細情報設定UI部302の情報取得ボタン501の操作が、ユーザー操作により発生するイベントに該当する。また、印刷拡張アプリ10511がユーザーによって起動された場合や終了された場合もユーザー操作により発生するイベントと見なす。
まずS1001において、プリンター能力取得部304は、機種固有の情報取得の定義が存在しているかどうかを判定する。具体的には、プリンター能力取得部304は、プリンター201に対応するデータ保持部303の拡張情報格納部3032に機種固有の情報取得の定義が存在しているか否かの判定を行う。この際、システムのRAM1022上に機種固有の情報取得の定義と同様の情報がロードされていることを判定の条件としてもよいし、機種固有の情報取得の定義を取得済みであるというフラグを持たせておいて判定の条件としてもよい。
上記S1001において、機種固有の情報取得の定義が存在しないと判定した場合(S1001でNoの場合)、プリンター能力取得部304は、S1002に処理を進め、プリンター201に対して機器固有の情報取得の定義の取得を行うように制御する。
S1002において、プリンター能力取得部304は、機器共通の情報取得の定義の読み込みを行う。上述したように、機器共通の情報取得の定義は、プリンター201に対応するデータ保持部303の基本情報格納部3031に機種に依存しないデータとして保存されており、例えば図7のようなものである。
図7は、機器共通(機器非依存)の情報取得の定義の一例を示す図である。
能力情報取得の定義701は、プリンター201から機種固有の情報取得の定義を取得するためのリクエスト情報であり、このリクエストを行うことで、プリンター201から図9のような機器固有の情報取得の定義の取得を行うことが可能となる。本実施形態のリクエストは、文字列として定義の取得を想定しているが、別途バイナリー形式でデータの取得を行ってもよいし、本例のようなXMLでなくJSONのような別のデータ形式で取得を行い、別途コンバートした上で用いるといった方法でも構わない。
図9は、機器固有(機器依存)の情報取得の定義の一例を示す図である。
次にS1003において、プリンター能力取得部304は、上記S1002で読み込んだ情報(機器共通(機器非依存)の情報取得の定義)を基に機器固有(機器依存)の情報取得の定義をプリンター201から取得する。該取得した情報はシステムのRAM1022に読み込まれる。この際、接続の確立やデータ取得時の再送処理といった処理は、OS1054側によって制御される。また、接続がUSB接続であった場合も基本的にネットワーク接続時と同様である。しかし、プリンター201が通信に用いるデータがベンダ固有のものであったり特殊な処理が必要であったりした場合には、図8のような実行可能なスクリプトを読み込ませて処理を行ってもよい。本スクリプトは、プリンター201に印刷処理をかけたり、情報の取得を行ったりする際に読み込まれ、処理内容に合わせて予約された名称の関数が実行される。
図8は、USBでの情報取得時の拡張定義の一例を示す図である。
例えば、情報の取得時は、図8のgetSchemas関数が呼び出され、記載している処理が呼び出される。なお、本例ではgetSchemas関数が呼び出されたが、例えばIPP接続であった場合にはGetPrinterAttibute関数に紐付いた処理が呼び出される。また、処理の内容に関しては、例えばプリンター側から返されるデータが、ベンダ固有のバイナリーデータや所定フォーマットのデータであった際に、そのデータのコンバートを行う。また、機器によってコンバート処理を切り替える等、機器ごとの処理の分岐や通信のやり取りの際にプリンター201との処理の待ち合わせや、情報取得と印刷処理が平行して走った場合の通信データの整合性を取るなどの処理を行ってもよい。このスクリプトによってデータを変換することで、通常のネットワークでの通信と同様に処理を行わせることが可能となる。
次にS1004において、プリンター能力取得部304は、上記S1003で取得したデータ(機器固有の情報取得の定義)を、プリンター201に対応するデータ保持部303の拡張情報格納部3032に保存し、S1005に処理を進める。
また上記S1001において、機種固有の情報取得の定義が存在すると判定した場合(S1001でYesの場合)、プリンター能力取得部304は、S1005に処理を進める。
S1005において、プリンター能力取得部304は、機器固有の情報取得の定義を適用する処理を行う。ここでは、図7のような機器共通の定義を図9のような定義と置き換える処理を想定しているが、機器共通の定義と機器固有の定義が競合しない場合は、両方読み込むなどの方法をとってもよいし、2つのファイルをマージしてもよいものとする。
次にS1006において、プリンター能力取得部304は、上記S1005での処理で更新された情報を適用する処理を行う。本処理は、設定の再読み込みや適用処理の呼び出し処理が該当するが、システムの初期化処理の呼び出しを行ってもよい。また、必要であれば、OS1054が管理するシステムスプーラ10541の再起動も行う。なお、再起動時に必要であれば、タスクスケジューラや外部プロセスを用いて自身のプロセスを再実行してもらうなどの方法を取ってもよい。
次にS1007において、プリンター能力取得部304は、上記S1006で適用した機器固有の情報取得の定義を基に機器固有(機器依存)の情報をプリンター201から取得する。本実施例では、図9のような機器固有の情報取得の定義を用いて情報を取得する。例えば、機器共通の定義901はステープルが可能かどうかという機器共通の設定に対する情報取得の定義である。また、機器固有の定義902は「パンチや針なしとじ」といった機器固有の情報取得の定義である。本ステップでは、このような定義に従い情報の取得を行う。なお、プリンター能力取得部304は、ここで取得した構成情報を、プリンター201に対応するデータ保持部303の拡張情報格納部3032に保存し、本フローチャートの処理を終了する。
続けて、図5を用いて、取得した情報に基づき表示される設定画面の一例について説明する。なお、図5Aは機器固有の情報取得を行っていない場合に表示される設定画面の一例を示している。また、図5Bは機器固有の情報取得を行った場合に表示される設定画面の一例を示している。
図5A又は図5Bの画面は、印刷設定を行うためのユーザー操作をOS1054が検知し、OS1054によって、印刷に使用するプリンターに対応する印刷拡張アプリ10511が呼びされたことに応じて、表示される。OS1054によって起動された印刷拡張アプリ10511は、汎用プリンタードライバー1053のデータ保持部303に記憶された、印刷に使用するプリンターに対応する機能情報を取得する。そして、印刷拡張アプリ10511の詳細情報設定UI部302は、当該取得した情報に基づいて図5A又は図5Bのような設定画面を表示する。
例えば、図5Aの設定画面において、情報取得ボタン501がユーザー操作されることに応じて、上述した図10の処理が実行される。そして、OS1054からのイベントを受信すると、詳細情報設定UI部302が図10の処理で取得された機器固有(機器依存)の構成情報を用いて詳細設定画面の表示を更新する。これにより、図5Aのような機器情報取得前の設定画面から、機器固有の設定も含む図5Bのような設定画面に切り替えることが可能となる。そして、図5Bのような設定画面で設定された印刷設定を用いて、汎用プリンタードライバー1053が、プリンター201を制御する。例えば、プリンター201に図5Bのような設定画面で設定された印刷設定に基づく印刷ジョブ等を送信する。
以上のように、汎用のプリンタードライバーにおいて、策定済みの規格では対応できない機種固有の機能に関する情報を取得できるようになる。
〔第2実施形態〕
第2実施形態では、サーバー上に機器固有の情報取得の定義が存在する場合について説明する。第1実施形態では機器固有の情報取得の定義をプリンター側に問い合わせる構成について説明したが、第2実施形態ではサーバーから定義を取得する構成について説明する。
図11は、第2実施形態における機器固有の情報取得の定義の取得処理の一例を示すフローチャートであり、図10のS1002及びS1003に置き換えて実行されるものとする。
なお、このフローチャートの処理は、クライアントコンピューター100のCPU101が補助記憶装置105等に格納されるプログラムをRAM1022にロードして実行することにより実現される。なお、本フローチャートに示す処理は、特に断らない限りOS1054から呼び出された汎用プリンタードライバー1053のプリンター能力取得部304において実行されるものとする。
S1101において、プリンター能力取得部304は、機器固有の情報取得定義の格納場所の取得を行う。この格納場所の情報は、予め汎用プリンタードライバー1053上に定義されていてもよいし、機器共通の定義上にファイルの参照が記載されていてもよい。なお、ベンダや機種により上記の格納場所が異なる場合には、プリンター201のベンダや機種等の情報を用いて、格納場所を取得してもよい。また、機器固有の情報取得の定義のファイルの格納場所は、インターネット上に配置されているか、共有ファイルとしてサーバー上にアップされているか、あるいはローカルストレージに配置されているものを用いてもよい。また、プリンター201上に設けられたファイル共有の仕組みを用いて格納されていても構わない。
次にS1102では、プリンター能力取得部304は、上記S1101で取得した機器固有の情報取得定義の格納場所に対する認証処理を行う。
次にS1103では、プリンター能力取得部304は、上記S1101で取得した機器固有の情報取得定義の格納場所から、機器固有の情報取得定義のファイルの取得を行う。なお、取得の際に、プリンター201のベンダや機種等の情報が必要な場合にはこれらを用いて取得するものとする。
以上の処理を行うことで、サーバー等に配置された機器固有の情報取得定義のファイルを取得することができる。
以上示したように、各実施形態によれば、各種プリンター共通に利用可能なベンダや機種に依存しない汎用プリンタードライバーにおいて、策定済みの規格では対応できない印刷装置の機種固有の機能に関する情報を取得することが可能となる。
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されていてもよい。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施形態を組み合わせた構成も全て本発明に含まれるものである。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施形態及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
100 クライアントコンピューター
201 プリンター
302 詳細情報設定UI部
303 データ保持部
304 プリンター能力取得部
1053 汎用プリンタードライバー
1054 オペレーティングシステム(OS)
10511 印刷拡張アプリ
本発明は、プリンタードライバーにより利用される第1の機能に対応する第1の機能情報と、前記プリンタードライバーに提供される印刷設定を設定するための印刷設定画面を提供する印刷設定アプリケーションが記憶される情報処理装置の制御方法であって、前記第1の機能と異なる第2の機能に対応する第2の機能情報に基づき、前記第2の機能に関する能力情報を、外部装置から取得する取得工程と、前記取得工程において取得された前記第2の機能に関する能力情報に基づき、前記第2の機能の設定値を設定するためのオブジェクトを表示させる表示制御工程と、を有することを特徴とする。

Claims (1)

  1. 複数の周辺装置に対して共通に利用可能なデバイスドライバーを有する情報処理装置であって、
    前記複数の周辺装置に対して共通に利用可能な情報取得の定義情報である第1定義情報を用いて、前記いずれかの周辺装置に固有の情報取得の定義情報である第2定義情報を取得する第1取得手段と、
    前記第1取得手段により取得された前記第2定義情報を用いて、該周辺装置から、該周辺装置に固有の構成情報を取得する第2取得手段と、
    前記第2取得手段により取得された前記第2定義情報を、前記デバイスドライバーで使用する周辺装置ごとの記憶領域に格納する格納手段と、
    を有することを特徴とする情報処理装置。
JP2023101716A 2018-06-29 2023-06-21 情報処理装置、情報処理装置の制御方法及びプログラム Pending JP2023112072A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023101716A JP2023112072A (ja) 2018-06-29 2023-06-21 情報処理装置、情報処理装置の制御方法及びプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018124000A JP7301503B2 (ja) 2018-06-29 2018-06-29 情報処理装置、情報処理装置の制御方法、プログラム及びアプリケーション
JP2023101716A JP2023112072A (ja) 2018-06-29 2023-06-21 情報処理装置、情報処理装置の制御方法及びプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2018124000A Division JP7301503B2 (ja) 2018-06-29 2018-06-29 情報処理装置、情報処理装置の制御方法、プログラム及びアプリケーション

Publications (1)

Publication Number Publication Date
JP2023112072A true JP2023112072A (ja) 2023-08-10

Family

ID=69055235

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2018124000A Active JP7301503B2 (ja) 2018-06-29 2018-06-29 情報処理装置、情報処理装置の制御方法、プログラム及びアプリケーション
JP2023101716A Pending JP2023112072A (ja) 2018-06-29 2023-06-21 情報処理装置、情報処理装置の制御方法及びプログラム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2018124000A Active JP7301503B2 (ja) 2018-06-29 2018-06-29 情報処理装置、情報処理装置の制御方法、プログラム及びアプリケーション

Country Status (2)

Country Link
US (4) US11093185B2 (ja)
JP (2) JP7301503B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7301503B2 (ja) * 2018-06-29 2023-07-03 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、プログラム及びアプリケーション
JP7433940B2 (ja) * 2020-01-31 2024-02-20 キヤノン株式会社 情報処理装置、印刷装置および当該情報処理装置の制御方法、プログラム
JP7447667B2 (ja) 2020-05-01 2024-03-12 コニカミノルタ株式会社 ジョブデータを生成するためのプログラム、方法および装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7853946B2 (en) * 2003-02-28 2010-12-14 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and control program
JP5353993B2 (ja) * 2006-09-15 2013-11-27 株式会社リコー 情報処理装置、方法、システム、プログラム及びその記録媒体
JP4870621B2 (ja) * 2006-09-15 2012-02-08 株式会社リコー 情報処理装置、方法、システム、プログラム及びその記録媒体
JP5478937B2 (ja) * 2009-05-19 2014-04-23 キヤノン株式会社 情報処理装置、制御方法、プログラム
JP2011165124A (ja) * 2010-02-15 2011-08-25 Canon Inc 印刷装置、サーバー装置、印刷システム、印刷制御方法、及び印刷制御プログラム、並びに記録媒体
JP2011243067A (ja) * 2010-05-19 2011-12-01 Brother Ind Ltd 印刷制御装置,印刷制御システム,およびプリンタドライバ
JP5943571B2 (ja) * 2011-09-09 2016-07-05 キヤノン株式会社 印刷システム、プリンター、プリントサーバー、及びその方法
JP5786613B2 (ja) * 2011-09-30 2015-09-30 ブラザー工業株式会社 管理装置
JP2014085749A (ja) * 2012-10-22 2014-05-12 Oki Data Corp ドライバインストーラ、画像処理装置、画像形成システム及び画像形成装置
JP6296765B2 (ja) * 2013-11-20 2018-03-20 キヤノン株式会社 情報処理装置および制御方法およびプログラム
JP6351405B2 (ja) * 2013-12-16 2018-07-04 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2015118559A (ja) * 2013-12-18 2015-06-25 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP2015219587A (ja) * 2014-05-14 2015-12-07 株式会社リコー 画像形成装置、画像形成方法、及び画像形成プログラム。
JP2016168708A (ja) * 2015-03-12 2016-09-23 株式会社リコー 画像処理装置、及び画像処理システム
JP2017021537A (ja) * 2015-07-09 2017-01-26 キヤノン株式会社 情報処理装置、プログラム及び制御方法。
JP6834823B2 (ja) * 2016-09-08 2021-02-24 株式会社リコー プリンタドライバ、情報処理装置および画像処理システム
US10191697B2 (en) * 2017-03-17 2019-01-29 Ricoh Company Ltd. Information processing apparatus, information processing system, and information processing method
JP7035803B2 (ja) * 2018-05-23 2022-03-15 ブラザー工業株式会社 画像処理装置、及び、画像処理装置のためのコンピュータプログラム
JP7301503B2 (ja) * 2018-06-29 2023-07-03 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、プログラム及びアプリケーション

Also Published As

Publication number Publication date
US11093185B2 (en) 2021-08-17
JP7301503B2 (ja) 2023-07-03
US20200004477A1 (en) 2020-01-02
US20220342615A1 (en) 2022-10-27
US11687297B2 (en) 2023-06-27
JP2020004159A (ja) 2020-01-09
US11422758B2 (en) 2022-08-23
US20230289115A1 (en) 2023-09-14
US20210349668A1 (en) 2021-11-11

Similar Documents

Publication Publication Date Title
JP2023112072A (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
JP5698557B2 (ja) 印刷システムおよび印刷システムにおける制御方法
US8640148B2 (en) Information processing apparatus, information processing method and storage medium
WO2020004159A1 (ja) 情報処理装置、制御方法及びプログラム
US11494146B2 (en) Information processing apparatus creates virtual printer to transmit print job to associated image forming apparatus which supports predetermined print format
US10585631B2 (en) Portable multi-function printing extension computing device
US11789666B2 (en) Server system and information processing apparatus
JP6628654B2 (ja) 情報処理装置、印刷プラグイン、印刷システム及び制御方法
JP2012008860A (ja) 画像形成装置、印刷制御方法、及びプログラム
JP6737170B2 (ja) サーバー装置、画像処理ユニット及びプログラム
JP2008165654A (ja) 情報処理装置、画像形成装置、ドライバ更新方法、記憶媒体、プログラム
JP6394587B2 (ja) 画像形成システムおよび画像形成方法
US10817227B2 (en) Printing computing device for operating a printing device
US10915283B2 (en) Communication device, control method, and non-transitory computer-readable storage medium for print job with post-processing
KR20220137967A (ko) 용지 종류의 정보를 송신하는 인쇄 장치와 그 제어 방법, 및 저장 매체
JP2021043547A (ja) 情報処理装置および情報処理装置の制御方法ならびにプログラム
JP2015153404A (ja) プログラム、情報処理装置、情報処理方法、及び情報処理システム
JP2014222478A (ja) 命令生成プログラム管理システム、画像形成装置
JP6950066B2 (ja) プログラム、情報処理装置及び制御方法
JP6972884B2 (ja) 印刷指示装置
JP2023086048A (ja) 印刷システム、印刷装置、情報処理装置、印刷装置の制御方法、情報処理装置の制御方法およびプログラム
JP2020047295A (ja) プログラム、情報処理装置及び制御方法
JP2017228183A (ja) 画像形成システムおよび画像形成方法
JP2016021203A (ja) 情報処理システム、情報処理装置及びコンピュータープログラム
JP2010211268A (ja) 通信機器、該通信機器の制御方法およびそのプログラムならびにシステム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230719

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230719