Storage medium, information processing device and printing method

By executing support programs on the information processing device, processing and synthesizing image data, generating suitable printing data and sending it to the printer, the problem that the all-in-one printing function is not supported in the general printing program based on the OS standard is solved, and the all-in-one printing function is realized without increasing the printer load.

CN114424159BActive Publication Date: 2025-03-25BROTHER KOGYO KK
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202080066605.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-09-30
Filing Date
2020-07-01
Publication Date
2025-03-25
Estimated Expiration
2040-07-01

AI Technical Summary

Technical Problem

In a universal printing program based on OS standards, the all-in-one printing function is not supported, resulting in inconvenience to users, and achieving all-in-one printing through printer-side processing will increase the load on the printer.

Method used

By executing a support program on a computer of the information processing device, receiving image data, performing synthesis processing of image data, reducing multiple pages of images and placing them on one side of paper, generating synthetic image data, and sending the rasterized print data to the printer, achieving all-in-one printing.

Benefits of technology

It realizes that the information processing device supports all-in-one printing without increasing the printer load, which improves the user experience and reduces the storage and processing requirements of the printer.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114424159B_ABST
    Figure CN114424159B_ABST
Patent Text Reader

Abstract

The present invention provides a technology for causing a printer to perform multi-in-one printing in an information processing device installed with an OS standard printing program in a manner that does not increase the load on the printer. When there is a print instruction output from an editing application (43) for causing a printer (2) to perform image printing for a universal printing program (41) installed in an OS (21), and in a job based on the print instruction, the printer (2) performs N-in-1 printing in which N pages of images are printed on one side of a paper, an auxiliary program (42) causes a CPU (11) of a PC (1) to receive image data about a plurality of pages of images from the universal printing program (41), generates image data of a composite image obtained by reducing the N pages of the received image data and arranging them to be placed on one side of a paper, and causes the PC (1) to send print data rasterized based on the image data of the composite image to the printer (2) as the sending destination.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The technical field disclosed in this specification relates to a support program for supporting control of a printer, an information processing device, and a printing method. Background Art

[0002] As a technique for controlling a printer from an information processing device such as a personal computer, for example, Patent Document 1 discloses a structure in which an all-in-one printing job setting for printing multiple pages of images on one sheet of paper is input to a printer using a printer driver.

[0003] Prior art literature

[0004] Patent Literature

[0005] Patent Document 1: Japanese Patent Application Publication No. 2017-121695 Summary of the invention

[0006] Problems to be solved by the invention

[0007] In recent years, a technology for controlling a printer using a print program installed in a standard operating system (hereinafter referred to as "OS") instead of using the aforementioned printer driver has been put into practical use. In this technology, the OS associates the printer with the OS standard print program, and then, when a print instruction for the printer is received, printing based on the OS standard print program can be achieved without using the printer driver.

[0008] However, in printing based on the OS standard universal printing program, when selecting printing parameters, the selectable setting items are generally registered in the OS standard printing program. Therefore, all-in-one printing may not be supported, causing inconvenience to the user. In addition, although all-in-one printing can also be performed by processing on the printer side, in this case, the amount of memory installed in the printer will increase, etc., which will increase the load on the printer.

[0009] This specification discloses a technique for causing a printer to perform all-in-one printing without increasing the load on the printer in an information processing device in which an OS-compliant print program is installed.

[0010] Means for solving problems

[0011] A support program completed for the purpose of solving the above-mentioned problem is a support program that can be executed by a computer of an information processing device and corresponds to a printer connected to the information processing device. It is characterized in that when there is a print instruction output from an application installed in the information processing device to a universal print program pre-installed in the operating system of the information processing device to cause the printer to print an image, and in a job based on the print instruction, the printer is caused to perform all-in-one printing of N (N is a natural number greater than 2) pages of images on one side of a paper, the computer is caused to execute: image data receiving processing for receiving image data about a plurality of pages of images from the universal print program; synthesis processing for generating, for the image data received through the image data receiving processing, composite image data of a composite image obtained by reducing the plurality of pages of images and arranging the N pages of images in a manner of being placed on one side of a paper; and output processing for causing the information processing device to send print data rasterized based on the composite image data to the printer as a sending destination.

[0012] The support program disclosed in this specification receives image data about a plurality of pages of images from the universal printing program 41 when a print instruction is output from an application to the universal printing program and the printer is caused to perform all-in-one printing of images in a job based on the print instruction, and generates composite image data in which N pages of images are arranged so as to be placed on one side of a paper. Furthermore, the support program causes the information processing device to send print data based on the composite image data to the printer. Thus, even when the universal printing program does not support all-in-one printing, the printer can be caused to perform all-in-one printing.

[0013] An information processing device installed with the above-mentioned program, a computer-readable storage medium storing the program, and a control method for realizing the functions of the program are also novel and useful.

[0014] Effects of the Invention

[0015] According to the technology disclosed in this specification, a technology is realized for causing a printer to perform all-in-one printing without increasing the load on the printer in an information processing device in which an OS-compliant print program is installed. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] Figure 1 is a block diagram showing the electrical structure of a PC.

[0017] Figure 2 This is a sequence diagram showing an example of the operation procedure of the first embodiment.

[0018] Figure 3 This is a sequence diagram showing another example of the operation procedure of the first embodiment.

[0019] Figure 4 This is a sequence diagram showing another example of the operation procedure of the first embodiment.

[0020] Figure 5 This is a sequence diagram showing another example of the operation procedure of the first embodiment.

[0021] Figure 6 This is a sequence diagram showing an example of the operation procedure of the second embodiment.

[0022] Figure 7 This is a sequence diagram showing another example of the operation procedure of the second embodiment.

[0023] Figure 8 This is a sequence diagram showing another example of the operation procedure of the second embodiment.

[0024] Fig. 9 This is a sequence diagram showing another example of the operation procedure of the second embodiment.

[0025] Fig.10 This is a sequence diagram showing an example of the operation procedure of the third embodiment. DETAILED DESCRIPTION

[0026] Next, a personal computer (hereinafter referred to as "PC") using the program of the first embodiment will be described with reference to the attached Figure 1 This embodiment discloses an embodiment of a program executed by a PC connected to a printer having a printing function.

