Application program, information processing apparatus, and control method

The print setting application customizes print settings by acquiring and updating printer capabilities information, addressing the limitations of general-purpose printer drivers and enhancing user control over print operations.

JP2025037493APending Publication Date: 2025-03-18CANON KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023144453
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-09-06
Publication Date
2025-03-18

AI Technical Summary

Technical Problem

Existing general-purpose printer drivers do not allow companies or organizations to customize setting items, values, and default display values, which can be limiting in managing print settings effectively.

Method used

A print setting application that extends the functions of a general-purpose printer driver by acquiring capabilities information from a printer, storing it, updating it based on restricted print setting information, and displaying a customized print setting screen.

Benefits of technology

Enables customization of print settings, allowing users to tailor settings items, values, and default display values according to specific needs, enhancing flexibility and control over print operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025037493000001_ABST
    Figure 2025037493000001_ABST
Patent Text Reader

Abstract

To customize options of printing functions according to the needs of a company or an organization in an environment in which print data generation software available in common to a plurality of different printing devices is used, by using an extension application that extends the functions of a standard driver.SOLUTION: An application program is a print setting application for extending the functions of a generic printer driver, the application including: an acquisition step of acquiring capability information from a printer; a storage step of storing information based on the acquired capability information; an update step of updating the stored information on the basis of restriction information on print settings configured by the print setting application; and a control step of displaying a print setting screen based on the information updated in the update step.SELECTED DRAWING: Figure 6
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to an application program, an information processing device, and a control method. [Background technology]

[0002] There is a known configuration in which a printer driver installed on a host computer is used as software for controlling the printing device to issue print instructions to a printing device connected to the host computer. An operating system (OS), which is the basic software, is installed on the host computer, and the printer driver is configured according to the specifications defined by the OS and runs when called by the OS. By providing a printer driver that conforms to the OS specifications, a vendor that provides a printing device can provide a means of issuing print instructions to the printing device using the OS.

[0003] In recent years, Windows (registered trademark) has provided standard class drivers (hereinafter also referred to as "generic printer drivers") that can be commonly used by printing devices provided by multiple vendors. Such generic printer drivers are included in the OS package and can be easily used by connecting any printing device to the host computer. This makes it unnecessary to separately install a model-specific printer driver suitable for the printing device, which is highly convenient. Furthermore, generic printer drivers are configured to be able to specify printing functions according to PrintCapabilities generated based on information obtained from the connected printing device. This allows a user who uses a generic printer driver to specify printing functions according to the capabilities of the connected printing device, even though the user is using one standard driver.

[0004] A generic printer driver can be associated with an application for function expansion (hereinafter also referred to as an "extension application"). The extension application can be provided by a vendor that supplies a printing device. The extension application can provide a function (extension function) that cannot be realized by the generic printer driver alone by editing the PDC generated by the generic printer driver. Patent Document 1 discloses a technology for expanding functions such as a stamp function by an extension application. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] JP 2019-74906 A Summary of the Invention [Problem to be solved by the invention]

[0006] In a generic printer driver, the setting items and setting values ​​that can be set in the print settings, as well as the display default values, are determined based on information obtained from the printing device. Generally, these are determined by information that is pre-registered in the printing device. However, companies and organizations may want to customize the setting items, setting values, and default values ​​that can be used. [Means for solving the problem]

[0007] The application described in the present invention for solving the above-mentioned problems is a print setting application that extends the functionality of a generic printer driver, and is characterized by having an acquisition process for acquiring capability information from a printer, a storage process for storing information based on the acquired capability information, an update process for updating the stored information based on restriction information regarding print settings by the print setting application, and a control process for displaying a print setting screen based on the updated information in the update process. Effect of the Invention

[0008] According to the present invention, when a generic printer driver is used, it becomes possible to customize available setting items, setting values, and values ​​displayed as defaults. [Brief description of the drawings]

[0009] [Figure 1] FIG. 2 is a block diagram showing an example of a hardware configuration of a printing system according to the present embodiment. [Diagram 2] FIG. 1 illustrates an example of a configuration of a printing system according to an embodiment of the present invention. [Diagram 3] 13A and 13B are diagrams illustrating an example of a screen displayed by a print setting screen expansion unit. [Figure 4] 5A and 5B are diagrams showing options and defaults for each print function and an example of custom setting information. [Figure 5A] 11 is a sequence diagram showing an example of a flow of customization performed by an administrator distributing a customized extensible application; FIG. [Figure 5B] 11 is a sequence diagram showing an example of a flow in which an administrator distributes custom setting information and performs customization. FIG. [Figure 5C] 11 is a sequence diagram showing an example of a flow of acquiring customization setting information from a server and performing customization. FIG. [Figure 6] 5 is a flowchart showing an example of a process for reflecting customization setting information in the first embodiment. [Figure 7] 13 is a diagram showing an example of a PDC file edited by an extension application using only the capability information of a printing device. [Figure 8] 13 is a diagram showing an example of a PDC file edited by an extension application using capability information and custom setting information of a printing device. [Figure 9] 13 is a diagram showing an example of a screen displayed by a print setting screen extension unit based on a PDC file. FIG. [Figure 10]11 is a flowchart showing an example of a process for reflecting customization setting information in the second embodiment. [Figure 11] FIG. 11 is a diagram illustrating an example of a printing system configuration of a third embodiment. [Figure 12] FIG. 11 is a sequence diagram in which an administrator creates and distributes custom setting information in the third embodiment. [Figure 13] FIG. 13 is a diagram illustrating an example of a capability information editing screen of a printing device on a cloud printing service. [Figure 14] 13 is a flowchart showing a process for reflecting customization setting information in the third embodiment. [Figure 15] 13 is a flowchart showing a modified example of the process for reflecting customization setting information in the third embodiment. [Figure 16] FIG. 13 is a diagram showing an example of a registry key for forcing application of a revised extension application. [Figure 17] FIG. 13 is a diagram showing an example of a registry key that forces the use of an extended application. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0010] Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the present invention, and not all of the combinations of features described in the embodiments are necessarily essential to the solution of the present invention.

[0011] The same components are given the same reference numbers and their explanations are omitted.

[0012] <<Embodiment 1>> <Printing system hardware configuration> Fig. 1(a) is a block diagram showing the hardware configuration of a printing system. In this figure, a 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. Input devices such as a keyboard 118 and a pointing device 117 are connected to the input interface 110, and display devices such as a display unit 119 are connected to the output interface 115. A NETIF 120 is a network interface, and performs control for transferring data between the host computer 101 and an external device via a network.

[0013] An initialization program is stored in the ROM 112. Application programs, an operating system (OS), print data generation software, and various other data are stored in the external storage device 114. The RAM 113 is used as a work memory or the like when the various programs stored in the external storage device 114 are executed, and the various programs can run within the host computer 101.

[0014] In this embodiment, the CPU 111 executes processes according to the procedures of the program stored in the ROM 112, thereby executing functions of the host computer 101 described below and processes related to the flowcharts described below. The printing device 102, which is a device, is connected to the host computer 101 via an input / output interface 116. Here, the host computer 101 and the printing device 102 are configured separately, but they may be configured as one information processing device. The printing device will be described as an inkjet printer that prints by ejecting ink onto a paper surface, but printing may be performed by other methods (for example, electrophotography). The host computer 101 may be a desktop personal computer, a smartphone, or a notebook computer.

[0015] FIG. 1(b) will be described later.

[0016] <Software-centric printing system configuration> Fig. 2 is a diagram showing a schematic configuration of a software-centered printing system. Here, the printing system will be described on the premise that a host computer 101 is equipped with Microsoft Windows 11 as the OS. Fig. 2(a) shows a typical configuration when an extension application 204 is not associated with print data generation software 202 and the printing device 102.

[0017] The drawing application 201 is software that creates content (drawing data) to be printed. For example, a word processing application or a spreadsheet application corresponds to the drawing application 201. When the drawing application 201 receives a print request from a user, it issues a print instruction to the OS. The print instruction includes print setting information for instructing the operation of the print data generation software 202 and the printing device 102. The print setting information is also called a PrintTicket (hereinafter, "PT").

[0018] In order to output print setting information, the drawing application 201 can display a print setting screen provided by the print data generation software 202, the OS, or the drawing application 201. The print setting screen includes setting items (hereinafter also referred to as "control items") indicating print functions that can be set and control items indicating their setting values ​​according to capability information (information that can be set as print settings) acquired from the print data generation software 202. The capability information is also called PrintCapabilities (hereinafter "PC"). The print data generation software 202 determines the PC based on the print function information 203. The print function information 203 is data indicating all print functions that can be set, their setting values, and the exclusive relationship between the setting values. The print function information 203 is also called PDC (Print Device Capabilities). The PDC 203 is included in a configuration file of the print data generation software 202. The PDC 203 is dynamically generated by the print data generation software 202. Specifically, the print data generation software 202 or the OS can be configured to acquire printing device attribute data from the printing device 102, and generate a PDC 203 according to the attribute information in the acquired attribute data. The generated PDC 203 is editable. The printing device attribute data acquired from the printing device 102 is a response acquired by issuing an IPP Get-Printer-Attributes operation to the printing device 102. The response includes attribute information (setting items) indicating functions (printing device capabilities) that can be specified by the printing device 102, and setting values ​​related to that attribute information. This response is saved in the RAM 113.

