IP Force 特許公報掲載プロジェクト 2026.8.2 β版

知財求人 - 知財ポータルサイト「IP Force」

2026-127309アプリケーションプログラム、情報処理装置及びその制御方法
<>
  • -アプリケーションプログラム、情報処理装置及びその制御方法 図1
  • -アプリケーションプログラム、情報処理装置及びその制御方法 図2
  • -アプリケーションプログラム、情報処理装置及びその制御方法 図3
  • -アプリケーションプログラム、情報処理装置及びその制御方法 図4
  • -アプリケーションプログラム、情報処理装置及びその制御方法 図5
  • -アプリケーションプログラム、情報処理装置及びその制御方法 図6
  • -アプリケーションプログラム、情報処理装置及びその制御方法 図7
  • -アプリケーションプログラム、情報処理装置及びその制御方法 図8
  • -アプリケーションプログラム、情報処理装置及びその制御方法 図9
  • -アプリケーションプログラム、情報処理装置及びその制御方法 図10
  • -アプリケーションプログラム、情報処理装置及びその制御方法 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】
(43)【公開日】
(54)【発明の名称】アプリケーションプログラム、情報処理装置及びその制御方法
(51)【国際特許分類】
   
   
【FI】
【審査請求】有
【請求項の数】14
【出願形態】
(21)【出願番号】
(22)【出願日】
(11)【特許番号】
(45)【特許公報発行日】
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【弁理士】
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【弁理士】
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【弁理士】
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【弁理士】
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【弁理士】
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】松井 賢太
【テーマコード(参考)】
【Fターム(参考)】
2C061AP01
2C061AP07
2C061AQ05
2C061AQ06
2C061AR01
2C061AR03
2C061AS02
2C061HJ08
2C061HN05
2C061HN15
2C061HP00
2C061HP06
2C061HP08
2C061HQ01
2C061HQ17
(57)【要約】
【課題】 IPPには定義がない多数の印刷機能を効率的に利用可能とすることを目的とする。
【解決手段】 情報処理装置と印刷装置が通信可能に接続された印刷システムであって、前記情報処理装置は、所定の属性情報を指定して、前記印刷装置で利用可能な機能を示す能力情報を要求する要求手段と、前記能力情報に対応する設定項目を表示する表示手段と、を有し、前記印刷装置は、前記能力情報の要求を受信する受信手段と、前記受信手段により前記所定の属性情報を指定した要求を受信したとき、異なる複数の印刷属性と、当該複数の印刷属性それぞれの属性値と、を含む情報を応答する応答手段と、を有することを特徴とする印刷システム。
【選択図】 図5
【特許請求の範囲】
【請求項
情報処理装置と印刷装置が通信可能に接続された印刷システムであって、
前記情報処理装置は、
所定の属性情報を指定して、前記印刷装置で利用可能な機能を示す能力情報を要求する要求手段と、
前記能力情報に対応する設定項目を表示する表示手段と、を有し、
前記印刷装置は、
前記能力情報の要求を受信する受信手段と、
前記受信手段により前記所定の属性情報を指定した要求を受信したとき、異なる複数の印刷属性と、当該複数の印刷属性それぞれの属性値と、を含む情報を応答する応答手段と、を有する
ことを特徴とする印刷システム。
【請求項
前記情報処理装置は、
異なる複数のメーカーの印刷装置が解釈できる印刷データを生成することができる印刷ソフトウェアであり、かつ、当該印刷データを前記異なる複数のメーカーの印刷装置のいずれにでも送信できる前記印刷ソフトウェアと、
前記印刷ソフトウェアをサポートするアプリケーションプログラムと、を有し、
前記アプリケーションプログラムを実行することにより前記要求手段及び前記表示手段を実現することを特徴とする、請求項1に記載の印刷システム。
【請求項
前記表示手段は、前記複数の印刷属性それぞれに対応する複数の設定項目を表示し、
ユーザにより選択された前記複数の設定項目の設定値は、予め決められたグループに分類して前記情報処理装置から前記印刷装置へ送信されることを特徴とする、請求項1に記載の印刷システム。
【請求項
情報処理装置から、能力情報の要求であって、所定の属性情報を指定した前記要求を受信する受信手段と、
前記受信手段により前記所定の属性情報を指定した要求を受信したとき、異なる複数の印刷属性と、当該複数の印刷属性それぞれの属性値と、を含む情報を応答する応答手段と、
を有することを特徴とする印刷装置。
【請求項
前記複数の印刷属性は、スムージング、パンチ、色調整、明るさ、コントラスト、印字開始位置、ガンマ補正、白紙節約、バーコードモード、の少なくともいずれかの機能に関する印刷属性を含むことを特徴とする、請求項4に記載の印刷装置。
【請求項
異なる複数のメーカーの印刷装置が解釈できる印刷データを生成することができる印刷ソフトウェアであり、かつ、当該印刷データを前記異なる複数のメーカーの印刷装置のいずれにでも送信できる前記印刷ソフトウェアと、前記印刷ソフトウェアをサポートするアプリケーションプログラムと、を有する情報処理装置の制御方法であって、
所定の属性情報を指定して、印刷データの印刷先として選択された印刷装置で利用可能な機能を示す能力情報を要求する要求工程と、
前記所定の属性情報を指定した要求に応答して、異なる複数の印刷属性と、当該複数の印刷属性それぞれの属性値と、を含む情報を受信する受信工程と、
前記複数の印刷属性それぞれに対応する複数の設定項目を表示する表示工程と、
を有することを特徴とする制御方法。
【請求項
ユーザにより選択された前記複数の設定項目の設定値を、予め決められたグループに分類して、印刷データの印刷先として選択された前記印刷装置へ送信することを特徴とする、請求項6に記載の制御方法。
【請求項
前記グループは、JOBグループ、BINDグループ、DOCグループであることを特徴とする、請求項6に記載の制御方法。
【請求項
前記複数の印刷属性は、スムージング、パンチ、色調整、明るさ、コントラスト、印字開始位置、ガンマ補正、白紙節約、バーコードモード、の少なくともいずれかの機能に関する印刷属性を含むことを特徴とする、請求項6に記載の制御方法。
【請求項
前記要求工程、前記受信工程、前記表示工程は、前記アプリケーションプログラムを実行することにより行われることを特徴とする、請求項6に記載の制御方法。
【請求項
前記印刷ソフトウェアは、前記複数の設定項目を表示できないことを特徴とする、請求項6に記載の制御方法。
【請求項
異なる複数のメーカーの印刷装置が解釈できる印刷データを生成することができる印刷ソフトウェアであり、かつ、当該印刷データを前記異なる複数のメーカーの印刷装置のいずれにでも送信できる前記印刷ソフトウェアをサポートするアプリケーションプログラムであって、情報処理装置に、
所定の属性情報を指定して、印刷データの印刷先として選択された印刷装置で利用可能な機能を示す能力情報を要求する要求工程と、
前記所定の属性情報を指定した要求に応答して、異なる複数の印刷属性と、当該複数の印刷属性それぞれの属性値と、を含む情報を受信する受信工程と、
前記複数の印刷属性それぞれに対応する複数の設定項目を表示する表示工程と、
を実行させることを特徴とするアプリケーションプログラム。
【請求項
ユーザにより選択された前記複数の設定項目の設定値を、予め決められたグループに分類して、印刷データの印刷先として選択された前記印刷装置へ送信させることを特徴とする、請求項12に記載のアプリケーションプログラム。
【請求項
前記グループは、JOBグループ、BINDグループ、DOCグループであることを特徴とする、請求項12に記載のアプリケーションプログラム。
【請求項
前記複数の印刷属性は、スムージング、パンチ、色調整、明るさ、コントラスト、印字開始位置、ガンマ補正、白紙節約、バーコードモード、の少なくともいずれかの機能に関する印刷属性を含むことを特徴とする、請求項12に記載のアプリケーションプログラム。
【請求項
前記印刷ソフトウェアは、前記複数の設定項目を表示できないことを特徴とする、請求項12に記載のアプリケーションプログラム。
【発明の詳細な説明】
【技術分野】
本発明はアプリケーションプログラム、情報処理装置及びその制御方法に関し、特に印刷装置と通信して印刷データを生成する、アプリケーションプログラム、情報処理装置及びその制御方法に関する。
【背景技術】
業界標準のプロトコル、例えばIPP(Internet Printing Protocol)を用いた、印刷装置と直接通信する汎用プリンタドライバ(ローカルプリンタドライバ)が広く利用されている。ローカルプリンタドライバはクライアント端末のOS(オペレーティングシステム)の提供者により提供され、複数のプリンタベンダー(プリンタメーカー)のプリンタが解釈できる印刷データを生成するプリンタドライバである。
ユーザは、情報処理装置にプリンタベンダー固有のプリンタドライバをインストールせずとも、ローカルプリンタドライバを利用することで、印刷装置に印刷データを送信することができる。
さらに、クラウドプリントサービスを利用した印刷がある。クラウドプリントサービスでは、情報処理装置にクラウドプリントサービス用のプリンタドライバ(クラウドプリンタドライバ)をインストールする。
クラウドプリンタドライバもクライアント端末のOSの提供者により提供されるドライバであり、複数のプリンタベンダーのプリンタが解釈できる印刷データを生成する、IPPを用いたプリンタドライバである。クラウドプリントサービスでは、情報処理装置がクラウドプリンタドライバを使って印刷データをクラウドプリントサービスに送信し、クラウドプリントサービスが印刷装置に印刷データを送信することで印刷が実行される。
クラウドプリントサービスを利用した印刷に関して、情報処理装置で扱うPDF(Portable Document Format)、Microsoft Word等のアプリケーションデータの印刷データを生成して、印刷装置に送信する技術がある。
例えば特許文献1には、IPPには定義がない印刷装置の印刷機能を利用できるようにするための技術についての言及がある。しかし、IPPには定義がない印刷装置の印刷機能は数多くあり、それら多くの機能を利用するために、機能ひとつひとつに対して、属性を定義して対応するのは効率的ではない。
【先行技術文献】
【特許文献】
【特許文献】特開2021-33526号公報
【発明の概要】
【発明が解決しようとする課題】
本発明は、IPPには定義がない多数の印刷機能を効率的に利用可能とすることを目的とする。
【課題を解決するための手段】
本発明の印刷システムは、情報処理装置と印刷装置が通信可能に接続された印刷システムであって、前記情報処理装置は、所定の属性情報を指定して、前記印刷装置で利用可能な機能を示す能力情報を要求する要求手段と、前記能力情報に対応する設定項目を表示する表示手段と、を有し、前記印刷装置は、前記能力情報の要求を受信する受信手段と、前記受信手段により前記所定の属性情報を指定した要求を受信したとき、異なる複数の印刷属性と、当該複数の印刷属性それぞれの属性値と、を含む情報を応答する応答手段と、を有することを特徴とする。
【発明の効果】
本発明によれば、IPPには定義がない多数の印刷機能を効率的に利用することが可能になる。
【図面の簡単な説明】
【図】本発明の実施形態に係る情報処理装置としてのクライアント端末を含む印刷システムの概要構成の一例を示す図。
【図】印刷システムの各モジュールのハードウェア構成の一例を示す図。
【図】クライアント端末での印刷キューの選択により開始する印刷システムの各モジュールの間で実行される処理のシーケンス図。
【図】本実施例のクライアント端末が能力情報を要求する際の処理を示すフローチャート。
【図】本実施例のプリンタが能力情報を応答する際の処理を示すフローチャート。
【図】本実施例のクライアント端末が印刷データを送信する際の処理を示すフローチャート。
【図】本実施例のプリンタが印刷データを受信する際の処理を示すフローチャート。
【図】本実施例のクライアント端末とプリンタが持つ各種印刷属性のテーブルを示す図。
【図】本実施例のクライアント端末の印刷設定画面の例を示す図。
【図】本実施例におけるIPP拡張属性の属性値の例を示す図。
【図】本実施例のクライアント端末とプリンタが利用するIPPコマンドの例を示す図。
【発明を実施するための形態】
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
以下、本発明の実施形態について図面を用いて説明する。
図1は、本発明の実施形態に係る情報処理装置としてのクライアント端末を含む印刷システムの概要構成の一例を示す図である。
印刷システム1では、クライアント端末101、クラウドプリントサーバ102、アプリケーション管理サーバ103、及びクラウドプリント対応プリンタ104(以下、プリンタ104と記載する)が、ネットワーク105を介して通信可能に接続されている。
図1では、クライアント端末101およびプリンタ104をそれぞれ1つずつ記載しているが、クライアント端末101およびプリンタ104は夫々複数台あってもよい。
また、クラウドプリントサーバ102は複数台の情報処理装置で構成されるサーバシステムであってもよい。これにより、負荷分散を複数台の情報処理装置に分散することができる。また、クラウドプリントサーバ102は、物理的には1つの情報処理装置の内部に仮想的に構成されてもよい。
ネットワーク105は、インターネットなどのWANを想定しているが、すべてが社内LANなどの閉じた環境であってもよい。
クライアント端末101は、PCやタブレット、スマートフォンなどの情報処理装置であり、ユーザによって直接操作される端末である。クライアント端末101上では任意のアプリケーションソフトウェアを実行可能となっている。
ローカルプリンタドライバ113とクラウドプリンタドライバ111はクライアント端末101のOS(Operating System)114の提供者により提供されるプリンタドライバである。ドライバ113、111は、異なる複数のプリンタベンダーのプリンタが解釈できる印刷データを生成し、当該印刷データを複数のプリンタベンダーのプリンタのいずれにでも送信できる、IPPに準拠したクラスドライバである。ローカルプリンタドライバ113とクラウドプリンタドライバ111はそれぞれ、OS114とともに提供され、OS114の印刷に関する機能と捉えることもできる。
ローカルプリンタドライバ113は、プリンタ104とクライアント端末101を、サーバを経由せずに接続するときに用いられるプリンタドライバである。ローカルプリンタドライバ113の一例としては、Windows(登録商標)のIPP Class Driverが挙げられる。
クラウドプリンタドライバ111は、OSベンダーが提供するクラウドプリントサーバ102内のクラウドプリントサービス121を利用する際に用いられるプリンタドライバである。クラウドプリンタドライバ111の一例としては、Windows(登録商標)のUP(Universal Print) Class Driverが挙げられる。
クラウドプリントを利用したい場合、あらかじめクラウドプリントサービス121にプリンタ104の情報を登録しておく。クライアント端末101が、クラウドプリンタドライバ111が生成した印刷データの出力先としてプリンタ104を指定し、当該印刷データをクラウドプリントサービス121に送信する。クラウドプリントサービス121が、クライアント端末101から指定されたプリンタ104に印刷データを送信することで、印刷が実行される。
なお、ローカルプリンタドライバ113とクラウドプリンタドライバ111は、クライアント端末101が出荷されるときにはすでに、クライアント端末101の記憶部214に記憶されている。
印刷スプーラ116は、OS114により提供される印刷に関する機能であって、ローカルプリンタドライバ113、クラウドプリンタドライバ111から受け取った中間データや印刷データを一時記憶領域に記憶する機能を有する。一時記憶領域に記憶された印刷データは、印刷設定拡張アプリ112によって呼び出されたり、クラウドプリントサーバ102やプリンタ104へ送信されたりする。
本明細書において、クラウドプリンタドライバ111、ローカルプリンタドライバ113、印刷スプーラ116といったOS114により提供される印刷に関する機能をまとめて「印刷ソフトウェア」と表現することもある。また、印刷ソフトウェアの動作の主語をOS114として表現することもある。
印刷設定拡張アプリ112(アプリケーションプログラム)は、上述の複数のプリンタベンダー(メーカー、製造者)の一つであって、印刷に利用されるプリンタを提供するベンダーにより提供される印刷設定アプリケーションである。
印刷設定拡張アプリ112は、ローカルプリンタドライバ113やクラウドプリンタドライバ111と協働し、ローカルプリンタドライバ113やクラウドプリンタドライバ111をサポートするアプリである。印刷設定拡張アプリ112は、Windows(登録商標)においてはPSA(Print Support Application)と呼ばれる。
本実施形態では、印刷設定拡張アプリ112は、クライアント端末101の出荷時には記憶部214に記憶されているが、これに限定されない。印刷設定拡張アプリ112が出荷時には記憶部214に記憶されていない場合、クライアント端末101に対する所定のユーザ操作により、ネットワーク105を介してアプリケーション管理サーバ(103)からダウンロードされる。印刷設定拡張アプリ112は、OS114の印刷スプーラ116を介して、ローカルプリンタドライバ113やクラウドプリンタドライバ111の印刷設定に関する機能を拡張する。
プリンタ104は、用紙等の記録媒体に対して実際に印刷を行う印刷装置である。デバイス能力応答処理部104aは、プリンタ104のデバイス能力情報を管理し、クライアント端末の要求に応じて、その能力情報を通知する。印刷処理部104bは、ネットワーク105を介して又は直接、クライアント端末101から受信した印刷データを画像データに変換して印刷する。
印刷設定UI部112aは、印刷設定拡張アプリ112において、プリンタベンダーが拡張した印刷用設定UI112dをユーザに提供する。
具体的には、印刷設定UI部112aは、OS114および印刷設定拡張アプリ112がクラウドプリントサービス121から取得した能力情報を基に印刷用設定UI112dを生成し表示する。印刷用設定UI112dの一例である印刷機能用設定画面については図5を用いて後述する。
デバイス能力収集処理部112bは、OS114を動作させてプリンタ104の能力情報の収集や収集した能力情報に基づき、OS114が管理するデバイス能力情報の更新を行うモジュールである。
ドキュメント生成アプリ115は、文書ファイル生成アプリや表計算アプリ、プレゼンテーションアプリ、ウェブブラウザ等の一般的なアプリケーションである。これらのアプリケーションはOS114にプリインストールされていてもよいし、ユーザがダウンロードし、インストールするとしてもよい。
クラウドプリントサーバ102は、OSベンダーが提供するクラウドプリントサービス121を提供するためのサーバ装置である。本実施形態においてクラウドプリントサーバ102は、クライアント端末101から印刷指示と印刷データを受け付ける。そしてクラウドプリントサーバ102は受信した印刷データを、プリンタ104へ送信することで、サービスをユーザに提供する。
次に、図2を用いて、印刷システム1の各モジュールのハードウェア構成について説明する。
図2(a)は、クライアント端末101のハードウェア構成を示すブロック図である。
クライアント端末101は、表示部216、操作部217、記憶部214、制御部211、ネットワーク通信部215を備える。
記憶部214は、ハードディスクやSSDなどの不揮発性の記憶装置を指し、デジタルデータの記憶と書き換えが可能である。
制御部211は、CPU212とメモリ213とから構成され、クライアント端末101の全体の動作を制御する。CPU212は、記憶部214に記憶されたコンピュータプログラムをメモリ213に展開し、それを実行する。メモリ213は、CPU212の主記憶メモリでありワークエリアや各種プログラムを展開するための一時記憶領域として用いられる。
ネットワーク通信部215は、外部のネットワーク105と通信を行う装置であり、ネットワーク105を介して外部のサーバやクライアント端末等とのデジタルデータの入出力を行う。
表示部216は、液晶ディスプレイなどユーザに対して視覚的な情報をリアルタイムに表示するための装置である。操作部217は、キーボードやマウスなどによりユーザからの入力を受け付けるための装置である。タッチパネルなど、表示部216と操作部217の両方の機能を備え持つ装置を用いてもよい。
図2(b)は、クラウドプリントサーバ102のハードウェア構成を示すブロック図である。クラウドプリントサーバ102は記憶部224、制御部221、ネットワーク通信部225を備える。また、制御部221は、CPU222とメモリ223とから構成される。
記憶部224、制御部221、ネットワーク通信部225、CPU222、及びメモリ223はクライアント端末101が備える同一名称を有する装置と同等の機能を有するであるため説明を割愛する。
なお、本実施形態では、クラウドプリントサーバ102が図2(b)に示すハードウェア構成を有する1台の情報処理装置で構成されるが、クラウドプリントサーバ102は図2(b)で示される複数の情報処理装置により構成されてもよい。
図2(c)は、アプリケーション管理サーバ103のハードウェア構成を示すブロック図である。アプリケーション管理サーバ103は表示部236、操作部237、記憶部234、制御部231、ネットワーク通信部235を備える。また、制御部231は、CPU232とメモリ233とから構成される。
表示部236、操作部237、記憶部234、制御部231、ネットワーク通信部235、CPU232、及びメモリ233はクライアント端末101が備える同一名称を有する装置と同等の機能を有するため割愛する。
なお、本実施形態では、アプリケーション管理サーバ103は図2(c)に示すハードウェア構成を有する1台の情報処理装置で構成されるものとして説明するが、アプリケーション管理サーバ103が複数の情報処理装置により構成されるとしてもよい。
図2(d)は、プリンタ104のハードウェア構成を示すブロック図である。プリンタ104は、表示部246、操作部247、記憶部244、制御部241、ネットワーク通信部245、印刷部248を備える。また、制御部241は、CPU242とメモリ243とから構成される。
表示部246は、プリンタ104に備え付けのタッチパネルやLEDなど、ユーザに対して情報をリアルタイムに表示するための装置である。
操作部247は、ユーザからの入力を受け付けるための装置であり、タッチパネルに加えてテンキーなどのハードキーを含むこともある。記憶部244、制御部241、CPU242、及びメモリ243はクライアント端末101が備える同一名称を有する装置と同等の機能を有するため説明を割愛する。
ネットワーク通信部245は、外部のネットワーク105と通信を行う装置であり、主に印刷データの受信を行ったり、エラーなどのプリンタ104の状態について外部のサーバ等に向けて送信したりする役割を持つ。
印刷部248は、カセットやトレイに用意された用紙に対して、給紙、印字、排紙の一連の動作を行うことで印刷処理を行う装置である。印字の方式は電子写真方式やインクジェット方式など特に限定されない。排紙時に使用される両面ユニットやステイプル、パンチ処理などのフィニッシング装置も印刷部248に含まれる。
なお、本実施形態では、プリンタ104の例として印刷機能のみを行うシングルファンクションプリンタについて説明しているが、スキャナ機能やFAX機能も合わせて持つマルチファンクションプリンタ(複合機)を用いてもよい。
次に図3を用いて、本実施形態における、クライアント端末101での印刷キューのユーザ選択により開始する印刷システム1の各モジュール間で実行される処理のシーケンスの一例を説明する。
なお、図3は、プリンタ104の情報をクラウドプリントサービス121に登録し、印刷キューの生成が完了した後に実行される処理である。ここでは、クラウドプリンタドライバ111が生成した印刷データを、クラウドプリントサービス121経由でプリンタ104に送信するための印刷キューが予め生成されているものとする。なお、クラウドプリンタドライバ111をローカルプリンタドライバ113に読み替え、クラウドプリントサービス121を介さずプリンタ104と直接通信するようにしてもよい。
OS114の印刷スプーラ116は、ドキュメント生成アプリ115が提供する印刷設定用UIを介して、ユーザによる印刷キューの選択を受け付ける(ステップS301)。具体的にはユーザは、まず、クライアント端末101においてドキュメント生成アプリ115を起動し、ドキュメント生成アプリ115で印刷対象の原稿を開き、メニューから「印刷」を選択する。この選択を受けてドキュメント生成アプリ115がアプリ印刷設定UIを表示部216に表示する。
アプリ印刷設定UIでは、クライアント端末101から送信される印刷データの印刷が可能なプリンタのプリンタ名が表示される。ユーザがアプリ印刷設定UI上で印刷対象の原稿の印刷先とするプリンタのプリンタ名を選択すると、印刷スプーラ116は、その選択されたプリンタ名に対応する印刷キューがユーザに選択されたと判断する。なお、ドキュメント生成アプリ115が提供するアプリ印刷設定UIとは異なるOS114が提供するOS印刷設定UIで印刷キューが選択されてもよい。
本実施形態では、アプリ印刷設定UI上で、クラウドプリントサービス121経由での印刷データを印刷するクラウドプリンタとしてのプリンタ104のプリンタ名がステップS301でユーザ選択された場合について説明する。
印刷キューが選択されると、印刷スプーラ116はPrint Ticketを読み出す。Print Ticketとは、現在の印刷設定をXML形式で記述された印刷設定情報を示すファイルであり、印刷キュー毎に管理される。Print Ticketには、OS114が解釈可能な形式で印刷設定が記述されている。印刷設定は、設定項目と設定値の組で記述されている。
次に、印刷スプーラ116は、クラウドプリントサービス121に、ステップS301で受け付けたユーザ選択された印刷キューに対応するプリンタ(ここではプリンタ104)の能力情報の取得要求を送信する(ステップS302)。
この取得要求には、IPP(Internet Printing Protocol)で定義されたGet-Printer-Attributesのコマンドが用いられる。このとき、当該コマンドの引数として設定項目に対応する属性情報を設定することで、印刷スプーラ116が指定した設定項目の能力情報を取得することができる。なお、本実施形態において、属性情報や属性値はIPPに従ってやり取りされる情報である。
クラウドプリントサービス121は、OS114の印刷スプーラ116に対して、プリンタ104の能力情報を応答する(ステップS303)。
OS114の印刷スプーラ116は、ステップS303でのクラウドプリントサービス121からの応答により取得した能力情報を、プリンタ104の印刷キューと関連づけされるデバイス能力情報として記憶する(ステップS304)。
OS114の印刷スプーラ116は、印刷設定拡張アプリ112のデバイス能力収集処理部112bに対して、デバイス能力情報を編集することが可能であることを示すイベント(デバイス能力情報編集イベント)を通知する(ステップS305)。
デバイス能力収集処理部112bは、ステップS305で印刷スプーラ116からデバイス能力情報編集イベントを受信したタイミングで、OS114のAPI(Application Programming Interface)を利用可能となる。当該APIは、デバイス能力情報を編集するためのAPIである。
デバイス能力収集処理部112bは、ステップS305でデバイス能力情報編集イベントを印刷スプーラ116から受信すると、クラウドプリントサービス121に、プリンタ104の能力情報を要求する(ステップS306)。
具体的には、デバイス能力収集処理部112bは、要求対象として選択した属性情報をIPPで定義されたGet-printer-Attributesのような標準プロトコルを用いてクラウドプリントサービス121に対してステップS306の要求を行う。
印刷設定拡張アプリ112は、OS114のサポート外の属性情報に対する能力情報も取得可能である。本実施形態では、ステップS306の要求に用いるGet-Printer-Attributesの引数として、プリンタベンダー固有の属性情報を設定することで、IPPで定義されていない属性情報についても能力情報の取得が可能となる。
ステップS306の能力情報の要求を受けたクラウドプリントサービス121は、プリンタ104に対して、IPPを用いて能力情報を要求する(ステップS307)。具体的にはクラウドプリントサービス121は、ステップS307でGet-Printer-Attributesを用いてプリンタ104の能力情報を問い合わせる。このとき、クラウドプリントサービス121は、クライアント端末101から通知された引数を用いて、プリンタ104に問い合わせる。
プリンタ104は、ステップS307でクラウドプリントサービス121から要求された能力情報を応答する(ステップS308)。クラウドプリントサービス121は、ステップS308のプリンタ104からの能力情報を受信すると、その受信した応答内容に基づき、印刷設定拡張アプリ112にステップS306で要求された能力情報を応答する(ステップS309)。
印刷設定拡張アプリ112は、ステップS307~S308とステップS302,S303でOS114が取得した能力情報とを、デバイス能力情報データとして自身のデータ記憶領域に複製して記憶する(ステップS310)。
次に、印刷設定拡張アプリ112は、デバイス能力情報データをOS114の印刷スプーラ116に通知する(ステップS311)。
印刷スプーラ116は、印刷設定拡張アプリ112からデバイス能力情報データを受け取ると、ステップS301で選択された印刷キューを有効にする(ステップS312)。これにより、印刷設定拡張アプリ112の印刷設定UI部112aの起動が可能となる。
ステップS313で印刷キューが有効になると、印刷スプーラ116は印刷設定拡張アプリ112に、OS114はドキュメント生成アプリ115に、印刷キューの利用が可能になったことを通知する(ステップS313)。
ドキュメント生成アプリ115は当該通知を受信すると、表示中のアプリ印刷設定UIにおいて、詳細設定ボタンや印刷ボタンを選択可能に表示する。ユーザにより詳細設定ボタンを選択されると、印刷設定拡張アプリ112の印刷設定UIを表示させる(ステップS315)。
ドキュメント生成アプリ115は、アプリ印刷設定UIを介してユーザからの印刷の指示(印刷ボタンの選択)を受け付けると、印刷対象となる画像データを含む印刷実行指示をOS114のクラウドプリンタドライバ111に送信する(ステップS316)。クラウドプリンタドライバ111は、ドキュメント生成アプリ115から印刷実行指示を受信すると、印刷スプーラ116に印刷実行指示を受け付けたことを通知する。
印刷スプーラ116は、ステップS316でクラウドプリンタドライバ111から印刷実行指示を受け付けたことの通知を受信すると、印刷設定拡張アプリ112に印刷ワークフローバックグラウンド処理イベントを通知する(ステップS317)。
印刷ワークフローバックグラウンド処理イベントとは、印刷設定拡張アプリ112の印刷ワークフローバックグラウンド処理を起動する処理を示している。また、印刷ワークフローバックグラウンド処理とは、印刷設定拡張アプリ112からクラウドプリンタドライバ111に対して、OS114の印刷スプーラ116経由で指示を出す処理を示している。
印刷スプーラ116は、クラウドプリンタドライバ111経由でドキュメント生成アプリ115から受け取ったデータ(例えばGDI形式の画像データ)から中間画像データを生成し、さらにPDLに変換することが可能である。中間画像データとは、PDLのような印刷データに変換する前に生成されるデータである(例えばXPSデータ)。
印刷設定拡張アプリ112は、印刷スプーラ116を利用して、印刷データを生成する(ステップS318)。
クラウドプリントサービス121は、ステップS319でOS114の印刷スプーラ116から渡された印刷データをプリンタ104に送信する(ステップS320)。その後、ステップS321で印刷データを受信したプリンタ104が、印刷処理を行い、本処理(図3)を終了する。
・クライアント端末の能力情報要求とプリンタの能力情報応答
ここで、ステップS306からS315にかけてクライアント端末101(の印刷設定拡張アプリ112)が行う処理と、プリンタ104が行う処理について、それぞれ図4図5を使って詳細を説明する。
<クライアント端末の能力情報要求>
まず、クライアント端末101の印刷設定拡張アプリ112は、IPPで定義されたOS標準の印刷属性と、プリンタ104が実際の印刷処理で使用する印刷属性を関連付けるマッピングテーブルを自身のデータ記憶領域に持つ。
マッピングテーブルの例を図8(801)に示す。IPPで定義されたOS標準の印刷属性(801b)と、プリンタ104がプリンタの印刷処理で使用する印刷属性(801c)は、基本的に一対一で関連付けられている。
ただし、プリンタ104は、IPPには定義がないプリンタ独自の印刷機能も備えているため、プリンタの印刷属性(801c)の中には、関連付けるOS標準の印刷属性(801b)がないものもある。図8のマッピングテーブルで該当するのが、pid_color_mode属性の属性値、val_color_mode_2colors、そして、pid_smoothing_mode属性、およびその属性値である。
本実施例において、OS標準の印刷属性(801b)とプリンタの印刷属性(801c)は、その属性が指定する対象に応じて、予め決められたグループ(801a)に分類される。
ジョブ名称(job-name、pid_job_name)のように、印刷データ全体(=ジョブ)に対する指定を示す属性は、JOBグループに分類される。
カラー/モノクロ印刷(print-color-mode、pid_color_mode)のように、印刷文書に対する指定を示す属性は、DOCグループに分類される。
部数(copies、pid_copies)やフィニッシング(パンチやステイプル等(図示せず))のように、印刷物に対する仕上げ工程を指定する属性は、BINDグループに分類される。
また、印刷設定拡張アプリ112は、OS標準の印刷属性(801b)とプリンタの印刷属性(801c)の各属性について、UI上はどのように表示するかを示すUI表示(801d)の情報を持っている。そのため、印刷設定拡張アプリ112は、保存した能力情報(S310)に応じて、適切な印刷設定のUI表示(S315)ができる。
以下、図4を用いて印刷設定拡張アプリ112が行う処理の詳細について説明する。図4に示す処理は、ドキュメント生成アプリ115が提供する印刷設定用UIを介して、ユーザによる印刷キューの選択を受け付けたことに応じて開始する。
ステップS401において、印刷設定拡張アプリ112は、IPPの標準プロトコルで定義されたGet-printer-Attributesで、OS標準の能力情報を要求する。
図11にOS標準の能力情報を要求するIPPコマンド1101、その要求に対して能力情報を応答するIPPコマンド1102の例を示す。能力情報を要求するIPPコマンド1101は、printer-uriで指定されるプリンタに対して、次の能力情報を要求している。
copies-supported(指定可能部数)
document-format-supported(サポート文書フォーマット)
media-supported(サポート用紙)
sides-supported(片面/両面の印刷)
print-color-mode-supported(モノクロ/カラーの印刷)
能力情報を応答するIPPコマンド1102は、要求に対する応答の成功を示す情報(successful-ok)があり、要求された能力情報については、それぞれ次のように応答している。
指定可能な部数は、1~999
サポート文書は、PDF、JPEG
サポート用紙は、A4用紙、A5用紙、A6用紙
片面印刷、両面印刷が可能
自動、カラー、モノクロの印刷が可能
仮に印刷設定拡張アプリ112が、このOS標準の能力情報だけを保存して(S310)、UI表示を行う場合(S315)、そのUIは、図9に示す印刷設定901のようになる。しかし、本実施例は、ステップS402以降の処理があるため、そのUIは印刷設定901よりも幅広い印刷設定ができるものとなる。
ステップS402において、印刷設定拡張アプリ112は、IPPの標準プロトコルで定義されたGet-printer-Attributesで、プリンタ独自の能力情報を要求する。
図11にプリンタ独自の能力情報を要求するIPPコマンド1103、その要求に対して能力情報を応答するIPPコマンド1104の例を示す。
IPPコマンド1103は、printer-uriで指定されるプリンタに対して、プリンタ独自の能力情報の要求/応答を実現するために、IPP拡張属性としてprinter-ope-supported属性(1103a)を導入する。IPP拡張属性はプリンタ114のベンダ(メーカー)が定義する属性である。
printer-ope-supportedの属性値は、図11においては“binary cord”(1103b)と表記しているが、その実態は図10に示す構造を持つバイナリ1001である。そして、このバイナリ1001には、プリンタ独自の複数の能力情報(pid_color_mode、pid_smoothing_mode)の要求が含まれている。バイナリ1001の構造の詳細については後述する。
能力情報を応答するIPPコマンド1104は、要求に対する応答の成功を示す情報(successful-ok)を含む。また、IPPコマンド1104は能力情報を要求するIPPコマンド1103と同様、プリンタ独自の能力情報の要求/応答を実現するため、IPPを拡張したprinter-ope-supportedという属性(1104a)を導入している。
printer-ope-supportedの属性値は、能力情報要求1103と同様、属性値を“binary cord”としているが、その実態は図10に示す構造を持つバイナリの属性値1002である。そして、この属性値には、プリンタ独自の複数の能力情報(pid_color_mode、pid_smoothing_mode)の応答が含まれている。バイナリ1002の構造の詳細については後述する。
ステップS403において、印刷設定拡張アプリ112は、プリンタ独自の能力情報を全て取得できたか確認する。全て取得できた場合はステップS404の処理へ進み、取得できていない場合は、ステップS402に戻り、処理を続ける。
ステップS404において、印刷設定拡張アプリ112は、取得したOS標準の能力情報とプリンタ独自の能力情報とを、デバイス能力情報データとして自身のデータ記憶領域に複製して記憶する。ステップS405において、印刷設定拡張アプリ112は、OS標準の能力情報とプリンタ独自の能力情報とを参照して、印刷設定UIを表示する。
本実施例の場合、そのUIは図9に示す印刷設定902のようになり、OS標準の能力情報だけを参照した場合のUI901と比較して、新たに2色印刷の選択肢902aと、スムージングの項目902bとその選択肢902cが表示されるようになる。
ステップ402で、印刷設定拡張アプリ112がプリンタ独自の能力情報を要求した時の属性値(バイナリ1001)とその応答の属性値(バイナリ1002)について、詳細を説明する。
属性値(バイナリ1001、1002)の中身は、プリンタ104が解釈可能な印刷制御コマンドで構成される。本実施例では、印刷制御コマンドを示すヘッダ情報、制御内容を示す制御ID、印刷属性を示す属性IDとその属性値のサイズ情報、そして、実際の属性値で構成される。ヘッダ情報は、予め決められた任意のユニークな値である。制御IDも予め決められたIDで、本実施例の場合、バイナリ1001に含まれる制御ID「OPE_REQUEST」は、この印刷制御コマンドが能力要求であることを示す。
一方、バイナリ1002に含まれる制御ID「OPE_RESPONSE」は、この印刷制御コマンドが能力要求に対する能力応答であることを示す。つまり、印刷設定拡張アプリ112は、バイナリ1001で、プリンタ104に対して、カラー機かモノクロ機か(pid_color_mode)、スムージング機能(pid_smoothing_mode)をサポートしているか否か、問い合わせている。
当該問い合わせに対して、プリンタ104は、バイナリ1002で、「自動」「カラー」「モノクロ」「2色印刷」を選択できるプリンタで、選択肢として「しない」「する」を備える「スムージング」機能をサポートしていることを、印刷設定拡張アプリ112に通知している。
<プリンタの能力情報応答>
次に、図5を用いてステップS307からステップS308にかけて、プリンタ104が行う処理の詳細について説明する。
ステップS501において、デバイス能力応答処理部104aは、クライアント端末101またはクラウドプリントサービス121から能力情報の要求があるか確認する。能力情報の要求があった場合はステップS502の処理へ、ない場合はステップS501の処理を続ける。
ステップS502において、デバイス能力応答処理部104aは、IPPの拡張属性を使用した能力情報の要求なのか、IPPの印刷属性を使用した能力情報の要求なのか、判断する。IPPの拡張属性を使用した能力情報の要求の場合はステップS503の処理へ、IPPの印刷属性を使用した能力情報の要求の場合はステップS507の処理へ進む。
ステップS503において、デバイス能力応答処理部104aは、IPPの拡張属性の属性値に含まれる複数のプリンタ独自の印刷属性を解釈する。本実施例の場合、拡張属性1103aの属性値1103b(バイナリ1001)には、少なくともプリンタ独自の印刷属性pid_color_modeとid_smoothing_modeが含まれている。
ステップS504において、デバイス能力応答処理部104aは、プリンタが保持するプリンタ自身の能力情報を参照して、クライアントに応答する能力情報を決定する。本実施例でプリンタ104が保持するプリンタ自身の能力情報の例を、図8のプリンプリンタ能力情報802に示す。
プリンタ能力情報802を参照すると、印刷属性pid_color_modeが示す機能(カラー/モノクロ)をプリンタはサポートしている。また、val_color_mode_auto(自動),color(カラー),mono(モノクロ),2colors(2色)を選択可能である。したがって、これらをクライアントに応答する能力情報とする。
また、印刷属性id_smoothing_modeが示す機能(スムージング)もプリンタ104がサポートしていて、val_smoothing_mode_0(しない),1(する)を選択可能なので、これらをクライアントに応答する能力情報とする。
ステップS505において、デバイス能力応答処理部104aは、要求された複数のプリンタ独自の印刷属性について、全ての能力情報を決定したか確認する。全ての能力情報を決定した場合はステップS506の処理へ、決定していない場合はステップS503からの処理を繰り返す。
ステップS506において、デバイス能力応答処理部104aは、IPPの拡張属性を使用して、プリンタ独自の能力情報をクライアントに通知する。
本実施例の場合、拡張属性1104aの属性値1104b(バイナリ1002)には、プリンタ独自の印刷属性pid_color_modeとその属性値(val_color_mode_auto,color,mono,2colors)が含まれている。また、属性値1104b(バイナリ1002)には、プリンタ独自の印刷属性id_smoothing_modeとその属性値(val_smoothing_mode_0,1)が含まれている。これらの一方のみを含んでいてもよいし、これら以外の印刷属性及び属性値のみを含むようにしてもよい。
ステップS502において、IPPの印刷属性を使用した能力情報の要求があったと判断した場合の処理を説明する。ステップS507において、デバイス能力応答処理部104aは、IPPの印刷属性と、プリンタが保持するプリンタ自身の能力情報を参照して、クライアントに応答するOS標準の能力情報を決定する。
本実施例の場合、能力情報を要求するIPPコマンド1101で、copies-supported(指定可能部数)、document-format-supported(サポート文書フォーマット)、media-supported(サポート用紙)、sides-supported(片面/両面の印刷)、print-color-mode-supported(モノクロ/カラーの印刷)に関する能力情報が要求されている。
ステップS508において、デバイス能力応答処理部104aは、IPPの印刷属性を使用して、OS標準の能力情報をクライアントに通知する。本実施例の場合、能力情報を応答するIPPコマンド1102に示す印刷属性とその属性値が通知される。詳細については、図4(ステップS401)で説明済のため、ここでは省略する。
・クライアント端末の印刷データ送信とプリンタの印刷処理
ここで、ステップS316でクライアント端末101の印刷設定拡張アプリ112が行う印刷データ生成処理と、ステップS321でプリンタ104が行う印刷処理の詳細について、それぞれ図6図7を使って説明する。
<クライアント端末の印刷データ送信>
まず、図6を用いてステップS316でクライアント端末101の印刷設定拡張アプリ112が行う印刷データ生成処理について説明する。
ステップS601において、印刷設定拡張アプリ112は、印刷時の印刷設定に従って、IPPの印刷属性を使用してOS標準の印刷設定情報を作成する。本実施例における印刷設定が、図9の印刷設定902の場合、作成されるOS標準の印刷設定情報は次のようになる(図8の情報801bを参照。)。
media(出力用紙)=iso_a4_210x297mm(A4)
copies(部数)=2
sides(片面/両面)=two-sided(両面)
print-color-mode(カラー/モノクロ)=auto(自動)
印刷設定902のカラー/モノクロの設定は「2色」であるが、OS標準の印刷属性801bでprint-color-modeの属性値に定義されているのは「auto(自動)」「color(カラー)」「monochrome(モノクロ)」だけである。そのため、本実施例ではprint-color-modeにはデフォルト値としてauto(自動)を設定する。
ステップS602において、印刷設定拡張アプリ112は、印刷時の印刷設定に従って、IPPの拡張属性を使用してプリンタ独自の印刷設定情報を作成する。本実施例では、プリンタ独自の印刷設定情報を作成するため、図11に示すようなIPPを拡張した属性を導入している。すなわち、printer-ope-set-job属性(1105a)、printer-ope-set-bind属性(1105b)、printer-ope-set-doc属性(1105c)を導入している。
printer-ope-set-job属性(1105a)には、ジョブ名称のように、印刷データ全体(=ジョブ)に対する印刷設定情報が含まれる。printer-ope-set-bind属性(1105b)には、部数やフィニッシング(パンチやステイプル等)のように、印刷物の仕上げ工程に対する印刷設定情報が含まれる。そして、printer-ope-set-doc属性(1105c)には、カラー/モノクロ印刷のように、印刷文書に対する印刷設定情報が含まれる。
拡張属性のそれぞれの属性値を“binary cord”(1105d、1105e、1105f)と表記している。しかし“binary cord”の実態は、能力情報を要求するIPPコマンド1103や能力情報を応答するIPPコマンド1104のバイナリ(1103b、1104b)と同じ構造を持つバイナリである。
本実施例における印刷設定が、図9の印刷設定902の場合、作成されるプリンタ独自の印刷設定情報は次のようになる(図8の情報801cを参照。)。
pid_color_mode(カラー/モノクロ)
=val_color_mode_2colors(2色)
pid_smoothing_mode(スムージング)
=val_smoothing_mode_1(する)
これらを拡張属性の属性値としてバイナリ構造にしたものが、図10のバイナリ1003である。制御IDも予め決められたIDで、本実施例の場合、バイナリ1003に含まれる制御ID「OPE_DOC」は、この印刷制御コマンドがDOCグループ(801a参照)に対する印刷設定であることを示す。
ステップS603において、印刷設定拡張アプリ112は、作成する印刷設定情報の対象グループを確認する。対象がJOBグループの場合はステップS604へ、BINDグループの場合はステップS605へ、DOCグループの場合はステップS606の処理へ進む。
ステップS604において、印刷設定拡張アプリ112は、printer-ope-set-job属性(1105a)の属性値にステップS602で作成した印刷設定情報を追加する。
ステップS605において、印刷設定拡張アプリ112は、printer-ope-set-bind属性(1105b)の属性値にステップS602で作成した印刷設定情報を追加する。
ステップS606において、印刷設定拡張アプリ112は、printer-ope-set-doc属性(1105c)の属性値にステップS602で作成した印刷設定情報を追加する。本実施例では、作成したプリンタ独自の印刷設定情報(バイナリ1003)は、DOCグループに対する印刷設定のため、ステップS606で、printer-ope-set-doc属性(1105c)の属性値として追加されることになる。
このように拡張属性の属性値(印刷設定情報)の対象グループを揃えることで、後でプリンタが拡張属性の属性値を解釈して、印刷処理を行う時の負荷を下げることができる。
印刷設定拡張アプリ112は、S604、S605、またはS606で適切なグループに印刷設定情報を追加すると、S607へ処理を進める。ステップS607において、印刷設定拡張アプリ112は、プリンタ独自の印刷設定情報を全て作成したか確認する。全て作成した場合はステップS608の処理へ進み、作成していない場合はステップS602からの処理を繰り返す。
ステップS608において、印刷設定拡張アプリ112は、OS標準の印刷設定情報とプリンタ独自の印刷設定情報を、印刷文書と合わせて印刷データとしてプリンタに送信させる。印刷データの作成はOSに対し、IPPで定義されたCreate-Jobのコマンドを用いて指示する。このとき、当該コマンドの引数として印刷設定情報を設定することができる。図11のIPPコマンド1105が、本実施例におけるCreate-Jobコマンドの例である。
<プリンタの印刷処理>
次に、図7を用いてステップS321でプリンタ104が行う印刷処理について説明する。
ステップS701において、プリンタ104の印刷処理部104bは印刷データを受信する。
ステップS702において、印刷処理部104bは、印刷データの中にIPPの印刷属性を確認した場合はステップS703の処理へ進み、それ以外の場合はステップS704の処理へ進む。
ステップS703において、印刷処理部104bは、IPPで定義されたOS標準の印刷属性をプリンタが使用するプリンタの印刷設定に変換して設定する。ここで、本実施におけるプリンタ104は、クライアント端末101と同様、OS標準の印刷属性(801b)と、プリンタが実際の印刷処理で使用する印刷属性(801c)を関連付けるマッピングテーブル801を自身のデータ記憶領域に持つものとする。
本実施例の場合、クライアント端末101が、図6のステップS601で作成したOS標準の印刷設定
media(出力用紙)=iso_a4_210x297mm(A4)
copies(部数)=2
sides(片面/両面)=two-sided(両面)
print-color-mode(カラー/モノクロ)=auto(自動)
は、マッピングテーブル801によって、次のように変換されて、プリンタの印刷設定として設定される。
pid_media(出力用紙)= val_media_a4(A4)
pid_copies(部数) = 2
pid_side(片面/両面)= val_two-sided(両面)
pid_color_mode(カラー/モノクロ) =val_color_mode_auto(自動)
なお、これらの印刷設定の対象グループは、JOB、BIND、DOCのいずれかになるが、対象グループはマッピングテーブル801のグループ801aで判断される。
ステップS704において、印刷処理部104bは、印刷データの中にIPPの拡張属性があることを確認した場合はステップS705の処理へ進み、それ以外の場合はステップS706の処理へ進む。
ステップS705において、印刷処理部104bは、拡張属性の属性値に含まれるプリンタ独自の印刷設定をプリンタの印刷設定として設定する。本実施例の場合、クライアント端末101が図6のステップS602で作成した属性値(バイナリ1003)が、プリンタの印刷設定として設定される。
pid_color_mode(カラー/モノクロ) =val_color_mode_auto(自動)
pid_smoothing_mode(スムージング)= val_smoothing_mode_1(する)
この時、ステップS703で設定されたpid_color_modeのauto(自動)は、このステップS705でval_color_mode_2colors(2色)で上書きされる。これは、OS標準の印刷設定情報より、プリンタ独自の印刷設定情報が優先されることを意味する。
なお、これらの印刷設定の対象グループは、拡張属性で判断される。拡張属性がprinter-ope-set-jobの場合、その属性値に含まれる全ての印刷設定の対象がJOBである。拡張属性がprinter-ope-set-bindの場合、その属性値に含まれる全ての印刷設定の対象がBINDである。拡張属性がprinter-ope-set-docの場合、その属性値に含まれる複数の印刷設定の対象がDOCである。
ステップS706において、印刷処理部104bは、印刷データの中に印刷文書を確認した場合、ステップS707へ処理を進める。印刷文書を確認できない場合はステップS702の処理へ戻り、それ以降の処理を繰り返す。
ステップS707において、印刷処理部104bは、ステップS703、およびステップS705で設定した印刷設定に従い、印刷文書の印刷処理を行う。
プリンタ独自の印刷設定は、従来のプリンタドライバが利用していた印刷制御コマンドである。IPPの拡張属性を使用して、従来のプリンタドライバが利用していた印刷制御コマンドをクライアント(の印刷設定拡張アプリ)とプリンタの間で利用可能にする。これにより、IPPには定義がないプリンタの印刷機能を利用するための機能拡張を、効率的に行うことが可能になる。
なお、ここまでクラウドプリントサービスを利用した印刷について述べてきたが、本発明はローカルプリンタドライバを利用する印刷に適用しても良い。その場合、クラウドプリントサービス121の処理はプリンタ104により行われたり、クラウドプリントサービス121を介さずにクライアント端末101とプリンタ104との間で処理が行われたりする。
また、他の機能についても拡張属性に含めて良い。例えば、図8図10に示す以下の機能を拡張属性に含めることができる。
ダブルパンチは、例えばA3用紙をA4サイズで断裁することを想定して、2in1で面付けされた2つのページに対してそれぞれパンチ穴を開ける機能である。
IPP属性finishingsでは、1ページが面付された用紙に対するパンチ位置の指定(punch-left、punch-right)はできるが、2in1で面付された用紙に対するパンチ位置の指定ができない。そこで、IPPの拡張属性にプリンタの独自のダブルパンチの印刷属性(pid_finishing_punchの属性値val_double_left/right/middle)を含めることで、クライアント端末101で利用することが可能になる。
図8(801)のプリンタの印刷属性の例では、A3用紙に面付された左右のページに対して、両方のページの左側にパンチ穴を開けるのがval_double_left、両方のページの右側にパンチ穴を開けるのがval_double_rightである。そして、左ページの右側、右ページの左側(結果的にA3用紙の中央の2か所)にパンチ穴を開けるのがval_double_middleである。
この時、図8(802)のプリンタの能力情報の場合、プリンタ104がダブルパンチ機能をサポートしないことを示す。一方、もしプリンタ104が、ダブルパンチ機能をサポートしている場合は、サポートするダブルパパンチの属性値(val_double_left、right、middle)の情報を持つ。
図10の1001、1102に示すのが、能力情報の要求と応答の拡張属性に含まれるプリンタの印刷属性pid_finishing_punchの例である。
色調整(pid_color_adjust)、明るさ(pid_color_blightness)、コントラスト(pid_color_contrast)は、印刷時の色、明るさ、コントラストの微調整ができる機能である。これらはいずれもIPP属性では指定できない機能なので、IPPの拡張属性にプリンタの独自の印刷属性を含めることで、クライアント101から利用することが可能になる。
図8(801)のプリンタの印刷属性の例の場合、色調整(pid_color_adjust)は、印刷時のシアン、マゼンタ、イエローの色をより強く出す調整ができる。図8(802)のプリンタの能力情報の場合、プリンタ104は色調整機能をサポートし、その強さに0から10までの段階を設定できる。
明るさ(pid_color_blightness)は、印刷時の色の明るさを調整できる。図8(802)のプリンタの能力情報の場合、その明るさに0%(暗い)から100%(明るい)までの段階を設定できる。
コントラスト(pid_color_contrast)は、印刷時の色のコントラストを調整できる。図8(802)のプリンタの能力情報の場合、プリンタ104は、コントラスト機能をサポートし、そのコントラストに0%(弱く)から100%(強く)までの段階を設定できることを示す。
図10の1001、1102に示すのが、能力情報の要求と応答の拡張属性に含まれるプリンタの印刷属性pid_color_adjust、pid_color_blightness、pid_color_contrastの例である。
印字開始位置(pid_print_start_position)は、用紙に対する印刷が期待する結果と違う場合に、印字位置を調整する機能である。IPP属性では指定できない機能なので、IPPの拡張属性にプリンタの独自の印刷属性を含めることで、クライアント101から利用することが可能になる。
図8(801)のプリンタの印刷属性の例の場合、印字開始位置(pid_print_start_position)は、用紙の表面と裏面の両方に指定することができる。図8(802)のプリンタの能力情報の場合、プリンタ104は、用紙の表と裏に対して、用紙左上を原点として、X方向とY方向に-5.0~+5.0mmの範囲で印字開始位置を調整ができることを示す。図10の1001、1102に示すのが、能力情報の要求と応答の拡張属性に含まれるプリンタの印刷属性pid_print_start_positionの例である。
ガンマ補正(pid_gammma_level)は、印刷データの最も明るい部分や最も暗い部分を損なわないように、明るさを調節する機能である。IPP属性では指定できない機能なので、IPPの拡張属性にプリンタの独自の印刷属性を含めることで、クライアント101から利用することが可能になる。
図8(801)のプリンタの印刷属性の例の場合、ガンマ補正(pid_gammma_level)は、印刷データに含まれる文字、グラフィック、イメージに対して指定することができる。図8(802)のプリンタの能力情報の場合、プリンタ104はガンマ補正(pid_gammma_level)機能をサポートし、印刷データの文字、グラフィック、イメージに対して、0から3の4段階のレベルを指定することができる。
白紙節約(pid_skip_blank_page)は、印刷データに白紙が含まれる場合、用紙を節約するため、その白紙ページを印刷しない機能である。IPP属性では指定できない機能なので、IPPの拡張属性にプリンタの独自の印刷属性を含めることで、クライアント101から利用することが可能になる。
図8(801)のプリンタの印刷属性の例の場合、白紙節約(pid_skip_blank_page)は、「OFF」「ON」を指定することができ、図8(802)のプリンタの能力情報の場合、プリンタ104が白紙節約の機能をサポートすることを示す。図10の1001、1102に示すのが、能力情報の要求と応答の拡張属性に含まれるプリンタの印刷属性pid_skip_blank_pageの例である。
バーコードモード(pid_barcord_mode)は、バーコード専用の印刷モードで、印刷したバーコードがよりバーコードリーダーで認識されやすくなる機能である。IPP属性では指定できない機能なので、IPPの拡張属性にプリンタの独自の印刷属性を含めることで、クライアント101から利用することが可能になる。
図8(801)のプリンタの印刷属性の例の場合、バーコードモード(pid_barcord_mode)は、「OFF」「ON」を指定することができる。また、図8(802)のプリンタの能力情報の場合、プリンタ104がバーコードモード機能をサポートすることを示す。図10の1001、1102に示すのが、能力情報の要求と応答の拡張属性に含まれるプリンタの印刷属性pid_barcord_modeの例である。
特殊モード(pid_special_mode)は、印刷する用紙の種類によっては、文字の周辺にトナーが飛び散る現象が目立つ場合に、その現象をプリンタエンジンの印刷プロセスを変更することで抑える機能である。IPP属性では指定できない機能なので、IPPの拡張属性にプリンタの独自の印刷属性を含めることで、クライアント101から利用することが可能になる。
図8(801)のプリンタの印刷属性の例の場合、特殊モード(pid_special_mode)は、「OFF」「ON」を指定することができる。また、図8(802)のプリンタの能力情報の場合、プリンタ104が特殊モード機能をサポートすることを示す。図10の1001、1102に示すのが、能力情報の要求と応答の拡張属性に含まれるプリンタの印刷属性pid_special_modeの例である。
ホワイトギャップ対策(pid_whitegap_adjust)は、ハーフトーンの直後に同色の濃い色があるときに、その境界付近のハーフトーン側が細い線のように白くなる「ホワイトギャップ」の発生を改善する機能である。IPP属性では指定できない機能なので、IPPの拡張属性にプリンタの独自の印刷属性を含めることで、クライアント101から利用することが可能になる。
図8(801)のプリンタの印刷属性の例の場合、ホワイトギャップ対策(pid_whitegap_adjust)は、「OFF」「ON」を指定することができる。また、図8(802)のプリンタの能力情報の場合、プリンタ104がホワイトギャップ対策機能をサポートすることを示す。図10の1001、1102に示すのが、能力情報の要求と応答の拡張属性に含まれるプリンタの印刷属性pid_special_modeの例である。
<その他の実施例>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
101 クライアント端末
104 クラウドプリント対応プリンタ
111 クラウドプリンタドライバ
112 印刷設定拡張アプリ
【図
【図
【図
【図
【図
【図
【図
【図
【図
【図
【図
【手続補正書】
【提出日】
【手続補正
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項
情報処理装置と印刷装置が通信可能に接続された印刷システムであって、
前記情報処理装置は、
Internet Printing Protocol(IPP)で定義されていない所定の属性情報を指定して、前記印刷装置で利用可能な機能を示す能力情報を要求する要求手段と、
前記能力情報に対応する設定項目を表示する表示手段と、を有し、
前記印刷装置は、
前記能力情報の要求を受信する受信手段と、
前記受信手段により前記所定の属性情報を指定した要求を受信したとき、前記IPPで定義されていない印刷属性を含む異なる複数の印刷属性と、当該複数の印刷属性それぞれの属性値と、を含む情報を応答する応答手段と、を有し、
前記表示手段は、前記複数の印刷属性それぞれに対応する複数の設定項目を表示し、
ユーザにより選択された前記複数の設定項目の設定値は、予め決められたグループに分類して前記情報処理装置から前記印刷装置へ送信される
ことを特徴とする印刷システム。
【請求項
前記情報処理装置は、
異なる複数のメーカーの印刷装置が解釈できる印刷データを生成することができる印刷ソフトウェアであり、かつ、当該印刷データを前記異なる複数のメーカーの印刷装置のいずれにでも送信できる前記印刷ソフトウェアと、
前記印刷ソフトウェアをサポートするアプリケーションプログラムと、を有し、
前記アプリケーションプログラムを実行することにより前記要求手段及び前記表示手段を実現することを特徴とする、請求項1に記載の印刷システム。
【請求項
情報処理装置から、能力情報の要求であって、Internet Printing Protocol(IPP)で定義されていない所定の属性情報を指定した前記要求を受信する第1の受信手段と、
前記第1の受信手段により前記所定の属性情報を指定した要求を受信したとき、前記IPPで定義されていない印刷属性を含む異なる複数の印刷属性と、当該複数の印刷属性それぞれの属性値と、を含む情報を応答する応答手段と、
前記複数の印刷属性それぞれに対応する複数の設定項目の設定値であって、前記情報処理装置においてユーザにより選択され、予め決められたグループに分類された前記複数の設定項目の設定値を受信する第2の受信手段と、
を有することを特徴とする印刷装置。
【請求項
前記複数の印刷属性は、スムージング、パンチ、色調整、明るさ、コントラスト、印字開始位置、ガンマ補正、白紙節約、バーコードモード、の少なくともいずれかの機能に関する印刷属性を含むことを特徴とする、請求項に記載の印刷装置。
【請求項
異なる複数のメーカーの印刷装置が解釈できる印刷データを生成することができる印刷ソフトウェアであり、かつ、当該印刷データを前記異なる複数のメーカーの印刷装置のいずれにでも送信できる前記印刷ソフトウェアと、前記印刷ソフトウェアをサポートするアプリケーションプログラムと、を有する情報処理装置の制御方法であって、
Internet Printing Protocol(IPP)で定義されていない所定の属性情報を指定して、印刷データの印刷先として選択された印刷装置で利用可能な機能を示す能力情報を要求する要求工程と、
前記所定の属性情報を指定した要求に応答して、前記IPPで定義されていない印刷属性を含む異なる複数の印刷属性と、当該複数の印刷属性それぞれの属性値と、を含む情報を受信する受信工程と、
前記複数の印刷属性それぞれに対応する複数の設定項目を表示する表示工程と、
ユーザにより選択された前記複数の設定項目の設定値を、予め決められたグループに分類して、印刷データの印刷先として選択された前記印刷装置へ送信する送信工程と、
を有することを特徴とする制御方法。
【請求項
前記グループは、JOBグループ、BINDグループ、DOCグループであることを特徴とする、請求項に記載の制御方法。
【請求項
前記複数の印刷属性は、スムージング、パンチ、色調整、明るさ、コントラスト、印字開始位置、ガンマ補正、白紙節約、バーコードモード、の少なくともいずれかの機能に関する印刷属性を含むことを特徴とする、請求項に記載の制御方法。
【請求項
前記要求工程、前記受信工程、前記表示工程は、前記アプリケーションプログラムを実行することにより行われることを特徴とする、請求項に記載の制御方法。
【請求項
前記印刷ソフトウェアは、前記複数の設定項目を表示できないことを特徴とする、請求項に記載の制御方法。
【請求項
異なる複数のメーカーの印刷装置が解釈できる印刷データを生成することができる印刷ソフトウェアであり、かつ、当該印刷データを前記異なる複数のメーカーの印刷装置のいずれにでも送信できる前記印刷ソフトウェアをサポートするアプリケーションプログラムであって、情報処理装置に、
Internet Printing Protocol(IPP)で定義されていない所定の属性情報を指定して、印刷データの印刷先として選択された印刷装置で利用可能な機能を示す能力情報を要求する要求工程と、
前記所定の属性情報を指定した要求に応答して、前記IPPで定義されていない印刷属性を含む異なる複数の印刷属性と、当該複数の印刷属性それぞれの属性値と、を含む情報を受信する受信工程と、
前記複数の印刷属性それぞれに対応する複数の設定項目を表示する表示工程と、
ユーザにより選択された前記複数の設定項目の設定値を、予め決められたグループに分類して、印刷データの印刷先として選択された前記印刷装置へ送信する送信工程と、
を実行させることを特徴とするアプリケーションプログラム。
【請求項
前記グループは、JOBグループ、BINDグループ、DOCグループであることを特徴とする、請求項1に記載のアプリケーションプログラム。
【請求項
前記複数の印刷属性は、スムージング、パンチ、色調整、明るさ、コントラスト、印字開始位置、ガンマ補正、白紙節約、バーコードモード、の少なくともいずれかの機能に関する印刷属性を含むことを特徴とする、請求項1に記載のアプリケーションプログラム。
【請求項
前記印刷ソフトウェアは、前記複数の設定項目を表示できないことを特徴とする、請求項1に記載のアプリケーションプログラム。
【請求項
前記印刷ソフトウェアは、前記IPPに準拠したクラスドライバであることを特徴とする、請求項10に記載のアプリケーションプログラム
【手続補正
【補正対象書類名】明細書
【補正対象項目名】0010
【補正方法】変更
【補正の内容】
本発明の印刷システムは、情報処理装置と印刷装置が通信可能に接続された印刷システムであって、前記情報処理装置は、Internet Printing Protocol(IPP)で定義されていない所定の属性情報を指定して、前記印刷装置で利用可能な機能を示す能力情報を要求する要求手段と、前記能力情報に対応する設定項目を表示する表示手段と、を有し、前記印刷装置は、前記能力情報の要求を受信する受信手段と、前記受信手段により前記所定の属性情報を指定した要求を受信したとき、異なる複数の印刷属性と、当該複数の印刷属性それぞれの属性値と、を含む情報を応答する応答手段と、を有し、前記表示手段は、前記複数の印刷属性それぞれに対応する複数の設定項目を表示し、ユーザにより選択された前記複数の設定項目の設定値は、予め決められたグループに分類して前記情報処理装置から前記印刷装置へ送信されることを特徴とする。