[0027] For example, Figure 1 As shown, the PC 1 of this embodiment includes a controller 10, a user interface (hereinafter referred to as "UI") 20 and a communication interface (hereinafter referred to as "communication IF") 30. The UI 20 and the communication IF 30 are electrically connected to the controller 10. The PC 1 is an example of an information processing device. The printer 2 is a device having a printing function, and is connected to the PC 1 via local communication or network communication.

[0028] The UI 20 includes hardware for displaying various types of information and receiving user input instructions. The UI 20 may be a touch panel having both display and input receiving functions, or a combination of a display having a display function and a keyboard and a mouse having an input receiving function.

[0029] The communication IF30 includes hardware for communicating with external devices such as the printer 2 and hardware for accessing the Internet. The communication IF30 may also include a plurality of interfaces with different communication methods. For example, there are network communication and USB communication as the communication method. In addition, it may be either wired communication or wireless communication.

[0030] The controller 10 includes a CPU 11 and a memory 12. The CPU 11 is an example of a computer. The memory 12 includes a ROM, a RAM, and a nonvolatile memory, and stores programs such as various application programs (hereinafter referred to as "applications"), various data, etc. The CPU 11 executes various processes according to the programs read from the memory 12 and based on the instructions of the user. It should be noted that Figure 1 The controller 10 in the description is a generic term for hardware and software used for controlling the PC 1 , and is not limited to representing a single piece of hardware actually existing in the PC 1 .

[0031] An example of the memory 12 may be a computer-readable storage medium. A computer-readable storage medium is a non-transitory medium. In addition to the above-mentioned examples, non-transitory media also include recording media such as CD-ROMs and DVD-ROMs. In addition, non-transitory media are also tangible media. On the other hand, an electrical signal that transmits a program downloaded from a server on the Internet is a computer-readable signal medium that is a type of computer-readable medium, but is not included in a non-transitory computer-readable storage medium.

[0032] In the memory 12, for example, Figure 1 As shown, the OS 21 including the universal printing program 41, the auxiliary program 42 and the editing application 43 are stored. The auxiliary program 42 is an example of a support program. The editing application 43 is an example of an application program. For example, the OS 21 is Microsoft Windows (registered trademark), MacOS (registered trademark), and Linux (registered trademark). It should be noted that in addition to the contents shown in the figure, the memory 12 also stores various data including information on the printer 2 being connected, various programs such as a browser, etc.

[0033] The universal print program 41 is an OS-compliant program for causing various printers such as the printer 2 to execute printing in response to instructions from the PC 1. The universal print program 41 of this embodiment is a program including a function of generating print data used by a corresponding printer for printing based on image data to be printed.

[0034] The universal print program 41 supports functions that can be used in common by various printer models provided by various printer vendors. The universal print program 41 does not support all functions inherent to various printers, but supports only common functions.

[0035] The auxiliary program 42 is a program or a program group that is attached to the processing of the universal printing program 41 and executes processing based on instructions from the OS 21, and is an application that supports the control of the target hardware. The auxiliary program 42 of this embodiment corresponds to the model of the printer 2 connected to the PC 1, and for example, when an instruction to use the universal printing program 41 to make the printer 2 execute printing is received, it is started from the universal printing program 41. The auxiliary program 42 is called, for example, a hardware support application (abbreviated as HSA).

[0036] The auxiliary program 42 receives various commands from the universal printing program 41 and executes various processes based on the received commands. The auxiliary program 42 can execute different processes according to the content of the execution command from the universal printing program 41. It should be noted that the auxiliary program 42 can be a combination of multiple programs that receive execution commands respectively, or it can be a single program that can execute different processes according to the commands.

[0037] It should be noted that the auxiliary program may also be a program prepared by the supplier of the printer for each type of printer. For example, an auxiliary program for inkjet printers and an auxiliary program for laser printers are prepared. The supplier of the printer registers the auxiliary program with the platform provided by the supplier of OS21 according to the steps specified by the supplier of OS21. When a printer is newly connected to PC1 and the auxiliary program corresponding to the printer is registered on the platform, OS21 downloads the auxiliary program from the server storing the auxiliary program and installs it on PC1. In addition, OS21 establishes a correspondence between the identification information of the installed auxiliary program and the printer information of the newly connected printer, and stores it in the memory 12. It is not limited to each type of printer, and there may be auxiliary programs prepared for each model of printer and each series of printer models.

[0038] The editing application 43 is, for example, an application for creating and editing image data or document data. The editing application 43 is, for example, Microsoft Word or Powerpoint. The editing application 43 may also be an application provided by a supplier of the printer 2 or the like. The editing application 43 receives a user operation including an instruction to cause the printer 2 to perform a predetermined action. Specifically, the editing application 43 receives, for example, a print instruction to cause the printer 2 to execute printing via the UI 20.

[0039] It should be noted that the processing in the implementation method and each processing step of the flowchart basically represent the processing of the CPU 11 that obeys the command recorded in the auxiliary program 42 or the like. That is, the processing such as "judgment", "extraction", "selection", "calculation", "determination", "determination", "obtaining", "receiving", and "control" in the following description represent the processing of the CPU 11. The processing of the CPU 11 also includes hardware control using the API of the OS 21. In this specification, the detailed description of the OS 21 is omitted to illustrate the actions of each program. That is, in the following description, the description of the subject "Program B controls hardware C" may also mean "Program B uses the API of the OS 21 to control hardware C". In addition, sometimes the processing of the CPU 11 that obeys the command recorded in the program is recorded using an omitted expression. For example, sometimes the program is omitted and recorded as "CPU 11 performs". In addition, sometimes the processing of the CPU 11 that obeys the command recorded in the program is recorded using an expression that omits the CPU as "Program A performs".

[0040] It should be noted that "obtain" is used as a concept that does not regard request as a must. That is, the process of CPU11 receiving data without request is also included in the concept of "CPU11 obtaining data". In addition, "data" in this manual is represented by a bit string that can be read by a computer. Moreover, data with the same substantial meaning but different formats are processed as the same data. The same applies to "information" in this manual. In addition, "request" and "instruction" are concepts that indicate that information that is being requested or information that is being instructed is output to the other party. In addition, information that is being requested or information that is being instructed is also abbreviated as "request" or "instruction".