[0019] By configuring in this way, the print data generation software 202 can be configured so that the user can specify the print functions available in each printing device 102 according to the connected printing device 102. That is, even when printing devices with different functions or printing devices developed by different vendors are connected, the print data generation software 202 can be configured so that the user can specify the print functions available in accordance with the connected printing device. Here, a configuration using the IPP Class Driver or UP Class Driver installed in Windows (registered trademark) 11 as the print data generation software 202 will be described. The IPP Class Driver and UP (Universal Print) Class Driver are general-purpose printer drivers that execute print processing according to the specifications of a standard printing protocol called IPP, and are included in the OS package. The IPP Class Driver and UP Class Driver are not specific printer drivers according to the model of the printing device 102, but are standard class drivers that can be commonly used by multiple printing devices. The IPP Class Driver is a standard driver that executes local printing according to the above specifications, and the UP Class Driver is a standard driver that executes cloud printing. When cloud printing is performed using the UP Class Driver, the print data is not sent directly to the printing device, but is sent via the cloud print service, and printing is performed by the printing device. In addition, the IPP Class Driver and the UP Class Driver acquire capability information of the connected printing device 102 so that the user can specify the printing functions supported by the connected printing device 102, and generate printing function information 203 based on that information.

[0020] The OS generates intermediate data (also called input data) based on the print instruction output from the drawing application 201, and passes it to the print data generation software 202. The data output by the drawing application 201 for printing is data in Graphic Device Interface format (GDI format data) or data in XML Paper Specification format (XPS format data). If the data output by the drawing application 201 is data in GDI format, the OS converts the GDI format data output from the drawing application 201 into data in XPS format. Then, it passes the converted XPS format data as intermediate data to the print data generation software 202. If the data output by the drawing application 201 is data in XPS format, the OS passes the XPS format data as intermediate data to the print data generation software 202. The intermediate data includes drawing data, which is information on a picture to be formed on paper, and print setting information set by the user.

[0021] The print data generation software 202 converts the acquired intermediate data into print data that can be interpreted by the printing device 102, and transmits it to the printing device 102. The print data includes drawing data, which is information about a picture to be formed on paper, and print setting attribute information (attribute information that specifies print settings) generated based on print setting information set by the user. The print setting attribute information includes attribute information that indicates functions that can be specified by the printing device 102 (capabilities of the printing device) and setting values ​​related to that attribute information.

[0022] The printing device 102 prints on paper based on the print data sent from the print data generation software 202. At this time, the printing device 102 forms the drawing data included in the print data on paper in accordance with the print setting attribute information included in the print data. The print setting attribute information includes attribute information and its setting value for specifying print quality (priority on image quality, priority on speed, etc.) and double-sided printing. For example, if the print setting attribute information includes attribute information specifying double-sided printing, the printing device 102 executes double-sided printing.

[0023] Fig. 2(b) is a diagram showing a configuration when the extension application 204 is associated with the print data generation software 202 and the printing device 102. The extension application functions as a print setting application that extends the functions of the print data generation software 202. Note that configurations and processes not specifically mentioned below are the same as those in Fig. 2(a).

[0024] The extension application 204 is software for extending the functions of the print data generation software 202, and is not included (bundled) in advance in the OS. Therefore, the user needs to operate the host computer 101 to download and install the extension application 204 from a server via the Internet. Alternatively, the extension application 204 may be automatically installed when the printing device 102 is connected to the host computer 101. Specifically, when the printing device 102 is connected to the host computer 101, the OS acquires device identification information from the printing device 102. The OS may download and install the extension application 204 corresponding to the acquired device identification information from a server via the Internet. In other words, the print data generation software 202 and the extension application 204 are held in the host computer 101 as separate files.

[0025] Note that the print data generation software 202 and the extension application 204 may be updated and upgraded, but these update processes are also performed at different times. That is, the timing at which the host computer 101 acquires the print data generation software 202 is different from the timing at which the extension application 204 is acquired. In addition, the trigger at which the host computer 101 acquires the print data generation software 202 is different from the trigger at which the extension application 204 is acquired. Note that when the extension application 204 is installed, the OS associates the extension application 204 with the print data generation software 202 and the printing device 102.

[0026] The extension application 204 described in this embodiment includes a print setting screen extension unit 205, a skip control unit 206, a print function extension unit 207, a print data editing unit 208, and a notification unit 209. The extension application 204 also includes shared information 210 that can be commonly accessed by each unit. The shared information 210 is stored in a file saved in the external storage device 114 or in the RAM 113. The extension application 204 can freely write and read information to and from the shared information 210 by using an API (Application Program Interface) provided by the OS. The shared information 210 is also allocated as an area in which information specific to the application can be stored, and can also store information other than the attribute data of the printing device 102. The shared information 210 is information different from the PDC 203 generated by the print data generation software 202 or the OS to specify print functions available in the connected printing device 102.

[0027] The extension application 204 may terminate operation each time the processing of each unit is completed. In that case, the OS will start the extension application 204 each time a request to use each unit is received. Other configurations are also possible. For example, when the processing of the print setting screen extension unit 205 is completed, the OS will terminate the operation of the extension application 204, but the OS may keep the extension application 204 running even after the processing of the skip control unit 206 is completed.

[0028] Furthermore, the extension application 204 may cancel processing during the processing of each unit. When the processing is canceled, the job being processed in the print queue is deleted by the OS.

[0029] When the drawing application 201 receives a print request from a user, it issues a print instruction to the OS. In this configuration, the drawing application 201 can display a print setting screen, as in the configuration of FIG. 2(a). In this configuration, the print setting screen provided by the extension application 204 is displayed. Specifically, the print setting screen provided by the print setting screen extension unit 205 included in the extension application 204 is displayed. Note that whether or not the print setting screen provided by the print setting screen extension unit 205 is displayed depends on the user's operation. For example, if the drawing application is a word processing application or a spreadsheet application, when the user presses a property setting button on the print setting screen provided by the application, the print setting screen provided by the print setting screen extension unit 205 is displayed. Details of the print setting screen extension unit 205 will be described later with reference to FIG. 3.

[0030] Also, when the drawing application 201 accepts a print request from a user and issues a print instruction to the OS, the OS starts the skip control unit 206. The skip control unit 206 controls whether or not to skip the processing of the print data generation software 202. The processing of the print data generation software 202 is processing to generate drawing data based on intermediate data. The skip control unit 206 cannot acquire intermediate data or print setting information. After the skip control processing of the skip control unit 206, the OS generates intermediate data based on the print instruction output from the drawing application 201, and the intermediate data is passed to the print data generation software 202. Here, if the skip control is not performed by the skip control unit 206, the intermediate data is processed by the print data generation software 202 into print data that can be interpreted by the printing device 102, and passed to the print data editing unit 208. On the other hand, if the print data generation software 202 is skipped, the intermediate data is passed to the print data editing unit 208 without being processed by the print data generation software 202. This makes it possible to process the intermediate data in the print data editing unit 208. An example of when it is preferable to skip print data generation software 202 is when it is desired to perform enlargement / reduction processing in print data editing unit 208. Intermediate data can be held in vector format, and degradation during enlargement / reduction is minimal. Therefore, in a configuration in which print data generation software 202 outputs images in raster format, it is generally preferable to skip the processing of print data generation software 202 and process the intermediate data in print data editing unit 208.

[0031] The print data editing unit 208 edits the intermediate data passed from the print data generation software 202 or the print data processed by the print data generation software 202. Taking layout printing as an example of the editing content, the print data editing unit 208 changes the layout of the intermediate data or the print data based on the print setting information of layout printing received from the OS. Layout printing is a function for laying out and printing image data of the number of pages specified by the user on one side of one sheet of paper. In addition, the print data editing unit 208 can display a UI screen on the display unit 119, and can display the layout result of the intermediate data or the print data as a preview screen. Note that in the print data editing unit 208, the print data is not sent to the printing device 102 while the UI screen is open, and the print data sending process is performed by closing the UI screen.

[0032] After the print data editing unit 208 edits the print data, the print data is passed to the printing device 102 via the OS. The printing device 102 prints on paper based on the accepted print data. At this time, if the print data generation software 202 is skipped by the skip control unit 206, the print data editing unit 208 may convert the received intermediate data into print data that can be interpreted by the printing device 102. Also, a function provided by the OS may be used to convert the intermediate data into print data.

[0033] The extension application 204 also includes a print function extension unit 207. The print function extension unit 207 can edit the PDC 203 generated by the print data generation software 202 or the OS. This allows the print function extension unit 207 to add functions provided by the extension application 204. The print function extension unit 207 can also add functions that are supported by the printing device 102 but not supported by the print data generation software 202, and add exclusive relationships between setting values ​​of print functions. The OS starts the print function extension unit 207 when the extension application 204 is first associated with the printing device 102 and the print data generation software 202. Furthermore, the OS may start the print function extension unit 207 at other times, such as when the OS is started. In this way, in a case where an optional device (e.g., a finisher, etc.) is added to the printing device 102 later and functions related to printing are extended, the print function extension unit 207 can detect the extended function and add it to the PDC 203.

