Support programs and printing systems
A support program associates print settings with print jobs in a cloud print system, preventing incompatible job selections by displaying settings, thus ensuring printer compatibility.
Patent Information
- Application Number
- JP2022050422
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-03-25
- Publication Date
- 2025-12-23
- Estimated Expiration
- 2042-03-25
AI Technical Summary
In a cloud print system, the OS's standard general-purpose printing program does not restrict print settings, leading to a possibility of selecting incompatible print jobs when multiple printers with different functions access the cloud server.
A support program that associates a display string indicating print settings with a print job, allowing users to see the settings before selection, reducing the likelihood of selecting an incompatible job.
Reduces the chance of selecting an inappropriate print job by displaying print settings, ensuring compatibility with the selected printer.
Smart Images

Figure 0007790233000001 
Figure 0007790233000002 
Figure 0007790233000003
Abstract
Description
[Technical Field]
[0001] The technical field disclosed in this specification relates to a support program and a printing system that support control of a printer. [Background technology]
[0002] In recent years, a technology has been put into practical use that controls printers using a general-purpose printing program that is built into the operating system (OS) as standard, without using a printer driver. With this technology, when the OS detects a printer, it associates it with the OS's standard general-purpose printing program, and thereafter, when a print instruction for that printer is received, printing can be performed using the OS's standard general-purpose printing program without using a printer driver.
[0003] Also, there is known a technology related to a so-called cloud print system in which a cloud server on the Internet is treated as a virtual printer, a print job is submitted to the virtual printer from a general-purpose print program that is standard in the OS, and a printer connected to the cloud server retrieves the print job and executes printing. As a technology for selecting a print job to be executed in a printer, as in the cloud print system, for example, Patent Document 1 discloses a configuration in which a multifunction peripheral obtains and displays a list of print jobs associated with a logged-in user from a printer server, and further obtains the selected print job. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Japanese Patent Application Publication No. 2018-120334 Summary of the Invention [Problem to be solved by the invention]
[0005] In a cloud print system, multiple printers with different supported functions may access the cloud server, and the OS's standard general-purpose printing program that submits print jobs to the cloud server does not restrict print settings because it is unknown which printer will be used to print.As a result, when selecting a print job on a printer, there is a possibility that an incompatible print job may be selected, which leaves room for improvement. [Means for solving the problem]
[0006] A support program devised to solve the above-described problems is executable by a computer of an information processing device, and is a support program that supports a general-purpose print program pre-installed in an operating system of the information processing device, wherein the information processing device is connectable to a virtual printer provided on a server on a network, the server is capable of receiving and storing print jobs sent to the virtual printer, a printer connected to the server accepts a selection of a print job to be printed from the print jobs stored on the server, receives the selected print job from the server, and performs printing based on the received print job, and when a print instruction is output to the computer from an application program installed in the information processing device, the print instruction instructs the general-purpose print program to print an image using the virtual printer as a destination, Therefore, when a process is requested from the general-purpose printing program, a generation process is executed to obtain print settings associated with the print instruction from the general-purpose printing program and generate a display string indicating at least a part of the setting contents of the obtained print settings, and a transmission process is executed to obtain image data indicating the image to be printed from the general-purpose printing program and associate a print job that performs printing based on the obtained image data with the display string generated in the generation process and transmit them to the virtual printer, so that the print job transmitted to the virtual printer is stored in the server in association with the display string transmitted to the virtual printer, and based on a request from the printer to the server, the job name of the stored print job and the display string are associated and passed to the printer, and the job name and the display string passed to the printer are associated and displayed on the display of the printer.
[0007] When a general-purpose printing program receives a print instruction specifying a virtual printer as the destination, the support program of the above configuration associates a display string indicating at least a portion of the print settings with the print job and sends it to the virtual printer. The printer connected to the virtual printer receives the job name of the print job from the server that serves as the virtual printer, associating the display string with the job name, and displays the associated display string on its own display. This allows the user to know the print settings set for the print job on the printer before selecting the print job, reducing the possibility that the user will select a print job that cannot be executed by that printer.
[0008] An apparatus for realizing the functions of the support program, a control method, and a computer-readable storage medium storing the support program are also novel and useful. [Effects of the Invention]
[0009] The technology disclosed in this specification realizes a technology that reduces the possibility of an inappropriate print job being selected on a printer when printing is performed on a printer from an OS-standard general-purpose printing program via a cloud print system. [Brief explanation of the drawings]
[0010] [Figure 1] FIG. 1 is a schematic configuration diagram of a printing system. [Figure 2] FIG. 10 is a sequence diagram showing an example of a procedure when printing is selected. [Figure 3] FIG. 10 is a sequence diagram illustrating an example of a procedure when a print instruction is received. [Figure 4] FIG. 10 is a sequence diagram illustrating an example of a printing procedure. [Figure 5] FIG. 10 is a diagram showing a display example. [Figure 6] 10 is a flowchart illustrating an example of a procedure for a setting process. [Figure 7] FIG. 10 is a diagram illustrating an example of a configuration setting screen. [Figure 8]FIG. 10 is a sequence diagram illustrating an example of a procedure when a print instruction is received. [Figure 9] FIG. 10 is a sequence diagram illustrating an example of a printing procedure. [Figure 10] FIG. 10 is a diagram showing a display example. DETAILED DESCRIPTION OF THE INVENTION
[0011] A personal computer (hereinafter referred to as "PC") that uses the support program of this embodiment will be described in detail below with reference to the accompanying drawings. This specification discloses a printing system that causes a printer to print from a general-purpose printing program that is standard in the OS via a cloud print system.
[0012] (First embodiment) FIG. 1 is a schematic diagram of a printing system 9. The printing system 9 has a PC 1 and multiple printers 101-104. The printer 104 may be connected to the Internet 8, or may be directly connected to the PC 1. The PC 1 and the printers 101-103 can communicate with a cloud server 6 provided on the Internet 8. The cloud server 6 is provided with a virtual printer 5. The printers 101-104 are real physical printers, whereas the virtual printer 5 is a logical printer that is virtually treated as a single printer. For ease of explanation, hereinafter, a real physical printer may also be referred to as a "real printer."
[0013] The printing system 9 is a system that uses a cloud service provided by, for example, Microsoft, and realizes universal printing by printing via a virtual printer 5. In other words, the cloud server 6 can be provided by a company other than the printer manufacturer. The Internet 8 is an example of a network. The cloud server 6 is an example of a server.
[0014] As shown in Fig. 1, the PC 1 of this embodiment includes a controller 10 including a CPU 11 and a memory 12. The PC 1 is an example of an information processing device. The CPU 11 is an example of a computer. The PC 1 also includes a user interface (hereinafter referred to as "user IF") 13 and a communication interface (hereinafter referred to as "communication IF") 14, which are electrically connected to the controller 10. Note that the controller 10 in Fig. 1 is a collective term for hardware and software used to control the PC 1, and does not necessarily represent a single piece of hardware that actually exists in the PC 1.
[0015] The CPU 11 executes various processes in accordance with programs read from the memory 12 and based on user operations. Various programs and various data are stored in the memory 12. The memory 12 is also used as a work area when various processes are executed. A buffer provided in the CPU 11 is also an example of the memory 12. Note that the example of the memory 12 is not limited to a ROM, RAM, HDD, etc. built into the PC 1, but may also be a storage medium readable and writable by the CPU 11, such as a recording medium such as a CD-ROM or DVD-ROM.
[0016] The user IF 13 includes hardware for displaying a screen for notifying the user of information and hardware for accepting user operations. The user IF 13 may be a combination of a display 13a capable of displaying information and a mouse or keyboard having an input acceptance function, or may be a touch panel having the display 13a and an input acceptance function.
[0017] The communication IF 14 includes hardware for communicating with external devices such as the printer 104. The communication IF 14 is compatible with a communication standard such as Ethernet (registered trademark), Wi-Fi (registered trademark), or USB. The PC 1 may be connectable to the Internet via the communication IF 14. The PC 1 may include multiple communication IFs 14 compatible with multiple communication standards.
[0018] 1, the memory 12 of the PC 1 stores an operating system (hereinafter referred to as "OS") 21 including a general-purpose printing program 41, an auxiliary program 42, and various application programs (hereinafter referred to as "apps"). The OS 21 is, for example, Windows (registered trademark), macOS (registered trademark), Linux (registered trademark), iOS (registered trademark), or Android (registered trademark). The auxiliary program 42 is an example of a support program.
[0019] The PC 1 of this embodiment incorporates various applications, such as an information application 43. The information application 43 is, for example, a map application, a calendar application, or a browser, and has a function of displaying various information on the display 13a in response to a user request. The information application 43 is an example of an application program. Note that the information application 43 itself does not necessarily have a function of printing the displayed information.
[0020] The generic printing program 41 is an OS standard program provided together with the OS 21, and has a function for causing the printer 104 or the like to print information displayed on the display 13a by the information application 43 or the like. The generic printing program 41 of this embodiment is a program that includes a function for generating intermediate data based on image data to be printed. The generic printing program 41 supports functions that can be used in common by multiple models of printers provided by various printer vendors. Unlike printer drivers that are specific to various printers, the generic printing program 41 does not support all of the specific functions that various printers have, and the functions it supports are limited to generic ones.
[0021] The auxiliary program 42 is a program or group of programs that executes processing based on instructions from the OS 21 in conjunction with the processing of the general-purpose printing program 41, and is a program that supports the control of the target hardware. The auxiliary program 42 of this embodiment corresponds to the model of the printer 104 connected to the PC 1, and is started from the general-purpose printing program 41 when, for example, an instruction to cause the printer 104 to execute printing using the general-purpose printing program 41 is received. The auxiliary program 42 is, for example, called a print support app (abbreviated as PSA) or a hardware support app (abbreviated as HSA).
[0022] The auxiliary program 42 may be a combination of multiple programs that each accept an execution command, or a single program that can execute different processes in response to commands. The auxiliary program 42 may also be a program prepared by a printer vendor for each printer type. For example, an auxiliary program for inkjet printers and an auxiliary program for laser printers may be prepared. A separate auxiliary program may be prepared not only for each printer type, but also for each printer model or series of printer models.
[0023] As shown in Fig. 1, the PC 1 of this embodiment is connected to a cloud server 6 via the Internet 8. The cloud server 6 is an information processing device equipped with a communication function. The virtual printer 5 of the cloud server 6 receives and stores a print job from the PC 1 as one of the printers, and when a request to send a print job is received from the real printer, it can send the stored print job to the real printer.
[0024] When a real printer is connected, the OS 21 registers printer information, which is information about the real printer. For example, when a virtual printer is connected to the PC 1 as a new printer, the OS 21 registers the virtual printer as one of the printers that can be connected to the PC 1, just like a real printer.
[0025] Printers 101-104 are real printers that have at least a printing function and a communication function. Printers 101-104 receive print data and print settings from an external device and perform printing according to the print settings. Printers 101-104 are equipped with displays 111-114, respectively. Printer 104 is not connected to cloud server 6. Printers 101, 102, and 103 are communicatively connected to cloud server 6. When connected to cloud server 6, printers 101, 102, and 103, for example, request transmission of a print job stored in virtual printer 5, receive the print job from virtual printer 5, and execute printing based on the print job.
[0026] In this embodiment, printers 101, 102, and 103 support different functions. For example, printer 101 is a device that can handle paper sizes A3 and smaller and is capable of color printing and monochrome printing. Printer 102 is a device that can handle paper sizes A4 and smaller and is capable of monochrome printing only. Printer 103 is a device that can handle paper sizes A4 and smaller and is capable of color printing and monochrome printing.
[0027] At the time of installation, the auxiliary program 42 is registered in the general-purpose printing program 41 or the OS 21 as a program to be started based on the selection of the printer 104. The auxiliary program 42 is also registered in the general-purpose printing program 41 or the OS 21 as a program to be started based on the selection of the virtual printer 5.
[0028] The auxiliary program 42 of this embodiment has a function of generating a display string when a print instruction is received with the virtual printer 5 selected, associating the generated display string with the print job, and sending the associated string to the virtual printer 5. The display string is a string that indicates at least a part of the settings of the print settings, and is a string that can be displayed on the display of the real printer.
[0029] The memory 12 stores setting data 46. The setting data 46 is information indicating the configuration of a display character string generated by the auxiliary program 42. In this embodiment, the setting data 46 is stored in a predetermined memory area under a predetermined file name, but the path of the setting data 46 to be read may be registered in the auxiliary program 42. The configuration of the display character string is set in the setting data 46 by a setting process described below.
[0030] Next, the printing procedure including the operation of the auxiliary program 42 of this embodiment, which is the procedure performed by each program when printing is selected in the information application 43, will be described with reference to the sequence diagram of Fig. 2. Note that Fig. 2 and other sequence diagrams described later show the operation when the auxiliary program 42 corresponding to the printer 104 and the virtual printer 5 is installed in the PC 1.
[0031] Note that the processes, flowcharts, and sequence diagrams in the following explanation basically represent the processing of the CPU 11 in accordance with instructions written in a program such as the auxiliary program 42. The processing by the CPU 11 also includes hardware control using the API of the OS 21. In this specification, the operation of each program will be explained without a detailed description of the OS 21. Also, the term "acquire" is used as a concept that does not necessarily require a request.
[0032] At the beginning of the procedure, the user launches the information application 43 (A01). In response to a user instruction, the information application 43 displays an information screen containing various information on the display 13a (A02). If the user wants to print an image based on the displayed information screen, the user selects print on the information screen (A03). The information application 43 sends a display request and information screen data to the general-purpose printing program 41 of the OS 21 (A04). The information application 43 sends the information screen data in a file format that corresponds to its own capabilities. Therefore, the general-purpose printing program 41 receives image data of the image to be printed in a file format that corresponds to the capabilities of the data sender, such as the information application 43.
[0033] In response to the display request, the general-purpose print program 41 displays a general-purpose print setting screen on the display 13a (A06). The general-purpose print setting screen is a screen that accepts instructions for print settings and instructions for printing. The general-purpose print setting screen may display a preview of the data received from the information application 43 in A04.
[0034] The user can select a printer on the displayed general-purpose print setting screen (A07). For example, if the selected printer is printer 104 or virtual printer 5, the general-purpose print program 41 starts the auxiliary program 42 and requests processing corresponding to the printer selection (A08). In A08, the general-purpose print program 41 passes information about the selected printer and information about the print settings that were set when the printer was selected to the auxiliary program 42.
[0035] When the printer 104 is set as the printer to be normally used by the OS 21, the general-purpose printing program 41 displays the general-purpose printing setting screen with the printer 104 selected (A06) and starts the auxiliary program 42 (A08). That is, the printer 104 is automatically selected by the OS 21, and the general-purpose printing program 41 executes A08 based on the information of the selected printer 104. In this case, the user does not need to operate A07. The same applies when the virtual printer 5 is set as the printer to be normally used.
[0036] Alternatively, instead of the general-purpose printing program 41 displaying the general-purpose printing setting screen, the information application 43 may be configured to display the general-purpose printing setting screen. In this case, the information application 43 starts the general-purpose printing program 41 in response to the selection of printing in A03, obtains data to be displayed on the general-purpose printing setting screen from the general-purpose printing program 41, and displays the general-purpose printing setting screen on the display 13a. Then, in response to the selection of the printer 104 or the virtual printer 5 or in response to the selection of the printer 104 or the virtual printer 5 in A07, the information application 43 passes information about the selected printer to the general-purpose printing program 41. As a result, the general-purpose printing program 41 starts the auxiliary program 42 in A08.
[0037] In response to being started, the auxiliary program 42 requests the OS 21 for the capability information of the selected printer (A11). For example, if the printer 104 is selected in A07, the OS 21 receives the request from the auxiliary program 42, sends an acquisition request to the printer 104 requesting capability information, and acquires the capability information from the printer 104 (A12). The OS 21 passes the capability information acquired from the printer 104 to the auxiliary program 42 (A13). Having acquired the capability information, the auxiliary program 42 notifies the general-purpose printing program 41 of the completion of the processing requested in A08 (A14).
[0038] The OS 21 communicates with the printer 104, for example, using IPP (Internet Printing Protocol) communication. Note that the auxiliary program 42 may obtain capability information directly from the printer 104, for example, using MIB (Management Information Base), instead of making a request to the OS 21.
[0039] The capability information acquired from the printer 104, which is a real printer, includes information on parameters that can be set as print settings. The capability information also includes, for example, status information, information on remaining consumables, information on installed trays, paper information for each tray, and information on supported print resolutions. The printer 104 may also have a function for performing image processing based on a received print job and printing based on the processed data, such as a function for performing aggregate printing such as layout printing (N in 1), composite printing such as watermark printing, and colorant-saving printing. If the printer 104 has an image processing function that it can execute, the printer 104 may pass information about that function to the OS 21 as capability information. The capability information acquired from the printer 104 may also include information indicating post-processing, such as stapling, which secures printed materials with staples.
[0040] Furthermore, the capability information acquired from the printer 104 includes specific information for identifying the printer. An example of specific information is device identification information for identifying the device. Examples of device identification information include a hardware key unique to the printer and information possessed by printers manufactured by a specific printer manufacturer.
[0041] On the other hand, the capability information acquired from the virtual printer 5 also includes specification information. However, this specification information does not include device identification information. The specification information acquired from the virtual printer 5 may include identification information for the virtual printer 5. Furthermore, the capability information from the virtual printer 5 may or may not include information on print setting parameters.
[0042] In this embodiment, the timing and method of acquisition are the same for the identification information and the capability information, but they may be different. For example, the auxiliary program 42 may acquire the identification information from the printer 104 or the virtual printer 5 when searching for a device during installation and store it in the memory 12. For example, the auxiliary program 42 may acquire either the identification information or the capability information directly from the selected printer 104 or the virtual printer 5.
[0043] Next, the procedures performed by each program when a print instruction is received via the general-purpose print setting screen will be described with reference to the sequence diagrams in FIGS. 3 and 4. The sequence diagrams in FIGS. 3 and 4 illustrate the operations performed when a print instruction is received with the virtual printer 5 selected. For example, the general-purpose print setting screen has a print execution button, and a print instruction is received by operating the print execution button. Because the general-purpose print setting screen is displayed in response to a request from the information application 43, this means that operations on the general-purpose print setting screen are received by the information application 43. Therefore, in this embodiment, a print instruction is received by the information application 43, and a print instruction is output from the information application 43 to the general-purpose print program 41 in response to the instruction. Note that the information application 43 may also directly receive a print instruction separately from the general-purpose print setting screen, and in this case, a print instruction is also output from the information application 43 to the general-purpose print program 41 in response to the instruction.
[0044] 3, when a user issues a print command via the general-purpose print setting screen in which the printer 104 or virtual printer 5 is selected as the printer to be used for printing, and the general-purpose print program 41 receives a print command from the information application 43 (D01), the general-purpose print program 41 generates intermediate data by converting the format of the data on the information screen received in A04 into the format of intermediate data (D02). The intermediate data is, for example, XPS data.
[0045] The general-purpose printing program 41 starts the auxiliary program 42 and passes the generated intermediate data and the print settings accepted on the general-purpose printing setting screen, along with a print instruction, to the auxiliary program 42 (D03). In other words, the auxiliary program 42 is started in response to a processing request from the general-purpose printing program 41 in response to a print instruction specifying the printer 104 or virtual printer 5 as the destination.
[0046] The started auxiliary program 42 generates print data based on the intermediate data (D10). That is, the auxiliary program 42 rasterizes the intermediate data processed by the general-purpose printing program 41 to generate print data representing an image to be printed. For example, if the virtual printer 5 is selected, the print data generated in D11 is PDL data compatible with the virtual printer 5. If the printer 104 is selected, the print data generated in D11 is PDL data dedicated to the printer 104. Rasterization by the auxiliary program 42 corresponding to the printer 104 allows greater flexibility than rasterization by the general-purpose printing program 41, and there is a high possibility that print data suitable for printing on the printer 104 will be generated.
[0047] The auxiliary program 42 generates a print job (D11) that includes the print data generated in D10, the print settings received in D03, and the print command. The auxiliary program 42 assigns a job name to the print job. The job name may be assigned automatically by the auxiliary program 42, or may be assigned arbitrarily by a user operation.
[0048] The auxiliary program 42 performs a printer determination process (D12). The printer determination process is a process for determining whether the selected printer is a virtual printer based on the identification information included in the capability information. For example, if the identification information included in the capability information received from the general-purpose printing program 41 at A13 in FIG. 2 includes device identification information, the auxiliary program 42 determines that the selected printer is a real printer, not a virtual printer 5. On the other hand, for example, if the identification information included in the capability information received from the general-purpose printing program 41 at A13 in FIG. 2 does not include device identification information, or if the identification information includes identification information for the virtual printer 5, the auxiliary program 42 determines that the selected printer is a virtual printer 5.
[0049] If the auxiliary program 42 determines in the printer identification of D12 that the selected printer is the virtual printer 5 (alt: virtual printer), it reads the setting data 46 from the memory 12 (D21). Then, the auxiliary program 42 generates a display character string indicating at least a part of the setting contents of the print settings received from the general-purpose printing program 41 in D03 (D22). In this embodiment, the auxiliary program 42 generates a display character string from the setting contents of the print settings received from the general-purpose printing program 41 in D03 according to the configuration indicated by the setting data 46 read in D21. D22 is an example of the generation process.
[0050] The configuration of the display string indicated by the setting data 46 includes, for example, specification of the print setting items to be included in the display string, specification of the order of the print setting items to be included in the display string, and specification of characters corresponding to the parameters of the print setting items to be included in the display string.
[0051] For example, the setting data 46 includes information specifying "paper size" and "color printing" as setting items to be included in the display character string. The setting data 46 also includes information specifying an order in which "paper tray" is displayed first and "color printing" is displayed second. The setting data 46 also includes information specifying that the characters corresponding to the "A4 size" and "A3 size" parameters of "paper size" are "A4" and "A3," and that the characters corresponding to the "color" and "monochrome" parameters of "color printing" are "C" and "M."
[0052] For example, suppose the auxiliary program 42 receives print settings in D03 that set "A3 size" in the "Paper Size" field, set "Color" in the "Color Printing" field, and set "Double-Sided Printing" as a parameter for the "Double-Sided Printing" setting. In this case, the auxiliary program 42 includes the settings for "Paper Size" and "Color Printing" in the display string based on the setting data 46, but does not include the setting for "Double-Sided Printing" in the display string. The auxiliary program 42 arranges the setting parameters for "Paper Size" and "Color Printing," "A3 size" and "Color," in the order specified by the setting data 46. Based on the setting data 46, the auxiliary program 42 converts the parameters "A4 size" and "Color" set in the "Paper Size" and "Color Printing" fields into the characters "A4" and "C," respectively. In accordance with these conditions, the auxiliary program 42 generates a display string "A4_C" that indicates part of the print settings received in D03.
[0053] The auxiliary program 42 may also add a character string indicating the current date and time to a character string indicating the print settings, and use this as the display character string. By including the character string indicating the current date and time in the display character string, it is more likely that a unique display character string will be generated.
[0054] The auxiliary program 42 generates a new job name by concatenating the display string generated in D22 to the job name assigned to the print job in D11 (D23). The auxiliary program 42 changes the job name assigned to the print job in D11 to the new job name (D24). This associates the print job with the display string.
[0055] For example, suppose the job name of the print job generated in D11 is "JN1" and the display string corresponding to the print settings included in that print job is "A3_C." In this case, the auxiliary program 42 generates a new job name "A3_C_JN1" by concatenating the display string to the beginning of the job name "JN1" of the first print job. The auxiliary program 42 changes the job name "JN1" for the first print job to the new job name "A3_C_JN1."
[0056] The rules for concatenating the display string to the job name are not limited to those of this embodiment. That is, the display string may be concatenated to the end of the job name. However, by concatenating the display string to the beginning of the job name, the display string becomes easier to see when the new job name is displayed on the display of the actual printer.
[0057] If the virtual printer 5 is selected, the auxiliary program 42 sends the print job to the virtual printer 5 with a new job name (D32). D32 is an example of a sending process. Furthermore, the auxiliary program 42 returns a completion notification of the process requested by D03 to the general-purpose printing program 41 (D34).
[0058] Cloud server 6 equipped with virtual printer 5 receives the print job sent from PC 1 via the Internet 8 (see FIG. 1) and accumulates and stores it in its internal memory (D33). The print job has a new job name with the display string concatenated, and the original job name and the display string are stored in association with each other.
[0059] 4, when printer 102, which is a real printer, accepts the selection of a pull print function for receiving and printing a print job from virtual printer 5 of cloud server 6 (E11), it obtains a list of job names from virtual printer 5 (E12). In response to a request from printer 102, cloud server 6 creates a list of job names associated with the print job and sends it to printer 102. Printer 102 displays the received list on display 112 (E13).
[0060] The job name of the print job sent by the auxiliary program 42 to the virtual printer 5 has been changed to a new job name that combines the job name and the display string. Therefore, the new job name including the display string is displayed on the display 112 of the printer 102, as shown in Fig. 5(a). Note that the request from the printer 102 to the cloud server 6 may be, for example, a request to send a list showing the job names of all print jobs of the logged-in user, or may be a request to send individual job names of print jobs.
[0061] For example, as shown in FIG. 5( a), the display 112 displays the job names "A3_C_JN1" and "A4_M_JN2" of two print jobs. From the "A3" and "C" indications, the user can understand that the first print job with the job name "JN1" will be printed in color on A3-sized paper. Furthermore, from the "A4" and "M" indications, the user can understand that the second print job with the job name "JN2" will be printed in monochrome on A4-sized paper. The printer 102 is a device that supports paper sizes smaller than A4 and that only supports monochrome printing. From the contents displayed on the display 112, the user can see that the printer 102 cannot execute the first print job but can execute the second print job. Therefore, the user selects the second print job (E14) and inputs a command to the printer 102 to execute printing (E15).
[0062] Having accepted the print execution instruction, printer 102 obtains a print job corresponding to the new job name "A4_M_JN2" from cloud server 6 (E16). That is, printer 102 requests cloud server 6 to send a print job corresponding to the new job name "A4_M_JN2", and cloud server 6 sends the corresponding print job to printer 102. Upon receiving the print job, printer 102 prints the print data based on the print settings included in the print job (E17). As a result, a printed document is generated.
[0063] On the other hand, if a print instruction is received while the real printer 104 is selected, the auxiliary program 42 determines in the printer determination of D12 that the selected printer is not the virtual printer 5. When the auxiliary program 42 sends a print job to the printer 104, there is a low possibility that the print settings will be inappropriate. Alternatively, the auxiliary program 42 can check whether the print settings are acceptable before sending the print job to the printer 104. Therefore, when the printer 104 is selected, the auxiliary program 42 does not perform the processes of D21 to D24, and sends the print job generated in D11 to the printer 104. In other words, the auxiliary program 42 does not associate a display string with the print job and send it to the printer 104.
[0064] When the printer 104 receives a print job from the PC 1, the printer 104 accumulates and stores the print job in its internal memory, for example. When the printer 104 prints the accumulated print job, it displays the job name of the accumulated print job on its own display 114, as shown in FIG. 5(c), for example. The printer 104 receives a print job that is not associated with a display string. Therefore, only the job name assigned to the print job in D11 is displayed on the display 114. This allows the printer 104 to simply display the job name of the print job on the display 114, making it easy for the user to select a print job.
[0065] The general-purpose printing program 41 may transmit print data and print commands to the virtual printer 5 or printer 104. In other words, the auxiliary program 42 may pass the generated print data to the general-purpose printing program 41 so that the data is sent from the PC 1 to the virtual printer 5 or printer 104 as the destination. In this case, the general-purpose printing program 41 transmits the print data and the like received from the auxiliary program 42 to the virtual printer 5 or printer 104.
[0066] Next, the procedure of the setting process described above will be explained with reference to the flowchart of Fig. 6. Here, the explanation will be given assuming that the auxiliary program 42 corresponding to the printer 104 performs the setting process of Fig. 6.
[0067] When the auxiliary program 42 receives an instruction to set the configuration of the display character string, for example, on a utility screen provided by the auxiliary program 42, the CPU 11 displays, for example, a configuration setting screen D1 shown in FIG. 7 on the display 13a of the PC 1 (S1). The configuration setting screen D1 is a screen for accepting settings or changes to the configuration of the display character string. The configuration setting screen D1 is an example of a setting screen. For example, a general-purpose print setting screen has an advanced settings button. The auxiliary program 42 is launched by the general-purpose print program 41 by operating the advanced settings button, and can display the advanced settings screen. The advanced settings screen is a screen for accepting print settings for functions specific to the printer supported by the auxiliary program 42. In this embodiment, the configuration setting screen D1 is prepared separately from the advanced settings screen and is launched at any timing, but it may also be configured as a part of the advanced settings screen. For example, the advanced settings screen may have an operator for launching the configuration setting screen D1, and the configuration setting screen D1 may be displayed on the display 13a in response to operation of the operator.
[0068] For example, as shown in FIG. 7, the configuration setting screen D1 is provided with an item name display field 221, an item selection field 222, an order setting field 223, a character setting field 224, and a complete button SW1.
[0069] Item name display field 221 displays the print setting item names for all functions that auxiliary program 42 can support, item by item. Item selection field 222, order setting field 223, and character setting field 224 are provided for each item. In item selection field 222, items to be included in the display string are set. Print setting items that have been checked in item selection field 222 are included in the display string, and print setting items that have not been checked in item selection field 222 are not included in the display string. If there are too many characters to include, the display string may be difficult to understand, so the number of print setting items that can be included in the display string may be limited.
[0070] The order setting field 223 sets the order of the print setting items included in the display character string. The order may be set automatically by the auxiliary program 42 based on the frequency of changes, or the auxiliary program 42 may prepare several patterns depending on the purpose and allow the user to select the order, or the order may be set arbitrarily by the user. The character setting field 224 sets the characters to be displayed for the print setting items included in the display character string, for example. The character setting field 224 displays parameters that can be set for each item, and can accept character settings for each parameter. The characters may be set arbitrarily, or may be selectable from several options.
[0071] For example, as shown in the item "double-sided printing," for items that are not checked in the item selection field 222, operations for the order setting field 223 and the character setting field 224 may be restricted. This is because reducing the number of settings to be made reduces the effort required for setting.
[0072] 6, if the completion button SW1 in Fig. 7 is not operated, the CPU 11 determines that the setting is not to be completed (S2: NO). In this case, the CPU 11 accepts the setting of the configuration via the configuration setting screen D1.
[0073] 7 is operated, the CPU 11 determines that the setting is complete (S2: YES). In this case, the CPU 11 stores the configuration content received via the configuration setting screen D1 in the memory 12 as the setting data 46. If the memory 12 already has the setting data 46, the CPU 11 overwrites the setting data 46 with the new setting content.
[0074] As described above, when the general-purpose printing program 41 receives a print instruction specifying the virtual printer 5 as the destination, the auxiliary program 42 of this embodiment associates the display string with the print job by concatenating a display string indicating at least a portion of the print setting details with the job name of the print job, and then transmits the associated display string and print job to the virtual printer 5. For example, the printer 102 connected to the virtual printer 5 receives the job name of the print job from the cloud server 6 that serves as the virtual printer 5, associating the display string with the job name, and displays the associated display string and print job on its own display 112. This allows the user to know the print settings set for the print job in the printer 102 before selecting the print job, thereby reducing the possibility that the user will select a print job that cannot be executed by the printer 102.
[0075] Furthermore, the auxiliary program 42 of this embodiment concatenates a display string to the job name of the print job to create a new job name, and displays the new job name on the display 112 of the printer 102 connected to the virtual printer 5. The display 112 that displays the new job name displays the display string together with the job name. Therefore, no special processing is required in the printer 102 to display the display string, and the versatility of the present system is enhanced.
[0076] (Second embodiment) Next, a second embodiment of the technology disclosed in this specification will be described with reference to the drawings. FIG. 8 is a sequence diagram showing an example of the procedure when a print instruction is received. FIG. 9 is a sequence diagram showing an example of the printing procedure. FIG. 10 is a diagram showing an example display. In this embodiment, the auxiliary program 42 associates the print job with the display string by embedding the display string in the print job, and the job name of the print job is not changed. This differs from the first embodiment, in which the job name of the print job is changed to a new job name obtained by concatenating the job name and the display string. Here, differences from the first embodiment will be mainly described, and the same reference numerals as in the first embodiment will be used for configurations and processes common to the first embodiment.
[0077] 8, when a print instruction is received while virtual printer 5 is selected, auxiliary program 42 adds the display string generated in D22 to the print job generated in D11 (D123). For example, auxiliary program 42 can prevent the presence or absence of the display string from affecting printing by adding the display string generated in D22 to the extension area of the print job generated in D11.
[0078] The auxiliary program 42 sends the print job with the display string added in D123 to the virtual printer 5. That is, the auxiliary program 42 sends the print job to the cloud server 6 as the virtual printer 5 without changing the job name of the print job added in D11. When the cloud server 6 receives the print job via the Internet 8, it accumulates and stores it in its internal memory (D33).
[0079] 9, when the cloud server 6 receives a request from the printer 102 to send a list (E101), the cloud server 6 extracts the job name and the display character string from each stored print job (E102), associates them to create a list, and sends the list to the printer 102 (E103). In other words, the cloud server 6 sends the list to the printer 102, with the job name and the display character string separated.
[0080] The printer 102 processes the display string received from the virtual printer 5 (E111) and displays it on the display 112 in association with the print job (E113). For example, the printer 102 converts the characters included in the display string received separately from the job name into character information indicating a print setting item or parameter. For example, the printer 102 converts "A3" included in the display string to "A3 size" and "C" to "color." For example, the printer 102 converts "A4" included in the display string to "A4 size" and "M" to "monochrome." The printer 102 associates the converted character information with the job name and displays it as a list on the display 112, as shown in FIG. 10 . The printer 102 may convert the display string associated with the job name into image data indicating the print setting contents indicated by the display string, and preview the image data on the display 112 in association with the job name. The printer 102 may display the received display character string on the display 112 as is.
[0081] As described above, when the general-purpose printing program 41 receives a print instruction specifying the virtual printer 5 as the destination, the auxiliary program 42 of this embodiment adds a display string to the print job, associates the display string with the print job, and sends the print job to the virtual printer 5. For example, the printer 102 connected to the virtual printer 5 receives the display string from the cloud server 6 that serves as the virtual printer 5, separate from the job name of the print job. Rather than displaying the received job name as is on the display 112, the printer 102 converts the received display string into character information that specifically represents the settings of the print settings, associates it with the job name, and displays it on the display 112. This allows the user to know the contents of the print settings set for the print job in the printer 102 before selecting the print job, thereby reducing the possibility that the user will select a print job that cannot be executed on the printer 102.
[0082] Furthermore, the auxiliary program 42 of this embodiment adds a display string to the print job and sends the display string, separate from the job name, together with the print job to the virtual printer 5. This allows the printer 102 to obtain the display string from the virtual printer 5, separate from the job name, perform processing based on the obtained display string, and display the setting contents corresponding to the display string in an easy-to-understand manner for the user. Although the printer 102 needs to perform processing to display the display string, this increases the degree of freedom in the display format for displaying the setting contents of the print settings indicated by the display string.
[0083] Note that, as in the first embodiment, if auxiliary program 42 generates a new job name by concatenating a display string to the job name and changes the job name of the print job to the new job name, it becomes unnecessary for cloud server 6 to extract the display string from the print job and send it together with the job name to printer 102. Note that the new job name generated by auxiliary program 42 may be generated by a method other than concatenating a display string to the job name, as long as the display string is included in an identifiable manner, for example.
[0084] The embodiments disclosed in this specification are merely examples and do not limit the present invention in any way. Therefore, the technology disclosed in this specification can naturally be improved and modified in various ways without departing from the spirit and scope of the invention. For example, the device connected to PC 1 is not limited to a printer, but may be any device with printing capabilities, such as a multifunction printer, copier, or fax machine. Furthermore, the number of real printers connected to PC 1 and the number of real printers connected to virtual printer 5 are not limited to those shown in the figures.
[0085] 3, a display string that does not include a string indicating the current date and time may be generated. However, by generating a display string that indicates at least part of the print setting contents and the current date and time, the auxiliary program 42 also displays the date and time when a print instruction was issued to the real printer connected to the virtual printer 5. As a result, the user can distinguish between print jobs even if print jobs with the same print settings are sent.
[0086] Furthermore, even when a print instruction is received with a real printer selected, the auxiliary program 42 may generate a display string and associate the display string with the print job and send it to the real printer. However, when a print instruction is received with a real printer selected, the auxiliary program 42 may not send a display string to the real printer, which allows the real printer to display the job name simply and makes it easier for the user to select the job name on the real printer.
[0087] The structure of the display character string may be predetermined. However, if the structure of the display character string can be arbitrarily set by the setting process shown in Fig. 6, the display character string that suits the user's preference can be displayed on the real printer connected to the virtual printer 5.
[0088] The auxiliary program 42 may also include all print setting items in the display string. However, if all setting items are included in the display string, the display string will become lengthy and the display on the actual printer will become cumbersome. Therefore, it is preferable that the auxiliary program 42 allows the user to select whether or not to include each print setting item in the display string through the setting process shown in Figure 6. This allows the display string to be displayed in an easy-to-read manner on the actual printer.
[0089] Additionally, the auxiliary program 42 does not have to be able to set the order of the print setting items to be included in the display string. However, if the display string is long, it may be difficult to understand the settings of the items necessary for judgment. Therefore, it is preferable that the auxiliary program 42 be able to set the order to be included in the display string using the setting process shown in Fig. 6. This allows the items necessary for judgment to be displayed on the actual printer in a way that is easy for the user to understand.
[0090] Furthermore, the auxiliary program 42 does not have to be able to set characters corresponding to the parameters of the print setting items to be included in the display string. However, since it may be difficult for users to remember the characters corresponding to the parameters of each print setting item, the auxiliary program 42 may be able to set characters that the user has decided for each parameter using the setting process shown in Figure 6. This makes it easier for users to understand the meaning of the characters included in the display string, making it easier for users to understand the settings on the actual printer.
[0091] Furthermore, the cloud server 6 may be a server installed on the Internet 8 by a manufacturer that provides the auxiliary program 42, or may be a commercial server such as OneDrive (registered trademark) or DropBox (registered trademark).
[0092] In the embodiment, only the printing operation is described in detail as the operation of the auxiliary program 42, but the auxiliary program 42 may have other roles as well. The program that executes the processing of this embodiment is not limited to the auxiliary program 42, and may be any program that receives instructions from the OS 21 or the general-purpose print program 41 when printing using the general-purpose print program 41. For example, it may be a print workflow application (Print workflow) whose specifications have been made public by Microsoft.
[0093] Furthermore, the execution timing of the auxiliary program 42 is not limited to that of the embodiment. For example, the auxiliary program 42 may be executed in response to a direct execution instruction from the OS 21, or may be a resident auxiliary program 42. If the auxiliary program 42 is resident, it may simply receive an execution command and perform the above-described operation.
[0094] Furthermore, in any flowchart disclosed in the embodiments, the execution order of multiple processes in any multiple steps can be changed or they can be executed in parallel as long as no contradiction occurs in the processing content.
[0095] The processes disclosed in the embodiments may be executed by hardware such as a single CPU, multiple CPUs, or ASIC, or a combination thereof. The processes disclosed in the embodiments may be realized in various ways, such as a recording medium on which a program for executing the processes is recorded, or a method. [Explanation of symbols]
[0096] 1...PC, 2...printer, 11...CPU, 21...OS, 41...general-purpose printing program, 42...auxiliary program
Claims
1. A support program that can be executed by a computer of an information processing device and supports a general-purpose print program that is pre-installed in an operating system of the information processing device, wherein the information processing device is connectable to a virtual printer provided on a server on a network, the server is capable of receiving and storing print jobs sent to the virtual printer, and a printer connected to the server is capable of accepting a selection of a print job to be printed from among the print jobs stored in the server, receiving the selected print job from the server, and performing printing based on the received print job; The computer, When a print instruction is output from an application program installed in the information processing device, the print instruction being to cause the general-purpose print program to print an image using the virtual printer as a destination, and processing is requested from the general-purpose print program, a generation process of acquiring print settings associated with the print instruction from the general-purpose print program and generating a display character string indicating at least a part of the setting contents of the acquired print settings; a transmission process for acquiring image data representing the image to be printed from the general-purpose printing program, and associating a print job for printing based on the acquired image data with the display character string generated in the generation process and transmitting the resulting print job to the virtual printer; the print job transmitted to the virtual printer is stored in the server in association with the display character string transmitted to the virtual printer, and based on a request from the printer to the server, the job name of the stored print job and the display character string are transmitted to the printer in association with each other, and the job name transmitted to the printer and the display character string are displayed on a display of the printer in association with each other. A support program configured to:
2. 2. The support program according to claim 1, In the transmission process, the image data is acquired from the general-purpose printing program, the display string generated in the generation process is concatenated with the job name of the print job that performs printing based on the acquired image data to form a new job name, thereby associating the print job with the display string, and the print job with the new job name is sent to the virtual printer, the print job sent to the virtual printer is stored in the server, and based on the request from the printer to the server, the new job name of the stored print job is passed to the printer, and the new job name of the print job is displayed on the display of the printer. A support program configured to:
3. 2. The support program according to claim 1, In the transmission process, the image data is acquired from the general-purpose printing program, the display string is added to the print job that performs printing based on the acquired image data, and the print job with the display string added is sent to the virtual printer; the print job sent to the virtual printer is stored in the server, and based on the request from the printer to the server, the job name of the stored print job and the display string added to the print job are associated with each other and sent to the printer; and the job name and the display string sent to the printer are associated with each other and displayed on the display of the printer. A support program configured to:
4. 4. The support program according to claim 1, The computer, When a print instruction is output from an application program installed in the information processing device, and the print instruction is to the general-purpose print program to print an image to a printer other than the virtual printer as a destination, and processing is requested from the general-purpose print program, acquires image data indicating the image to be printed from the general-purpose printing program, and executes a process for transmitting a print job to the printer, which prints based on the acquired image data, without associating the display character string with the image data; A support program configured to:
5. 5. The support program according to claim 1, In the generation process, acquires the print settings associated with the print instruction from the general-purpose print program, and generates the display character string indicating at least a part of the settings of the acquired print settings and the current date and time. A support program configured to:
6. 6. The support program according to claim 1, The print settings include multiple items, The computer, displaying a setting screen on a display of the information processing device, in which a configuration of the display character string generated in the generation process is set for each item of the print setting, and executing a setting process in which setting data indicating the configuration of the display character string received on the setting screen is stored in a memory of the information processing device; In the generation process, acquires the print settings associated with the print instruction from the general-purpose print program, and generates the display character string indicating the setting content for each item of the acquired print settings in accordance with the configuration of the display character string indicated in the setting data stored in the memory. A support program configured to:
7. 7. The support program according to claim 6, On the setting screen, it is possible to select whether or not to include each item of the print setting in the display character string as the configuration of the display character string, In the generation process, acquires the print settings associated with the print instruction from the general-purpose print program, and generates the display character string indicating the setting contents of the items selected to be included in the display character string in the setting data stored in the memory from among the acquired print setting items. A support program configured to:
8. The support program according to claim 6 or 7, On the setting screen, an order of the print setting items to be included in the display character string can be set as the configuration of the display character string; In the generation process, acquires the print settings associated with the print instruction from the general-purpose print program, and generates the display character string for each setting content of the acquired print settings in accordance with the order indicated in the setting data stored in the memory. A support program configured to:
9. A support program according to any one of claims 6 to 8, On the setting screen, characters corresponding to parameters of the print setting items to be included in the display character string can be set as the configuration of the display character string, In the generation process, acquires the print settings associated with the print instruction from the general-purpose print program, and generates the display character string for each setting content of the acquired print settings in accordance with the characters indicated in the setting data stored in the memory. A support program configured to:
10. A printing system having a support program installed in an information processing device and a printer connected to a server, the support program is executable by a computer of the information processing device and is a program that supports a general-purpose printing program that is pre-installed in an operating system of the information processing device, and the information processing device is connectable to a virtual printer provided in the server on a network; The support program is installed in the computer of the information processing device. When a print instruction is output from an application program installed in the information processing device, the print instruction being to cause the general-purpose print program to print an image on the virtual printer, and processing is requested from the general-purpose print program, a generation process of acquiring print settings associated with the print instruction from the general-purpose print program and generating a display character string indicating at least a part of the setting contents of the acquired print settings; a transmission process for acquiring image data representing the image to be printed from the general-purpose printing program, and associating a print job for printing based on the acquired image data with the display character string generated in the generation process and transmitting the resulting print job to the virtual printer; Execute The server storing the print job transmitted to the virtual printer and the display character string in association with each other, and, based on a request from the printer, transferring the stored job name of the print job and the display character string to the printer in association with each other; The printer After outputting the request to the server, acquire the job name of the print job and the display character string passed from the server, associate the acquired job name with the display character string and display them on a display of the printer, and accept an instruction to execute the print job corresponding to the job name. A printing system configured to:
Citation Information
Patent Citations
Information processing device, control method for the same, and program
JP2006072739A
Management device, information processing system and control program
JP2018120334A
Server system
JP2021086426A