Information processing device, control method for information processing device, and application
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- CANON KK
- Filing Date
- 2023-02-21
- Publication Date
- 2026-08-03
AI Technical Summary
【0010】 本発明における情報処理装置は、アプリケーションでPDFファイルを開き、汎用プリンタドライバを用いて印刷する場合に、一度XPSファイルに変換してから印刷を行うか、当該変換を行わずに印刷を行うかを容易に切りかえることができる。
Smart Images

Figure 0007899111000001 
Figure 0007899111000002 
Figure 0007899111000003
Abstract
Description
Technical Field
[0001] The present invention relates to an information processing apparatus, a control method for an information processing apparatus, and an application.
Background Art
[0002] In recent years, a general-purpose printer driver (local printer driver) that communicates with a printer using an industry-standard protocol such as IPP (Internet Printing Protocol) has been considered. Also, a general-purpose printer driver (cloud printer driver) that communicates with a cloud print service has been considered.
[0003] The general-purpose printer driver can communicate with printers of multiple printer vendors, and a user can transmit print data to a printer or a cloud print service and execute printing without installing a vendor-specific printer driver.
[0004] Since the above general-purpose printer drivers (local printer driver and cloud printer driver) handle print jobs printed by printers of various vendors, there are limitations in the items and functions that can be set as print settings. On the other hand, as in Patent Document 1, a method of extending a print queue associated with the printer driver using identification information of the printer associated with the printer driver has been considered. Also, regarding the extension of setting items that cannot be set by a general-purpose printer driver using the printer capability information acquired from a cloud print service, it has been considered. Thereby, it is possible to realize a vendor-specific print setting screen and a print job editing function that cannot be set only by a general-purpose printer driver.
Prior Art Documents
Patent Documents
[0005]
Patent Document 1
Summary of the Invention
[0006] In printing using the general-purpose printer driver described above, the operating system of the information processing device generates an XML Paper Specification (hereinafter referred to as an XPS file) based on the drawing information output by the application. The print setting extension application can print by converting the XPS file generated by the OS into a PDF file or specified raster data and sending it to the printer.
[0007] When opening a PDF file and printing it using a generic printer driver, converting the PDF file to an XPS file and then generating a PDF file again may result in a degradation of rendering quality during the data conversion. On the other hand, converting a PDF file to an XPS file allows for operations that are difficult to perform with a PDF file alone, such as changing the layout or adding background images.
[0008] The purpose of this invention is to enable easy switching between converting a PDF file to an XPS file before printing and printing without such conversion when opening a PDF file in an application and printing using a general-purpose printer driver. [Means for solving the problem]
[0009] The information processing device in the present invention is Document generation A conversion means that converts a file of a first format output by an application into a file of a second format; a generation means that generates print data based on the converted file; and a transmission means that transmits the print data generated by the generation means. This is realized by the operating system (OS) of the aforementioned information processing device. , the above OS teeth, The aforementioned document generation Output from the app The first form described above Send the file without converting it. Settings In accordance with the user's instructions, Document generation Output from the app The first form described above file By the aforementioned conversion means conversion Output to the print settings extension application without performing any further steps. , The print settings extension application generates print capability information based on the print settings set according to the user's instructions without changing the contents of the first format file, outputs the first format file and the print capability information to the OS, and the transmission means transmits the first format file and the print capability information. It is characterized by the following: [Effects of the Invention]
[0010] The information processing device in the present invention allows for easy switching between converting a PDF file to an XPS file before printing or printing without such conversion when opening a PDF file in an application and printing using a general-purpose printer driver. [Brief explanation of the drawing]
[0011] [Figure 1] This figure shows an example of a printing system in this embodiment. [Figure 2] This figure shows an example of the hardware configuration of the information processing device and image forming apparatus in this embodiment. [Figure 3] This is a sequence diagram showing the process of installing the print settings extension application in this embodiment. [Figure 4] This figure shows an example of a printer management screen displayed on the client terminal 101 in this embodiment. [Figure 5] This figure shows an example of the capability information stored by the cloud print-compatible printer 104 in this embodiment. [Figure 6A] This figure shows an example of device configuration information included with OS313 in this embodiment. [Figure 6B] This figure shows an example of device configuration information after it has been expanded with information obtained from the cloud print service 321 in this embodiment. [Figure 7] This figure shows an example of an extended setup information file obtained from the online support service in this embodiment. [Figure 8] This embodiment shows a sequence diagram illustrating the process from setting print settings in the print settings extension application to sending print data. [Figure 9]It is a diagram showing an example of a print settings screen displayed when the print settings extension app in this embodiment is not installed. [Figure 10] It is a diagram showing an example of a print settings screen displayed when the print settings extension app is installed in this embodiment. [Figure 11] In this embodiment, it is a diagram showing an example of an initial print settings screen displayed by a document generation app. [Figure 12] In Example 1, it is a diagram showing an example of a print settings screen displayed by the print settings extension app. [Figure 13] In Example 1, it is a flowchart showing the processing executed on the client terminal 101. [Figure 14] In Example 1, it is a diagram showing an example of a print settings screen displayed by the print settings extension app when the PDF pass-through function cannot be used. [Figure 15] In Example 2, it is a diagram showing an example of a print settings screen displayed by the print settings extension app. [Figure 16] In Example 2, it is a flowchart showing the processing executed on the client terminal 101. [Figure 17] In this embodiment, it is a diagram showing an example of information on the PDL types that the cloud print-compatible printer 104 that writes to the PDC can process.
Mode for Carrying Out the Invention
[0012] (Example 1) Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings.
[0013] FIG. 1 shows a configuration diagram of a print system in cloud printing in this embodiment. The client terminal 101, cloud print server 102, application management server 103, cloud print-compatible printer 104, and online support server 105 are connected via the network 107.
[0014] Figure 1 shows one client terminal 101 and one cloud print-compatible printer 104, but there may be multiple client terminals 101 and cloud print-compatible printers 104.
[0015] Furthermore, the cloud print server 102, application management server 103, and online support server 105 may be server systems composed of multiple information processing devices. By making each server a server system composed of multiple information processing devices, load balancing can be distributed across multiple information processing devices.
[0016] Furthermore, the cloud print server 102, the application management server 103, and the online support server 105 may be virtually configured within a single information processing device.
[0017] Network 107 assumes that connections to cloud services are made via a WAN such as the internet, but it is also possible for everything to be done within a closed environment such as a company LAN.
[0018] 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.
[0019] 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.
[0020] 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.
[0021] 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.
[0022] The cloud print server 102 receives print commands and print data from an external source. The cloud print server 102 then sends the received print data to the cloud print-compatible printer 104 specified in the print data. In this embodiment, the print data includes both image data and print settings.
[0023] 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.
[0024] 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 an extended setup information file containing information for extending the functionality of the client terminal 101.
[0025] Next, the hardware configuration of the system in this embodiment will be described using Figure 2.
[0026] Figure 2(a) is a block diagram showing the hardware configuration of client terminal 101.
[0027] 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.
[0028] The memory unit 214 refers to a non-volatile storage device such as a hard disk or SSD, which is capable of storing and rewriting digital data.
[0029] 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.
[0030] The network communication unit 215 is a device that communicates with the external network 107 and performs input and output of digital data with external servers, client terminals, etc. via the network 107.
[0031] The display unit 216 is a device for displaying visual information to the user, such as a liquid crystal display. The operation unit 217 is a device for receiving input from the user, such as a keyboard or mouse. 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.
[0032] 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.
[0033] 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.
[0034] Although the cloud print server 102 is described as consisting of a single information processing device having the hardware configuration shown in Figure 2(b), the cloud print server 102 may also be a server system composed of multiple information processing devices.
[0035] 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.
[0036] 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.
[0037] 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.
[0038] 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.
[0039] The display unit 246 is a device that displays information to the user, such as a touch panel or LEDs, which are installed in the cloud print-compatible printer 104.
[0040] 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.
[0041] 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.
[0042] 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.
[0043] 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 scanning and faxing functions may also be used.
[0044] 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 105 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 is a memory device such as an HDD or SSD. The storage unit 254 stores an extended setup information file, which is a file containing information for extending the functions provided by the client terminal 101.
[0045] 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.
[0046] Next, using Figure 3, we will explain an example of the user procedure up to installing the print settings extension application 312 in this embodiment, as well as the sequence between each software and print service.
[0047] First, the cloud print-compatible printer 104 accepts a printer registration operation from the user to register the cloud print-compatible printer 104 with the cloud print service 321. Next, the cloud print-compatible printer 104 sends the printer's device identification information and a printer registration request to the cloud print service 321 (S3001). The device identification information sent to the cloud print service 321 is, for example, the HWID (Hardware ID) assigned to each printer model. Note that the device identification information can be any information that can identify the printer model.
[0048] 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. When a user accesses the URL from the cloud print-compatible printer 104 or an information processing device, a screen consisting of input forms for the user ID and password is displayed on the display of the terminal that accessed the URL. The user enters the user ID and password to use the cloud print service 321 and logs in to the cloud print service 321. If the user's login 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. The cloud print-compatible printer 104 sends the printer information to the cloud print service 321 in response to the request.
[0049] Next, the cloud print service 321, upon receiving the printer registration request, registers the information of the cloud print-compatible printer 104 and generates a print queue for the cloud print-compatible printer 104. At this time, the cloud print service 321 obtains the capability information of the cloud print-compatible printer 104 and links it to the generated print queue. Capability information refers to information that represents the functions installed in the printer, and includes information necessary for users to set as print settings when printing, such as information on duplex printing capability, color printing capability, stapling capability, and the image data formats that the printer can process.
[0050] In this embodiment, IPP is used as the communication protocol for transmitting capability information, allowing the cloud print service 321 to obtain item names, attribute values, and default values from the cloud print-compatible printer 104, as shown in the example in Figure 5. The item names correspond to the setting items in the print settings, and the attribute values correspond to the setting values, options, and value ranges for each setting item. Furthermore, the item names and attribute values stored in the cloud print-compatible printer 104 include information defined as an industry standard specification by IPP and information defined independently by the printer vendor. For example, among the item names listed in Figure 5, "Job Name Shortening" and "Stapling Without Staples," and their associated attribute values, are item names and attribute values defined independently by the printer vendor. Note that the printer vendor may define their own attribute values as attribute values corresponding to item names defined as an industry standard specification. Moreover, capability information is independent of whether each item and attribute value is defined in IPP or not.
[0051] Next, we will explain the installation of the print settings extension application 312, which is performed when a user performs a setup operation on the client terminal 101 to print using the cloud print-compatible printer 104.
[0052] The OS313 of client terminal 101 accepts a printer addition operation from the user, which is a setup operation for the cloud print-compatible printer 104 (S3002). The setup operation for the cloud print-compatible printer 104 is, for example, the following operation. Figure 4 shows the printer management screen registered on client terminal 101, as displayed by the OS313 of client terminal 101. When the user selects object 401, a printer addition instruction is entered into the OS313.
[0053] Upon receiving a request to add a printer, OS313 determines whether it possesses a token for the cloud print service 321. If OS313 does not possess a token, it displays a screen for user information (login name, password). OS313 sends the user information entered via this screen to the cloud print service 321 to request user authentication and an access token (S3003).
[0054] The cloud print service 321 performs authentication using the user information received from the client terminal 101 (S3004). After the authentication process is complete, the cloud print service 321 notifies the client terminal 101 of the result of the authentication process.
[0055] If user authentication is successful, the OS 313 of the client terminal 101 obtains an access token from the cloud print service 321 (S3005).
[0056] If user authentication fails in S3004, the cloud print service 321 notifies the OS 313 of the authentication error (S3006). Based on the received authentication error information, the OS 313 terminates the process (S3007). The OS 313, which was unable to obtain an access token, terminates the process described in Figure 3.
[0057] If OS313 already possesses an access token, or if it obtains a token in S3005, OS313 proceeds to S3008. OS313 searches for printers registered with the cloud print service 321 and printers connected to network 107.
[0058] OS313 sends a request to the cloud print service 321 to retrieve printer information registered with the cloud print service and searches for the printer (S3008). At this time, OS313 sends a request to the cloud print service 321 to retrieve printer information with an access token attached.
[0059] The cloud print service 321 sends the printer name and HWID of the printer that the user identified by the access token attached to the acquisition request is authorized to use to the client terminal 101 (S3009).
[0060] OS313 displays a list of printers in area 402 of Figure 4 based on printer information obtained from the cloud print service 321 and printer information detected by network discovery 107. Alternatively, area 402 may only display information about printers registered with the cloud print service 321.
[0061] When a user selects printer information from the list in area 402, OS313 queries the cloud print service 321 for the capabilities information of the printer corresponding to the selected printer information (S3010). The OS313 specification defines which setting items OS313 queries for capabilities information. OS313 uses Get-Printer-Attribute, defined in IPP, to send a capabilities information acquisition request to the cloud print service 321, with the item name defined in IPP as an argument.
[0062] The cloud print service 321 responds to the OS 313 with capability information for the cloud print-compatible printer 104 (S3011). The capability information responded by the cloud print-compatible printer 104 may not only be the capability information registered with the cloud print service 321 in S3001, but may also be capability information registered with the cloud print service 324 at other times. For example, it may be capability information at the time when the capability information of the cloud print-compatible printer 104 is changed, or at the time when the OS 313 detects the launch of the detailed print settings screen.
[0063] In S3011, the cloud print service 321 responds to the setting item specified by the client terminal 101 with the corresponding attribute value and default value. Here, all attribute values registered in the cloud print service 321 are responded to. Note that if the cloud print service 321 does not remember the response to the attribute queried by the OS 313, it will not respond to the OS 313.
[0064] Next, OS313 starts installing the cloud printer driver 311 based on the device identification information and printer name of the printer selected by the user.
[0065] Then, OS313 generates a print queue for the cloud printer driver 311, which contains basic device capability information included with OS313 (S3012). Device capability information refers to definition information necessary to generate the printer driver's print setting capability information, such as XML-based information like PrintDeviceCapabilities. Figure 6(a) shows an example of the initial device capability information included with OS313. For example, in the case of "PageMediaSize" 601, which represents the paper size, listed under the setting item "Feature," the "Option" option only has two paper sizes as initial values for device capability information: "A4" and "LETTER." This information is stored in association with the print queue and managed by OS313. Note that the initial device capability information is fixed regardless of the information of the connected printer.
[0066] Subsequently, OS313 updates the device capability information that constitutes the cloud printer driver 311 using capability information obtained from the cloud print service 321. Figure 6(b) shows an example of device capability information updated using capability information obtained from the cloud print service 321. For example, for "PageMediaSize" 602, which represents the paper size, "Option" other than "A4" and "LETTER" is added as paper sizes that the cloud print-compatible printer 104 can print. In this way, the client terminal 101 first associates the cloud printer driver 311 with the device capability information included with OS313 and registers it in the print queue. Then, it updates the device capability information associated with the print queue with capability information obtained from the cloud print service 321. At this time, OS313 expands the settings by updating the device capability information using only attribute values defined by industry standard specifications from the capability information obtained from the cloud print service 321. Furthermore, even if vendor-specific attribute values are obtained when acquiring capability information, these vendor-specific attribute values are not added to the device capability information. With this, the installation of the cloud printer driver 311 is completed. The types of image data that the cloud print-enabled printer 104 can print based on are defined as shown in Figure 17 and written to the device capability information. In Figure 17, "XPStoPDF" 1801 is capability information indicating that the cloud print-enabled printer 104 can receive and print PDF files. Similarly, if the cloud print-enabled printer 104 can receive and print PWG-Raster format files, capability information indicating this is written to the device capability information.
[0067] Next, OS313 begins the installation process for an application that is associated with the printer and extends the cloud print driver.
[0068] First, OS313 performs an identification information addition process on the device identification information. This process is necessary when obtaining the extended setup information file 700 from the online support server 105, and it is sufficient if the string is different from the normal device identification information. In this embodiment, in order to distinguish it from applications on other devices, OS313 adds identification information ("PrinterApp_") to the device identification information to indicate that it is an application that corresponds to a printer. Note that "PrinterApp_" is just an example, and other strings, numbers, or symbols may also be used. As a result, for example, if the device identification information of the cloud print-compatible printer 104 was device001, the device identification information after the identification information addition process will become PrinterApp_device001.
[0069] OS313 sends a search request to online support service 351 for an extended setup information file 700 containing the target device identification information with added identification information (S3013). At this time, "PrinterApp_device001" with added identification information, as described above, is notified to online support service 351.
[0070] Figure 7 shows an example of an extended setup information file 700, and the online support service 351 being searched has the extended setup information file shown in Figure 7 stored in it.
[0071] The extended setup information file 700 contains an application identifier used to identify the print settings extension application used to configure the print data sent to the cloud print-compatible printer 104. In the extended setup information file shown in Figure 7, the item "PackageFamilyName" 701 is the identification information for the print settings extension application, which in Figure 7 corresponds to PrinterApp_aaaaaaaaaaa8a!App. On the other hand, "PrinterHardwareID" is a string that adds identification information to the identification information of the cloud print-compatible printer 104, which in Figure 7 corresponds to PrinterApp_device001.
[0072] Furthermore, the online support service 351 also stores extended setup information containing the printer driver's identification information. In the extended setup information file, the printer driver's identifier is written in "PackageFamilyName". Also, the "PrinterHardwareId" field in the extended setup information file contains device identification information without any additional identification information. Therefore, in order for OS313 to obtain the necessary extended setup information file from the online support service 351, additional identification information is added to the device identification information.
[0073] If the search results indicate that online support service 351 possesses an extended setup information file 700 containing the target device identification information, it returns the extended setup information file 700 to OS313 (S3014). The contents of the returned extended setup information file are written to the OS313 registry.
[0074] Next, OS313 installs the extended setup information written in the extended setup information file obtained from online support service 351, linking it to the print queue generated by S3012 (S3015).
[0075] Next, OS313 extracts the application ID, which is specified as "PackageFamilyName," from the installed extended setup information (S3016).
[0076] If the search results show that the online support service 351 cannot find the extended setup information file 700 containing the target device identification information, the OS 313 aborts the application installation process (S3017). The OS 313 also executes process S3017 if it fails to receive the extended setup file within a specified time after the search request, or if it receives an error notification from the online support service 351.
[0077] The following sections will explain what happens after a successful search.
[0078] OS313 requests the application management service 331 to search for an application whose extracted application ID matches (S3018).
[0079] If the application management service 331 receives a search request and has a print settings extension application that matches the requested application ID, it returns the print settings extension application 312 that matches the application ID to the client terminal 101 (S3019).
[0080] OS313 installs the acquired print settings extension application 312, associating it with the client-side print queue (S3020). At this time, OS313 saves the application ID in the registry as print queue information. The print settings extension application 312 also configures OS313 to send event notifications when the print queue associated with the application is set on the print settings screen. After OS313 starts, the installed print settings extension application 312 starts and runs as a background task.
[0081] If the search results show that the application management service 331 does not have a print settings extension application that matches the requested application ID, the OS 313 aborts the application installation process (S3021). At this time, the generated print queue and the cloud printer driver 311 are installed together, but the print settings extension application 312 is not associated with the print queue and the process terminates.
[0082] Note that the search for the extended setup files described above may be performed without adding the specified string if the files for printer driver installation can be distinguished.
[0083] Next, using Figure 8, we will explain an example of the user procedure and the sequence between each software and print service in this embodiment.
[0084] The document generation application 315 displays a print settings screen (Figure 11) for selecting a print queue as the initial print settings screen. Note that the document generation application 315 refers to applications such as document data creation applications, presentation material creation applications, and photo and image data display applications.
[0085] In this embodiment, the document generation application 315 displays the initial print settings screen, but the OS 313 may display a similar screen. The initial print settings screen displays object 1101 for selecting a print queue, object 1102 for print settings, and print preview 1103. The OS 313 detects that the user has selected a printer via object 1101 and selects a printer queue (S801). At the time the initial print settings screen is displayed, it is assumed that the print queue of the default printer is selected.
[0086] Next, OS313 sends a request to the cloud print service 321 to obtain printer capability information (S802). OS313 specifies the printer name selected in object 1101 on the initial print settings screen and sends the capability information acquisition request to the cloud print service 321. The OS313 specification determines which setting items are queried for capability information, so the capability information obtained at this time is the same as that obtained in S3001 in Figure 3. The query is performed on the cloud print-compatible printer 104 using a standard protocol defined by IPP, such as Get-print-Attributes. When using Get-printer-Attributes, the capability information determined by OS313 is queried in list format.
[0087] The cloud print service 321 returns the capability information of the cloud print-compatible printer 104 to the OS 313 from the list of capability information sent via Get-printer-Attributes (S803). For example, suppose the media size attribute is specified with Get-printer-Attributes (IPP). If the cloud print service 321 has the media size attribute, it returns the value associated with that attribute (A4, B5, Letter, etc.).
[0088] If the attribute specified by Get-printer-Attributes does not exist in the queue of Cloud Print Service 321's cloud print-compatible printer 104, Cloud Print Service 321 will not return a response with the associated value.
[0089] OS313 updates the device capability information using capability information obtained from the cloud print service 321. OS313 adds the capability information obtained in S803 in Figure 8 to the device capability information generated in S3012 in Figure 3 (S804). If there is an update to the device capability information, performing S803 will update the device capability information managed by the client terminal 101.
[0090] Next, OS313 notifies the print settings extension application 312 of the API used to edit events and device capability information (S805).
[0091] When the print settings extension application 312 receives this event, it sends a request to the cloud print service 321 to retrieve capability information. The acquisition of capability information performed here is for writing setting items and attribute values defined by the printer vendor into the device capability information.
[0092] When the print settings extension application 312 receives an editing event for device capability information from the OS 313, it queries the cloud print service 321 for capability information of the cloud print-compatible printer 104 (S806). At this time, the print settings extension application 312 queries the cloud print service 321 for capability information consisting of setting items including printer vendor-specific setting items and attribute values such as "stapleless binding" and "saddle folding". The query is performed using Get-printer-Attributes, similar to S802 in Figure 8, and the capability information is obtained by specifying the item name of the setting item to be queried. Note that the capability information obtained in S806 may include not only setting items and attribute values defined by the printer vendor, but also setting items that have already been obtained by the OS 313's capability information acquisition.
[0093] When the cloud print-compatible printer 104 receives a query for proprietary capability information from the print setting extension application 312, it responds to the print setting extension application 312 via the cloud print service 321 (S807). The response method here is the same as that described earlier in Figure 3, S3011. In this embodiment, the capability information responded in S807 is the capability information of the cloud print-compatible printer 104 stored in the cloud print service 321. Alternatively, the cloud print service 321 may reacquire capability information from the cloud print-compatible printer 104 at the time of receiving the request in S806 and respond with the capability information.
[0094] The print settings extension application 312, upon obtaining capability information from the cloud print-compatible printer 104, edits the device capability information via a configuration information object, which is a set of data necessary for editing device capability information. The application edits the device capability information by converting capability information such as "stapleless binding," "saddle folding," and "PDL types that can be sent to the printer," obtained in S807 of Figure 8, into device capability information and adding it to the configuration information object (S808). As a result of the editing, the device capability information stores not only capability information related to standard setting items obtained by querying OS313, but also printer vendor-specific setting items and attribute values.
[0095] Next, the print settings extension application 312 passes the edited device capability information to the OS 313 (S809). The OS 313 stores the device capability information obtained from the print settings extension application 312, associating it with the print queue.
[0096] When OS313 updates the device capability information, an object that triggers the display of the UI for the print settings extension application 312, such as object 1104 in Figure 11, becomes active (S810). Object 1104 remains grayed out until the processing in S810 is complete.
[0097] When the user selects object 1104, the OS 313 launches the print settings extension application 312, which displays a print settings screen as shown in Figure 10 (S811). This print settings screen is independent of the type of document generation application 315 used.
[0098] If the print queue and the print settings extension application 312 are not linked, the standard print settings screen pre-installed in OS313 will be displayed as shown in Figure 9(a). On the standard print screen, pressing the advanced settings button 901 will display the advanced print screen shown in Figure 9(b), which will display the advanced print screen with settings that cannot be fully displayed in Figure 9(a). The advanced print screen shown in Figure 9(b) supports a scroll bar, and as shown in Figures 9(c) and (d), you can navigate through screens to configure multiple settings supported by OS313. When the OK button 902 is selected, the configured print settings are saved and the screen shown in Figure 9(a) is displayed. The Apply button 903 is a button to save the print settings, and the Cancel button 904 is a button to return to the screen in Figure 11 without saving the print settings. Similarly, the OK button 905 saves the print settings and returns to the screen in Figure 11.
[0099] Let's return to the print settings extension application 312. The print settings extension application 312 receives print settings information generated by the OS 313 based on the print settings capability information generated from the device capability information, and displays the extended print settings screen shown in Figure 10(a). The screens in Figures 10(a) to (e) are displayed by scrolling the screen.
[0100] For example, the output paper size in setting item 1001 in Figure 10(a) displays the print setting information generated from psk:PageMediaSize in Figure 6(b). The A4 output paper size option is generated and displayed by the print setting extension application 312 based on the print setting information psk:IOSA4. In this way, the print setting extension application 312 displays device capability information as setting values on the extended print settings screen.
[0101] The print settings extension application 312 provides a function that allows users to arbitrarily change print settings, and saves those settings if changed. When the user selects the OK button 1002 displayed on the print settings extension screen in Figure 10, the print settings are confirmed. For example, suppose the user changes the media size from A4 to Letter on the UI. In that case, the print setting information held by the print settings extension application 312 changes from A4 to Letter.
[0102] The list box 1003 in Figure 10(d) is a list box for setting whether the PDF passthrough function is enabled or disabled. When PDF passthrough is disabled, the PDF created by the document generation application 315 is first converted to XPS by the OS 313, then converted back to PDF by the print settings extension application and sent to the cloud print-compatible printer 104. On the other hand, when PDF passthrough is enabled, the PDF generated by the document generation application 315 is sent directly to the cloud print-compatible printer 104 without conversion to XPS. Note that the standard print settings screen displayed by the OS 313 does not display a list box for switching between enabling and disabling PDF passthrough. When the OK button 1002 is selected by the user, the print settings extension application 312 retrieves the print settings information processed within the print settings screen controls from the print settings screen, passes that print settings information to the OS 313, and closes the extended print settings screen shown in Figure 10 (S812). When the processing in S812 is completed, the initial print settings screen shown in Figure 11, which reflects the settings set by the print settings extension application 312, is displayed.
[0103] When the user selects the "Print" button 1105 on the screen shown in Figure 11, a print command is input to OS313. Based on the input command, OS313 executes the printing process (S813).
[0104] When OS313 is instructed to execute a print job, it generates intermediate data and passes the generated intermediate data and the print settings information edited on the print settings screen to the print settings extension application 312 (S814). Intermediate data is data generated before being converted into print data such as PDL, and XPS data is an example of this. Print settings information is also included in this intermediate data.
[0105] When a user selects "Print" 1105 on the initial print settings screen shown in Figure 11, there are three possible scenarios for what happens. The first is when the print settings extension application 312 associated with the selected print queue is installed on the client terminal 101, and the PDF passthrough function is disabled. The second is when the print settings extension application 312 associated with the selected print queue is not installed. The third is when the print settings extension application 312 associated with the selected print queue is installed, and the PDF passthrough function is enabled. Each scenario is explained below.
[0106] The first case is when the print settings extension application 312, which supports the print queue, is installed on the client terminal 101, and the PDF passthrough function is disabled. The OS 313 converts the file output from the document generation application 315 into intermediate data, and sends the converted intermediate data and print settings to the print settings extension application 312. The print settings extension application 312 receives the intermediate data and print setting information from the OS 313 and generates print data and print capability information (S815). Note that the intermediate data is, for example, data in XPS format, the print data refers to, for example, a PDL such as a PDF file, and the print capability information specifically refers to the attribute values defined in IPP for print setting information.
[0107] The print settings extension application 312 generates the print data and then passes the generated print data and print capability information to the print queue of OS313 (S816). The above is the process that is executed in the first case.
[0108] In the second case described above, the OS313 of the client terminal 101 executes the process described later in S816. The OS313 converts the data output by the document generation application 315 into intermediate data, and generates print data and print capability information from the intermediate data and print settings (S817).
[0109] Next, we will explain the processing for the third case described above. The third case is when the print settings extension application 312 corresponding to the selected print queue is installed on the client terminal 101 and the PDF passthrough setting is enabled. Note that PDF passthrough can only be enabled if the document generation application 315 can output PDF files. The OS 313 receives the PDF file and print settings from the document generation application 315. The OS 313 sends the received PDF file and print settings to the print settings extension application 312 (S820). The print settings extension application 312 generates print capability information based on the received print settings, while keeping the received PDF file as is. The print settings extension application 312 sends the PDF file and the generated print capability information to the OS 313 (S821).
[0110] OS313 sends the print data and print capability information received from the print settings extension application 312, or the print data and print capability information generated by OS313, to the cloud print service 321 via the print queue (S818).
[0111] The cloud print service 321 sends the print data and print capability information received from the client terminal 101 to the cloud print-compatible printer 104 (S819).
[0112] Furthermore, the cloud print-compatible printer 104 may periodically query the cloud print service 321 to obtain unprinted print data stored on the cloud print service 321 and the corresponding print capability information. Also, in the process of S801 in Figure 8, the capability information is obtained when the printer name is selected in the document generation application 315, and the subsequent print settings screen is displayed, but the above process may be started at other times. For example, the above process may be started when the object 1104 displayed on the document generation application 315 is pressed.
[0113] The above explanation describes the flow of events when a print queue is linked to the print settings extension application 312, from the moment the print queue is selected to the display of the extended print settings screen (Figure 10) of the print settings extension application 312 and the subsequent printing.
[0114] This concludes the explanation of the Print Settings Extension App 312 and the overall printing process using it. From here, we will provide a more detailed explanation regarding PDF passthrough.
[0115] Figure 12 shows the extended print settings screen that appears when the PDF passthrough function is enabled in the print settings screen described in Figure 10(d).
[0116] List box 1003 is an object for the user to enable or disable the PDF passthrough function. When PDF passthrough is set to "enabled", the print settings extension application 312 receives the PDF file output by the document generation application 315 and the print settings. The print settings extension application 312 generates print capability information by converting the print settings to attribute values defined in IPP without converting the file format of the PDF file, and sends it to the OS 313. Note that attribute values not defined in IPP are not converted and are sent to the OS 313 as is. When PDF passthrough is set to "disabled", the OS 313 first converts the PDF file output by the document generation application 315 to an XPS file. The print settings extension application 312 receives the XPS file obtained from the conversion and the print settings. The print settings extension application 312 converts the XPS file to a PDF file, generates print capability information indicated by attribute values defined in IPP, and sends it to the OS 313.
[0117] The "Watermark Settings" 1202 function adds an image of a predetermined string or an image of a string set by the user to the image data output by the document generation application 315. When "Watermark Settings" 1202 is selected, a watermark settings screen (not shown) is displayed. On the watermark settings screen, you can enable or disable the watermark function, and set the font size, string, font type, color, dot pattern, and string placement of the characters added to the image data output by the document generation application 315.
[0118] Then, when the OK button 1002 is selected, the display of the extended print settings screen shown in Figure 12 ends, and the initial print settings screen shown in Figure 11 is displayed.
[0119] In this embodiment, if PDF passthrough is enabled in list box 1003, the "Watermark Settings" 1202 is grayed out and cannot be set. The "Watermark Settings" is a function that edits a file converted to XPS format by OS 313 from a file generated by document generation application 315, and adds image data. Therefore, when the print setting extension application 312 receives data in PDF format, it cannot edit the image. Accordingly, in this embodiment, the print setting extension application 312 executes control so that the "Watermark Settings" cannot be set when PDF passthrough is enabled. Note that in Figure 12, the "Watermark Settings" 1202 is grayed out when the PDF passthrough function is enabled. The display method is not limited to graying out. For example, the "Watermark Settings" 1202 may be hidden when PDF passthrough is enabled. Alternatively, the "Watermark Settings" 1202 may be displayed regardless of whether PDF passthrough is enabled or disabled, and an error notification may be displayed when the user selects the "Watermark Settings" 1202 if the PDF passthrough function is enabled. The error notification mentioned above indicates that the watermark function cannot be used when PDF passthrough is enabled. Alternatively, the print settings screen could allow users to configure both the PDF passthrough function and the watermark setting, and if both are enabled, one of the functions could be disabled before the print process is executed.
[0120] Next, using Figure 13, we will explain how to display the pass-through enable / disable toggle button when the data to be printed in this embodiment is a PDF.
[0121] This process is achieved when a program to be executed is loaded into memory 213 in Figure 2, and the CPU 212 executes that program.
[0122] The process begins when the client terminal 101 is started up and the print settings screen of the document generation application (Figure 11) is displayed in step S1300. Here, we will explain assuming that the printer name of the print queue associated with the print settings extension application 312 is selected in object 1101 of Figure 11.
[0123] CPU 212 retrieves the printer capability information stored in association with the print queue of the selected printer name (S1301). CPU 212 executes the process in S1301 by running the print settings extension application 312. Here, the intention is to read the printer capability information stored on the client terminal 101, but it is also possible to access the cloud print service at this time and retrieve the capability information.
[0124] Next, it is determined whether "Other Settings" 1104 on the print settings screen shown in Figure 11 is selected (S1302). This determination is performed by the document generation application 315 that displays Figure 11. The CPU 212 repeatedly performs the process described in S1302 until "Other Settings" 1104 is selected. When "Other Settings" 1104 is selected, the document generation application 315 notifies the OS 313. Upon receiving the notification, the OS 313 selects the print settings extension application 312 associated with the print queue of the selected printer name and instructs the print settings extension application 312 to display the extended print settings screen.
[0125] Based on the capability information obtained in S1301, CPU212 determines whether the printer with the selected printer name is capable of printing based on a PDF file (S1303). S1303 is achieved by CPU212 executing the program of the print setting extension application 312. The determination of whether or not the printer has the capability to process PDFs is based on whether or not the string "PDF" is present in the data conversion description shown in Figure 18. If PDF printing is not included in the capability information, i.e., if the printer corresponding to the selected print queue does not support PDF printing, CPU212 proceeds to S1305. If PDF printing is included in the capability information, CPU212 proceeds to S1304.
[0126] CPU212 determines whether the file output by the document generation application is a PDF file (S1304). The determination in S1304 is based, for example, on whether the string "%PDF" is at the beginning of the file to be printed. The process described in S1304 is achieved by CPU212 executing the print settings extension application 312. The process described in S1304 may also be as follows: CPU212 obtains the identifier of the application that instructed the print settings screen to be displayed according to the program of the print settings extension application 312. If the obtained application identifier is the identifier of a predetermined application, it may be determined that the document generation application will output a PDF file and proceed to S1306. The identifier of the application that instructed the print settings extension application 312 to display the print settings screen is obtained using the API (ApplicationProgrammingInterface) provided by OS313.
[0127] The CPU 212 displays a print settings screen with the list box for setting whether PDF passthrough is enabled or disabled grayed out, according to the print settings extension application 312 (S1305). Executing S1305 displays a print settings screen as shown in Figure 14. The list box 1003 is grayed out, and the setting cannot be changed from disabled to enabled. The "Watermark Settings" 1202 is displayed as operable, and when "Watermark Settings" 1202 is selected, a watermark settings screen (not shown) is displayed. In this embodiment, graying out the list box 1003 prevents changes to the PDF passthrough setting. Alternatively, in S1305, the list box 1003 could be hidden to prevent PDF passthrough from being enabled.
[0128] CPU212 obtains information on whether the PDF passthrough setting is enabled or disabled according to the program of the print settings extension application 312 (S1306). CPU212 obtains information indicating the current print settings from OS313. CPU212 refers to the obtained current print settings and determines whether PDF passthrough is enabled or disabled.
[0129] If PDF passthrough is disabled, the CPU 212 displays a print settings screen in accordance with the program of the print settings extension application 312, where PDF passthrough is disabled and a predetermined function can be configured (S1308). In S1308, the print settings screen shown in Figure 10(d) is displayed.
[0130] If PDF passthrough is enabled, the CPU 212 displays a print settings screen in accordance with the program of the print settings extension application 312, where the PDF passthrough function is enabled and certain functions are grayed out (S1309). In S1309, the print settings screen shown in Figure 12 is displayed.
[0131] CPU 212 determines whether the OK button 1002 is selected according to the program of the print settings extension application 312 (S1310). If the OK button 1002 is not selected, CPU 212 returns to S1307. In the subsequent S1307-S1309 processes, if the PDF passthrough function settings have not been changed, no changes are made to the display related to PDF passthrough. If the user changes the PDF passthrough settings, the processes in S1308 or S1309 are executed according to the changes.
[0132] If the OK button 1002 is selected, the CPU 212 sends the current print settings to the OS 313 according to the program of the print settings extension application 312, and the display of the print settings screen ends. As a result, the screen shown in Figure 11 is displayed. Note that here, the initial print settings screen is displayed, which reflects the print settings set via the print settings screen provided by the print settings extension application 312.
[0133] The CPU 212 determines whether the "Print" button 1105 has been selected according to the program of the document generation application 315 (S1311). If the "Print" button 1105 has not been selected, the CPU 212 performs the process described in S1311. If the print settings are changed via the initial print settings screen during this time, the CPU 212 performs the process of changing the print settings. Also, if the extended print settings screen is instructed to be displayed again during this time, the CPU 212 performs the processes described in S1303 to S1310.
[0134] When the "Print" button 1105 is selected, the CPU 212 notifies the OS 313 that printing has been instructed. The CPU 313 executes the OS 313 program, retrieves the print settings, and determines whether the PDF passthrough function is enabled or disabled (S1312). If the PDF passthrough function is enabled, the CPU 212 proceeds to S1313. On the other hand, if the PDF passthrough function is disabled, the CPU 212 proceeds to S1315.
[0135] The CPU 212 retrieves the PDF file and print settings from the document generation application 315 according to the program in the OS 313 (S1313). Then, the CPU 212 passes the retrieved PDF file and print settings to the print settings extension application 312 (S1314). At this time, the CPU 212 sends the PDF file received from the document generation application 315 to the print settings extension application 312 without changing its contents.
[0136] Next, we will explain how it works when PDF passthrough is disabled.
[0137] CPU212 retrieves data from document generation application 315 according to the OS313 program and converts the data format to XPS (S1315). At this time, CPU212 also receives print settings from document generation application 315 according to the OS313 program.
[0138] CPU212 sends the converted XPS data and print settings to the print settings extension application 312 according to the program in OS313 (S1316).
[0139] The CPU 212, following the program of the print settings extension application 312, refers to the watermark settings of the received print settings and determines whether the watermark settings are enabled or not (S1317). If the watermark settings are enabled, the CPU 212 adds the watermark image data to the XPS data received from the OS 313, following the program of the print settings extension application 312 (S1318). The CPU 212 edits the XPS data based on the string to be printed as a watermark, font size, font, font color, etc., which are set as the watermark settings. If the watermark settings are disabled, the CPU 212 proceeds to S1319 after S1317.
[0140] The CPU 212, following the program of the print settings extension application 312, refers to the capability information corresponding to the selected print queue and determines whether or not PDF printing is included in the capability information (S1319). If PDF printing is included in the capability information, the CPU 212 generates a PDF file based on the XPS file according to the program of the print settings extension application 312 (S1320). The CPU 212 converts the XPS file to a PDF file using the API provided by the OS 313 according to the program of the print settings extension application 312. It also converts the print settings to attribute values defined in IPP. Note that if the print settings include attributes not defined in IPP, those attributes will not be converted.
[0141] In S1319, if it is determined that PDF printing is not included in the capability information, the CPU 212 generates a PWG-Raster according to the program of the print setting extension application 312 (S1321). The CPU 212 uses the OS 313 API to convert the XPS file into a PWG-Raster according to the program of the print setting extension application 312. In S1321, as in S1320, the CPU 212 converts the print settings into attribute values defined in IPP.
[0142] Finally, CPU212 registers the generated image data and print settings in the print queue according to the program of the print settings extension application 312 (S1322). CPU212 then sends the registered image data and print settings to the cloud print service in accordance with IPP according to the program of OS313.
[0143] This completes the process described in Figure 13. This allows the PDF passthrough function to be configured on the print settings screen provided by the print settings extension application 312. Furthermore, the print settings extension application 312 can prevent users from configuring functions that cannot be used when PDF passthrough is enabled.
[0144] (Example 2) Example 1 describes how to display a pass-through enable / disable button when the output file of the document generation application 315 is a PDF file. PDF files allow users to set a password of their choice. When a password is set, the PDF file can be opened by entering the set password. It is conceivable that a password will be required when printing a password-protected PDF file.
[0145] Example 2 describes a method for displaying a password input box when a password is required to print a PDF file.
[0146] Here, using Figure 15, we will explain the process of displaying a password input box if a password is required to print the PDF file in this embodiment.
[0147] Figure 15 shows the print settings screen displayed by the print settings extension application 312, which corresponds to Figure 12 in Example 1. The difference from Example 1 is the presence of a password input area 1601 for the PDF file. When the PDF passthrough function is disabled, the password input area 1601 is grayed out and does not accept input. When the PDF passthrough function is enabled, characters can be entered into the password input area 1601. In Figure 15, the entered characters are displayed converted to asterisks. Alternatively, the characters entered into the password input area 1601 may be displayed as they are. Furthermore, multiple password input areas may be displayed.
[0148] In Figure 15, when the OK button 1002 is selected, the screen shown in Figure 11 is displayed. The process is executed when the user selects the "Print" button 1105 on the screen shown in Figure 11.
[0149] The process in Example 2 will be explained using Figure 16. Figure 16 is realized when the CPU 212 of the client terminal 101 executes the OS 313 or the print setting extension application 312 program. Processes common to Figure 13 are given the same reference numerals as in Figure 13 and their explanation is omitted.
[0150] The client terminal 101 is started up, and the process begins when the print settings screen of the document generation application (Figure 11) is displayed in step 1700.
[0151] CPU212, following the program of the print settings extension application 312, disables configurable items as shown in 1202 (S1309) when PDF passthrough is enabled.
[0152] The CPU 212 determines, according to the program of the print settings extension application 312, whether a password is required to print the PDF and whether it has not received a password from the application (S1701).
[0153] If the result in S1701 is determined to be YES, the CPU 212 executes the process in S1702. The CPU 212 displays a text box for entering a password according to the program of the print settings extension application 312, and stores the character information entered in the text box as the print settings (S1702). Figure 15 is an example of the print settings screen displayed in S1702.
[0154] If the result in S1701 is NO, CPU212 proceeds to process S1310.
[0155] The processes described in S1310 to S1321 are the same as those in Figure 13, so their explanation is omitted.
[0156] After S1314, the CPU 212 determines whether a password is required to print the received PDF file, according to the program of the print settings extension application 312 (S1731).
[0157] If the determination in S1731 is NO, the CPU 212 sends the process to S1322. If the determination in S1731 is YES, the CPU 212 proceeds to S1732. The CPU 212 generates print capability information, including the password set via the print settings screen provided by the print settings extension application 312, and sends the PDF file and print capability information to the print queue (S1732). Then, according to the program of the OS 313, the CPU 212 sends the PDF file and print capability information to the cloud print service (S1322).
[0158] The printer will determine whether a password is required to open the received PDF file. If a password is required, the printer will check whether the password is included in the received print capability information. If the password is not included, the printer cannot open the PDF file and therefore cannot print, and will notify the user of an error on the display. The error may be indicated by the printer's LED lighting up or by an audible notification. If a password is required to open the received PDF file, and the printer is unable to open the PDF file using the password described in the print capability information, the printer will also be unable to print. In this case, the printer will display an error on the display as described above. The error displayed at this time may be the same as when the password was not described in the print capability information, or it may be a different message.
[0159] If a password is required to open the received PDF file, and the PDF can be opened using the password described in the received print settings information, the printer will perform image formation according to the opened PDF file and the print settings information.
[0160] If a password is not required to open a received PDF file, the printer will open the PDF file and perform layout processing and other image formation processes according to the print capability information.
[0161] The above describes the process performed in Example 2. In the above description, it is assumed that the client computer sends a PDF file and print setting capability information including a password to the cloud print service, and the cloud print service sends the PDF file and print setting capability information to the printer. Alternatively, the print setting extension application 312 may open the PDF file received from the OS 313 using the password described in the print settings, and send the opened PDF file and print capability information to the printer via the cloud print service.
[0162] By following the steps described above, even encrypted PDF files can be printed using the PDF passthrough function.
[0163] <Other examples> In Examples 1 and 2, it was described that the PDF file and print capability information sent by the client terminal are transmitted to the printer via the cloud print service. The invention described in this application may also be applied when the client terminal and the printer are connected directly without going through the cloud print service.
[0164] Furthermore, in Examples 1 and 2, by selecting "Other Settings" 1104 from the initial print settings screen shown in Figure 11, the print settings extension application 312 enabled or disabled PDF passthrough on the print settings screen. In the screen shown in Figure 11, when the user selects "Print" 1105, the print settings extension application 312 may display an object that sets whether or not to perform PDF passthrough. In that case, the print settings extension application 312 may display objects for setting items related to the PDF passthrough function, along with the object that sets whether or not to enable PDF passthrough. Setting items related to the PDF passthrough function include objects for setting items that may conflict with PDF passthrough (such as watermark settings) and passwords for opening PDF files.
[0165] The present invention can also be realized by performing the following process: supplying software (programs) that realize the functions of the above-described embodiment to a system or device via a network or various storage media, and having the computer (or CPU, MPU, etc.) of the system or device read and execute the program code. In this case, the computer program and the storage media storing the computer program constitute the present invention. Furthermore, although the above-described embodiment describes the communication of capability information and print data via the cloud print service 321, direct communication with the cloud print-compatible printer 104 is also possible.
Claims
1. An information processing device, A conversion means for converting a file of a first format output by a document generation application into a file of a second format, A generation means for generating print data based on the converted file, The transmission means for transmitting the print data generated by the generation means is implemented by the operating system (OS) of the information processing device, The OS, in accordance with user instructions including a setting to send the first format file output by the document generation application without conversion, outputs the first format file output by the document generation application to the print settings extension application without conversion by the conversion means. The print settings extension application generates print capability information based on the print settings set according to the user's instructions without changing the contents of the first format file, and outputs the first format file and the print capability information to the OS. The information processing apparatus is characterized in that the transmission means transmits a file of the first format and the print capability information.
2. The information processing apparatus according to claim 1, further comprising control means for displaying an object that accepts user instructions on a display unit.
3. The information processing apparatus according to claim 2, characterized in that the control means controls the system so as not to accept the setting of a function that cannot be executed on the first format file output by the document generation application, in accordance with the user's instructions.
4. The document generation application further includes a determination means for determining whether the application outputs a file in a predetermined format. The information processing apparatus according to claim 2, characterized in that the control means causes the object to be displayed on the display unit when the determination means determines that the document generation application is an application that outputs a file of the first format.
5. The information processing apparatus according to claim 1, characterized in that the first format is PDF.
6. The information processing apparatus according to claim 5, characterized in that the second form is XPS.
7. The information processing apparatus according to claim 1, characterized in that the generation means generates a file of the first format based on a file of the second format.
8. A method for controlling an information processing device, The operating system (OS) of the aforementioned information processing device, A conversion process that converts a file in the first format output by a document generation application into a file in the second format, A generation process that generates print data based on the converted file, A first transmission step is performed to transmit the print data generated in the generation step, The OS, in accordance with user instructions including a setting to send the first format file output by the document generation application without conversion, outputs the first format file output by the document generation application to the print settings extension application without conversion. The print settings extension application generates print capability information based on the print settings set according to the user's instructions without changing the contents of the first format file, and outputs the first format file and the print capability information to the OS. A control method for an information processing device, characterized by transmitting a file of the first format and the print capability information.