[0034] The extension application 204 also has a notification unit 209. The notification unit 209 can display a notification to the user in response to an error occurring in the printing device 102. For example, when an out-of-paper error occurs in the printing device 102, the print data generation software 202 detects it and uses a notification function called a toast notification, which is a function of the OS, to display a message on the display unit 119. When the user presses this toast notification, the notification unit 209 of the extension application 204 is called by the OS, and a UI screen of the notification unit 209 is displayed. The UI screen of the notification unit 209 can display, for example, a detailed message of the out-of-paper error, a method for loading paper, and the like.

[0035] Once the extension application 204 has sent print data to the printing device 102, it is no longer possible to display on the screen any guides or other information associated with the print data during the processing of each unit.

[0036] The configuration of the extended application 204 for implementing this embodiment is not limited to having all of the above-mentioned functions (units), and may have only some of the functions or other functions. The extended application 204 may also be simply called printing software. As described above, the extended application 204 is an application having at least one of the functions described in 205 to 209.

[0037] <Example of the screen displayed by the print setting screen expansion unit> Next, the print setting screen displayed by the print setting screen expansion unit 205 will be described with reference to FIG.

[0038] A PC is generated based on the PDC 203 edited by the print function extension unit 207. A print setting screen 301 in Fig. 3(a) is an example of a screen displayed by the print setting screen extension unit 205 based on the generated PC. The print setting screen extension unit 205 is called by the OS when a user instructs the drawing application 201 to display a print setting screen. The print setting screen extension unit 205 displays a screen on which the user can specify setting values ​​of print functions that can be specified by the print data generation software 202, based on a PC that can be obtained from the OS.

[0039] Control 302 is a control item that allows the user to set the type of paper to be used for printing, for example, plain paper or photo paper. Control 303 is a control item that allows the user to set the paper size to be used for printing, for example, A4 or letter. List 313 shown in Fig. 3(b) shows the display state when control 303 is expanded, and the user can select a paper size from the expanded list.

[0040] Control 304 is a control item that can set the print orientation, and can set either portrait or landscape. Control 305 is a control that can set the paper feed slot of the printing device 102, and can set a setting value such as the main tray or rear tray. Control 306 is a control item that can select high quality, standard, or draft as the print quality. Control 307 is a control item that can set the color mode. Control 308 is a control item that can select whether to print an image with a border when printing an image on printing paper. Control 309 is a control item for selecting the layout method when printing an image on printing paper. Control 310 is a control item that can switch between enabling and disabling double-sided printing. Control 311 is a cancel button that closes the screen without reflecting the settings. Control 312 is an OK button that closes the screen after reflecting the settings.

[0041] <Changes to print settings by administrator> The print data generation software 202 or the OS is configured to acquire printing device attribute data from the printing device 102, and generate a PDC 203 according to the attribute information in the acquired attribute data. Therefore, the setting values ​​related to the attribute information indicating the normally specifiable functions of the printing device and the setting values ​​that have the highest priority are configured from the attribute data acquired from the printing device 102. Note that, hereinafter, the attribute information indicating the normally specifiable functions of the printing device will be referred to as a printing function, and the setting values ​​related to the printing functions will be referred to as a printing option. Also, the setting values ​​displayed as the initial values ​​for each printing function will be referred to as a default printing option.

[0042] However, there are cases where companies and organizations want to change the default print options for their own reasons, such as to reduce printing costs, conserve resources, or prevent printing failures, or where they want to make some print options unselectable.

[0043] In this embodiment, a process of changing default print options using the extensible application 204 on each host computer in a company or organization and making some print options unselectable will be described.

[0044] Hereinafter, the print function extension unit 207 or the print setting screen extension unit 205 of the extension application 204 may be described as the subject of each process, but in reality, the corresponding function is realized by the CPU 111 executing the corresponding program.

[0045] First, an example of the above-mentioned printing functions, printing options, and default printing options will be described with reference to FIG. 4(a). FIG. 4(a) is a printing function list 401 that shows a schematic representation of printing functions, printing options, and default printing options based on capability information acquired from the printing device 102. One line of the printing function list 401 shows a combination of printing functions, printing options, and default printing options. Line 402 shows that five printing options, 1in1, 2in1, 4in1, 9in1, and 16in1, can be selected for "printing function: layout", and the default printing option is 1in1. That is, the setting for laying out one page of image data on one side of a sheet of paper is set as the default. Line 403 shows that single-sided printing and double-sided printing can be selected as printing options for "printing function: double-sided printing", and the default printing option is single-sided printing. Similarly, line 404 shows that three printing options, high quality, standard, and draft, can be selected for "printing function: print quality", and the default printing option is standard. Line 405 indicates that for "Print function: Color mode", three print options can be selected: monochrome, color, and automatic, and that the default print option is color. Note that in this embodiment, these four print functions, print options, and default print options are described as examples, but other combinations of print functions, print options, and default print options may also be used.

[0046] FIG. 4B shows a custom setting information list 406 that describes the change of default print options and the restriction information that makes some print options unselectable according to the unique circumstances of a company or organization, which is different from the capability information acquired from the printing device 102. Each line of the custom setting information list 406 indicates a custom setting information type, a print function, and an option. Specifically, line 407 specifies the change of the default print option as the custom setting information type, and means that the default print option for "print function: layout" is changed to 2in1. That is, the setting in which two pages of image data are laid out on one side of one sheet of paper is specified as the default. In this embodiment, the change of the default print option means the option of each function that is preferentially displayed when the print data generation software or the extension application displays the print setting screen based on the PC generated from the PDC 203. In this way, the initial value of the NUP (layout) function when the drawing application 201 or the extension application 204 displays the print setting screen can be set to 2in1.

[0047] Line 408 specifies a change to the default print option as the type of custom setting information, and means that the default print option is changed to double-sided for "print function: double-sided printing." In this way, the initial value of the double-sided printing function when the drawing application 201 or the extension application 204 displays the print setting screen can be set to double-sided.

[0048] Line 409 indicates that the print option is to be forced as a custom setting information type, and that the option draft is to be forced for "print function: print quality". "Draft" for print quality is a setting value that lowers image quality and increases print speed. In this embodiment, forcing a print option means that when the print data generation software or the extension application displays a print setting screen based on the PC generated from the PDC 203, the option for the print function is fixed to only one type. Line 410 similarly indicates that the option monochrome is to be forced for the print function color mode.

[0049] The extension application 204 uses the custom setting information list 406 to customize print functions in accordance with the needs of a company or organization. The process of the extension application 204 will be described later.

[0050] Next, a process flow from when an administrator of a company or organization creates a custom setting information list 406, distributes it to users within the company or organization, and when the user launches the extended application 204 will be described with reference to Fig. 5. Since there are multiple possible methods for an administrator to distribute the custom setting information list 406 to users, this embodiment will be described separately with reference to Figs. 5A to 5C.

[0051] Fig. 5A is a diagram showing a sequence when the custom setting information list 406 is included in the extended application 204. In the case of Fig. 5A, in order to correspond to the custom setting information list 406 that the target company or organization wants to set, the extended application 204 needs to be modified for its own use and provided to the administrator of the company or organization.

[0052] First, in S5001, an administrator of a company or organization that has received the extended application 204 configured specifically for that company or organization notifies users that the extended application 204 will be distributed. Specifically, the administrator of the organization may notify users that the extended application 204 will be distributed by posting a notice on the company's homepage, or by verbal or e-mail message or other communication tools.

[0053] When distributing the specially configured extended application 204, the distribution of the extended application 204 is accompanied by the distribution of setup information for associating the extended application 204 with print data generation software. In this embodiment, the setup information refers to a file with the extension .inf format called an extended INF file, but it may be in another file format.

[0054] Next, in S5002, the administrator instructs the administrator PC to distribute the extended application 204. In S5003, the administrator PC distributes the extended application 204 to the host computers in the company or organization. Here, the method of distributing the extended application 204 from the administrator PC may be to distribute it from the administrator PC to the user's host computer by email. Alternatively, the administrator may access a server shared within the company or organization from the administrator PC and place it on the server, and the user PC may obtain it from the server, or the extended application may be distributed by a cloud storage service shared within the company or organization. Alternatively, the administrator may use a client PC management tool to distribute the extended application 204 to the host computers managed within the company or organization through the administrator PC. Here, the configuration of a printing system using a client PC management tool will be described with reference to FIG. 1(b).

[0055] 1B is a schematic diagram of a printing system in a company or organization in which a client PC management tool is introduced. In this system, a management server 121 for client management, an administrator PC 122, a client PC (A) 123, and a client PC (B) 124 are communicably connected via a network. The client PC (A) 123 and the client PC (B) 124 are computers having the same hardware configuration as the host computer 101. An administrator who uses the administrator PC 122 can manage the configuration of the client PC (A) 123 and the client PC (B) 124, manage and distribute software, etc. In this embodiment, the client PC management tool is also introduced in the client PC (A) 123 and the client PC (B) 124, and the administrator can distribute an extended application 204 and a file containing custom setting information.

[0056] Returning to the explanation of Fig. 5A, as described above, the administrator distributes the extension application 204 including the custom setting information to the user, and the process proceeds to S5004.

