JP2024018088A - 情報処理装置、情報処理方法およびプログラム - Google Patents

情報処理装置、情報処理方法およびプログラム Download PDF

Info

Publication number
JP2024018088A
JP2024018088A JP2022121181A JP2022121181A JP2024018088A JP 2024018088 A JP2024018088 A JP 2024018088A JP 2022121181 A JP2022121181 A JP 2022121181A JP 2022121181 A JP2022121181 A JP 2022121181A JP 2024018088 A JP2024018088 A JP 2024018088A
Authority
JP
Japan
Prior art keywords
printing
information
print
information processing
screen
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.)
Granted
Application number
JP2022121181A
Other languages
English (en)
Other versions
JP7547418B2 (ja
Inventor
徹矢 塩原
Tetsuya Shiobara
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 JP2022121181A priority Critical patent/JP7547418B2/ja
Priority to US18/358,821 priority patent/US20240036783A1/en
Priority to CN202310939839.0A priority patent/CN117472298A/zh
Publication of JP2024018088A publication Critical patent/JP2024018088A/ja
Application granted granted Critical
Publication of JP7547418B2 publication Critical patent/JP7547418B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/1224Client or server resources 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
    • 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/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • 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/125Page layout or assigning input pages onto output media, e.g. imposition
    • 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/1284Local printer device
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

【課題】 標準ドライバの機能を拡張する拡張アプリケーションとして適切なUIを提供すること。【解決手段】 複数の異なる印刷装置に対して共通に利用可能な印刷データ生成ソフトウェアにより提供される機能の拡張を行うアプリケーションを備える情報処理装置であって、前記情報処理装置に接続された印刷装置による印刷の形態に係る情報を取得する取得手段と、前記取得手段が取得した情報に基づいて、異なる構成の画面を表示する表示手段と、 を有することを特徴とする情報処理装置。【選択図】 図10

Description

本発明は、情報処理装置、情報処理方法およびプログラムに関する。
印刷装置の制御用ソフトウェアとしてホストコンピュータにインストールされたプリンタドライバを利用し、ホストコンピュータに接続された印刷装置に対して印刷指示を行う構成が知られている。ホストコンピュータには、基本ソフトウェアであるオペレーティングシステム(OS)がインストールされており、プリンタドライバはそのOSの規定する仕様に従って構成され、OSから呼び出されて動作する。印刷装置を提供するベンダは、OSの仕様に適合するプリンタドライバを提供することにより、そのOSを用いて印刷装置に印刷を指示する手段を提供することができる。
近年、Windows(登録商標)において、複数のベンダの提供する印刷装置で共通して利用可能な標準的なクラスドライバ(以下、「標準ドライバ」とも呼ぶ)が提供されている。このような標準ドライバは、OSのパッケージの中に同梱されており、ホストコンピュータに任意の印刷装置を接続することにより簡易に利用可能となる。よって、印刷装置に適した機種固有のプリンタドライバを別途インストールする必要が無く、利便性が高い。また、標準ドライバは、接続した印刷装置から取得した情報に基づき生成されたPrintDeviceCapabilities(以下、「PDC」)に応じて印刷機能を指定可能に構成される。これにより、標準ドライバを利用するユーザは、1つの標準ドライバを利用しているにも関わらず、接続した印刷装置の能力に応じた印刷機能を指定することができる。
標準ドライバには機能拡張用のアプリケーション(以下、「拡張アプリケーション」とも呼ぶ)を関連付けることができる。拡張アプリケーションは、印刷装置を提供するベンダが提供することができる。拡張アプリケーションは標準ドライバが生成したPDCを編集することにより、標準ドライバのみでは実現できない機能(拡張機能)を提供することができる。特許文献1には、拡張アプリケーションにより、スタンプ機能等の機能を拡張する技術が開示されている。
特開2019-74906号公報
特許文献1の拡張アプリケーションは、スプールファイルを編集することができる。拡張アプリケーションは、スプールファイルを編集することで、例えば、割り付け印刷機能を実現することができる。しかしながら、標準ドライバの機能を拡張する拡張アプリケーションの機能を十分に発揮させるためには、適切なUIを提供することが必要となる。
上記目的を達成するために、複数の異なる印刷装置に対して共通に利用可能な印刷データ生成ソフトウェアにより提供される機能の拡張を行うアプリケーションを備える情報処理装置であって、前記情報処理装置に接続された印刷装置による印刷の形態に係る情報を取得する取得手段と、前記取得手段が取得した情報に基づいて、異なる構成の画面を表示する表示手段と、を有することを特徴とする。
本実施形態により、標準ドライバの機能を拡張する拡張アプリケーションとして適切なUIを提供することが可能となる。
印刷システムのハードウェア構成を示すブロック図。 印刷システムのソフトウェア構成図。 単独起動画面表示ユニット211が表示する単独起動画面の一例を示す図。 単独起動画面で表示する許諾ダイアログの一例を示す図。 印刷設定画面拡張ユニット205が表示する印刷設定画面の一例を示す図。 印刷設定画面拡張ユニット205による印刷設定画面表示の処理フローを示す図。 印刷装置のデバイス種別の判断フローを示す図。 印刷データ生成ソフトウェア202が生成するPCの一例を示す図。 通知ユニット209が表示するステータス通知画面の一例を示す図。 通知ユニット209によるステータス通知画面表示の処理フローを示す図。 印刷装置の接続種別の判断フローを示す図。 表示判断情報の取得フローを示す図。 表示判断情報の一例を示す図。 対応機能情報の一例を示す図。 ステータスメッセージ情報の一例を示す図。
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
なお、同一の構成要素には同一の参照番号を付して、説明を省略する。
(実施形態1)
<印刷システムのハードウェア構成>
図1は、印刷システムのハードウェア構成を示すブロック図である。本図において、ホストコンピュータ101は、情報処理装置の一例であり、入力インタフェース110、CPU111、ROM112、RAM113、外部記憶装置114、出力インタフェース115、及び入出力インタフェース116を有する。また、入力インタフェース110には、キーボード118、ポインティングデバイス117などの入力デバイスが接続され、出力インタフェース115には、表示部119などの表示デバイスが接続されている。NETIF120は、ネットワークインタフェイスであり、ネットワークを介して外部機器との間でデータ転送を行うための制御を行う。
ROM112には、初期化プログラムが格納されている。外部記憶装置114には、アプリケーションプログラム群、オペレーティングシステム(OS)、印刷データ生成ソフトウェア、その他の各種のデータが格納されている。RAM113は、外部記憶装置114にストアされる各種のプログラムの実行の際のワークメモリ等として使用され、各種プログラムがホストコンピュータ101内で動作可能となっている。
なお、本実施形態では、CPU111が、ROM112に格納されたプログラムの手順に従って処理を行うことによって、ホストコンピュータ101における後述の機能及び後述するフローチャートに係る処理を実行する。デバイスである印刷装置102は、入出力インタフェース116を介して、ホストコンピュータ101と接続されている。ここでは、ホストコンピュータ101と印刷装置102が分かれて構成されているが、これらが一つの情報処理装置として構成されていても良い。なお、印刷装置は、インクを紙面上に吐出することで印刷するインクジェットプリンタを例に説明するが、他の方法(例えば電子写真方式)で印刷が実行されても良い。また、ホストコンピュータ101は、デスクトップパソコンでも、スマートフォンでも、ノートパソコンでも構わない。
<ソフトウェアを中心とした印刷システムの構成>
図2は、印刷システムのソフトウェア構成を模式的に示す図である。ここでは、OSとしてMicrosoft(登録商標)のWindows(登録商標)11を搭載したホストコンピュータ101を用いた印刷システムを前提として説明する。
図2(a)は、拡張アプリケーション204が、印刷データ生成ソフトウェア202および印刷装置102と関連付けられていない場合の一般的な構成を示す図である。描画アプリケーション201は印刷されるコンテンツ(描画データ)を作成するソフトウェアである。例えば、文書作成アプリケーションや表計算アプリケーションが相当する。描画アプリケーション201は、ユーザから印刷要求を受けると、印刷指示をOSに発行する。印刷指示には、印刷データ生成ソフトウェア202及び印刷装置102の動作を指示するための印刷設定情報が含まれる。印刷設定情報はPrintTicket(以下、「PT」)とも呼ばれる。
描画アプリケーション201は、印刷設定情報を出力するために、印刷データ生成ソフトウェア202、OS、もしくは描画アプリケーション201、のうちいずれかが提供する印刷設定画面を表示させる事ができる。印刷設定画面は、印刷データ生成ソフトウェア202から取得する能力情報(印刷設定として設定可能な情報)に従い、設定可能な印刷機能を示す設定アイテム(以下、「コントロールアイテム」とも呼ぶ)と、その設定値を示すコントロールアイテムを含む。能力情報は、PrintCapabilities(以下、「PC」)とも呼ばれる。
印刷データ生成ソフトウェア202は、印刷機能情報203に基づき、PCを決定する。印刷機能情報203は、設定可能なすべての印刷機能とその設定値、並びに、設定値同士の排他関係が記載されている印刷機能を示すデータである。印刷機能情報203は、PDC(Print Device Capabilities)とも呼ばれる。PDC203は、印刷データ生成ソフトウェア202の構成ファイルに含まれ、変更不可能なファイルとして外部記憶装置114に配置される。もしくは、印刷データ生成ソフトウェア202により、PDC203は動的に生成されることもできる。具体的には、印刷データ生成ソフトウェア202もしくはOSは、印刷装置102から印刷装置の属性データを取得し、取得した属性データ内の属性情報に応じてPDC203を生成するよう構成することができる。なお、動的にPDC203が生成される場合、生成されたPDC203は編集可能である。また、印刷装置102から取得される印刷装置の属性データとは、印刷装置に対してIPP(Internet Print Protocol)のGet-Printer-Attributesオペレーションを発行することにより取得するレスポンスである。レスポンスの中には、印刷装置102で指定可能な機能(印刷装置の能力)を示す属性情報とその属性情報に関連する設定値を含む。このレスポンスはRAM113に保存される。
このように構成することで、印刷データ生成ソフトウェア202は、接続された印刷装置102に応じて、それぞれの印刷装置102で利用可能な印刷機能をユーザが指定可能に構成する事ができる。すなわち、異なる機能を持つ印刷装置や、異なるベンダが開発した印刷装置を接続した場合であっても、印刷データ生成ソフトウェア202は、接続した印刷装置に応じて利用可能な印刷機能をユーザが指定可能に構成することができる。
なお、ここでは、印刷データ生成ソフトウェア202として、Windows(登録商標)11に搭載されている、IPP Class Driverを利用した構成について説明する。IPP Class Driverは、IPP(Internet Print Protocol)と呼ばれる標準的な印刷プロトコルの仕様に従って印刷処理を実行するプリンタドライバであり、OSのパッケージの中に同梱されている。印刷装置102の機種に応じた固有のプリンタドライバではなく、ベンダや機種によらず複数の印刷装置で共通して利用可能な標準的なクラスドライバである。また、IPP Class Driverは、接続した印刷装置102でサポートする印刷機能をユーザが指定できるように、接続した印刷装置102の能力情報を取得し、その情報を元にPDC203を生成する。なお、本実施形態では、IPP Class Driverを利用した印刷形態はLocal Print(ローカルプリント)と記載することもある。また、印刷データ生成ソフトウェア202としては、Windows(登録商標)11に搭載されている、UP Class Driverを利用することも可能である。UP Class Driverはサーバを介して印刷を行うクラウド印刷の一形態であるUniversal Printで利用されるプリンタドライバである。
OSは、描画アプリケーション201から出力された印刷指示に基づき中間データ(入力データとも呼ぶ)を生成して、印刷データ生成ソフトウェア202に渡す。なお、描画アプリケーション201が印刷用に出力するデータは、Graphic Device Interface形式のデータ(GDI形式データ)またはXML Paper Specification形式のデータ(XPS形式のデータ)である。印刷データ生成ソフトウェア202として、IPP Class Driverを利用する場合、描画アプリケーション201が出力するデータがGDI形式のデータなら、OSは、描画アプリケーション201から出力されたGDI形式のデータをXPS形式のデータに変換する。そして、変換したXPS形式のデータを中間データとして印刷データ生成ソフトウェア202に渡す。描画アプリケーション201が出力するデータがXPS形式のデータなら、OSは、XPS形式のデータを中間データとして印刷データ生成ソフトウェア202に渡す。なお、中間データには、紙面上に形成する絵(画像)の情報である描画データと、ユーザにより設定された印刷設定情報と、が含まれる。
印刷データ生成ソフトウェア202は、取得した中間データを印刷装置102が解釈可能な印刷データに変換し、印刷装置102に送信する。なお、印刷データには、紙面上に形成する絵(画像)の情報である描画データと、ユーザにより設定された印刷設定情報に基づき生成された印刷設定属性情報(印刷設定を指定する属性情報)とが含まれる。印刷設定属性情報は、印刷装置102で指定可能な機能(印刷装置の能力)を示す属性情報とその属性情報に関連する設定値を含む。
印刷装置102は、印刷データ生成ソフトウェア202から送られた印刷データに基づき紙面への印刷を行う。この時、印刷装置102は、印刷データに含まれる印刷設定属性情報に従った動作で、印刷データに含まれる描画データを紙面上に形成する。印刷設定属性情報には、印刷品位(画質優先、速度優先、等)や、両面印刷等を指定するための属性情報とその設定値が含まれている。例えば、印刷設定属性情報に、両面印刷を指定する属 性情報とそれを動作させることを示す設定値が含まれる場合、印刷装置102は、両面印刷を実行する。
図2(b)は、拡張アプリケーション204が、印刷データ生成ソフトウェア202および印刷装置102と関連付けられている場合の構成を示す図である。なお、以下において特に言及しない構成や処理については、図2(a)と同等の構成となる。
拡張アプリケーション204は、印刷データ生成ソフトウェア202の機能を拡張するためのソフトウェアであり、OSに予め含まれていない(同梱されていない)ソフトウェアである。そのためユーザがホストコンピュータ101を操作し、インターネットを介してサーバから拡張アプリケーション204をダウンロードして、インストールする必要がある。若しくは、ホストコンピュータ101に印刷装置102が接続されたことに基づき、自動的にインストールされてもよい。具体的には、ホストコンピュータ101に印刷装置102が接続された場合、OSは印刷装置102からデバイス識別情報を取得する。OSは、取得されたデバイス識別情報に対応する拡張アプリケーション204を、インターネットを介してサーバからダウンロードし、インストールしても良い。つまり、印刷データ生成ソフトウェア202と、拡張アプリケーション204は別ファイルとしてホストコンピュータ101に保持される。
なお、印刷データ生成ソフトウェア202および拡張アプリケーション204は、更新されてバージョンアップされることもあるが、この更新処理も別々のタイミングで行われる。つまり、ホストコンピュータ101により印刷データ生成ソフトウェア202の更新ファイルが取得されるタイミングと、拡張アプリケーション204の更新ファイルが取得されるタイミングは異なる。また、ホストコンピュータ101により印刷データ生成ソフトウェア202の更新ファイルが取得されるトリガーと、拡張アプリケーション204の更新ファイルが取得されるトリガーも異なる。なお、拡張アプリケーション204がインストールされた場合、OSが、拡張アプリケーション204を、印刷データ生成ソフトウェア202および印刷装置102に関連付ける。
本実施形態で説明する拡張アプリケーション204は、印刷設定画面拡張ユニット205とスキップ制御ユニット206と印刷機能拡張ユニット207と印刷データ編集ユニット208と通知ユニット209、単独起動画面表示ユニット211を備える。また、拡張アプリケーション204は、各ユニットから共通してアクセス可能な共有情報210を保持する。共有情報210の実態は、外部記憶装置114に保存されたファイル、もしくはRAM113上に格納された情報である。拡張アプリケーション204は、OSが提供するAPI(Application Program Interface)を利用することで、共有情報210への情報の書き込みや読み出しを行う。
なお、拡張アプリケーション204は、各ユニットの処理が終わるたびに動作を終了しても良い。その場合、各ユニットを使う要求を受ける度にOSが拡張アプリケーション204を起動することになる。また、別の形態も考えられる。例えば印刷設定画面拡張ユニット205の処理が終了するとOSは拡張アプリケーション204の動作を終了させるが、スキップ制御ユニット206の処理が終了してもOSは拡張アプリケーション204を起動させたままにしても良い。さらに、拡張アプリケーション204は、各ユニットの処理の中で、処理をキャンセルしても良い。キャンセルした場合、印刷キュー上の処理中のジョブがOSにより削除される。
描画アプリケーション201は、ユーザから印刷要求を受けると、印刷指示をOSに発行する。本構成下でも、図2(a)の構成と同様、描画アプリケーション201は、印刷設定画面を表示させることができる。本構成下では、拡張アプリケーション204が提供する印刷設定画面が表示される。具体的には、拡張アプリケーション204が備える印刷設定画面拡張ユニット205が提供する印刷設定画面が表示される。なお、印刷設定画面拡張ユニット205により提供される印刷設定画面が表示されるか否かはユーザの操作に依存する。印刷設定画面拡張ユニット205の詳細は、図4を用いて後述する。
また、描画アプリケーション201がユーザから印刷要求を受けつけ、印刷指示がOSに発行されると、OSはスキップ制御ユニット206を起動する。スキップ制御ユニット206は、印刷データ生成ソフトウェア202の処理をスキップするか否かの制御を行う。スキップ制御ユニット206のスキップ制御処理の後、OSは、描画アプリケーション201から出力された印刷指示に基づき中間データを生成し、中間データが印刷データ生成ソフトウェア202に渡される。ここで、スキップ制御ユニット206でスキップ制御が行われない場合、中間データは印刷データ生成ソフトウェア202で印刷装置102が解釈可能な印刷データへ処理され、印刷データ編集ユニット208へ渡される。一方、印刷データ生成ソフトウェア202のスキップが行われる場合は、中間データは印刷データ生成ソフトウェア202で処理されずに、印刷データ編集ユニット208に渡される。これにより、中間データを印刷データ編集ユニット208で処理することが可能となる。
印刷データ編集ユニット208は、印刷データ生成ソフトウェア202から渡される中間データもしくは印刷データ生成ソフトウェア202により処理された印刷データの編集を行う。編集内容として、割り付け印刷を例にとると、印刷データ編集ユニット208は、OSから受け取った割り付け印刷の印刷設定情報に基づいて、中間データもしくは印刷データのレイアウトを変更する。また、印刷データ編集ユニット208は表示部119にUI画面を表示することが可能であり、中間データもしくは印刷データのレイアウト結果をプレビュー画面として表示する等の機能を提供することができる。なお、印刷データ編集ユニット208が表示部119に表示したGUI画面を開いたままの状態では印刷データは印刷装置102に送信されず、GUI画面を閉じることで印刷データの送信処理が動作する。
印刷データ編集ユニット208が印刷データを編集した後、印刷データは印刷装置102へ渡される。印刷装置102は、受け付けた印刷データに基づき紙面への印刷を行う。
なお、スキップ制御ユニット206で印刷データ生成ソフトウェア202がスキップされた場合、印刷データ編集ユニット208が、受け取った中間データを印刷装置102が解釈可能な印刷データへ変換しても良い。また、中間データを印刷データへ変換するために、OSが提供する機能を利用しても良い。
拡張アプリケーション204は、印刷機能拡張ユニット207を有する。印刷機能拡張ユニット207は、印刷データ生成ソフトウェア202もしくはOSが生成したPDC203を編集することができる。これにより、印刷機能拡張ユニット207は、拡張アプリケーション204が提供する機能の追加、印刷装置102はサポートしているが印刷データ生成ソフトウェア202がサポートしていない機能の追加、印刷機能の設定値同士の排他関係の追加、等を行うことができる。OSは、拡張アプリケーション204が印刷装置102と印刷データ生成ソフトウェア202に最初に関連付けられた時に、印刷機能拡張ユニット207を起動する。さらに、OSは、OS起動時等、それ以外のタイミングで印刷機能拡張ユニット207を起動してもよい。このようにすることで、印刷装置102に対して後からオプション装置(例えば、フィニッシャー等)が追加され、印刷に関わる機能が拡張されるようなケースにおいて、印刷機能拡張ユニット207は、拡張機能を検知し、PDC203に追加することができる。
また、拡張アプリケーション204は通知ユニット209を有する。通知ユニット209は、印刷装置102のエラー発生に呼応してユーザに対して通知を表示することが可能である。例えば、印刷装置102で用紙なしエラーが発生すると、それを印刷データ生成ソフトウェア202が検知し、OSは、OSの機能であるトースト通知と呼ばれる通知機能を使って、メッセージを表示部119に表示させる。ユーザがこのトースト通知を押下することで、拡張アプリケーション204の通知ユニット209がOSにより呼び出され、通知ユニット209のUI画面が表示される。通知ユニット209のUI画面では、例えば用紙なしエラーの詳細メッセージや用紙充填方法の表示などを行うことができる。なお、拡張アプリケーション204は一度印刷装置102へ印刷データを送信してしまうと、各ユニットの処理途中で印刷データに紐づくガイドなどの画面表示は行うことができない。
また、拡張アプリケーション204は単独起動画面表示ユニット211を有する。拡張アプリケーション204は、印刷データ生成ソフトウェア202と連携して動作するが、拡張アプリケーション204単独で動作することも可能である。ユーザが拡張アプリケーション204の起動指示をすることで、拡張アプリケーション204の単独起動画面表示ユニット211が呼び出され、単独起動画面表示ユニット211のUI画面が表示される。
また、本実施形態を実現するための拡張アプリケーション204の構成は、前述の機能(ユニット)を全て備えるものに限定されず、機能の一部のみを持つものや、他の機能を有するものでもよい。また、拡張アプリケーション204は、単に印刷ソフトウェアと呼ばれることもある。以上のように、拡張アプリケーション204は、印刷データ生成ソフトウェア202と連携して設定画面を表示する機能(印刷設定画面拡張ユニット205)、印刷データ生成ソフトウェア202の処理をスキップするか否かを制御する機能(スキップ制御ユニット206)、印刷装置に入力される印刷データを編集する機能(印刷データ編集ユニット208)、印刷データ生成ソフトウェアで指定可能な機能を拡張する機能(印刷機能拡張ユニット207)、印刷装置102のエラー発生に呼応して画面を表示する(通知ユニット209)、の少なくとも1つと、ユーザからの起動指示を受けてUI画面を表示する機能(単独起動画面表示ユニット211)と、を備えると言える。
<単独起動画面表示ユニットの表示する画面例>
単独起動画面表示ユニット211により表示されるUI画面について図3を用いて説明する。図3の単独起動画面300は、ユーザによって拡張アプリケーション204の起動が指示された際に単独起動画面表示ユニット211が表示するUI画面の一例である。尚、本実施形態では拡張アプリケーション204は印刷データ生成ソフトウェア202の機能拡張を行うことを目的としているため、単独起動画面300は必要最低限の機能のみを有するものとしている。表示領域301は、拡張アプリケーション204の役割の説明を表示する領域である。拡張アプリケーション204は、印刷装置102がホストコンピュータ101に接続されたことを基に、自動で印刷インストールされることが想定される。ユーザが意図をもってインストールしたわけではないケースが想定されるため、ユーザが拡張アプリケーション204を起動した際に何をするアプリケーションであるかが分かるように表示領域301を設けている。コントロール302は許諾ダイアログ起動ボタンであり、押下することで使用状況調査の許諾確認を行うダイアログを表示する。なお、拡張アプリケーション204の起動により表示される起動画面は、後述するデバイスの種類(レーザービームデバイス、インクジェットデバイス)によらず共通となっている。
図4は単独起動画面において使用状況調査の許諾ダイアログが表示されている状態を示す図である。コントロール302を押下することで、許諾ダイアログ401が起動する。ユーザは許諾ダイアログに表示されたメッセージを確認した上で、同意するか否かを選択する。ユーザが同意を選択した場合、拡張アプリケーション204は、ユーザが行った操作や、拡張アプリケーション204がインストールされたホストコンピュータ101の環境情報などをサーバに送って収集する。アプリベンダーは収集した情報を拡張アプリケーション204の改善に利用する。ユーザは許諾ダイアログで同意を選択しなかった場合、拡張アプリケーション204は、前述のような情報の収集を実行しない。許諾ダイアログ401は、コントロール302を押下することに加えて、単独起動画面300が初めて起動された際に表示してもよい。初回起動時に許諾ダイアログ401を表示することで、拡張アプリケーション204はユーザが同意するか否かをより確実に確認することができる。表示領域303は、拡張アプリケーション204のバージョン情報を表示する領域である。
<印刷設定画面拡張ユニットの表示する画面例>
次に、印刷設定画面拡張ユニット205により表示される印刷設定画面について図5を用いて説明する。図5の印刷設定画面500は、生成されたPCに基づき、印刷設定画面拡張ユニット205が表示する画面の一例である。印刷設定画面拡張ユニット205は、描画アプリケーション201上でユーザが印刷設定画面の表示を指示した場合に、OSから呼び出される。印刷設定画面拡張ユニット205は、OSから取得できるPCに基づき、印刷データ生成ソフトウェア202で指定可能な印刷機能の設定値をユーザが指定可能な画面を表示する。
図5(a)の印刷設定画面500は、印刷装置102としてインクジェットデバイスが関連付けられた場合に印刷設定画面拡張ユニット205が表示する画面の一例である。コントロール501は、単独起動画面の起動ボタンであり、押下することで単独起動画面表示ユニット211が単独起動画面300を表示する。単独起動画面が初めて表示される場合、単独起動画面表示ユニット211は利用状況調査の許諾確認ダイアログ401も併せて表示する。拡張アプリケーション204は、印刷装置102の接続をトリガーとして自動でインストールされた場合、ユーザは拡張アプリケーション204がインストールされたことを意識しておらず、単独起動画面300を起動しないことが考えられる。そこで、印刷設定画面500に単独起動画面300を起動するためのコントロール501を配置することで、使用状況調査の許諾率の向上に寄与する。
コントロール502は印刷に使用する用紙の種類を設定可能なコントロールアイテムであり、例えば、普通紙や写真用紙といった項目を設定可能である。コントロール503は印刷に使用する用紙サイズを設定可能なコントロールアイテムであり、例えば、A4やレターといった項目を設定可能である。コントロール504は印刷の向きを設定可能なコントロールアイテムであり、縦および横の設定が可能である。コントロール505は印刷装置102の印刷用紙の給紙口を設定可能なコントロールであり、例えば、メイントレイやリアトレイといった項目を設定可能である。コントロール506は逆順印刷の有効・無効を切り替え可能なコントロールアイテムである。コントロール507はふちなし印刷の有効・無効を切り替え可能なコントロールアイテムである。コントロール508は両面印刷を設定可能なコントロールであり、例えば片面印刷や両面印刷 長辺とじ、両面印刷 短辺とじの設定が可能である。コントロール509はOKボタンであり、設定を反映して画面が閉じられる。コントロール510はキャンセルボタンであり、設定を反映せずに画面が閉じられる。
図5(b)の印刷設定画面500は、印刷装置102としてレーザービームデバイスが関連付けられた場合に印刷設定画面拡張ユニット205が表示する画面の一例である。コントロール501~510は、図5(a)と同じであるため、説明は省略する。
コントロール511はふちなし印刷の有効・無効を切り替え可能なコントロールアイテムであり、507と同じ設定を行うコントロールであるが、その機能名称は「印字領域を広げて印刷」と記載される。同じ設定を用いる場合であっても、インクジェットデバイスとレーザービームデバイスでは、ユーザにその機能をどう見せるかが異なる場合がある。そのため、コントロール507と511は、デバイス種別に応じて機能名称を切り替えている。コントロール512はステイプル位置の設定が可能なコントロールアイテムである。コントロール513はパンチ穴あけの設定が可能なコントロールアイテムである。これらコントロール512、513は図5(a)の印刷設定画面には含まれないものである。
図5(a)と(b)では、異なる構成の画面となっている。すなわち、表示する印刷設定や表示する機能名称、印刷設定を変更するコントロールの配置順が異なっている。用紙の種類、用紙サイズ、印刷の向き、用紙トレイ、両面印刷の設定はデバイス種別に依らず設定が可能である。逆順印刷はインクジェットデバイス利用時のみ設定可能である。ステイプル止め、パンチ穴あけの設定はレーザービームデバイス利用時のみ設定可能である。印刷設定画面500にどの印刷設定コントロールを配置するかは、印刷データ生成ソフトウェアから取得したPCと、後述する方法で決定されるデバイス種別毎の対応機能情報によって決定する。これにより、接続された全ての印刷装置102で同じUI画面を表示するのではなく、デバイス種別に応じて適切にカスタマイズされたUI画面を表示することができる。また、図5(a)では、用紙の種類を設定するコントール502が一番上に配置されているのに対して、図5(b)では用紙サイズを設定するコントロール503が一番上に配置されている。インクジェットデバイスとレーザービームデバイスによって重要視する機能が異なる。インクジェットデバイスは様々な用紙の種類を目的によって使い分けるため、用紙の種類の設定を重要と考える。そのため、ユーザの目につきやすい最上段に用紙の種類を設定するコントロール502を配置している。一方で、レーザービームデバイスは主にオフィス用途で普通紙を中心に利用されるため、用紙の種類の設定が変更されることは少ない。そのため、用紙の種類を設定するコントロール502は、用紙サイズや印刷の向きの設定より下段に配置されている。そのため、インクジェットデバイスでは、図5(a)に示されるように、上から順に用紙の種類、用紙のサイズ、印刷の向きが配置される。一方、レーザービームデバイスでは、図5(b)のように、上から順に用紙のサイズ、印刷の向き、用紙の種類が配置される。このように、本実施形態では、複数の同一の印刷設定に対する配置順が、デバイスの種類により異なっている。
尚、後述するデバイス種別の判断処理では、デバイス種別がインクジェットデバイスとレーザービームデバイスのどちらでもない、その他のデバイスと判断されるケースがある。その場合、どちらにも共通の最低限の機能だけを表示することが考えられる。もしくは、その他のデバイスと判断された場合には、インクジェットデバイスかレーザービームデバイスのどちらかと同じ機能を表示するといった構成にしてもよい。
<印刷設定画面の表示処理>
図6は、本印刷システムにおける印刷設定画面拡張ユニット205による印刷設定画面表示処理のうち主要な処理フローを示した図である。以降、印刷設定画面拡張ユニット205を、各処理の主体として説明することもあるが、実際には、対応するプログラムをCPU111が実行することで、対応する機能が実現されることになる。
拡張アプリケーション204が描画アプリケーション201から印刷設定画面の表示指示を受け取ることで、図6のフローは開始する。S601で、印刷設定画面拡張ユニット205は、印刷データ生成ソフトウェア202からPCを取得する。図8は印刷データ生成ソフトウェア202が生成するPC800の一例を示す図である。PC800には、印刷データ生成ソフトウェア202で利用可能な機能(Feature)の情報や、ある機能における設定値(Option)の情報が含まれる。図8のPCには、用紙サイズ(PageMediaSize)、用紙の種類(PageMediaType)、印刷の向き(PageOrientation)が設定可能であることが示されている。印刷設定画面拡張ユニット205や、独自の印刷設定画面を提供するアプリケーションは、PC800を参照することで、印刷設定画面を提供することができる。
S602で、印刷設定画面拡張ユニット205は、印刷装置102からデバイス情報を取得する。デバイス情報は印刷装置102に対してIPPのGet-Printer-Attributesオペレーションを発行することにより取得するレスポンスに含まれる。S603で、S602で取得した情報を用いて関連付けられている印刷装置102のデバイス種別を判別する。
図7は、印刷設定画面拡張ユニット205によるS603の処理の詳細フローを示すフローチャートである。なお、図7のフローは、S602で取得する情報が、印刷装置102のIPPのGet-Printer-Attributesオペレーションのレスポンスによって得られる情報であることを前提としているが、その他の方法で得られる情報を用いてデバイス種別の判断を行うフローであってもよい。S701で、印刷設定画面拡張ユニット205は、印刷装置102のIPPのGet-Printer-Attributesオペレーションのレスポンスにmarker-types属性が含まれるかを確認する。S701でYesと判断した場合、印刷設定画面拡張ユニット205は、S702で、印刷装置102のIPPのGet-Printer-Attributesオペレーションのレスポンスのmarker-types属性値がink-cartridgeであるかを確認する。S702でYesと判断された場合、印刷設定画面拡張ユニット205は、S703で印刷装置102のデバイス種別をインクジェットデバイスと判断する。
S701でNoと判断した場合、印刷設定画面拡張ユニット205は、S705で印刷装置102のIPPのGet-Printer-Attributesオペレーションのレスポンスにprinter-supply属性が含まれるかを確認する。S705でYesと判断した場合、印刷設定画面拡張ユニット205は、S706で、印刷装置102のIPPのGet-Printer-Attributesオペレーションのレスポンスのprinter-supply属性値にtype=tonerが含まれているかを確認する。S706でYesと判断した場合、印刷設定画面拡張ユニット205は、S707で印刷装置102のデバイス種別をレーザービームデバイスと判断する。印刷設定画面拡張ユニット205は、S702,S705,S706でNoと判断した場合、S707で印刷装置102のデバイス種別をその他であると判断する。
なお、図7では、印刷設定画面拡張ユニット205は、印刷装置102のIPPのGet-Printer-Attributesオペレーションのレスポンスによって得られる情報に基づきデバイス種別を判断するが、それ以外の情報に基づき判断しても良い。例えば、印刷装置102から別の方法で取得した情報に基づき判断しても良い。また、印刷装置102から取得した印刷装置102の名称等の情報と、拡張アプリケーション204が有するテーブル情報に基づき判断しても良い。また、テーブル情報は、不図示のサーバから取得するように構成しても良い。
図6のフローの説明に戻る。S604で、印刷設定画面拡張ユニット205は、S604で、デバイス種別に応じた対応機能情報1401を取得する。図14は、S604で取得する対応機能情報1401の一例を示す図である。対応機能情報1401は、印刷設定画面拡張ユニット205が印刷設定画面に表示する対象となる機能と、表示順の情報がデバイス種別毎に記載されている。対応機能情報1401は、拡張アプリケーション204が予め保持していることが考えられるが、外部サーバに置かれたものを取得してもよい。
S605~S606の処理は、印刷設定画面拡張ユニット205が、S604で取得した対応機能情報に記載の機能それぞれについて繰り返し行う処理である。例えば、S603でデバイス種別がインクジェットデバイスと判断された場合、用紙の種類、用紙サイズ、印刷の向き、用紙トレイ、逆順印刷、ふちなし印刷、両面印刷について、S605~S606の処理を繰り返し実行する。S605で、印刷設定画面拡張ユニット205は、対応機能がPCに存在するかを確認する。PCは、IPP Class Driverが印刷装置102から能力情報を取得して生成したPDCに基づき生成される。つまり、PCに記載された機能がIPP Class Driverで設定可能な機能である。印刷設定画面拡張ユニット205は、対応機能情報1401で表示対象となる機能を確認し、PCで接続された印刷装置102が該機能に対応しているかを確認する。
S605で、Yesと判断した場合、印刷設定画面拡張ユニット205は、S606で印刷設定画面500に当該機能の設定を行うコントロールを追加する。S605で、Noと判断した場合、印刷設定画面拡張ユニット205は、印刷装置102は当該機能に対応していないと判断し、印刷設定画面500への当該機能を設定するコントロールの追加を行わない。対象となる機能の分だけS605~S606を繰り返すことで、印刷設定画面拡張ユニット205は、接続デバイスの能力とデバイス種別に応じた印刷設定画面500を表示する。
対応機能情報1401には存在しない機能はユーザに設定される必要がないか、拡張アプリケーション204を開発した時点では把握されていなかった機能である。ユーザに設定される必要がない機能については、印刷設定画面500に表示しないことで、設定画面をシンプルにすることができ、ユーザが重要な印刷設定に注目しやすくなる。そのため、PCに機能を示す情報が存在しても印刷設定画面500に表示しない。また、拡張アプリケーション204を開発した時点では把握されていなかった機能については、設定による影響が未知であるため、ユーザには設定させないよう、PCに機能を示す情報が存在しても印刷設定画面500に表示しない。
<通知ユニットの表示する画面例>
次に、通知ユニット209により表示される印刷設定画面について図9を用いて説明する。図9のステータス通知画面900は、印刷装置102から取得した情報に基づき、通知ユニット209が表示する画面の一例である。通知ユニット209は、印刷装置102がエラー状態になったことをトリガーとしてOSが表示したトースト通知を押下することにより、OSから呼び出される。
図9(a)のステータス通知画面900は、印刷装置102としてインクジェットデバイスが関連付けられた場合に通知ユニット209が表示する画面の一例である。表示領域901は、印刷装置102から取得したデバイス情報に対応したメッセージを表示する表示領域である。図9では、印刷装置102が用紙切れのエラー状態である場合のメッセージを表示領域901に表示している。コントロール902は、RemoteUI起動ボタンであり、押下することで関連付けられた印刷装置102が提供する印刷装置102としてのRemoteUI(リモートUI)を表示する。RemoteUIの表示は、ブラウザを起動して表示することが考えられるが、ステータス通知画面900内に表示してもよい。このような構成により、ユーザはRemoteUIを介して印刷装置102のデバイス情報や消耗品情報等を閲覧、管理することができる。
表示領域903~904では当該印刷ジョブに関する情報を表示する。OSは、印刷データ生成ソフトウェア202で処理中の印刷ジョブの処理において、印刷装置102でエラー等が発生した場合にトースト通知を表示する。ステータス通知画面900の起動するトリガーとなるトースト通知は特定の印刷ジョブと関連付けられている。通知ユニット209は、起動元のトーストと関連付けられた印刷ジョブの情報を表示や、印刷中止の指示を行う。
表示領域903は、当該印刷ジョブのドキュメント名を表示する。表示領域904は、当該印刷ジョブの状態を表示する。表示領域904に表示する印刷ジョブの状態としては、印刷装置102がエラー状態の場合に表示する「印刷停止中」や、エラーが解除されて印刷が再開された場合に表示する「印刷中」といった状態情報が挙げられる。コントロール905は印刷ジョブのキャンセルボタンであり、押下することで当該印刷ジョブをキャンセルして、印刷を中止する。表示領域906は、インク残量の表示を行う表示領域である。通知ユニット209は、印刷装置102からデバイス情報を取得し、デバイス情報に含まれるインク残量情報に基づきインク残量の表示をバー形式で行う。コントロール907は消耗品購入ボタンであり、押下することでインクなどの消耗品の購入サイトを表示する。消耗品の購入サイトの表示は、ブラウザを起動して表示することが考えられるが、ステータス通知画面900内に表示してもよい。表示領域908は、メンテナンスカートリッジの使用量を表示する領域である。通知ユニット209は、印刷装置102からデバイス情報を取得し、デバイス情報に含まれるメンテンナンスカートリッジ容量情報に基づきインク残量の表示を行う。
図9(b)のステータス通知画面900は、印刷装置102としてレーザービームデバイスが関連付けられた場合に通知ユニット209が表示する画面の一例である。尚、図9(b)は印刷データ生成ソフトウェア202としてUP Class Driverが利用されているものとして説明する。901、903、905は図9(a)と同じなので、説明を省略する。コントロール910は、更新ボタンであり、押下することで印刷装置102からデバイス情報やジョブ情報を再取得し、取得した情報に応じて表示を更新する。更新ボタンを出さない場合、通知ユニット209は、一定間隔で情報の再取得と表示の更新を行う。更新ボタンは、通信量がコストに直結するためにポーリングによる通信量を抑制したいクラウドプリントにおいて、手動で表示更新を行うために用いられる。
このように、通知ユニット209は印刷装置102から取得したデバイス情報に基づくステータス報知を行うだけでなく、デバイス種別や使用している印刷データ生成ソフトウェア202に応じた画面構成の変更を行うことで、接続された印刷装置102に適合したステータス通知をユーザに提供することができる。
<通知ユニットの表示処理>
図10は、本印刷システムにおける通知ユニット209によるステータス通知画面表示処理のうち主要な処理フローを示した図である。以降、通知ユニット209を、各処理の主体として説明することもあるが、実際には、対応するプログラムをCPU111が実行することで、対応する機能が実現されることになる。
拡張アプリケーション204が、トースト通知を介してOSからステータス通知画面の表示指示を受け取ることで、図10のフローは開始する。S1001で、通知ユニット209は、印刷装置からデバイス情報を取得する。デバイス情報は印刷装置102に対してIPPのGet-Printer-Attributesオペレーションを発行することにより取得するレスポンスに含まれる。S1002で、通知ユニット209は、S1001で取得した情報を用いて関連付けられている印刷装置102のデバイス種別を判別する。
S1002の処理は図7と同じであるため説明を省略するが、処理の主体は通知ユニット209となる。また、印刷設定画面拡張ユニット205で先だって判断が為されている場合、その情報を共有情報210に格納しておき、それを取得することで図7の処理をスキップすることも考えられる。S1003で、通知ユニット209は、ステータスメッセージ情報を取得する。ステータスメッセージ情報は、拡張アプリケーション204が予め保持していることが考えられるが、外部サーバに置かれたものを取得してもよい。図15はステータスメッセージ情報の一例を示す図である。ステータスメッセージ情報1501には、ステータスに対して関連付けられている印刷装置102がインクジェットデバイスだった場合と、レーザービームデバイスだった場合にそれぞれが表示するメッセージの情報が記載されている。例えば、印刷装置102から取得したステータス情報が印刷中を示す場合、通知ユニット209はデバイス種別に依らず同一のメッセージを表示する。
一方で、印刷装置102から取得したステータス情報が紙なしエラーを示す場合、デバイス種別によって異なるメッセージを表示する。例えば、インクジェットデバイスの場合、「用紙がありません。用紙をセットする必要があります。」と表示する。一方、レーザービームデバイスの場合、複数の給紙部を備える製品も多いため、「用紙がない給紙部があります。」のように表示する。また、ステータス情報がインクエンプティの場合はインクジェットのみが、トナーエンプティの場合はレーザービームデバイスのみが、当該ステータスに対応したメッセージを表示する。なお、インクエンプティ(インク切れ)、トナーエンプティ(トナー切れ)のみならず、インクロー、トナーローなど残量が少ないステータスのときにそれぞれメッセージを表示するようにしてもよい。このように、通知ユニット209が表示するメッセージは印刷装置102として接続されているデバイス種別によって異なる場合がある。S1004で、通知ユニット209は、S1002で判別したデバイス種別とS1003で取得したステータスメッセージ情報1501に基づき、適切なメッセージを表示する。なお、本実施形態では、通知ユニット209はデバイス種別によってメッセージを切り替えているが、他の情報によって切り替えてもよい。例えば、通知ユニット209は印刷装置102の接続種別を判断し、Local PrintかUniversal Printかによってメッセージを切り替えてもよい。
S1005で、通知ユニット209は関連付けられている印刷装置102の接続種別を判別する。図11は、通知ユニット209によるS1005の処理の詳細フローを示すフローチャートである。S1101で、通知ユニット209は、関連付けられた印刷装置102で使用されている印刷データ生成ソフトウェア202の情報を取得する。拡張アプリケーション204で拡張可能な印刷データ生成ソフトウェア202は、IPP Class DriverとUP Class Driverの2種類である。つまり、拡張アプリケーション204が関連付けられた印刷装置102は、IPP Class DriverとUP Class Driverのいずれかを使用している。そこで、S1102で、通知ユニット209は使用されているドライバがUP Class Driverかを確認する。S1102でYesと判断した場合、S1103で、通知ユニット209は印刷装置102の接続種別をUniversal Printと決定する。S1102でNoと判断した場合、S1103で、通知ユニット209は印刷装置102の接続種別をLocal Printと決定する。
図10のフローの説明に戻る。S1006で、通知ユニット209は、接続種別がLocal Printか否かを確認する。S1006でYesと判断した場合、S1007で、通知ユニット209は、ステータス通知画面900に印刷ジョブ情報を示す903、904、及び印刷ジョブのキャンセルボタン905を表示する。
S1008~S1009は接続種別がUniversal Printと判断された場合に実行する処理である。S1006でNoと判断した場合、S1008で、通知ユニット209は、ステータス通知画面900に印刷ジョブ情報を示す903、及び印刷ジョブのキャンセル指示を行うコントロール905を表示し、印刷ジョブのステータス情報を示す904は表示しない。Universal Printで表示領域904を表示しないのは、サーバを介して状態情報を取得した場合、印刷装置102の状態と正確に同期できないことが考えられるためである。次にS1009で、通知ユニット209は、ステータス通知画面900に表示更新指示を行うためのコントロール910を表示する。
本実施形態では、RemoteUI起動ボタン、インク残量表示、インク購入ボタン、メンテナンスカートリッジ使用量表示はインクジェットデバイスを利用している場合のみ表示することとしている。そこでS1010で、通知ユニットはS1002で判断した種別がインクジェットプリンタか否かを確認する。S1010でYesと判断された場合、S1011~S1022の処理を実行し、RemoteUI起動ボタン、インク残量、インク購入ボタン、メンテナンスカートリッジ使用量の表示を行う。
まず、S1011で、通知ユニット209は、S1001で取得したデバイス情報からプリンタ名の情報を取得する。次にS1012で、通知ユニットS1012は表示判断情報を取得する。図13は、表示判断情報1301の一例を示す図である。図13で例示する表示判断情報1301には、RemoteUIに対応しているか否かの情報と、タンクモデルか否かの情報と、サブスクリプション非対応モデルか否かの情報がプリンタ情報と関連付けられて記載されている。通知ユニット209は、表示判断情報1301と接続されている印刷装置102のプリンタ名に基づき、ステータス通知画面900に表示する内容を決定する。
図12は、通知ユニット209によるS1012の処理の詳細フローを示すフローチャートである。S1201で、通知ユニット209はサーバから表示判断情報1301の取得を行う。サーバから取得する構成をとることで、拡張アプリケーション204を更新リリースすることなく、通知ユニット209は最新の情報を取得できる。S1202で、通知ユニット209は、S1201で表示判断情報1301の取得が成功したかを確認する。
S1202でYesと判断された場合、通知ユニット209はS1201で取得した表示判断情報1301を図10のS1013以降の処理で使用する。また、S1203で通知ユニット209は表示判断情報1301を共有情報210に保存する。これにより、通知ユニット209は、次回以降の起動時にサーバから表示判断情報1301が取得できなかった場合でも、取得できた範囲での最新の情報を利用することができる。S1202でNoと判断された場合、S1204で通知ユニット209は共有情報210から表示判断情報1301を取得する。S1205で、通知ユニット209はS1204で表示判断情報1301の取得が成功したかを確認する。S1205でYesと判断された場合、通知ユニット209はS1204で取得した表示判断情報1301を図10のS1013以降の処理で使用する。1305でNoと判断された場合、通知ユニット209はS1206で拡張アプリケーション204が予め保持している表示判断情報1301を取得し、図10のS1013以降の処理に使用する。
図10のフローの説明に戻る。S1013~S1015は、RemoteUI起動ボタンであるコントロール902をステータス通知画面900に表示するための処理である。S1013で、通知ユニット209は、プリンタ名と表示判断情報1301から、接続されているプリンタがRemoteUI機能に対応しているか否かを確認する。S1013でYesと判断された場合、S1014で、通知ユニット209は、S1005で判別した情報に基づきがLocal Printであるか否かを確認する。Universal Printの場合、印刷装置102がサーバを介して接続されているため、RemoteUIを表示することができない。S1014でYesと判断された場合、S1015で、通知ユニット209は、ステータス通知画面900に、RemoteUI起動ボタンであるコントロール902を表示する。S1013、もしくはS1014でNoと判断された場合、ステータス通知画面900に、RemoteUI起動ボタンであるコントロール902を表示しない。
S1016~S1018は、インク残量表示の表示内容の切り替えを行うための処理である。S1016で、通知ユニット209は、プリンタ名と表示判断情報1301から、接続されているプリンタがタンクモデルか否かを確認する。タンクモデルは、ユーザが印刷装置102の備えるタンクにインクを注入して使用するため、実際のインク残量と印刷装置102が把握しているインク残量情報にズレが生じることがある。そのため、タンクモデルでは、印刷装置102から取得したインク残量情報に基づく残量表示を行わず、代わりにインク残量は目視で確認することを案内するメッセージを表示する。S1016でYesと判断された場合、S1017で、通知ユニット209はインク残量表示を行う表示領域906にインク残量を目視で確認するように案内するメッセージを表示する。S1016でNoと判断された場合、S1018で、通知ユニット209は、S1001で取得したデバイス情報に基づき、表示領域906にインク残量情報を表示する。このように、タンクモデルではなく、印刷装置102のキャリッジにインクカートリッジを装着するカートリッジタイプの場合には、インク残量表示を行うようにしている。なお、キャリッジタイプの印刷装置102としては、インクタンクと記録ヘッドとか一体となったディスポーザルタイプの記録ヘッドのデバイスでも、インクタンクと記録ヘッドとが別のパーマネントタイプの記録ヘッドの印刷装置でもよい。
S1019~S1020は、消耗品購入ボタン907をステータス通知画面900に表示するための処理である。S1019で、通知ユニット209は、プリンタ名と表示判断情報1301から、接続されている印刷装置102がサブスクリプション非対応モデルか否かを確認する。サブスクリプション対応機では契約に応じてプリンタベンダーからインクが供給されるため、ユーザは自身でインクを購入する必要がないため、消耗品購入ボタン907が不要となる。S1019でYesと判断された場合、S1020で、通知ユニット209はステータス通知画面900に消耗品購入ボタンであるコントロール907を表示する。S1019でNoと判断された場合、S1020で、通知ユニット209はステータス通知画面900に消耗品購入ボタンであるコントロール907を表示しない。なお、S1019においてサブスクリプション対応モデルと判断された場合であっても、更にサブスクリプションの所定の契約が締結されているかを判断し、締結されていない場合には消耗品購入ボタンであるコントロール907を表示するようにしてもよい。
S1021~S1022は、メンテナンスカートリッジ使用量の表示を行う表示領域908をステータス通知画面900に表示するための処理である。S1021で、通知ユニット209は、S1001で取得したデバイス情報にメンテナンスカートリッジの使用量情報が含まれるかを確認する。印刷装置102がメンテナンスカートリッジの交換に対応していない場合、デバイス情報にメンテナンスカートリッジの使用量情報が含まれないため、メンテナンスカートリッジの使用量の表示を行わない。S1021でYesと判断された場合、S1022で、通知ユニット209は、メンテナンスカートリッジ使用量の表示を行う表示領域908を表示する。S1021でNoと判断された場合、通知ユニット209は、表示領域908を表示しない。
S1010でNoと判断された場合、S1011~S1022の処理をスキップし、RemoteUI起動ボタン、インク残量表示、インク購入ボタンの表示は行わない。上記の処理により、接続された印刷装置102の種別や接続形態、個々のプリンタの能力に応じた適切なステータス通知画面900を構成することができる。
レーザービームデバイスは、共有状態で利用され、エラーは本体側で参照することが一般的であるため、ステータス通知画面900はエラー状態に気付ける程度の最小限の情報のみでよい。それに対して、インクジェットデバイスは本体に表示パネルを有していないケースもあり、印刷装置本体で通知できる情報に制限があるため、ホストコンピュータ101側での情報表示が重要である。
このように、本実施形態によって、1つの拡張アプリケーション204で、接続された印刷装置102に応じた適切なUI画面の表示が可能となる。より具体的には、本実施形態の拡張アプリケーション204は、印刷装置102の種類によって印刷設定画面やステータス通知画面を異ならせている。これによって、本実施形態では、印刷装置102の種類に応じた適切なUI画面の表示を行わせることが可能になる。
また、本実施形態では、印刷装置102の種類がインクジェットデバイスであるとき、タンクタイプ(第1のタイプ)であるか、キャリッジタイプ(第2のタイプ)であるか応じて、インク残量に関する表示方法を異ならせている。具体的には、タンクタイプである場合にはインク残量は表示せず、タンクタイプでない場合すなわちキャリッジタイプの場合にインク残量を表示している。ただし、本実施形態では、タンクタイプである場合に、インク残量の表示は行わないが、代わりにメッセージを表示するようにしている。またさらに、本実施形態では、所定のサービスとしてのサブスクリプションに対応した機種でない場合に、消耗品購入サイトに接続するためのアイテム(消耗品購入ボタン)を表示する。このように、本実施形態では、印刷装置102がインクジェットデバイス(インクジェット形式の印刷装置)であった場合に、そのインクジェット形式の印刷装置の種類に応じた適切なUI画面の表示を行わせることが可能になる。
また、本実施形態では、Universal PrintかLocal Printかによって、UI画面の表示を異ならせている。すなわち、IPP Class Driverを利用した印刷形態(第1の印刷形態)かUP Class Driverを利用した印刷形態(第2の印刷形態)かによって、Remote UIを起動するアイテム(RemoteUI起動ボタン)を表示するか非表示とするかを切り替えている。これによって、本実施形態では印刷形態に応じて適切なUI画面の表示を行わせることが可能になる。
なお、上述の説明では、第1の機種としてインクジェットデバイス、第2の機種としてレーザービームデバイスについて説明をしたが、本実施形態はこの組み合わせに限られるものではない。例えば、第2の機種としては、レーザービームデバイスに限らず、LEDプリンタデバイス等の電子写真系デバイスに広く適用できるものである。
(実施形態2)
本発明の目的は前述した実施例の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUまたはMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施例の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOperating System(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施例の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
(その他の実施形態)
本実施形態の開示は、以下の構成、方法およびプログラムを含む。
(構成1)
複数の異なる印刷装置に対して共通に利用可能な印刷データ生成ソフトウェアにより提供される機能の拡張を行うアプリケーションを備える情報処理装置であって、
前記情報処理装置に接続された印刷装置による印刷の形態に係る情報を取得する取得手段と、
前記取得手段が取得した情報に基づいて、異なる構成の画面を表示する表示手段と、
を有することを特徴とする情報処理装置。
(構成2)
前記表示手段は、前記印刷の形態が第1の印刷の形態である場合に所定の機能を起動するアイテムを表示し、前記印刷の形態が第2の印刷の形態である場合に前記所定の機能を起動するアイテムを表示しないことを特徴とする構成1に記載の情報処理装置。
(構成3)
前記所定の機能はリモートUIであることを特徴とする構成2に記載の情報処理装置。
(構成4)
前記第1の印刷の形態はLocal Printであり、前記第2の印刷の形態はUniversal Printであることを特徴とする構成2または3に記載の情報処理装置。
(構成5)
前記第1の印刷の形態はIPP Class Driverを用いた印刷であり、前記第2の印刷の形態はUP Class Driverを用いた印刷であることを特徴とする構成4に記載の情報処理装置。
(方法1)
複数の異なる印刷装置に対して共通に利用可能な印刷データ生成ソフトウェアにより提供される機能の拡張を行うアプリケーションを備える情報処理装置における情報処理方法であって、
前記情報処理装置に接続された印刷装置による印刷の形態に係る情報を取得する取得ステップと、
前記取得ステップで取得した情報に基づいて、異なる構成の画面を表示する表示ステップと、
を有することを特徴とする情報処理方法。
(方法2)
前記表示ステップでは、前記印刷の形態が第1の印刷の形態である場合に所定の機能を起動するアイテムを表示し、前記印刷の形態が第2の印刷の形態である場合に前記所定の機能を起動するアイテムを表示しないことを特徴とする方法1に記載の情報処理方法。
(方法3)
前記所定の機能はリモートUIであることを特徴とする方法2に記載の情報処理方法。
(方法4)
前記第1の印刷の形態はLocal Printであり、前記第2の印刷の形態はUniversal Printであることを特徴とする方法2または3に記載の情報処理方法。
(方法5)
前記第1の印刷の形態はIPP Class Driverを用いた印刷であり、前記第2の印刷の形態はUP Class Driverを用いた印刷であることを特徴とする方法4に記載の情報処理方法。
(プログラム1)
コンピュータを、請求項1から5のいずれか1項に記載の情報処理装置の各手段として機能させるためのコンピュータプログラム。
101 ホストコンピュータ
102 印刷装置
202 印刷データ生成ソフトウェア
204 拡張アプリケーション
205 印刷設定画面拡張ユニット
209 通知ユニット

Claims (11)

  1. 複数の異なる印刷装置に対して共通に利用可能な印刷データ生成ソフトウェアにより提供される機能の拡張を行うアプリケーションを備える情報処理装置であって、
    前記情報処理装置に接続された印刷装置による印刷の形態に係る情報を取得する取得手段と、
    前記取得手段が取得した情報に基づいて、異なる構成の画面を表示する表示手段と、
    を有することを特徴とする情報処理装置。
  2. 前記表示手段は、前記印刷の形態が第1の印刷の形態である場合に所定の機能を起動するアイテムを表示し、前記印刷の形態が第2の印刷の形態である場合に前記所定の機能を起動するアイテムを表示しないことを特徴とする請求項1に記載の情報処理装置。
  3. 前記所定の機能はリモートUIであることを特徴とする請求項2に記載の情報処理装置。
  4. 前記第1の印刷の形態はLocal Printであり、前記第2の印刷の形態はUniversal Printであることを特徴とする請求項2に記載の情報処理装置。
  5. 前記第1の印刷の形態はIPP Class Driverを用いた印刷であり、前記第2の印刷の形態はUP Class Driverを用いた印刷であることを特徴とする請求項4に記載の情報処理装置。
  6. 複数の異なる印刷装置に対して共通に利用可能な印刷データ生成ソフトウェアにより提供される機能の拡張を行うアプリケーションを備える情報処理装置における情報処理方法であって、
    前記情報処理装置に接続された印刷装置による印刷の形態に係る情報を取得する取得ステップと、
    前記取得ステップで取得した情報に基づいて、異なる構成の画面を表示する表示ステップと、
    を有することを特徴とする情報処理方法。
  7. 前記表示ステップでは、前記印刷の形態が第1の印刷の形態である場合に所定の機能を起動するアイテムを表示し、前記印刷の形態が第2の印刷の形態である場合に前記所定の機能を起動するアイテムを表示しないことを特徴とする請求項6に記載の情報処理方法。
  8. 前記所定の機能はリモートUIであることを特徴とする請求項7に記載の情報処理方法。
  9. 前記第1の印刷の形態はLocal Printであり、前記第2の印刷の形態はUniversal Printであることを特徴とする請求項7に記載の情報処理方法。
  10. 前記第1の印刷の形態はIPP Class Driverを用いた印刷であり、前記第2の印刷の形態はUP Class Driverを用いた印刷であることを特徴とする請求項9に記載の情報処理方法。
  11. コンピュータを、請求項1から5のいずれか1項に記載の情報処理装置の各手段として機能させるためのコンピュータプログラム。
JP2022121181A 2022-07-29 2022-07-29 情報処理装置、情報処理方法およびプログラム Active JP7547418B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2022121181A JP7547418B2 (ja) 2022-07-29 2022-07-29 情報処理装置、情報処理方法およびプログラム
US18/358,821 US20240036783A1 (en) 2022-07-29 2023-07-25 Information processing apparatus, information processing method, and storage medium
CN202310939839.0A CN117472298A (zh) 2022-07-29 2023-07-28 信息处理装置、信息处理方法和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022121181A JP7547418B2 (ja) 2022-07-29 2022-07-29 情報処理装置、情報処理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2024018088A true JP2024018088A (ja) 2024-02-08
JP7547418B2 JP7547418B2 (ja) 2024-09-09

Family

ID=89631897

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022121181A Active JP7547418B2 (ja) 2022-07-29 2022-07-29 情報処理装置、情報処理方法およびプログラム

Country Status (3)

Country Link
US (1) US20240036783A1 (ja)
JP (1) JP7547418B2 (ja)
CN (1) CN117472298A (ja)

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7444394B2 (en) * 1997-02-03 2008-10-28 Canon Kabushiki Kaisha Network data base control device and method thereof
US6259532B1 (en) * 1998-04-08 2001-07-10 Intel Corporation Method and apparatus for communicating with a plurality of peripheral devices through a single parallel port
JP2005275730A (ja) * 2004-03-24 2005-10-06 Seiko Epson Corp ネットワークデバイスシステム及び当該システムに用いられるハードウェア書換プログラム、ハードウェア書き換え方法、並びにホストコンピュータ、ネットワークデバイス
JP5182165B2 (ja) * 2009-03-12 2013-04-10 株式会社リコー 情報処理装置,情報処理方法,プログラム,および記録媒体
JP2010231266A (ja) * 2009-03-25 2010-10-14 Obic Co Ltd 印刷設定管理装置、印刷設定管理方法および印刷設定管理プログラム
WO2011048670A1 (ja) * 2009-10-20 2011-04-28 キヤノン株式会社 周辺装置と通信する情報処理装置、方法、制御プログラム
US8773674B2 (en) * 2010-09-17 2014-07-08 Xerox Corporation Method and apparatus to provide enhanced printing for newly launched devices in a universal printer driver
JP5454441B2 (ja) * 2010-09-29 2014-03-26 ブラザー工業株式会社 ユニバーサルデバイスドライバ、及び、デバイス制御方法
JP6821301B2 (ja) * 2015-12-07 2021-01-27 キヤノン株式会社 画像形成装置、画像形成装置の制御方法、及びプログラム
JP6590754B2 (ja) 2016-04-28 2019-10-16 キヤノン株式会社 通信装置、制御方法およびプログラム
GB2562106B (en) * 2017-05-05 2020-01-22 Canon Europa Nv Resilient print job submission
JP6983614B2 (ja) 2017-10-16 2021-12-17 キヤノン株式会社 プログラム
JP7095268B2 (ja) * 2017-11-30 2022-07-05 ブラザー工業株式会社 プログラム
JP7094762B2 (ja) * 2018-04-16 2022-07-04 キヤノン株式会社 プログラム、情報処理装置、および制御方法
JP2020015265A (ja) 2018-07-26 2020-01-30 キヤノン株式会社 画像形成装置及びその制御方法、並びにプログラム
JP7328049B2 (ja) * 2019-07-26 2023-08-16 キヤノン株式会社 情報処理装置、制御方法、プログラム
JP7471806B2 (ja) * 2019-11-29 2024-04-22 キヤノン株式会社 情報処理装置およびプログラム
JP7443056B2 (ja) * 2019-12-27 2024-03-05 キヤノン株式会社 情報処理装置、制御方法およびプログラム
JP7446815B2 (ja) 2019-12-27 2024-03-11 キヤノン株式会社 プログラム及び制御方法
JP2022089133A (ja) 2020-12-03 2022-06-15 キヤノン株式会社 情報処理装置、ならびに、印刷設定アプリケーション

Also Published As

Publication number Publication date
US20240036783A1 (en) 2024-02-01
JP7547418B2 (ja) 2024-09-09
CN117472298A (zh) 2024-01-30

Similar Documents

Publication Publication Date Title
JP7446815B2 (ja) プログラム及び制御方法
JP7528176B2 (ja) 情報処理装置及びプログラム
JP4756998B2 (ja) 印刷装置、制御方法およびプログラム
JP5100195B2 (ja) 情報処理装置及びジョブ管理方法
JP2007328639A (ja) 印刷システム、サーバ装置、クライアント装置及び印刷設定方法
JP7443056B2 (ja) 情報処理装置、制御方法およびプログラム
CN115809030A (zh) 信息处理设备、信息处理设备的控制方法和存储介质
JP7571091B2 (ja) 情報処理装置、情報処理方法およびアプリケーションプログラム
JP7547418B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP4442875B2 (ja) データ処理装置及び該装置における印刷制御方法、プログラム
JP2024018086A (ja) 情報処理装置、情報処理方法およびプログラム
KR20230032927A (ko) 정보 처리 장치, 정보 처리 장치의 제어 방법, 및 저장 매체
JP2007233781A (ja) 画像出力装置および画像出力プログラム
JP7542034B2 (ja) 情報処理装置、方法およびアプリケーションプログラム
JP2024016351A (ja) 情報処理装置、プログラム
EP4354273A1 (en) Information processing apparatus, control method, and storage medium
EP4312115A1 (en) Information processing apparatus, program, and computer-readable storage medium
JP2024016352A (ja) 情報処理装置、プログラム
JP2024159147A (ja) 拡張アプリケーションプログラム、情報処理装置及び記憶媒体
JP2023116259A (ja) プログラム、情報処理装置および制御方法
JP2024150862A (ja) 情報処理装置、制御方法並びにアプリケーション

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230602

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20231213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240628

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: 20240730

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240828

R150 Certificate of patent or registration of utility model

Ref document number: 7547418

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150