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

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

▶ ブラザー工業株式会社の特許一覧

<>
  • 特開-サポートプログラム 図1
  • 特開-サポートプログラム 図2
  • 特開-サポートプログラム 図3
  • 特開-サポートプログラム 図4
  • 特開-サポートプログラム 図5
  • 特開-サポートプログラム 図6
  • 特開-サポートプログラム 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022109423
(43)【公開日】2022-07-28
(54)【発明の名称】サポートプログラム
(51)【国際特許分類】
   G06F 3/12 20060101AFI20220721BHJP
   H04N 1/00 20060101ALI20220721BHJP
   B41J 29/38 20060101ALI20220721BHJP
【FI】
G06F3/12 339
G06F3/12 305
G06F3/12 356
H04N1/00 127B
B41J29/38 203
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2021004722
(22)【出願日】2021-01-15
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000291
【氏名又は名称】弁理士法人コスモス国際特許商標事務所
(72)【発明者】
【氏名】細溝 仁人
【テーマコード(参考)】
2C061
5C062
【Fターム(参考)】
2C061AP01
2C061AP03
2C061AP04
2C061AP07
2C061AQ05
2C061AQ06
2C061AR01
2C061AR03
2C061AS02
2C061HJ08
2C061HK11
2C061HK19
2C061HM00
2C061HN05
2C061HN06
2C061HN15
2C061HP00
2C061HP06
5C062AA02
5C062AA05
5C062AA14
5C062AA29
5C062AB38
5C062AB40
5C062AC58
(57)【要約】
【課題】OS標準の汎用印刷プログラムが組み込まれた情報処理装置について、ユーザがプリンタでの利用可否を確認できるようにすること。
【解決手段】汎用印刷プログラム41に対する印刷指示があった際に、補助プログラム42によって、ユーザIDとそのユーザIDに対応する利用条件とを取得する。利用条件は、プリンタ2での印刷の実行可否を決定する条件であって、ユーザに設定される条件である。補助プログラム42は、ユーザIDと利用条件の両者に基づいてプリンタ2での印刷の実行可否を判定し、その判定結果をユーザIF13を介して通知する。
【選択図】図1
【特許請求の範囲】
【請求項1】
情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
前記コンピュータに、
前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、
ユーザを識別する識別情報を取得する識別情報取得処理と、
前記識別情報取得処理にて取得した前記識別情報と対応付けられた利用条件を取得する利用条件取得処理と、
を実行させ、前記利用条件は、前記プリンタでの印刷の実行可否を決定する条件であって、ユーザに設定される条件であり、
さらに前記コンピュータに、
前記印刷指示があった場合に、
前記印刷指示についての印刷設定と、前記利用条件取得処理にて取得した前記利用条件と、に基づいて、前記プリンタでの印刷の実行可否を判定する判定処理と、
前記判定処理での判定結果に基づく通知を、前記情報処理装置のユーザインタフェースを用いて行う通知処理と、
を実行させる、
ことを特徴とするサポートプログラム。
【請求項2】
請求項1に記載するサポートプログラムであって、
前記コンピュータに、
前記利用条件に基づく前記プリンタの制限機能が有効か否かを示す情報を取得する管理情報取得処理を実行させ、
さらに前記コンピュータに、
前記印刷指示があった場合に、
前記管理情報取得処理にて前記プリンタの制限機能が有効を示す前記情報を取得していれば、前記判定処理および前記通知処理を実行させ、
前記管理情報取得処理にて前記プリンタの制限機能が有効を示す前記情報を取得していなければ、前記判定処理および前記通知処理を実行させない、
ことを特徴とするサポートプログラム。
【請求項3】
請求項1または請求項2に記載するサポートプログラムであって、
前記通知処理では、
前記判定処理にて前記プリンタでの印刷が実行不可と判定された場合、前記利用条件を満たさない前記印刷設定の項目を示す前記通知を、前記ユーザインタフェースを用いて行う、
ことを特徴とするサポートプログラム。
【請求項4】
請求項1から請求項3のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
前記判定処理にて前記プリンタでの印刷が実行不可と判定された場合、前記ユーザインタフェースを用いて、前記印刷設定の変更を受け付ける変更処理を実行させる、
ことを特徴とするサポートプログラム。
【請求項5】
請求項4に記載するサポートプログラムであって、
前記コンピュータに、
前記変更処理による変更後にも前記判定処理を実行させ、前記判定処理では、前記変更処理による変更があった場合、変更後の前記印刷設定と、前記利用条件取得処理にて取得した前記利用条件と、に基づいて、前記プリンタでの印刷の実行可否を判定し、
さらに前記コンピュータに、
前記変更処理による変更後の前記判定処理にて前記プリンタでの印刷が実行不可と判定された場合、前記変更処理を再実行させ、前記判定処理にて前記プリンタでの印刷が実行可と判定された後、前記印刷指示についての印刷ジョブを前記プリンタに送信するための処理を行わせる、
ことを特徴とするサポートプログラム。
【請求項6】
請求項1から請求項3のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
前記判定処理にて前記プリンタでの印刷が実行不可と判定された状態では、前記印刷指示についての印刷ジョブを前記プリンタに送信するための処理を行わせず、前記判定処理にて前記プリンタでの印刷が実行可と判定された後、前記印刷指示についての前記印刷ジョブを前記プリンタに送信するための前記処理を行わせる、
ことを特徴とするサポートプログラム。
【請求項7】
請求項1から請求項6のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
前記プリンタに対して設定される複数のユーザの前記利用条件を取得し、前記情報処理装置のメモリに記憶する記憶処理を実行させ、
前記利用条件取得処理では、前記記憶処理にて記憶された複数のユーザの前記利用条件の中から、前記識別情報取得処理にて取得した前記識別情報と対応付けられた利用条件を取得する、
ことを特徴とするサポートプログラム。
【請求項8】
請求項1から請求項7のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
前記利用条件取得処理にて前記利用条件の取得に失敗した場合、前記印刷指示に基づく印刷をキャンセルするキャンセル処理を実行させる、
ことを特徴とするサポートプログラム。
【請求項9】
請求項1から請求項8のいずれか1つに記載するサポートプログラムであって、
前記利用条件取得処理では、
前記識別情報取得処理にて取得した前記識別情報と対応付けられた前記利用条件を、前記プリンタから取得し、前記プリンタは、ユーザに設定された前記利用条件を記憶している、
ことを特徴とするサポートプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラムに関する。
【背景技術】
【0002】
プリンタに関する技術として、ユーザごとにプリンタの機能の利用可否を管理する技術が知られている。さらに例えば特許文献1には、一部の機能の利用が制限されたプリンタを、情報処理装置から制御する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2020-166676号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
近年、プリンタドライバを利用せず、オペレーティングシステム(OS)に標準に組み込まれている印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタとOS標準の印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタドライバを用いずに、OS標準の印刷プログラムによる印刷が可能になる。
【0005】
前述したような制限機能を有するプリンタを情報処理装置から利用する場合、情報処理装置においてプリンタの機能の利用可否を確認できることが望まれる。しかしながら、前述したOS標準の汎用印刷プログラムでは、ユーザに応じて設定されるプリンタの機能の利用可否を確認する手段が提供されていない。そのため、情報処理装置のユーザは、印刷指示を入力した後、プリンタまで移動してから利用不可になっていることを知る場合があり、改善が望まれる。
【0006】
本明細書は、OS標準の汎用印刷プログラムが組み込まれた情報処理装置について、ユーザがプリンタでの利用可否を確認できる技術を開示する。
【課題を解決するための手段】
【0007】
上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、ユーザを識別する識別情報を取得する識別情報取得処理と、前記識別情報取得処理にて取得した前記識別情報と対応付けられた利用条件を取得する利用条件取得処理と、を実行させ、前記利用条件は、前記プリンタでの印刷の実行可否を決定する条件であって、ユーザに設定される条件であり、さらに前記コンピュータに、前記印刷指示があった場合に、前記印刷指示についての印刷設定と、前記利用条件取得処理にて取得した前記利用条件と、に基づいて、前記プリンタでの印刷の実行可否を判定する判定処理と、前記判定処理での判定結果に基づく通知を、前記情報処理装置のユーザインタフェースを用いて行う通知処理と、を実行させる、ことを特徴とする。
【0008】
上記構成のサポートプログラムは、汎用印刷プログラムに対する印刷指示があった際に、サポートプログラムによって、ユーザの識別情報とその識別情報に対応する利用条件とを取得し、取得した両者に基づいてプリンタでの印刷の実行可否を判定し、その判定結果を通知する。これにより、ユーザは、プリンタでの印刷が行われる前に、情報処理装置においてプリンタでの印刷の実行可否を把握できる。
【0009】
上記装置の機能を実現するための制御方法、コンピュータプログラム、および当該コンピュータプログラムを格納するコンピュータにて読取可能な記憶媒体も、新規で有用である。
【発明の効果】
【0010】
本明細書に開示される技術によれば、OS標準の汎用印刷プログラムが組み込まれた情報処理装置について、ユーザがプリンタでの利用可否を確認できる技術が実現される。
【図面の簡単な説明】
【0011】
図1】PCの電気的構成の概略を示すブロック図である。
図2】利用条件データベースのデータ構造の一例を示す図である。
図3】各プログラムによる印刷動作の手順の例を示すシーケンス図である。
図4】印刷実行判断処理の手順の例を示すフローチャートである。
図5】印刷設定画面の一例を示す図である。
図6】印刷不可通知画面の一例を示す図である。
図7】印刷設定画面の一例を示す図である。
【発明を実施するための形態】
【0012】
以下、本形態のサポートプログラムを利用するパーソナルコンピュータ(以下、「PC」とする)について、添付図面を参照しつつ詳細に説明する。本明細書は、印刷機能を有するプリンタに接続されるPCにて実行されるサポートプログラムを開示する。
【0013】
本形態のPC1は、図1に示すように、CPU11と、メモリ12と、を含むコントローラ10を備えている。PC1は、情報処理装置の一例である。CPU11は、コンピュータの一例である。また、PC1は、ユーザインタフェース(以下、「ユーザIF」とする)13と、通信インタフェース(以下、「通信IF」とする)14と、を備え、これらがコントローラ10に電気的に接続されている。なお、図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。
【0014】
CPU11は、メモリ12から読み出したプログラムに従って、また、ユーザの操作に基づいて、各種の処理を実行する。メモリ12には、各種のアプリケーションプログラム(以下、「アプリ」とする)を含む各種のプログラムや各種のデータが記憶されている。メモリ12は、各種の処理が実行される際の作業領域としても利用される。CPU11が備えるバッファも、メモリの一例である。なお、メモリ12の一例は、PC1に内蔵されるROM、RAM、HDD等に限らず、CPU11が読み取り可能かつ書き込み可能なストレージ媒体、例えば、CD-ROM、DVD-ROM等の記録媒体であっても良い。
【0015】
ユーザIF13は、ユーザに情報を報知するための画面を表示するハードウェアと、ユーザによる操作を受け付けるハードウェアと、を含む。なお、ユーザIF13は、情報を表示可能なディスプレイと、入力受付機能を有するマウスやキーボード等と、の組であっても良いし、表示機能と入力受付機能とを備えるタッチパネルであっても良い。
【0016】
通信IF14は、プリンタ2や管理装置3等の外部装置と通信を行うためのハードウェアを含む。通信IF14の通信規格は、イーサネット(登録商標)、Wi-Fi(登録商標)、USBなどである。PC1は、複数の通信規格に対応する複数の通信IF14を備えていてもよい。
【0017】
PC1のメモリ12には、図1に示すように、汎用印刷プログラム41を含むオペレーティングシステム(以下、「OS」とする)21と、補助プログラム42と、編集アプリ43と、が記憶されている。補助プログラム42は、サポートプログラムの一例である。編集アプリ43は、アプリケーションプログラムの一例である。OS21は、例えば、Windows(登録商標)、macOS(登録商標)、Linux(登録商標)、iOS(登録商標)、Android(登録商標)である。
【0018】
汎用印刷プログラム41は、ユーザの指示に基づいて、プリンタ2等の各種のプリンタに印刷を実行させるためのOS標準のプログラムである。
【0019】
汎用印刷プログラム41は、各種のプリンタのベンダによって提供される複数種類のモデルのプリンタが共通に利用できる機能をサポートしている。汎用印刷プログラム41は、各種のプリンタが固有に備える機能の全てに対応するものではなく、サポートする機能は汎用的なものに限られる。
【0020】
補助プログラム42は、汎用印刷プログラム41の処理に付随してOS21からの指示に基づいて処理を実行するプログラムまたはプログラム群であり、対象のハードウェアの制御をサポートするアプリである。本形態の補助プログラム42は、PC1に接続されているプリンタ2のモデルに対応するものであり、例えば、汎用印刷プログラム41を使用してプリンタ2に印刷を実行させる指示を受け付けた場合に、汎用印刷プログラム41から起動される。補助プログラム42は、例えば、ハードウェアサポートアプリ(略称、HSA)と呼ばれる。
【0021】
補助プログラム42は、汎用印刷プログラム41から複数種の命令を受け付け可能であり、受け付けた命令に基づいて、各種の処理を実行する。なお、補助プログラム42は、それぞれが実行命令を受け付ける複数のプログラムの組み合わせであっても良いし、1つのプログラムであって命令に応じてそれぞれ異なる処理を実行できるプログラムであっても良い。
【0022】
補助プログラムは、プリンタのベンダによってプリンタのタイプごとに用意されるプログラムであっても良い。例えば、インクジェットプリンタ用の補助プログラムやレーザプリンタ用の補助プログラムが、それぞれ用意されても良い。PC1のOS21は、例えば、新たなプリンタがPC1に接続された場合、接続されたプリンタのタイプに応じて、適切な補助プログラムをサーバ等からダウンロードして自装置に組み込む。そして、OS21は、組み込んだ補助プログラムの識別情報を新たに接続されたプリンタのプリンタ情報に対応付けて、メモリ12に記憶させる。なお、プリンタのタイプごとに限らず、プリンタのモデルごとやプリンタのモデルのシリーズごとに用意される補助プログラムが有っても良い。
【0023】
編集アプリ43は、例えば、画像データや文書データの作成や編集を行うためのアプリである。編集アプリ43は、例えば、マイクロソフト(登録商標)製のワードやパワーポイントなどであっても良いし、プリンタ2のベンダから提供されるアプリであっても良い。編集アプリ43は、プリンタ2に所定の動作を行わせる指示を含むユーザ操作を受け付ける。具体的には、編集アプリ43は、ユーザIF13を介して、例えば、プリンタ2に印刷を実行させる印刷実行指示を受け付ける。
【0024】
本形態のプリンタ2は、印刷機能を有する装置である。PC1は、通信IF14を介して、プリンタ2と通信可能である。プリンタ2は、例えば、PC1等から印刷データを受信して、受信した印刷データに基づく印刷を実行する。さらに、本実施形態のプリンタ2は、ユーザごとに設定された利用条件に基づいて印刷の実行可否を決定する制限機能を有する。制限機能は、管理装置3あるいはプリンタ2の操作パネルを介して有効にしたり、無効にしたりすることができる。プリンタ2のメモリには、制限機能の有効無効を示す機能情報21が記憶されている。機能情報21は、スキャン機能やFAX送信機能等、他の機能に関する有効無効の情報が含まれていてもよい。また、本形態のプリンタ2は、ユーザごとに利用条件を設定する利用条件DB23を備える。
【0025】
図2は、利用条件DB23のデータ構造の一例を示す図である。利用条件DB23は、ユーザの名前を示すユーザ名と、ユーザを識別するユーザIDに、利用条件を関連付けて記憶している。ユーザIDは、識別情報の一例である。
【0026】
利用条件は、プリンタ2での印刷の実行可否を決定する条件である。本形態の利用条件は、特定の印刷設定について利用を制限する。特定の印刷設定は、例えば、トナーや用紙などの消耗品の節約に貢献する印刷設定である。
【0027】
利用条件には、例えば、印刷枚数、カラー/モノクロ、トナーセーブが該当する。印刷枚数の項目には、ユーザが1回の印刷ジョブで印刷可能な印刷枚数の上限値が設定される。印刷枚数の項目には、印刷枚数を制限しないことを示す「無制限」が設定されてもよい。印刷枚数は、印刷ジョブ毎にカウントされる印刷回数であってもよい。また、所定の期間内で印刷できる用紙の総印刷枚数、もしくは、ジョブの総印刷回数でもよい。カラー/モノクロは、カラー印刷が制限されているか否かを示す。すなわち、カラー印刷の利用が制限され、モノクロ印刷の利用のみが許可される場合には「モノクロ」のみがカラー/モノクロの項目に設定され、カラー印刷の利用が可能である場合には、「カラー」と「モノクロ」がカラー/モノクロの項目に設定される。トナーセーブは、トナーセーブが設定されていない印刷が制限されているか否かを示す。すなわち、トナーセーブが設定されていない印刷が制限され、トナーセーブが設定された印刷が許可される場合には「ON」のみがトナーセーブの項目に設定され、トナーセーブが設定されていない印刷が許可される場合には「ON」と「OFF」がトナーセーブの項目に設定される。
【0028】
さらに、利用条件には、片面/両面、集約印刷(例えば2in1)、特定の用紙種の印刷などが含まれていてもよい。片面/両面は、片面印刷が制限されているか否かを示す。集約印刷は、集約が設定されていない印刷が制限されているか否かを示す。特定の用紙種の印刷可否は、はがきなど特定の用紙種への印刷が制限されているか否かを示す。
【0029】
なお、本形態では、識別情報の対象となるユーザを個人としているが、グループや企業(法人)を識別情報の対象となるユーザにしてもよい。この場合、利用条件DB23では、ユーザとなるグループを識別するグループ識別情報や、ユーザとなる企業(法人)を識別する企業識別情報に、利用条件が関連付けられて記憶される。
【0030】
図1に戻り、管理装置3は、通信機能やデータ記憶機能を備える装置である。管理装置3は、例えば、制限機能を有しているプリンタ2や制限機能を有していないプリンタ200を含む複数のプリンタと通信可能に接続し、それらのプリンタを一括管理する。
【0031】
例えば、管理装置3は、機能情報管理DB31と利用条件管理DB33とを備えている。管理装置3は、例えば、管理者が使用するPCや、ネットワーク上に設けられたサーバである。機能情報管理DB31は、管理装置3に接続されるプリンタ毎に機能情報を管理するためのデータベースである。機能情報管理DB31は、例えば、プリンタの識別情報に関連付けて、制限機能の有効無効を示す情報を含む機能情報を記憶している。
【0032】
利用条件管理DB33は、管理装置3に接続されるプリンタ毎に、ユーザに設定される利用条件を管理するためのデータベースである。利用条件管理DB33は、プリンタの識別情報に関連付けて、利用条件DBを記憶している。管理装置3は、管理装置3に接続するプリンタと定期的に通信し、機能情報や利用条件に関するデータに関して、最新の更新内容に揃えるように、同期処理を行っている。よって、プリンタ2が有する機能情報21及び利用条件DB23は、管理装置3がプリンタ2について機能情報管理DB31及び利用条件管理DB33に記憶する機能情報及び利用条件DBと同じである。
【0033】
次に、本形態の補助プログラム42の動作を含む印刷の手順について、図3のシーケンス図を参照して説明する。図3は、編集アプリ43等の印刷指示を受け付けるアプリにて、汎用印刷プログラム41を使用してプリンタ2に印刷させる印刷実行指示を受け付けた場合であって、プリンタ2に対応する補助プログラム42がPC1に組み込まれている場合の動作について示している。
【0034】
なお、本形態における処理およびフローチャートの各処理ステップは、基本的に、補助プログラム42などのプログラムに記述された命令に従ったCPU11の処理を示す。CPU11による処理は、OS21のAPIを用いたハードウェア制御も含む。本明細書では、OS21の詳細な記載を省略して各プログラムの動作を説明する。また、「取得」は要求を必須とはしない概念で用いる。
【0035】
図3に示すように、編集アプリ43は、文字や図形などの編集を受け付けた後、印刷画面にてプリンタ2や各種印刷設定が選択された状態で、印刷指示を受け付けると(A01)、受け付けた印刷指示についての情報をOS21に渡す。OS21は、汎用印刷プログラム41を使用する印刷実行指示を受け付けた場合、汎用印刷プログラム41を実行させ、汎用印刷プログラム41に印刷指示についての画像データや印刷設定等の情報を渡す(A02)。
【0036】
汎用印刷プログラム41は、受け取った印刷指示についての情報に含まれる画像データの形式を中間画像データの形式に変換することで中間画像データを生成し、中間画像データを含む印刷ジョブを生成する(A03)。編集アプリ43から渡される画像データは種々のタイプのものであり、汎用印刷プログラム41は、受け取った画像データを、印刷データの生成に適した中間画像データに変換する。なお、印刷指示に含まれる画像データが印刷データの生成に適したデータであれば、中間画像データの生成を省略し、そのまま中間画像データとしても良い。汎用印刷プログラム41が生成する中間画像データは、例えば、XPSデータである。
【0037】
汎用印刷プログラム41は、印刷指示にて選択されている装置がプリンタ2であって、プリンタ2に対応する補助プログラム42がメモリ12に記憶されていることから、補助プログラム42に実行指示を出力する(A04)。汎用印刷プログラム41は、実行指示によって、補助プログラム42を動作させ、生成した中間画像データを補助プログラム42に渡す。なお、A04では、中間画像データとともに印刷設定の情報も補助プログラム42に渡される。
【0038】
なお、汎用印刷プログラム41は、中間画像データの生成前に補助プログラム42を実行させても良い。補助プログラム42は、例えば、印刷指示に含まれる印刷設定を示す情報を汎用印刷プログラム41から受け取り、その一部を編集して汎用印刷プログラム41に返しても良い。
【0039】
補助プログラム42は、A04にて汎用印刷プログラム41から実行指示を受け取ると、印刷実行判断処理を実行する(A05)。印刷実行判断処理は、汎用印刷プログラム41から実行指示を受け付けた印刷について、実行するか、キャンセルするかを判断する処理である。
【0040】
A05にて実行される印刷実行判断処理の手順について、図4のフローチャートを参照して説明する。この印刷実行判断処理は、補助プログラム42の処理であり、PC1のCPU11によって実行される。印刷実行判断処理では、CPU11は、まず、制限機能の有効無効の情報が含まれる機能情報21を取得する(S1)。S1は、管理情報取得処理の一例である。
【0041】
例えば、CPU11は、通信IF14を介して、印刷指示にて選択されているプリンタ2に機能情報21の送信を要求する。CPU11は、プリンタ2がその要求に応じて出力した機能情報21を通信IF14を介して受信すると、メモリ12に記憶する。
【0042】
なお、CPU11は、管理装置3から機能情報21を取得してもよい。例えば、CPU11は、通信IF14を介して、プリンタ2の識別情報を管理装置3に送信する。管理装置3は、PC1からプリンタ2の識別情報を受信すると、そのプリンタ2の識別情報に関連付けられた機能情報21を機能情報管理DB31から抽出し、PC1に送信する。CPU11は、通信IF14を介して、管理装置3から送信された機能情報21を受信し、メモリ12に記憶する。
【0043】
CPU11は、S1にて機能情報21の取得に成功したか否かを判断する(S3)。例えば、プリンタ200のように、制限機能を有していないプリンタは、機能情報21を有していない。そのようなプリンタ200が選択されている場合、CPU11は、機能情報21の取得に失敗する(S3:NO)。このような場合、利用制限を行っておらず、誰でも任意の機能を利用できると想定されるので、CPU11は、印刷実行と判断し(S25)、図3の処理に戻る。
【0044】
一方、図4に示すように、CPU11は、機能情報21の取得に成功した場合(S3:YES)、S1にて取得した機能情報21に含まれる、制限機能の有効無効を示す情報が、有効を示すか否かを判断する(S5)。例えば、CPU11は、取得した機能情報21が制限機能の無効を示す情報を含む場合(S5:NO)、利用制限を行っておらず、無条件に印刷できるので、印刷実行と判断し(S25)、図3の処理に戻る。
【0045】
図4に示すように、CPU11は、取得した機能情報21が制限機能の有効を示す情報を含む場合(S5:YES)、ユーザIDを取得する(S7)。S7は、識別情報取得処理の一例である。例えば、CPU11は、ユーザIF13を介して、ユーザIDを入力するための識別情報入力画面を表示し、ユーザIDの入力操作を受け付ける。つまり、CPU11は、ユーザIDをユーザの手入力により取得する。なお、CPU11は、OS21に登録されたログインユーザのアカウントをユーザIDとしてOS21から自動取得してもよい。
【0046】
CPU11は、ユーザIDを取得できなければ、印刷をキャンセルしてもよい。また、CPU11は、OS21からユーザIDを自動で取得できなかった場合、識別情報入力画面をユーザIF13に表示させ、ユーザIDの入力を自動から手動に切り替えてもよい。また、ユーザIDをOS21から自動で取得した場合、CPU11は、自動取得したユーザIDをユーザに確認させてもよい。この場合、ユーザIDを確認するタイミングでユーザIDを変更可能としてもよい。
【0047】
ユーザIDを取得したCPU11は、ユーザIF13を介して、図5に示す印刷設定画面110を表示する(S9)。印刷設定画面110は、印刷設定の入力操作を受け付ける画面であり、例えば、設定領域111と、確定ボタン112と、キャンセルボタン113とを含む。設定領域111には、印刷設定項目ごとに設定値を設定する設定欄が設けられている。各項目の設定値には、図3のA04にて汎用印刷プログラム41から実行指示と共に受け取った印刷設定が表示されている。CPU11は、ユーザIF13を介して印刷設定画面110に表示される各項目の設定値を手動で変更する操作を受け付ける。印刷設定画面110に表示される項目は、利用条件に対応する項目を含み、汎用印刷プログラム41では対応できない項目を含んでいてもよい。後述の判定(S17)の前に印刷設定画面110を表示することで、汎用印刷プログラム41では対応できないプリンタ2に特有の印刷設定を受け付けることができ、さらに当該固有の印刷設定についても機能制限を設けることができる。
【0048】
図4に示すように、CPU11は、印刷設定を確定するかキャンセルするかを判断する(S11)。CPU11は、図5に示す印刷設定画面110のキャンセルボタン113がユーザIF13を介して操作された場合(S11:キャンセル)、印刷キャンセルと判断し(S27)、図3の処理に戻る。
【0049】
これに対して、CPU11は、図5に示す印刷設定画面110の確定ボタン112がユーザIF13を介して操作された場合、図4に示すように、印刷設定を確定すると判断し(S11:確定)、利用条件を取得する(S13)。S13は、利用条件取得処理の一例である。例えば、CPU11は、確定された印刷設定にて選択されているプリンタ2に、利用条件の送信を要求する。要求には、S7にて取得したユーザIDが付されている。要求を受信したプリンタ2は、当該要求と共に受信したユーザIDに対応付けられた利用条件を利用条件DB23から抽出して、PC1に送信する。CPU11は、プリンタ2から送信された利用条件を通信IF14を介して受信し、メモリ12に記憶する。
【0050】
なお、CPU11は、管理装置3から利用条件を取得してもよい。例えば、CPU11は、確定された印刷設定からプリンタ2の識別情報を抽出し、抽出したプリンタ2の識別情報とS7にて取得したユーザIDとを通信IF14を介して管理装置3に送信する。管理装置3は、プリンタ2の識別情報を受信すると、利用条件管理DB33にてプリンタ2の識別情報に関連付けられた利用条件DB23を特定する。そして、特定した利用条件DB23に、受信したユーザIDを照合し、当該ユーザIDに関連付けられた利用条件を抽出する。そして、管理装置3は、抽出した利用条件をPC1に送信する。CPU11は、管理装置3から送信された利用条件を通信IF14を介して受信し、メモリ12に記憶する。
【0051】
CPU11は、利用条件の取得に成功したか否かを判断する(S15)。CPU11は、利用条件の取得に失敗した場合(S15:NO)、利用条件を用いて印刷の可否を判断できないので、印刷キャンセルと判断し(S27)、図3の処理に戻る。
【0052】
図4に示すように、CPU11は、利用条件の取得に成功した場合(S15:YES)、プリンタ2での印刷の実行可否を判定する(S17)。S17は判定処理の一例である。S17では、CPU11は、S13にて取得した利用条件と、S11にて確定された印刷設定とを照合し、確定した印刷設定に従ってプリンタ2での印刷が実行可能か否かを判定する。
【0053】
CPU11は、プリンタ2での印刷が実行可と判定されたか否かを判断する(S19)。CPU11は、確定した印刷設定が利用条件を全て満たし、プリンタ2での印刷が実行可と判定された場合(S19:YES)、印刷実行と判断し(S25)、図3の処理に戻る。例えば、汎用印刷プログラム41から実行指示と共に受け取った印刷設定(S9により表示される印刷設定画面110を介して変更を受け付けていない印刷設定)が、利用条件を全て満たす場合、CPU11は、印刷実行と判断する。あるいは、汎用印刷プログラム41から実行指示を共に受け取った印刷設定が、最初にS17の判定処理を行う前に印刷設定画面110を介して編集され、その編集された印刷設定が利用条件を全て満たす場合、CPU11は、印刷実行と判断する。
【0054】
これに対して、図4に示すように、CPU11は、確定した印刷設定が利用条件の何れかを満たさず、プリンタ2での印刷が実行不可と判定された場合(S19:NO)、印刷不可通知画面をユーザIF13に表示させる(S21)。S21は、通知処理の一例である。
【0055】
例えば図6に示すように、ユーザIF13に表示される印刷不可通知画面130は、利用条件に基づく情報を表示する第1表示欄131と、利用条件を満たさない項目に関する情報を表示する第2表示欄133とを含む。さらに、印刷不可通知画面130は、設定変更ボタン135と、キャンセルボタン136とを含む。印刷不可通知画面130は、印刷実行ボタンを含まないので、利用条件を満たさない状態で印刷が実行されることを回避できる。
【0056】
例えば、ユーザCが、プリンタ2を用いて、100ページ分の原稿について、図5に示すように、印刷設定画面110の印刷範囲の項目に「すべて」が設定され、カラー/モノクロの項目にカラーが設定され、トナーセーブの項目に「ON」が設定された状態で、確定ボタン112を操作したとする。図2に示すように、ユーザCは、カラー/モノクロに「モノクロ」が設定され、カラー印刷の利用が制限されている。また、ユーザCは、印刷枚数が80枚に制限されており、100ページ分の印刷を実行できない。さらに、ユーザCは、利用条件に含まれるトナーセーブに「ON」と「OFF」が設定され、トナーセーブが設定されていない印刷を利用できる。よって、ユーザCが設定した印刷設定は、印刷枚数とカラー/モノクロの設定がユーザCの利用条件を満たしていないので、当該印刷設定に基づく印刷をプリンタ2で実行できない。
【0057】
CPU11は、この判定結果に基づいて印刷不可通知画面130を生成し、ユーザIF13に表示させる。すなわち、CPU11は、S7にて取得したユーザIDに対応するユーザ名「C」を、第1表示欄131のログイン名の欄に表示させ、ユーザCについての情報が表示されていることを通知する。そして、CPU11は、第1表示欄131のPC印刷の欄に「印刷不可」を表示させ、現在の設定ではプリンタ2で印刷できないことを通知する。
【0058】
さらに、CPU11は、S13にて取得した利用条件に基づく情報を第1表示欄131に表示し、ユーザCがどのようにプリンタ2の利用を制限されているか通知する。例えば、CPU11は、印刷枚数制限の欄に「ON」と「最大80枚」を表示し、印刷枚数が制限され、最大80枚まで印刷できることを通知する。また、CPU11は、印刷残ページの欄に「0ページ」を表示し、印刷枚数が制限を超過しているために1枚も印刷できないことを通知する。なお、例えば印刷枚数が80枚に制限されている場合に、50ページ分の印刷を行うときは、あと30枚印刷可能なので、CPU11は印刷残ページの欄に「30ページ」と表示する。
【0059】
また例えば、CPU11は、カラー印刷の欄に「不許可」を表示し、カラー印刷を利用できないことを通知する。また例えば、CPU11は、第1表示欄131のトナーセーブOFF印刷の欄に「許可」を表示し、トナーセーブが設定されていない印刷を利用できることを通知する。
【0060】
また、CPU11は、利用条件を満たしていない印刷枚数とカラー/モノクロについて、第2表示欄133に表示する。例えば、第2表示欄133には、「印刷枚数が超過しています。」や、「カラー印刷できません。」など、利用条件を満たさない項目を知らせるメッセージが表示される。
【0061】
ユーザCは、第2表示欄133の表示内容から変更が必要な項目を把握できる。また、ユーザCは、第1表示欄131の表示内容からどのような設定なら、利用条件を満たし、プリンタ2での印刷が可能になるかを把握できる。
【0062】
例えば、ユーザCは、モノクロ印刷をしたくない場合、図6に示す印刷不可通知画面130のキャンセルボタン136をユーザIF13を介して操作する。この場合、CPU11は、図4に示すように、キャンセル指示を受け付けて(S23:キャンセル指示)、印刷キャンセルと判断し(S27)、図3の処理に戻る。よって、ユーザCの意に反した印刷が回避される。
【0063】
一方、例えば、ユーザCは、現在の印刷設定を変更したい場合、図6に示す印刷不可通知画面130の設定変更ボタン135をユーザIF13を介して操作する。CPU11は、図4に示すように、設定変更指示を受け付けると(S23:設定変更指示)、S9に戻り、印刷設定画面110を再表示する。S23、S9による処理は、変更処理の一例である。再表示される印刷設定画面110には、図5に示すように、直近に確定された印刷設定が表示されている。例えば、ユーザCは、印刷不可通知画面130の第1表示欄131と第2表示欄133の表示に従い、図7に示すように、印刷範囲の設定を「すべて」から「ページ指定」に変更し、指定範囲を「1-50」に、ユーザIF13を介して変更する。また、ユーザCは、ユーザIF13を介して、カラー/モノクロの設定を「カラー」から「モノクロ」に変更する。その後、ユーザCは、ユーザIF13を介して確定ボタン112を操作する。
【0064】
すると、図4に示すように、CPU11は、確定指示を受け付け(S11:YES)、変更後の印刷設定と利用条件とを照合して、プリンタ2での印刷が実行可か否かを判定する(S17)。なお、印刷設定が変更された後のS13の処理は、ユーザが同じなので、省略してもよい。
【0065】
CPU11は、変更後の印刷設定が利用条件を全て満たし、S17にて実行可と判定された場合(S19:YES)、変更後の印刷設定が利用条件を全て満たすので、CPU11は、印刷実行と判断し(S25)、図3に戻る。
【0066】
これに対して、変更後の印刷設定が利用条件を満たさず、S17にて実行不可と判定された場合(S19:NO)、CPU11は、その判定を反映した印刷不可通知画面を再表示する(S21)。CPU11は、印刷不可通知画面の設定変更ボタンの操作により変更指示を受け付けると(S23:設定変更指示)、印刷設定画面を再々表示し(S9)、印刷設定の変更を再度受け付ける。このように、補助プログラム42は、印刷設定が利用条件を満たすまで印刷設定の変更を受け付けることで、プリンタ2を利用できる可能性を高くすることができる。
【0067】
図3に示すように、補助プログラム42は、A05の印刷実行判断処理にて、印刷実行と判断した場合(alt:印刷実行)、印刷データを生成する(A11)。具体的に、補助プログラム42は、A04にて汎用印刷プログラム41から受け取った実行指示に基づいて、中間画像データに基づくラスタライズを行い、印刷対象の画像を示す印刷データを生成する。印刷データは、A04にて汎用印刷プログラム41から受け取った印刷設定、あるいは、図4のS23、S9にてユーザIF13に表示される印刷設定画面110を介して変更された印刷設定であって、ユーザに設定された利用条件を満たす印刷設定を用いて、中間画像データをラスタライズしたものである。ここで生成される印刷データは、プリンタ2にて印刷に使用できる形式のデータであり、例えば、プリンタ2のモデルに専用のPDLデータである。
【0068】
なお、補助プログラム42がA11にて印刷データを生成する代わりに、汎用印刷プログラム41が印刷データの生成を行っても良い。つまり、汎用印刷プログラム41は、A03にて生成した中間画像データをラスタライズして印刷データを生成してもよい。補助プログラム42は、汎用印刷プログラム41にて生成された印刷データを受け取り、変更後の印刷設定に基づいて印刷データを編集してもよい。
【0069】
汎用印刷プログラム41によって生成される印刷データは、各種のプリンタにて印刷に使用できる形式の印刷データであり、例えば、PWGRasterデータ、または、PDFデータである。汎用印刷プログラム41によってラスタライズするとすれば、補助プログラム42の処理が少なく、処理増大の回避が見込まれ、また、補助プログラム42のプログラムサイズが抑えられる。なお、汎用印刷プログラム41は、中間画像データを介さず、印刷指示に含まれる画像データから印刷データを生成できる場合には、中間画像データを生成しなくてもよい。
【0070】
補助プログラム42は、A11にて印刷データを生成すると、生成した印刷データと、印刷実行を指示するコマンドと、ユーザIDと、印刷データの生成に使用した印刷設定と、をプリンタ2に送信する(A12)。この場合、補助プログラム42は、汎用印刷プログラム41に印刷ジョブを送信したことを示す終了通知を渡す(A13)。
【0071】
印刷データを受信したプリンタ2は、印刷データと共に受信したユーザIDと印刷設定とを取得し(A21)、判定処理を行う(A22)。すなわち、プリンタ2は、取得したユーザIDに対応する利用条件を利用条件DB23から抽出し、取得した印刷設定と抽出した利用条件とを照合し、取得した印刷設定で印刷を行えるか否かを判定する。
【0072】
プリンタ2は、A22の判定処理にて、受信した印刷設定が抽出した利用条件を全て満たし、印刷可と判定した場合、印刷を実行する(A23)。このように、プリンタ2でも判定処理を行うことで、例えば、図3のA05あるいは図4に示される印刷実行判断処理を有さない他のPCからの印刷データを受信した際にも、プリンタ2は自前で利用条件に応じた印刷を行うことができる。
【0073】
なお、印刷データのプリンタ2への送信は、汎用印刷プログラム41が行ってもよい。つまり、補助プログラム42は、生成した印刷データを、プリンタ2を送信先としてPC1から送信されるように、汎用印刷プログラム41に渡してもよい。この場合、汎用印刷プログラム41は、補助プログラム42から受け取った印刷データをプリンタ2に送信する。本形態において、補助プログラム42がプリンタ2に印刷データを送信することも、印刷データをプリンタ2に送信するために補助プログラム42が汎用印刷プログラム41に印刷データを渡すことも、「印刷指示についての印刷ジョブをプリンタに送信するための処理」の一例である。
【0074】
A05の印刷実行判断処理にて、印刷キャンセルと判断した場合(alt:印刷キャンセル)、つまり、図4に示すように、印刷設定画面を介して印刷がキャンセルされたり(S11:NO)や、利用条件の取得に失敗したり(S15:NO)、印刷不可通知画面を介して印刷がキャンセルされたりすることで(S23:キャンセル指示)、印刷キャンセルとCPU11が判断した場合(S27)、補助プログラム42は、印刷ジョブをキャンセルする情報を汎用印刷プログラム41に渡す(A31)。利用条件の取得に失敗した場合に印刷ジョブをキャンセルすることで、補助プログラム42が利用を制限した印刷ジョブについて、さらにプリンタ2でも印刷を制限するなど、プリンタ2での無駄な処理を回避できる。S15、S27及びA31により行う処理は、キャンセル処理の一例である。
【0075】
なお、補助プログラム42は、A05の印刷実行判断処理にて印刷実行と判断した場合のみ、つまり、図4のS17にてプリンタ2での印刷が実行可と判定された場合のみ、印刷ジョブを出力する。つまり、プリンタ2が有する機能の利用可否は、図3のA05あるいは図4のS17の処理により、補助プログラム42にて判定済みである。そこで、図3のA21~A22の処理は、省略してもよい。この場合、補助プログラム42は、プリンタ2に送信する印刷データに、制限機能の実行を省略する省略コマンドを付してもよい。省略コマンドを受信したプリンタ2は、直ちに、A23に示す印刷を実行する。
【0076】
以上、詳細に説明したように、本形態の補助プログラム42は、汎用印刷プログラム41に対する印刷指示があった際に、補助プログラム42によって、ユーザIDとそのユーザIDに対応する利用条件とを取得し、取得した両者に基づいてプリンタ2での印刷の実行可否を判定し、その判定結果をユーザIF13を介して通知する。これにより、ユーザは、プリンタ2での印刷が行われる前に、PC1においてプリンタ2での印刷の実行可否を把握できる。
【0077】
なお、本明細書に開示される実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、PC1に接続されるプリンタの数は、図示の例に限らず、2台以上でも良い。
【0078】
例えば、CPU11は、図4のS17にてプリンタ2での印刷が実行可と判定した場合に(alt:実行可)、ユーザに設定された利用条件を満たさない設定項目がないことや、印刷設定に基づいて印刷が実行されることを、通知してもよい。通知は、ユーザIF13を介して行ってもよいし、音声等で行ってもよい。
【0079】
例えば、図4のS1~S5を省略し、補助プログラム42は、汎用印刷プログラム41から実行指示を受け取った場合は、常に、S7以降の処理を行ってもよい。ただし、制限機能の有効を示す情報を含む機能情報21を取得しない場合には、印刷設定と利用条件とを照合してプリンタ2での印刷の可否を判定する必要がないため、補助プログラム42は、S7以降の処理を省略することで、PC1の処理負荷を軽減できる。
【0080】
また、図6に示す印刷不可通知画面130に設定変更ボタン135を設け、印刷が実行不可と判定された場合に印刷設定画面110をユーザIF13に再表示して、印刷設定の変更を受け付けるようにすることで(図4のS23:設定変更指示、S9)、利用条件を満たすような印刷設定の変更が期待でき、プリンタ2を利用できる可能性が高まる。また、変更後の印刷設定に基づいて再度判定し、プリンタ2での印刷が実行可と判定されるまで印刷設定の変更を受け付けることで(図4のS17)、プリンタ2を利用できる可能性がより高まる。
【0081】
また例えば、補助プログラム42は、プリンタ2に対して設定される複数のユーザ(図2のユーザA~D)の利用条件を取得し、メモリ12に記憶する記憶処理を実行してもよい。記憶処理を実行するタイミングは、図4に示すS17の処理より前であれば、いつでもよい。つまり、図3のA04にて補助プログラム42が汎用印刷プログラム41から実行指示を受け取る前でもよいし、図4のS7にてユーザIDを取得する前でもよいし、S11にて印刷設定を確定する前でもよい。補助プログラム42は、S7にてユーザIDを取得した後、メモリ12に記憶した利用条件に取得したユーザIDを照合し、取得したユーザIDに対応付けられた利用条件を取得してもよい。そして、その取得した利用条件に基づいてS17の処理を行う。このように、補助プログラム42は、あらかじめ複数のユーザの利用条件を取得しておき、印刷指示があった際に、あらかじめ取得しておいた利用条件の中から適切な利用条件を抽出することで、印刷指示があった後に利用条件を取得する場合と比較して、利用条件を早期に取得し易くなる。また、PC1が印刷指示を受け付けてから、プリンタ2による印刷が完了するまでの時間を短くできる。
【0082】
また例えば、図4のS15を省略し、利用条件の取得に失敗した場合に、印刷指示に基づく印刷をキャンセルしなくてもよい。
【0083】
例えば、補助プログラム42は、汎用印刷プログラム41から実行指示を受け取った後、最初の判定処理を行う前に、印刷設定画面を表示せず、実行指示に付された印刷設定に基づく判定処理を行ってもよい。
【0084】
例えば、上記形態では、プリンタ2が有する機能情報21及び利用条件DB23と同じ情報を、管理装置3の機能情報管理DB31と利用条件管理DB33にプリンタ2の識別情報に関連付けて記憶した。これに対して、機能情報21と利用条件DB23は、プリンタ2のみが有し、プリンタ2と管理装置3とが接続していない、もしくは、管理装置3が機能情報管理DB31や利用条件管理DB33を有していない構成であってもよい。この場合、補助プログラム42は、制限機能の有効無効を示す情報を含む機能情報21や、ユーザに設定された利用条件を、常にプリンタ2から取得することとなり、そのプリンタ2での最新の利用条件の取得が期待できる。また、制限機能の有効無効を示す情報を含む機能情報21や、ユーザに設定された利用条件は、プリンタ2では有しておらず、管理装置3のみで管理してもよい。この場合、複数のプリンタで共通の利用条件を利用できる。また、制限機能に対応していないプリンタでも、補助プログラム42が管理装置3から取得した利用情報を用いて、図4のS17における判定を実行し、補助プログラム42にてユーザが印刷時に利用できる機能を利用条件に従って制限することが可能になる。また、機能情報21をプリンタ2と管理装置3との一方が有し、利用条件をプリンタ2と管理装置3との他方が有する構成でもよい。
【0085】
また例えば、実施の形態では、補助プログラム42の動作として、印刷動作のみを詳細に記載しているが、補助プログラム42は、さらに他の役割を有していても良い。また、本形態の処理を実行するプログラムは、補助プログラム42に限らず、汎用印刷プログラム41を用いた印刷を行う際に、OS21または汎用印刷プログラム41から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフロー アプリ(Print workflow)でも良い。
【0086】
また、補助プログラム42の実行タイミングは、実施の形態の例に限らない。例えば、OS21から直接実行指示を受け付けても良いし、常駐される補助プログラム42であっても良い。常駐される場合には、補助プログラム42は、実行命令を受けて前述した動作を行うとすれば良い。
【0087】
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
【0088】
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
【符号の説明】
【0089】
1 PC
2 プリンタ
11 CPU
12 メモリ
13 ユーザIF
21 OS
41 汎用印刷プログラム
42 補助プログラム
43 編集アプリ
図1
図2
図3
図4
図5
図6
図7