[0057] In S5004, the user of the company or organization instructs his / her host computer to install the extension application. In S5005, the host computer installs the extension application 204. At this time, the host computer also installs the extension INF, which is the setup information for the extension application, at the same time. After the installation is complete, in S5006, the host computer displays the completion of the installation on the display unit 119 and notifies the user. Next, in S5007, the user of the company or organization instructs the host computer to generate a print queue. Upon receiving the user's instruction, in S5008, the host computer generates a print queue. At this time, the host computer associates the extension application 204 installed in S5005 with the print queue. Then, in S5009, the generated print queue is displayed to the user via the display unit 119. Next, in S5010, the user of the company or organization instructs the host computer to start the installed extension application 204. In S5011, the host computer starts the extension application 204. Then, in S5012, the host computer displays the UI screen of the extension application 204 on the display unit 119. Details of the processing performed by the extension application 204 after the extension application is started by the user in S5010 until the extension application 204 displays the UI screen on the display unit 119 in S512 will be described later.

[0058] Next, FIG. 5B is a diagram showing an example of a sequence in which the custom setting information list 406 is not included in the extension application 204 but is separately placed in an area accessible by the extension application 204. In FIG.

[0059] In Fig. 5B, since the information is not included in the extension application 204 itself, the custom setting information can be changed relatively easily compared to Fig. 5A. Also, the application does not need to be modified in advance for a company or organization.

[0060] First, in S5100, the administrator notifies the user that the custom setting information list 406 will be distributed. As in S5001, specifically, the administrator of the organization may notify the user that the custom setting information list 406 will be distributed by posting a notice on the company's homepage, or by verbal or e-mail or other communication tools. The administrator creates the custom setting information list 406. The contents to be written in the custom setting information list 406 are the list shown in FIG. 4(b) described above, but the format in which they are written is not important. Specifically, any format such as ini, XML, JSON, YAML, TOML, PLIST, etc. may be used, or a method such as editing the registry of the host computer may be used.

[0061] Next, in S5101, the administrator instructs the administrator PC to distribute the custom setting information list 406. In S5102, the administrator PC distributes the custom setting information list 406 to the host computers in the company or organization. As a method for providing the custom setting information, as described above, the custom setting information may be distributed by email from the administrator PC to the user's host computer. Alternatively, the administrator may place it on a server shared within the company or organization and the user may obtain it from the server, or the custom setting information may be distributed by a cloud storage service or the like shared within the company or organization. Alternatively, the administrator may use an endpoint management tool to distribute the custom setting information list 406 to the host computers managed by the administrator within the company or organization via the administrator PC.

[0062] Next, in S5103, a user of a company or organization issues an installation instruction to the host computer for the extension application 204. In S5104, the host computer requests acquisition of the extension application 204 from an application download service (hereinafter, referred to as an application store) provided by Microsoft, and downloads the extension application 204. Note that in this embodiment, the extension application 204 is acquired from a service provided by Microsoft, but it may be acquired from other application download services or other websites. In this embodiment, it is assumed that the user actively acquires the extension application 204 from the application store. However, the extension application 204 may be automatically downloaded and installed from the application store to the host computer when the host computer is connected to the printing device 102. When the extension application 204 is automatically downloaded and installed to the host computer, it is possible to acquire the extension application 204 without starting the application store, which is more convenient. In S5105, the host computer installs the extension application 204 acquired from the application store, and in S5106, the host computer notifies the user that the installation of the extension application 204 is completed.

[0063] Next, in S5107, the user places the distributed custom setting information in a predetermined information storage area of ​​the host computer. The predetermined information storage area is an area generated by the OS when the extension application 204 is installed in the host computer, and is an area that can be accessed by the extension application 204. Note that in this embodiment, a method in which the user places the previously distributed custom setting information list 406 in a predetermined information storage area has been described, but the custom setting information list 406 may be placed by an administrator instead of by a user. Specifically, a method is conceivable in which the administrator accesses the above-mentioned endpoint management tool from the administrator PC and distributes the custom setting information list 406 to a predetermined storage area of ​​the host computer that the administrator manages. It can be said that it is more desirable for the custom setting information list 406 to be distributed by the administrator, because the reflection of the custom setting information is not left to the operation of each user.

[0064] Next, in S5108, a user of the company or organization instructs the host computer to generate a print queue. In response to the user's instruction, in S5109 the host computer generates a print queue. In S5108, the user generates the print queue using a function provided by the OS of the host computer. At this time, the host computer associates the extension application 204 installed in S5105 with the print queue. Then, in S5110, the generated print queue is displayed to the user via the display unit 119.

[0065] Next, in step S5111, the user instructs the host computer to start the extension application 204. The instruction to start the extension application 204 is, for example, an instruction to display a print setting screen provided by the extension application 204 from a print setting screen provided by the drawing application 201 or the OS.

[0066] In S5112, the host computer starts the extension application 204, and in S5113, the host computer displays the UI screen of the extension application 204 on the display unit 119. Details of the processing performed by the extension application 204 after the extension application is started by the user in S5111 and before the extension application 204 displays the UI screen on the display unit 119 in S5113 will be described later.

[0067] Finally, FIG. 5C shows an example of a sequence in which the administrator does not directly distribute the custom setting information list 406 to each user in the company or organization, but places it on an external server prepared separately. In this case, it is necessary to store in advance in the extended application 204 information on the server to be accessed for each target company or organization. Therefore, the extended application 204 is modified to an application dedicated to the company or organization to be used, and is provided to the administrator of the company or organization. The extended application 204 is modified for the company or organization in the same way as in FIG. 5A. On the other hand, in the case of FIG. 5C, the extended application 204 itself does not have custom setting information, and the custom setting information list 406 is placed on the server, so that when the custom setting information is to be changed, it is only necessary to change the information on the server. Therefore, it is different from FIG. 5A in that the extended application 204 itself does not need to be modified. In addition, in comparison with FIG. 5B, when the custom setting information list 406 is changed, it is not necessary to distribute it to each user, so it is expected that the occurrence of unintended problems due to distribution omissions or distribution errors can be suppressed.

[0068] In FIG. 5C, first in S5201, the administrator instructs the administrator PC to place the created custom setting information list 406 on a specified server.

[0069] Next, in S5202, the administrator PC places the custom setting information list 406 on a predetermined server, and the process proceeds to S5203. Note that the custom setting information list 406 placed on the predetermined server by the administrator PC is used by the extension application 204 in FIG. 6, which will be described later.

[0070] In S5203, the administrator notifies users in the company or organization that the extended application 204 containing information for accessing the server will be distributed. As in S5001, specifically, the administrator of the organization may post a notice on the company's homepage, or inform users verbally, by e-mail, or through other communication tools that the extended application 204 will be distributed. Then, in S5204, the administrator instructs the administrator PC to distribute the extended application 204. The administrator PC, which has received the administrator's instruction to distribute the extended application 204, distributes the extended application 204 to the user's host computer in S5205. The distribution method is the same as the distribution method of the extended application 204 in FIG. 5A.

[0071] Next, in S5206, the user in the company or organization instructs his / her host computer to install the extension application. In S5207, the host computer installs the extension application 204. At this time, the host computer also installs the extension INF, which is setup information for the extension application, at the same time. It is assumed that the extension INF is distributed to each user by the administrator together with the extension application. After the installation is complete, in S5208, the host computer displays the completion of the installation on the display unit 119 and notifies the user. The distributed extension application 204 is installed in the user's host computer, and the process proceeds to S5209. In S5209, the user in the company or organization instructs the host computer to generate a print queue. In response to the user's instruction, the host computer generates a print queue in S5210. At this time, the host computer associates the extension application 204 installed in S5207 with the print queue. Then, in S5211, the generated print queue is displayed to the user via the display unit 119. Next, in S5212, the user of the company or organization instructs the host computer owned by the user to launch the extended application 204 installed therein. In S5213, the host computer launches the extended application 204. Then, in S5214, the host computer displays the UI screen of the extended application 204 on the display unit 119.

[0072] The details of the processing performed by the extension application 204 from when the extension application is started by the user in S5212 until when the extension application 204 displays the UI screen on the display unit 119 in S5214 will be described later.

[0073] The above is a specific example of the print function list 401 and the custom setting information list 406, and a sequence in which an administrator of a company or organization creates the custom setting information list 406 and distributes it to users within the company or organization.

[0074] <PDC editing processing using extended applications> The process performed by the extended application 204 distributed to users of a company or organization according to the sequence of Fig. 5 after it is started will be described with reference to Fig. 6. Note that a program for executing the flowchart shown in Fig. 6 is stored in the external storage device 114, and the CPU 111 executes the program to realize the process.

[0075] First, when the extension application 204 is started by the user in S601, the print function extension unit 207 of the extension application 204 acquires capability information from the printing device 102. The capability information is acquired as a response from the printing device 102 by the print function extension unit 207 issuing an IPP Get-Printer-Attributes operation to the printing device 102. The extension application 204 acquires the capability information of the printing device 102, and the print function extension unit 207 advances the process to S602.

[0076] In S602, the print function extension unit 207 saves the capability information of the printing device 102 acquired in the process of S601 in the shared information 210. The saved capability information of the printing device 102 is used by the print function extension unit 207 to edit the PDC 203. However, the capability information may be used for other purposes by other units of the extension application 204. Also, if the capability information of the printing device 102 is already included in the shared information 210, the print function extension unit 207 may be configured to skip the process of S601 when the extension application 204 is subsequently started. The print function extension unit 207 saves the capability information of the printing device 102 in the shared information 210 and proceeds to the process of S603.

