Information processing device, control method for information processing device, and program
The information processing device addresses the issue of inconsistent print settings by using dual printer drivers to adapt the print settings screen based on the input path, ensuring compatibility and functionality across various image forming apparatuses.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- CANON KK
- Filing Date
- 2026-04-01
- Publication Date
- 2026-06-18
AI Technical Summary
Existing printer drivers, whether local or cloud-based, provide the same print settings screen regardless of the image forming apparatus used, leading to potential differences in functionality that can prevent certain settings from being applied.
An information processing device with dual printer drivers and a display mechanism that adjusts the print settings screen based on the input path of print data, allowing separate settings for image forming apparatuses.
Enables dynamic adjustment of print settings screens based on the input path, ensuring compatibility and functionality across different printer drivers and image forming apparatuses.
Smart Images

Figure 2026099848000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an information processing apparatus, a control method for an information processing apparatus, and a program.
Background Art
[0002] In recent years, a general-purpose printer driver (local printer driver) that directly communicates with an image forming apparatus using an industry-standard protocol such as IPP (Internet Printing Protocol) has been considered. The local printer driver can communicate with image forming apparatuses of a plurality of printer vendors and image forming apparatuses of various models. Therefore, by using the local printer driver, a user can transmit print data to an image forming apparatus without installing a vendor-specific printer driver.
[0003] Furthermore, printing using a cloud print service has been considered. In the cloud print service, a printer driver for the cloud print service (cloud printer driver) is installed in an information processing apparatus. In the cloud print service, the information processing apparatus uses the cloud printer driver to transmit print data to the cloud print service, and the cloud print service transmits the print data to the image forming apparatus to execute printing.
[0004] The above local printer driver and cloud printer driver are premised on generating print data to be printed by image forming apparatuses of various vendors and different models. Therefore, on the print setting screen displayed by the local printer driver or the cloud printer driver, only some setting items that are common to image forming apparatuses of any vendor can be set.
[0005] Therefore, as described in Patent Document 1, it is conceivable to install a print setting extension application that uses identification information of the image forming apparatus linked to the printer driver to extend the print setting screen to match the image forming apparatus used for printing. By installing this application, in addition to the items that can be set with the local printer driver and cloud printer driver, it becomes possible to set printer vendor-specific settings and setting values. [Prior art documents] [Patent Documents]
[0006] [Patent Document 1] Japanese Patent Publication No. 2020-04158 [Overview of the Initiative] [Problems that the invention aims to solve]
[0007] Typically, identification information for the model and type of image forming apparatus is set for each model of the image forming apparatus. Therefore, as in Patent Document 1, if the image forming apparatus performing the printing is the same, the same print settings screen will be provided whether a local printer driver or a cloud printer driver is used.
[0008] However, there can be differences in the functionality that local printer drivers and cloud printer drivers can perform. For example, there may be settings or values that can be written to the print data with one printer driver but not with the other. In this case, even if the image forming machine used for printing is the same, using one printer driver will allow printing with the settings set on the print settings screen, while using the other will not allow printing with the settings set on the print settings screen.
[0009] This invention addresses the above-mentioned problems and aims to change the provided print settings screen depending on the input path of the print data, even if the identification information of the image forming apparatus used for printing is the same. [Means for solving the problem]
[0010] To solve the above problems, an information processing device is provided, which has a first printer driver installed that generates print data to be sent to an image forming apparatus in accordance with a predetermined protocol, and a second printer driver installed that generates print data to be sent to a server system in accordance with the predetermined protocol, and is characterized by having a display means that displays a print setting screen different from the case when a first information for sending print data generated by the first printer driver to the image forming apparatus is selected, and a first transmission means for sending print data generated by the first printer driver to the image forming apparatus based on the settings received via the print setting screen displayed by the display means, and a second transmission means for sending print data generated by the second printer driver to the server system based on the settings received via the print setting screen displayed by the display means. [Effects of the Invention]
[0011] The information processing device described herein makes it possible to change the provided print settings screen depending on the input path of the print data, even if the identification information of the image forming apparatus used for printing is the same. [Brief explanation of the drawing]
[0012] [Figure 1] This figure shows an example of the system configuration in this embodiment. [Figure 2] This figure shows an example of the hardware configuration in this embodiment. [Figure 3] This figure shows an example of the software configuration according to this embodiment. [Figure 4] It is a diagram showing an example of a sequence among pieces of software and services related to registration of a print setting extension application according to this embodiment. [Figure 5] It is a diagram showing an example of various data according to this embodiment. [Figure 6] It is a diagram showing an example of a sequence among pieces of software and services related to printer registration to a cloud print service according to this embodiment. [Figure 7] It is a diagram showing an example of a sequence among pieces of software and services related to addition of a printer driver according to this embodiment. [Figure 8] It is a diagram showing an example of a sequence among pieces of software and services related to activation of a print setting extension application according to this embodiment. [Figure 9] It is a diagram showing an example of a UI of a print setting extension application according to this embodiment. [Figure 10] It is a flowchart regarding UI display of a print setting extension application according to this embodiment. [Figure 11] It is a diagram showing an example of a sequence among pieces of software and a printer related to print queue generation of a local printer driver according to this embodiment. [Figure 12] It is a flowchart showing an example of processing executed at the time of printing in this embodiment. [Figure 13] It is a diagram showing an example of a UI of a print setting extension application in Embodiment 2. [Figure 14] It is a flowchart showing processing of a cloud print-compatible printer in Embodiment 2. [Figure 15] It is a flowchart when a print setting extension application displays a UI in Embodiment 2. [Figure 16] It is a diagram showing an example of a table memorized by a print setting extension application in Embodiment 3. [Figure 17] It is a flowchart when a print setting extension application displays a UI in Embodiment 3.
Embodiments for Carrying Out the Invention
[0013] Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings.
[0014] <Embodiment 1> FIG. 1 shows a configuration diagram of a printing system in cloud printing in this embodiment. A client terminal 101, a cloud printing server 102, an application management server 103, a cloud printing-compatible printer 104, an online support server 105, and a Web server 106 are connected via a network 107.
[0015] In FIG. 1, one client terminal 101 and one cloud printing-compatible printer 104 are shown respectively, but there may be a plurality of client terminals 101 and cloud printing-compatible printers 104.
[0016] Also, the cloud printing server 102, the application management server 103, the online support server 105, and the Web server 106 may be server systems composed of a plurality of information processing devices. By configuring each server as a server system composed of a plurality of information processing devices, load distribution can be dispersed to a plurality of information processing devices.
[0017] Also, the cloud printing server 102, the application management server 103, the online support server 105, and the Web server 106 may be virtually configured inside one physical information processing device.
[0018] The network 107 assumes a WAN such as the Internet for connection to cloud services, but all may be in a closed environment such as an in-house LAN.
[0019] The client terminal 101 is an information processing device such as a PC, tablet, or smartphone, and is a terminal that is directly operated by the user. Any application software can be run on the client terminal 101.
[0020] The cloud print-compatible printer 104 is a device that actually prints onto a recording medium such as paper, and is an image forming apparatus that converts print data received via the network 107 into image data and prints it.
[0021] The cloud print-compatible printer 104 can receive print data from the client terminal 101 via the cloud print server 102, or it can receive print data directly from the client terminal 101 without going through the cloud print server 102.
[0022] The cloud print-compatible printer 104 receives print data generated by the cloud printer driver 311 of the client terminal 101 via the cloud print server 102. Alternatively, the cloud print-compatible printer 104 can receive print data generated by the local printer driver 314 of the client terminal 101 without going through the cloud print server 102.
[0023] The cloud print server 102 receives print commands and document data from external sources. After the cloud print server 102 converts the received document data into print data, it sends the print data to a designated cloud print-compatible printer 104.
[0024] The application management server 103 stores and manages various applications. The application management server 103 receives application identification information and download requests from client terminals 101, and sends the application identified based on the received identification information to the client terminals 101.
[0025] The online support server 105 is a server device that provides the online support service 351. The online support service 351 is a server device that provides the client terminal 101 with a file containing information to extend the functionality of the client terminal 101.
[0026] The web server 106 is a server device that provides the print settings UI service 361. The print settings UI service 361 is a server device that communicates with the print settings extension application 312 to provide the print settings UI.
[0027] Next, the hardware configuration of the system in this embodiment will be described using Figure 2.
[0028] Figure 2(a) is a block diagram showing the hardware configuration of client terminal 101.
[0029] The client terminal 101 includes a display unit 216, an operation unit 217, a storage unit 214, a control unit 211, and a network communication unit 215.
[0030] The storage unit 214 consists of one or more non-volatile storage devices, such as a hard disk or SSD. The storage unit 214 is capable of storing and rewriting digital data. The program for running the print settings extension application 312 is stored in the storage unit 214.
[0031] The control unit 211 consists of a CPU 212 and a memory 213, and controls the overall operation of the client terminal 101. The CPU 212 loads the programs stored in the storage unit 214 into the memory 213 and executes them. The memory 213 is the main memory of the CPU 212 and is used as a work area and a temporary storage area for loading various programs.
[0032] The network communication unit 215 is a device that communicates with the external network 107 and performs digital data input and output with external servers, client terminals, etc. via the network 107. The client terminal 101 communicates with the cloud print server 102 and the cloud print-compatible printer 104 via the network communication unit 215. In addition, the client terminal 101 communicates with the web server 106, the online support server 105, and the application management server 103 via the network communication unit 215.
[0033] The display unit 216 is a device for displaying visual information to the user in real time, such as a liquid crystal display. The operation unit 217 is a device for receiving input from the user via a keyboard, mouse, or the like. A device that combines the functions of both the display unit 216 and the operation unit 217, such as a touch panel, may also be used.
[0034] Figure 2(b) is a block diagram showing the hardware configuration of the cloud print server 102. The cloud print server 102 includes a storage unit 224, a control unit 221, and a network communication unit 225.
[0035] The descriptions of the memory unit 224, control unit 221, and network communication unit 225 are the same as those for the client terminal 101 and will therefore be omitted.
[0036] Although the cloud print server 102 is described as being composed of a single information processing device having the hardware configuration shown in Figure 2(b), the cloud print server 102 may also be composed of multiple information processing devices as shown in Figure 2(b).
[0037] Figure 2(c) is a block diagram showing the hardware configuration of the application management server 103. The application management server 103 includes a display unit 236, an operation unit 237, a storage unit 234, a control unit 231, and a network communication unit 235.
[0038] The descriptions of the display unit 236, operation unit 237, storage unit 234, control unit 231, and network communication unit 235 are the same as those for the client terminal 101 and will therefore be omitted.
[0039] Although the application management server 103 is described as being composed of a single information processing device having the hardware configuration shown in Figure 2(c), the application management server 103 may be composed of multiple information processing devices.
[0040] Figure 2(d) is a block diagram showing the hardware configuration of the cloud print-compatible printer 104. The cloud print-compatible printer 104 includes a display unit 246, an operation unit 247, a storage unit 244, a control unit 241, a network communication unit 245, and a printing unit 248.
[0041] The display unit 246 is a device that displays information to the user in real time, such as a touch panel or LEDs, which are installed on the cloud print-compatible printer 104.
[0042] The operation unit 247 is a device for receiving input from the user and may include a touch panel as well as hard keys such as a numeric keypad. The storage unit 244 and control unit 241 are equivalent to those of the client terminal 101, so their explanation is omitted.
[0043] The network communication unit 245 is a device that communicates with the external network 107, and its main roles are to receive print data and to send information about the status of the cloud print-compatible printer 104, such as errors, to external servers, etc.
[0044] The printing unit 248 is a device that performs a series of operations including paper feeding, printing, and paper ejection on paper prepared in a cassette or tray. The printing method is not particularly limited and can be electrophotographic or inkjet. Finishing devices such as a duplex unit, stapling, and punching used during paper ejection are also included in the printing unit 248.
[0045] In this embodiment, a single-function printer that only performs printing functions is described as an example of a cloud print-compatible printer 104, but a multi-function printer (all-in-one device) that also has scanner and fax functions may be used.
[0046] Figure 2(e) is a hardware block diagram showing the details of the online support server 105. In this embodiment, the online support server 105 is described as being composed of one information processing device, but it may be composed of multiple information processing devices. The online support server consists of a display unit 256, an operation unit 257, a storage unit 254, a control unit 251, and a network communication unit 255. The display unit 256 and the operation unit 257 are the same as the display unit 216 and operation unit 217 of the client terminal 101, so their description is omitted. The storage unit 254 consists of one or more HDDs, SSDs, etc. The storage unit 254 stores files containing information for extending the functions provided by the client terminal 101.
[0047] The control unit 251 consists of a CPU 252 and a memory 253. The CPU 252 controls the entire online support server 105. The memory 253 is used for processing performed by the CPU 252. The network communication unit 255 is an interface for the online support server 105 to communicate with the client terminal 101. The online support server 105 receives requests to retrieve files stored in the storage unit 254 via the network communication unit 255 and sends the corresponding files to the client terminal 101.
[0048] Figure 2(f) is a block diagram showing the hardware configuration of the Web server 106. The Web server 106 comprises a display unit 266, an operation unit 267, a storage unit 264, a control unit 261, and a network communication unit 265.
[0049] The descriptions of the display unit 266, operation unit 267, storage unit 264, control unit 261, and network communication unit 265 are the same as those for the client terminal 101 and will therefore be omitted.
[0050] Although the Web server 106 is described as being composed of a single information processing device having the hardware configuration shown in Figure 2(f), the Web server 106 may be composed of multiple information processing devices.
[0051] Next, the software configuration of the system in this embodiment will be described using Figure 3.
[0052] Figure 3(a) is a block diagram showing the software configuration of client terminal 101.
[0053] The client terminal 101 has a cloud printer driver 311, a print settings extension application 312, an OS 313, a local printer driver 314, and a document generation application 315.
[0054] The cloud printer driver 311 includes a cloud print service interface 31101, a print data management unit 31102, a UI unit 31103, and a print setting extension application interface 31104.
[0055] The Cloud Print Service I / F 31101 handles the exchange of data and commands with the Cloud Print Service 321. The Cloud Print Service I / F 31101 sends print data to the Cloud Print Service 321 and receives printer information from the Cloud Print Service 321.
[0056] The print data management unit 31102 performs processes such as generating and transmitting print data.
[0057] The UI unit 31103 is responsible for displaying the print settings screen provided by the cloud printer driver 311 and for receiving user operations from the client terminal 101.
[0058] The print settings extension application I / F31104 handles the exchange of data and commands with the print settings extension application 312.
[0059] The cloud printer driver 311 can generate print data that can be printed on multiple different models of image forming machines. These multiple different models of image forming machines may be from different printer vendors. The cloud printer driver 311 may be provided by the OS vendor, or by the vendor providing the cloud print service. Furthermore, the cloud printer driver 311 may be provided by the printer vendor.
[0060] The print settings extension application 312 includes an extended print settings unit 31201, an extended application UI unit 31202, and a print data management unit 31203.
[0061] The extended print settings unit 31201 manages the settings for printer vendor-specific print settings that are not supported by the cloud printer driver 311 or the local printer driver 314. Alternatively, the extended print settings unit 31201 may manage the settings for printer vendor-specific print settings as well as those supported by the cloud printer driver 311 or the local printer driver 314.
[0062] The extended application UI unit 31202 is responsible for displaying the print settings screen provided by the print settings extended application 312, and for receiving user operations from the client terminal 101.
[0063] The print data management unit 31203 performs processes such as generating print data, editing print data generated by the cloud printer driver 311 or local printer driver 314, and sending print data.
[0064] OS313 includes an input / output control unit 31300, a print setting extension application management unit 31301, an extension setup information file search unit 31302, and an identification additional information assignment processing unit 31303.
[0065] The input / output control unit 31300 accepts operations from the user of the client terminal 101.
[0066] The print settings extension application management unit 31301 manages the installation of the print settings extension application 312 and handles the exchange of data and commands. The print settings extension application management unit 31301 also uses the application ID (AppID) extracted from the extension setup information file to search for the print settings extension application 312 from the application management service 331.
[0067] The extended setup information file search unit 31302 searches the online support service 351 for extended setup information files whose device ID matches the device ID held in the extended setup information file, which is used as a search key by the OS 313. Then, the extended setup information file search unit 31302 downloads the files found through the search.
[0068] The identification information assignment processing unit 31303 assigns a first additional information representing the major category of the application to the device ID. In this embodiment, the major category of the application is the classification of the type of application corresponding to the connected device. If the application corresponds to a printer, the additional information "Print_" is assigned to the device ID. Note that "Print_" is just an example, and other strings, numbers, or symbols may also be used.
[0069] The local printer driver 314 includes a print data management unit 31401, a UI unit 31402, and a print setting extension I / F 31403.
[0070] The print data management unit 31401 performs processes such as generating and transmitting print data.
[0071] The UI unit 31402 is responsible for displaying the print settings screen provided by the local printer driver 314 and for receiving user operations from the client terminal 101.
[0072] The print settings extension application I / F31104 handles the exchange of data and commands with the print settings extension application 312.
[0073] The local printer driver 314 can generate print data that can be printed on multiple different models of image forming machines. These multiple different models of image forming machines may be image forming machines manufactured by different printer vendors. Furthermore, the local printer driver 314 may be a driver provided by the OS vendor or a driver manufactured by the printer vendor.
[0074] The document generation application 315 has a UI unit 31501 and is an application that has functions such as document creation, editing, and display. The document generation application 315 may also be an application that only has the function of displaying document data.
[0075] The cloud printer driver 311 and local printer driver 314 are built into the OS 313 of the client terminal 101 before installation, and become available after installation. The cloud printer driver 311 and local printer driver 314 generate print data in accordance with IPP (Internet Printing Protocol). The print data generated by the cloud printer driver 311 and local printer driver 314 is then sent to the cloud print-compatible printer 104 or cloud print server 102 using a communication method compliant with IPP.
[0076] Figure 3(b) is a block diagram showing the software configuration of the cloud print server 102.
[0077] The Account Management Unit 32101 manages the authentication of tenants and users registered with the Cloud Print Service 321.
[0078] The device management unit 32102 manages device information related to printers registered with the cloud print service 321. Examples of device information include device ID, tenant ID, printer name, equipment configuration information, and capability information.
[0079] The print management unit 32103 is responsible for determining whether to allow or deny print data transfer requests from the cloud print-compatible printer 104, and for managing the transfer of print data.
[0080] The print queue management unit 32104 receives print data from external sources such as client terminals 101 and stores the received print data in an area prepared within the storage unit 224 of the cloud print server 102.
[0081] Figure 3(c) is a block diagram showing the software configuration of the application management server 103.
[0082] The application management server 103 has an application management service 331. The application management service 331 consists of an application management interface 33101, an application management unit 33102, and a user interface unit 33103.
[0083] The application management interface 33101 handles the exchange of data and commands between the client terminal 101 and the OS 313.
[0084] The application management unit 33102 manages applications registered with the application management service 331. The application management unit 33102 also issues an application ID when an application is registered with the application management service 331.
[0085] The UI unit 33103 is responsible for displaying the UI provided by the application management service 331 and for receiving user operations on the application management server 103.
[0086] Figure 3(d) is a block diagram showing the software configuration of the device control unit 341 of the cloud print-compatible printer 104. The device control unit 341 consists of a print data receiving unit 34101, a device management unit 34102, a print output unit 34103, a UI operation unit 34104, and a cloud print service I / F 34105.
[0087] The print data receiving unit 34101 receives print data transmitted from an external source via the network 107 and stores it in the storage unit 244 of the cloud print-compatible printer 104.
[0088] The device management unit 34102 manages options, capacity information, paper levels, ink / toner levels, and other information connected to the cloud print-compatible printer 104.
[0089] The print output unit 34103 controls the printing process to a recording medium such as paper.
[0090] The UI control unit 34104 displays the UI on the control unit 247 of the cloud print-compatible printer 104 and acquires instructions and information entered via the UI.
[0091] The Cloud Print Service I / F 34105 handles the exchange of data and commands between it and the Cloud Print Service 321.
[0092] Figure 3(e) is a block diagram showing the software configuration of the online support server 105. The online support server 105 has an online support service 351 which consists of an online support I / F 35101, a management unit 35102, and a UI unit 35103.
[0093] The online support interface 35101 handles the exchange of data and commands between the client terminal 101 and the OS 313. The online support interface 35101 receives file search requests from the client terminal 101 to extend the functionality of the client terminal 101. The online support interface 35101 also sends a response to the search request to the client terminal 101.
[0094] The management unit 35102 manages the extended setup information files registered with the online support service 351. The extended setup information files are files that describe information for extending the functionality of the client terminal 101. For example, they store the printer ID of the cloud print-compatible printer 104 of the client terminal 101 and the application identification information of the print setting extension application 312 for extending the cloud printer driver 311.
[0095] The UI unit 33103 is responsible for displaying the UI provided by the online support service 351 and for receiving user input via the online support server 105.
[0096] Figure 3(f) is a block diagram showing the software configuration of the Web server 106. The Web server 106 has a print setting UI service 361. The print setting UI service 361 consists of an external I / F 36101, a control unit 36102, a local printer print setting UI unit 36103, a cloud printer print setting UI unit 36104, and model data 36105.
[0097] External I / F 36101 handles communication with the outside world to access the Print Settings UI Service 361. Specifically, it handles access using a URL published by the Print Settings UI Service 361, and access via a Web API defined and published by the Print Settings UI Service 361.
[0098] When the control unit 36102 is accessed via the external I / F 36101, it analyzes the information being exchanged in that communication and performs processing according to that information.
[0099] The local printer print settings UI unit 36103 is a module that generates a print settings screen for a local printer.
[0100] The Cloud Printer Print Settings UI Unit 36104 is a module that generates a print settings screen for cloud printers.
[0101] Model data 36105 includes model information for cloud print-compatible printer 104, such as hyphenation information between settings and string resources for UI display.
[0102] Next, using Figures 4, 5, 6, 7, 8, 9, and 10, we will describe an example of the procedures for registered users of the print settings extension application and the sequences between each software and print service in this embodiment.
[0103] First, using Figure 4, an example of the process for registering the print settings extension application 312 to the application management service 331 and registering the extension setup information file to the online support service 351 will be described below. Here, it is assumed that the application registrant, such as a printer vendor, uploads the application from the information processing device to the application management server 103. This information processing device may be a client terminal 101 or another information processing device.
[0104] Here, a print settings extension application 312, which extends the print settings of the cloud printer driver 311 and local printer driver 314 that are pre-installed on the client terminal 101, is uploaded to the application management service 331.
[0105] First, the information processing device receives a print settings extension application registration operation from the user who is the print settings extension application registrant (s401).
[0106] Next, the information processing device sends a registration request for a print settings extension application 312 to the application management service 331 to extend the print settings of the cloud printer driver 311 (s402).
[0107] Next, the application management service 331 executes the registration process for the print settings extension application 312 that has been requested to be registered (s403). Specifically, the application management unit 33102 of the application management service 331 registers the print settings extension application 312 with the storage unit 234 and generates an application ID, which is the identification information for the registered print settings extension application 312.
[0108] The application management service 331 sends the generated application ID to the information processing device that sent the application registration request (s404).
[0109] The information processing device accepts the registration operation for the extended setup information file from the print settings extended application registrant (s405). The extended setup information file is created by the print settings extended application registrant. The application registrant creates an extended setup information file that contains the application ID received from the application management service 331. The extended setup information file contains a string that has identification information added to the generated application ID and the printer IDs of one or more printers that can be used to configure print settings using that application.
[0110] The information processing device sends a registration request for the extended setup information file to the online support service 351 (s406). The online support service 351 executes the registration process for the extended setup information file that received the registration request (s407).
[0111] With the above steps completed, the registration of the print settings extension application 312 to the application management service 331 and the registration of the extension setup information file are finished.
[0112] Figure 5(a) shows an example of an extended setup information file created by a user who has registered for the extended print settings application.
[0113] 1606 is the filename of the extended setup information file. 1607 is the application ID (AppID) of the print settings extended application 312. In this case, the AppID is 000ABC. This AppID is the AppID received from the application management service 331 in s404 of Figure 4.
[0114] 1608 is the identification information of a printer that can process print data configured using the AppID application. When the client terminal 101 sends a request to the online support service to obtain extended setup information, the identification information addition processing unit 31303 adds a predetermined string to the identification information of the cloud print-compatible printer 104. Taking the added predetermined string into account, 1608 contains "Print_Device001", which is the device ID with the predetermined string added.
[0115] Next, using Figure 6, we will explain the procedure for a user to register a cloud print-compatible printer 104 with the cloud print service 321.
[0116] First, the cloud print-compatible printer 104 receives a printer registration operation from the user via the UI operation unit 34104 to register the cloud print-compatible printer 104 with the cloud print service 321 (s601).
[0117] Next, the cloud print-compatible printer 104 sends a printer registration request to the cloud print service 321 along with the printer's device ID (s602). The device ID sent to the cloud print service 321 is, for example, the HWID (Hardware ID) assigned to each printer model. Note that the device ID may be other information that can identify the printer model, such as the COID (Compatible ID) or device name.
[0118] When the cloud print service 321 receives a registration request, it sends the URL for the cloud print service 321 to the cloud print-compatible printer 104 for printer registration (s603). The user accesses the URL from the cloud print-compatible printer 104 or the information processing device and enters the user ID and password to use the cloud print service 321 (s604).
[0119] The cloud print service 321 controls the account management unit 32101 and performs the authentication process (s605). If user authentication is successful, the cloud print service 321 sends a request to the cloud print-compatible printer 104 to obtain the information necessary for printer registration (s606). The information necessary for registration includes information such as the capabilities and equipment configuration of the cloud print-compatible printer 104.
[0120] The cloud print-compatible printer 104 sends the requested information to the cloud print service 321 in response to the request (s607).
[0121] The cloud print service 321 controls the print queue management unit 32104 of the cloud print service 321 and generates a print queue for sending print data to the cloud print-compatible printer 104 (s608). Once s608 is complete, the device information shown in Figure 5(b) is registered in the cloud print service 321.
[0122] 1601 is the device ID obtained from the cloud print-compatible printer 104. 1602 is identification information that identifies the tenant to which the user who can use the cloud print-compatible printer identified by the device information belongs. A tenant is a group consisting of one or more users. 1603 is the printer name of the printer that sent the registration request. The printer name is obtained from the cloud print-compatible printer 104 based on a request from s601 in Figure 6 or the cloud print service 321, and is used as the name of the print queue. Note that the printer name may be set by another method. 1604 is information indicating the hardware configuration of the cloud print-compatible printer 104. Hardware configuration refers to information such as whether a duplex printing unit is installed on the cloud print-compatible printer 104, whether a stapler is installed, or whether a punching finisher is installed.
[0123] The device configuration information is obtained by a capability information acquisition request sent from the cloud print service 321 to the cloud print-compatible printer 104. 1605 is the capability information of the cloud print-compatible printer 104. Capability information indicates the functions that the cloud print-compatible printer 104 can perform, such as whether color printing is possible, whether double-sided printing is possible, and whether toner saving mode can be used. Capability information is also obtained when the cloud print service 321 sends a capability information acquisition request to the cloud print-compatible printer 104.
[0124] Next, the cloud print-compatible printer 104 accepts the user's printer registration confirmation operation via the UI operation unit 34104 (s609). Next, the cloud print-compatible printer 104 sends a printer registration status request to the cloud print service 321 (s610). Next, the cloud print service 321 replies to the cloud print-compatible printer 104 with the printer registration status (s611). Then, the cloud print-compatible printer 104 displays the printer registration status on the UI operation unit 34104 (s612). Note that the processes described in s609 to s612 are methods for confirming whether the information of the cloud print-compatible printer 104 has been registered with the cloud print service 321, so they are not necessarily required.
[0125] In this embodiment, the registration status is checked from the cloud print-compatible printer 104. Alternatively, the cloud print service 321 may generate a print queue in s608 and then send a message to the cloud print-compatible printer 104 indicating that registration is complete.
[0126] Next, using Figure 7, we will explain an example of installing the print settings extension application 312 when a user performs a setup operation for a cloud printing printer on the client terminal 101.
[0127] The OS313 of client terminal 101 accepts printer setup operations for cloud printing from the user via the input / output control unit 31300 (s701).
[0128] Printer setup operations for printing include the following, for example: The user instructs client terminal 101 to search for a printer. OS 313 searches for both printers registered with the cloud print service 321 and printers connected to network 107. Figure 7 illustrates an example where information on registered printers is obtained from the cloud print service 321 and the setup of the printer registered with the cloud print service 321 is performed.
[0129] OS313 sends a request to the cloud print service 321 to retrieve a list of printers registered with the service (s702).
[0130] The cloud print service 321 instructs the client terminal 101 to display the authentication screen of the cloud print service 321 (s703). Specifically, the cloud print service 321 notifies the client terminal 101 of a URL to display the authentication screen. When the client terminal 101 accesses the notified URL, the authentication screen is displayed on the client terminal 101.
[0131] The client terminal 101 sends the authentication information and authentication request entered on the displayed authentication screen to the cloud print service 321 (s704).
[0132] The cloud print service 321 performs user authentication based on the received user ID and password, and sends the result to the client terminal 101 (s705). Assuming that authentication was successful, the cloud print service 321 sends the authentication result along with a list of printers registered with the cloud print service 321 that can be used by the authenticated user to the client terminal 101.
[0133] In steps s703 to s705, authentication was explained using the user ID and password entered by the user. However, if client terminal 101 accesses the cloud print service 321 using an access token, user authentication may be performed without displaying a login screen.
[0134] In parallel with the processing of S702-705, client terminal 101 sends a discovery packet to network 107 and receives a response from cloud print-compatible printer 104.
[0135] The client terminal 101 displays a list of printer information, including printer information received from the cloud print service 321 via s705 and printer information of the cloud print-compatible printer 104 detected by sending a discovery packet to the network 107. The client terminal 101 accepts the user's selection of printer information corresponding to the printer to be used (s706). Here, it is assumed that the cloud print-compatible printer 104 registered with the cloud print service is selected based on the printer information received from the cloud print service 321 via s705.
[0136] The client terminal 101 sends a request to the cloud print service 321 to obtain printer information for the selected printer (s707). The client terminal 101 also sends a request to the cloud print service 321 to obtain capability information and device ID for the cloud print-compatible printer 104.
[0137] In response to a request to obtain device information, the cloud print service 321 sends printer information to the client terminal 101 (s708). In s708, the cloud print service 321 sends the device ID, capability information, and equipment configuration information of the selected printer to the client terminal 101.
[0138] The client terminal 101 executes the installation process of the cloud printer driver 311 based on the fact that the selected printer is a printer registered with the cloud print service 321 (s709). Note that the installation of the cloud printer driver 311 may be started based on the printer selection operation or based on the acquisition of printer information in s708.
[0139] The client terminal 101 creates a print queue associated with the installed cloud printer driver 311 (s710). By creating the print queue, the printer's device ID, printer name, and the cloud printer driver 311 are registered on the client terminal 101. The printer name registered here will later be displayed on the initial print settings screen for selecting the print queue. Note that the printer name can be changed to any string by the user operating the client terminal 101.
[0140] The client terminal 101 performs an additional identification information processing on the device ID received from the cloud print service 321 (s711). This additional identification information processing is performed by the additional identification information processing unit 31303 of the OS 313. The additional identification information can be any string different from the normal device ID. In this embodiment, in order to distinguish it from applications on other devices, the OS 313 adds additional identification information ("print_") to the device ID to indicate that it is an application that corresponds to a printer. Note that "print_" is just an example, and other strings, numbers, or symbols may also be used. As a result of the above processing, if the device ID of the cloud print-compatible printer 104 was device001, the device ID after the additional identification information processing will be print_device001.
[0141] The client terminal 101 requests the online support service 351 to search for the extended setup information file via the extended setup information file search unit 31302 (s712). The client terminal 101 sends the device ID with the added identification information (s711) to the online support service 351 along with the request to search for the extended setup information file. The management unit 35102 of the online support service 351 searches for the extended setup file that contains the received device ID with the added identification information.
[0142] The online support service 351 sends the extended setup information file found through the search to the client terminal 101 (s713). The extended setup information file sent here is the file described in Figure 5(a).
[0143] The client terminal 101 detects the application ID from the acquired extended setup information file (s714). By executing s714, the application ID of the print settings extension application 312 that can be used when using the cloud print-compatible printer 104 registered with the cloud print service 321 is detected.
[0144] The client terminal 101 uses the detected application ID to send an application retrieval request to the application management service 331 (s715). For example, if it is an extended setup information file like the one in Figure 5(a), it sends an application retrieval request for "000ABC".
[0145] The application management service 331 sends a print settings extension application 312 matching the requested application ID to the client terminal 101 (s716).
[0146] The client terminal 101 installs the acquired print settings extension application 312, associating it with the client-side print queue (s717). In s717, the application ID of the print settings extension application is linked to the print queue generated in s710. This allows the print settings extension application 312 to be launched when setting up print settings for printing using the print queue generated in s710.
[0147] In the above explanation, it was stated that, according to the operation received by s701, both printers registered with the cloud print service 321 and printers connected to network 107 are searched for. However, the search range may be limited to printers registered with the cloud print service 321 and the sequence shown in Figure 7 may be executed.
[0148] Next, using Figure 11, we will explain the procedure for a user to generate a print queue for a local printer driver 314 that corresponds to a cloud print-compatible printer 104.
[0149] First, the client terminal 101 receives a printer search command from the user (s1101). The command received by the client terminal 101 in s1101 is the same as the command received by the client terminal in s701 in Figure 7.
[0150] Client terminal 101 sends a printer discovery packet onto network 107 (s1102).
[0151] The cloud print-compatible printer 104 returns printer information such as the printer's device ID and printer name in response to the discovery packet received from the client terminal 101 (s1103).
[0152] The processes s1102 and s1103 are carried out in parallel with the processes described in s702 to s705 in Figure 7.
[0153] The client terminal 101 displays a list of printer information for the printers that have responded and waits for the user to select a printer (s1104). The process in s1104 is the same as the process in s706 in Figure 7. In Figure 11, we explain the case where the user has selected a cloud print-compatible printer 104 that was discovered through discovery on the network 107.
[0154] The client terminal 101 sends a request to the cloud print-compatible printer 104 to obtain printer information (s1105). The request to obtain printer information sent in s1105 is a request to obtain the capability information and equipment configuration information of the cloud print-compatible printer 104.
[0155] The cloud print-compatible printer 104 sends printer information to the client terminal 101 in response to a request to obtain printer information (s1106).
[0156] Client terminal 101 installs the local printer driver 314 (s1107). Client terminal 101 installs the local printer driver 314 if the selected printer is a printer connected to network 107 and communicates with client terminal 101 without going through the cloud print service 321.
[0157] The client terminal 101 generates a print queue for the selected printer (s1108). In s1108, the OS 313 generates the print queue by associating the device ID, printer name, and local printer driver 314. The printer name associated with the print queue is used as printer information on the initial print settings screen, which will be described later. By selecting the printer name corresponding to the print queue generated in s1108 on the initial print settings screen, the user can send the print data generated by the local printer driver to the cloud print-compatible printer 104. The printer name is initially set to the name obtained from the cloud print-compatible printer 104. The user can change the printer name to any string by operating the client terminal 101.
[0158] The client terminal 101 adds identification information to the device ID obtained in s1103 (s1109).
[0159] The client terminal 101 requests the search for the online support service 351 extended setup information file via the extended setup information file search unit 31302 (s1110).
[0160] Online support service 351 sends the extended setup information file found through the search to client terminal 101 (s1111).
[0161] Client terminal 101 detects the application ID from the acquired extended setup information file (s1112).
[0162] The client terminal 101 uses the detected application ID to send an application retrieval request to the application management service 331 (s1113).
[0163] The application management service 331 sends a print settings extension application 312 matching the requested application ID to the client terminal 101 (s1114).
[0164] The client terminal 101 installs the acquired print settings extension application 312, associating it with the client-side print queue (s1115).
[0165] The above process completes the creation of a print queue that sends print data to the cloud print-compatible printer 104 without going through the cloud print service 321. Note that the processes described in s1109 to s1115 in Figure 11 are equivalent to the corresponding blocks in s711 to s717 in Figure 7.
[0166] Next, using Figure 8, an example of the sequence of operations for launching the print settings extension application 312 and setting print settings in this embodiment will be described below.
[0167] Figure 8 illustrates the process when a user generates document data using the document generation application 315 and then instructs the document generation application 315 to change the print settings.
[0168] The document generation application 315 accepts the user's operation to display the initial print screen via the UI unit 31501 (s801).
[0169] The document generation application 315 requests the OS 313 to display the initial print settings screen (s802). The OS 313 displays the print settings screen for selecting the print queue (Figure 9(c)) as the initial print settings screen (s803).
[0170] Figure 9(c) shows the initial print settings screen displayed by OS313. Depending on the type of document generation application 315 used, it may be possible to display some print settings information, such as object 943.
[0171] Area 941 is the area for selecting printer information for the printer to be used for printing. Printer information refers to the printer name associated with each print queue. The printer information does not have to be the printer name; any information that can identify the print queue used for printing is acceptable. When the user selects area 941, a list of printer information associated with the print queues stored on the client terminal 101 is displayed. The displayed list of printer information includes both the printer information of printers registered with the cloud print service 321 and the printer information of printers to which the client terminal 101 sends print data without going through the cloud print service 321. Assume that the client terminal 101 has a print queue registered that causes print data generated by the local printer driver to be printed to the cloud print-compatible printer 104. Furthermore, assume that the client terminal 101 also has a print queue registered that causes print data generated by the cloud printer driver to be printed. In this case, when area 941 is selected, the list of printer information displayed includes both the printer information associated with the print queue using the local printer driver and the printer information associated with the print queue using the cloud printer driver. The user selects the printer information corresponding to the print queue they want to use for printing from the displayed list of printer information.
[0172] Object 942 is an object for launching the print settings extension application 312. Object 940 is an object for instructing printing using the printer selected in area 941.
[0173] Next, the OS313 accepts the user's printer information selection operation via the input / output control unit 31300 (s804). s804 indicates that the printer information selection is accepted in area 941 of the initial print settings screen shown in Figure 9(c).
[0174] When printer information is selected, OS313 sets the application identification information of the print settings extension application 312 associated with the print queue corresponding to the selected printer information as information of the print settings extension application 312 associated with object 942 (s805). In this way, when object 942 is selected, the print settings extension application 312 associated with the print queue corresponding to the set printer information can be launched.
[0175] Next, OS313 accepts the user's operation to launch the print settings extension application via the input / output control unit 31300 (s806). In s806, the user selects object 942, which launches the print settings extension application 312.
[0176] OS313 sends a startup request to the print settings extension application 312 associated with object 942, along with parameters such as the printer name linked to the selected printer information and the setting values set on the initial print settings screen (s807). In this embodiment, the print settings extension application 312 is started when a print queue for sending print data generated by the local printer driver to the cloud print-compatible printer 104 is selected. The same print settings extension application 312 is also started when printer information for a print queue that sends print data generated by the cloud printer driver to the cloud print-compatible printer 104 via the cloud print service 321 is selected.
[0177] The print settings extension application 312 generates an extended print settings screen according to the printer's functions as part of its startup process (s808). In s808, when the print settings extension application 312 receives a startup request from the OS 313, it determines whether the printer driver used by the selected printer information and the corresponding print queue is a cloud printer driver or a local printer driver. Based on the result of this determination, the print settings extension application 312 controls the display of the print settings screen. Details of the process in s808 will be described later using Figure 10.
[0178] The print settings extension application 312 instructs the OS 313 to display the generated print settings screen (s809). Based on the instructions from the print settings extension application 312, the OS 313 displays the print settings screen shown in Figure 9(a) or Figure 9(b).
[0179] Next, the process of generating the print settings UI screen of the print settings extension application 312 in this embodiment will be explained using Figure 10. Figure 10 shows the details of the process executed in s808 of Figure 8. Each process described in Figure 10 is realized when the CPU 212 executes the program of the print settings extension application 312.
[0180] The print settings extension application 312 starts processing when the OS 313 requests it to start via user operation (s1000).
[0181] The print settings extension application 312 obtains print settings information and parameters such as the printer name, which are passed to it simultaneously with the startup request from the OS 313 (s1001). When the user selects object 942 on the print settings screen shown in Figure 9(a), the OS 313 sends a startup command to the print settings extension application 312. At this time, the print settings extension application 312 obtains the printer name and number of copies information set in Figure 9(c). The obtained information is used to select the print settings screen to display and when the print settings extension application 312 displays the print settings screen.
[0182] The print settings extension application 312 determines whether the type of printer driver associated with the selected printer information and the corresponding print queue is a cloud printer driver (s1002). The parameter information passed when the OS313 requests startup includes information about the type of printer driver associated with the print queue corresponding to the selected printer information. For example, the parameter information includes a property attribute called "device category" of the associated driver. The print settings extension application 312 determines that it is a local printer driver if the above attribute is PrintFax.Printer. On the other hand, the print settings extension application 312 determines that it is a cloud printer driver if the above attribute is PrintFAX.Printer.Cloud. Note that the method of determination in s1002 is not limited to the above method. For example, the determination may be made using the printer driver name of the printer driver that can be obtained from the OS313. If the information necessary for the determination in s1002 cannot be obtained from the OS313 in s1001, the print settings extension application 312 may obtain additional configuration and information of the information processing device on which it is running and perform the determination. For example, the print settings extension application 312 could determine the name of the connected printer driver from the name of the selected print queue.
[0183] If the print settings extension application 312 determines that the printer driver used to generate the print data is a cloud printer driver, it obtains the print settings screen for the cloud print service 321 (s1003). For example, the print settings extension application 312 accesses the cloud printer print settings UI unit 36104 through the external I / F 36101 of the print settings UI service 361 on the web server 106. In this embodiment, access using a URL is used as an example. When using a cloud printer driver, the user accesses the URL "https: / / printsettingUI / cloud / model=AAA". This URL includes the parameter "cloud" which indicates that the selected printer will send print data via the cloud print service 321. Furthermore, the above URL includes the model name "AAA" of the connected printer as information necessary to generate the print settings UI. The cloud printer print settings UI unit 36104 of the print settings UI service 361 determines the configuration of the print settings UI based on this parameter and prepares the print settings UI to be displayed in the print settings extension application 312. Specifically, the cloud printer print settings UI unit 36104 reflects the settings values set on the initial print settings screen received from the print settings extension application 312 into the print settings UI. In addition, the cloud printer print settings UI unit 36104 determines the setting items and setting values to be displayed according to the model and configuration of the cloud print-compatible printer 104 and places them in the print settings UI.
[0184] Then, the print settings UI service 361 sends the print settings UI for the cloud print service to the print settings extension application 312.
[0185] On the other hand, if the print settings extension application 312 determines that the printer driver selected in s1002 is not a cloud printer driver, it obtains a print settings screen for local printing (s1003). The print settings extension application 312 accesses the local printer print settings UI unit 36103 through the external I / F 36101 of the print settings UI service 361 on the Web server 106. In this embodiment, access using a URL is used as an example. The print settings extension application accesses the URL “https: / / printsettingUI / local / model=AAA”. This URL contains the parameter “local” for accessing the local printer print settings UI unit 36103. Furthermore, the above URL contains the model name of the connected printer “AAA” as information necessary to generate the print settings UI. The local printer print settings UI unit 36103 of the print settings UI service 36101 refers to the model data 36105 and determines the configuration of the print settings UI based on the received parameters. The local printer print settings UI unit 36103 then prepares the print settings UI to be displayed in the print settings extension application 312 using the determined print settings UI. Specifically, the local printer print settings UI unit 36103 reflects the setting values set on the initial print settings screen received from the print settings extension application 312 into the print settings UI. The local printer print settings UI unit 36103 also controls itself to determine the setting items and setting values to be displayed according to the model and configuration of the cloud print-compatible printer 104, and places them in the print settings UI. The print settings UI service 361 sends the prepared print settings UI for the local printer to the print settings extension application 312.
[0186] The print settings extension application 312 then prepares the UI for each case and displays the print settings UI in the extension application UI section 31202 of the print settings extension application 312 (s1005). Specifically, a UI control (WebView control) that enables the display of a website is placed in the extension application UI section 31202. The placed WebView control is used to display the print settings screen received from the print settings UI service. The print settings extension application 312 then accepts print setting operations from the user (S1006).
[0187] Examples of print settings screens for cloud printing services and local printers are explained using Figures 9(a) and 9(b).
[0188] Figure 9(a) shows an example of the print settings screen 901 for local printing. The print settings screen for local printing has items for setting paper size, number of copies, paper feed direction during printing, and print side. Of these, the settings that have already been set on the initial print settings screen will be reflected. For other items, the default values will be set as desired. Selecting "OK" will end the display of the print settings screen 901 for local printing and return to the initial print settings screen.
[0189] Figure 9(b) shows the print settings screen 911 for the cloud print service. In addition to the items that can be set on the print settings screen 901 for local printing, the print settings screen 911 for the cloud print service also allows for stapling and punching settings. In the print settings screen 911 for the cloud print service, the settings that can be set on the initial print settings screen are displayed with the settings set on the initial print settings screen. On the other hand, for items that cannot be set on the initial print settings screen, an arbitrary setting value is set as the default. In Figure 9(a), the stapling and punching items shown in Figure 9(b) are not displayed. In Figure 9(a), the print setting items and settings that are displayed on the cloud print print settings screen, such as punching and stapling, and their settings may be displayed and grayed out to prevent user operation from changing the settings.
[0190] Cloud printing is expected to be used more often for business purposes because it allows for print management. On the other hand, local printing is expected to be used more often for consumer purposes, such as at home. Therefore, the print settings screen for cloud printing, which is used more often for business purposes, displays advanced settings, such as settings for when finishers such as staplers and punches are installed. Conversely, the print settings screen for local printing displays a simpler screen that only allows for the setting of basic functions. In this embodiment, for the reasons mentioned above, the print settings screen for the cloud printing service is described as displaying a print settings screen with more settings items than the print settings screen for local printing. However, when printing with the cloud printing-compatible printer 104, it is sufficient if the configurable settings items or settings values change depending on whether or not print data is input via the cloud printing service. For example, the print settings screen for the cloud printing service may hide the PIN code printing setting item, while the print settings screen for local printing may display the PIN code printing setting item. PIN code printing is a function that sets a password for print data, holds the print data until the user sets the password from the printer's control panel, and starts printing once the PIN code is entered. In cloud printing services, print data is managed on a per-user basis. Therefore, it is conceivable that cloud printing services would provide a function to hold print data until the user logs into the printer and issues a print instruction, then sends the print data to the printer and executes the print job according to the user's instruction. In this case, if a PIN code is set, the user would have to both log into the printer and enter the PIN code. Therefore, the PIN code printing setting item will be hidden in the print settings screen for cloud printing services. On the other hand, in the case of local printing, the print data may not be held and printing may start immediately, so the PIN code printing setting item will be displayed.By doing this, it is possible to control the use of the PIN code printing function so that it is not used when using the cloud printing service, while allowing the PIN code printing function to be used as appropriate when using local printing.
[0191] Then, when the user completes the print settings operation, the print settings extension application 312 retrieves the print settings information processed within the UI control from either the local printer print settings UI unit 36103 or the cloud printer print settings UI unit 36104. The print settings extension application 312 then returns the settings information obtained from the print settings UI service 361 to the OS 313 (s1007). The print settings extension application 312 then terminates processing (s1008).
[0192] As shown in Figure 10, in this embodiment, the print settings extension application 312 switches between displaying the print settings screen for local printing and the print settings screen for cloud printing services by changing the URL when accessing the print settings UI service 361. The method of switching the print settings screen is not limited to the method described above. For example, based on the selection of object 942 in Figure 9(c), information on the printer driver associated with the print queue corresponding to the printer information selected in area 941 is sent to the print settings UI service 361. The control unit 36102 of the print settings UI service 361 determines whether the printer driver used to generate the print data is a local printer driver or a cloud printer driver based on the received printer driver information. The control unit 36102 accesses the local printer print settings UI unit 36103 or the cloud printer print settings UI unit 36104 according to the result of the determination and generates a print settings screen. Then, it sends the generated print settings screen to the print settings extension application 312. In this way, the print settings screen for local printing and the print settings screen for cloud printing can be displayed without changing the URL accessed by the print settings extension application 312.
[0193] Finally, Figure 12 is used to explain the processing of the client terminal 101, the cloud print service 321, and the cloud print-compatible printer 104 during printing.
[0194] Figure 12(a) shows the process executed by the client terminal 101. The process described in Figure 12(a) is realized by the CPU 212 implementing the software blocks written by the client terminal 101.
[0195] OS313 determines whether the print button has been selected (s1201). Based on the selection of object 940 on the screen shown in Figure 9(c), OS313 determines that the print button has been selected. If the print button has not been selected, OS313 continues the process described in s1201. If the print button has been selected, OS313 executes the process described in s1202.
[0196] OS313 obtains information about the printer driver associated with the print queue for sending print data to the printer selected in area 941 of Figure 9(c) (s1202). The printer driver information obtained here includes the type and name information of the printer driver.
[0197] Based on the printer driver information obtained in s1202, OS313 determines whether the printer driver is a cloud printer driver (s1203). If it is determined to be a cloud printer driver, OS313 executes the process described in s1204. If it is determined not to be a cloud printer driver, OS313 proceeds to s1206.
[0198] OS313 operates the cloud printer driver 311 to generate print data (s1204). The print data generated here is, for example, in XPS format. Then OS313 sends the print data generated by the cloud printer driver 311 to the cloud print service 321.
[0199] If the printer driver being used is not a cloud printer driver, OS313 generates print data using the local printer driver (s1206). The print data generated here is similar to the print data generated in s1204, for example, in XPS format.
[0200] While s1204 and s1206 explained that XPS format data is generated as print data, the data format is not limited to the above format. For example, a local printer driver or cloud printer driver may generate PDF or raster image data and generate print data containing that image data. The generated print data is sent to the printer or cloud print service.
[0201] OS313 sends the generated print data to the cloud print-compatible printer 104 (s1207). The print data is sent to the cloud print-compatible printer 104 without going through the cloud print service 321.
[0202] Figure 12(b) is a flowchart showing the processes performed by the cloud print service 321. The processes shown in Figure 12(b) are realized when the CPU 222 of the cloud print server 102 executes the functions shown in the software block in Figure 3(b).
[0203] The print queue management unit 32104 determines whether or not it has received print data from the client terminal 101 (s1301). If print data has not been received, the print management unit 32103 continues to wait for print data. If print data is received, the print management unit 32103 proceeds to s1302.
[0204] The print queue management unit 32104 registers the received print data in the print queue of the printer to which the print data will be sent (s1302). Based on the print queue information specified in the received print data, the print queue management unit 32104 identifies the print queue and assigns the print data to the identified print queue.
[0205] The print management unit 32103 determines whether or not it has received a request to acquire print data from the cloud print-compatible printer 104 (s1303). If it has received a request to acquire print data, it sends the print data registered in the print queue of the cloud print-compatible printer 104 to the cloud print-compatible printer 104 (s1304). If it has not received a request to acquire print data, the print management unit 32103 continues the process described in s1303.
[0206] The print management unit 32103 determines whether or not it has received a print completion notification from the cloud print-compatible printer 104 (s1305). If it has received a print completion notification, the print management unit 32103 deletes the print data registered in the print queue and completes the process described in this flow (s1306). If it has not received a print completion notification, the print management unit 32103 continues the process described in s1305.
[0207] The above describes the processes performed by Cloud Print Service 321.
[0208] The process performed by the cloud print-compatible printer 104 will be explained using Figure 12(c). The process shown in Figure 12(c) is achieved when the CPU 242 of the cloud print-compatible printer 104 executes the functions of the software block described in Figure 4(d).
[0209] The print data receiving unit 34101 determines whether or not print data has been received (s1401). If print data has been received, the print output unit 34103 executes the printing process based on the received print data (s1404).
[0210] If print data has not been received, the UI operation unit 34104 determines whether or not a user operation has been performed to obtain print data from the cloud print service (s1402). User operations to obtain print data from the cloud print service 321 include, for example, logging into the cloud print service. Other user operations include displaying a list of print data after logging into the service, selecting the print data to be output from the displayed print data, and instructing the user to print.
[0211] The cloud print service interface 34105 accesses the cloud print service 321, sends a request to retrieve print data, and receives the print data (s1403). Subsequently, the print output unit 34103 executes the process described in s1404.
[0212] After printing is complete, the print data receiving unit 34101 determines whether the print data used for the printing process is print data received from the cloud print service (s1405). If the print data is received from the cloud print service 321, the cloud print service I / F 34105 notifies the cloud print service 321 of the completion of printing (s1406). If the print data used for the printing process is not print data received via the cloud print service 321, i.e., if the print data is received from the client terminal 101, the device control unit 341 terminates the process described in Figure 12(c).
[0213] The above is a flowchart illustrating the process by which the cloud print-compatible printer 104 executes the printing process based on print data generated by the cloud printer driver or local printer driver.
[0214] As described above, the print setting extension application 312 can determine the connected printer driver and display an appropriate print setting UI according to the print data input path. Furthermore, although this embodiment describes a case where a single print setting extension application 312 is associated with a single image forming apparatus having multiple print paths, each print path may be associated with its own print setting extension application 312. By using the means of this embodiment, it is possible to standardize the processing of the print setting extension application 312 and obtain similar effects.
[0215] In this embodiment, the print settings UI displayed by the print settings extension application 312 is switched according to the type of printer driver it is associated with, but it may be switched based on other criteria. For example, in a system that prints without using a printer driver, a component that has a mechanism for submitting jobs to the cloud print service 321 can also switch the print settings it calls up according to the type of printer connected.
[0216] <Embodiment 2> In Embodiment 1, the print settings extension application refers to the type of printer driver associated with the print settings screen and controls the items to be displayed, thereby changing the items that can be set when using a local printer driver versus a cloud printer driver.
[0217] Embodiment 2 controls the printing settings so that they change depending on whether a local printer driver is being used or a cloud print-compatible printer is being used, through control on the cloud print-compatible printer 104 side. Specifically, the displayed printing setting items are changed by changing the information that the cloud print-compatible printer 104 registers in s607 in Figure 6 and the printer information that it notifies the client terminal 101 in s1106 in Figure 11.
[0218] In Embodiment 2, when the print settings extension application is launched from the cloud printer driver, a print settings screen is displayed as shown in Figure 13(a), where punch and stapling settings are possible, but PIN printing settings are not. On the other hand, when the print settings extension application is launched from the local printer driver, a print settings screen is displayed as shown in Figure 13(b), where punch and stapling settings are not possible, but PIN printing settings are possible.
[0219] The system configuration, hardware configuration, and software configuration in Embodiment 2 are generally the same as those in Figures 1, 2, and 3, but the Web server 106 is not used in Embodiment 2.
[0220] The method for registering the print settings extension application and the extension setup file is the same as in Embodiment 1, using the method shown in Figure 4.
[0221] The process of registering the cloud print-compatible printer 104 with the cloud print service 321 follows the same sequence as shown in Figure 6, and therefore will be explained using Figure 6.
[0222] In step S607 of Figure 6, the cloud print-compatible printer 104 registers its printer information with the cloud print service 321. The cloud print-compatible printer 104 has printer information for the cloud print service 321 and printer information for local printing.
[0223] The printer information for the cloud print service includes information about punching and stapling capabilities, but does not include information about PIN printing capabilities. On the other hand, the printer information for local printing does not include information about punching and stapling capabilities, but does include information about PIN printing capabilities. In s607, the cloud print-compatible printer 104 sends the printer information for the cloud print service 321 to the cloud print service 321.
[0224] Subsequently, the process described in Figure 8 is executed to generate a print queue on the client terminal 101 for sending print data to the cloud print-compatible printer 104 via the cloud print service. The printer information obtained from the cloud print service 321 in s708 of Figure 8 is the printer information that the cloud print-compatible printer registered with the cloud print service 321 in the process s607 of Figure 6 in Embodiment 2. Therefore, the printer information associated with the print queue generated on the client terminal 101 includes information on punching and stapling capabilities, but does not include information on PIN printing capabilities.
[0225] On the other hand, in the second embodiment, when using a local printer driver, at s1106 of the sequence shown in Figure 11, printer information for local printing is sent to the client terminal 101. The client terminal 101 sets the received printer information for local printing into the print queue associated with the local printer driver.
[0226] When the print settings extension application 312 displays the print settings screen, it uses the printer information associated with the print queue to display the print settings screen. Because the printer information associated with the print queue for cloud printing and the print queue for local printing are different, the settings that can be configured on the print settings screen displayed by the print settings extension application 312 change.
[0227] In Embodiment 2, Figure 14 shows a flowchart of the process that the cloud print-compatible printer 104 executes when it receives a request to acquire printer information. The process described in Figure 14 is stored in the storage unit 244 of the cloud print-compatible printer 104, read into memory 243, and executed by the CPU 242.
[0228] CPU 242 determines whether the request for printer information originates from the cloud print service 321 (s2001). The determination in s2001 is made, for example, based on the IP address included in the request. In addition to the IP address, a flag indicating whether the request originates from the cloud print service 321 may be added to the request, and the determination may be made based on this flag.
[0229] In the case of a request from the cloud print service 321, the CPU 242 sends printer information for the cloud print service (s2002). The printer information registered with the cloud print service is notified to the client terminal 101 in s708 in Figure 7 and stored in the client terminal 101, linked to the print queue.
[0230] On the other hand, if the request is not from the cloud print service 321, the CPU 242 sends printer information for the local printer. The client terminal 101 stores the print queue for local printing and associates the acquired printer information with it.
[0231] In this way, cloud print-compatible printers 1-4 switch printer information depending on the source of the printer information acquisition request. This makes it possible to change the printer information associated with the print queue when creating a print queue on client terminal 101.
[0232] Figure 15 shows the process when setting print settings using the print settings extension application 312 installed on the client terminal 101. This is achieved when the program of the print settings extension application 312, stored in the memory unit 214 of the client terminal 101, is executed by the CPU 212.
[0233] CPU214 retrieves printer information associated with the selected print queue (s2101). The printer information retrieved here differs depending on whether the print queue is for a cloud print service or for local printing.
[0234] CPU214 generates and displays a print settings screen based on the acquired printer information (s2102). Because the printer information acquired in s2101 is different, different print settings screens are displayed depending on the selected print queue, as shown in Figures 13(a) and 13(b).
[0235] CPU214 accepts the print setting operation (s2103). Then, CPU214 notifies the OS of the client terminal 101 of the set print setting information (s2104).
[0236] The process of generating print data from s2104 onward and sending it to the printer is the same as in Embodiment 1, so the explanation is omitted.
[0237] By doing so, it becomes possible to display print settings screens with different settings depending on whether or not a cloud print service is used, without using a web service.
[0238] <Embodiment 3> Embodiment 1 describes switching display items using a web service, while Embodiment 2 describes a system that switches display items by switching printer information provided by a cloud print-compatible printer.
[0239] Embodiment 3 describes a system that does not use a web service and switches the displayed items depending on whether the print queue is associated with a cloud printer driver, even if the printer information is the same.In Embodiment 3, if a print queue associated with a local printer driver is selected, Figure 13(a) is displayed, and if a print queue associated with a cloud printer driver is selected, Figure 13(b) is displayed.
[0240] In Embodiment 3, the print settings extension application 312 stores a table that manages the setting items to be displayed on the print settings screen for each driver type. Figure 16 shows an example of a table stored by the print settings extension application 312 in Embodiment 3. Column 3001 is the setting item that the print settings extension application 312 displays on the print settings screen. Column 3002 indicates whether or not each setting item is displayed on the print settings screen when a print queue associated with a local printer driver is selected. "○" indicates that the setting item is displayed, and "×" indicates that the item is not displayed. Column 3003 indicates whether or not each setting item is displayed on the print settings screen when a print queue associated with a cloud printer driver is selected.
[0241] Figures 1 to 7 are the same as in Embodiment 1. However, the Web server 106 is not required. Note that in Embodiment 3, the printer information registered with the cloud print service in s607 in Figure 6 and notified to the client terminal 101 in s708 in Figure 7 is the same as the printer information set in s1106 in Figure 11.
[0242] Figure 17 is a flowchart showing how the print settings extension application 312 displays the print settings screen. The same reference numerals are used for parts that are the same as in Figure 10 of Embodiment 1, and only the different parts are explained.
[0243] The process described in Figure 10 is achieved when the CPU 214 of the client terminal 101 executes the program of the extended print settings application 312.
[0244] If a print queue associated with a cloud printer driver is selected, the CPU 214 identifies the setting item corresponding to the cloud printer driver from the table shown in Figure 16 (s3101). Furthermore, the CPU 214 obtains the capability information of the identified setting item from the printer information. On the other hand, if a print queue associated with a local printer driver is selected, the CPU 214 identifies the setting item associated with the local printer driver from the table shown in Figure 16 (s3102). The CPU 214 obtains the capability information of the identified setting item from the printer information. Then, in s1005, the CPU 214 generates and displays a print settings screen based on the acquired printer information. The process thereafter is the same as in Embodiment 1.
[0245] In this way, it is possible to switch the settings displayed on the print settings screen depending on the printer driver being used, without using a web service. Furthermore, even if the printer information notified by a cloud print-compatible printer is fixed, the settings displayed on the print settings screen can be switched for each driver being used.
[0246] <Other Embodiments> In this embodiment, it was explained that the same print setting extension application 312 is installed on image forming apparatuses having the same identification information, regardless of whether or not a cloud print service is used. However, it is also possible that different print setting extension applications 312 are installed depending on whether or not a cloud print service is used. In that case, by changing the setting items that the print setting extension application 312 can set, it is possible to display print setting screens with different configurable items, as shown in Figures 9(a) and (b).
[0247] The present invention can also be realized by performing the following process: supplying software (programs) that realize the functions of the embodiments described above to a system or device via a network or various storage media, and having the computer (or CPU, MPU, etc.) of that system or device read and execute the program code. In this case, the computer program and the storage medium storing the computer program constitute the present invention.
Claims
[Claim 1] An information processing device having installed a first printer driver that generates print data to be transmitted to an image forming apparatus in accordance with a predetermined protocol, and a second printer driver that generates print data to be transmitted to a server system in accordance with the predetermined protocol, When first information for transmitting print data generated by the first printer driver to the image forming apparatus is selected, a display means displays a print settings screen different from the one displayed when second information for transmitting print data generated by the second printer driver to the image forming apparatus via the server system is selected. A first transmission means transmits print data generated by the first printer driver to the image forming apparatus based on the settings received via the print settings screen displayed by the display means, A second transmission means transmits print data generated by the second printer driver to the server system based on the settings received via the print settings screen displayed by the display means, An information processing device characterized by having the following features.