[0041] In addition, the process of determining whether information A indicates event B by CPU 11 is sometimes described conceptually as “determining whether it is event B based on information A”. The process of determining whether information A indicates event B or event C by CPU 11 is sometimes described conceptually as “determining whether it is event B or event C based on information A”.

[0042] Next, regarding the printing steps including the actions of the auxiliary program 42 of this method, refer to Figure 2 The sequence diagram of is used to illustrate. The PC 1 of this method can enable the printer 2 to implement Nin1 printing by using the auxiliary program 42. Nin1 printing is an all-in-one printing of the content that is printed on one side of a sheet of paper by reducing and arranging images of N pages of image data. N is a natural number greater than 2. The universal printing program 41 of this method may not correspond to the print setting of Nin1 printing. In addition, the printer 2 of this method may not have the function of using this device to perform Nin1 printing processing.

[0043] First, the editing application 43 receives the designation of the image to be printed and the instruction input for printing execution via the UI 20 (arrow A). For example, the editing application 43 receives the instruction to set the image to be printed as a document edited by the editing application 43 or a photo read by the editing application 43. Then, the editing application 43 that has received the printing instruction transmits a printing execution notification indicating the content of the received printing instruction to the OS 21. It should be noted that in Figure 2 In the figure, the operation of OS 21 is omitted.

[0044] When receiving the print execution notification using the universal print program 41, the OS 21 causes the universal print program 41 to execute and transmits the print execution notification (arrow B) to the universal print program 41. The universal print program 41 can obtain various information included in the print instruction (for example, information indicating the printer to be printed, information indicating the print setting set by the editing application 43, and information indicating the image data to be printed) from the print execution notification.

[0045] The universal printing program 41 determines the printer designated as the device to execute printing based on the information included in the print execution notification. If the designated printer is the printer 2, since the auxiliary program 42 corresponding to the printer 2 is stored in the memory 12, the universal printing program 41 outputs an execution command for the processing of the auxiliary program 42 to activate the auxiliary program 42 (arrow C). That is, when the universal printing program 41 detects the print execution notification, the execution command to the auxiliary program 42 is output from the universal printing program 41.

[0046] The auxiliary program 42 executes various processes based on the contents of the execution command from the universal print program 41. In the execution command of arrow C, the universal print program 41 passes the print setting received from the editing application 43 to the auxiliary program 42, and requests verification of the print setting.

[0047] The auxiliary program 42 verifies the print setting (arrow D) based on the execution command of arrow C. The auxiliary program 42 determines whether the received print setting matches the function of the printer 2, and in the case of an incompatible print setting including, for example, selecting a paper size not set in the printer 2, the print setting is invalidated.

[0048] The auxiliary program 42 of this method can receive changes and additional settings of the print settings during the execution of the process of arrow D. The following describes a case where the auxiliary program 42 receives the settings of Nin1 printing through arrow D. That is, the print settings transmitted through arrow C do not include the settings of Nin1 printing, and the print settings at the end of the process of arrow D include the settings of Nin1 printing. The auxiliary program 42 may also receive instructions on the arrangement order of the images of N pages in one side in addition to the settings of Nin1 printing.

[0049] It should be noted that, in the case where the settings for Nin1 printing can be received by the editing application 43, the settings for Nin1 printing can also be included in the print settings transmitted to the auxiliary program 42 via the arrow C. For example, in the case where the universal print program 41 supports Nin1 printing, the print settings including the settings for Nin1 printing can also be transmitted via the arrow C. Alternatively, even in the case where the universal print program 41 does not support Nin1 printing, for example, the settings for Nin1 printing can be transmitted from the editing application 43 to the auxiliary program 42 via a storage area that can be used in common by the editing application 43 and the auxiliary program 42.

[0050] After completing the verification process of the print setting, the auxiliary program 42 transmits a termination notification to the universal printing program 41. Since the auxiliary program 42 of this method includes the setting of Nin1 printing in the print setting, the information requesting N pages of image data is transmitted to the universal printing program 41 before the termination notification (arrow E), and then the termination notification is transmitted (arrow F).

[0051] It should be noted that, when the print setting received through arrow C includes the setting of Nin1 printing, the auxiliary program 42 invalidates the setting of Nin1 printing. Furthermore, the print setting transmitted from the auxiliary program 42 to the universal print program 41 through arrow F does not include the setting of Nin1 printing. In this embodiment, even if the universal print program 41 supports Nin1 printing, the universal print program 41 does not perform processing for Nin1 printing.

[0052] The universal printing program 41 generates intermediate data by converting the form of the image data included in the print execution notification of arrow B into the form of intermediate data based on the end notification indicating the end of verification of the print setting received from the auxiliary program 42, and generates a print job including the intermediate data (arrow G). There are various types of image data specified by the editing application 43, and the universal printing program 41 converts the received image data into intermediate data suitable for generating print data. It should be noted that if the image data included in the print execution notification is data suitable for generating print data, the generation of the intermediate data can be omitted, and the image data can be directly set as the intermediate data. The intermediate data is, for example, XPS data.

[0053] In response to the request received by arrow E, the universal printing program 41 sequentially transmits N pages and print settings from the first page of the generated intermediate data to the auxiliary program 42, outputs an execution command for the auxiliary program 42 to operate the auxiliary program 42 (arrow H). Through the processing of arrow H, the auxiliary program 42 receives the intermediate data. The processing of arrow H is an example of image data receiving processing. By receiving images in units of N pages, the auxiliary program 42 has less communication with the universal printing program 41 than when receiving images page by page, and the processing of the auxiliary program 42 becomes simple.

[0054] The auxiliary program 42 generates intermediate data (arrow I) by reducing each image based on the received intermediate data of N pages, and arranges them at appropriate positions for Nin1 printing and synthesizes them (arrow J). The processing of arrow J is an example of synthesis processing. The auxiliary program 42 generates intermediate data for one side of the sheet by repeating arrows I and J N times.