[0077] In S603, the extension application 204 checks whether custom setting information exists. In the embodiment, as described above with reference to FIG. 5, the administrator distributes the custom setting information list 406 to users of the company or organization in various ways. The process in S603 in which the extension application 204 checks the custom setting information will be described in light of each sequence in FIG.

[0078] 5A, the extended application 204 is modified for a specific company or organization, and includes custom setting information in the application. Therefore, the application always operates on the assumption that custom setting information exists, and in the subsequent determination of whether custom setting information exists in S604, the processing result is determined to be Yes, and the process proceeds to S605.

[0079] 5B, when the custom setting information list 406 is distributed by the administrator, the custom setting information list 406 exists in a predetermined information storage area allocated by the OS to the extension application 204. Therefore, the print function extension unit 207 of the extension application 204 accesses the predetermined information storage area by using an API provided by the OS, and confirms the existence of the custom setting information list 406. In the following step S604, the print function extension unit 207 performs a process of determining whether or not custom setting information exists. If it is determined that custom setting information exists, the print function extension unit 207 advances the process to step S605.

[0080] 5C, the administrator places the custom setting information list 406 on the server. Therefore, the print function extension unit 207 of the extension application 204 accesses the server using the access information to the server stored therein, and checks whether the custom setting information list 406 exists. If the print function extension unit 207 determines in the following S604 that custom setting information exists, the print function extension unit 207 advances the process to S605.

[0081] If the printing function extension unit 207 determines that no custom setting information exists based on the method of checking the existence of custom setting information corresponding to each sequence of Figures 5A, 5B, and 5C, the processing in S604 is determined to be No, and the processing proceeds to S609.

[0082] In S609, the print function extension unit 207 updates the PDC based on the capability information saved as the shared information 210. PDC editing when there is no custom setting information will be described with reference to FIG. 7. FIG. 7 shows an example of a PDC (PDC701) edited by the extension application 204 using only the capability information of the printing device 102. Print function information 702 of the PDC701 indicates a combination of a print option related to the print quality of the print function, PageOutputQuality, and a default print option. Three types of print options, Normal, Draft, and High, are described in PageOutputQuality, and among these, default=true is set for Normal. In other words, when the print function extension unit 207 edits the PDC701 based on the capability information of the printing device 102, the default option of the print quality is set to standard (Normal). In addition, print function information 703 of the PDC701 indicates a combination of a JobNUPAllDocumentsContiguously, that is, an option of the layout function and a default print option. In JobNUPAllDocumentsContiguously, 1, 2, 4, 9, and 16 are written as PagesPerSheet. Among these, default=true is set for PagesPerSheet 1. That is, when the print function extension unit 207 edits the PDC 701 based on the capability information of the printing device 102, the default option of the layout function is to set PagesPerSheet to 1. Similarly, in the print function information 704, OneSided, TwoSededShortEdge, and TwoSededLongEdge exist as options for JobDuplexAllDocumentContiguously (double-sided printing function). Also, among the options for the double-sided printing function, OneSided, i.e., single-sided printing, is the default option. In the print function information 705, Color, Monochrome, and Auto exist as options for PageOutputColor, i.e., the color mode printing function, and Color, i.e., color, is the default option.

[0083] The above is an example of the extended application 204 editing a PDC using only the capability information of the printing device 102. Note that in this embodiment, print quality, layout function, double-sided printing, and color mode are given as examples of printing functions, and printing options and default options for these printing functions are described. However, the combinations of customized printing functions, printing options, and default options are not limited to those described in this embodiment.

[0084] Returning to the explanation of FIG. 6 again, if the print function extension unit 207 determines in S604 that custom setting information exists, the process proceeds to S605. In S605, the print function extension unit 207 references the contents of the custom setting information list 406 acquired in S603, and checks whether there is a change to the default option as the custom setting information type. If it is determined in S605 that there is a change to the default option in the custom setting information, the print function extension unit 207 proceeds to S606. If it is determined that there is no change to the default option, the print function extension unit 207 proceeds to S607. The process of S607 will be described later.

[0085] Next, step S606 will be specifically described with reference to the print function list 401 in FIG. 4A and the custom setting information list 406 in FIG. 4B. In the custom setting information list 406, lines 407 and 408 contain information for specifying default print options. That is, this information specifies changes to the default print options for the layout function and double-sided printing. According to line 402 of the print function list 401, the default print option for "print function: layout" based on the capability information acquired from the printing device 102 is 1-in-1. However, in line 407 of the custom setting information list 406, the default print option is specified as 2-in-1. The print function extension unit 207 updates the information in the shared information 210 with the 2-in-1 specified in line 407 as the default option for "print function: layout". Similarly, according to line 403 of the print function list 401, the default print option for "print function: double-sided printing" based on the capability information acquired from the printing device 102 is single-sided. However, in row 408 of the custom setting information list 406, double-sided is specified as the default print option. The print function extension unit 207 updates the information in the shared information 210 with the double-sided specified in row 408 as the default option for "Print function: double-sided printing." In this way, the print function extension unit 207 performs the above-mentioned process for the row indicating a change to the default print option listed in the custom setting information list 406. Then, the print function extension unit 207 updates the information in the shared information 210 related to the combination of the print function to be changed and the default print option related to the default print option listed in the custom setting information list 406, and proceeds to S607.

[0086] Next, in S607, the print function extension unit 207 determines whether or not "option forcing" exists as a custom setting information type in the custom setting information list 406. If it is determined in S607 that "option forcing" exists in the custom setting information list 406, the print function extension unit 207 advances the process to S608. If it is determined that no option forcing exists in the custom setting information list 406, the print function extension unit 207 advances the process to S609. The process of S609 will be described later.

[0087] S608 will also be described in detail with reference to the print function list 401 in FIG. 4A and the custom setting information list 406 in FIG. 4B. The custom setting information list 406 includes information for specifying the forcing of the print options for lines 409 and 410. That is, the forcing of the options is to be applied to "Print Function: Print Quality" and "Print Function: Color Mode". According to line 404 of the print function list 401, the print options for "Print Function: Print Quality" based on the capability information acquired from the printing device 102 are high quality, standard, and draft. On the other hand, line 409 of the custom setting information list 406 describes that draft is to be forced as a print option for "Print Function: Print Quality". The print function extension unit 207 updates the information in the shared information 210 so that draft, which is the option specified in line 407, is set as an option for "Print Function: Print Quality" and high quality and standard are deleted from the options. Similarly, line 405 of print function list 401 specifies that the default print option for "Print function: color mode" based on the capability information acquired from the printing device 102 is color. However, line 410 of custom setting information list 406 specifies that monochrome is to be forced as a print option. The print function extension unit 207 updates the information in shared information 210 so that monochrome, the option specified in line 408, is set as an option for "Print function: color mode" and color and automatic are deleted from the options. In this way, the print function extension unit 207 performs the above-mentioned process for the line indicating the forcing of a print option listed in custom setting information list 406, updates the information in shared information 210 regarding the combination of print functions and options, and proceeds to process S609.

[0088] In step S609, the print function extension unit 207 updates the PDC 203 based on the information stored in the shared information 210. Editing of the PDC 203 using the information in the shared information 210 updated based on the information written in the custom setting information list 406 will be described with reference to FIG.

[0089] 8 shows an example of a PDC (PDC801) edited by the print function extension unit 207 based on information reflecting changes to the default options and option enforcement described in the custom setting information list 406 in addition to the capability information of the printing device 102. Print function information 802 of the PDC801 indicates PageOutputQuality, i.e., "Print Function: Print Quality", but options other than Draft have been deleted from the shared information 210 due to the enforcement of options, which are the custom setting information. The print function extension unit 207 describes only Draft as a print option for PageOutputQuality of the PDC801 based on the information of the shared information 210, and sets default=true. In other words, the print function extension unit 207 updates the PDC203 based on the information in the shared information 210 that the only print option for "Print Function: Print Quality" is Draft, and sets Draft to the default option.

[0090] Furthermore, the print function information 803 of the PDC 801 indicates a combination of print options and default print options for JobNUPAllDocumentsContiguously, i.e., "Print Function: Allocation". For JobNUPAllDocumentsContiguously, the print function extension unit 207 sets default=true for PagesPerSheet 2 by changing the default option in the custom setting information. In other words, this means that the default option for "Print Function: Allocation" is set to 2in1. Similarly, the print function information 804 indicates a combination of print options and default print options for JobDuplexAllDocumentsContiguously, i.e., "Print Function: Double-Sided Print". For JobDuplexAllDocumentsContiguously, the print function extension unit 207 sets default=true for TwoSidedShortEdge by changing the default option in the custom setting information. In other words, this means that the default option for double-sided printing is set to double-sided printing (short edge). Print function information 805 represents PageOutputColor, i.e., "Print function: color mode", but due to the forced option of the custom setting information, options other than monochrome have been deleted from the shared information 210. Based on the information in the shared information 210, the print function extension unit 207 writes only Monochrome as a print option for PageOutputColor of the PDC 801 and sets default=true. In other words, the print function extension unit 207 updates the PDC 203 based on the information in the shared information 210 that monochrome is the only print option for "Print function: color mode", and sets monochrome as the default option.

