JP2020166698A - Information processing apparatus, information processing method, and program - Google Patents

Information processing apparatus, information processing method, and program Download PDF

Info

Publication number
JP2020166698A
JP2020166698A JP2019068066A JP2019068066A JP2020166698A JP 2020166698 A JP2020166698 A JP 2020166698A JP 2019068066 A JP2019068066 A JP 2019068066A JP 2019068066 A JP2019068066 A JP 2019068066A JP 2020166698 A JP2020166698 A JP 2020166698A
Authority
JP
Japan
Prior art keywords
information
print setting
generation
setting screen
update
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
JP2019068066A
Other languages
Japanese (ja)
Other versions
JP7307577B2 (en
Inventor
真理子 源田
Mariko Genda
真理子 源田
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 JP2019068066A priority Critical patent/JP7307577B2/en
Publication of JP2020166698A publication Critical patent/JP2020166698A/en
Application granted granted Critical
Publication of JP7307577B2 publication Critical patent/JP7307577B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Facsimiles In General (AREA)

Abstract

To provide an arrangement which prevents operability of a user from being lowered.SOLUTION: An information processing method according to the present invention has steps of: generating information including description of contents of control commands set on a print setting screen; and updating display of the print setting screen in response to an operation of the control commands on the print setting screen. If the operation satisfies a first condition, generation of information having description of the control command on the print setting screen is requested, and display on the print setting screen is updated based on the information of the description of the contents of the control command generated in response to the request. If the operation satisfies a second condition, the display of the print setting screen is updated without requiring generation of the information having description of the control command.SELECTED DRAWING: Figure 9

Description

本発明は、プリンタドライバを有する情報処理装置、情報処理方法およびプログラムに関する。 The present invention relates to an information processing apparatus having a printer driver, an information processing method and a program.

オペレーティングシステム(OS)としてMicrosoft(登録商標)のWindows(登録商標)を搭載した計算機を用いた印刷システムがある。そのような印刷システムにおいて、アプリケーションプログラム(アプリケーション)等で生成された印刷データは、OS標準のデータ形式でスプールファイルに格納される。OSは、印刷データを印刷するためにプリンタドライバを呼び出す。そして、プリンタドライバは、スプールファイルに格納された印刷データを読み取り、画像生成処理部により印刷イメージを作成し、さらに、プリンタが解釈可能な印刷コマンドに変換する。印刷コマンドはプリンタに送信され、プリンタは印刷コマンドを解釈し、記録媒体に像を形成することで印刷処理が実行される。 There is a printing system using a computer equipped with Windows (registered trademark) of Microsoft (registered trademark) as an operating system (OS). In such a printing system, the print data generated by the application program (application) or the like is stored in the spool file in the OS standard data format. The OS calls the printer driver to print the print data. Then, the printer driver reads the print data stored in the spool file, creates a print image by the image generation processing unit, and further converts the print command into a print command that can be interpreted by the printer. The print command is sent to the printer, and the printer interprets the print command and forms an image on the recording medium to execute the printing process.

また、近年ではWindows(登録商標)において、V4プリンタドライバと呼ばれる新しいアーキテクチャで動作するプリンタドライバが導入されている。V4プリンタドライバは、V3プリンタドライバのアーキテクチャとして提供されていたXPS(XML Paper Specification)プリンタドライバの後継となるアーキテクチャであり、XPS文書を利用した印刷パスを利用している。このXPS印刷パスにおいて、印刷物の体裁を決定するために利用されるものがPrintCapabilitiesと呼ばれるXML形式で記述された印刷機能情報と、PrintTicketと呼ばれるXML形式で記述された印刷設定情報である。V4プリンタドライバは、GPD(Generic Printer Description)と呼ばれる、プリンタドライバの印刷設定の機能を定義する印刷設定定義ファイルを同梱している。このGPDを含んだプリンタドライバをOSにインストールすることで、ユーザに対してPrintCapabilitiesやPrintTicketを用いた印刷設定変更機能を提供することができる。 Further, in recent years, Windows (registered trademark) has introduced a printer driver that operates with a new architecture called a V4 printer driver. The V4 printer driver is an architecture that succeeds the XPS (XML Paper Specialization) printer driver provided as the architecture of the V3 printer driver, and uses a print path using an XPS document. In this XPS print pass, what is used to determine the appearance of the printed matter is print function information described in XML format called Print Capabilities and print setting information described in XML format called Print Ticket. The V4 printer driver includes a print setting definition file called GPD (Generic Printer Specification) that defines the print setting function of the printer driver. By installing the printer driver including this GPD in the OS, it is possible to provide the user with a print setting change function using PrintCapabilities and PrintTicket.

さらに、V4プリンタドライバでは、PrintCapabilitiesやPrintTicketの生成は、OS提供のコンフィグレーションモジュールで行われる。加えて、コンフィグレーションモジュールで生成されたPrintCapabilitiesやPrintTicketに対して、プリンタドライバ開発ベンダ独自の編集を行うための印刷設定編集モジュールを設けることも可能である。プリンタドライバ開発ベンダは、印刷設定編集モジュールを実装することで数値や文字列等のパラメータに関する定義の追加などをPrintCapabilitiesに施すことができる(特許文献1)。なお、数値や文字列等のパラメータに関する定義の追加などはコンフィグレーションモジュールが行うことのできない編集に相当する。 Further, in the V4 printer driver, the generation of PrintCapabilities and PrintTicket is performed by the configuration module provided by the OS. In addition, it is also possible to provide a print setting editing module for the printer driver development vendor's own editing on the Print Capabilities and Print Tickets generated by the configuration module. A printer driver development vendor can add definitions related to parameters such as numerical values and character strings to Print Capabilities by implementing a print setting editing module (Patent Document 1). Note that adding definitions related to parameters such as numerical values and character strings corresponds to editing that cannot be performed by the configuration module.

特開2015−225481号公報Japanese Unexamined Patent Publication No. 2015-2254841

アプリケーションなどが印刷設定UIを提供する際には、設定が変更される度にPrintCapabilitiesとPrintTicketを生成し、設定できないオプションは選択できないようにすることが望ましい。しかしながら、PrintCapabilitiesとPrintTicketの生成には処理時間がかかる。印刷設定UIで設定が変更される度に、PrintCapabilitiesとPrintTicketを生成し、UI更新が完了するまで入力を受け付けられなくなると操作性が低下してしまう。 When an application or the like provides a print setting UI, it is desirable to generate PrintCapabilities and PrintTickets every time the settings are changed so that options that cannot be set cannot be selected. However, it takes a long time to generate PrintCapabilities and PrintTickets. Every time the setting is changed in the print setting UI, PrintCapabilities and PrintTicket are generated, and if the input cannot be accepted until the UI update is completed, the operability deteriorates.

本発明の目的は、このような従来の問題点を解決することにある。上記の点に鑑み、本発明は、ユーザの操作性の低下を防ぐ情報処理装置、情報処理方法およびプログラムを提供することを目的とする。 An object of the present invention is to solve such a conventional problem. In view of the above points, it is an object of the present invention to provide an information processing device, an information processing method and a program that prevent deterioration of user operability.

上記課題を解決するため、本発明に係る情報処理装置は、印刷設定画面上のコントロールの内容が記述された情報を生成する生成手段と、前記印刷設定画面上でのコントロールの操作に応じて、前記印刷設定画面の表示を更新する更新手段と、を備え、前記更新手段は、前記操作が第1条件を満たす場合には、前記コントロールの内容が記述された情報の生成を前記生成手段に要求し、該要求に応じて前記生成手段により生成された前記コントロールの内容が記述された情報に基づいて、前記印刷設定画面の表示を更新し、前記操作が第2条件を満たす場合には、前記コントロールの内容が記述された情報の生成を前記生成手段に要求することなく、前記印刷設定画面の表示を更新することを特徴とする。 In order to solve the above problems, the information processing apparatus according to the present invention responds to the generation means for generating information in which the contents of the controls on the print setting screen are described and the operation of the controls on the print setting screen. An update means for updating the display of the print setting screen is provided, and the update means requests the generation means to generate information in which the contents of the control are described when the operation satisfies the first condition. Then, the display of the print setting screen is updated based on the information in which the content of the control generated by the generation means is described in response to the request, and when the operation satisfies the second condition, the said It is characterized in that the display of the print setting screen is updated without requesting the generation means to generate information in which the contents of the control are described.

本発明によれば、ユーザの操作性の低下を防ぐ仕組みを提供することができる。 According to the present invention, it is possible to provide a mechanism for preventing a decrease in user operability.

印刷システムの構成を示す図である。It is a figure which shows the structure of a printing system. ドライバ印刷システムの構成を示す図である。It is a figure which shows the structure of a driver printing system. プリンタエクステンションの要求に応じたデータの流れを示す図である。It is a figure which shows the flow of data according to the request of a printer extension. PrintCapabilitiesを示す図である。It is a figure which shows Print Capavilities. PrintCapabilitiesを示す図である。It is a figure which shows Print Capavilities. PrintTicketを示す図である。It is a figure which shows PrintTicket. プリンタエクステンションの印刷設定を行うUIを示す図である。It is a figure which shows the UI which performs the print setting of a printer extension. ページレイアウトで表示されるアイコンを示す図である。It is a figure which shows the icon displayed in the page layout. 印刷設定更新処理を示すフローチャートである。It is a flowchart which shows the print setting update process. 印刷設定更新情報を示す図である。It is a figure which shows the print setting update information. UI更新処理を示すフローチャートである。It is a flowchart which shows the UI update process. 印刷設定更新処理を示すフローチャートである。It is a flowchart which shows the print setting update process. UI更新処理を示すフローチャートである。It is a flowchart which shows the UI update process. 印刷設定更新処理を示すフローチャートである。It is a flowchart which shows the print setting update process. マージ処理を示すフローチャートである。It is a flowchart which shows the merge process.

以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。 Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. The following embodiments do not limit the invention according to the claims. Although a plurality of features are described in the embodiment, not all of the plurality of features are essential to the invention, and the plurality of features may be arbitrarily combined. Further, in the attached drawings, the same or similar configurations are designated by the same reference numbers, and duplicate description is omitted.

[第1実施形態]
図1は、印刷システムのハードウェア構成を示すブロック図である。本図において、ホストコンピュータ101は、情報処理装置の一例であり、入力インタフェース110、CPU111、ROM112、RAM113、外部記憶装置114、出力インタフェース115、及び入出力インタフェース116を有する。また、入力インタフェース110には、キーボード118、ポインティングデバイス117などの入力デバイスが接続され、出力インタフェース115には、表示部119などの表示デバイスが接続されている。
[First Embodiment]
FIG. 1 is a block diagram showing a hardware configuration of a printing system. In this figure, the host computer 101 is an example of an information processing device, and has an input interface 110, a CPU 111, a ROM 112, a RAM 113, an external storage device 114, an output interface 115, and an input / output interface 116. Further, an input device such as a keyboard 118 and a pointing device 117 is connected to the input interface 110, and a display device such as a display unit 119 is connected to the output interface 115.

ROM112には、初期化プログラムが格納され、外部記憶装置114には、アプリケーションプログラム群、OS、後述するプリンタドライバ203、その他の各種のデータが格納されている。例えば、RAM113は、外部記憶装置114に記憶される各種のプログラムの実行の際のワークメモリとして使用される。なお、本実施形態では、例えば、CPU111が、ROM112に記憶されたプログラムの手順に従って処理を行うことによって、ホストコンピュータ101における後述の機能及び後述するフローチャートに係る処理が実現される。印刷装置102は、入出力インタフェース116を介して、ホストコンピュータ101と接続されている。ここでは、ホストコンピュータ101と印刷装置102が別の装置として構成されているが、これらが一つの情報処理装置(若しくは画像形成装置)として構成されていても良い。また、入出力インタフェース116は、有線や無線等、接続されるネットワーク媒体に応じた構成を有する。従って、ホストコンピュータ101と印刷装置102とは、有線や無線、若しくはそれらが混在したネットワークを介して相互に通信可能に接続される。 The initialization program is stored in the ROM 112, and the application program group, the OS, the printer driver 203 described later, and various other data are stored in the external storage device 114. For example, the RAM 113 is used as a work memory when executing various programs stored in the external storage device 114. In the present embodiment, for example, the CPU 111 performs the processing according to the procedure of the program stored in the ROM 112, thereby realizing the functions described later and the processing related to the flowchart described later in the host computer 101. The printing device 102 is connected to the host computer 101 via the input / output interface 116. Here, the host computer 101 and the printing device 102 are configured as separate devices, but these may be configured as one information processing device (or image forming device). Further, the input / output interface 116 has a configuration according to a network medium to be connected, such as wired or wireless. Therefore, the host computer 101 and the printing device 102 are connected to each other so as to be able to communicate with each other via a wired or wireless network or a network in which they are mixed.

図2は、ドライバ印刷システムのブロック構成図である。ドライバ印刷システムは、XPSファイルフォーマットをスプールデータとして使用し、印刷を行うシステムである。プリンタドライバ203は、印刷装置102に対して印刷指示を行うことができる。コンフィグレーションモジュール219、フィルタパイプラインマネージャ221は、プリンタドライバ203に含まれている。本実施形態では、それらは、ホストコンピュータ101のOSから提供されている、プリンタドライバ203のモジュールとして構成される。 FIG. 2 is a block configuration diagram of the driver printing system. The driver printing system is a system that prints using the XPS file format as spool data. The printer driver 203 can give a print instruction to the printing device 102. The configuration module 219 and the filter pipeline manager 221 are included in the printer driver 203. In this embodiment, they are configured as modules of the printer driver 203 provided by the OS of the host computer 101.

コンフィグレーションモジュール219は、印刷設定定義ファイル213に基づき、PrintTicketやPrintCapabilitiesの生成を行う。印刷設定定義ファイル213は、GPD(Generic Printer Description)と呼ばれるテキストベースで記載されているファイルである。さらに、印刷設定定義ファイル213には「禁則」の定義を記載することができる。例えば、Microsoft(登録商標)が定義した記述法に基づき、InvalidCombinationの項目に、同時に設定できない印刷設定の設定値を記載することで、ユーザに対して禁則機能を提供することができる。ここで、同時に設定できない印刷設定とは、デバイスの機能として提供できないもののほかに、意図的にユーザに使用してほしくない項目も含まれる。 The configuration module 219 generates PrintTicket and PrintCapabilities based on the print setting definition file 213. The print setting definition file 213 is a text-based file called GPD (Generic Printer Description). Further, the definition of "prohibition" can be described in the print setting definition file 213. For example, based on the description method defined by Microsoft (registered trademark), the prohibition function can be provided to the user by describing the setting value of the print setting that cannot be set at the same time in the item of InvalidCombination. Here, the print settings that cannot be set at the same time include items that cannot be provided as a function of the device and items that the user does not intentionally want to use.

また、コンフィグレーションモジュール219は、プリンタドライバ203が提供する印刷設定編集モジュール211を用いて印刷設定情報を編集することができる。印刷設定編集モジュール211は、ConstraintScriptと呼ばれる、JavaScript言語で記載されたモジュールである。印刷設定編集モジュール211は、プリンタドライバ203によって記憶されるデータが提供されるプロパティバッグ217を用いて印刷設定情報を編集する。 Further, the configuration module 219 can edit the print setting information by using the print setting editing module 211 provided by the printer driver 203. The print setting editing module 211 is a module described in the Javascript language called ConstraintScript. The print setting editing module 211 edits the print setting information using the property bag 217 in which the data stored by the printer driver 203 is provided.

プロパティバッグ217とは、プリンタの機種依存情報として用いるためのDriverPropertyBagと呼ばれるデータ群と、プリントキューに関連づけられたQueuePropertyBagと呼ばれるデータ群が保持された領域をいう。DriverPropertyBagは、以降、DPBともいい、QueuePropertyBagは、以降、QPBともいう。DPBとQPBは、ともにOSによって提供されている保存領域である。DPBは、ドライバパッケージ内に存在するプリンタの機種依存データであり、プリンタドライバ203のインストール後にOS内の特定の領域に読取専用としてデータ群が保持される。QPBは、Key−ValueペアのXML定義ファイルをOSに登録することで使用することが可能であり、Valueに関して一定の権限上で編集が可能である。また、印刷設定定義ファイル213であるGPDにもQPBの定義を記載することができる。 The property bag 217 refers to an area in which a data group called a driverpropertyBag for use as model-dependent information of a printer and a data group called a QueuepropertyBag associated with a print queue are held. The DriverPropertyBag is hereinafter also referred to as DPB, and the QueenPropertyBag is hereinafter also referred to as QPB. Both DPB and QPB are storage areas provided by the OS. The DPB is the model-dependent data of the printer existing in the driver package, and the data group is held as read-only in a specific area in the OS after the printer driver 203 is installed. QPB can be used by registering the XML definition file of the Key-Value pair in the OS, and it is possible to edit the Value with certain authority. In addition, the definition of QPB can be described in GPD, which is the print setting definition file 213.

プリンタエクステンション215は、V4プリンタドライバにおいて、ユーザが印刷設定を行うためのベンダ独自のユーザインタフェースを提供するモジュールである。プリンタエクステンション215は、印刷に用いる用紙サイズや印刷方向、その他の属性を設定する機能を提供する。 The printer extension 215 is a module in the V4 printer driver that provides a vendor-specific user interface for the user to make print settings. The printer extension 215 provides a function for setting the paper size, printing direction, and other attributes used for printing.

図2における印刷システムにおいて、アプリケーション201が印刷を行う場合、まず印刷設定情報の作成を行う。アプリケーション201は、プリンタドライバ203のコンフィグレーションモジュール219を呼び出して、印刷設定情報を作成して記憶する。また、アプリケーション201は、印刷設定情報の作成にプリンタエクステンション215を用いることができる。アプリケーション201は、DEVMODE構造体、もしくはPrintTicketの形式で印刷設定情報を保持している。 In the printing system shown in FIG. 2, when the application 201 prints, the print setting information is first created. The application 201 calls the configuration module 219 of the printer driver 203 to create and store print setting information. In addition, the application 201 can use the printer extension 215 to create the print setting information. Application 201 holds print setting information in the form of a DEVMODE structure or PrintTicket.

次に、アプリケーション201は、印刷データの生成を行う。作成した文書の各ページの印刷データは、OSの印刷サポート機能を通じてXPSスプールファイル205に一時的に蓄えられる。XPSスプールファイル205が生成されると、フィルタパイプラインマネージャ221に処理が渡される。フィルタパイプラインマネージャ221は、複数のフィルタを通すことで印刷が行われる仕組みで、フィルタコンフィグレーションファイル227でフィルタの数や順番が制御される。本実施形態におけるフィルタ群は、レイアウト処理部であるレイアウトフィルタ223と、印刷コマンド変換部である印刷コマンドフィルタ225とを含んで構成される。 Next, the application 201 generates print data. The print data of each page of the created document is temporarily stored in the XPS spool file 205 through the print support function of the OS. When the XPS spool file 205 is generated, the process is passed to the filter pipeline manager 221. The filter pipeline manager 221 is a mechanism in which printing is performed by passing through a plurality of filters, and the number and order of filters are controlled by the filter configuration file 227. The filter group in the present embodiment includes a layout filter 223 which is a layout processing unit and a print command filter 225 which is a print command conversion unit.

レイアウトフィルタ223は、XPSスプールファイル205に格納されたXPSドキュメントを入力とし、印刷設定情報に基づきページのレイアウト処理を行い、レイアウト済みのXPSデータを出力する機能を有する。レイアウト処理とは、例えば複数のページを一つの用紙面に印刷する割り付け印刷や、一つのページを複数の用紙面に印刷するポスター印刷を含む。 The layout filter 223 has a function of inputting an XPS document stored in the XPS spool file 205, performing page layout processing based on print setting information, and outputting the laid-out XPS data. The layout process includes, for example, layout printing in which a plurality of pages are printed on one paper surface and poster printing in which one page is printed on a plurality of paper surfaces.

印刷コマンドフィルタ225は、レイアウトフィルタ223の出力を入力とし、印刷設定情報に従い、XPSドキュメントを印刷装置102が解釈可能な印刷コマンドに変換し出力する機能を有する。印刷コマンドフィルタ225が入力のXPSドキュメントを一度イメージデータに変換する場合、印刷コマンドフィルタ225は、一般的にレンダフィルタと呼ばれる。レンダフィルタは、例えば、インクジェットプリンタに代表される廉価なラスタプリンタ用のプリンタドライバにおいて構成される。印刷コマンドフィルタ225がレンダフィルタとして動作する場合は、入力のXPSドキュメントを一度イメージデータに変換する。その後、色空間の変換や二値化等の画像処理の過程を経て、ラスタプリンタが解釈可能な印刷コマンドに変換される。例えばページプリンタに代表される高機能なプリンタにおいて、プリンタが解釈できる印刷コマンドの種類にXPSが含まれる場合、印刷コマンドフィルタ225は、入力のXPSドキュメントを編集してXPSドキュメントを出力する。印刷コマンドフィルタ225にて処理する必要がない場合、入力のXPSドキュメントをそのまま出力しても良い。また、印刷コマンドフィルタ225は、プリンタドライバ203に含んで構成されていなくても良い。 The print command filter 225 has a function of inputting the output of the layout filter 223, converting the XPS document into a print command that can be interpreted by the printing device 102 according to the print setting information, and outputting the XPS document. When the print command filter 225 once converts the input XPS document into image data, the print command filter 225 is generally called a render filter. The render filter is composed of, for example, a printer driver for an inexpensive raster printer represented by an inkjet printer. When the print command filter 225 operates as a render filter, the input XPS document is once converted into image data. After that, it is converted into a print command that can be interpreted by the raster printer through the process of image processing such as color space conversion and binarization. For example, in a high-performance printer represented by a page printer, when XPS is included in the types of print commands that can be interpreted by the printer, the print command filter 225 edits the input XPS document and outputs the XPS document. If it is not necessary to process with the print command filter 225, the input XPS document may be output as it is. Further, the print command filter 225 may not be included in the printer driver 203.

図3(a)は、プリンタエクステンション215が、PrintCapabilitiesを要求した際に、コンフィグレーションモジュール219がPrintCapabilitiesを返却するまでのデータの流れを示す図である。コンフィグレーションモジュール219は、印刷設定定義ファイル213に基づき、渡されたPrintTicketの設定を基準としてPrintCapabilitiesを生成し、印刷設定編集モジュール211を呼び出す。印刷設定編集モジュール211は、コンフィグレーションモジュール219から渡されたPrintCapabilitiesとPrintTicketと、DPBに記憶された機種依存情報などを基に、PrintCapabilitiesとPrintTicketを編集する。印刷設定編集モジュール211が編集したPrintCapabilitiesとPrintTicketは、コンフィグレーションモジュール219を通してプリンタエクステンション215へ返却される。 FIG. 3A is a diagram showing a data flow until the configuration module 219 returns the Print Capabilities when the printer extension 215 requests the Print Capabilities. The configuration module 219 generates PrintCapabilities based on the passed PrintTicket settings based on the print setting definition file 213, and calls the print setting editing module 211. The print setting editing module 211 edits the Print Capbilities and PrintTickets based on the PrintCapavities and PrintTickets passed from the configuration module 219 and the model-dependent information stored in the DPB. The Print Capabilities and Print Tickets edited by the print setting editing module 211 are returned to the printer extension 215 through the configuration module 219.

図3(b)は、プリンタエクステンション215が、PrintTicketを要求した際に、コンフィグレーションモジュール219がPrintTicketを返却するまでのデータの流れを示す図である。コンフィグレーションモジュール219は、印刷設定定義ファイル213に基づき、渡されたPrintTicketの設定を編集し、印刷設定編集モジュール211を呼び出す。印刷設定編集モジュール211は、コンフィグレーションモジュール219から渡されたPrintTicketと、DPBに格納された機種依存情報などを基に、PrintTicketを編集する。印刷設定編集モジュール211が編集したPrintTicketは、コンフィグレーションモジュール219を通してプリンタエクステンション215へ返却される。PrintTicketのみが要求された場合は、PrintCapabilitiesの編集処理が行われないため、処理速度が図3(a)の場合に比べると速くなる。 FIG. 3B is a diagram showing a data flow until the configuration module 219 returns the PrintTicket when the printer extension 215 requests the PrintTicket. The configuration module 219 edits the passed PrintTicket settings based on the print setting definition file 213, and calls the print setting edit module 211. The print setting editing module 211 edits the PrintTicket based on the PrintTicket passed from the configuration module 219 and the model-dependent information stored in the DPB. The PrintTicket edited by the print setting editing module 211 is returned to the printer extension 215 through the configuration module 219. When only PrintTicket is requested, the processing speed is higher than that in the case of FIG. 3A because the editing process of PrintCapabilities is not performed.

図4及び図5は、コンフィグレーションモジュール219が生成したPrintCapabilitiesの一部である。PrintCapabilitiesは、XMLで記述される。印刷設定定義ファイルで定義されたFeature及びOptionに対応して、PrintCapabilitiesでも、FeatureとOptionは、階層構造で表現される。また、それぞれOptionの子要素として表示名称を表すDisplayNameがPropertyとして定義される。さらに、各Optionには、constrained属性が記述される。constrained属性は、対象のOptionが設定可能な状態であるかを示し、設定可能な場合はconstrained属性には“None”が設定される。印刷設定定義ファイルに記述された禁則に従い、指定されたPrintTicketに基づく設定下では設定できない場合は、constrained属性には他の設定と競合して設定できない旨を示す“PrintTicketSettings”が設定される。その他に、現在のデバイスの状態によって設定できない旨を示す“DeviceSttings”などの設定がある。 4 and 5 are a part of Print Capabilities generated by the configuration module 219. Print Capabilities are described in XML. Corresponding to the feature and option defined in the print setting definition file, the feature and option are also represented in a hierarchical structure in PrintCapabilities. In addition, DisplayName representing the display name is defined as Property as a child element of Option. Further, a constrained attribute is described in each Option. The constrained attribute indicates whether the target option can be set, and if it can be set, "None" is set in the constrained attribute. According to the prohibition described in the print setting definition file, if it cannot be set under the setting based on the specified PrintTicket, "PrintTicketSettings" indicating that it cannot be set in conflict with other settings is set in the constrained attribute. In addition, there are settings such as "DeviceStings" indicating that the settings cannot be made depending on the current device status.

例えば、図4及び図5のPrintCapabilitiesには、PageMediaTypeのOptionとしてPlainとPhotoPaperが、PageBorderlessのOptionとしてNoneとBorderlessが、PageOrientationのOptionとしてLandscapeとPortraitが、JobNUpAllDocumentsContiguouslyのOptionとしてNoneとPagePerSheet_2が、PagePosterのOptionとしてNoneとDivision_2が、DocumentCollateのOptionとしてUncollatedとCollatedが記述されている。 For example, the PrintCapabilities in FIGS. 4 and 5, Plain and PhotoPaper as Option for PageMediaType is, None and Borderless as Option for PageBorderless is, Landscape and Portrait as Option for PageOrientation is, is None and PagePerSheet_2 as Option for JeiobienuyupAllDocumentsContiguously, the PagePoster None and Division_2 are described as Options, and Uncollated and Collated are described as Options of Landscape Collate.

図6は、PrintTicketの一例を示す図である。PrintTicketは、XMLで記述される。PrintTicketには、機能(Feature)毎に、設定項目(Option)が記載される。例えば、図6のPrintTicketでは、PageMediaTypeにPhotoPaper、PageBorderlessにNone、PageOrientationにPortrait、JobNUpAllDocumentsContiguouslyにPagesPerSheet_2、PagePosterにNone、DocumentCollateにCollatedが設定されている。 FIG. 6 is a diagram showing an example of PrintTicket. PrintTicket is described in XML. In PrintTicket, setting items (Options) are described for each function (Fature). For example, in the PrintTicket of FIG. 6, PhotoPaper is set to PageMediaType, None is set to PageBorderless, Portrait is set to PageOrationation, JobNUpAllDocumentsContigouously is set to PageCenterDate_2, and Page is set to PageCenterDate.

図7は、プリンタエクステンション215の印刷設定を行うUI(印刷設定画面)の一部を示す図である。印刷設定画面上の各コントロールに表示される内容は、コンフィグレーションモジュール219から返却されたPrintCapabilitiesとPrintTicketを用いて構築される。なお、本実施形態におけるコントロールとは、画面上でユーザにより操作される操作アイテムと呼ぶこともできる。 FIG. 7 is a diagram showing a part of a UI (print setting screen) for setting print settings of the printer extension 215. The contents displayed in each control on the print setting screen are constructed by using PrintCapabilities and PrintTicket returned from the configuration module 219. The control in the present embodiment can also be called an operation item operated by the user on the screen.

ドロップダウンリスト601は、用紙の種類を設定するためのコントロールである。PrintCapabilitiesのPageMediaTypeのOptionであるPlainとPhotoPaperのDisplayNameを表示し、図7の場合、PrintTicketのPageMediaTypeの設定値PhotoPaper(写真紙)が選択される。 The drop-down list 601 is a control for setting the paper type. Plane and PhotoPaper's DisplayName, which are options of the PageMediaType of PrintCapavilities, are displayed. In the case of FIG. 7, the set value PhotoPaper (photo paper) of PageMediaType of PrintTicket is selected.

チェックボックス602は、フチなし全面印刷の設定をするためのコントロールである。PrintCapabilitiesのPageBorderlessのOptionであるNoneとBorderlessのconstrained属性がどちらもNoneなので、表示は有効とされる。そして、図7の場合、PrintTicketのPageBorderlessの設定値がNoneなので、表示はオフとされる。 The check box 602 is a control for setting borderless full-page printing. Since both None and Borderless's constrained attribute, which is the Option of PageBorderless of PrintCapabilities, are None, the display is valid. Then, in the case of FIG. 7, since the setting value of PageBorderless of PrintTicket is None, the display is turned off.

ラジオボタン603と、604は、印刷の向きの設定をするためのコントロールである。PrintCapabilitiesのPageOrientationのOptionであるLandscapeとPortraitのDisplayNameをそれぞれ表示する。図7の場合、PrintTicketのPageOrientationの設定値Portrait(縦)が選択される。 Radio buttons 603 and 604 are controls for setting the print orientation. Landscape Name, which is an option of Page Origination of Print Capabilities, and Display Name of Portrait, respectively, are displayed. In the case of FIG. 7, the setting value Portrait (vertical) of PageOrientation of PrintTicket is selected.

ドロップダウンリスト605は、ページレイアウト(割り付け印刷や分割印刷)を設定するためのコントロールである。割り付け印刷は、複数のページを1枚の用紙に割り当てて印刷し、分割印刷は、1ページを複数の用紙に分割して印刷する機能である。割り付け印刷と分割印刷は同時に設定できないため、GPDに禁則の定義が記載されている。PrintCapabilitiesのJobNUpAllDocumentsContiguouslyのOptionであるNoneとPagePerSheet_2、およびPagePosterのOptionであるDivision_2のDisplayNameを表示する。図7の場合、PrintTicketのJobNUpAllDocumentsContiguouslyの設定値PagePerSheet_2が選択される。 The drop-down list 605 is a control for setting a page layout (layout printing or split printing). The layout printing is a function of allocating a plurality of pages to one sheet of paper for printing, and the split printing is a function of dividing one page into a plurality of sheets for printing. Since layout printing and split printing cannot be set at the same time, the definition of prohibition is described in GPD. The Display Names of None and PagePerSheet_2, which are options of JobNUpAllDocumentsContiguously of PrintCapabilities, and Display_2, which is an option of PagePoster, are displayed. In the case of FIG. 7, the setting value PagePerSheet_2 of JobNUpAllDocumentsContiguously of PrintTicket is selected.

そして、PrintCapabilitiesのDivision_2のconstrained属性が“PrintTicketSettings”となっていることに着目する。この禁則は、PrintTicketのJobNUpAllDocumentsContiguouslyの設定がPagePerSheet_2になっていることが要因である。通常、constrained属性がNone以外であれば、オプションを無効にする。しかしながら、本コントロールのように複数のFeatureを1つのコントロールで設定する場合においては、そのFeature間で発生する禁則は無視する必要がある。なぜなら、禁則を無視しなかった場合、2in1印刷から2分割印刷に設定を変更する場合、一旦1in1印刷を設定し、2分割印刷が有効になってから2分割印刷を設定しなければならず、ユーザビリティが低下するからである。 Then, pay attention to the fact that the constrained attribute of Division_2 of PrintCapabilities is "PrintTicketSettings". This prohibition is due to the fact that the setting of JobNUpAllDocumentsContiguously of PrintTicket is PagePerSheet_2. Normally, if the constrained attribute is other than None, the option is disabled. However, when a plurality of features are set by one control as in this control, it is necessary to ignore the prohibition generated between the fairures. This is because, if the prohibition is not ignored, and if the setting is changed from 2in1 printing to 2-split printing, 1in1 printing must be set once, and 2-split printing must be set after 2-split printing is enabled. This is because usability is reduced.

さらにドロップダウンリスト605には、レイアウトをより分かりやすくするためにオプションの先頭にアイコン606を表示する。一部のアイコンは、用紙の縦横比によって切り替わる。図8に、ページレイアウト605で表示するアイコンの説明をする。図8(a)は、縦長用紙の場合のアイコンの例で、横方向にページを配置する。図8(b)は、横長用紙の場合のアイコンの例で、縦方向にページを配置する。ここでは、縦長用紙が選択されているとし、印刷の向きが縦なので図8(a)のアイコンを表示する。 In addition, the drop-down list 605 displays an icon 606 at the beginning of the option to make the layout easier to understand. Some icons are switched according to the aspect ratio of the paper. FIG. 8 describes the icons displayed in the page layout 605. FIG. 8A is an example of an icon in the case of portrait paper, in which pages are arranged in the horizontal direction. FIG. 8B is an example of an icon in the case of landscape paper, in which pages are arranged in the vertical direction. Here, assuming that portrait paper is selected, the icon shown in FIG. 8A is displayed because the print orientation is portrait.

チェックボックス607は、部単位で印刷する設定をするためのコントロールである。PrintCapabilitiesのDocumentCollateのOptionであるUncollatedとCollatedのconstrained属性がどちらもNoneなので、表示は有効とされる。そして、図7の場合、PrintTicketのDocumentCollateの設定値がCollatedなので、表示はオンとされる。 The check box 607 is a control for setting to print in units of copies. Since both the Uncollated and Collated attributes, which are the options of the Docoment Collate of Print Capabilities, are None, the display is valid. Then, in the case of FIG. 7, since the setting value of the Docoment Collate of PrintTicket is Collated, the display is turned on.

以下、コントロールに対する一例の操作に基づいて、本実施形態の動作を説明する。 Hereinafter, the operation of the present embodiment will be described based on an example operation on the control.

<ケース1:PrintCapabilities及びPrintTicketの生成なし、UI更新なし>
部単位で印刷チェックボックス607がオフされると、プリンタエクステンション215は、PrintTicketのDocumentCollateの設定値をUncollatedに編集し、図9の印刷設定更新処理を開始する。
<Case 1: No generation of PrintCapabilities and PrintTickets, no UI update>
When the print check box 607 is cleared on a copy-by-copy basis, the printer extension 215 edits the setting value of the DocomentCollate of PrintTicket to Uncollated and starts the print setting update process of FIG.

図9は、プリンタエクステンション215が、PrintCapabilities、PrintTicketおよびUIを更新する処理を示すフローチャートである。S801では、プリンタエクステンション215は、DPBに格納された印刷設定更新情報を取得する。 FIG. 9 is a flowchart showing a process in which the printer extension 215 updates the PrintCapabilities, PrintTickets, and UI. In S801, the printer extension 215 acquires the print setting update information stored in the DPB.

図10は、印刷設定更新情報を示す図である。印刷設定更新情報は、印刷設定が変更された際、UIの更新に伴う、PrintCapabilities、PrintTicketの更新の要否を定義したリストである。Nameにはコントロール名が列挙され、UpdateSettingsには更新が必要なコントロール名が列挙される。更新が必要なコントロールがない場合は、nullが記載される。IsNeedCommitには、PrintCapabilities、PrintTicketとも更新しない場合は0が記載される。また、PrintCapabilities、PrintTicketとも更新する場合は1が記載される。また、PrintTicketのみ更新する場合は2が記載される。リストに記載がなければ、UpdateSettings=null、IsNeedCommit=0として動作する。 FIG. 10 is a diagram showing print setting update information. The print setting update information is a list that defines whether or not the Print Capabilities and Print Tickets need to be updated when the print settings are changed and the UI is updated. Control names are listed in Name, and control names that need to be updated are listed in UpdateSettings. If there are no controls that need to be updated, null is listed. In IsNeedCommit, 0 is described when neither PrintCapabilities nor PrintTicket is updated. Further, when updating both PrintCapabilities and PrintTicket, 1 is described. Further, when updating only PrintTicket, 2 is described. Unless described in the list, it operates as UpdateSettings = null and IsNeedCommit = 0.

S802では、プリンタエクステンション215は、印刷設定更新情報に、Nameが一致するデータが存在するか否かを判定する。本例では、NameがDocumentCollateであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがDocumentCollateのデータは存在しないので、S804に進み、プリンタエクステンション215は、図11のUI更新処理を実行し、その後、図9の印刷設定更新処理を終了する。 In S802, the printer extension 215 determines whether or not there is data that matches Name in the print setting update information. In this example, it is determined whether or not there is data in which the Name is a Document Collect. Here, since the print setting update information of FIG. 10 does not have the data of DocomentCollate by Name, the process proceeds to S804, the printer extension 215 executes the UI update process of FIG. 11, and then the print setting update process of FIG. To finish.

図11は、プリンタエクステンション215が、UIを更新する処理を示すフローチャートである。S1001では、プリンタエクステンション215は、DPBに記憶された印刷設定更新情報を取得する。S1002では、印刷設定更新情報に、Nameが一致するデータが存在するか否かを判定する。本例では、NameがDocumentCollateであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがDocumentCollateのデータは存在しないので、S1009に進み、プリンタエクステンション215は、印刷設定UIが無効か否かを判定する。ここでは、印刷設定UIは無効ではないので、図11のUI更新処理を終了する。 FIG. 11 is a flowchart showing a process in which the printer extension 215 updates the UI. In S1001, the printer extension 215 acquires the print setting update information stored in the DPB. In S1002, it is determined whether or not there is data that matches Name in the print setting update information. In this example, it is determined whether or not there is data in which the Name is a Document Collect. Here, since the print setting update information of FIG. 10 does not have the data of DocumentCollate by Name, the process proceeds to S1009, and the printer extension 215 determines whether or not the print setting UI is invalid. Here, since the print setting UI is not invalid, the UI update process of FIG. 11 is terminated.

以上のように、本ケースでは、PrintCapabilitiesとPrintTicketの生成処理およびUI更新処理は行われない。そのため、印刷設定UIが無効になることがないので、ユーザは次のコントロールを操作することができ、操作性の高いUIを提供することができる。また、本ケースでは、部単位で印刷チェックボックス607がオフされる場合を説明した。しかし、PrintCapabilitiesとPrintTicketの生成処理およびUI更新処理が行われない場合であれば、他の操作が行われても上記の動作は同様に適用され得る。 As described above, in this case, the generation process of PrintCapabilities and PrintTicket and the UI update process are not performed. Therefore, since the print setting UI is not invalidated, the user can operate the next control and can provide a UI with high operability. Further, in this case, the case where the print check box 607 is cleared for each copy has been described. However, if the generation process of PrintCapabilities and PrintTicket and the UI update process are not performed, the above operation can be similarly applied even if other operations are performed.

<ケース2:PrintCapabilities及びPrintTicketの生成なし、UI更新あり>
印刷の向きの横ラジオボタン604がオンされると、プリンタエクステンション215は、PrintTicketのPageOrientationの設定値をLandscapeに編集し、図9の印刷設定更新処理を開始する。
<Case 2: PrintCapabilities and PrintTickets are not generated, UI is updated>
When the horizontal radio button 604 for the print orientation is turned on, the printer extension 215 edits the setting value of the Page Orientation of PrintTicket to Landscape and starts the print setting update process of FIG.

S801では、プリンタエクステンション215は、DPBに格納された印刷設定更新情報を取得する。本例では、S802では、プリンタエクステンション215は、印刷設定更新情報に、NameがPageOrientationであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageOrientationのデータが存在するので、S803に進み、プリンタエクステンション215は、該当するデータ内のIsNeedCommitの設定値が0か否かを判定する。ここでは、IsNeedCommitの設定値は0なので、S804に進み、図11のUI更新処理を実行する。 In S801, the printer extension 215 acquires the print setting update information stored in the DPB. In this example, in S802, the printer extension 215 determines whether or not the print setting update information includes data in which Name is PageOrationation. Here, since the data of PageOrationation of Name exists in the print setting update information of FIG. 10, the process proceeds to S803, and the printer extension 215 determines whether or not the setting value of IsNeedCommit in the corresponding data is 0. Here, since the setting value of IsNeedCommit is 0, the process proceeds to S804 and the UI update process of FIG. 11 is executed.

図11のS1001では、プリンタエクステンション215は、DPBに格納された印刷設定更新情報を取得する。本例では、S1002では、プリンタエクステンション215は、印刷設定更新情報に、NameがPageOrientationであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageOrientationのデータが存在するので、S1003に進み、プリンタエクステンション215は、該当するデータ内のUpdateSettingsを取得する。図10に示すように、UpdateSettingsには、“PageLayout”のみが列挙されているので、ページレイアウトコンボボックス605を更新する。 In S1001 of FIG. 11, the printer extension 215 acquires the print setting update information stored in the DPB. In this example, in S1002, the printer extension 215 determines whether or not there is data in which Name is PageOrationation in the print setting update information. Here, since the data of PageOrationation of Name exists in the print setting update information of FIG. 10, the process proceeds to S1003, and the printer extension 215 acquires the UpdateSettings in the corresponding data. As shown in FIG. 10, since only "PageLayout" is listed in UpdateSettings, the page layout combo box 605 is updated.

ページレイアウトコンボボックス605は前述のとおり割り付け印刷と分割印刷を含む。そのため、S1004で、プリンタエクステンション215は、PrintCapabilitiesとPrintTicketからJobNUpAllDocumentsContiguouslyとPagePosterの情報を取得する。そして、S1005で、プリンタエクステンション215は、ドロップダウンリスト605と設定値を更新する。ただし、前述のとおりJobNUpAllDocumentsContiguouslyとPagePoster間で発生する禁則については無視される。S1004とS1005は、IsNeedCommitが0(PrintCapabilities、PrintTicketとも更新しない)の場合は、実行しなくてもよい。 The page layout combo box 605 includes layout printing and split printing as described above. Therefore, in S1004, the printer extension 215 acquires the information of JobNUpAllDocmunantsContiguously and PagePoster from PrintCapabilities and PrintTicket. Then, in S1005, the printer extension 215 updates the drop-down list 605 and the set value. However, as described above, the prohibition that occurs between JobNUpAllDocumentsContiguously and PagePoster is ignored. S1004 and S1005 may not be executed when IsNeedCommit is 0 (neither PrintCapabilities nor PrintTicket is updated).

次に、S1006では、プリンタエクステンション215は、アイコンがあるか否かを判定する。ページレイアウトコンボボックス605には、前述のとおりアイコンが表示されるので、S1007に進み、プリンタエクステンション215は、印刷設定UIを無効にしてアイコンを更新する。印刷の向きが横に変更された結果、図8(b)のアイコンに切り替えられる。S1007の処理は、IsNeedCommitが0の場合でも実行される。 Next, in S1006, the printer extension 215 determines whether or not there is an icon. Since the icon is displayed in the page layout combo box 605 as described above, the process proceeds to S1007, and the printer extension 215 disables the print setting UI and updates the icon. As a result of changing the print orientation to landscape, the icon is switched to the icon shown in FIG. 8 (b). The process of S1007 is executed even when IsNeedCommit is 0.

S1008では、プリンタエクステンション215は、UpdateSettingsに列挙された全ての要素の更新が完了したか否かを判定する。全ての要素の更新が完了していないと判定された場合、S1004からの処理を繰り返す。一方、全ての要素の更新が完了したと判定された場合、S1009に進み、プリンタエクステンション215は、印刷設定UIが無効か否かを判定する。ここでは、無効であるので、S1010に進み、印刷設定UIを有効にし、その後、図11のUI更新処理を終了する。 In S1008, the printer extension 215 determines whether or not all the elements listed in UpdateSettings have been updated. When it is determined that the update of all the elements is not completed, the process from S1004 is repeated. On the other hand, when it is determined that the update of all the elements is completed, the process proceeds to S1009, and the printer extension 215 determines whether or not the print setting UI is invalid. Since it is invalid here, the process proceeds to S1010, the print setting UI is enabled, and then the UI update process of FIG. 11 is terminated.

以上のように、本ケースでは、PrintCapabilitiesとPrintTicketの生成処理は行われない。また、印刷設定UIが無効になる時間は極めて短く、ユーザはほぼ待つことなく次のコントロールを操作することができる。その結果、操作性の高いUIを提供することができる。 As described above, in this case, the generation processing of PrintCapabilities and PrintTicket is not performed. In addition, the print setting UI is disabled for a very short time, and the user can operate the next control with almost no waiting. As a result, it is possible to provide a UI with high operability.

また、本ケースでは、印刷の向きの横ラジオボタン604がオンされる場合を説明した。しかし、PrintCapabilitiesとPrintTicketの生成処理が行われず、S1007で印刷設定UIが無効になる場合であれば、他の操作が行われても上記の動作は同様に適用され得る。 Further, in this case, the case where the horizontal radio button 604 for the printing orientation is turned on has been described. However, if the print setting UI is invalidated in S1007 without the generation processing of PrintCapavities and PrintTickets being performed, the above operation can be similarly applied even if other operations are performed.

<ケース3:PrintCapabilitiesの生成なし、PrintTicketの生成あり、UI更新あり>
フチなし印刷チェックボックス602がオンされると、プリンタエクステンション215は、PrintTicketのPageBorderlessの設定値をBorderlessに編集し、図9の印刷設定更新処理を開始する。
<Case 3: PrintCapavitiles not generated, PrintTicket generated, UI updated>
When the borderless print check box 602 is selected, the printer extension 215 edits the setting value of PageBorderless of PrintTicket to Borderless and starts the print setting update process of FIG.

S801では、プリンタエクステンション215は、DPBに記憶された印刷設定更新情報を取得する。本例では、S802では、プリンタエクステンション215は、印刷設定更新情報に、NameがPageBorderlessであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageBorderlessのデータが存在するので、S803に進み、プリンタエクステンション215は、該当するデータ内のIsNeedCommitの設定値が0か否かを判定する。IsNeedCommitの設定値は0ではないので、S805に進み、プリンタエクステンション215は、IsNeedCommitの設定値が1か否かを判定する。IsNeedCommitの設定値は2なので、S808に進み、プリンタエクステンション215は、コンフィグレーションモジュール219へ編集したPrintTicketを渡してPrintTicketを要求する。PrintTicketの生成は非同期処理なので、PrintTicketの生成の完了を待たず次の処理へ進む。S807では、プリンタエクステンション215は、印刷設定UIを無効にして入力を受け付けないようにし、図9の印刷設定処理を終了する。 In S801, the printer extension 215 acquires the print setting update information stored in the DPB. In this example, in S802, the printer extension 215 determines whether or not the print setting update information includes data in which Name is PageBorderless. Here, since the data of PageBorderless for Name exists in the print setting update information of FIG. 10, the process proceeds to S803, and the printer extension 215 determines whether or not the setting value of IsNeedCommit in the corresponding data is 0. Since the set value of IsNeedCommit is not 0, the process proceeds to S805, and the printer extension 215 determines whether or not the set value of IsNeedCommit is 1. Since the setting value of IsNeedCommit is 2, the process proceeds to S808, and the printer extension 215 passes the edited PrintTicket to the configuration module 219 and requests the PrintTicket. Since the generation of PrintTicket is an asynchronous process, the process proceeds to the next process without waiting for the completion of the generation of PrintTicket. In S807, the printer extension 215 disables the print setting UI so as not to accept input, and ends the print setting process of FIG.

コンフィグレーションモジュール219でPrintTicketの生成が完了すると、プリンタエクステンション215へ完了イベントが通知される。プリンタエクステンション215は、完了イベントを受信すると、図11のUI更新処理を開始する。 When the generation of PrintTicket is completed in the configuration module 219, the completion event is notified to the printer extension 215. When the printer extension 215 receives the completion event, the printer extension 215 starts the UI update process of FIG.

S1001では、プリンタエクステンション215は、DPBに格納された印刷設定更新情報を取得する。S1002では、プリンタエクステンション215は、印刷設定更新情報に、NameがPageBorderlessであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageBorderlessのデータが存在するので、S1003に進み、プリンタエクステンション215は、該当するデータ内のUpdateSettingsを取得する。図10に示すように、UpdateSettingsには“PageLayout”のみが列挙されているので、ページレイアウトコンボボックス605を更新する。 In S1001, the printer extension 215 acquires the print setting update information stored in the DPB. In S1002, the printer extension 215 determines whether or not the print setting update information includes data in which Name is PageBorderless. Here, since the data of PageBorderless by Name exists in the print setting update information of FIG. 10, the process proceeds to S1003, and the printer extension 215 acquires the UpdateSettings in the corresponding data. As shown in FIG. 10, since only "PageLayout" is listed in UpdateSettings, the page layout combo box 605 is updated.

ページレイアウトコンボボックス605は前述のとおり割り付け印刷と分割印刷を含む。S1004でプリンタエクステンション215は、PrintCapabilitiesとPrintTicketからJobNUpAllDocumentsContiguouslyとPagePosterの情報を取得する。そして、S1005で、プリンタエクステンション215は、ドロップダウンリスト605と設定値を更新する。 The page layout combo box 605 includes layout printing and split printing as described above. In S1004, the printer extension 215 acquires the information of JobNUpAllDocumentsContitogously and PagePoster from PrintCapabilities and PrintTicket. Then, in S1005, the printer extension 215 updates the drop-down list 605 and the set value.

JobNUpAllDocumentsContiguouslyとPagePoster間で発生する禁則については無視するが、他の設定による禁則については従う。本ケースでは、フチなし印刷時は、割り付け印刷と分割印刷は設定できないので、ページレイアウトコンボボックス605を無効にし、設定値はPrintTicketに従って1in1印刷に変更する。 Ignore the kinsoku that occurs between JobNUpAllDocumentsContitogously and PagePoster, but follow the kinsoku of other settings. In this case, since layout printing and split printing cannot be set during borderless printing, the page layout combo box 605 is disabled and the set value is changed to 1in1 printing according to PrintTicket.

次に、S1006では、プリンタエクステンション215は、アイコンがあるか否かを判定する。ページレイアウトコンボボックス605には、前述のとおりアイコンが表示されるので、S1007に進み、プリンタエクステンション215は、アイコンを更新する。1in1印刷の場合、印刷の向きに依らず、図8(c)のアイコンに切り替えられる。 Next, in S1006, the printer extension 215 determines whether or not there is an icon. Since the icon is displayed in the page layout combo box 605 as described above, the process proceeds to S1007, and the printer extension 215 updates the icon. In the case of 1in1 printing, the icon can be switched to the icon shown in FIG. 8C regardless of the printing orientation.

S1008では、プリンタエクステンション215は、UpdateSettingsに列挙された全ての要素の更新が完了したか否かを判定する。全ての要素の更新が完了していないと判定された場合、S1004からの処理を繰り返す。一方、全ての要素の更新が完了したと判定された場合、S1009に進み、プリンタエクステンション215は、印刷設定UIが無効か否かを判定する。ここでは、無効であるので、S1010に進み、印刷設定UIを有効にし、その後、図11のUI更新処理を終了する。 In S1008, the printer extension 215 determines whether or not all the elements listed in UpdateSettings have been updated. When it is determined that the update of all the elements is not completed, the process from S1004 is repeated. On the other hand, when it is determined that the update of all the elements is completed, the process proceeds to S1009, and the printer extension 215 determines whether or not the print setting UI is invalid. Since it is invalid here, the process proceeds to S1010, the print setting UI is enabled, and then the UI update process of FIG. 11 is terminated.

以上のように、本ケースでは、PrintCapabilitiesの生成処理は行われない。また、PrintTicket及びPrintCapabilitiesの両方を生成する場合に比べ、印刷設定UIが無効になる時間を短くできる。その結果、操作性の高いUIを提供することができる。 As described above, in this case, the generation process of PrintCapabilities is not performed. In addition, the time during which the print setting UI is invalid can be shortened as compared with the case where both PrintTicket and PrintCapabilities are generated. As a result, it is possible to provide a UI with high operability.

また、本ケースでは、フチなし印刷チェックボックス602がオンされる場合を説明したが、PrintCapabilitiesの生成処理が行われない場合であれば、他の操作が行われても上記の動作は同様に適用され得る。 Further, in this case, the case where the borderless print check box 602 is turned on has been described, but if the print capabilities generation process is not performed, the above operation is similarly applied even if other operations are performed. Can be done.

<ケース4:PrintCapabilities及びPrintTicketの生成あり、UI更新あり>
用紙の種類ドロップダウンリスト601で普通紙が選択されると、プリンタエクステンション215は、PrintTicketのPageMediaTypeの設定値をPlainに編集し、図9の印刷設定更新処理を開始する。
<Case 4: PrintCapabilities and PrintTickets are generated, UI is updated>
When plain paper is selected in the paper type drop-down list 601, the printer extension 215 edits the setting value of the PageMediaType of PrintTicket to Plane and starts the print setting update process of FIG.

S801では、プリンタエクステンション215は、DPBに格納された印刷設定更新情報を取得する。本例では、S802では、プリンタエクステンション215は、印刷設定更新情報に、NameがPageMediaTypeであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageMediaTypeのデータが存在するので、S803に進み、プリンタエクステンション215は、該当するデータ内のIsNeedCommitの設定値が0か否かを判定する。IsNeedCommitの設定値は0ではないので、S805に進み、プリンタエクステンション215は、IsNeedCommitの設定値が1か否かを判定する。IsNeedCommitの設定値は1なので、S806に進み、プリンタエクステンション215は、コンフィグレーションモジュール219へ編集したPrintTicketを渡してPrintCapabilitiesとPrintTicketを要求する。PrintCapabilitiesとPrintTicketの生成は非同期処理なので、PrintCapabilities及びPrintTicketの生成の完了を待たず次の処理へ進む。S807で、プリンタエクステンション215は、印刷設定UIを無効にして入力を受け付けないようにし、図9の印刷設定処理を終了する。 In S801, the printer extension 215 acquires the print setting update information stored in the DPB. In this example, in S802, the printer extension 215 determines whether or not the print setting update information includes data in which Name is PageMediaType. Here, since the data of PageMediaType for Name exists in the print setting update information of FIG. 10, the process proceeds to S803, and the printer extension 215 determines whether or not the setting value of IsNeedCommit in the corresponding data is 0. Since the set value of IsNeedCommit is not 0, the process proceeds to S805, and the printer extension 215 determines whether or not the set value of IsNeedCommit is 1. Since the setting value of IsNeedCommit is 1, the process proceeds to S806, and the printer extension 215 passes the edited PrintTicket to the configuration module 219 and requests PrintCapabilities and PrintTicket. Since the generation of PrintCapabilities and PrintTickets is an asynchronous process, the process proceeds to the next process without waiting for the completion of the generation of PrintCapabilities and PrintTickets. In S807, the printer extension 215 disables the print setting UI so that no input is accepted, and ends the print setting process of FIG.

コンフィグレーションモジュール219でPrintCapabilities及びPrintTicketの生成が完了すると、プリンタエクステンション215へ完了イベントが通知される。プリンタエクステンション215は、完了イベントを受信すると、図11のUI更新処理を開始する。 When the generation of PrintCapabilities and PrintTickets is completed in the configuration module 219, the completion event is notified to the printer extension 215. Upon receiving the completion event, the printer extension 215 starts the UI update process of FIG.

S1001では、プリンタエクステンション215は、DPBに格納された印刷設定更新情報を取得する。S1002では、プリンタエクステンション215は、印刷設定更新情報に、NameがPageMediaTypeであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageMediaTypeのデータが存在するので、S1003に進み、プリンタエクステンション215は、該当するデータ内のUpdateSettingsを取得する。図10に示すように、UpdateSettingsには、PageBorderlessとPageLayoutが列挙されているので、フチなし印刷チェックボックス602とページレイアウトコンボボックス605を更新する。 In S1001, the printer extension 215 acquires the print setting update information stored in the DPB. In S1002, the printer extension 215 determines whether or not the print setting update information includes data in which Name is PageMediaType. Here, since the data of PageMediaType for Name exists in the print setting update information of FIG. 10, the process proceeds to S1003, and the printer extension 215 acquires the UpdateSettings in the corresponding data. As shown in FIG. 10, since PageBorderless and PageLayout are listed in UpdateSettings, the borderless print check box 602 and the page layout combo box 605 are updated.

S1004では、プリンタエクステンション215は、PrintCapabilitiesとPrintTicketからPageBorderlessの情報を取得する。用紙の種類が普通紙の場合、フチなし印刷はできないので、S1005で、プリンタエクステンション215は、フチなし印刷チェックボックス602を無効にし、フチなし印刷オフを設定する。 In S1004, the printer extension 215 acquires the PageBorderless information from PrintCapabilities and PrintTicket. When the paper type is plain paper, borderless printing cannot be performed. Therefore, in S1005, the printer extension 215 disables the borderless printing check box 602 and sets the borderless printing off.

次に、S1006では、プリンタエクステンション215は、アイコンがあるか否かを判定する。フチなし印刷チェックボックス602にはアイコンはないので、S1008へ進む。S1008で、プリンタエクステンション215は、UpdateSettingsに列挙された全ての要素の更新が完了したか否かを判定する。ここでは、次の要素PageLayoutがあるので、S1004へ戻る。 Next, in S1006, the printer extension 215 determines whether or not there is an icon. Since there is no icon in the borderless print check box 602, the process proceeds to S1008. In S1008, the printer extension 215 determines whether or not all the elements listed in UpdateSettings have been updated. Here, since there is the next element PageLayout, the process returns to S1004.

ページレイアウトコンボボックス505は前述のとおり割り付け印刷と分割印刷を含む。S1004でプリンタエクステンション215は、PrintCapabilitiesとPrintTicketからJobNUpAllDocumentsContiguouslyとPagePosterの情報を取得する。そして、S1005で、プリンタエクステンション215は、ドロップダウンリスト605と設定値を更新する。ここでは、フチなし印刷がオフなので、プリンタエクステンション215は、ページレイアウトコンボボックス605を有効にし、設定値について、PrintTicketに従って1in1印刷を設定する。 The page layout combo box 505 includes layout printing and split printing as described above. In S1004, the printer extension 215 acquires the information of JobNUpAllDocumentsContitogously and PagePoster from PrintCapabilities and PrintTicket. Then, in S1005, the printer extension 215 updates the drop-down list 605 and the set value. Since borderless printing is off here, the printer extension 215 enables the page layout combo box 605 and sets 1in1 printing according to PrintTicket for the set value.

次に、S1006では、プリンタエクステンション215は、アイコンがあるか否かを判定する。ページレイアウトコンボボックス605には、前述のとおりアイコンが表示されるので、S1007に進み、プリンタエクステンション215は、アイコンを更新する。1in1印刷の場合、印刷の向きに依らず、図8(c)のアイコンに切り替えられる。 Next, in S1006, the printer extension 215 determines whether or not there is an icon. Since the icon is displayed in the page layout combo box 605 as described above, the process proceeds to S1007, and the printer extension 215 updates the icon. In the case of 1in1 printing, the icon can be switched to the icon shown in FIG. 8C regardless of the printing orientation.

S1008では、プリンタエクステンション215は、UpdateSettingsに列挙された全ての要素の更新が完了したか否かを判定する。全ての要素の更新が完了したと判定された場合、S1009に進み、プリンタエクステンション215は、印刷設定UIが無効か否かを判定する。ここでは、無効であるので、S1010に進み、印刷設定UIを有効にし、その後、図11のUI更新処理を終了する。 In S1008, the printer extension 215 determines whether or not all the elements listed in UpdateSettings have been updated. When it is determined that the update of all the elements is completed, the process proceeds to S1009, and the printer extension 215 determines whether or not the print setting UI is invalid. Since it is invalid here, the process proceeds to S1010, the print setting UI is enabled, and then the UI update process of FIG. 11 is terminated.

本ケースでは、用紙の種類ドロップダウンリスト601で普通紙が選択される場合を説明したが、PrintCapabilities及びPrintTicketの生成処理が行われる場合であれば、他の操作が行われても上記の動作は同様に適用され得る。 In this case, the case where plain paper is selected in the paper type drop-down list 601 has been described. However, if the generation processing of PrintCapabilities and PrintTicket is performed, the above operation will be performed even if other operations are performed. It can be applied as well.

以上のように、本実施形態によれば、印刷設定更新情報に基づいて、コンフィグレーションモジュール219に対する、PrintCapabilitiesとPrintTicketの生成の要求を制御する。つまり、ケース1及びケース2のように、PrintCapabilitiesとPrintTicketを生成する必要がない条件を満たす場合には、PrintCapabilitiesとPrintTicketの生成要求は行わない。なお、ケース1及びケース2のように、PrintCapabilitiesとPrintTicketを生成する必要がない条件を満たす場合は、禁則がないか若しくは禁則があっても無視できる場合に相当する。そのような構成により、PrintCapabilitiesとPrintTicketを生成することによってUI更新が完了するまで入力を受け付けられなくなる事態を低減することができる。 As described above, according to the present embodiment, the request for the generation of Print Capabilities and Print Tickets to the configuration module 219 is controlled based on the print setting update information. That is, as in Case 1 and Case 2, when the condition that it is not necessary to generate PrintCapabilities and PrintTickets is satisfied, the generation request of PrintCapabilities and PrintTickets is not performed. In addition, as in case 1 and case 2, when the condition that it is not necessary to generate PrintCapabilities and PrintTicket is satisfied, it corresponds to the case where there is no prohibition or even if there is a prohibition, it can be ignored. With such a configuration, it is possible to reduce the situation in which input cannot be accepted until the UI update is completed by generating PrintCapabilities and PrintTicket.

[第2実施形態]
以下、第2実施形態について第1実施形態と異なる点について説明する。本実施形態では、コントロールに対する操作により生じる禁則を解消するために印刷設定が矯正されてしまった場合でも、その印刷設定が設定可能になった時点で、自動的に設定を戻すことができる。以下、一例として、ユーザにより順次行われる操作1、2、3に沿って、本実施形態を説明する。
[Second Embodiment]
Hereinafter, the differences between the second embodiment and the first embodiment will be described. In the present embodiment, even if the print setting is corrected in order to eliminate the prohibition caused by the operation on the control, the setting can be automatically restored when the print setting can be set. Hereinafter, as an example, the present embodiment will be described along with operations 1, 2, and 3 sequentially performed by the user.

<操作1:フチなし印刷チェックボックス602をオン。PrintTicket生成あり、UI更新あり>
フチなし印刷チェックボックス602がオンされると、プリンタエクステンション215は、PrintTicketのPageBorderlessの設定値をBorderlessに編集し、図12の印刷設定更新処理を開始する。
<Operation 1: Borderless printing Check box 602 is turned on. PrintTicket generation, UI update available>
When the borderless print check box 602 is selected, the printer extension 215 edits the setting value of PageBorderless of PrintTicket to Borderless and starts the print setting update process of FIG.

図12は、本実施形態における、プリンタエクステンション215が、PrintCapabilities、PrintTicketおよびUIを更新する処理を示すフローチャートである。 FIG. 12 is a flowchart showing a process in which the printer extension 215 updates the PrintCapabilities, PrintTickets, and UI in the present embodiment.

S1101では、プリンタエクステンション215は、変更された印刷設定をメモリ領域に保存する。その際、保存された印刷設定は、後続する操作によって上書きされずに、一定期間、蓄積されていくものとする。本例では、フチなし印刷オンをメモリ領域へ保存する。S1102では、プリンタエクステンション215は、DPBに格納された印刷設定更新情報を取得する。S1103では、プリンタエクステンション215は、印刷設定更新情報に、Nameが一致するデータが存在するか否かを判定する。本例では、NameがPageBorderlessであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageBorderlessのデータが存在するので、S1104に進み、プリンタエクステンション215は、該当するデータ内のIsNeedCommitの設定値が0か否かを判定する。本例では、IsNeedCommitの設定値は0ではないので、S1106に進み、プリンタエクステンション215は、IsNeedCommitの設定値が1か否かを判定する。本例では、IsNeedCommitの設定値は2なので、S1109に進み、プリンタエクステンション215は、コンフィグレーションモジュール219へ編集したPrintTicketを渡してPrintTicketを要求する。PrintTicketの生成は非同期処理なので、PrintTicketの生成の完了を待たず次の処理へ進む。S1108で、プリンタエクステンション215は、印刷設定UIを無効にして入力を受け付けないようにし、図12の印刷設定処理を終了する。 In S1101, the printer extension 215 saves the changed print settings in the memory area. At that time, the saved print settings shall be accumulated for a certain period of time without being overwritten by subsequent operations. In this example, borderless printing on is saved in the memory area. In S1102, the printer extension 215 acquires the print setting update information stored in the DPB. In S1103, the printer extension 215 determines whether or not there is data in which the Name matches in the print setting update information. In this example, it is determined whether or not there is data in which Name is PageBorderless. Here, since the data of PageBorderless for Name exists in the print setting update information of FIG. 10, the process proceeds to S1104, and the printer extension 215 determines whether or not the setting value of IsNeedCommit in the corresponding data is 0. In this example, since the setting value of IsNeedCommit is not 0, the process proceeds to S1106, and the printer extension 215 determines whether or not the set value of IsNeedCommit is 1. In this example, since the setting value of IsNeedCommit is 2, the process proceeds to S1109, and the printer extension 215 passes the edited PrintTicket to the configuration module 219 and requests the PrintTicket. Since the generation of PrintTicket is an asynchronous process, the process proceeds to the next process without waiting for the completion of the generation of PrintTicket. In S1108, the printer extension 215 invalidates the print setting UI so as not to accept the input, and ends the print setting process of FIG.

S1103でNameが一致するデータが存在しないと判定された場合、S1105で、図11のUI更新処理が実行され、その後、図12の処理を終了する。 When it is determined in S1103 that there is no data matching Name, the UI update process of FIG. 11 is executed in S1105, and then the process of FIG. 12 is terminated.

コンフィグレーションモジュール219でPrintTicketの生成が完了すると、プリンタエクステンション215へ完了イベントが通知される。プリンタエクステンション215は、完了イベントを受信すると、図13のUI更新処理を開始する。 When the generation of PrintTicket is completed in the configuration module 219, the completion event is notified to the printer extension 215. Upon receiving the completion event, the printer extension 215 starts the UI update process of FIG.

図13は、本実施形態における、プリンタエクステンション215が、UIを更新する処理を示すフローチャートである。S1201では、プリンタエクステンション215は、DPBに記憶された印刷設定更新情報を取得する。S1202では、プリンタエクステンション215は、印刷設定更新情報に、Nameが一致するデータが存在するか否かを判定する。本例では、NameがPageBorderlessであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageBorderlessのデータが存在するので、S1203に進み、プリンタエクステンション215は、該当するデータ内のUpdateSettingsを取得する。図10に示すように、UpdateSettingsには、“PageLayout”のみが列挙されているので、ページレイアウトコンボボックス605を更新する。 FIG. 13 is a flowchart showing a process in which the printer extension 215 updates the UI in the present embodiment. In S1201, the printer extension 215 acquires the print setting update information stored in the DPB. In S1202, the printer extension 215 determines whether or not there is data that matches Name in the print setting update information. In this example, it is determined whether or not there is data in which Name is PageBorderless. Here, since the data of PageBorderless by Name exists in the print setting update information of FIG. 10, the process proceeds to S1203, and the printer extension 215 acquires the UpdateSettings in the corresponding data. As shown in FIG. 10, since only "PageLayout" is listed in UpdateSettings, the page layout combo box 605 is updated.

S1202でNameが一致するデータが存在しないと判定された場合、S1211へ進み、プリンタエクステンション215は、印刷設定UIを有効にし、その後、図13のUI更新処理を終了する。 If it is determined in S1202 that there is no data matching Name, the process proceeds to S1211, the printer extension 215 enables the print setting UI, and then ends the UI update process of FIG.

ページレイアウトコンボボックス605は前述のとおり割り付け印刷と分割印刷を含む。S1204でプリンタエクステンション215は、PrintCapabilitiesとPrintTicketからJobNUpAllDocumentsContiguouslyとPagePosterの情報を取得する。そして、S1205で、プリンタエクステンション215は、S1101でメモリ領域に保存した印刷設定が設定可能か否かを判定する。ここでは、フチなし印刷のオンは設定可能な状態にあるので、S1207に進み、プリンタエクステンション215は、S1101でメモリ領域に保存した印刷設定を設定し(本例では、フチなし印刷オン)、ドロップダウンリスト605と設定値を更新する。 The page layout combo box 605 includes layout printing and split printing as described above. In S1204, the printer extension 215 acquires the information of JobNUpAllDocumentsContitogously and PagePoster from PrintCapabilities and PrintTicket. Then, in S1205, the printer extension 215 determines whether or not the print setting saved in the memory area in S1101 can be set. Here, since borderless printing is on in a configurable state, the process proceeds to S1207, and the printer extension 215 sets the print setting saved in the memory area in S1101 (borderless printing is turned on in this example) and drops. Update the down list 605 and the set values.

JobNUpAllDocumentsContiguouslyとPagePoster間で発生する禁則については無視するが、他の設定による禁則については従う。フチなし印刷時は、割り付け印刷と分割印刷は設定できないので、ページレイアウトコンボボックス605を無効にし、設定値はPrintTicketに従って1in1印刷に変更する。 Ignore the kinsoku that occurs between JobNUpAllDocumentsContitogously and PagePoster, but follow the kinsoku of other settings. Since borderless printing cannot be set for layout printing and split printing, the page layout combo box 605 is disabled and the set value is changed to 1in1 printing according to PrintTicket.

次に、S1208では、プリンタエクステンション215は、アイコンがあるか否かを判定する。ページレイアウトコンボボックス605には、前述のとおりアイコンが表示されるので、S1209に進み、プリンタエクステンション215は、アイコンを更新する。1in1印刷の場合、印刷の向きに依らず、図8(c)のアイコンに切り替えられる。 Next, in S1208, the printer extension 215 determines whether or not there is an icon. Since the icon is displayed in the page layout combo box 605 as described above, the process proceeds to S1209, and the printer extension 215 updates the icon. In the case of 1in1 printing, the icon can be switched to the icon shown in FIG. 8C regardless of the printing orientation.

S1210では、プリンタエクステンション215は、UpdateSettingsに列挙された全ての要素の更新が完了したか否かを判定する。全ての要素の更新が完了していないと判定された場合、S1204からの処理を繰り返す。一方、全ての要素の更新が完了したと判定された場合、S1211に進み、プリンタエクステンション215は、印刷設定UIを有効にし、その後、図13のUI更新処理を終了する。 In S1210, the printer extension 215 determines whether or not all the elements listed in UpdateSettings have been updated. When it is determined that the update of all the elements is not completed, the process from S1204 is repeated. On the other hand, when it is determined that the update of all the elements is completed, the process proceeds to S1211, the printer extension 215 enables the print setting UI, and then ends the UI update process of FIG.

<操作2:普通紙の選択。PrintCapabilities及びPrintTicketの生成あり、UI更新あり>
操作1に続いて、用紙の種類ドロップダウンリスト601で普通紙が選択されると、プリンタエクステンション215は、PrintTicketのPageMediaTypeの設定値をPlainに編集し、図12の印刷設定更新処理を開始する。
<Operation 2: Select plain paper. PrintCapabilities and PrintTickets are generated, UI is updated>
Following the operation 1, when plain paper is selected in the paper type drop-down list 601, the printer extension 215 edits the setting value of PageMediaType of PrintTicket to Plane and starts the print setting update process of FIG.

本例では、S1101では、プリンタエクステンション215は、用紙の種類の設定である普通紙をメモリ領域へ保存する。S1102では、プリンタエクステンション215は、DPBに格納された印刷設定更新情報を取得する。S1103では、プリンタエクステンション215は、印刷設定更新情報に、NameがPageMediaTypeであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageMediaTypeのデータが存在するので、S1104に進み、プリンタエクステンション215は、該当するデータ内のIsNeedCommitの設定値が0か否かを判定する。IsNeedCommitの設定値は0ではないので、S1106に進み、プリンタエクステンション215は、IsNeedCommitの設定値が1か否かを判定する。IsNeedCommitの設定値は1なので、S1107に進む。プリンタエクステンション215は、コンフィグレーションモジュール219へ編集したPrintTicketを渡してPrintCapabilitiesとPrintTicketを要求する。PrintCapabilitiesとPrintTicketの生成は非同期処理なので、PrintCapabilitiesとPrintTicketの生成の完了を待たず次の処理へ進む。S1108で、プリンタエクステンション215は、印刷設定UIを無効にして入力を受け付けないようにし、図12の印刷設定処理を終了する。 In this example, in S1101, the printer extension 215 saves plain paper, which is a setting of the paper type, in the memory area. In S1102, the printer extension 215 acquires the print setting update information stored in the DPB. In S1103, the printer extension 215 determines whether or not the print setting update information includes data in which Name is PageMediaType. Here, since the data of PageMediaType for Name exists in the print setting update information of FIG. 10, the process proceeds to S1104, and the printer extension 215 determines whether or not the setting value of IsNeedCommit in the corresponding data is 0. Since the set value of IsNeedCommit is not 0, the process proceeds to S1106, and the printer extension 215 determines whether or not the set value of IsNeedCommit is 1. Since the setting value of IsNeedCommit is 1, the process proceeds to S1107. The printer extension 215 passes the edited PrintTicket to the configuration module 219 and requests PrintCapabilities and PrintTicket. Since the generation of PrintCapabilities and PrintTickets is an asynchronous process, the process proceeds to the next process without waiting for the completion of the generation of PrintCapabilities and PrintTickets. In S1108, the printer extension 215 invalidates the print setting UI so as not to accept the input, and ends the print setting process of FIG.

コンフィグレーションモジュール219でPrintCapabilitiesとPrintTicketの生成が完了すると、プリンタエクステンション215へ完了イベントが通知される。プリンタエクステンション215は、完了イベントを受信すると、図13のUI更新処理を開始する。 When the generation of PrintCapabilities and PrintTickets is completed in the configuration module 219, the completion event is notified to the printer extension 215. Upon receiving the completion event, the printer extension 215 starts the UI update process of FIG.

本例では、S1201では、プリンタエクステンション215は、DPBに格納された印刷設定更新情報を取得する。S1202では、プリンタエクステンション215は、印刷設定更新情報に、NameがPageMediaTypeであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageMediaTypeのデータが存在するので、S1203に進み、プリンタエクステンション215は、該当するデータ内のUpdateSettingsを取得する。図10に示すように、UpdateSettingsには、PageBorderlessとPageLayoutが列挙されているので、フチなし印刷チェックボックス602とページレイアウトコンボボックス605を更新する。 In this example, in S1201, the printer extension 215 acquires the print setting update information stored in the DPB. In S1202, the printer extension 215 determines whether or not the print setting update information includes data in which Name is PageMediaType. Here, since the data of PageMediaType for Name exists in the print setting update information of FIG. 10, the process proceeds to S1203, and the printer extension 215 acquires the UpdateSettings in the corresponding data. As shown in FIG. 10, since PageBorderless and PageLayout are listed in UpdateSettings, the borderless print check box 602 and the page layout combo box 605 are updated.

S1204で、プリンタエクステンション215は、PrintCapabilitiesとPrintTicketからPageBorderlessの情報を取得する。そして、S1205で、プリンタエクステンション215は、S1101でメモリ領域に保存した印刷設定が設定可能か否かを判定する。フチなし印刷オンが設定されていれば、普通紙の選択はできないので設定可能でないと判定されてS1206に進み、プリンタエクステンション215は、フチなし印刷チェックボックス602を無効にし、フチなし印刷オフを設定する(禁則のため、設定の矯正)。 In S1204, the printer extension 215 acquires the PageBorderless information from PrintCapabilities and PrintTicket. Then, in S1205, the printer extension 215 determines whether or not the print setting saved in the memory area in S1101 can be set. If borderless printing is set, plain paper cannot be selected, so it is judged that it cannot be set, and the process proceeds to S1206. The printer extension 215 disables the borderless printing check box 602 and sets borderless printing off. (Because it is prohibited, correct the setting).

次に、S1208では、プリンタエクステンション215は、アイコンがあるか否かを判定する。フチなし印刷チェックボックス602にはアイコンはないので、S1210へ進む。S1210で、プリンタエクステンション215は、UpdateSettingsに列挙された全ての要素の更新が完了したか否かを判定する。ここでは、次の要素PageLayoutがあるので、S1204へ戻る。 Next, in S1208, the printer extension 215 determines whether or not there is an icon. Since there is no icon in the borderless print check box 602, the process proceeds to S1210. In S1210, the printer extension 215 determines whether or not all the elements listed in UpdateSettings have been updated. Here, since there is the next element PageLayout, the process returns to S1204.

ページレイアウトコンボボックス605は前述のとおり割り付け印刷と分割印刷を含む。S1204でプリンタエクステンション215は、PrintCapabilitiesとPrintTicketからJobNUpAllDocumentsContiguouslyとPagePosterの情報を取得する。そして、S1205で、プリンタエクステンション215は、S1101でメモリ領域に保存した印刷設定が設定可能か否かを判定する。上記のようにフチなし印刷オフが設定されたことにより、普通紙の選択が可能であるので、S1207に進み、プリンタエクステンション215は、ドロップダウンリスト605と設定値を更新する。ここでは、フチなし印刷がオフなので、プリンタエクステンション215は、ページレイアウトコンボボックス605を有効にし、設定値はPrintTicketに従って1in1印刷を設定する。 The page layout combo box 605 includes layout printing and split printing as described above. In S1204, the printer extension 215 acquires the information of JobNUpAllDocumentsContitogously and PagePoster from PrintCapabilities and PrintTicket. Then, in S1205, the printer extension 215 determines whether or not the print setting saved in the memory area in S1101 can be set. Since the borderless print off is set as described above, the plain paper can be selected. Therefore, the process proceeds to S1207, and the printer extension 215 updates the drop-down list 605 and the set value. Here, since borderless printing is off, the printer extension 215 enables the page layout combo box 605, and the setting value sets 1in1 printing according to PrintTicket.

次に、S1208では、プリンタエクステンション215は、アイコンがあるか否かを判定する。ページレイアウトコンボボックス605には、前述のとおりアイコンが表示されるので、S1209に進み、アイコンを更新する。1in1印刷の場合、印刷の向きに依らず、図8(c)のアイコンに切り替えられる。 Next, in S1208, the printer extension 215 determines whether or not there is an icon. Since the icon is displayed in the page layout combo box 605 as described above, the process proceeds to S1209 to update the icon. In the case of 1in1 printing, the icon can be switched to the icon shown in FIG. 8C regardless of the printing orientation.

S1210では、プリンタエクステンション215は、UpdateSettingsに列挙された全ての要素の更新が完了したか否かを判定する。ここでは、全ての要素の更新が完了したので、S1211に進み、プリンタエクステンション215は、印刷設定UIを有効にし、その後、図13のUI更新処理を終了する。 In S1210, the printer extension 215 determines whether or not all the elements listed in UpdateSettings have been updated. Here, since the update of all the elements is completed, the process proceeds to S1211, the printer extension 215 enables the print setting UI, and then ends the UI update process of FIG.

<操作3:写真紙の選択:PrintCapabilities及びPrintTicketの生成あり、UI更新あり>
操作2に続いて、用紙の種類ドロップダウンリスト601で写真紙が選択されると、プリンタエクステンション215は、PrintTicketのPageMediaTypeの設定値をPhotoPaperに編集し、図12の印刷設定更新処理を開始する。
<Operation 3: Selection of photo paper: PrintCapabilities and PrintTickets are generated, UI is updated>
Following the operation 2, when the photo paper is selected in the paper type drop-down list 601, the printer extension 215 edits the setting value of the PageMediaType of the PrintTicket to PhotoPaper and starts the print setting update process of FIG.

本例では、S1101では、プリンタエクステンション215は、用紙の種類の設定である写真紙をメモリ領域へ保存する。S1102では、プリンタエクステンション215は、DPBに記憶された印刷設定更新情報を取得する。S1103では、プリンタエクステンション215は、印刷設定更新情報に、NameがPageMediaTypeであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageMediaTypeのデータが存在するので、S1104に進み、プリンタエクステンション215は、該当するデータ内のIsNeedCommitの設定値が0か否かを判定する。IsNeedCommitの設定値は0ではないので、S1106に進み、プリンタエクステンション215は、IsNeedCommitの設定値が1か否かを判定する。IsNeedCommitの設定値は1なので、S1107に進む。プリンタエクステンション215は、コンフィグレーションモジュール219へ編集したPrintTicketを渡してPrintCapabilitiesとPrintTicketを要求する。PrintCapabilitiesとPrintTicketの生成は非同期処理なので、PrintCapabilitiesとPrintTicketの生成の完了を待たず次の処理へ進む。S1108で、プリンタエクステンション215は、印刷設定UIを無効にして入力を受け付けないようにして、図12の印刷設定処理を終了する。 In this example, in S1101, the printer extension 215 saves the photo paper, which is the setting of the paper type, in the memory area. In S1102, the printer extension 215 acquires the print setting update information stored in the DPB. In S1103, the printer extension 215 determines whether or not the print setting update information includes data in which Name is PageMediaType. Here, since the data of PageMediaType for Name exists in the print setting update information of FIG. 10, the process proceeds to S1104, and the printer extension 215 determines whether or not the setting value of IsNeedCommit in the corresponding data is 0. Since the set value of IsNeedCommit is not 0, the process proceeds to S1106, and the printer extension 215 determines whether or not the set value of IsNeedCommit is 1. Since the setting value of IsNeedCommit is 1, the process proceeds to S1107. The printer extension 215 passes the edited PrintTicket to the configuration module 219 and requests PrintCapabilities and PrintTicket. Since the generation of PrintCapabilities and PrintTickets is an asynchronous process, the process proceeds to the next process without waiting for the completion of the generation of PrintCapabilities and PrintTickets. In S1108, the printer extension 215 disables the print setting UI so as not to accept input, and ends the print setting process of FIG. 12.

コンフィグレーションモジュール219でPrintCapabilitiesとPrintTicketの生成が完了すると、プリンタエクステンション215へ完了イベントが通知される。プリンタエクステンション215は、完了イベントを受信すると、図13のUI更新処理を開始する。 When the generation of PrintCapabilities and PrintTickets is completed in the configuration module 219, the completion event is notified to the printer extension 215. Upon receiving the completion event, the printer extension 215 starts the UI update process of FIG.

本例では、S1201では、プリンタエクステンション215は、DPBに記憶された印刷設定更新情報を取得する。S1202では、プリンタエクステンション215は、印刷設定更新情報に、NameがPageMediaTypeであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageMediaTypeのデータが存在するので、S1203に進み、プリンタエクステンション215は、該当するデータ内のUpdateSettingsを取得する。図10に示すように、UpdateSettingsには、PageBorderlessとPageLayoutが列挙されているので、フチなし印刷チェックボックス602とページレイアウトコンボボックス605を更新する。 In this example, in S1201, the printer extension 215 acquires the print setting update information stored in the DPB. In S1202, the printer extension 215 determines whether or not the print setting update information includes data in which Name is PageMediaType. Here, since the data of PageMediaType for Name exists in the print setting update information of FIG. 10, the process proceeds to S1203, and the printer extension 215 acquires the UpdateSettings in the corresponding data. As shown in FIG. 10, since PageBorderless and PageLayout are listed in UpdateSettings, the borderless print check box 602 and the page layout combo box 605 are updated.

S1204で、プリンタエクステンション215は、PrintCapabilitiesとPrintTicketからPageBorderlessの情報を取得する。そして、S1205で、プリンタエクステンション215は、S1101でメモリ領域に保存した印刷設定が設定可能か否かを判定する。「操作2」でフチなし印刷オフに設定されていても、写真紙の選択は可能であるので、S1207に進み、プリンタエクステンション215は、フチなし印刷チェックボックス602を有効にし、オンを設定する。つまり、「操作1」でフチなし印刷オンに設定された後、「操作2」で禁則によりフチなし印刷オフに矯正されるとする。この場合でも、操作3により禁則が解除されてフチなし印刷オンが可能になれば、且つ、従前のS1101でフチなし印刷オンが保存されていれば、設定をフチなし印刷オンに戻すことができる。 In S1204, the printer extension 215 acquires the PageBorderless information from PrintCapabilities and PrintTicket. Then, in S1205, the printer extension 215 determines whether or not the print setting saved in the memory area in S1101 can be set. Since the photo paper can be selected even if the borderless printing is set to off in "Operation 2", the process proceeds to S1207, and the printer extension 215 enables the borderless printing check box 602 and sets it on. That is, it is assumed that after the borderless printing is set to on in "operation 1", the borderless printing is corrected to off by prohibition in "operation 2". Even in this case, if the prohibition is lifted by the operation 3 and the borderless printing is turned on, and if the borderless printing on is saved in the previous S1101, the setting can be returned to the borderless printing on. ..

次に、S1208では、プリンタエクステンション215は、アイコンがあるか否かを判定する。フチなし印刷チェックボックス602にはアイコンはないので、S1210へ進む。S1210で、プリンタエクステンション215は、UpdateSettingsに列挙された全ての要素の更新が完了したか否かを判定する。ここでは、次の要素PageLayoutがあるので、S1204へ戻る。 Next, in S1208, the printer extension 215 determines whether or not there is an icon. Since there is no icon in the borderless print check box 602, the process proceeds to S1210. In S1210, the printer extension 215 determines whether or not all the elements listed in UpdateSettings have been updated. Here, since there is the next element PageLayout, the process returns to S1204.

ページレイアウトコンボボックス505は前述のとおり割り付け印刷と分割印刷を含む。S1204でプリンタエクステンション215は、PrintCapabilitiesとPrintTicketからJobNUpAllDocumentsContiguouslyとPagePosterの情報を取得する。そして、S1205で、プリンタエクステンション215は、S1101でメモリ領域に保存した印刷設定が設定可能か否かを判定する。写真紙の選択が可能であるので、S1207に進み、プリンタエクステンション215は、ドロップダウンリスト605と設定値を更新する。ここでは、フチなし印刷がオンなので、ページレイアウトコンボボックス605を無効にし、設定値はPrintTicketに従って1in1印刷を設定する。 The page layout combo box 505 includes layout printing and split printing as described above. In S1204, the printer extension 215 acquires the information of JobNUpAllDocumentsContitogously and PagePoster from PrintCapabilities and PrintTicket. Then, in S1205, the printer extension 215 determines whether or not the print setting saved in the memory area in S1101 can be set. Since the photo paper can be selected, the process proceeds to S1207, and the printer extension 215 updates the drop-down list 605 and the set value. Here, since borderless printing is on, the page layout combo box 605 is disabled, and the set value is set to 1in1 printing according to PrintTicket.

次に、S1208では、プリンタエクステンション215は、アイコンがあるか否かを判定する。ページレイアウトコンボボックス605には、前述のとおりアイコンが表示されるので、S1209に進み、アイコンを更新する。1in1印刷の場合、印刷の向きに依らず、図8(c)のアイコンに切り替えられる。 Next, in S1208, the printer extension 215 determines whether or not there is an icon. Since the icon is displayed in the page layout combo box 605 as described above, the process proceeds to S1209 to update the icon. In the case of 1in1 printing, the icon can be switched to the icon shown in FIG. 8C regardless of the printing orientation.

S1210では、プリンタエクステンション215は、UpdateSettingsに列挙された全ての要素の更新が完了したか否かを判定する。ここでは、全ての要素の更新が完了したので、S1211へ進み、プリンタエクステンション215は、印刷設定UIを有効にし、その後、図13のUI更新処理を終了する。 In S1210, the printer extension 215 determines whether or not all the elements listed in UpdateSettings have been updated. Here, since the update of all the elements is completed, the process proceeds to S1211, the printer extension 215 enables the print setting UI, and then ends the UI update process of FIG.

以上のように、本実施形態では、コントロールに対する操作により生じる禁則を解消するために印刷設定が矯正されてしまった場合でも(操作2でのS1206)、その印刷設定が設定可能になった時点で、自動的に設定を戻すことが可能になる。さらに、本実施形態では、所定の種類の操作による印刷設定に基づいた処理を例に説明したが、他の操作による印刷設定についても同様に適用され得る。 As described above, in the present embodiment, even if the print setting is corrected in order to eliminate the prohibition caused by the operation on the control (S1206 in the operation 2), when the print setting can be set. , It will be possible to automatically restore the settings. Further, in the present embodiment, the process based on the print setting by the predetermined type of operation has been described as an example, but the print setting by other operations may be similarly applied.

[第3実施形態]
以下、第3実施形態について第1及び第2実施形態と異なる点について説明する。以下、コントロールに対する操作の流れを一例として説明するが、以下の操作の流れに限定されるものではなく、他の操作の流れに対しても適用され得る。
[Third Embodiment]
Hereinafter, the differences between the third embodiment and the first and second embodiments will be described. Hereinafter, the operation flow for the control will be described as an example, but the present invention is not limited to the following operation flow, and may be applied to other operation flows.

例えば、用紙の種類のコンボボックス601で「写真用紙」を選択し、ページレイアウトコンボボックス605で「2in1印刷」を選択した状態で、フチなし印刷チェックボックス602がオンされたとする。この場合、プリンタエクステンション215は、PrintTicketのPageBorderlessの設定値をBorderlessに編集し、図14の印刷設定更新処理を開始する。 For example, suppose that the borderless print check box 602 is turned on with "photo paper" selected in the paper type combo box 601 and "2in1 printing" selected in the page layout combo box 605. In this case, the printer extension 215 edits the setting value of PageBorderless of PrintTicket to Borderless, and starts the print setting update process of FIG.

図14は、本実施形態における、プリンタエクステンション215が、PrintCapabilities、PrintTicketおよびUIを更新する処理を示すフローチャートである。 FIG. 14 is a flowchart showing a process in which the printer extension 215 updates the PrintCapabilities, PrintTickets, and UI in the present embodiment.

S1301で、プリンタエクステンション215は、現在PrintTicket生成中か否かを判定する。PrintTicket生成中でないと判定された場合、S1302で、プリンタエクステンション215は、DPBに記憶された印刷設定更新情報を取得する。S1301でPrintTicket生成中であると判定された場合、図14の処理を終了する。ここでは、PrintTicketの生成はまだ要求されていないので、S1302に進む。 In S1301, the printer extension 215 determines whether or not the PrintTicket is currently being generated. When it is determined that the PrintTicket is not being generated, the printer extension 215 acquires the print setting update information stored in the DPB in S1302. When it is determined in S1301 that PrintTicket is being generated, the process of FIG. 14 is terminated. Here, since the generation of PrintTicket has not been requested yet, the process proceeds to S1302.

S1303では、プリンタエクステンション215は、印刷設定更新情報に、NameがPageBorderlessであるデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageBorderlessのデータが存在するので、S1304に進み、プリンタエクステンション215は、該当するデータ内のIsNeedCommitの設定値が0か否かを判定する。IsNeedCommitの設定値は0ではないので、S1306に進み、プリンタエクステンション215は、IsNeedCommitの設定が1か否かを判定する。IsNeedCommitの設定値は2なので、S1309に進み、プリンタエクステンション215は、コンフィグレーションモジュール219へ編集したPrintTicketを渡してPrintTicketの生成を要求する。PrintTicketの生成は非同期処理なので、PrintTicketの生成の完了を待たず、図14の印刷設定更新処理を終了する。 In S1303, the printer extension 215 determines whether or not the print setting update information includes data in which Name is PageBorderless. Here, since the data of PageBorderless for Name exists in the print setting update information of FIG. 10, the process proceeds to S1304, and the printer extension 215 determines whether or not the setting value of IsNeedCommit in the corresponding data is 0. Since the setting value of IsNeedCommit is not 0, the process proceeds to S1306, and the printer extension 215 determines whether or not the setting of IsNeedCommit is 1. Since the setting value of IsNeedCommit is 2, the process proceeds to S1309, and the printer extension 215 passes the edited PrintTicket to the configuration module 219 and requests the generation of the PrintTicket. Since the generation of the PrintTicket is an asynchronous process, the print setting update process of FIG. 14 is completed without waiting for the completion of the generation of the PrintTicket.

S1306でIsNeedCommitの設定値が1と判定された場合、S1307において、プリンタエクステンション215は、コンフィグレーションモジュール219へ編集したPrintTicketを渡す。そしてPrintCapabilities、PrintTicketの生成を要求する。その場合も、PrintCapabilities、PrintTicketの生成は非同期処理なので、PrintCapabilities、PrintTicketの生成の完了を待たず、図14の印刷設定更新処理を終了する。 When the setting value of IsNeedCommit is determined to be 1 in S1306, in S1307, the printer extension 215 passes the edited PrintTicket to the configuration module 219. Then, it requests the generation of PrintCapabilities and PrintTickets. In that case as well, since the generation of PrintCapabilities and PrintTickets is an asynchronous process, the print setting update process of FIG. 14 is completed without waiting for the completion of the generation of PrintCapabilities and PrintTickets.

本実施形態によれば、PrintTicket生成中も印刷設定UIを無効としない。つまり、印刷設定UIは有効なままであるので、ユーザは続けてコントロールの操作が可能であり、操作性を向上させることができる。 According to this embodiment, the print setting UI is not invalidated even during PrintTicket generation. That is, since the print setting UI remains valid, the user can continue to operate the controls and improve operability.

さらに、部単位で印刷チェックボックス607がオフされると、プリンタエクステンション215は、PrintTicketのDocumentCollateの設定値をUncollatedに編集し、図14の印刷設定更新処理を開始する。 Further, when the print check box 607 is cleared on a copy-by-copy basis, the printer extension 215 edits the setting value of the DocomentCollate of PrintTicket to Uncollated and starts the print setting update process of FIG.

S1301で、プリンタエクステンション215は、現在PrintTicket生成中か否かを判定する。ここでは、上記で要求が行われたPrintTicket生成の処理中であるので、PrintTicket生成中であると判定され、図14の印刷設定更新処理を終了する。 In S1301, the printer extension 215 determines whether or not the PrintTicket is currently being generated. Here, since the PrintTicket generation process requested above is in progress, it is determined that the PrintTicket generation is in progress, and the print setting update process of FIG. 14 is terminated.

さらに、用紙の種類コンボボックス601で普通紙が選択されると、プリンタエクステンション215は、PrintTicketのPageMediaTypeの設定値をPlainに編集し、図14の印刷設定更新処理を開始する。 Further, when plain paper is selected in the paper type combo box 601, the printer extension 215 edits the setting value of PageMediaType of PrintTicket to Plane and starts the print setting update process of FIG.

S1301で、プリンタエクステンション215は、現在PrintTicket生成中か否かを判定する。ここでは、上記で要求が行われたPrintTicket生成の処理中であるので、PrintTicket生成中であると判定され、図14の印刷設定更新処理を終了する。 In S1301, the printer extension 215 determines whether or not the PrintTicket is currently being generated. Here, since the PrintTicket generation process requested above is in progress, it is determined that the PrintTicket generation is in progress, and the print setting update process of FIG. 14 is terminated.

そして、コンフィグレーションモジュール219でPrintTicketの生成が完了すると、プリンタエクステンション215は、完了イベントを受信し、図15の更新後PrintTicketマージ処理を開始する。 Then, when the generation of the PrintTicket is completed in the configuration module 219, the printer extension 215 receives the completion event and starts the PrintTicket merge process after the update of FIG.

図15は、更新後PrintTicketマージ処理を示すフローチャートである。 FIG. 15 is a flowchart showing the PrintTicket merge process after the update.

S1401では、プリンタエクステンション215は、DPBに記憶された印刷設定更新情報を取得する。S1402で、プリンタエクステンション215は、コンフィグレーションモジュール219から渡された更新後PrintTicketの印刷設定を読み込む。 In S1401, the printer extension 215 acquires the print setting update information stored in the DPB. In S1402, the printer extension 215 reads the print settings of the updated PrintTicket passed from the configuration module 219.

S1403では、プリンタエクステンション215は、S1402で読み込んだ印刷設定がPrintTicketに存在するか否かを判定する。存在すると判定された場合は、S1404に進み、プリンタエクステンション215は、保持しているPrintTicketと、更新後PrintTicketの設定値とが一致するか否かを判定する。本例では、フチなし印刷時は割り付け印刷は設定できないので、JobNupAllDocumentsContiguouslyの設定は、更新後PrintTicketでは1in1印刷となっている。一方、保持しているPrintTicketでは2in1印刷なので、S1404で一致しないと判定され、S1405に進む。 In S1403, the printer extension 215 determines whether or not the print setting read in S1402 exists in PrintTicket. If it is determined that the printer exists, the process proceeds to S1404, and the printer extension 215 determines whether or not the held PrintTicket and the set value of the updated PrintTicket match. In this example, since the layout printing cannot be set at the time of borderless printing, the setting of JobNupAllDocumentsContiguously is 1in1 printing in PrintTicket after the update. On the other hand, since the PrintTicket held is 2in1 printing, it is determined in S1404 that they do not match, and the process proceeds to S1405.

S1403でPrintTicketに存在しないと判定された場合、S1404で一致すると判定された場合には、他の印刷設定について、S1403からの処理を繰り返す。 If it is determined in S1403 that it does not exist in PrintTicket, and if it is determined in S1404 that it does not exist, the process from S1403 is repeated for other print settings.

S1405では、プリンタエクステンション215は、印刷設定更新情報に、Nameが一致するデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがAllDocumentsContiguouslyのデータは存在しないので、S1410へ進む。Nameが一致するデータが存在すると判定された場合には、後述するようにS1406に進む。 In S1405, the printer extension 215 determines whether or not there is data that matches Name in the print setting update information. Here, since there is no data in which Name is AllDocumentsContiguously in the print setting update information of FIG. 10, the process proceeds to S1410. If it is determined that there is data that matches Name, the process proceeds to S1406 as described later.

S1410では、プリンタエクステンション215は、保持しているPrintTicketの値は設定可能であるか否かを判定する。本例では、2in1印刷が設定可能か否かを、更新後のPrintCapabilitiesに基づいて判定する。前述のとおりフチなし印刷時は割り付け印刷と分割印刷は設定できないので、2in1印刷は設定可能でないと判定し、S1411に進み、プリンタエクステンション215は、PrintTicketに更新後PrintTicketの値を設定する。本例では、PrintTicketの設定を、更新後PrintTicketの値である1in1印刷に変更する。S1410で設定可能でないと判定された場合には、他の印刷設定について、S1403からの処理を繰り返す。 In S1410, the printer extension 215 determines whether or not the value of the held PrintTicket can be set. In this example, whether or not 2in1 printing can be set is determined based on the updated Print Capabilities. As described above, since layout printing and split printing cannot be set during borderless printing, it is determined that 2in1 printing cannot be set, and the process proceeds to S1411, and the printer extension 215 sets the value of PrintTicket after updating to PrintTicket. In this example, the setting of PrintTicket is changed to 1in1 printing which is the value of PrintTicket after the update. If it is determined in S1410 that the setting is not possible, the process from S1403 is repeated for other print settings.

次に、他の印刷設定について、S1403からの処理を繰り返す。本例では、PrintTicket生成中に変更された用紙の種類についてS1403からの処理を行う。本例では、S1403で、S1402で読み込んだ印刷設定がPrintTicketに存在すると判定される。そして、更新後PrintTicketでは写真用紙であり、保持しているPrintTicketでは普通紙であるので、S1404で一致しないと判定され、S1405に進む。 Next, the process from S1403 is repeated for other print settings. In this example, the processing from S1403 is performed for the paper type changed during the generation of PrintTicket. In this example, in S1403, it is determined that the print setting read in S1402 exists in PrintTicket. Then, since the updated PrintTicket is photo paper and the held PrintTicket is plain paper, it is determined in S1404 that they do not match, and the process proceeds to S1405.

S1405では、プリンタエクステンション215は、印刷設定更新情報に、NameがPageMediaTypeのデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがPageMediaTypeのデータが存在するので、S1406で該当するデータ内のIsNeedCommitの設定値が0か否かを判定する。IsNeedCommitの設定値が0であれば、S1410へ進む。本例では、IsNeedCommitの設定値は0ではないので、S1407に進み、プリンタエクステンション215は、IsNeedCommitの設定値が1か否かを判定する。本例では、IsNeedCommitの設定値は1なので、S1408に進む。プリンタエクステンション215は、コンフィグレーションモジュール219へPrintTicketを渡してPrintCapabilitiesとPrintTicketの生成を要求する。PrintCapabilitiesとPrintTicketの生成は非同期処理なので、PrintCapabilitiesとPrintTicketの生成の完了を待たず、図15の処理を終了する。 In S1405, the printer extension 215 determines whether or not the data of PageMediaType by Name exists in the print setting update information. Here, since the data of PageMediaType for Name exists in the print setting update information of FIG. 10, it is determined in S1406 whether or not the setting value of IsNeedCommit in the corresponding data is 0. If the setting value of IsNeedCommit is 0, the process proceeds to S1410. In this example, since the setting value of IsNeedCommit is not 0, the process proceeds to S1407, and the printer extension 215 determines whether or not the set value of IsNeedCommit is 1. In this example, the setting value of IsNeedCommit is 1, so the process proceeds to S1408. The printer extension 215 passes the PrintTicket to the configuration module 219 and requests the generation of the PrintCapabilities and the PrintTicket. Since the generation of PrintCapabilities and PrintTickets is an asynchronous process, the process of FIG. 15 is completed without waiting for the completion of the generation of PrintCapabilities and PrintTickets.

一方、S1407でIsNeedCommitの設定値が1でないと判定された場合、S1409に進み、プリンタエクステンション215は、コンフィグレーションモジュール219へPrintTicketを渡してPrintTicketの生成を要求する。PrintTicketの生成は非同期処理なので、PrintTicketの生成の完了を待たず、図15の処理を終了する。 On the other hand, if it is determined in S1407 that the setting value of the IsNeedCommit is not 1, the process proceeds to S1409, and the printer extension 215 passes the PrintTicket to the configuration module 219 to request the generation of the PrintTicket. Since the generation of PrintTicket is an asynchronous process, the process of FIG. 15 is completed without waiting for the completion of the generation of PrintTicket.

上記のように図15の処理を終了する場合には、マージ処理が中断されることになるが、S1402で再びコンフィグレーションモジュール219から渡された更新後PrintTicketの印刷設定を読み込み、S1403以降の処理が行われる。以下、そのようなケースにおいて、PrintTicket生成中に変更された部単位印刷について、S1403からの処理が行われるとして説明する。 When the process of FIG. 15 is terminated as described above, the merge process is interrupted, but the print setting of the updated PrintTicket passed from the configuration module 219 is read again in S1402, and the process after S1403. Is done. Hereinafter, in such a case, the copy unit printing changed during the PrintTicket generation will be described as being processed from S1403.

本例では、S1403で、S1402で読み込んだ印刷設定がPrintTicketに存在すると判定される。そして、更新後PrintTicketでは部単位印刷オンであり、保持しているPrintTicketでは部単位印刷オフであるので、S1404で一致しないと判定され、S1405に進む。 In this example, in S1403, it is determined that the print setting read in S1402 exists in PrintTicket. Then, since the print ticket after the update has the copy unit print on and the held PrintTicket has the copy unit print off, it is determined in S1404 that they do not match, and the process proceeds to S1405.

本例では、S1405で、プリンタエクステンション215は、印刷設定更新情報に、NameがDocumentCollateのデータが存在するか否かを判定する。ここでは、図10の印刷設定更新情報に、NameがDocumentCollateのデータは存在しないので、S1410に進み、プリンタエクステンション215は、部単位印刷オフが設定可能か否かを判定する。フチなし印刷時でも部単位印刷はオン、オフとも設定可能であるので、設定可能と判定される。本例では、更新後PrintTicketの印刷設定の全てについて処理したことになるので、図15のループを抜け、S1412に進む。 In this example, in S1405, the printer extension 215 determines whether or not Name exists in the print setting update information. Here, since the print setting update information of FIG. 10 does not have the data of DocumentCollate by Name, the process proceeds to S1410, and the printer extension 215 determines whether or not the copy unit print off can be set. Even during borderless printing, copy unit printing can be set on or off, so it is judged that it can be set. In this example, since all the print settings of PrintTicket after the update have been processed, the process exits the loop of FIG. 15 and proceeds to S1412.

S1412では、図11のUI更新処理を実行し、その後、図15の処理を終了する。つまり、本実施形態では、更新後PrintTicketと、コンフィグレーションモジュール219で生成中に操作が行われたPrintTicketとをマージし、そのマージ後のPrintTicketに基づいて、図11のUI更新処理が実行される。その結果、ユーザの操作性を低下させることなく、最新のPrintTicketに基づいて印刷設定UIの更新処理が行われる。なお、本実施形態では、S1309でPrintTicketの生成が要求されるケースについて説明したが、S1307でPrintCapabilitiesとPrintTicketの生成が要求されるケースについても同様の効果が得られる。 In S1412, the UI update process of FIG. 11 is executed, and then the process of FIG. 15 is terminated. That is, in the present embodiment, the updated PrintTicket and the PrintTicket that was operated during generation by the configuration module 219 are merged, and the UI update process of FIG. 11 is executed based on the merged PrintTicket. .. As a result, the print setting UI is updated based on the latest PrintTicket without deteriorating the user's operability. In the present embodiment, the case where the generation of PrintTickets is required in S1309 has been described, but the same effect can be obtained in the case where the generation of PrintCapabilities and PrintTickets is required in S1307.

(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other Examples)
The present invention supplies a program that realizes one or more functions of the above-described embodiment to a system or device via a network or storage medium, and one or more processors in the computer of the system or device reads and executes the program. It can also be realized by the processing to be performed. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.

発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。 The invention is not limited to the above embodiments, and various modifications and modifications can be made without departing from the spirit and scope of the invention. Therefore, a claim is attached to make the scope of the invention public.

101 情報処理装置: 102 印刷装置: 111 CPU: 203 プリンタドライバ: 213 印刷設定定義ファイル: 215 プリンタエクステンション: 217 プロパティバッグ: 219 コンフィグレーションモジュール 101 Information processing device: 102 Printing device: 111 CPU: 203 Printer driver: 213 Printing setting definition file: 215 Printer extension: 217 Property bag: 219 Configuration module

Claims (13)

印刷設定画面上のコントロールの内容が記述された情報を生成する生成手段と、
前記印刷設定画面上でのコントロールの操作に応じて、前記印刷設定画面の表示を更新する更新手段と、を備え、
前記更新手段は、前記操作が第1条件を満たす場合には、前記コントロールの内容が記述された情報の生成を前記生成手段に要求し、該要求に応じて前記生成手段により生成された前記コントロールの内容が記述された情報に基づいて、前記印刷設定画面の表示を更新し、
前記操作が第2条件を満たす場合には、前記コントロールの内容が記述された情報の生成を前記生成手段に要求することなく、前記印刷設定画面の表示を更新する、
ことを特徴とする情報処理装置。
A generation method that generates information that describes the contents of the controls on the print setting screen,
The print setting screen is provided with an update means for updating the display of the print setting screen in response to a control operation on the print setting screen.
When the operation satisfies the first condition, the updating means requests the generating means to generate information in which the contents of the control are described, and the control generated by the generating means in response to the request. The display of the print setting screen is updated based on the information in which the contents of the above are described.
When the operation satisfies the second condition, the display of the print setting screen is updated without requesting the generation means to generate information in which the contents of the control are described.
An information processing device characterized by this.
前記生成手段による生成の要否が記述された更新情報を記憶する記憶手段、をさらに備え、
前記第1条件とは、前記操作に応じて前記生成手段による生成が必要であることが前記更新情報に記述されていることである、
ことを特徴とする請求項1に記載の情報処理装置。
A storage means for storing update information in which the necessity of generation by the generation means is described is further provided.
The first condition is that it is described in the update information that the generation by the generation means is required according to the operation.
The information processing apparatus according to claim 1.
前記第2条件とは、前記操作に応じて前記生成手段による生成が必要であることが前記更新情報に記述されていないことである、
ことを特徴とする請求項2に記載の情報処理装置。
The second condition is that the update information does not describe that the generation by the generation means is required according to the operation.
The information processing apparatus according to claim 2.
前記記憶手段は、プロパティバッグであることを特徴とする請求項2又は3に記載の情報処理装置。 The information processing device according to claim 2 or 3, wherein the storage means is a property bag. 前記生成手段は、前記印刷設定画面上でのコントロールの表示に関わる禁則が定義された定義ファイルに基づいて、前記コントロールの内容が記述された情報を生成することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。 Claims 1 to 4 are characterized in that the generation means generates information in which the contents of the control are described, based on a definition file in which prohibitions related to display of the control on the print setting screen are defined. The information processing apparatus according to any one of the above items. 前記生成手段は、前記コントロールの内容が記述された情報として、複数の情報の生成が可能であり、
前記更新手段は、前記複数の情報の少なくともいずれかの生成を前記生成手段に要求する、
ことを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
The generation means can generate a plurality of information as information describing the contents of the control.
The updating means requires the generating means to generate at least one of the plurality of pieces of information.
The information processing apparatus according to any one of claims 1 to 5, characterized in that.
前記複数の情報は、PrintCapabilities、PrintTicket、を含むことを特徴とする請求項6に記載の情報処理装置。 The information processing apparatus according to claim 6, wherein the plurality of pieces of information include PrintCapabilities and PrintTicket. 前記操作としての第1操作に応じて前記更新手段による更新が行われた結果、第1コントロールの表示が有効とされ、さらに、前記操作としての第2操作に応じて前記更新手段による更新が行われた結果、前記第1操作と前記第2操作の禁則により、前記第1コントロールの表示が無効となった場合において、
前記更新手段は、前記第2操作の後、前記操作としての第3操作が行われることにより前記禁則が解除されることを条件として、前記第1コントロールの表示を有効として前記印刷設定画面の表示を更新する、
ことを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
As a result of the update by the update means in response to the first operation as the operation, the display of the first control is enabled, and the update by the update means is performed in response to the second operation as the operation. As a result, when the display of the first control becomes invalid due to the prohibition of the first operation and the second operation,
The update means displays the print setting screen with the display of the first control enabled on the condition that the prohibition is released by performing the third operation as the operation after the second operation. To update,
The information processing apparatus according to any one of claims 1 to 7.
前記操作に関する情報を保持する保持手段、をさらに備えることを特徴とする請求項8に記載の情報処理装置。 The information processing apparatus according to claim 8, further comprising a holding means for holding information related to the operation. 前記操作としての第1操作に応じて、前記更新手段が前記コントロールの内容が記述された第1情報の生成を前記生成手段に要求した場合、
前記第1操作の後、前記操作としての第2操作が行われると、前記更新手段が前記生成手段に要求することなく、前記コントロールの内容が記述された第2情報を生成する第2生成手段と、
前記生成手段により生成された前記第1情報と、前記第2生成手段により生成された前記第2情報とをマージ手段、をさらに備え、
前記更新手段は、前記マージ手段によりマージされて生成された前記コントロールの内容が記述された情報に基づいて、前記印刷設定画面の表示を更新する、
ことを特徴とする請求項1乃至9のいずれか1項に記載の情報処理装置。
When the updating means requests the generating means to generate the first information in which the content of the control is described in response to the first operation as the operation.
When the second operation as the operation is performed after the first operation, the second generation means for generating the second information in which the contents of the control are described without the update means requesting the generation means. When,
A means for merging the first information generated by the generation means and the second information generated by the second generation means is further provided.
The updating means updates the display of the print setting screen based on the information describing the contents of the control generated by being merged by the merging means.
The information processing apparatus according to any one of claims 1 to 9, wherein the information processing device is characterized by the above.
前記生成手段により前記第1情報が生成中であるか否かを判定する判定手段、をさらに備え、
前記第2生成手段は、前記判定手段により前記第1情報が生成中であると判定された場合、前記第2情報を生成する、
ことを特徴とする請求項10に記載の情報処理装置。
A determination means for determining whether or not the first information is being generated by the generation means is further provided.
When the determination means determines that the first information is being generated, the second generation means generates the second information.
The information processing apparatus according to claim 10.
情報処理装置において実行される情報処理方法であって、
印刷設定画面上のコントロールの内容が記述された情報を生成する生成工程と、
前記印刷設定画面上でのコントロールの操作に応じて、前記印刷設定画面の表示を更新する更新工程と、を有し、
前記更新工程では、前記操作が第1条件を満たす場合には、前記コントロールの内容が記述された情報の生成を前記生成工程に要求し、該要求に応じて前記生成工程において生成された前記コントロールの内容が記述された情報に基づいて、前記印刷設定画面の表示を更新し、
前記操作が第2条件を満たす場合には、前記コントロールの内容が記述された情報の生成を前記生成工程に要求することなく、前記印刷設定画面の表示を更新する、
ことを特徴とする情報処理方法。
An information processing method executed in an information processing device.
A generation process that generates information that describes the contents of the controls on the print setting screen,
It has an update process for updating the display of the print setting screen in response to a control operation on the print setting screen.
In the update step, when the operation satisfies the first condition, the generation step is requested to generate information in which the contents of the control are described, and the control generated in the generation step in response to the request. The display of the print setting screen is updated based on the information in which the contents of the above are described.
When the operation satisfies the second condition, the display of the print setting screen is updated without requiring the generation process to generate information in which the contents of the control are described.
An information processing method characterized by this.
印刷設定画面上のコントロールの内容が記述された情報を生成する生成手段、
前記印刷設定画面上でのコントロールの操作に応じて、前記印刷設定画面の表示を更新する更新手段、としてコンピュータを機能させるためのプログラムであって、
前記更新手段は、前記操作が第1条件を満たす場合には、前記コントロールの内容が記述された情報の生成を前記生成手段に要求し、該要求に応じて前記生成手段により生成された前記コントロールの内容が記述された情報に基づいて、前記印刷設定画面の表示を更新し、
前記操作が第2条件を満たす場合には、前記コントロールの内容が記述された情報の生成を前記生成手段に要求することなく、前記印刷設定画面の表示を更新する、
ことを特徴とするプログラム。
A generation method that generates information that describes the contents of controls on the print setting screen.
A program for operating a computer as an update means for updating the display of the print setting screen in response to a control operation on the print setting screen.
When the operation satisfies the first condition, the updating means requests the generating means to generate information in which the contents of the control are described, and the control generated by the generating means in response to the request. The display of the print setting screen is updated based on the information in which the contents of the above are described.
When the operation satisfies the second condition, the display of the print setting screen is updated without requesting the generation means to generate information in which the contents of the control are described.
A program characterized by that.
JP2019068066A 2019-03-29 2019-03-29 Information processing device, information processing method and program Active JP7307577B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019068066A JP7307577B2 (en) 2019-03-29 2019-03-29 Information processing device, information processing method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019068066A JP7307577B2 (en) 2019-03-29 2019-03-29 Information processing device, information processing method and program

Publications (2)

Publication Number Publication Date
JP2020166698A true JP2020166698A (en) 2020-10-08
JP7307577B2 JP7307577B2 (en) 2023-07-12

Family

ID=72715271

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019068066A Active JP7307577B2 (en) 2019-03-29 2019-03-29 Information processing device, information processing method and program

Country Status (1)

Country Link
JP (1) JP7307577B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018045577A (en) * 2016-09-16 2018-03-22 キヤノン株式会社 Information processing device, method and program
JP2018151690A (en) * 2017-03-09 2018-09-27 キヤノン株式会社 Information processing apparatus, information processing method and program
JP2018180750A (en) * 2017-04-07 2018-11-15 キヤノン株式会社 Control apparatus in image forming apparatus and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018045577A (en) * 2016-09-16 2018-03-22 キヤノン株式会社 Information processing device, method and program
JP2018151690A (en) * 2017-03-09 2018-09-27 キヤノン株式会社 Information processing apparatus, information processing method and program
JP2018180750A (en) * 2017-04-07 2018-11-15 キヤノン株式会社 Control apparatus in image forming apparatus and program

Also Published As

Publication number Publication date
JP7307577B2 (en) 2023-07-12

Similar Documents

Publication Publication Date Title
JP4817986B2 (en) Information processing apparatus, print setting method, and computer-readable program
US7064849B1 (en) Data processing apparatus adaptable to plural environments and data processing method
US8582147B2 (en) Information processing apparatus, control method for image forming apparatus and post-processing apparatus, and computer program
JP3733288B2 (en) Information processing apparatus, print control method, and storage medium
KR101064065B1 (en) Information processing apparatus, control method, and storage medium
US8368926B2 (en) Reuse of document print attributes
CN102681802B (en) Messaging device and Method of printing
JP2022118278A (en) Program and information processing device
JP3679678B2 (en) Printing control apparatus and control method therefor
US20040090649A1 (en) Information processing apparatus, information processing method, and program storage medium
US6411400B1 (en) Data processing apparatus, data processing method therefor, and storage medium for storing computer-readable program
US7973964B2 (en) Printing program that adjusts annotation location and size
JP2020027358A (en) Device control program, installer program for installing the device control program, and storage medium
JP6833419B2 (en) Information processing equipment, methods and programs
JP7307577B2 (en) Information processing device, information processing method and program
JP2002014797A (en) Information processor, print controller and its control method, and storage medium and its control program
US9253343B2 (en) Information processing apparatus, control method, and storage medium for providing a preview and/or display of a main display document generated from all parts of a print document
US7253911B2 (en) Printing method and system for executing printing in plural print processes
JP2023034953A (en) Information processing apparatus, method of controlling information processing apparatus, and program
JP2012174110A (en) Print control unit, and method and program of print control of print control unit
US9430446B2 (en) Information processing apparatus, method and storage medium including a function for establishing exceptions applied to print settings when specified conditions are met
JP2019128606A (en) Information processing device, control method therefor, and program
US7027170B1 (en) Printing control system for separation printing
JP7393477B2 (en) Information processing device, its control method, and computer program
JP4545903B2 (en) Information processing apparatus, information processing method, and storage medium

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220329

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230404

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230630

R151 Written notification of patent or utility model registration

Ref document number: 7307577

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151