JP5642143B2 - 情報処理装置、方法、制御プログラム - Google Patents

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

Info

Publication number
JP5642143B2
JP5642143B2 JP2012268297A JP2012268297A JP5642143B2 JP 5642143 B2 JP5642143 B2 JP 5642143B2 JP 2012268297 A JP2012268297 A JP 2012268297A JP 2012268297 A JP2012268297 A JP 2012268297A JP 5642143 B2 JP5642143 B2 JP 5642143B2
Authority
JP
Japan
Prior art keywords
function
instruction
printer
always
print setting
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.)
Active
Application number
JP2012268297A
Other languages
English (en)
Other versions
JP2013054778A5 (ja
JP2013054778A (ja
Inventor
章弘 三井
章弘 三井
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 JP2012268297A priority Critical patent/JP5642143B2/ja
Publication of JP2013054778A publication Critical patent/JP2013054778A/ja
Publication of JP2013054778A5 publication Critical patent/JP2013054778A5/ja
Application granted granted Critical
Publication of JP5642143B2 publication Critical patent/JP5642143B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、プリンタドライバを含む印刷制御プログラムに関するものである。
情報処理装置の一例であるコンピュータ上で作成された文書や図といったファイルをアプリケーションから印刷する際には、プリンタドライバを使って描画データをプリンタ言語に変換しプリンタに送信することが行われる。用紙の種類や両面、カラー、給紙段といった設定は、アプリケーションもしくはプリンタドライバが提供するユーザインタフェースの印刷設定で、ユーザが設定したデータをプリンタコマンドとしてプリンタに送信する。
プリンタドライバが持つ機能は年々増加する一方である。また、数百個の機能を持つプリンタドライバも少なくない。また、プリンタドライバの印刷設定を行うユーザインタフェースは、ユーザインタフェースからボタンを押して、さらに開くダイアログウィンドウが複数存在する。よって、これらのウィンドウのどこで所望の設定ができるのか迷うユーザも多い。そこでプリンタドライバは、ユーザのために機能の禁則処理(コンフリクト処理)を持っている。機能の禁則処理とは、ある機能を選択したときに、他の機能が使えなくなったり、他の設定値が変更されることを指す。たとえば多くのプリンタドライバでは、「はがき」と「ステイプル」を同時に設定することはできない。このとき、「はがき」を選択すると、プリンタドライバのユーザインタフェース上の「ステイプル」項目はグレーアウトしたり(特許文献1)する。また、設定することが出来ない項目の表示が隠れて選択することができなくなったり、その項目が選択できないという意味のアイコンを表示したりする(特許文献2)。また、設定することが出来ない項目についての警告としてメッセージが表示されたり(特許文献3)する。
また、プリンタドライバの禁則処理はユーザインタフェース上の表示だけではない。アプリケーションソフトウェアによっても印刷設定は変更することができる。しかし、アプリケーションからの禁則状態にある設定がそのままプリンタドライバに渡される場合がある。この場合、プリンタドライバがその設定をプリンタコマンドに変換してしまうと、プリンタでエラーになってしまう。そこでプリンタドライバは、印刷する際にも機能の禁則処理を行い、印刷設定を変更して印刷可能な値にしている。
一方で、セキュリティ意識の高まりやコストの削減などから、印刷設定の特定機能を固定したいという要求がある。たとえば、カラー機のプリンタでモノクロ印刷固定にすれば、印刷にかかるトナーやインクのコストを削減できる。また、1つのページに2ページ分を縮小して印刷する2Up印刷や、両面印刷を固定にすると、用紙が節約できる。
しかし、値を固定する機能は、禁則処理とは相容れないことが多い。たとえば、両面印刷を固定にすると、両面できない用紙を選択したときにどのように禁則すればいいかという問題が発生する。従来では、プリンタドライバ自体をカスタマイズしてしまい、まったく別の専用ドライバを作成するといった方法が一般的であった。しかし、それではユーザの要望ごとにプリンタドライバを作成しなければならない。このため、外部のプラグインから新しい禁則処理ルールを追加することが考えられた(特許文献4)。さらに、可能な限り固定の設定を行ってみて禁則処理によって設定を変更できるときは印刷設定を変更する(特許文献5)などの方法があった。現在持っている禁則処理ルールと逆の禁則処理ルールを自動補完する技術が存在する。
また、開発者は、ある機能名に対して、ONとなるすべてのルールを記述し、上記したとおり、OFFとなるルールを省略することができる。OFFとなるルールは推論エンジン302により自動生成される。逆に、開発者は、ある機能名に対して、OFFとなるすべてのルールを記述し、上記したとおり、ONとなるルールを省略することができる。ONとなるルールは推論エンジン302により自動生成される。開発者は、ある機能名に対して、ONとなるルール、OFFとなるルールのすべてを記述することもできる。この場合ルールは自動生成されない。左辺に機能名(ON)、機能名(OFF)の形式で記述された項に対して、右辺に項目を記述する場合には、左辺と同一のON/OFF形式にする。この場合にルールが自動生成される(特許文献6)。
特開2003−99170 特開2000−227847 特開2000−225754 特開2005−190467 特開2007−272779 特開2002−169669
複数の機能から選択された機能を常に有効とするか否かの指示を受け付ける受付画面を表示する第1表示手段と、前記選択された機能を常に有効とする指示を前記受付画面を介して受け付ける指示手段と、前記選択された機能を常に有効とする指示を受け付けた場合、前記選択された機能について有効から無効への変更を受け付けない印刷設定画面を表示する第2表示手段とを有し、前記複数の機能には、データをプリンタに保存する機能が含まれ、前記受付画面は、プリンタドライバにより提供される必要があった。
または、印刷設定画面を表示する設定画面表示手段と、複数の機能から選択された機能を常に有効とする指示を受け付ける受付画面を表示する受付画面表示手段と、前記選択された機能を常に有効にする指示を受け付ける受付手段を有し、前記選択された機能を常に有効にする指示が受け付けられた状態で表示される前記印刷設定画面は、前記選択された機能について有効から無効への変更を受け付けない印刷設定画面であり、前記複数の機能は、少なくともデータをプリンタに保存する機能を含み、前記受付画面はプリンタドライバにより提供される必要があった。
本願は上記課題の少なくとも一つを鑑みてなされたものである。
データをプリンタに保存する機能と前記機能と異なる機能とを含む複数の機能から選択された機能を常に有効とするか否かの指示を受け付ける受付画面を表示する第1表示手段と、前記選択された機能を常に有効とする指示を前記受付画面を介して受け付ける指示手段と、前記選択された機能を常に有効とする指示を受け付けた場合、前記選択された機能について有効から無効への変更を受け付けない印刷設定画面を表示する第2表示手段とを有し、前記データをプリンタに保存する機能を常に有効とする指示を受け付けた場合、前記データをプリンタに保存する機能が常に有効とされていることを示す情報が前記印刷設定画面に表示され、前記受付画面は、プリンタドライバにより提供されることを特徴とする。
本発明によれば、設定値を固定化しつつ、プリンタの禁則処理にしたがって印刷を行うことが可能であることから、管理者が確実に印刷設定を管理することが可能になるという効果がある。
本発明の一実施形態としての、コンピュータシステムのハードウェアとソフトウェアのブロック構成図である。 本発明の一実施形態としての、XPSDrv印刷システムのブロック構成図である。 本発明の一実施形態としての、実施例1におけるコンフィギュレーションモジュールのブロック構成図である。 本発明の一実施形態としての、実施例1における機種依存ファイルに含まれるXMLファイルのフォーマットの一部である。 本発明の一実施形態としての、実施例1における禁則エンジンの禁則処理を行うロジックのフローチャートである。 本発明の一実施形態としての、実施例1におけるロック機能を指定するユーザインタフェース画面の一部である。 本発明の一実施形態としての、実施例1におけるロック機能が指定された印刷設定画面である。 本発明の一実施形態としての、実施例1における機種依存ファイルに含まれるXMLファイルにおいて、ロック機能を有効にした一部のXMLである。 本発明の一実施形態としての、実施例2におけるコンフィギュレーションモジュールのブロック構成図である。 本発明の一実施形態としての、実施例2における機種依存ファイルであるGPDファイルの一部である。 本発明の一実施形態としての、実施例2におけるコンフィギュレーションモジュールの禁則処理のフローチャートである。 本発明の一実施形態としての、実施例2における機種依存ファイルでロック機能を有効にした一部のGPDである。 本発明の一実施形態としての、印刷設定のバイナリDEVMODE構造体である。 本発明の一実施形態としての、印刷設定のPrintTicketのXMLである。 本発明の一実施形態としての、XPSスプールファイルのブロック図である。
(実施例)
以下、本発明を実施するための最良の形態について図面を用いて説明する。
図1は本発明の一実施形態を示す印刷処理システムのブロック構成図である。なお、特に断らない限り、本発明の機能が実行されるのであれば、単体の機能であっても、複数の機器からなるシステムであっても、LAN、WAN等のネットワークを介して接続がなされ処理が行われるシステムであっても、本発明を適用できることは言うまでもない。
図1において、コンピュータを用いたシステムのブロック構成図を示す。CPU101はROM102あるいはRAM103あるいは外部記憶装置105に格納されたプログラムに従って装置全体の制御を行う。RAM103はCPU101が各種処理を行う際のワークエリアとしても使用される。記憶装置105はオペレーティングシステム(OS)1054やアプリケーションソフト1051等を記録する。キーボードやマウスなどの入力機器は、入力I/F104を通じて、ユーザがコンピュータに対して各種指示を与えるためのデバイスである。出力I/F106は、データを外部に出力するためのインタフェースであり、モニタ110やプリンタ111に対してデータを出力する。プリンタ111とは直接接続されるローカルI/Oのみならず、LANやWANといったネットワークを通して接続されていてもよい。また、107は共通データバスで、それぞれのデータのやりとりを行う。図2、図3、図9のモジュールは図1の記憶装置105にプリンタドライバ1053として記憶されており、CPU101がRAM103に展開して実行する。
図2では、XPSDrv印刷システムのブロック構成図を示す。XPSDrvとはXPS(XML Paper Specification)と呼ばれる文書ファイルフォーマットをスプールデータとして使用し、印刷を行うプリンタドライバのことを指す。ユーザはキーボードやマウスなどといった入力装置104を使用して、出力装置105のモニタに映し出されたWin32アプリケーションプログラム201(以下、Win32アプリと略す)、もしくはWindows(登録商標) Presentation Foundationアプリケーションプログラム202(以下、WPFアプリと略す)から印刷処理を実行する。印刷処理はプリンタの選択、印刷設定の作成、描画データの変換と3つの処理を順番に行うことで実行する。図2の201乃至213,215は図1の外部記憶装置105に記憶される。
まずは、印刷したいプリンタ214の選択をする、これは、印刷を実行するプリンタに対応したプリンタドライバを選択することと同義である。次に印刷設定を作成する。印刷設定はアプリケーションが印刷設定用のメモリを確保し、アプリケーションかプリンタドライバのコンフィギュレーションモジュール204が、機種依存ファイル205を利用して設定データを埋めるという形で行われる。Win32アプリ201では印刷設定データとしてバイナリのDEVMODE構造体215を用い、WPFアプリ202ではマークアップ言語のXMLで記載されたPrintTicket203を用いる。DEVMODE構造体215は図13の構造を持っており、オペレーティングシステムが定義するPublic領域とプリンタドライバが独自で定義するPrivate領域を持つバイナリの構造体である。また、PrintTicket203は、図14にあるようなXML形式で記述された印刷設定情報である。このDEVMODE構造体215もしくはPrintTicket203が印刷設定を保持しており、アプリケーションが直接書き換えることで印刷設定を変更する。プリンタ214に依存した専用の設定は、コンフィギュレーションモジュール204が持つプリンタドライバのユーザインタフェースを表示し、ユーザがユーザインタフェースを操作することで行う。プリンタドライバは、ユーザインタフェースの設定に従い、DEVMODE構造体215もしくはPrintTicket203のプリンタ214に依存した設定を変更する。印刷設定とは具体的に、出力する用紙サイズを「A4」にする、両面印刷を行う、カラーとモノクロを切り替える、給紙段を指定するなどといった設定のことを指す。PrintTicket203は印刷設定がXML形式で記述されているので、WPFアプリ202がすべての設定値を直接変更して書き換えることは容易だが、従来のようにプリンタドライバのユーザインタフェースを使って設定変更してもかまわない。
最後に描画データの変換を行う。印刷設定が確定したら、ユーザはアプリケーションから印刷処理を実行する。Win32アプリ201から印刷する場合は、バージョン3プリンタドライバの形態を取るGDItoXPS変換モジュール206に描画データが送られ、XPSスプールファイル207が作成される。バージョン3プリンタドライバとは、Microsoft(登録商標)のWindows(登録商標)2000以降に対応したプリンタドライバのことを指す。このときGDItoXPS変換モジュール206はコンフィギュレーションモジュール204を呼び出し、印刷設定をDEVMODE構造体215からPrintTicket203に変換する。WPFアプリ202から印刷する場合は、XPSファイルをWPFアプリ自身が生成するのと、オペレーティングシステムがWPFアプリからの命令に応じてXPSファイルを生成するのと2通りの方法があるが、どちらもXPSスプールファイル207を生成する。このようにXPSDrv印刷システムは、印刷時に必ずXPSスプールファイル207を生成するのが特徴である。
XPSスプールファイル207が生成されたら、プリントフィルタパイプラインプロセスに処理が渡される。プリントフィルタパイプラインプロセスは複数のフィルタを通すことで印刷が行われる仕組みで、フィルタコンフィギュレーションファイル208でフィルタの数や順番を制御する。プリントフィルタパイプラインプロセスで動作するフィルタパイプラインマネージャはフィルタコンフィギュレーションファイル208に従って、この実施例では設定フィルタ209、レイアウトフィルタ210、レンダラフィルタ211の順に処理を行う。処理はXPSスプールファイル207をフィルタに受け渡すことで行われ、フィルタがそれぞれXPSスプールファイル207を加工し次のフィルタに渡していくことで処理が進む。最後にはプリンタが理解できるデータ言語であるプリンタ制御言語(以下、PDL(Page Description Language)と略す)となって出力される。もちろんプリンタ214がXPSスプールファイル207を直接読み込めるのであれば、そのままでもよい。設定フィルタ209ではPrintTicketを読み込んで印刷に必要なデータをPrintTicketに書き込む処理を、レイアウトフィルタ210では倍率の変更や製本の面付けレイアウトやスタンプなどレイアウトに関する処理を行う。レイアウトフィルタ210では、XPSスプールファイル207に含まれる印刷設定PrintTicket203に従って動作するため、たとえば面付けの設定がPrintTicket203に存在しないときは、レイアウトフィルタ210は何も動作せずスルーして、次のフィルタにXPSスプールファイル207をそのまま渡す。最後のレンダラフィルタ211では、XPSスプールファイル207をレンダリングしてPDLに変換する。PDLデータは印刷処理のスケジュール管理を行うプリントマネージャ212で管理され、キュー(待ち行列)に印刷ジョブが次々と登録される。プリンタ214が印刷できる状態になったら、キューに登録した順にPDLデータをI/Oモニタ213を通して送信する。このようにして、アプリケーションからの印刷データをプリンタ言語に変換することがプリンタドライバの主な役目であり、実際の印刷処理が行われる。
図3は本実施例におけるプリンタドライバのコンフィギュレーションモジュール204のブロック図である。コンフィギュレーションモジュール301はそれぞれのプリンタの機種に依存した情報を持つ機種依存ファイル307を読み込んで動作する。このようにすることで、コンフィギュレーションモジュール301はすべてのプリンタで共通のモジュールであっても、それぞれの機種に特化した動作を行うことができる。機種依存ファイル307は実際の機種データが記述されたXMLデータファイル308を持っており、コンフィギュレーションモジュール301はXMLデータファイル308を、コンフリクトエンジン304のデータファイルパーサー305で解釈して読み込む。
XMLデータファイル308はプリンタの機種データを含む巨大なデータファイルとなるので、機種依存ファイル307はXMLデータファイル308をZIP圧縮することで、ファイルサイズを小さくしている。また、データファイルパーサー305は、XMLデータファイル308をいったん読み込むと、バイナリデータファイル309を作成する。バイナリデータファイル309を作成したあとは、XMLデータファイル308に変更がなければ、XMLデータファイル308の代わりにバイナリデータファイル309を使って動作する。これにより、機種依存ファイル307からXMLデータファイル308を展開する作業と、XMLデータファイル308を解析する作業が軽減され、パフォーマンスが上がる。XMLデータファイル308に変更があれば、再度XMLを読み込み、バイナリデータファイル309を作成する。
コンフリクトエンジン304のデータファイルパーサー305は、XMLデータファイル308もしくはバイナリデータファイル309を読み込んで、状態変数(StatusVariablesとも呼ばれる。以下、SVと略す)310のオブジェクトインスタンスを作成する。SV310とは、プリンタのそれぞれの機能ごとにオブジェクトとして扱うもので、印刷設定情報の状態を表すものである。SV310は、名前、値もしくは値リスト、値に付随するプロパティ、現在値、デフォルト値、ステータス、リーズン、そしてロックフラグを持ったメモリ上に展開されるオブジェクトである。
たとえば、「プリンタで使用できる用紙サイズ」という機能に関するSV310を図3の例で見てみる。用紙サイズのSV310は「MediaSize」という名前を持ち、値リストとして、「A4」「Letter」「B5」「PostCard」などプリンタで使用できる用紙サイズが列挙されている。図3では現在値を黒い丸で、デフォルト値を白い丸で表しているので、デフォルトは「A4」だが、現在は「Letter」が選択されている状態を表している。また、SV310はステータスを持ち、その値が現在の設定値で利用可能かどうかを示すことができる。SV310自体にも値リストのそれぞれの値にもステータスを持ち、図3では「B5」が現在の設定では利用できない用紙ということで、「B5」の値に対して利用不可のステータスを持つ取り消し線が引かれている。用紙サイズが選択できないような状況では、「MediaSize」自体に利用不可のステータスを付けることもできる。同様に、印刷の向きとして「Orientation」、カラーとして「OutputColor」、給紙段として「InputBin」が例として挙げられている。もちろん、これ以外の機能がいくつあってもかまわない。さらに、SV310は値リストの代わりに値として、数値や文字列を持つこともできる。値リストであっても、現在値を複数持つことができるマルチセレクションという形のSV310も作成することができる。マルチセレクションのSV310は、同時に複数の値を選択していることになるので、プリンタの記憶装置に印刷ジョブを保存するボックス保存機能などで、一度の印刷で複数のボックスに同時に格納するような印刷設定を作ることができる。
禁則エンジン306はSV310を使用して禁則処理を行う。禁則とは、印刷設定の競合を禁止するためのルールである。例えば、両面 ON、OHP ONであれば、両立しえないので、片方をOFFになるように修正する、というようなルールの定義である。後に詳述する。禁則エンジン306はXMLデータファイル308もしくはバイナリデータファイル309に記載された禁則処理ルールを元に、SV310の値を変更する。禁則処理ルールは、1つ1つのSV310ごとに記載されており、他のSV310の値との関係を記載する。たとえば、部単位ソートを行うSV「Collate」の禁則処理ルールを考えてみる。部単位ソートは製本印刷を行うときは必ず使用しなければならない。このロジックをSV「Collate」の禁則処理ルールとして記載すると、「製本のSV「Booklet」がONなら、自分自身をONにする」という形で記載することになる。また、禁則処理ルールにはリーズンをセットすることができる。リーズンとは禁則処理ルールによって値が変更されたりしたときに、どの禁則処理ルールによって値が変更されたのかを区別するためのSV310につけるマークである。さらに、禁則処理ルールでは、記載した条件の結果として、値を変更するだけでなく、ステータスを変更したり、値リストから特定の値を削除したり追加することも可能である。
コンフィギュレーションモジュール301は印刷設定を、DEVMODE311やPrintTicket312という形で、アプリケーションプログラムインタフェース(以下、APIと略す)を通じてアプリケーションソフトウェアと入出力することができる。コンフィギュレーションモジュール301は、DEVMODE311やPrintTicket312を、SV310の現在の値をすべて集めて全体の印刷設定として作成し、アプリケーションソフトウェアに出力する。また、入力としてDEVMODE311やPrintTicket312を受け取った場合は、その値をSV310にセットし、コンフリクトエンジン304を使用して禁則処理を行う。
コンフィギュレーションモジュール301はユーザに印刷設定をさせるために、ユーザインタフェース303も持っている。ユーザインタフェース303上には、SV310の現在の値を表示しており、ユーザによって値が変更されたら、その値をSV310にセットし、コンフリクトエンジン304を使用して禁則処理を行う。禁則処理を行った結果、SV310が新しい値に変更され、またユーザインタフェース303上にSV310の現在値を表示する。ユーザインタフェース303は、SV310のステータスに応じてコントロールの表示を変更する。SV310のステータスには、利用可(available)、利用不可(notavailable)、サポート不可(notsupported)、権限不可(notpermission)の4つが存在し、それぞれコントロールの表示が異なる。利用可のときは通常の表示を行うが、利用不可や権限不可のときはコントロールや選択肢をグレーアウトして選択できないようにする。サポート不可のときはコントロールを隠してユーザに見せないようにする。標準に戻すボタンを押すと、SV310をデフォルト値に変更して禁則処理を行い、ユーザインタフェース上にSV310の状態を表示する。このように、コンフィギュレーションモジュール301は、入力や出力がどんな形態であっても、すべてSV310に変換して処理を行うことで、機能や禁則処理の一括管理を行っている。
SV310の特別な機能として、値や値リストを固定化するロック機能を持っている。SV310のロックフラグがONになると、SV310は外部から値を変更したり、禁則処理ルールによって変更することができなくなる。ロック機能をONにするには、XMLデータファイル308かバイナリデータファイル309にあらかじめ記載しておくか(図8)、API302やユーザインタフェース303から指定する。図6はロック機能をON・OFFするためのユーザインタフェース303上の表示である。ロック機能は管理者権限を持つユーザのみに指定することを許可しており、図6では両面をロックしたときの表示を表す。図7はロック機能をONにしたときのユーザインタフェース303上の表示を表す。図7では両面をロックしているので、両面が常にONとなりユーザが操作できないようにコントロールをグレーアウトしている。また、ロックしていることを表すために、コントロールの横にロック専用の鍵のマークを表示する。ロックしているコントロール、もしくはロック専用の鍵のマークをポインティングデバイスで指し示すと、ツールチップを表示し固定化していることを表示する。
図4はXMLデータファイル308の一部を示している。XMLデータファイル308には、プリンタの機能に応じて、SV310の情報と、禁則処理ルールを記載してあるが、図4はそのうち「Collate」のSV310について記載した箇所である。StatusVariableという要素でSV310を定義する。ここにはnameという属性でSV310の名前を、typeという属性でSV310の型を定義している。図4ではnameには「Collate」を、typeには「selection」を記載している。「selection」型というのは、値リストを使用するSV310であることを示している。次にSV310の定義としてPropertyTable要素と、ConflictRules要素を記載する。PropertyTable要素にはSV310のパラメータを、ConflictRule要素には禁則処理ルールを記載する。PropertyTable要素にはValueInfoTable要素とReasonInfoTable要素の2つがあり、それぞれ値とリーズンを定義する。ValueInfoTable要素にはValueSet要素に値リストのそれぞれの値を記載する。ValueSet要素の1つ1つの値には、Property要素として値に付加するデータを追記することもできる。たとえば、用紙サイズ「A4」に関して幅や高さなどの情報を付加したいときにProperty要素を使用する。DefaultValue要素には値リストのうちデフォルト値となるものを記載する。図4では「Collated」と「Uncollated」という2つの値と、「Collated」がデフォルト値であることが記載されている。また、ReasonInfoTable要素にはReasonSet要素として、リーズンを3つ記載している。ConflictRules要素にはConflict要素で1つの禁則処理ルールを記載する。禁則処理ルールにはそれぞれ優先度が存在し、それをpriorityという属性で記載する。優先度の値が小さいものから禁則処理ルールを評価していくので、小さいほうの優先度が高い。このようにSV310ごとに優先度が設定されているのは、同時入力時の禁則処理を行うために存在する。印刷設定として入力される値がすでに禁則状態にあり、どちらかの値を変更しなければならないときに、優先度が高い機能の値を優先して設定することで、ユーザが望むような印刷設定を行うことができる。優先度が存在しない場合は、禁則処理ルールを評価する順番によっては、先に評価したほうの機能が優先されるので、いつも一定の結果になるとは限らなくなってしまう。Conflict要素にはValue要素とCondition要素があり、Value要素には、禁則した結果として変わる値を記載する。また、Conflict要素には禁則した結果として変わるステータスをstatus属性で記載できる。Condition要素には、禁則する対象のSV310の名前と値を記載する。name属性には対象のSV310の名前を、Value要素には対象のSV310の値を記載する。Condition要素を並列に記載する場合は、論理積(AND)の意味となる。他に算術演算のような機能もあり、result属性がfalseの場合は否定(NOT)に、Block要素は括弧に、AnyOneCondition要素は論理和(OR)になる。図4では3つの禁則処理ルールがある。製本のSV310である「Booklet」の値が「None」以外だったら、「Collated」にしてSV310自体のステータスを利用不可「NotAvailable」にする。表紙「CoverFront」と裏表紙「CoverBack」が「NoCover」以外つまり指定されているときは、「Collated」にしてSV310自体のステータスを利用不可「NotAvailable」にする。ステイプル「Staple」が中とじ「SaddleStitch」のときは「Collated」にしてSV310自体のステータスを利用不可「NotAvailable」にするという3つの禁則処理ルールである。
図5は、プリンタドライバに対してユーザが設定を指示したときに開始する。S501は、その都度確認することになっているが、予め処理をして、ユーザが印刷設定を変更したら、S502以降からの処理をするようにしてもよい。
次に、コンフリクトエンジン304の禁則エンジン306による禁則処理のロジックを、図5のフローチャートに沿って追っていく。まずは、API302やユーザインタフェース303からSV310のロック機能の情報をもらう。ロック情報を元に禁則エンジン306は、対象となるSV310の値をロックする値に変更し、ロックフラグを立てる(ステップ501)。また、デフォルト値をロックする値に変更する。
ステップ502では、次にAPI302やユーザインタフェース303が、DEVMODE構造体やPrintTicketなどの印刷設定や、ユーザインタフェースからのコントロールの入力から、ユーザが指定した印刷設定情報を受け取る(ステップ502)。API302やユーザインタフェース303は受け取った印刷設定情報を元に、変更するSV310の値のリストを作成する。これはSV310の名前と値のペアと、印刷設定情報との組み合わせが記載されたテーブルを持っていて、そのテーブルに沿ってリストを作成する。テーブルはXMLファイルに記載されており、機種依存ファイル307に含まれている。禁則エンジン306は値のリストを元に、対応するSV310の現在値をそれぞれ印刷設定の値に変更する(ステップ503)。禁則エンジン306はここで値が変更されたSV310のリストを作成する(ステップ504)。すでに印刷設定の値でリストを作成しているが、ここでは値が変更できたSV310のリストを作成している。また、禁則処理ルールを処理する過程においては、実際に値を変更したSV310と禁則処理ルールの結果値が変更されたSV310の両方を含んだリストを作成する。ステップ504で作成したリストに含まれるSV310の禁則処理ルールをすべて取り出し、優先度順に並べる(ステップ505)。ここで、SV310の中でロックされているものがあれば、ロックされたSV310の禁則処理ルールをまず優先度順に並べ、他の禁則処理ルールはその後ろに優先度順に並べる。優先度順に並べた禁則処理ルールがまだ存在していれば(ステップ506)、禁則処理ルールを1つ取り出し(ステップ508)、禁則処理ルールの評価を行う。禁則処理ルールに記載されたSV310の値やプロパティを参照し、禁則処理ルールにおけるCondition要素に合致してルールが成立するかどうかを判定する。禁則処理ルールが成立するのであれば、SV310の値を変更する必要があるかどうかを判定する(ステップ509)。値を変更しなければならないときは、ロック情報によってロックフラグが立っているかどうかを判定する(ステップ510)。ロックされているときは、禁則処理ルールにおけるCondition要素に含まれるSV310の値に対して、ステータスを利用不可に変更する(ステップ511)。つまり、通常は禁則処理ルールに記載された対象のSV310の値によって自分の値を変更するのに対して、ロックのときは対象のSV310のステータスを変えるように動作する。ロックされていないときは通常の禁則処理として、禁則処理ルールに従って値を変更しようとする。このとき、変更しようとしている対象のSV310の値が、禁則処理によってすでに1度値が変更されたことがないかどうかのフラグを判定する(ステップ512)。禁則処理は値が変更されたことを起点とし、禁則処理ルールを評価していくが、値が何度も変更されてしまうと、禁則処理ルールによっては評価がループしてしまい終わらなくなることがある。そこで、禁則処理ルールによってSV310の値が変更されるのは1回までとして制限することで、無現ループすることを防いでいる。値が1回も変更されていないことが確かめられたら、SV310の値を変更し、SV310の値を禁則処理ルールによって変更したというフラグを立てる(ステップ513)。そして、次の禁則処理ルールを評価する。禁則処理ルールがすべてなくなったら、禁則処理によって値が変更されたSV310があるかどうかを判定する(ステップ507)。値がひとつも変更されていなければ、すべての禁則処理ルールを評価した結果、値が安定した状態にあると判断し終了する。変更されていれば、値が変更されたSV310の禁則処理ルールをすべて取り出し、優先度順に並べて再度評価を行う。このときもロックしているSV310は優先度を高くする。
このように、コンフィギュレーションモジュール301はコンフリクトエンジン304とSV310の持つロック機能を利用して、機能を完全に固定化することができ、禁則処理においても矛盾がないように動作する。
(実施例2)
実施例1とは別のコンフィギュレーションモジュールの実施方法として、図9のブロック図にあるシステムを挙げる。実施例1との違いは禁則処理ルールで、実施例1の禁則処理ルールでは対象の値を元に自分の変更になる値を記載していたが、実施例2の禁則処理ルールでは、同時に設定することが不可能な組み合わせを記載するというのが異なる。したがって、コンフリクトエンジンが禁則処理を行うロジックも異なるが、優先度の並び変えによって同等のロック機能を実現する。
図9において、コンフィギュレーションモジュール903は、プリンタが異なっても同じモジュールを使える共通のモジュールである。プリンタごとに依存するデータはGPD(Generic Description Language)と呼ばれるテキストファイルに記載しており、GPDファイルをコンフィギュレーションモジュール903のGPDパーサー904が解釈して動作することで、プリンタ固有の動作を実現している。図9では、プリンタAに対応したGPD901を読み込めばプリンタAの動作を、プリンタBに対応したGPD902を読み込めばプリンタBの動作を行う。プリンタドライバを使用するたびにGPDファイルをGPDパーサー904が読み込むのは非効率なので、GPDファイルを読み込んだらバイナリファイルを作成し保存しておく。その後、GPDファイルの記載に変更がなければ、バイナリファイルを使って動作することで、高速化を実現している。
図9では、プリンタAに対応したGPD901を読み込んだときは、バイナリデータ906を、プリンタBに対応したGPD902を読み込んだときは、バイナリデータ907を作成している。GPDに記載されたデータを元に、コンフィギュレーションモジュール903は機能ごとのオブジェクトインスタンスを作成し、禁則処理を行う。アプリケーション910からの印刷設定データはCOMPSTUI.DLL909を経由してコンフィギュレーションモジュール903に渡される。また、ユーザインタフェースでの印刷設定はCOMMONUI905上からコンフィギュレーションモジュール903に渡される。コンフィギュレーションモジュール903は印刷設定を機能ごとのオブジェクトインスタンスに反映させ、禁則処理を行ってまた、アプリケーション910やユーザインタフェース上に印刷設定を返している。コンフィギュレーションモジュール903はまたユーザインタフェースプラグイン908を使って、新たな機能を自由に追加することができる。
図10はGPDの記載の一部である。*Featureは機能の名前を記述する。図10ではプリンタの給紙段でInputBinという名称をつけたFeatureとして定義している。*Optionは機能に対する値である。図10ではAUTO、INPUTTRAY_MANUAL、INPUTTRAY_CASSETTE1、INPUTTRAY_CASSETTE2の4つのOptionが存在し、どれか1つをInputBinの現在値として選択することになる。*DefaultOptionではOptionのうちどれがデフォルト化を記述する。ここではAUTO、つまり給紙段の「自動」がデフォルトであるという記載になる。
禁則処理ルールとしては、*Constraintsと*InvalidConbinationの2つがある。*Constraintsは自分のOptionと他のFeatureのOptionと同時に組み合わさってはならない禁則を記載する。*InvalidConbinationはGPDファイルのルート(行の先頭)に記載し、FeatureのOption同士の禁則を記載する。*InvalidConbinationでは2つ以上のOptionの禁則が記載することができるのが、*Constraintsとの違いである。また、*ConflictPriorityでは、Featureの優先度を記載している。数値が小さいほど優先度が高く、先に禁則処理を評価する。このGPDを読み込んで、コンフィギュレーションモジュール903はFeatureオブジェクトを作成し、禁則処理を行う。
また、FeatureにはOptionを固定化するためにロックしているかどうかのフラグを持ち、ロックしている場合はOptionが変更されないようにしている。ロックはGPDのFeatureにあらかじめ記載しておくことも可能である(図12)。
コンフィギュレーションモジュール903が行う禁則処理のロジックを、図11のフローチャートに従って追っていく。Featureのロック情報をアプリケーション910やCommonUIのユーザインタフェース905が持っていたときは、指定されたFeatureのOptionに変更し、ロックフラグを立てる(ステップ1101)。
また、DefaultOptionをロックするOptionに変更する。次にアプリケーション910やCommonUIのユーザインタフェース905からユーザが指定した印刷設定情報を受け取る(ステップ1102)。この時点ではまだFeatureにOptionをセットしない。すべてのFeatureをリストとして列挙し、ConflictPriority順にリストを並べる(ステップ1103)。
ここで、ロックされているFeatureがあれば、ロックされているFeatureをConflictPriority順に並べ、その後ろに通常のFeatureをConflictPriority順に並べる。リストにFeatureが残っていれば(ステップ1104)、リストからFeatureを取り出す(ステップ1105)。指定された印刷設定の値に対応するFeatureのOption、つまり設定しようとしているOptionが、ConstraintsもしくはInvalidConbinationの対象となっているかどうかを、すべてのConstraintsもしくはInvalidConbinationを見て判定する(ステップ1106)。
対象となっていれば、禁則状態にあるということで、印刷設定をFeatureの現在の値としてOptionに設定することはできないので、次のFeatureに進む。禁則状態でなければ、次に現在のFeatureのOptionがロック状態になるかどうかを確認する(ステップ1107)。
現在のOptionがロック状態であれば、やはり印刷設定をOptionとして設定することができないので、次のFeatureに進む。変更するOptionが禁則状態ではなく、かつ現在のOptionがロック状態でなければ、Featureに印刷設定の値としてOptionをセットする(ステップ1108)。そして、すべてのFeatureに対して処理が終わったら、終了となる。
このように、Featureをロックすることで、機能を固定化することができる。機能を固定化したり、禁則処理を行うにあたっては実施例2のほうが簡易であり実装しやすい。しかし、実施例2の禁則処理では、値を変更することで他の値を変更するという処理ができないため、ユーザは印刷設定が禁則状態にあるときはいったん禁則状態を解除するように設定を変更し、再度、値を設定するということをしなければならなくなる。
他に、固定化指示可能な印刷設定として、パスワードによる親展印刷の設定の固定、ユーザ名・日時印刷固定なども想定できる。これらの印刷設定を固定化した場合、セキュアプリント固定にすると、保存(メールボックス)や追い越し印刷がOFFになる。ユーザ名や、日時の印刷の固定にすると、ポスターがOFFになるという処理が走る。プリンタのメモリとは、プリンタメモリである。ユーザインタフェース画面とは、ユーザインタフェースの画面である。
本実施形態の技術原理をまとめておく。
印刷装置の一例であるプリンタ214に対して送信して印刷させるデータを生成するプリンタドライバにおける印刷設定を処理するコンピュータを開示した。そして、外部記憶装置に、印刷設定の禁則を定義した禁則ルールを記憶する。そして、プリンタドライバのユーザインタフェースやXMLファイルを用いて、印刷設定の固定化を指示する。さらに、コンフィギュレーションモジュールは、固定化を指示された印刷設定に関わる禁則ルールの優先度を従前の優先度よりも上げる。これは、ルール優先度設定の一例である。
外部記憶装置に、印刷設定の値をオブジェクトとして格納する。
コンフィギュレーションモジュールは、禁則処理ルールを元にしてオブジェクトの値を変更し、優先度順に禁則処理ルールを評価する。そして、固定化を指示された印刷設定は、ユーザインタフェースからの入力または禁則処理ルールの実行により変更されないようにする。さらに、値を固定化指示したオブジェクトに対して値を変更するような禁則処理ルールを処理するときは、コンフィギュレーションモジュールは、変更する原因となったオブジェクトの値をプリンタドライバのユーザインタフェースから選択できない状態にすることができる。
プリンタドライバのユーザインタフェースは、固定化を指示された印刷設定をモニタ110に識別可能に表示する処理を制御する。例えば、図7のごとくである。
禁則処理の優先順位はメーカが勝手に決めている。しかし、本実施形態を用いて、禁則処理を自由に変更できるのは便利である。両面固定、2Up固定、モノクロ固定、保存(メールボックス)固定などをユーザインタフェースやXMLファイルで指示できるようにすると好適である。メールボックスとは、プリンタや複合機のメモリ上に、PCから印刷データ等を送信して格納させるためのボックスである。設定によっては、印刷出力を禁止し、必ずメールボックスに保存させることもできる。
また、他の人からもらった文書の印刷設定が「はがき」になっていたときに、「はがき」であることを意識せずに印刷してしまったときなどは印刷できないよりも「A4」「両面」で出てくれるのは便利である。また、保存(メールボックス)固定にすると、指定した用紙サイズが「ユーザ定義用紙(長尺)」→「A4」に修正される。これまでの処理であれば、長尺用紙で印刷になってしまっていたので、常に保存にさせることで紙資源の無駄を防げる。つまり、この環境では長尺用紙は使えないということになる。また、他の実施形態として、メールボックスへの保存設定に違反する設定があれば、メールボックスへの印刷データの保管はせずに、印刷中止して、管理者に対して通知しても良いと思われる。ここでは、メールボックスの設定は、印刷に関わる設定としておく。
また、2Up固定にすると、製本がOFFに修正される設計も想定できる。製本ができるときは製本で、2Upは諦め、製本がプリンタの仕様上でないときは2Upに固定する、準固定モードも想定できる。
(他の実施形態)
本実施形態における図5、図11に示す処理が、外部からインストールされるプログラムによって、コンピュータにより遂行される。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群をホストコンピュータに供給される場合でも本発明は適用されるものである。
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、又は、外部サーバ(図示省略)からダウンロードすることで、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、たとえば、フロッピィーディスク、ハードディスク、光ディスク、光磁気ディスク、DVD、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM等を用いることができる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。

Claims (30)

  1. データをプリンタに保存する機能と前記機能と異なる機能とを含む複数の機能から選択された機能を常に有効とするか否かの指示を受け付ける受付画面を表示する第1表示手段と、
    前記選択された機能を常に有効とする指示を前記受付画面を介して受け付ける指示手段と、
    前記選択された機能を常に有効とする指示を受け付けた場合、前記選択された機能について有効から無効への変更を受け付けない印刷設定画面を表示する第2表示手段とを有し、
    前記データをプリンタに保存する機能を常に有効とする指示を受け付けた場合、前記データをプリンタに保存する機能が常に有効とされていることを示す情報が前記印刷設定画面に表示され、
    前記受付画面は、プリンタドライバにより提供されることを特徴とする情報処理装置。
  2. 前記プリンタは、複合機であることを特徴とする特徴とする請求項1に記載の情報処理装置。
  3. 前記印刷設定画面は、前記プリンタドライバにより提供されるユーザインタフェースであることを特徴とする請求項1または2に記載の情報処理装置。
  4. 前記指示手段は、所定の権限を持ったユーザから前記選択された機能を常に有効とする指示を受け付けることを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記受付画面は、さらに他の機能を常に有効とするか否かの指示を受け付けることを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
  6. 前記選択された機能を指定する項目はグレーアウトして表示されることを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
  7. 前記受付画面により常に有効とすると設定された前記選択された機能は、禁則処理ルールの実行により変更されないことを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。
  8. 前記指示手段は、データをプリンタに保存する機能と前記機能と異なる機能を含む複数の機能から1つの機能を選択し、選択された機能を常に有効とするか否かの指示を受け付けることを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
  9. 情報処理装置において実行される制御方法であって、
    データをプリンタに保存する機能と前記機能と異なる機能とを含む複数の機能から選択された機能を常に有効とするか否かの指示を受け付ける受付画面を表示する第1表示工程と、
    前記選択された機能を常に有効とする指示を前記受付画面を介して受け付ける指示工程と、
    前記選択された機能を常に有効とする指示を受け付けた場合、前記選択された機能について有効から無効への変更を受け付けない印刷設定画面を表示する第2表示工程とを有し、
    前記データをプリンタに保存する機能を常に有効とする指示を受け付けた場合、前記データをプリンタに保存する機能が常に有効とされていることを示す情報が前記印刷設定画面に表示され、
    前記受付画面はプリンタドライバにより提供されることを特徴とする制御方法。
  10. コンピュータに、
    データをプリンタに保存する機能と前記機能と異なる機能とを含む複数の機能から選択された機能を常に有効とするか否かの指示を受け付ける受付画面を表示する第1表示工程と、
    前記選択された機能を常に有効とする指示を前記受付画面を介して受け付ける指示工程と、
    前記選択された機能を常に有効とする指示を受け付けた場合、前記選択された機能について有効から無効への変更を受け付けない印刷設定画面を表示する第2表示工程を実行させ、
    前記データをプリンタに保存する機能を常に有効とする指示を受け付けた場合、前記データをプリンタに保存する機能が常に有効とされていることを示す情報が前記印刷設定画面に表示され、
    前記受付画面はプリンタドライバにより提供されることを特徴とする制御プログラム。
  11. 前記プリンタは、複合機であることを特徴とする請求項10に記載の制御プログラム。
  12. 前記印刷設定画面は、前記プリンタドライバにより提供されるユーザインタフェースであることを特徴とする請求項9または10に記載の制御プログラム。
  13. 前記指示工程において、所定の権限を持ったユーザから前記選択された機能を常に有効とする指示を受け付けることを特徴とする請求項10乃至12のいずれか1項に記載の制御プログラム。
  14. 前記受付画面は、さらに他の機能を常に有効とするか否かの指示を受け付けることを特徴とする請求項10乃至13のいずれか1項に記載の制御プログラム。
  15. 前記選択された機能を指定する項目はグレーアウトして表示されることを特徴とする請求項10乃至14のいずれか1項に記載の制御プログラム。
  16. 前記受付画面により常に有効とすると設定された前記選択された機能は、禁則処理ルールの実行により変更されないことを特徴とする請求項10乃至15のいずれか1項に記載の制御プログラム。
  17. 前記指示工程は、データをプリンタに保存する機能と前記機能と異なる機能を含む複数の機能から1つの機能を選択し、選択された機能を常に有効とするか否かの指示を受け付けることを特徴とする請求項10乃至16のいずれか1項に記載の制御プログラム。
  18. 印刷設定画面を表示する設定画面表示手段と、
    データをプリンタに保存する機能と前記機能と異なる機能とを含む複数の機能から選択された機能を常に有効とする指示を受け付ける受付画面を表示する受付画面表示手段と、
    前記選択された機能を常に有効にする指示を受け付ける受付手段を有し、
    前記選択された機能を常に有効にする指示が受け付けられた状態で表示される前記印刷設定画面は、前記選択された機能について有効から無効への変更を受け付けない印刷設定画面であり、
    前記データをプリンタに保存する機能を常に有効とする指示を受け付けた場合、前記データをプリンタに保存する機能が常に有効とされていることを示す情報が前記印刷設定画面に表示され、
    前記受付画面はプリンタドライバにより提供されることを特徴とする情報処理装置。
  19. 前記プリンタは、複合機であることを特徴とする特徴とする請求項18に記載の情報処理装置。
  20. 前記受付手段は、所定の権限を持ったユーザから前記選択された機能を常に有効とする指示を受け付けることを特徴とする請求項18または19に記載の情報処理装置。
  21. 前記選択された機能を指定する項目はグレーアウトして表示されることを特徴とする請求項18乃至20のいずれか1項に記載の情報処理装置。
  22. 前記受付画面により常に有効とすると設定された前記選択された機能は、禁則処理ルールの実行により変更されないことを特徴とする請求項18乃至21のいずれか1項に記載の情報処理装置。
  23. 前記受付手段は、データをプリンタに保存する機能と前記機能と異なる機能を含む複数の機能から1つの機能を選択し、選択された機能を常に有効とするか否かの指示を受け付けることを特徴とする請求項18乃至22のいずれか1項に記載の情報処理装置。
  24. 情報処理装置において実行される制御方法であって、
    印刷設定画面を表示する設定画面表示工程と、
    データをプリンタに保存する機能と前記機能と異なる機能とを含む複数の機能から選択された機能を常に有効とする指示を受け付ける受付画面を表示する受付画面表示工程と、
    前記選択された機能を常に有効にする指示を受け付ける受付工程を有し、
    前記選択された機能を常に有効にする指示が受け付けられた状態で表示される前記印刷設定画面は、前記選択された機能について有効から無効への変更を受け付けない印刷設定画面であり、
    前記データをプリンタに保存する機能を常に有効とする指示を受け付けた場合、前記データをプリンタに保存する機能が常に有効とされていることを示す情報が前記印刷設定画面に表示され、
    前記受付画面はプリンタドライバにより提供されることを特徴とする制御方法。
  25. コンピュータに、
    印刷設定画面を表示する設定画面表示工程と、
    データをプリンタに保存する機能と前記機能と異なる機能とを含む複数の機能から選択された機能を常に有効とする指示を受け付ける受付画面を表示する受付画面表示工程と、
    前記選択された機能を常に有効にする指示を受け付ける受付工程を実行させ、前記選択された機能を常に有効にする指示が受け付けられた状態で表示される前記印刷設定画面は、前記選択された機能について有効から無効への変更を受け付けない印刷設定画面であり、
    前記データをプリンタに保存する機能を常に有効とする指示を受け付けた場合、前記データをプリンタに保存する機能が常に有効とされていることを示す情報が前記印刷設定画面に表示され、
    前記受付画面はプリンタドライバにより提供されることを特徴とする制御プログラム。
  26. 前記プリンタは、複合機であることを特徴とする特徴とする請求項25に記載の制御プログラム。
  27. 前記受付工程は、所定の権限を持ったユーザから前記選択された機能を常に有効とする指示を受け付けることを特徴とする請求項25または26に記載の制御プログラム。
  28. 前記選択された機能を指定する項目はグレーアウトして表示されることを特徴とする請求項25乃至27のいずれか1項に記載の制御プログラム。
  29. 前記受付画面により常に有効とすると設定された前記選択された機能は、禁則処理ルールの実行により変更されないことを特徴とする請求項25乃至28のいずれか1項に記載の制御プログラム。
  30. 前記受付工程は、データをプリンタに保存する機能と前記機能と異なる機能を含む複数の機能から1つの機能を選択し、選択された機能を常に有効とするか否かの指示を受け付けることを特徴とする請求項25乃至29のいずれか1項に記載の制御プログラム。
JP2012268297A 2012-12-07 2012-12-07 情報処理装置、方法、制御プログラム Active JP5642143B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012268297A JP5642143B2 (ja) 2012-12-07 2012-12-07 情報処理装置、方法、制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012268297A JP5642143B2 (ja) 2012-12-07 2012-12-07 情報処理装置、方法、制御プログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2012153707A Division JP5159974B2 (ja) 2012-07-09 2012-07-09 情報処理装置、方法、制御プログラム

Publications (3)

Publication Number Publication Date
JP2013054778A JP2013054778A (ja) 2013-03-21
JP2013054778A5 JP2013054778A5 (ja) 2013-08-15
JP5642143B2 true JP5642143B2 (ja) 2014-12-17

Family

ID=48131637

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012268297A Active JP5642143B2 (ja) 2012-12-07 2012-12-07 情報処理装置、方法、制御プログラム

Country Status (1)

Country Link
JP (1) JP5642143B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7224879B2 (ja) * 2018-12-03 2023-02-20 キヤノン株式会社 印刷制御装置、印刷システム、印刷制御方法及びプログラム
JP2022067205A (ja) 2020-10-20 2022-05-06 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びプログラム

Also Published As

Publication number Publication date
JP2013054778A (ja) 2013-03-21

Similar Documents

Publication Publication Date Title
JP5094627B2 (ja) 情報処理装置、方法、制御プログラム
KR100708361B1 (ko) 정보 처리 장치 및 방법
KR101064065B1 (ko) 정보 처리 장치, 제어 방법, 및 기억 매체
US20140293312A1 (en) Information processing apparatus, print control program and print system
JP4951392B2 (ja) 情報処理装置、プログラムおよび記録媒体
EP3040847A1 (en) Information processing apparatus, control method, and recording medium
JP6578851B2 (ja) 情報処理装置およびプログラム
US9373061B2 (en) Non-transitory computer-readable storage medium, computing device, and display method of user interface of printer driver
JP2014109854A (ja) 情報処理装置および制御方法およびプログラム
US20090116063A1 (en) Printing control apparatus, method and medium
JP4174381B2 (ja) 情報処理装置、分散印刷制御方法及び分散印刷制御プログラム
JP5642143B2 (ja) 情報処理装置、方法、制御プログラム
US20070146760A1 (en) Print System and Programs for Use in Print System
JP5807460B2 (ja) 情報処理装置、プログラム、記憶媒体
JP5159974B2 (ja) 情報処理装置、方法、制御プログラム
US20090254987A1 (en) Information processing apparatus, computer-readable recording medium, output control method and system
JP2006228128A (ja) 情報処理装置、通信機器制御装置およびプログラム
JP2019144814A (ja) 情報処理装置、情報処理装置の制御方法およびプログラム
US11614906B2 (en) Information processing apparatus, control method of information processing apparatus, and program
JP7393477B2 (ja) 情報処理装置とその制御方法、およびコンピュータプログラム
JP6418304B2 (ja) 出力システム、端末装置、プログラム及び出力方法
JP4661832B2 (ja) 印刷制御装置およびプリンタドライバのプログラム
JP2020201829A (ja) 情報処理装置、情報処理方法、及びプログラム
JP2007079743A (ja) 情報処理装置及びその制御方法、プログラム
JP2011008469A (ja) 情報処理装置、情報処理方法、プログラム、及び記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121220

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130214

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130701

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140708

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140808

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141028

R151 Written notification of patent or utility model registration

Ref document number: 5642143

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151