[0091] The above is an example of how the extension application 204 edits the PDC 203 using information in the shared information 210 that has been updated using information in the custom setting information list 406 in addition to the capability information of the printing device 102 .

[0092] <Print function and print option UI display using the print setting screen extension unit> Next, the print setting screen displayed by the print setting screen expansion unit 205 based on the PDC 203 edited by the print function expansion unit 207 will be described with reference to Fig. 9. A PC is generated based on the PDC 203 edited by the print function expansion unit 207, and the print setting screen expansion unit 205 displays the print setting screen based on the generated PC.

[0093] First, a print setting screen based on the PDC 203 edited by the print function extension unit 207 using only the capability information of the printing device 102 will be described with reference to FIG. 9A.

[0094] Control 902 on print setting screen 901 in FIG. 9(a) is a control for selecting "Print function: Print quality." In control 902, the print setting screen expansion unit 205 displays standard as the default option based on the print options and default options described in 702 of PDC 701. Similarly, control 903 is a control for selecting "Print function: Color mode," and the print setting screen expansion unit 205 displays color as the default option. Control 904 is a control for selecting "Print function: Layout," and displays 1-in-1 layout as the default option. Control 905 is a control for selecting the print function duplex printing, and "single-sided printing" is displayed as the default option for duplex printing.

[0095] Next, FIG. 9B will be described. The print setting screen 906 in FIG. 9B is an example of a print setting screen based on the PDC 203 edited by the print function extension unit 207 using the information described in the custom setting information list 406 in addition to the capability information of the printing device 102. The control 907 in the print setting screen 906 in FIG. 9B is a control for selecting "Print function: Print quality" like the print setting screen 901. The print setting screen extension unit 205 displays draft as an option based on the print option and default option described in 802 of the PDC 801. Since 802 of the PDC 801 enforces the option in the custom setting information list 406, the control 907 enforces draft as the default option, and other options cannot be selected. Also, the control 908 is a control for selecting "Print function: Color mode", but displays monochrome as an option based on 805 of the PDC 801. Similarly, the PDC 805 of the PDC 801 also enforces options according to the designation in the custom setting information list 406, and the control 908 enforces the default option of monochrome, and other options cannot be selected.

[0096] Next, control 909 is a control for selecting "Print function: Allocation", and displays "2in1" as the default option based on 803 of PDC 801. Since 803 of PDC 801 reflects the change in the default option specified in the custom setting information list 406, it is possible to select an option other than the default option. The case where control 908 is expanded will be described with reference to FIG. 9(c).

[0097] A control 912 on a print setting screen 911 in Fig. 9(c) is an illustration showing a state in which the control 909 in Fig. 9(b) 906 is expanded. In the control 912 in which the control 909 is expanded, in addition to the default option 2in1, options other than 2in1, such as 1in1 and 16in1, are also listed and displayed, and can be selected and set.

[0098] Returning to Fig. 9B for explanation, control 910 on print setting screen 906 is a control for selecting "Print function: double-sided printing", but displays double-sided (short side) based on 804 of PDC 801. Since 804 of PDC 801 reflects changes to the default options specified in custom setting information list 406, it is also possible to select print options other than the default options.

[0099] The above is an example of the print setting screen displayed by the print setting screen extension unit 205 based on the PDC edited by the print function extension unit 207. In this embodiment, the print setting screen displayed by the extension application 204 is used as an example to explain how the forced option and the change of the default option are reflected. However, the forced option and the change of the default option are also reflected in the PC generated based on the edited PDC 203. Therefore, it is possible to similarly control the print setting UI provided by the drawing application and the print setting screen displayed by the OS.

[0100] The method described in this embodiment enables an administrator of a company or organization to change a desired option of the printing device 102 to a default option, or to force a user to use a certain option. In addition, a PC is generated based on the edited PDC 203. Therefore, even when printing is executed from a print dialog displayed by print data generation software or from another drawing application, it is also possible to control the contents of the print options through the PC.

[0101] <<Embodiment 2>> <Registering custom setting information to the printing device> In the first embodiment, an example has been described in which the extension application 204 itself holds custom setting information and operates. Also, an example has been described in which the extension application 204 determines the presence of the custom setting information list 406 after placing the custom setting information list 406 in a predetermined information storage area or on a server, and operates accordingly.

[0102] However, the custom setting information may be registered in advance in the printing device 102, and the extended application 204 may acquire the custom setting information from the printing device 102. By adopting such a configuration, it is not necessary to modify the extended application 204 itself for a specific company or organization, as in the first embodiment. In addition, since it is not necessary to distribute the custom setting information list 406 to users, it is expected to have the effect of reducing the burden on the administrator and preventing human error in the distribution and application process of applications and setting files.

[0103] First, in this embodiment, an administrator of a company or organization registers custom setting information in the printing device 102. The registration of the custom setting information may be performed from a UI panel of the printing device 102, or may be performed using a management application provided on an information processing device, a management tool on the web, or the like. The administrator of a company or organization registers the custom setting information in the printing device 102, and notifies users of the company or organization to install the extension application 204. The information registered as the custom setting information is, for example, information described in the table shown in FIG. 4(b).

[0104] Next, a user belonging to a company or organization installs the extension application 204 on his / her host computer. As described above in the first embodiment, the extension application 204 may be automatically downloaded and installed on the host computer from an application store when the host computer is connected to the printing device 102. The user then launches the extension application 204, and the process of FIG. 10 begins.

[0105] In this embodiment, the process performed by the extension application 204 will be described with reference to Fig. 10. The flowchart shown in Fig. 10 is implemented by the CPU 111 executing a program provided by the extension application 204.

[0106] First, in S1001, the print function extension unit 207 of the extension application 204 acquires first capability information from the printing device 102. In this embodiment, the first capability information refers to printing device capability information that can be acquired from the printing device 102 as a response to the IPP Get-Printer-Attributes operation.

[0107] Next, in S1002, the print function extension unit 207 stores the acquired capability information in the shared information 210. Note that the capability information itself acquired in S1001, the method of acquiring the capability information, and the content of the process performed in S1002 are the same as those in the first embodiment, and therefore will not be described in this embodiment.

[0108] Next, in S1003, the print function extension unit 207 acquires second capability information indicating custom settings from the printing device 102. The second capability information is acquired as a response from the printing device 102 by issuing an IPP Get-Printer-Attributes operation to the printing device 102, similar to the first capability information. In this embodiment, the information acquired as the second capability information is acquired as uniquely defined attribute information defined separately from the first capability information. Note that in this embodiment, it is assumed that the second capability information is information that the printing function extension unit 207 can acquire using the IPP protocol, but the second capability information may be acquired using unique communication other than IPP communication. In addition, the printing device may create capability information in a state where the custom information is reflected, and the host computer may acquire the updated capability information. In this case, even when IPP printing is performed from a host computer equipped with an OS other than Windows (registered trademark) described in this embodiment, it is possible to reflect changes due to custom settings, change print options, or force options. When the print function extension unit 207 acquires the second capability information from the printing device 102, the process proceeds to S1004.

[0109] Next, in S1004, the print function extension unit 207 determines whether or not second capability information indicating custom setting information was acquired from the printing device 102 in S1003. If it is determined that the second capability information exists, the print function extension unit 207 advances the process to S1005. If the second capability information could not be acquired from the printing device 102 in the process of S1004, the print function extension unit 207 advances the process to S1009. The process of S1009 will be described later.

[0110] Next, the processing of S1005 will be described. In S1005, the print function extension unit 207 refers to the second capability information indicating the custom setting information acquired in S1003, and checks whether there is a change in the default option as the custom setting information type. If it is determined in S1005 that there is a change in the default option as the custom setting information type, the print function extension unit 207 advances the processing to S1006. If it is determined that there is no change in the default option, the print function extension unit 207 advances the processing to S1007. The processing of S1007 will be described later.

[0111] In S1006, similarly to the first embodiment, the print function extension unit 207 changes the default option of the corresponding print function based on the contents of the custom setting information, saves it in the shared information 210, and the process proceeds to S1007.

[0112] Next, in S1007, the print function extension unit 207 refers to the second capability information indicating the custom setting information acquired in S1003, and checks whether the custom setting information type includes a forced option. If it is determined in S1007 that the custom setting information type includes a forced option, the print function extension unit 207 proceeds to S1008. If it is determined that the optional forced option does not exist, the print function extension unit 207 proceeds to S1009.

[0113] Next, in S1008, the print function extension unit 207 deletes from the options of the print function other than the print options described in the custom setting information for the corresponding print function based on the contents of the custom setting information. Then, the print function extension unit 207 updates the shared information 210 and proceeds to S1009.

[0114] In S1009, the print function extension unit 207 updates the PDC 203 based on the capability information stored as the shared information 210. The updated PDC becomes as shown in FIG.

[0115] As described above, custom setting information is registered in advance in the printing device 102, and the PDC 203 is updated based on the two types of capability information acquired from the printing device 102. In this way, it is not necessary to modify the extension application 204 into a dedicated application for a company or organization. It is also possible to provide functions that meet the needs of a company or organization while eliminating the burden on the administrator or the possibility of an operational error.

[0116] <<Embodiment 3>> Next, a third embodiment will be described. In the first and second embodiments, the custom setting information is registered and managed in a predetermined information storage area on each host computer, on an external server, or on the printing device. If the host computer and the printing device are connected via a cloud service, the default print option settings may be registered in the cloud service.

