Information processing apparatus, control method, and storage medium
The information processing device enables job combination across diverse printing systems by storing and managing print jobs with unique identification, addressing limitations in existing technologies and enhancing user convenience.
Patent Information
- Application Number
- JP2025203078
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-11-25
- Publication Date
- 2026-01-29
AI Technical Summary
Existing job combination functions are limited to specific printing systems and do not support integration with diverse printing devices, leading to inefficiencies in combining print jobs across different printers.
An information processing device and method that includes a storage control mechanism to store print jobs from different printers and a display control mechanism to manage job name information, enabling the combination of print jobs from multiple printing devices by associating them with unique identification information.
Facilitates the implementation of a job combination function across various printing systems, enhancing user convenience by allowing multiple print jobs to be combined and printed as a single job, improving efficiency and flexibility.
Smart Images

Figure 2026015616000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an information processing device, a control method, and a program. [Background technology]
[0002] Conventionally, Japanese Patent Laid-Open No. 2003-144999 discloses a job combining function that combines multiple print jobs and handles them as a single print job. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Publication No. 11-243463 Summary of the Invention [Problem to be solved by the invention]
[0004] However, there has been a demand for the job combination function to be implemented in printing systems other than the printing system disclosed in Patent Document 1. [Means for solving the problem]
[0005] In order to solve the above-mentioned problems, the information processing device of the present invention is characterized by comprising: a storage control means for storing in a storage area a first print job generated by specifying a first printing device and a second print job generated by specifying a second printing device different from the first printing device; and a display control means for displaying, when the first and second print jobs are stored in the storage area and a third print job including identification information corresponding to the first printing device is received, a screen including job name information of the received third print job and job name information of the first print job, but not job name information of the second print job. [Effects of the Invention]
[0006] According to the present invention, it is possible to provide a job combination function in a printing system using an extended application. [Brief explanation of the drawings]
[0007] [Figure 1] FIG. 1 is a block diagram showing the hardware configuration of a printing system. [Figure 2] FIG. 2 is a block diagram illustrating a data flow during printing. [Figure 3] FIG. 4 is a schematic diagram for explaining a screen for making print settings according to the first embodiment. [Figure 4] Schematic diagram of the user interface of the print preview function. [Figure 5] FIG. 10 is a diagram showing an example of print queue identification information. [Figure 6] 10 is a flowchart of a preview unit process according to the first embodiment. [Figure 7] 10 is a flowchart of a job saving process according to the first embodiment. [Figure 8] FIG. 10 is a schematic diagram showing an example of a method for saving a job. [Figure 9] 10 is a flowchart of a preview process according to the first embodiment. [Figure 10] 10 is a schematic diagram of a print preview screen after print settings have been changed. [Figure 11] 10 is a flowchart of a setup process according to the second embodiment. [Figure 12] 10 is a flowchart of a UI startup process according to the second embodiment. [Figure 13] 10 is a flowchart of a preview process according to the second embodiment. [Figure 14] FIG. 10 is a schematic diagram for explaining a screen for making print settings in the second embodiment. [Figure 15] FIG. 2 is a diagram showing an example of a screen provided by an application 201. DETAILED DESCRIPTION OF THE INVENTION
[0008] 1 is a block diagram showing the hardware configuration of a printing system. In this diagram, a host computer 101 is an example of an information processing device, and includes an input interface 110, a CPU 111, a ROM 112, a RAM 113, an external storage device 114, an output interface 115, and an input / output interface 116. Input devices such as a keyboard 118 and a pointing device 117 are connected to the input interface 110, and a display device such as a display unit 119 is connected to the output interface 115.
[0009] An initialization program is stored in the ROM 112, and application programs, an operating system (OS), a print data generation application, and various other data are stored in the external storage device 114. The RAM 113 is used as a work memory when the various programs stored in the external storage device 114 are executed. Note that Windows (registered trademark) can provide an extension application for extending the functionality of the printer driver. This application is called a Windows Store Device App (WSDA). By providing WSDA, vendors who provide printing devices can customize the print setting screen when printing from a specific application. Similarly, a Print Workflow App exists as an extension application for extending the functionality of the printer driver. Vendors who provide printing devices can provide the Print Workflow App as an extension function of WSDA. The Print Workflow App is launched in response to a print instruction to the printer driver, and can provide functions that involve a GUI and functions that involve editing print data.
[0010] In this embodiment, the CPU 111 executes processing according to the procedures of a program stored in the ROM 112, thereby executing functions of the host computer 101 described below and processing related to flowcharts described below. The printing device 102, which is a device, is connected to the host computer 101 via an input / output interface 116. Here, the host computer 101 and the printing device 102 are configured separately, but they may also be configured as a single information processing device. Note that the printing device 102 will be described as an inkjet printer that prints by ejecting ink onto paper, but printing may also be performed by other methods (for example, electrophotography). The host computer 101 may be a desktop computer, a smartphone, or a laptop computer.
[0011] FIG. 2 illustrates the data flow during printing. FIG. 2(a) illustrates the data flow when an extension application 203, described later in FIG. 2(b), is not associated with an application 201, print data generation software 202, and printing device 102. The user issues a print instruction from application 201. Note that application 201 is software that creates the content to be printed, such as a word processing application or a spreadsheet application. When issuing a print instruction, the user performs a setting process using a print setting screen provided by the OS or print data generation software 202. This setting process causes the print data generation software to generate print setting information. The print setting information includes setting information corresponding to the setting values set using the print setting screen. Note that print setting information is also referred to as a PrintTciket. The OS generates intermediate data (also referred to as input data) based on application data output from the application in response to the print instruction and passes it to the print data generation software 202. Note that the data output by the application for printing is data in Graphic Device Interface format (GDI format data) or XML Paper Specification format (XPS format data). The print data generation software 202 generates print data that can be interpreted by a printing device from the intermediate data based on the print setting information set by the user, and sends the print data to the printing device 102. The printing device 102 prints on paper based on the print data sent from the print data generation software 202.
[0012] The print data generation software 202 is common software used in association with multiple printing devices. In other words, printing device A can print using print data generated by the print data generation software 202. Printing device B can also print using print data generated by the print data generation software 202. When the print data generation software 202 is associated with the printing device 102, it generates a print queue corresponding to the printing device 102. Once the print queue is generated, the user can select the desired print queue from a print queue selection item 1501 on a screen provided by the application 201, such as that shown in FIG. 15 . When generating a print queue, the print data generation software 202 acquires capability information of the associated printing device 102. The capability information acquired by the print data generation software 202 from the printing device 102 includes information such as the paper sizes and types supported by the printing device and whether borderless printing is supported. The print data generation software 202 saves the capability information acquired from the printing device 102 as capability information data that it can interpret. This stored capability information data may be in a format known as GPD (Generic Printer Description) or PDC (Print Device Capabilities), but other formats are also acceptable. The print data generation software 202 determines print settings that the user can set based on the generated capability information data. This allows the print data generation software 202 to operate according to the capabilities of the printing device 102 associated with each print queue, even though it is software commonly used by multiple printing devices. For example, it may be possible to enable borderless printing settings only for printing devices that support borderless printing.
[0013] FIG. 2B illustrates a data flow when the extended application 203 is associated with the print data generation software 202. The extended application 203 described in this embodiment includes the functions of the WSDA and Print Workflow App described above, but is not limited to this. The print data generation software 202 is software that is pre-installed in the OS. In other words, the print data generation software is available once the OS is installed on the device. On the other hand, the extended application 203 is software that is not pre-installed in the OS. Therefore, the user must operate the host computer to download and install the extended application 203 from a server via a network. When the printing device 102 is connected to the host computer 101, the CPU 111 acquires device identification information from the printing device 102. The CPU 111 may then acquire and install the extended application 203 corresponding to the acquired device identification information from a server via a network. In other words, the print data generation software 202 and the extended application 203 are stored as separate files in the host computer 101. The print data generation software 202 and the extension application 203 may be updated and upgraded, but these update processes are also performed at different times. That is, the timing at which the host computer 101 acquires the print data generation software 202 is different from the timing at which the extension application 203 is acquired. Furthermore, the trigger at which the host computer 101 acquires the print data generation software 202 is different from the trigger at which the extension application 203 is acquired. When the extension application 203 is installed, the OS associates the print data generation software 202 with the extension application 203. The extension application 203 described in this embodiment includes a print setting screen extension unit 204 and a preview unit 205. Furthermore, the extension application 203 includes an application-specific data storage area 206.The data stored in the data storage area 206 is generally stored separately for each user who uses the extension application 203 .
[0014] The user issues a print instruction from the application 201. Specifically, the user issues a print instruction by pressing the print button 1502 on the screen of FIG. 15. Alternatively, with the extension application 203 associated with the print data generation software 202, the user may press "Printer Properties" 1503 on the screen of FIG. 15. In this case, the print setting screen extension unit 204 displays the print setting screen described later in FIG. 3. At this time, the user performs setting processing using the print setting screen of FIG. 3. Through this setting processing, the print setting screen extension unit 204 generates print setting information. Details of the print setting function will be described later with reference to FIG. 3.
[0015] The OS generates intermediate data based on application data and print setting information set using the print setting screen of FIG. 3 (described later) in response to a print instruction issued by pressing the print button 1502 of FIG. 15 , and outputs the intermediate data to the extension application 203. The extension application 203 starts the preview unit 205 by receiving the intermediate data. The intermediate data includes drawing data and print setting information corresponding to the content to be printed. The OS generates XPS-formatted data as intermediate data based on GDI data output from the application 201, for example. When the application 201 outputs XPS-formatted data as application data, the OS may pass the XPS-formatted data as is to the preview unit 205. When the application 201 outputs XPS-formatted data as application data, the OS may modify the XPS-formatted data that is the application data to generate XPS-formatted data as intermediate data.
[0016] The preview unit 205 acquires the intermediate data generated by the OS and displays a print preview. After the user confirms that the print preview results in the desired print result, they use the print preview UI to instruct printing to begin. When the preview unit 205 receives a print start instruction from the user, it outputs the intermediate data to the print data generation software 202. The print data generation software 202 generates and outputs print data that can be interpreted by the printing device based on the intermediate data. The print data output from the print data generation software 202 is sent to the printing device 102. The printing device 102 prints on paper based on the print data sent from the host computer 101. With the above configuration, the user can use the print preview function that the print data generation software 202 does not have, by using the extension application 203.
[0017] Although the preview unit 205 has been described as operating before the processing of the print data generation software 202, a configuration in which it operates after the processing of the print data generation software is also conceivable. In this case, the preview unit 205 processes the print data generated by the print data generation software. In a configuration in which the preview unit 205 operates after the processing of the print data generation software 202, if it is desired to process intermediate data, it is conceivable to skip the processing of the print data generation software 202. In this case, the extension application 203 operates before the processing of the print data generation software 202 and issues an instruction to skip the processing of the print data generation software 202. Also, a configuration in which the preview unit 205 can operate either before or after the processing of the print data generation software is conceivable.
[0018] A method for skipping the processing of the print data generation software 202 will now be described in detail. The extended application 203 detects that a print instruction has been issued when the user presses the print button 1502 in FIG. 15 . The extended application 203 then determines whether to skip the processing of the print data generation software 202 based on the print setting information output from the application 201. For example, if the print setting information includes setting information that requires page editing, such as 2-in-1, the extended application 203 determines that the page should be edited using intermediate data. If it is determined that the processing of the print data generation software 202 should be skipped, the extended application 203 instructs the OS to skip the processing of the print data generation software 202. In response to this instruction from the extended application 203, the OS generates intermediate data including a skip instruction based on the application data and print setting information output from the application 201. Then, when the print data generation software 202 receives intermediate data including a skip instruction, it sends the received intermediate data to the extended application 203 without generating print data from the intermediate data. Through the above processing, the extension application 203 processes the intermediate data in a configuration that operates after processing by the print data generation software 202. Note that when the OS receives a skip instruction from the extension application 203, it may send the intermediate data to the extension application 203 without sending the intermediate data to the print data generation software 202. The extension application 203 processes the intermediate data based on the print setting information and then sends the intermediate data to the print data generation software 202. The print data generation software 202 then generates print data based on the intermediate data. Note that the extension application 203 may generate print data by itself after processing the intermediate data based on the print setting information.
[0019] FIG. 3 shows an example of a print setting screen provided by the print setting screen extension unit 204 of the extension application 203. When issuing a print instruction from the application 201, the user sets print setting information using this screen. If the extension application 203 is not associated with the print data generation software 202, the print setting information is set using a standard print setting screen provided by the OS or the print data generation software 202. On the standard print setting screen, only print setting information corresponding to the functions provided by the print data generation software 202 can be set. In other words, if the printer properties 1503 in FIG. 15 is pressed when the extension application 203 is not associated with the print data generation software 202, a standard print setting screen with simpler setting items than that shown in FIG. 3 is displayed. In other words, the print setting screen shown in FIG. 3 is not displayed. In contrast, on the print setting screen provided by the extension application 203, print setting information corresponding to the extended functions provided by the extension application 203 can also be set. In the example of FIG. 3, the user can use the print setting screen of FIG. 3 to set the print preview function and print job saving function provided by the preview unit 205. For example, the print preview function and print job save function are setting items that are not included in the standard print setting screen. Note that the print preview function and print job save function cannot operate simultaneously, so the extension application 203 may control the print preview function so that it cannot be set when the print preview function is enabled. Conversely, the extension application 203 may control the print preview function so that it cannot be set when the print job save function is enabled.
[0020] FIG. 4 shows an example of a print preview screen provided by the preview unit 205 of the extension application 203. A display item 401 is a list of print jobs. The list displays the job names of print jobs that can be processed on the preview screen of FIG. 4. The extension application 203 provides a job combination function through the print preview function provided by the preview unit 205. Therefore, the print preview screen includes a list of print jobs so that multiple print jobs can be processed on the print preview. The print jobs to be processed are listed in the list. A display item 402 is used to change the page displayed on the print preview. The user can change the page displayed by operating this display item 402. A print preview showing an image of the print result of the specified page is displayed in the print preview area 403. A display item 404 accepts a double-sided printing setting from the user. A display item 405 accepts a layout printing setting from the user. Layout printing is used to arrange a specified number of pages of data on one side of a sheet of paper. For example, if a user specifies "2 in 1" using the display item 405, two pages of data are arranged on one side of a sheet of paper. The user changes print settings through display items 404 and 405. Display item 406 is used to instruct whether or not to combine jobs. When the user sets job combination to on, the preview unit 205 treats the print jobs listed in display item 401 as a single print job. Note that when three or more print jobs are displayed in display item 401, the print jobs selected by the user from display item 401 are the ones to be combined. Display item 407 is a button for starting printing. When this display item 407 is operated, the preview unit 205 outputs intermediate data of the print job selected in display item 401 to the print data generation software 202. On the other hand, the preview unit 205 does not output intermediate data of print jobs not selected in display item 401 to the print data generation software 202. In other words, only the print job selected in display item 401 is the one to be printed.Display item 408 is a cancel button, and when the user presses this button, the subsequent printing process is canceled. Note that the preview image displayed in Figure 4 corresponds to the content generated by the application. Furthermore, a preview image reflecting the settings of display items 404 to 406 is displayed.
[0021] FIG. 4 illustrates an example in which multiple print jobs are displayed on the display item 401 by executing the processing of this embodiment, which will be described later. However, the extension application 203 is triggered by a print instruction to a print queue associated with the extension application 203 and terminates after processing the print job corresponding to the print instruction. In other words, the extension application 203 is started for each print job, and therefore cannot handle multiple print jobs. As a result, there is a risk that multiple print jobs cannot be combined in the printing system of FIG. 2B. Therefore, in the first embodiment, to combine print jobs, the extension application 203 saves the print jobs to be combined. Note that the extension application 203 saves the print jobs in the data storage area 206 when the job save setting in FIG. 3 is set to ON. Alternatively, a job save setting item may be displayed on the preview screen of FIG. 4, and the extension application 203 may save the print job in the data storage area 206 when the job save setting item is set to ON. Then, the extension application 203, which is started by a print instruction different from that of the saved print job, can read out the saved print job, thereby making it possible to handle multiple print jobs.
[0022] As described above, the print data generation software 202 is associated with multiple printing devices 102, and a print queue is generated for each associated printing device. Meanwhile, the extended application 203 can also be associated with multiple printing devices. That is, the extended application 203 is also associated with multiple print queues when used. Here, the extended application 203 can access a print job generated by specifying a specific print queue stored in the data storage area 206, even when launched from a different print queue. That is, multiple print jobs generated by specifying different print queues are unlikely to be merged. However, if the processing of this embodiment, described below, is not performed, multiple print jobs generated by specifying different print queues may be displayed in FIG. 4 as merged. This point will be explained using a specific example.
[0023] For example, a user operates the application 201 to specify printer A using the print queue selection item 1501 in FIG. 15 and instructs the display of the print setting screen in FIG. 3. Then, when the user enables print job saving using the print setting screen in FIG. 3 and instructs printing, the extension application 203 stores first intermediate data generated based on the application data and print setting information in the data storage area 206. Next, the user operates the application 201 to specify printer B using the print queue selection item in FIG. 15 and instructs the display of the print setting screen in FIG. 3. Then, the user enables the print preview function using the print setting screen in FIG. 3 and instructs printing. Based on this instruction, the extension application 203 displays a preview image based on second intermediate data generated based on the application data and print setting information in the print preview area 403 in FIG. 4. At this time, the extension application 203 can acquire the first intermediate data stored in the data storage area 206 and list it in the display item 401 in FIG. 4 as a merge target. However, intermediate data generated by specifying separate print queues is unlikely to be merged. The reason for this will be explained with an example. For example, printer A and printer B may have different paper sizes that can be used. As a result, for example, if the first intermediate data is combined with the second intermediate data and the print data is sent to printer B, there is a risk that printing will not properly reflect the settings in the print setting information of the first intermediate data. Therefore, in this case, if the user specifies printer B in the print queue selection item 1501 in FIG. 15, the first intermediate data should not be displayed in the display item 401.
[0024] Therefore, in order to avoid the display processing described above, it is necessary to make only the multiple print jobs that have been generated and for which the same print queue is specified available on the screen shown in Fig. 4. This point will be explained using a specific example.
[0025] For example, suppose that first intermediate data generated by operating the print queue selection item 1501 in FIG. 15 to specify printer A has been stored in the data storage area 206. Furthermore, suppose that second intermediate data generated by operating the print queue selection item 1501 in FIG. 15 to specify printer B has also been stored in the data storage area 206. In this situation, the user operates the print queue selection item 1501 in FIG. 15 to specify printer B and instructs the display of the print setting screen in FIG. 3. The user then enables the print preview function using the print setting screen in FIG. 3 and instructs a new print operation. In response to this new print instruction, the extension application 203 displays a preview image based on the third intermediate data generated based on the application data and print setting information in the print preview area 403 in FIG. 4. At this time, the extension application 203 acquires the second intermediate data stored in the data storage area 206 and displays it in the display item 401 in FIG. 4 as a merge target. Meanwhile, the extension application 203 does not display the first intermediate data in the display item 401 in FIG. 4.
[0026] To realize the above-described display process, the extended application 203 must store print jobs in the data storage area 206 in association with information identifying the print queue. The name of the print queue can be considered as information identifying the print queue. However, the name of the print queue can be changed by the user. If the name of the print queue is changed, the stored data may become unusable, or a print job stored in association with another print queue may be read. Therefore, the extended application 203 adds print queue identification information for uniquely identifying the associated print queue to the above-described capability information data. The extended application 203 then stores this print queue identification information and the print job in association with each other in the data storage area 206. As a result, the extended application 203 can read only print jobs associated with the target print queue.
[0027] The extension application 203 may add the print queue identification information to the capability information data when the print data generation software 202 associates the print device 102 with the printing device 102 and generates a print queue, but this is not a limitation. The extension application 203 may add the print queue identification information to the capability information data at any time when the extension application 203 can operate, such as when the extension application 203 is first launched as a printing trigger, or when the user independently launches the extension application 203. In this embodiment, the capability information data to which the extension application 203 adds the print queue identification information is described as a GPD or PDC, but is not limited to these.
[0028] FIG. 5 shows the print queue identification information added by the extended application 203. FIG. 5(a) shows the print queue identification information added to the PDC. A PDC can be created by describing functions and options that can be set for those functions. In FIG. 5(a), the extended application 203 adds a function called QueueID to the PDC. To the added QueueID, the extended application 203 adds a unique ID to be used as print queue identification information as an option. Note that the capability information data to which the print queue identification information is added is not limited to the PDC, but will conform to the capability information data generated by the print data generation software 202.
[0029] FIG. 5B shows the information added to the PrintTicket, which is print setting information, by adding the description in FIG. 5A. The QueueID function added in the PDC has one option, "8yte6p24." Because the PDC defines only one option that can be set for the QueueID, this setting cannot be changed. Therefore, this option is always set in the PrintTicket. In other words, the extended application 203 generates print setting information (PrintTicket) based on the settings made on the screen in FIG. 3. The extended application 203 adds the three lines in FIG. 5B to the print setting information generated here, based on the description in FIG. 5A. The print setting information, which is based on the settings made on the screen in FIG. 3 and has the three lines in FIG. 5B added, is then notified to the application 201. When the print button 1502 in FIG. 15 is pressed, intermediate data including the application data (drawing data) and the print setting information to which the three lines in FIG. 5B have been added, is notified to the extended application 203. Although it has been described that the extension application 203 adds the three lines in FIG. 5(b) to the print setting information based on the description in FIG. 5(a), this is not limited to this. For example, the extension application 203 generates print setting information based on the settings made on the screen in FIG. 3. Then, print setting information that does not include the three lines in FIG. 5(b) is output to the OS. In this case, the OS may add the three lines in FIG. 5(b) to the print setting information based on the description in FIG. 5(a). Also, while the above example describes a case in which the screen in FIG. 3 is displayed, printing may also be instructed without the screen in FIG. 3 being displayed. In this case, the OS may obtain default print setting information corresponding to the print queue selected in the print queue selection item 1501 in FIG. 15 and add the three lines in FIG. 5(b) to the print setting information based on the description in FIG. 5(a).
[0030] Through the above process, intermediate data is generated based on the print setting information to which the print queue identification information has been added. Therefore, the extended application 203 can obtain the print queue identification information by obtaining the QueueID setting value from the print setting information in step S702 (described later). Note that the print queue identification information does not necessarily need to be unique to each print queue. To handle shared saved jobs across multiple print queues, it is possible to add common identification information to the multiple print queues. The determination of whether to assign common identification information can be made by referencing the capability information data and targeting print queues associated with printing devices with common capabilities. For example, suppose a print queue for a new printing device with the same functions as a reference printing device from which a print queue was previously generated is associated with the extended application 203. In this case, the extended application 203 adds the same print queue identification information as the print queue identification information assigned to the reference printing device to the capability information data of the new printing device. Note that this method is merely an example, and other methods are also possible.
[0031] 8A and 8B are diagrams showing an example of a method by which the extension application 203 stores a print job in the data storage area 206. Fig. 8A is a diagram showing an example of information stored for one print job.
[0032] The extended application 203 associates and saves print queue identification information for identifying the print queue to which the print instruction was issued with intermediate data including the document name and print content. Note that in this embodiment, data in which print queue identification information is associated with intermediate data including the document name and print content is also referred to as a print job.
[0033] The document name and intermediate data are obtained during processing by the preview unit 205 of the extended application 203. Furthermore, the print queue identification information is obtained from the print setting information (PrintTicket) during processing by the preview unit 205 of the extended application 203. Possible methods for associating and saving the above information include creating a single binary data file containing all of the above information in a predetermined format, associating the information by naming the file in accordance with a naming convention, or managing the associated information in a separate file. However, this is not limited to these methods. Furthermore, the information saved is not limited to these methods, and information about the application that performed the printing may also be saved.
[0034] FIG. 8B is a schematic diagram showing a state in which print jobs are saved in the data storage area 206. Three print jobs 801 to 803 are saved in the data storage area 206 of the extension application 203. Each print job is saved in association with print queue identification information, a document name, and intermediate data. Because print job 802 and print job 803 have the same print queue identification information, it is clear that they are print jobs generated by a print instruction to the same print queue. Note that when job saving is enabled on the print setting screen in FIG. 3, the extension application 203 saves the print jobs in the data storage area 206 in the format shown in FIG. 8. Also, for example, if FIG. 4 has a setting item for a job saving function, and the job saving function is enabled on the screen in FIG. 4 and the display item 407 is pressed, the extension application 203 may save the print jobs in the data storage area 206 in the format shown in FIG. 8.
[0035] FIG. 6 is a flowchart related to the display control process of the extended application 203 in the first embodiment. Hereinafter, the extended application 203 may be described as the subject of each process, but in reality, each step of the flowchart is executed by the CPU 111 executing a program corresponding to the flowchart. Note that when a print queue associated with the extended application 203 is selected in the print queue selection item 1501 of FIG. 15 and the user presses the "Printer Properties" button, the print setting screen of FIG. 3 is displayed. A print job is generated when the user instructs printing (by pressing the print button 1502) on the screen of the application 201 of FIG. 15, which is displayed after pressing the OK button of FIG. 3. The process of FIG. 6 is started when the extended application 203 receives this print job.
[0036] First, the extension application 203 references the print setting information set by the user and determines whether the print job save function is on (S601). As described above, the process in Fig. 6 begins when a print job is received. The print setting information included in the intermediate data of the print job received at this time is referenced in S601.
[0037] If it is determined that the print job storage function is on, the extension application 203 performs a job storage process (S602).
[0038] FIG. 7 is a flowchart related to the job saving process of S602. First, the extended application 203 acquires intermediate data and job information from the print job (S701). Job information includes the document name to be displayed in the display item 401 on the preview screen. Next, the extended application 203 acquires print queue identification information from the print setting information included in the intermediate data (S702). The extended application 203 acquires a PrintTicket, which is the print setting information, and acquires print queue identification information from the setting value of QueueID in FIG. 5(b). In the example of FIG. 5(b), "8yte6p24" is acquired as the print queue identification information.
[0039] Next, the extension application 203 associates the intermediate data, job information, and print queue identification information acquired in S701 and S702, and stores them in the data storage area 206 of the extension application 203 (S703). By the processing of S703, the print job is stored in the state shown in FIG. 8(b).
[0040] Next, the extension application 203 notifies the user that the print job has been saved (S704), instructs the print system of the OS to cancel the print job, and ends the processing of the print job (S705).
[0041] If the result of S601 is No, the extension application 203 determines whether the print preview function is on (S603). If the print preview function is on, the extension application 203 performs a preview process (S604).
[0042] 9 is a flowchart of the preview process in S604. First, the extended application 203 acquires intermediate data and job information of a print job generated by a print instruction, which is a trigger for activation (S901). The print instruction, which is a trigger for activation of the extended application 203, is issued when the user selects the print button 1502 on the screen of the application 201 shown in FIG. 15, which is displayed after pressing the OK button in FIG. 3.
[0043] Next, the extension application 203 acquires queue identification information from the print setting information included in the intermediate data (S902). If the information in FIG. 5B is stored in the print setting information, "8yte6p24" is acquired as the print queue identification information. Next, the extension application 203 references the data storage area 206 of the extension application 203, searches for a saved job that matches the print queue identification information acquired in S902, and acquires the job information and intermediate data of the corresponding saved job (S903). In other words, the extension application 203 executes acquisition control processing to acquire saved jobs that match the print queue identification information acquired in S902 and not acquire saved jobs that do not match the print queue identification information acquired in S902. Using FIG. 8B as an example, it can be seen that the print queue identification information of the saved job 801 matches the print queue identification information "8yte6p24" acquired in S902. In other words, the print queue selected when the print job acquired in S901 was generated is the same as the print queue selected when the saved job 801 was generated. On the other hand, the print queue selected when the print job acquired in step S901 was generated is different from the print queue selected when the stored jobs 802 and 803 were generated.
[0044] Next, the extension application 203 displays a print preview screen based on the data acquired in S901 to S903 (S904). As shown in Fig. 4, the display items 401 on the print preview screen list the job information of the print job acquired in S901 and the job information of the saved job acquired in S903. The extension application 203 operates based on user instructions received via the displayed print preview screen. User instructions include changing print settings using display items 404 to 406, a print instruction using display item 407, and a cancel instruction using display item 408.
[0045] When the extension application 203 determines that it has received a print setting change instruction from the user (S905-Yes), it changes the print setting information based on the user's print setting change instruction (S906). Next, the extension application 203 updates the preview screen based on the changed print setting information (S907). On the preview screen of FIG. 4, the user changes the layout setting from off to 2 in 1 using the display item 405, selects Document 1 and Document 2 displayed in the display item 401, and enables the print job merge setting using the display item 406. The preview screen updated based on the above change instruction is shown in FIG. 10.
[0046] In response to the change of the job combination setting to ON (408 in FIG. 10), the extension application 203 combines the print jobs selected in the display item 401 in FIG. 4 to generate one combined job. Therefore, only one combined job is displayed in the display item 401 in FIG. 10. Also, in FIG. 10, the number of pages of the combined job is the sum of the number of pages of the two print jobs to be combined. In response to the change of the layout setting to 2 in 1 (407 in FIG. 10), the extension application 203 updates the preview image displayed in the print preview area 403 to a preview image that reflects the 2 in 1 setting. Note that the print preview area 403 in FIG. 10 displays a preview image in which the last page of Document1 before being combined and the first page of Document2 before being combined are laid out.
[0047] If the extension application 203 determines that it has received a cancel instruction from the user (S908-Yes), it instructs the print system of the OS to cancel the print job (S909). As a result, the print job acquired in S901 is terminated without printing, and the preview screen is cleared.
[0048] If the extension application 203 determines that it has received a print instruction from the user (S910-Yes), it checks whether the job combination setting is on (S911). If it determines that the job combination setting is on, the extension application 203 generates one intermediate data item based on the intermediate data items of the multiple print jobs selected in the display item 401 of FIG. 4 (S912). Next, the extension application 203 outputs the generated intermediate data item to the print data generation software 202 (S913).
[0049] If it is determined in step S911 that the job combination setting is off, the extension application 203 sends the intermediate data corresponding to the print job selected in the display item 401 to the print data generation software (step S914).
[0050] If it is determined in S603 that the print preview function is not on (S603-No), the extension application 203 acquires the intermediate data (S605) and outputs it to the print data generation software 202 (S606). As described above, the process in Fig. 6 starts upon receiving a print job. The intermediate data of the print job received at this time is acquired in S605.
[0051] This embodiment enables multiple print jobs to be combined and printed as a single print job in a system configuration such as that shown in FIG. 2 . Furthermore, in step S903, print jobs generated with the same print queue specified are acquired as print jobs to be combined, thereby improving user convenience. This configuration can also be implemented even if the preview unit 205 operates after processing by the print data generation software 202. In this case, the print data generated by the print data generation software 202 is used instead of the intermediate data. Furthermore, in a configuration in which the preview unit 205 operates after processing by the print data generation software 202, if intermediate data is desired to be handled, a method can be considered in which the processing by the print data generation software 202 is skipped. Since this method has been described above, detailed description is omitted. However, in this configuration, it is also possible for the print data generation software 202 to generate the final print data. The extension application 203 generates combined intermediate data based on the multiple intermediate data to be combined. The extension application 203 then outputs the combined intermediate data to the print data generation software 202. Upon receiving this output, the print data generation software 202 generates print data based on the combined intermediate data.
[0052] <Embodiment 2> In the first embodiment, the extension application 203 saves a saved job in the data storage area 206. Then, the extension application 203, which is started in response to the reception of another print job as a trigger, acquires the saved job saved in the data storage area 206, thereby enabling the handling of multiple print jobs and realizing job combination.
[0053] However, in the first embodiment, for example, a user specifies a print queue for printer A, enables the print preview function, and instructs printing. In response to this instruction, intermediate data A is generated, and a preview screen based on the intermediate data A is displayed. After this preview screen is displayed, the user desires to combine intermediate data A with subsequent intermediate data B. In this case, the user instructs the preview screen of FIG. 4 to save the job and presses the print button 407 to close the preview screen. The user then terminates the processing of the extension application 203. Thereafter, the user specifies a print queue for printer A, enables the print preview function, and instructs printing. In response to this instruction, intermediate data B is generated, and a preview screen based on intermediate data B is displayed. Job information for intermediate data A is also displayed in the display item 401 of the preview screen based on intermediate data B. In other words, if the user desires to perform combining processing after displaying the preview screen, the information processing apparatus must perform cumbersome control, such as temporarily terminating the processing of the extension application 203 and then restarting it. The present embodiment aims to improve this point.
[0054] Fig. 14 shows an example of a print setting screen provided by the print setting screen extension unit 204 of the extension application 203 in the second embodiment. In the example of Fig. 14, a setting 1401 for performing job combination is provided as a setting accompanying the setting of the print preview function provided by the preview unit 205. The job combination function is performed in conjunction with the print preview function, and the job combination setting 1401 can be set only when the print preview function is set to on.
[0055] Fig. 11 is a diagram showing the processing of the extension application 203 in the second embodiment. Note that Fig. 11 starts when the user presses the print button 1502 in Fig. 15 to instruct printing.
[0056] First, the extension application 203 checks whether the preview setting is on using the print setting information in the intermediate data generated based on the pressing of the print button 1502 (S1101). If it is determined that the preview setting is on, the extension application 203 checks whether the job combination setting is on (S1102). S1102 is also performed using the print setting information. The user instructs the settings of the print preview function and the job combination function via the print setting screen of FIG. 14. In other words, the print setting information is generated based on the setting contents of FIG. 14. Therefore, the extension application 203 can execute S1101 and S1102 using the print setting information.
[0057] If the job combination function and the print preview function are set (corresponding to Yes in S1102), the extension application 203 turns on the same UI processing setting, which indicates that the print job is handled by a single UI. Then, the extension application 203 sends a UI display request to the OS (S1103). The same UI processing setting is also called the display maintenance function.
[0058] If the job combination function is not used and the print preview function for a single print job is set (S1102: No), the extension application 203 turns off the same UI processing setting, which indicates that the print job is handled with a single UI. Then, the extension application 203 sends a UI display request to the OS (S1104).
[0059] If it is determined in S1101 that the print preview function is off, S1105 and S1106 are executed. Note that S1105-S1106 are the same processing as S606-S606, and therefore detailed description thereof will be omitted.
[0060] The OS performs UI startup processing upon receiving the UI display request transmitted in step S1103 or S1104 from the extension application 203. Fig. 12 is a flowchart showing the UI startup processing of the OS.
[0061] First, the OS determines whether the same UI processing setting specified together with the UI display request is on (S1201). If the same UI processing setting is off, a new UI is launched (S1202) because a print preview is to be displayed for each print job. As a result, the extension application 203 displays the screen shown in FIG. 4.
[0062] If the same UI processing setting is on, the OS checks whether the extension application 203 that was started in response to a print instruction to the same print queue is currently running (S1203).
[0063] If there is an extension application 203 running due to a print instruction to the same print queue (S1203-Yes), the OS enables the same UI processing setting and checks whether the extension application 203 is displaying a UI (S1204). Even if an extension application is running, if it is performing processing that does not display a UI, or if the extension application 203 is not processing multiple print jobs, there is no running extension application that can process the print job that triggered the start of the processing in Figure 12. Therefore, if it is determined No in S1204, the OS starts a new UI (S1202).
[0064] If the answer is Yes in S1204, the OS issues a job acquisition notification to the running extension application 203 so that the running extension application 203 can process the print job that triggered the start of the processing in Figure 12 (S1205).
[0065] 13 is a flowchart showing a process executed by the extension application 203. This is a process that the extension application 203 performs when a new UI is started in the UI start-up process.
[0066] First, the extension application 203 acquires intermediate data and job information of the print job that triggered its activation (S1301). Next, the extension application 203 displays a print preview screen based on the intermediate data acquired in S1301 (S1302). At this point, only one print job is displayed in the job list on the preview screen. In the first embodiment, the extension application 203 performs processing in response to a user instruction after displaying the preview screen, but in the second embodiment, the extension application 203 also performs processing in response to a job availability notification from the OS in addition to a user instruction. The job availability notification is issued by the OS in S1205.
[0067] When the extension application 203 receives the job obtainable notification in S1303, it obtains the intermediate data and job information of the notified print job (S1304). Specifically, when the extension application 203 executes processing based on the job obtainable notification, the OS passes the intermediate data and job information of the print job that triggered the issuance of the job obtainable notification to the extension application 203.
[0068] Next, the extension application 203 adds the print job acquired in S1304 to the job list. Furthermore, when the extension application 203 receives a job acquisition availability notification triggered by another print job, it repeats S1303 to S1305 to add the print job to the job list. This makes it possible to handle any number of print jobs in the print preview. Since S1306 to S1315 are the same processes as S905 to S914 in the first embodiment, a description thereof will be omitted. Upon receiving a print instruction from the user, the extension application 203 generates intermediate data by combining the intermediate data of multiple print jobs in the list and outputs the intermediate data to the print data generation software 202.
[0069] In this embodiment, by executing the above processes from S1303 to S1305, it becomes possible to add a print job to the display items 401 while maintaining the display of the preview screen (while the preview screen is being displayed).
[0070] <Other embodiments> The above-described embodiments can also be realized by executing the following process. That is, software (programs) that realize the functions of the above-described embodiments are supplied to a system or device via a network or various storage media. Then, a computer (CPU, MPU, processor, etc.) of the system or device reads and executes the program. The program may be executed by a single computer or may be executed by multiple computers in cooperation with each other. Furthermore, it is not necessary to realize all of the above-described processes by software; some or all of the processes may be realized by hardware such as an ASIC.
[0071] Furthermore, the CPU is not limited to one that performs all processing, and multiple CPUs may perform processing in cooperation with each other as appropriate. [Explanation of symbols]
[0072] 102 Printing device 202 Printing data generation software
Claims
[Claim 1] An information processing device, a storage processing means for storing in a storage area a first print job generated by specifying a first printing device and a second print job generated by specifying a second printing device different from the first printing device; an information processing device comprising: a display control means for displaying a screen that includes the job name of the received third print job and the job name of the first print job, but does not include the job name of the second print job, when a third print job including identification information corresponding to the first printing device is received while the first and second print jobs are stored in the storage area;
Citation Information
Patent Citations
Digital image forming device
JP1999243463A