[0055] For example, if N is 4, the auxiliary program 42 will reduce the intermediate data of 4 pages in such a way that each side becomes 1 / 2 size, and arrange the four reduced intermediate data at four places on one side to synthesize and generate one intermediate data. The reduction and configuration can also be in the opposite order. It should be noted that the auxiliary program 42 rotates the image 90 degrees or 270 degrees as needed during configuration. When the generation of the intermediate data of one side of the sheet is completed, the auxiliary program 42 transmits an end notification (arrow K) to the universal printing program 41.

[0056] The universal printing program 41 receives the end notification from the auxiliary program 42 and transmits an execution command (arrow L) to the auxiliary program 42. The execution command of arrow L is a command requesting the generation of print data based on the generated intermediate data. The auxiliary program 42 generates print data for one side of the sheet using the generated intermediate data for one side of the sheet (arrow M). The processing of arrow M is an example of the first rasterization processing. The processing of arrow K and the processing of arrow L can also be omitted by agreement between the universal printing program 41 and the auxiliary program 42.

[0057] In arrow M, the auxiliary program 42 rasterizes the intermediate data to generate print data. The print data generated by arrow M is data in a format that can be used by the printer 2 for printing, for example, PDL data specific to the model of the printer 2. By using the auxiliary program 42 for rasterization, the degree of freedom is greater than that of using the universal print program 41, and the possibility of generating print data suitable for printing in the printer 2 is high. It should be noted that the print data generated by arrow M may also be data in a format that can be used for printing in a printer other than the model of the printer 2.

[0058] It should be noted that the intermediate data can be temporarily passed from the auxiliary program 42 to the general printing program 41 together with the end notification of arrow K, and then passed from the general printing program 41 to the auxiliary program 42. It can also be retained by the auxiliary program 42 after the end notification of arrow K and used in the generation of printing data in the auxiliary program 42.

[0059] The auxiliary program 42 transmits the generated print data for one side of the sheet and the request to send the print data with the printer 2 as the sending destination to the general printing program 41 (arrow N). Based on the request of arrow N, the general printing program 41 sends the received print data and print command to the printer 2 (arrow O). Since the print data is sent to the printer 2 through the processing of arrow N, the processing of arrow N is an example of output processing. Thus, in the printer 2 that has received the print command, the printing of the image of the print data is executed according to the print data assigned to the print command. By sending the print data for one side of the sheet to the printer 2 each time it is generated, the waiting time until the first sheet is printed is shortened compared to the case of waiting for the generation of the print data for all pages and sending them.

[0060] It should be noted that since the print settings received by arrow F do not include the settings for Nin1 printing, the universal print program 41 sends the print data at arrow O with the print settings not including the settings for Nin1 printing. Therefore, even if the printer 2 is a device capable of performing Nin1 printing processing in the device itself, it is impossible for the printer 2 to further perform Nin1 processing.

[0061] After the auxiliary program 42 transmits the sending request at the arrow N to the universal printing program 41, it periodically sends a signal to inquire about the status of the printer 2. The printer 2 responds to the status according to the inquiry, and when the reception of the print data is completed, it sends a reception completion notification indicating that the reception is completed to the auxiliary program 42 (arrow P). The reception completion notification is a notification indicating that the reception is completed, and the printing may not be completed. It should be noted that the reception completion notification can also be transmitted to the auxiliary program 42 via the universal printing program 41.

[0062] When the auxiliary program 42 receives the reception completion notification sent from the printer 2, it requests the universal printing program 41 to send the intermediate data of the next N pages and the execution command of the auxiliary program 42 (arrow Q). As a result, the universal printing program 41 transmits the execution command of arrow H together with the intermediate data of the next N pages to the auxiliary program 42. It should be noted that in the second and subsequent arrows H, the universal printing program 41 may also transmit the execution command that does not include the print setting.

[0063] When the number of remaining pages in the image specified by the print instruction is greater than or equal to 1 and less than N, the universal print program 41 transmits information indicating the number of remaining pages and intermediate data of the remaining pages to the auxiliary program 42 through an execution command indicated by arrow H. Alternatively, the universal print program 41 may transmit information indicating that it is the final page of the image. The auxiliary program 42 reduces the image (arrow I) and arranges (arrow J) the image as described above, arranges a blank image in the portion less than N pages, and synthesizes the image.

[0064] After passing all the intermediate data to be the target of the print instruction to the auxiliary program 42, when receiving a request for an execution command based on the arrow Q, the universal print program 41 passes information indicating that all the intermediate data have been passed to the auxiliary program 42 (arrow R). The information passed by the arrow R may be, for example, an execution command without the intermediate data attached. The auxiliary program 42 receives the information of the arrow R and passes an end notification to the universal print program 41 (arrow S). Thus, the universal print program 41 ends the processing of the print execution notification received from the editing application 43 through the arrow B.

[0065] It should be noted that, when the auxiliary program 42 is a combination of multiple programs and each program needs to be notified of its end, the universal printing program 41 may notify each program as indicated by arrow R. Furthermore, each program of the auxiliary program 42 preferably notifies the universal printing program 41 as indicated by arrow S.

[0066] As described in detail above, according to the auxiliary program 42 of this method, when the PC 1 receives a print instruction including a print setting of Nin1 printing, it receives N pages of intermediate data from the general printing program 41 each time, reduces and arranges the images using the auxiliary program 42, and generates a composite image in which the N pages of images are placed on one side of the sheet. Thus, even if the general printing program 41 and the printer 2 do not support Nin1 printing, a print product based on Nin1 printing can be obtained. Furthermore, since the print data is generated by the auxiliary program 42, the print data that makes use of the performance of the printer 2 can be generated, and since the print data for one side is sent each time, the time from receiving the print instruction to outputting the first print product can be shortened.