[0117] In the case of the first embodiment, it is necessary to incorporate the custom setting information itself and information for connecting to an external server into the extension application 204. Therefore, when there is a change in information, it is necessary to modify the extension application 204 and reinstall it on the target host computer, which places a heavy burden on the administrator and the user. In addition, when placing custom setting information in a specified information storage area, it is not necessary to modify the extension application 204, but it is necessary for the administrator to modify the custom setting information list 406 and redistribute the custom setting information list 406 to the user.

[0118] In the case of the second embodiment, it is necessary to add uniquely defined attribute information to the capability information that can be acquired as a response to IPP Get-Printer-Attributes, or to incorporate a mechanism for communicating custom setting information between the printing device and the computer. Also, since multiple pieces of capability information are acquired from the printing device and PDC203 is edited from the multiple pieces of capability information, the amount of communication with the printing device increases.

[0119] In view of the above problems, we propose a third embodiment. Note that the system configuration not specifically mentioned in the following description is the same as that of the first embodiment, and the description will be omitted. Also, the processing flow not specifically mentioned in the following description is the same as that of the first embodiment, and the description will be omitted.

[0120] <Reflection of custom setting information in the printing system via the cloud printing service> First, the configuration of a printing system according to the third embodiment will be described with reference to FIG.

[0121] 11 is a diagram showing a host computer 101 equipped with an administrator PC 1102 of a company or organization and an extensible application 204, which is communicably connected to printing devices 1103 and 1104 via a cloud printing service 1101. One example of the cloud printing service 1101 is Universal Print provided by Microsoft.

[0122] A user of a company or organization can log in to a cloud printing service 1101 from a host computer 101 and send print data to a logical printing device present on the cloud printing service 1101. The logical printing device is a printing device virtually generated on the cloud printing service 1101. The host computer can generate a print queue for the logical printing device in the same way as the locally connected printing device 1105. The UP Class Driver, which is one of the print data generation software 202 provided by the OS, is used when sending print data from the host computer to the cloud printing service 1101. The user executes printing via Universal Print by printing using this UP Class Driver.

[0123] Next, a flow in which an administrator of a company or organization reflects custom setting information in the above-mentioned cloud printing service will be described with reference to FIG.

[0124] In S1201 of FIG. 12, the administrator of a company or organization instructs the administrator PC 1102 to display capability information of the logical printing device of the cloud printing service 1101. In S1202, in response to the administrator's instruction, the administrator PC 1102 accesses the cloud printing service 1101 via the Internet and acquires capability information of the logical printing device. Note that in this embodiment, it is assumed that the logical printing device of the printing device 1103 or the printing device 1104 on the cloud printing service 1101 has been generated in advance by the administrator, and a description thereof will be omitted. In S1203, the cloud printing service returns the capability information of the logical printing device to the administrator PC. In S1204, the administrator PC displays the capability information returned from the cloud printing service on the display unit 119 and notifies the administrator.

[0125] Next, in S1205, the administrator instructs the administrator PC to edit the capability information of the logical printing device. In this embodiment, the administrator instructs the administrator PC to edit the capability information of the logical printing device corresponding to the printing device 1103. The capability information editing instruction is an instruction to be described later with reference to FIG. 13B, and is an instruction to set default print options on the cloud printing service 1101.

[0126] In S1206, the administrator PC 1102 requests the cloud print service 1101 to edit the capability information instructed by the administrator. In S1207, the cloud print service 1101 edits the capability information of the logical printing device, and in S1208, the logical printing device updates the capability information. In S1208, the cloud print service updates the default print options of the capability information of the logical printing device it manages in accordance with the content instructed in S1206. As a result, when a print queue is later generated in the host computer, the default print options of the capability information of the logical printing device notified from the cloud print service to the host computer reflect the changes made by the administrator.

[0127] In S1209, the logical printing device returns the updated capability information to the cloud print service 1101. In S1210, the cloud print service 1101 returns the capability information edit result of the logical printing device to the administrator PC. In S1211, the administrator PC displays the capability information edit result to the administrator via the display unit 119.

[0128] In order to use the cloud print service 1101, user registration to the cloud print service 1101 is required. Therefore, among users of a company or organization, users who have not registered to the cloud print service 1101 perform user registration to the cloud print service 1101. In S1212, the user instructs the host computer 101 to register the user to the cloud print service 1101. In S1213, the host computer performs user registration to the cloud print service 1101 and registration for use of the cloud print service 1101. In S1214, the cloud print service 1101 returns a user registration result to the host computer, and in S1215, the host computer displays the user registration result to the user via the display unit 119. In this way, by the user performing user registration to the cloud print service 1101, the user can send a job to a logical printing device generated on the cloud print service 1101 and print using the printing device 1103 and the printing device 1104.

[0129] Next, in steps S1216 to S1225, the extension application 204 acquired from the application store is installed on the user's host computer. After the installation, the user generates a print queue and launches the extension application 204. This process is similar to steps S513 to S523 in FIG. 5B, and therefore will not be described here. Details of the process performed by the extension application 204 after the user launches the extension application in step S1223 and before the extension application 204 displays a UI screen on the display unit 119 in step S1225 will be described later.

[0130] Next, a method in which the administrator edits the capability information of a printing device connected via the cloud print service using an interface provided by the cloud print service 1101 in S1201 will be described with reference to FIG.

[0131] 13A shows a device management interface 1301 provided by the cloud print service 1101. An administrator of a company or organization logs in to the cloud print service 1101 from an administrator PC 1102 via the Internet. From the screen of the device management interface 1301 displayed on the administrator PC 1102, it is possible to manage the printing device 1103 and the printing device 1104 connected via the cloud print service 1101. In this embodiment, the printing device 1103 is treated as Printer A and the printing device 1104 is treated as Printer B.

[0132] When the administrator selects Printer A in 1302 on the interface 1301, the screen transitions to the device management interface 1303 in FIG. 13B. The administrator can edit the specific capability information of the printing device 1103, which is Printer A, on the device management interface 1303. A control 1304 arranged on the device management interface 1303 is a control for changing the default option of the print function color mode. When monochrome is selected with the control 1304, the capability information is edited so that the default option of the "print function: color mode" of the printing device 1104 is set to monochrome, and the default option is returned as monochrome in the response in IPP communication. Furthermore, by selecting draft in 1305, the capability information is edited so that the printing device 1104 returns draft for the default option of "print function: print quality". By selecting double-sided printing (short edge) with the control 1306, the capability information is edited so that the printing device 1104 returns double-sided printing (short edge) for the default option of "print function: double-sided printing". In the control 1307, by selecting 2in1, the capability information of the printing device 1104 is edited so that the default option for "print function: allocation" is returned as 2in1.

[0133] In this way, by using the device management interface provided by the cloud print service 1101, the administrator can arbitrarily customize the capability information returned by the printing device 1103 and the printing device 1104 that exist on the cloud print service 1101.

[0134] Next, the process executed when the extension application 204 installed on the host computer of a user in a company or organization is started will be described with reference to FIG.

[0135] First, the processing from S1401 to S1402 is the same as the processing from S601 to S602 in Fig. 6 of the first embodiment, and therefore the description will be omitted. Note that the printing device described in S1401 to S1403 in Fig. 14 is an actual printing device in the case of local printing, and is a logical printing device in the case of a cloud printing service.

[0136] Next, in S1403, the print function extension unit 207 acquires whether the connection mode of the printing device is local printing or printing via a cloud printing service. The connection mode is determined based on attribute information indicating the type of consumables included in capability information acquired by executing Get-Printer-Attributes of IPP. Alternatively, the print function extension unit 207 may acquire HWID information of the associated print queue via an OS API and make a determination by referring to a specific character string included in the HWID. Furthermore, the print function extension unit 207 may make a determination by making an inquiry to the cloud printing service.

[0137] In S1403, the print function extension unit 207 acquires the type of connection of the printing device, and the process proceeds to S1404.

[0138] Next, in S1404, the print function extension unit 207 switches processing depending on the connection mode of the printing device acquired in S1403. Specifically, if the print extension unit 207 determines in S1404 that the connection mode of the printing device is via a cloud printing service, the process proceeds to S1410. That is, if the connection mode is via a cloud printing service, the administrator of the company or organization can change the default options of the printing function on the device management interface 1303 provided by the cloud printing service. Therefore, the changed default options are given priority. Then, the print function extension unit 207 saves the capability information acquired from the printing device in the shared information 210, and the process proceeds to S1410.

[0139] On the other hand, if it is determined in S1404 that the connection mode of the printing device is local printing, the printing function extension unit 207 advances the process to S1405. The process contents from S1405 to S1409 are the same as the process contents from S604 to S608, and therefore a description thereof will be omitted here.

[0140] The process in S1410 is also similar to the process performed in S609 in the first embodiment. If the connection is via a cloud print service, the print function extension unit 207 edits the PDC 203 using only the capability information acquired from the printing device and stored in the shared information 210. Only if the connection is local printing, the capability information acquired from the printing device is updated with custom setting information and stored in the shared information 210. Then, the print function extension unit 207 edits the PDC 203 using the information stored in the shared information 210.

