Support program
The support program optimizes print order based on printer capabilities, addressing user inconvenience and colorant transfer issues by setting reverse page order for single-sided and normal page order for double-sided printing, resulting in efficient and neat output.
Patent Information
- Application Number
- JP2024050895
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-27
- Publication Date
- 2025-10-09
Smart Images

Figure 2025150159000001_ABST
Abstract
Description
[Technical Field]
[0001] The technical field disclosed in this specification relates to a support program that supports control of a printer. [Background technology]
[0002] In recent years, a technology has been put into practical use that controls a printer using a standard general-purpose print program that is part of the operating system (OS) and does not use a printer driver provided by the printer vendor. With this technology, when the OS detects a printer, it associates it with the OS's standard general-purpose print program, and then when a print instruction for that printer is received, the OS's standard general-purpose print program generates print data, making it possible to print using the OS's standard general-purpose print program, without using a printer driver provided by the printer vendor.
[0003] An example of a document disclosing technology related to a general-purpose printing program that is standard for an OS is Patent Document 1. Patent Document 1 discloses a support program that supports a general-purpose printing program, and in the case of double-sided printing, executes a process for rotating the images of pages that require rotation by 180 degrees for intermediate data received from the general-purpose printing program, and a process for rearranging the processing order from page order to printing order. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent Publication No. 2021-056642 Summary of the Invention [Problem to be solved by the invention]
[0005] As disclosed in Patent Document 1, there is a technique that combines image rotation and rearrangement of the printing order in the case of double-sided printing, but a new technique is desired for determining the printing order when a print instruction is given to a general-purpose printing program. [Means for solving the problem]
[0006] The present invention has been made to solve the above-mentioned problems, and is a support program that can be executed by a computer of an information processing device, corresponds to a printer connected to the information processing device, and supports a general-purpose printing program that an operating system of the information processing device has, wherein the printer is capable of double-sided printing and has a sheet transport mechanism that, in double-sided printing, ejects paper so that a first side that is printed first faces down and a second side that is printed later faces up, and in single-sided printing, ejects paper so that the side to be printed faces up; The computer, When a print instruction is output from an application program installed in the information processing device, the print instruction instructing the general-purpose print program to print an image on the printer, an acquisition process for acquiring intermediate data representing the image to be printed in response to the print instruction from the general-purpose print program; a printing process for causing the printer to print using print data based on the intermediate data acquired in the acquisition process; Execute The computer further comprises: executes a print order control process that controls the print order so that, when double-sided printing is set in the print settings corresponding to the print instruction, the print order for the print data sent to the printer is set to normal page order, and when double-sided printing is not set in the print settings corresponding to the print instruction, the print order for the print data sent to the printer is set to reverse page order; It is configured as follows.
[0007] According to the technology disclosed in this specification, in the case of printing where double-sided printing is not set for a printer having a transport mechanism that discharges paper with the printed side facing up, i.e., single-sided printing, by setting the printing order for the print data sent to the printer to be in reverse page order, a stack of printed materials arranged in page order from top to bottom is output to the paper output tray, eliminating the user's effort to rearrange the sheets and resulting in printed materials that are less likely to get colorant on the user's hands.On the other hand, in the case of double-sided printing, since both sides of the sheet are printing sides and there is no side on which the colorant should dry preferentially, by setting the printing order for the print data sent to the printer to be in normal page order, the process of reversing the page order can be omitted, which is expected to speed up the start of printing. [Effects of the Invention]
[0008] The technology disclosed in this specification realizes a new technology for determining a print order for an information processing apparatus in which an OS-standard general-purpose print program is installed. [Brief explanation of the drawings]
[0009] [Figure 1] 1 is a block diagram showing an outline of the electrical configuration of a PC according to a first embodiment. [Figure 2] FIG. 10 is a sequence diagram illustrating an example of a printing execution procedure. [Figure 3] FIG. 10 is an explanatory diagram showing an example of a print setting screen. [Figure 4] FIG. 10 is an explanatory diagram illustrating a data processing method. [Figure 5] FIG. 10 is a sequence diagram illustrating an example of a print execution procedure according to a second embodiment. [Figure 6] FIG. 11 is a sequence diagram illustrating an example of a print execution procedure according to a third embodiment. [Figure 7] FIG. 10 is a sequence diagram illustrating an example of a print execution procedure according to a fourth embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0010] (First embodiment) A personal computer (hereinafter referred to as a "PC") that uses the support program of the present embodiment will be described in detail below with reference to the accompanying drawings. This specification discloses a support program executed on a PC.
[0011] 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.
[0012] The CPU 11 of the PC 1 executes various processes in accordance with programs read from the memory 12 and based on user operations. The memory 12 includes a non-volatile memory 121 and a volatile memory 122. The volatile memory 122 is also used, for example, as a work area when executing various programs. 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, for example, a CD-ROM, a DVD-ROM, etc.
[0013] The user IF 13 includes a display 13a, which is hardware that displays a screen for notifying the user of information, and hardware that accepts operations by the user. Note that the user IF 13 may be a combination of the display 13a capable of displaying information and a mouse, keyboard, or the like that has an input acceptance function, or may be a touch panel that has the functions of the display 13a and an input acceptance function.
[0014] The communication IF 14 includes hardware for communicating with an external device such as the printer 2. 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 be equipped with multiple communication IFs 14 compatible with multiple communication standards.
[0015] 1, the non-volatile memory 121 of the memory 12 stores various programs and data, including an operating system (hereinafter referred to as "OS") 21 including a general-purpose printing program 41, an auxiliary program 42, and an editing application 43. The auxiliary program 42 is an example of a support program.
[0016] OS21 is a multitasking OS that can process multiple tasks in parallel by managing and switching between them. Examples of OS21 include Windows (registered trademark), macOS (registered trademark), Linux (registered trademark), iOS (registered trademark), and Android (registered trademark).
[0017] The OS 21 includes a general-purpose printing program 41. The general-purpose printing program 41 is a standard OS program prepared by the OS 21 vendor and provided as part of the OS 21. In other words, the PC 1 is equipped with the OS 21 that includes the general-purpose printing program 41. The general-purpose printing program 41 is not configured to use printer drivers specific to each printer.
[0018] The generic printing program 41 is a program that has the function of printing on multiple models of printers provided by multiple vendors based on user instructions. The generic printing program 41 supports generic functions that allow printing on many printers. Unlike printer drivers specific to each printer 2, the generic printing program 41 does not support functions specific to each printer 2 or printer driver, especially functions that require complex processing.
[0019] The general-purpose printing program 41 is a program that includes a function to receive image data designated as a print target in a print instruction output from various applications based on a user instruction and generate intermediate data based on that image data. The intermediate data is, for example, XPS data. The general-purpose printing program 41 also has a function to generate print data in a format that can be used for printing on various printers based on the intermediate data. The print data is, for example, PWGRaster data or PDF data. The general-purpose printing program 41 also has a function to send the generated print data to the printer 2 designated as the device to execute printing via a communication function provided by the OS 21.
[0020] The auxiliary program 42 is a program or a 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 control of the target hardware. The auxiliary program 42 in this embodiment corresponds to the model of the printer 2 connected to the PC 1, and is provided, for example, by the vendor of the printer 2.
[0021] The general-purpose printing program 41 launches an auxiliary program 42 corresponding to the printer 2 when the printer 2 is selected as the device to execute printing, when an instruction for detailed print settings is received while the printer 2 is selected, when an instruction to execute printing is received, etc. 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 depending on the command. The auxiliary program may also be a program prepared by a printer vendor for each printer type. For example, an auxiliary program for an inkjet printer and an auxiliary program for a laser printer 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] For example, when a new printer is connected to the PC 1, the OS 21 of the PC 1 can download an appropriate auxiliary program from a server of the printer vendor or the like according to the type and model of the connected printer 2 and install it in the PC 1. The OS 21 associates the identification information of the installed auxiliary program with the printer information of the newly connected printer and stores it in the memory 12.
[0024] The editing application 43 is, for example, a program for creating and editing image data and document data. The editing application 43 may be, for example, Microsoft Word (registered trademark) or PowerPoint (registered trademark), or may be a program provided by the vendor of the printer 2. The editing application 43 is capable of receiving, via the user IF 13, a print execution instruction for causing the printer 2 to execute printing. Note that the editing application 43 is not limited to a program for creating and editing data, and may also be a program having a function for receiving display instructions and print instructions for various types of information, such as map information and web pages, in response to a user request.
[0025] In this embodiment, PC 1 is connected to printer 2 via communication IF 14 as shown in FIG. 1. Printer 2 is an inkjet printer, and is a device that has at least a printing function and a communication function. For example, when printer 2 receives print data from PC 1 or the like, it can execute printing based on the received print data. Printer 2 may be a device capable of color printing, or a device capable of only monochrome printing.
[0026] Printer 2 also has a single-sided printing function and a double-sided printing function that automatically prints on both the front and back sides of a sheet using a single-sheet transport method. Printer 2 also has, as an example, a printing unit (not shown) located above the printing path, and a sheet transport mechanism (not shown) configured to eject sheets printed by the printing unit onto an ejection tray with the printed side facing up in the case of single-sided printing.
[0027] Furthermore, in the case of double-sided printing, the above-described transport mechanism is configured to transport a sheet in the following procedure. First, a sheet pulled from a paper feed tray is transported along a printing path, and an image is printed on the first side of the sheet by the printing unit. Next, the transport mechanism reverses the transport direction of the sheet before the sheet with the first side printed is discharged to the paper output tray. The reversed sheet is then transported toward the printing unit, and the printing unit prints an image on the second side of the sheet, which is opposite to the first side. Then, the transport mechanism discharges the sheet with the second side printed to the paper output tray with the second side facing up. Here, as a result of the reversal of the sheet transport direction, the leading edge of the sheet when printing on the first side becomes the trailing edge of the sheet when printing on the second side. Therefore, the print data to be printed on the second side of the sheet, which is opposite to the first side, is print data rotated 180 degrees compared to the print data to be printed on the first side of the sheet. In addition, the sheets are discharged with the printed side facing up, so when the sheets are discharged into the output tray, the first side, which is printed first, will be on the bottom, and the second side, which is printed later, will be on the top.
[0028] Next, the procedure of the printing process when printing using the printer 2 in the PC 1 of this embodiment will be described with reference to the sequence diagram shown in Fig. 2. Note that each process other than the user's operation in this embodiment basically indicates the processing of the CPU 11 in accordance with instructions written in a program such as the auxiliary program 42.
[0029] In this specification, various processes performed by the controller 10 or the CPU 11 in accordance with programs such as the auxiliary program 42, the general-purpose printing program 41, and the OS 21 are sometimes described as being performed independently by each program, for the sake of convenience. The processing by the CPU 11 also includes control of hardware using the API of the OS 21. In this specification, the operation of each program will be described without providing a detailed description of the OS 21.
[0030] First, prior to printing using the printer 2, the user can create and edit text and images using the editing application 43. If the user wants to print the text or image currently being displayed, the user selects print in the editing application 43 (A01). The user can select print from a menu of operation items provided in the editing application 43, for example.
[0031] When the editing application 43 accepts the selection of printing, it requests the general-purpose printing program 41 of the OS 21 to display a screen for accepting instructions regarding printing (A02). In response to the request, the general-purpose printing program 41 causes the user IF 13 to display a print setting screen (A03). The print setting screen is a screen for accepting user instructions regarding various print settings that can be accepted by the general-purpose printing program 41. Note that the print setting screen may be displayed by the editing application 43.
[0032] An example of the print settings screen is shown in FIG. 3. The print settings screen D2 in the example of FIG. 3 includes a printer selection field 51, an information display field 52, a basic print settings selection field 53, a print button 55, etc. The printer selection field 51 is a field for accepting the selection of a device to execute printing. The information display field 52 is a field for displaying information specified by an auxiliary program corresponding to the device selected in the printer selection field 51. For example, when the selection of printer 2 is accepted in the printer selection field 51, or when a print instruction is accepted when printer 2 is set as the printer to be normally used in the OS 21, the general-purpose print program 41 can start the auxiliary program 42 corresponding to printer 2 and display an image prepared by the auxiliary program 42 in the information display field 52.
[0033] The basic print settings selection field 53 is a field for accepting basic settings such as the number of copies to be printed and the orientation of the original. The basic print settings selection field 53 also has a double-sided printing selection field 53A for accepting an instruction for single-sided or double-sided printing. The advanced settings button 54 is a button for accepting an instruction for making advanced settings not included in the basic print settings selection field 53. The print button 55 is a button for accepting an instruction to execute printing using the selected print settings.
[0034] 2, after the user has determined the image to be printed and the print settings for printer 2, he or she inputs a print execution instruction to editing application 43 (A04). That is, for example, when editing application 43 receives an operation on print button 55 on print setting screen D2 shown in FIG. 3, because general-purpose print program 41 is incorporated into OS 21 of PC 1, editing application 43 determines that it has received an execution instruction to cause printer 2 to print the selected image to general-purpose print program 41.
[0035] The editing application 43 outputs the received print instruction information to the general-purpose printing program 41 (A05). The general-purpose printing program 41 acquires, from the editing application 43, image data indicating the image to be printed and information indicating the print settings as the print instruction information.
[0036] When the general-purpose printing program 41 receives a print instruction for the printer 2 from the editing application 43, it outputs an execution instruction to the auxiliary program 42, thereby starting the auxiliary program 42 corresponding to the specified printer 2 (A06). The started auxiliary program 42 acquires print settings corresponding to the print instruction. The print settings may be acquired by adding the print settings to the execution instruction in A06, or may be acquired by the auxiliary program 42 making a request to the general-purpose printing program 41 after startup.
[0037] If single-sided printing is set in the print settings acquired from the general-purpose printing program 41, the auxiliary program 42 requests the general-purpose printing program 41 to output the intermediate data in reverse order (A07). If double-sided printing is set, the auxiliary program 42 may request normal order output of the intermediate data, or if the default setting of the general-purpose printing program 41 is normal order even if no output order request is made, no output order request may be made. The auxiliary program 42 then ends processing in response to the execution instruction of A06. The processing of A07 is an example of print order control processing and also an example of reverse order request processing.
[0038] When the processing of the auxiliary program 42 in response to the execution instruction in A06 is completed, the general-purpose printing program 41 generates intermediate data based on the image data of the image to be printed, based on the information acquired from the editing application 43 (A11). At this time, if reverse order output is set in the general-purpose printing program 41 based on a reverse order output request from the auxiliary program 42, the general-purpose printing program 41 generates the intermediate data by rearranging the pages in reverse order. Note that the reverse order output setting of the general-purpose printing program 41 is disabled if double-sided printing is set in the print settings. Furthermore, the reverse order output setting may be disabled based on a notification from the auxiliary program 42.
[0039] To explain the reordering in more detail, as shown in FIG. 4(A), for example, if the intermediate data consists of six pages, the general-purpose printing program 41 reorders the processing order defined by the page order of the intermediate data (page 1, page 2, .... page 5, page 6) to (page 6, page 5, .... page 2, page 1) in accordance with the printing order of the single-sheet conveying method described above.
[0040] On the other hand, if a request for reverse order output is not stored, the general-purpose printing program 41 generates the intermediate data in normal order, i.e., in the processing order defined by the page order of the intermediate data: page 1, page 2, ..., page 5, page 6.
[0041] The image data included in the editing application 43 is of various types, and the general-purpose printing program 41 converts the image data to be printed into intermediate data suitable for generating print data. Note that if the image data to be printed is suitable for generating print data, the generation of intermediate data may be omitted and the data may be rearranged as is as intermediate data.
[0042] The general-purpose printing program 41 can also start the auxiliary program 42 before receiving a print instruction from the editing application 43, and the auxiliary program 42 can obtain a setting for single-sided printing or double-sided printing. For example, the setting for single-sided printing or double-sided printing can be accepted on the print setting screen D2. If the general-purpose printing program 41 can start the auxiliary program 42 at the timing of accepting the setting for single-sided printing before receiving a print instruction from the editing application 43, the started auxiliary program 42 can request the general-purpose printing program 41 to output the intermediate data in reverse order, and the general-purpose printing program 41 can store information indicating that the request has been made. Then, when a print instruction is received from the editing application 43, the general-purpose printing program 41 can generate the intermediate data in reverse order based on the stored information.
[0043] Furthermore, for example, when the advanced settings button 54 is operated on the print setting screen D2, the general-purpose printing program 41 outputs an execution instruction to the auxiliary program 42, which starts the auxiliary program 42 corresponding to the specified printer 2, and the auxiliary program 42 displays an advanced settings screen for accepting detailed print setting information. The advanced settings screen can accept a setting for single-sided printing or double-sided printing. If the auxiliary program 42 accepts the setting for single-sided printing before receiving a print instruction from the editing application 43, the auxiliary program 42 may request the general-purpose printing program 41 to output the intermediate data in reverse order at that time, and the general-purpose printing program 41 may store information indicating that the request has been received. Then, when a print instruction is received from the editing application 43, the general-purpose printing program 41 may generate the intermediate data in reverse order based on the stored information.
[0044] In this embodiment, when printing is performed on one side, the auxiliary program 42 obtains the intermediate data from the general-purpose printing program 41 in reverse page order, and the print data generated by the auxiliary program 42 described below is also in reverse page order, so the auxiliary program 42 does not need to rearrange the print order, and the processing load on the auxiliary program 42 can be reduced.
[0045] After the general-purpose printing program 41 generates the intermediate data, the auxiliary program 42 acquires the intermediate data and print settings generated by the general-purpose printing program 41 (A14).
[0046] In this case, if the user selects double-sided printing in the double-sided printing selection field 53A of the print setting screen D2, the general-purpose printing program 41 passes the intermediate data in the processing order defined by the page order of the intermediate data, that is, "page 1, page 2, ... page 5, page 6," i.e., in the normal order, to the auxiliary program 42.
[0047] In this case, if the user selects single-sided printing in the double-sided printing selection field 53A of the print setting screen D2, the general-purpose printing program 41 passes the intermediate data in the reverse order to the auxiliary program 42, that is, in the order of "page 6, page 5, . . . page 2, page 1", which is the opposite of the processing order "page 1, page 2, . . . page 5, page 6" defined by the page order of the intermediate data.
[0048] Next, the auxiliary program 42 edits the intermediate data based on the acquired print settings, if necessary (A15). For example, depending on the print settings, it adds a specified image or text to the header or footer, or combines a watermark image. Furthermore, if 2-in-1 combined printing is set, for example, it edits the intermediate data by reducing the size of each of the two pages and arranging them on a single sheet. In this case, the order of pages arranged on a single sheet is from right to left for single-sided printing and from left to right for double-sided printing. The auxiliary program 42 then determines whether to perform single-sided or double-sided printing based on the acquired print setting information (A16).
[0049] If the auxiliary program 42 determines that double-sided printing is to be performed (A20), the program executes a rotation process on the intermediate data edited in the process of A15 (A21).
[0050] To explain the rotation process in more detail, for example, if the intermediate data consists of six pages, as shown in Fig. 4(B), the auxiliary program 42 rotates the intermediate data of even-numbered pages by 180 degrees in accordance with the printing order of the single-sheet conveyance method described above, in the processing order "page 1, page 2, ..., page 5, page 6" defined by the page order of the intermediate data, to edit the intermediate data. Note that the intermediate data to be rotated may also be odd-numbered pages, as shown in Fig. 4(C).
[0051] Next, the auxiliary program 42 passes the print settings and intermediate data to the general-purpose printing program 41 and requests the general-purpose printing program 41 to generate print data (A22).The general-purpose printing program 41 then rasterizes the intermediate data and generates print data including raster data, which is bitmap data (A23).The general-purpose printing program 41 then passes the generated print data to the auxiliary program 42 (A24).
[0052] The auxiliary program 42 passes the print data to the general-purpose print program 41, thereby instructing the general-purpose print program 41 to send a print instruction to the printer 2 (A25). The general-purpose print program 41 sends a print job including the print data to the printer 2 (A26). The printer 2 executes printing based on the received print data (A27). As a result, a printed matter based on the print instruction output from the editing application 43 is generated.
[0053] As a result, if the user selects single-sided printing in the double-sided printing selection field 53A of the print setting screen D2, the printed matter, i.e., the sheets printed by the printing unit, are ejected onto the paper ejection tray with the printed side facing up in the order of "page 6, page 5, ...page 2, page 1."
[0054] In this embodiment, since it is preferable for printers that print using the inkjet method to eject paper with the printed side facing up so that the ink dries easily, the paper is ejected onto the paper ejection tray with the printed side facing up in the order of "page 6, page 5, ...page 2, page 1", which works well.
[0055] Furthermore, if the user selects double-sided printing in the double-sided printing selection field 53A of the print setting screen D2, the sheets printed by the printing unit are ejected onto the paper ejection tray in that order, with the "2nd page, 4th page, 6th page" side facing up.
[0056] In this embodiment, since it is preferable for printers that print using the inkjet method to eject paper with the printed side facing up so that the ink dries easily, the paper is ejected onto the paper output tray in the order that the last printed pages, "pages 2, 4, and 6," face up, which works well.
[0057] Furthermore, in this embodiment, when double-sided printing is not set, the auxiliary program 42 notifies the general-purpose printing program 41 to enable the setting to print in reverse page order, so that the general-purpose printing program 41 generates intermediate data in reverse page order, and the auxiliary program 42 obtains the intermediate data rearranged in reverse page order from the general-purpose printing program 41, thereby allowing the printer to print in reverse page order without the auxiliary program 42 rearranging the print order.
[0058] (Second embodiment) Next, the procedure of the printing process when printing using the printer 2 according to the second embodiment will be described with reference to the sequence diagram shown in Fig. 5. Note that each process other than the user's operation in this embodiment basically indicates the processing of the CPU 11 in accordance with instructions written in a program such as the auxiliary program 42. Note that in this description, the same reference numerals will be used to denote parts that have the same effects as those in the first embodiment.
[0059] In the second embodiment, regardless of whether single-sided printing or double-sided printing is set in the print settings, the auxiliary program 42 does not request reverse order output to the general-purpose printing program 41, and the general-purpose printing program 41 passes the intermediate data and print settings to the auxiliary program 42 in the processing order defined by the page order of the intermediate data, "page 1, page 2, ... page 5, page 6," i.e., in normal order. This differs from the first embodiment, in which the auxiliary program 42 requests reverse order output to the general-purpose printing program 41 when single-sided printing is selected.
[0060] The auxiliary program 42 of this embodiment acquires the intermediate data from the general-purpose printing program 41 in A14, and then determines whether single-sided printing or double-sided printing is to be performed based on the print setting information (A16).
[0061] If the auxiliary program 42 determines that single-sided printing is to be performed (B11), the auxiliary program 42 executes a rearrangement process (B12). For example, as shown in Fig. 4(A), if the intermediate data consists of six pages, the processing order defined by the page order of the intermediate data, "page 1, page 2, ... page 5, page 6", is rearranged to "page 6, page 5, ... page 2, page 1" in accordance with the printing order of the single-sheet conveyance method described above.
[0062] On the other hand, if the auxiliary program 42 determines that double-sided printing is to be performed (A20), the auxiliary program 42 does not perform the rearrangement process but instead performs the rotation process described above (A21). For example, as shown in FIG. 4(B), if the intermediate data consists of six pages, in the processing order "page 1, page 2, ..., page 5, page 6" defined by the page order of the intermediate data, the intermediate data of the even pages is rotated 180 degrees in accordance with the printing order of the single-sheet conveyance method described above. Note that if consolidated printing such as 2-in-1 is set, the rearrangement process of B12 and the rotation process of A21 are performed for each new page edited by the editing process of A15.
[0063] Next, the auxiliary program 42 passes the print settings and intermediate data to the general-purpose printing program 41 and requests the general-purpose printing program 41 to generate print data (A22). The process from A22 onwards is the same as in the first embodiment. The process of B12 is an example of print order control processing.
[0064] In this embodiment, in the case of single-sided printing, the auxiliary program 42 rearranges the pages to be printed, allowing the auxiliary program 42 to determine the printing order and increasing the degree of freedom in printing. In addition, the auxiliary program 42 can easily change the printing order by rearranging the intermediate data acquired in the normal page order in reverse order.
[0065] (Third embodiment) Next, the procedure of the printing process when printing using the printer 2 according to the third embodiment will be described with reference to the sequence diagram shown in Fig. 6. Note that in this embodiment, each process other than the user's operation basically represents the processing of the CPU 11 in accordance with instructions written in a program such as the auxiliary program 42. Note that in this description, the same reference numerals will be used to denote parts that have the same effects as those in the first and second embodiments.
[0066] In the third embodiment, the intermediate data is not rearranged, but the pages are rearranged when the intermediate data is rasterized. This differs from the first and second embodiments in which the intermediate data is rearranged. Furthermore, in the third embodiment, images are not rotated on the intermediate data, but are rotated when the intermediate data is rasterized. Note that, in the third embodiment, regardless of whether single-sided printing or double-sided printing is set in the print settings, the auxiliary program 42 does not request reverse order output to the general-purpose printing program 41, and the general-purpose printing program 41 passes the intermediate data and print settings to the auxiliary program 42 in the processing order defined by the page order of the intermediate data: "page 1, page 2, ... page 5, page 6," i.e., in forward order, just like the second embodiment.
[0067] The auxiliary program 42 of this embodiment acquires the intermediate data from the general-purpose printing program 41 in A14, and then determines whether single-sided printing or double-sided printing is to be performed based on the print setting information (A16).
[0068] If it is determined that single-sided printing is to be performed (C11), the auxiliary program 42 passes the intermediate data edited in A15 to the general-purpose printing program 41 and requests the general-purpose printing program 41 to rasterize (C12). At this time, the auxiliary program 42 requests the general-purpose printing program 41 to change the processing order defined by the page order of the intermediate data from "page 1, page 2, ... page 5, page 6" to "page 6, page 5, ... page 2, page 1" as shown in FIG. 4(A), that is, to the reverse order, and then rasterize the data. The general-purpose printing program 41 then rasterizes the intermediate data in the order of "page 6, page 5, ... page 2, page 1" (C13). The processing in C12 is an example of print order control processing.
[0069] On the other hand, if it is determined that double-sided printing is to be performed (C14), the auxiliary program 42 passes the intermediate data edited in A15 to the general-purpose printing program 41 and requests the general-purpose printing program 41 to rasterize (C15). At this time, the auxiliary program 42 requests the general-purpose printing program 41 to rotate the intermediate data of even-numbered pages 180 degrees and rasterize them in the processing order "page 1, page 2, . . . page 5, page 6" defined by the page order of the intermediate data, as shown in FIG. 4(B). Note that the rotation target may also be the intermediate data of odd-numbered pages, as shown in FIG. 4(C). Then, the general-purpose printing program 41 rotates the intermediate data of even-numbered pages 180 degrees and rasterizes them in the processing order "page 1, page 2, . . . page 5, page 6" defined by the page order of the intermediate data (C16). Alternatively, the intermediate data of odd-numbered pages may be rotated 180 degrees and rasterized.
[0070] After C11 or C14, the general-purpose printing program 41 passes the generated print data to the auxiliary program 42 (A24). The process from A24 onwards is the same as in the first embodiment.
[0071] 7, the auxiliary program 42 may perform rasterization instead of the general-purpose printing program 41. In this case, if the auxiliary program 42 determines that single-sided printing is to be performed (C20), the auxiliary program 42 changes the processing order defined by the page order of the intermediate data from "page 1, page 2, . . . page 5, page 6" to "page 6, page 5, . . . page 2, page 1" as shown in FIG. 4(A) and performs rasterization (C21). The processing of C21 is an example of print order control processing.
[0072] Furthermore, if the auxiliary program 42 determines that double-sided printing is to be performed (C22), the auxiliary program 42 rotates the intermediate data of even-numbered pages by 180 degrees and rasterizes them in the processing order "page 1, page 2, ..., page 5, page 6" defined by the page order of the intermediate data (C23), as shown in Fig. 4(B). Note that the intermediate data to be rotated may also be odd-numbered pages, as shown in Fig. 4(C).
[0073] As described above in detail, in each of the above-described embodiments, in printing where duplex printing is not set for a printer 2 having a transport mechanism that discharges paper with the print side facing up, i.e., in the case of single-sided printing, the print order for the print data sent to the printer 2 is set to reverse page order, and a stack of printed materials arranged in page order from top to bottom is output to the paper output tray. This eliminates the user's effort to rearrange the sheets, and produces printed materials that are less likely to get colorant on the user's hands. On the other hand, in the case of duplex printing, both sides of the sheet are print sides, and there is no side on which the colorant dries preferentially. Therefore, by setting the print order for the print data sent to the printer to normal page order, the process of reversing page order can be omitted, which is expected to speed up the start of printing.
[0074] 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 PC1 is not limited to a printer, but may be any device with a printing function, such as a multifunction device, copier, or fax machine. Furthermore, the number of printers connected to PC1 is not limited to the illustrated example, and may be two or more.
[0075] Furthermore, for example, the examples of screens displayed on the user IF 13 are all merely examples and are not limited to the examples shown in the drawings. Furthermore, the wording, object shapes, backgrounds, etc. displayed on each of the illustrated screens may be any. Furthermore, for example, while FIG. 3 shows the print setting screen D2 including one information display field 52, the arrangement, shape, size, number, etc. of the information display field 52 are not limited to the example shown in this drawing. Furthermore, the information display field 52 may not be present.
[0076] The auxiliary program 42 may also acquire raster data generated by the general-purpose printing program 41 or the auxiliary program 42 and process it as necessary. For example, the auxiliary program 42 may generate print data by encoding the raster data into PDL data suitable for the printer 2. Note that the PDL data generated by the auxiliary program 42 may be data in a format that can be used for printing on printers other than the printer 2 model.
[0077] Furthermore, although the general-purpose printing program 41 is described as sending a print job to the printer 2, the auxiliary program 42 may instead send a print command instructing the printer 2 to execute printing and the print data. For example, if the print settings include settings related to image processing that can be executed by the printer 2, the auxiliary program 42 may generate a print command that also includes information about that processing. In this case, the auxiliary program 42 may notify the general-purpose printing program 41 of completion information after completing the transmission of the print data.
[0078] Furthermore, in the embodiment, the page reverse order or rotation is performed based on whether single-sided printing or double-sided printing is selected in the double-sided printing selection field 53A on the print setting screen D2, but rotation is not essential. Whether rotation is necessary or not may be switched depending on the capabilities of the printer 2, the print settings, etc. For example, the capability information acquired from the printer 2 may include information on whether the printer 2 is capable of rotation processing, and the rotation processing may be performed if the acquired capability information indicates that the printer 2 cannot perform rotation processing. Also, for example, whether rotation is necessary or not may be determined based on the settings of the binding direction or opening direction of the pages.
[0079] 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.
[0080] 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.
[0081] 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.
[0082] 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]
[0083] 1 PC 2. Printer 11 CPU 13 User Interface 41 General-purpose printing program 42 Subsidy Programs 43 Editing Apps D2 Print settings screen 53A Double-sided printing selection field
Claims
1. A support program that can be executed by a computer of an information processing device, corresponds to a printer connected to the information processing device, and supports a general-purpose printing program that an operating system of the information processing device has, wherein the printer is capable of double-sided printing and has a sheet transport mechanism that, in double-sided printing, ejects paper so that a first side to be printed first faces down and a second side to be printed later faces up, and, in single-sided printing, ejects paper so that the side to be printed faces up; The computer, When a print instruction is output from an application program installed in the information processing device, the print instruction instructing the general-purpose print program to print an image on the printer, an acquisition process for acquiring intermediate data representing the image to be printed in response to the print instruction from the general-purpose print program; a printing process for causing the printer to print using print data based on the intermediate data acquired in the acquisition process; Execute The computer further comprises: executes a print order control process that controls the print order so that, when double-sided printing is set in the print settings corresponding to the print instruction, the print order for the print data sent to the printer is set to normal page order, and when double-sided printing is not set in the print settings corresponding to the print instruction, the print order for the print data sent to the printer is set to reverse page order; A support program configured to:
2. 2. The support program according to claim 1, The printing order control process includes: a reverse order request process for causing the general-purpose printing program to acquire the intermediate data in reverse page order in the acquisition process when double-sided printing is not set in the print settings corresponding to the print instruction; A support program configured to:
3. 3. The support program according to claim 2, The computer, a display process is executed to display, using a user interface of the information processing device, a setting screen for accepting print settings used for printing by the printer, the setting screen including a setting item for whether or not to perform double-sided printing; The reverse order request processing includes: This is executed when the print setting does not include double-sided printing. A support program configured to:
4. 2. The support program according to claim 1, In the acquisition process, the intermediate data is acquired from the general-purpose printing program in normal page order, The printing order control process includes: a generation process for generating the print data from the intermediate data acquired in the acquisition process; In the generation process, When double-sided printing is set in the print settings corresponding to the print instruction, the print data is generated in a normal page order. If double-sided printing is not set in the print settings corresponding to the print instruction, the print data is generated in a reverse page order. A support program configured to:
5. 2. The support program according to claim 1, The printing order control process includes: a sorting process for sorting the intermediate data acquired in the acquisition process in reverse page order when double-sided printing is not set in the print settings corresponding to the print instruction; A support program configured to:
6. 6. The support program according to claim 1, The computer further comprises: If double-sided printing is set in the print settings corresponding to the print instruction, a rotation process is executed to rotate an image that needs to be rotated by 180 degrees into the print data. A support program configured to:
7. 6. The support program according to claim 1, In the printing order control process, If double-sided printing is set in the print settings corresponding to the print instruction, the printer that prints using an inkjet method is caused to print using the print data in a normal printing order relative to the pages, and if double-sided printing is not set in the print settings corresponding to the print instruction, the printer that prints using an inkjet method is caused to print using the print data in a reverse printing order relative to the pages. A support program configured to:
Citation Information
Patent Citations
Support program, information processor and printing method
JP2021056642A