[0067] It should be noted that in the first mode, through arrow N, the auxiliary program 42 transmits the print data and the sending request to the universal printing program 41, and the universal printing program 41 sends it to the printer 2, but for example Figure 3 As shown, the auxiliary program 42 may also be sent to the printer 2. That is, instead of Figure 2 The arrow N and the arrow O, in Figure 3 In the example of FIG. 1 , when the generation of the print data is completed, the auxiliary program 42 sends the generated print data for one side to the printer 2 (arrow Oa). The processing of arrow Oa is an example of output processing. Even in this way, since the print data for one side is sent each time it is generated, the time until the first sheet is printed can be shortened.

[0068] like Figure 3 As shown, when the auxiliary program 42 sends print data to the printer 2, the auxiliary program 42 does not need to periodically send a signal to inquire about the status of the printer 2, and only needs to inquire once after the sending is completed. In addition, after the print data is sent, the auxiliary program 42 can also receive not only the information on whether the print data is sent successfully or not, but also information related to the status of the printer 2, and pass it to the OS 21.

[0069] In addition, the generation of print data may also be performed by the general print program 41. For example, Figure 4 As shown, the synthesized intermediate data may be transmitted to the universal printing program 41 (arrow Ka) by the end notification, instead of Figure 2 The processing of arrow L and arrow M generates print data (arrow T) based on the intermediate data received by the universal printing program 41. Figure 2The print data generated by the universal print program 41 is data in a format that can be used for printing in various printers including the printer 2, such as PWGRaster data and PDF data. If the universal print program 41 is used for rasterization, the processing of the auxiliary program 42 is reduced, and the design time of the auxiliary program 42 is reduced.

[0070] exist Figure 4 In the example, after the generation of the print data is completed, the universal print program 41 transmits an execution command (arrow La) to the auxiliary program 42. The auxiliary program 42 receives the execution command and transmits a sending request (arrow Na) to the universal print program 41, and the universal print program 41 sends the generated print data to the printer 2 (arrow O). Figure 2 Unlike the arrow N, the auxiliary program 42 does not transmit the print data. Even in this way, Nin1 printing can be achieved through the printer 2.

[0071] Alternatively, the universal printing program 41 may generate the printing data, and the auxiliary program 42 may send the printing data to the printer 2. Figure 5 As shown, the universal printing program 41 may also transmit the execution command and the generated print data for one side to the auxiliary program 42 (arrow Lb) after the generation of the print data is completed. Figure 4 As shown in arrows Na and O, the auxiliary program 42 sends the received print data for one side to the printer 2 (arrow Oa). Even in this manner, Nin1 printing can be realized by the printer 2.

[0072] Next, regarding the printing process including the operation of the auxiliary program 42 of the second mode, refer to Figure 6 The process of generating and sending print data in this method is different from that in the first method. Figure 6 In the following description, the same reference numerals are used to denote the same processes as those in the first embodiment, and the description thereof is omitted. In addition, the same and different processes as those in the first embodiment are given reference numerals with lowercase suffixes, and the differences from the first embodiment are described.