[0141] With this configuration, in the case of a printing device via a cloud printing service, the default options can be changed on the device management interface 1303 provided by the cloud printing service. This allows the administrator to efficiently reflect custom setting information on the host computer of the organization without modifying the extension application 204 for the company or organization, improving convenience.

[0142] 14, only the default options can be changed on the device management interface 1303 provided by the cloud print service. Therefore, when forcing an option as custom setting information, the administrator may store the custom setting information in a predetermined information storage area allocated to the extension application 204 or on the server, as in the case of local printing. The process when the administrator prepares and distributes the custom setting information list 406 to forcibly set an option will be described with reference to FIG. 15.

[0143] First, steps S1501 to S1504 are omitted because they are the same as steps S1401 to S1404 in the process flow of Fig. 14 of the third embodiment. If the answer is Yes in step S1504, the print function extension unit 207 advances the process to step S1505.

[0144] Next, in S1505, the print function extension unit 207 determines whether custom setting information exists, unlike the process flow of Fig. 14. The specific process of S1505 is the same as S604 in the first embodiment. If it is determined that the result of S1505 is Yes, the print function extension unit 207 advances the process to S1506.

[0145] Next, in S1506, the print function extension unit 207 checks whether the custom setting information includes a change to a default option. If No, the print function extension unit 207 advances the process to S1508. If Yes, the print function extension unit 207 advances the process to S1507. Since the default option can be changed on the device management interface 1303 of the cloud print service, priority is given to the capability information edited on the cloud print service side, and the process itself is skipped. Note that in S1506 and S1507, skipping the process of changing the default value of the custom setting information is explicitly described. After S1505, the print function extension unit 207 may advance the process to S1508 without performing S1506 and S1507.

[0146] Next, in S1508, it is confirmed whether the custom setting information includes a forced option. If S1508 is Yes, the print function extension unit 207 advances the process to S1509. The specific process is the same as S608 in the first embodiment. If S1508 is No, the print function extension unit 207 advances the process to S1515.

[0147] Next, the process returns to S1504 for explanation. If the answer is No in S1504, the process proceeds to S1510. The processes from S1510 to S1514 are the same as the processes from S605 to S608 in the first embodiment. After executing the processes up to S1514, the print function extension unit 207 proceeds to S1515. The process of S1515 is the same as the process performed in S609 in the first embodiment, as in the previous embodiments. By executing the above processes, in the case of a printing device via a cloud print service, in addition to changing the default options on the portal of the cloud print service, it is also possible to reflect custom setting information regarding option enforcement.

[0148] <Force the use of extended applications for print queues> When forcing printing device options or changing default options using the method described above in Figures 5A and 5B, in addition to extension applications that have been modified specifically for a company or organization, there may also be extension applications available on an application store.

[0149] In this case, when a user generates a print queue, the OS may associate the extended application present in the application store with the print queue in priority over the modified extended application 204. In this case, users of the company or organization cannot use the modified extended application 204, and the administrator cannot apply the forced options or changes to the default options by the extended application 204 to the print settings. Therefore, the modified extended application 204 is set to be associated with the print queue in priority over the extended application distributed from the application store.

[0150] A method for allowing the modified extension application 204 to be associated with a print queue with priority will now be described.

[0151] As a method for associating the modified extension application 204 with the print queue preferentially, there is an example of editing the registry. The administrator of the company or organization provides the users belonging to the company or organization with a registry change method or a file for the change to force the use of the modified extension application 204. As a method of providing, the administrator may inform the users of the key editing method by email. In addition, the administrator may place the editing method on a server shared within the company or organization, and the users may obtain it from the server, or similarly, the editing method may be placed on a cloud storage service shared within the company or organization. Alternatively, the administrator may use a client management tool to distribute the registry key to the host computer of each user. An example of a file to be distributed for the change is a file in ".reg format".

[0152] Next, the details of the registry key that is distributed to the user so that the modified extension application 204 is preferentially associated with the print queue will be described with reference to FIG.

[0153] 16 is an example of a GUI screen, registry edit screen 1601, provided for editing the registry of the OS. A registry key 1602 for editing settings related to the extended application 204 can be created under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\. A registry key 1603 for setting the association between the extended application 204 and the print queue is created directly under the registry key 1602. A value is then added under the created registry key 1603. The value is a REG_SZ value, that is, a character string value is added. After creating the character string value, the name of the corresponding printing device is entered in the value name, and the AUMID for associating the application is entered in the data portion. The AUMID stands for ApplicationUserModelID, and is an ID for linking a specific application to a specific process, file, window, etc. In this embodiment, as an example, the printing device is PrinterA, and the AUMID of the extension application 204 is dd5de805-d9bb-4785-88e9-399cbff2130e_ph1m9x8skttmg!App.

[0154] By creating a specific key in the registry and setting a value in this way, it is possible to associate a specific printing device with an extended application 204 modified specifically for a company or organization, rather than an extended application distributed from an application store. In addition, in all of the above-mentioned embodiments, the extended application 204 needs to be installed in the host computer 101 and associated with the queue when a print queue is generated, and to start and operate. However, even if the extended application 204 is not installed in the host computer 101, the user can execute printing if the print data generation software exists. For this reason, in cases where the user does not intentionally install the extended application 204, or uninstalls it after installation, it becomes impossible to execute control such as forcing options and changing default options. To avoid such problems, the administrator of the company or organization may configure the host computer so that execution of printing by the print data generation software is restricted when the extended application 204 does not exist in the host computer.

[0155] In order to restrict printing by the print data generation software when the extended application 204 does not exist, the administrator of the company or organization may distribute a registry key to the host computer of each user. The registry key distributed to the user by the administrator will be described with reference to FIG.

[0156] FIG. 17 is an example of a GUI screen, registry edit screen 1701, provided for editing the registry of the OS. A registry key 1702 for editing settings related to the extended application 204 can be created under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\. A registry key 1703 called ExtensionApp\Association\Override\Default\PrinterA can be created under the registry key 1702. Information related to the extended application 204 for PrinterA can be set in this registry key 1703. In the registry key 1703, a value 1704 can be set for selecting whether printing can be performed only when the extended application 204 is associated. After creating the registry key 1703, a value is added. The value 1704 can be a REG_DWORD value, that is, a 32-bit value. Then, by setting 1 to the REG_DWORD value, printing can be performed only when the extended application 204 is associated when PrinterA is used.

[0157] By setting specific keys and values ​​in the registry in this way, it is possible to prevent printing from being performed on a specific printing device unless the extended application 204 is associated with the device. This makes it possible to prevent printing from being performed unintentionally by the administrator of a company or organization from a host computer on which the extended application 204 is not installed.

[0158] As described above, according to each of the above-mentioned embodiments, an administrator of a company or organization applies custom setting information to a user who uses the print data generation software 202 within the organization, using the extension application 204. This makes it possible to change a desired print option to a default option for each available print function, or to forcibly apply a certain print option. By changing the default option or forcibly applying a certain print option, it is possible to reduce printing costs, conserve resources, and prevent printing failures, thereby improving the utility of the OS standard printing and the extension application 204 for users.

Claims

1. A print setting application that extends the functionality of a generic printer driver, comprising: An acquisition step of acquiring capability information from the printer; A storage step of storing information based on the acquired capability information; an updating step of updating the stored information based on restriction information related to print settings by the print setting application; a control step of displaying a print setting screen based on the updated information in the updating step.

2. The print setting application according to claim 1 , wherein the restriction information regarding the print settings by the print setting application is information regarding initial values ​​displayed on the print setting screen provided by the print setting application.

3. the information indicates initial values ​​of setting items that can be set via the print setting screen, 3. The print setting application according to claim 2, wherein the updating step updates initial values ​​of the setting items indicated by the information.

4. The print setting application according to claim 1, characterized in that the restriction information regarding the print settings by the print setting application is information indicating setting values ​​that are restricted from being set via a print setting screen provided by the print setting application.

5. 5. The print setting application according to claim 4, wherein the updating step deletes the setting values ​​indicated by the restriction information from the setting values ​​indicated by the information.

6. A control method that is realized by executing a print setting application that is stored in an information processing device that stores a generic printer driver and that extends the function of the generic printer driver, the method comprising: A storage step of storing information based on the acquired capability information; an updating step of updating the stored information based on restriction information related to print settings by the print setting application; A control method comprising: a control step of displaying a print setting screen based on the updated information in the updating step.

7. 7. The control method according to claim 6, wherein the restriction information regarding the print settings by the print setting application is information regarding initial values ​​displayed on the print setting screen provided by the print setting application.

8. the information indicates initial values ​​of setting items that can be set via the print setting screen, 8. The control method according to claim 7, wherein said updating step updates initial values ​​of said setting items indicated by said information.

9. The control method according to claim 6, characterized in that the restriction information regarding the print settings by the print setting application is information indicating setting values ​​that are restricted from being set via a print setting screen provided by the print setting application.

10. 10. The control method according to claim 9, wherein the updating step deletes the setting value indicated by the restriction information from the setting value indicated by the information.

11. An information processing device in which a generic printer driver and a print setting application that expands a function of the generic printer driver are stored, An acquisition means for acquiring capability information from a printer; A storage means for storing information based on the acquired capability information; an update unit that updates the stored information based on restriction information related to the print settings by the print setting application; and a control means for displaying a print setting screen based on the information updated by the update means.

Citation Information

Patent Citations

  • program

    JP2019074906A