[0073] In this embodiment, first, the processing of arrows A to G is executed. However, the auxiliary program 42 of this embodiment replaces the notification ( Figure 2Then, after the universal printing program 41 generates intermediate data (arrow G), it adds the intermediate data of all pages and print settings and transmits an execution command (arrow Ha) to the auxiliary program 42. Through the processing of arrow Ha, the auxiliary program 42 receives the intermediate data. The processing of arrow Ha is an example of image data receiving processing.

[0074] The auxiliary program 42 reduces (arrow I) and arranges (arrow J) images in units of N pages starting from the first page for the received intermediate data of all pages, and generates intermediate data for one side of the sheet. The auxiliary program 42 repeatedly performs the process of generating intermediate data synthesized by reduction and arrangement, and generates intermediate data for all sheets based on the received intermediate data of all pages. In this method, the process of arrow J is also an example of synthesis processing.

[0075] When the generation of the intermediate data for the entire sheet is completed, the auxiliary program 42 transmits a termination notification (arrow Kb) to the universal print program 41. In the termination notification of arrow Kb, the auxiliary program 42 transmits the generated intermediate data for the entire sheet to the universal print program 41. Receiving the termination notification of arrow Kb, the universal print program 41 generates print data for the entire sheet based on the received intermediate data (arrow Ta).

[0076] When the generation of the print data is completed, the universal printing program 41 transmits an execution command (arrow Lc) to the auxiliary program 42. The execution command of arrow Lc is information notifying that the generation of the print data for the entire sheet is completed, and is information requesting the next sending request (arrow Na). The auxiliary program 42 receives the execution command of arrow Lc and transmits a sending request (arrow Na) to set the printer 2 as the sending destination. In the sending request of arrow Na, the auxiliary program 42 does not transmit the print data. In addition, in the case where the generation and sending of the print data can be requested centrally through the end notification of arrow Kb, the processing of arrows Lc and Na can also be omitted.

[0077] The universal printing program 41 receives the transmission request indicated by arrow Na and transmits the print data for the entire sheet generated by arrow Ta to the printer 2 (arrow Ob). The processing indicated by arrow Ob is an example of output processing. In this method, since the print data for the entire page is transmitted after being generated, it is easier to grasp the final page than in the first method in which the print data for one page is transmitted each time it is generated, and the number of communications with the printer 2 can be reduced, so the processing becomes simple.

[0078] When the printer 2 receives the print data, it sends a notification indicating that the reception is completed to the auxiliary program 42 (arrow P). The auxiliary program 42 receives the notification of arrow P and transmits the completion notification to the universal printing program 41 (arrow S). It should be noted that in this embodiment, the notifications of arrows P and S may not be required.

[0079] As described in detail above, according to the auxiliary program 42 of this method, when the PC 1 receives a print instruction including a print setting for Nin1 printing, the auxiliary program 42 receives the intermediate data of all pages from the universal printing program 41, generates the intermediate data of the entire sheet, and transmits it to the universal printing program 41. Thus, even if the universal printing program 41 and the printer 2 do not support Nin1 printing, a printout based on Nin1 printing can be obtained. Furthermore, the auxiliary program 42 of this method collectively receives all the images of multiple pages of the printing object, and after generating the composite image for all the pages, it responds to the universal printing program 41, so the communication with the universal printing program 41 is small, and the processing becomes simple.

[0080] In this embodiment, as in the first embodiment, there are many variations. Figure 7 As shown, the auxiliary program 42 may also send the print data. When the generation of the print data is completed by the arrow Ta, the universal printing program 41 transmits the execution command including the generated print data of the entire sheet to the auxiliary program 42 (arrow Ld). The auxiliary program 42 sends the received print data to the printer 2 (arrow Oc). The processing of the arrow Oc is an example of output processing. Even in this way, since the print data of the image amount of all pages is sent after being generated, the number of communications with the printer 2 can be reduced.

[0081] In addition, the auxiliary program 42 may also generate the print data. Figure 8 As shown, after the generation of the composite image, the auxiliary program 42 transmits an end notification (arrow Kc) that does not include the intermediate data of the synthesis. The universal printing program 41 receives the end notification of arrow Kc and transmits an execution command (arrow Le) to the auxiliary program 42. The auxiliary program 42 receives the execution command of arrow Le and generates the print data of the entire sheet based on the generated intermediate data of the entire sheet (arrow Ma). The process of arrow Ma is an example of the second rasterization process.

[0082] Then, the auxiliary program 42 transmits the transmission request together with the generated print data for the entire sheet to the universal printing program 41 (arrow Nb), and the universal printing program 41 transmits the print data for the entire sheet to the printer 2 (arrow Ob). In this way, the auxiliary program 42 rasterizes, so that print data suitable for the printer 2 can be generated.

[0083] Alternatively, the auxiliary program 42 may generate the print data and send it to the printer 2. Fig. 9 As shown, the universal printing program 41 receives the end notification of the arrow Kc and transmits the execution command (arrow Le) to the auxiliary program 42. The auxiliary program 42 receives the execution command of the arrow Le and generates the print data of the entire sheet (arrow Ma). Furthermore, the auxiliary program 42 sends the generated print data to the printer 2 (arrow Oc). In this way, the print data suitable for the printer 2 can be generated, and the number of communications is small.

[0084] Next, regarding the printing process including the operation of the auxiliary program 42 of the third format, refer to Fig.10 The process of generating print data in this method is different from that in the first method and the second method. Fig.10 In the following description, the same reference numerals are used for the same processes as those in the first embodiment and the second embodiment, and the description thereof is omitted. In addition, the same reference numerals are used for the same and different processes as those in the first embodiment and the second embodiment, and the differences from the embodiments are described.

[0085] In this embodiment, first, the processing of arrows A to G is executed. However, the auxiliary program 42 of this embodiment does not perform a notification requesting N pages of image data ( Figure 2 Then, after the universal printing program 41 generates the intermediate data, it transmits the execution command and the print setting (arrow Hb) to the auxiliary program 42. Since no intermediate data is required, the execution command of the arrow Hb does not include the intermediate data, unlike the arrow H of the first method and the arrow Ha of the second method.

[0086] The auxiliary program 42 receives the execution command of the arrow Hb, and first requests one page of intermediate data from the universal printing program 41 (arrow Eb). In response to the request from the auxiliary program 42, the universal printing program 41 transmits one page of intermediate data (arrow Hc). Through the processing of arrow Hc, the auxiliary program 42 receives the intermediate data. The processing of arrow Hc is an example of image data receiving processing. It should be noted that when the universal printing program 41 is a structure that transmits one page of intermediate data each time even if no request is made, the request of arrow Eb may not be made.

[0087] The auxiliary program 42 reduces the image of the received intermediate data of one page (arrow I), arranges it at a suitable position and synthesizes it (arrow J). The auxiliary program 42 repeats the processing of arrows Eb, Hc, I, and J N times to generate intermediate data of one side of the sheet. After that, there are four methods, similar to the first method. Fig.10 In the first embodiment, Figure 4As shown, the universal print program 41 generates and transmits the print data (arrows Ka to P). As described in the first embodiment, the auxiliary program 42 may generate or transmit the print data.

[0088] When receiving the reception completion notification sent from the printer 2, the helper program 42 requests the universal print program 41 to send an execution command for the helper program 42 (arrow Qa). In this embodiment, the helper program 42 does not request intermediate data via arrow Qa.

[0089] When receiving a request for an execution command according to arrow Qa after passing all the intermediate data to the auxiliary program 42, the universal print program 41 passes information indicating that all the intermediate data has been passed to the auxiliary program 42 (arrow R). The auxiliary program 42 receives the information of arrow R and passes a termination notification to the universal print program 41 (arrow S). Thus, the universal print program 41 terminates the processing of the print execution notification received from the editing application 43 according to arrow B.

[0090] As described in detail above, a printout based on Nin1 printing can also be obtained by using the auxiliary program 42 of the third method. According to this method, the universal printing program 41 is configured to transfer the intermediate data to the auxiliary program 42 one page at a time, and Nin1 printing can be realized even when a request to transfer N pages or all pages at once is not received. Furthermore, if the print data is generated by the universal printing program 41, the auxiliary program 42 can be simplified, and if the print data is sent to the printer 2 for each side, the time from receiving the print instruction to outputting the first printout can be shortened.

[0091] It should be noted that the embodiments disclosed in this specification are merely illustrative and do not limit the present invention in any way. Therefore, the technology disclosed in this specification can of course be variously improved and deformed within the scope of its purpose. For example, the device connected to PC1 is not limited to a printer, but can be a device with a printing function such as a multifunction machine, a copier, or a FAX (fax) device. In addition, there can be more than two printers connected to PC1.

[0092] In addition, in each embodiment, only the processing related to Nin1 printing is described as the operation of the auxiliary program 42, but the auxiliary program 42 may also have other functions. For example, regarding print settings other than Nin1 printing, the print settings that can be processed by the universal print program 41 may be processed by the universal print program 41, and the print settings that cannot be processed by the universal print program 41 may be processed by the auxiliary program 42.

[0093] The auxiliary program 42 may be any program that receives instructions from the OS 21 or the universal print program 41 when printing is performed using the universal print program 41. For example, the auxiliary program 42 may be a print workflow application (Print workflow) whose specifications have been made public by Microsoft Corporation.

[0094] In the embodiment, the auxiliary program 42 is executed by outputting an execution command of the auxiliary program 42 from the universal printing program 41, but the execution timing of the auxiliary program 42 is not limited thereto. For example, the auxiliary program 42 may be executed by directly receiving an execution command from the OS 21, or the auxiliary program 42 may be a resident auxiliary program. In the case of being resident, the auxiliary program 42 may receive an execution command and perform the aforementioned operation.

[0095] Furthermore, in any flowchart disclosed in the embodiment, the execution order of a plurality of processes in any plurality of steps can be arbitrarily changed or they can be executed in parallel within a range where there is no contradiction in the processing contents.

[0096] In addition, the processes disclosed in the embodiments may be executed by a single CPU, multiple CPUs, hardware such as an ASIC, or a combination thereof. In addition, the processes disclosed in the embodiments may be implemented in various forms such as a recording medium or method having a program for executing the processes recorded thereon.

[0097] Description of Reference Numerals

[0098] 1 PC

[0099] 2 Printer

[0100] 11 CPU

[0101] 21 OS

[0102] 41 Universal Printing Program

[0103] 42 Auxiliary programs

[0104] 43 Edit Application

Claims

1. A storage medium storing a support program executable by a computer of an information processing device, wherein the support program is an application corresponding to a printer connected to the information processing device, wherein: A universal printing program is pre-installed in the operating system of the information processing device, and the universal printing program can control the printer to print without using a printer driver. The support program receives commands from the universal printing program and executes various processes based on the received commands. When there is a print instruction outputted from an application program installed in the information processing apparatus to cause the printer to print images for the universal printing program, and in a job based on the print instruction, the printer is caused to perform all-in-one printing of printing N pages of images on one side of a sheet of paper, the computer is caused to execute: An image data receiving process for receiving image data on a plurality of pages of images from the universal printing program; a synthesis process for generating, for the image data received by the image data receiving process, synthetic image data representing a synthetic image obtained by reducing the plurality of pages of images and arranging the N pages of images so as to be placed on one side of a paper; and output processing for causing the information processing device to send print data rasterized based on the synthesized image data to the printer as a sending destination, Where N is a natural number greater than 2, causing the computer to execute the following first rasterization processing: whenever the synthesized image data for one side of the paper is generated by the synthesizing processing, rasterizing the generated synthesized image data to generate the print data, In the output process, Whenever the print data for one side of the paper is generated by the first rasterization process, the generated print data for one side of the paper is transferred to the universal printing program, and the universal printing program sends the transferred print data to the printer.

2. A storage medium storing a support program executable by a computer of an information processing device, the support program being an application corresponding to a printer connected to the information processing device, wherein: A universal printing program is pre-installed in the operating system of the information processing device, and the universal printing program can control the printer to print without using a printer driver. The support program receives commands from the universal printing program and executes various processes based on the received commands. When there is a print instruction outputted from an application program installed in the information processing apparatus to cause the printer to print images for the universal printing program, and in a job based on the print instruction, the printer is caused to perform all-in-one printing of printing N pages of images on one side of a sheet of paper, the computer is caused to execute: An image data receiving process for receiving image data on a plurality of pages of images from the universal printing program; a synthesis process for generating, for the image data received by the image data receiving process, synthetic image data representing a synthetic image obtained by reducing the plurality of pages of images and arranging the N pages of images so as to be placed on one side of a paper; and output processing for causing the information processing device to send print data rasterized based on the synthesized image data to the printer as a sending destination, Where N is a natural number greater than 2, In the output process, Whenever the composite image data for one side of a paper is generated through the composite processing, the generated composite image data is passed to the universal printing program, the universal printing program rasterizes the passed composite image data to generate the print data, and sends the generated print data to the printer.

3. A storage medium storing a support program executable by a computer of an information processing device, the support program being an application corresponding to a printer connected to the information processing device, wherein: A universal printing program is pre-installed in the operating system of the information processing device, and the universal printing program can control the printer to print without using a printer driver. The support program receives commands from the universal printing program and executes various processes based on the received commands. When there is a print instruction outputted from an application program installed in the information processing apparatus to cause the printer to print images for the universal printing program, and in a job based on the print instruction, the printer is caused to print N pages of images on one side of a sheet of paper in an all-in-one printing, the computer is caused to execute: An image data receiving process for receiving image data on a plurality of pages of images from the universal printing program; a synthesis process for generating, for the image data received by the image data receiving process, synthetic image data representing a synthetic image obtained by reducing the plurality of pages of images and arranging the N pages of images so as to be placed on one side of a paper; and output processing for causing the information processing device to send print data rasterized based on the synthesized image data to the printer as a sending destination, Where N is a natural number greater than 2, In the output process, Whenever the composite image data for one side of a paper is generated through the synthesis process, the generated composite image data is passed to the universal printing program, the print data is received after the composite image data is rasterized by the universal printing program, and the received print data is sent to the printer.

4. The storage medium according to any one of claims 1 to 3, characterized in that In the image data receiving process, The universal printing program is requested to input image data regarding an image of each of the N pages, and the image data is received from the universal printing program in units of the N pages.

5. A storage medium storing a support program executable by a computer of an information processing device, the support program being an application corresponding to a printer connected to the information processing device, wherein: A universal printing program is pre-installed in the operating system of the information processing device, and the universal printing program can control the printer to print without using a printer driver. The support program receives commands from the universal printing program and executes various processes based on the received commands. When there is a print instruction outputted from an application program installed in the information processing apparatus to cause the printer to print images for the universal printing program, and in a job based on the print instruction, the printer is caused to perform all-in-one printing of printing N pages of images on one side of a sheet of paper, the computer is caused to execute: An image data receiving process for receiving image data on a plurality of pages of images from the universal printing program; a synthesis process for generating, for the image data received by the image data receiving process, synthetic image data representing a synthetic image obtained by reducing the plurality of pages of images and arranging the N pages of images so as to be placed on one side of a paper; and output processing for causing the information processing device to send print data rasterized based on the synthesized image data to the printer as a sending destination, Where N is a natural number greater than 2, In the output process, The composite image data of the multi-page image amount generated by the synthesis processing is obtained, and the obtained composite image data of the multi-page image amount is passed to the universal printing program. The universal printing program rasterizes the passed composite image data of the multi-page image amount to generate the print data, and after completing the generation of the print data of the multi-page image amount, the generated print data of the multi-page image amount is sent to the printer.

6. A storage medium storing a support program executable by a computer of an information processing device, the support program being an application corresponding to a printer connected to the information processing device, wherein: A universal printing program is pre-installed in the operating system of the information processing device, and the universal printing program can control the printer to print without using a printer driver. The support program receives commands from the universal printing program and executes various processes based on the received commands. When there is a print instruction outputted from an application program installed in the information processing apparatus to cause the printer to print images for the universal printing program, and in a job based on the print instruction, the printer is caused to perform all-in-one printing of printing N pages of images on one side of a sheet of paper, the computer is caused to execute: An image data receiving process for receiving image data on a plurality of pages of images from the universal printing program; a synthesis process for generating, for the image data received by the image data receiving process, synthetic image data representing a synthetic image obtained by reducing the plurality of pages of images and arranging the N pages of images so as to be placed on one side of a paper; and output processing for causing the information processing device to send print data rasterized based on the synthesized image data to the printer as a sending destination, Where N is a natural number greater than 2, In the output process, Obtain the composite image data of the multi-page image amount generated by the synthesis processing, pass the obtained composite image data of the multi-page image amount to the universal printing program, receive the print data after the composite image data is further rasterized by the universal printing program, and after receiving the print data of the multi-page image amount, send the received print data of the multi-page image amount to the printer.

7. A storage medium storing a support program executable by a computer of an information processing device, the support program being an application corresponding to a printer connected to the information processing device, wherein: A universal printing program is pre-installed in the operating system of the information processing device, and the universal printing program can control the printer to print without using a printer driver. The support program receives commands from the universal printing program and executes various processes based on the received commands. When there is a print instruction outputted from an application program installed in the information processing apparatus to cause the printer to print images for the universal printing program, and in a job based on the print instruction, the printer is caused to perform all-in-one printing of printing N pages of images on one side of a sheet of paper, the computer is caused to execute: An image data receiving process for receiving image data on a plurality of pages of images from the universal printing program; a synthesis process for generating, for the image data received by the image data receiving process, synthetic image data representing a synthetic image obtained by reducing the plurality of pages of images and arranging the N pages of images so as to be placed on one side of a paper; and output processing for causing the information processing device to send print data rasterized based on the synthesized image data to the printer as a sending destination, Where N is a natural number greater than 2, causing the computer to execute the following second rasterization processing: acquiring the synthesized image data corresponding to the plurality of pages of images generated by the synthesizing processing, and rasterizing the acquired synthesized image data to generate the print data corresponding to the plurality of pages of images, In the output process, After the print data for the plurality of pages of images is generated through the second rasterization process, the generated print data for the plurality of pages of images is transferred to the universal printing program, and the universal printing program sends the transferred print data to the printer.

8. The storage medium according to any one of claims 5 to 7, characterized in that: In the image data receiving process, requesting the universal printing program to input image data of all images of the plurality of pages of images, The computer is caused to execute the output process after the generation of the synthesized image data for all the images is completed through the synthesizing process.

9. An information processing device comprising a computer, wherein: The operating system of the information processing device has a pre-installed program, namely, a universal printing program. The information processing device is installed with: a support program that is an application corresponding to a printer connected to the information processing device; and an application program that can input a print instruction for causing the printer to print an image via the universal print program. The universal printing program can control the printer to print without using a printer driver. The support program receives commands from the universal printing program and executes various processes based on the received commands. When the print instruction is output from the application and the printer is caused to perform all-in-one printing of N pages of images on one side of a sheet in a job based on the print instruction, the computer executes: An image data receiving process of receiving image data on a plurality of pages of images from the universal printing program through the support program; A synthesis process for generating, by the support program, synthetic image data representing a synthetic image obtained by reducing the plurality of pages of images and arranging the N pages of images so as to fit on one side of a paper, for the image data received by the image data receiving process; and output processing for causing the information processing device to send print data rasterized based on the composite image data to the printer as a destination through the support program, Where N is a natural number greater than 2, The computer performs the following first rasterization processing: whenever the synthesized image data for one side of the paper is generated by the synthesizing processing, the generated synthesized image data is rasterized to generate the print data; In the output process, Whenever the print data for one side of the paper is generated by the first rasterization process, the generated print data for one side of the paper is transferred to the universal printing program, and the universal printing program sends the transferred print data to the printer.

10. A printing method, Connect a printer to the information processing device. The operating system of the information processing device has a pre-installed program, namely, a universal printing program, which can control the printer to print without using a printer driver. The information processing device is installed with: a support program that is an application corresponding to the printer connected to the information processing device; and an application program that can input a print instruction for causing the printer to print an image via the universal print program. The support program receives commands from the universal printing program and executes various processes based on the received commands. causing the printer to execute printing based on print data generated by the information processing device, The printing method is characterized in that When the print instruction is output from the application and the printer is caused to execute all-in-one printing of N pages of images on one side of a sheet in a job based on the print instruction, receiving, by the support program, image data on a plurality of pages of images from the universal printing program, The support program generates, for the received image data, composite image data representing a composite image obtained by reducing the plurality of pages of images and arranging the N pages of images so as to fit on one side of a sheet of paper. The support program performs processing for causing the information processing apparatus to transmit print data rasterized based on the composite image data to the printer as a transmission destination. The support program executes the following first rasterization processing: each time the composite image data for one side of a paper is generated, the generated composite image data is rasterized to generate the print data; By the support program, whenever the print data for one side of the paper is generated by the first rasterization process, the generated print data for one side of the paper is transferred to the universal printing program, and the universal printing program sends the transferred print data to the printer. Wherein N is a natural number greater than 2.

Citation Information

Patent Citations

  • Image forming apparatus

    JP2017121695A

  • Printing control system, printing control method and storage medium

    JP2002079716A

  • Image forming apparatus and program therefor

    JP2007133756A