Support program

JP2025111672A5Active Publication Date: 2025-09-24BROTHER KOGYO KK
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025073036
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-04-25
Publication Date
2025-09-24
Estimated Expiration
2041-01-26

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

To provide a technique to improve printing of a composite image in an information processing apparatus that has an OS-standard general purpose printing program incorporated therein.SOLUTION: According to an auxiliary program 42, a PC 1 acquires, from a printer 2, an image for composition registered in the printer 2 connected with the PC1. Upon receiving a print instruction output from an editing application 43, the print instruction for a general purpose printing program 41 incorporated in advance in an OS 21 of the PC 1 to cause the printer 2 to print an image, and when printing of a composite image is set in print settings concerning the print instruction, the PC 1 displays a preview of a composite image that is obtained by composing the image for composition acquired from the printer 2 and an image to be printed according to the print instruction, and performs processing for causing the printer 2 to print the composite image to be displayed.SELECTED DRAWING: Figure 1
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 that supports control of a printer. [Background technology]

[0002] A well-known technique for controlling a printer from an information processing device such as a personal computer is to generate print data using a printer driver and display a preview of the print data before sending it to the printer. Another well-known printer driver technique is to generate a composite image by combining a composite image, such as a watermark or stamp, with an image to be printed (see, for example, Patent Document 1). [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2008-152668 Summary of the Invention [Problem to be solved by the invention]

[0004] In recent years, a technology has been put into practical use that controls printers using a print program that is built into the operating system (OS) as standard, without using the printer driver mentioned above. With this technology, the OS associates the printer with the OS's standard print program, and after that, when a print command for that printer is received, printing can be performed using the OS's standard print program without using a printer driver.

[0005] However, the OS-standard general-purpose printing program does not have a function for generating a composite image using a composite image, so the information processing device cannot preview the composite image, and the printer cannot print the composite image.

[0006] This specification discloses a technique for improving the printing of composite images in an information processing apparatus in which a general-purpose printing program conforming to an OS standard is incorporated.

Means for Solving the Problems

[0007] A support program made for the purpose of solving the above-described problems is executable by a computer of an information processing apparatus, and is a support program corresponding to a printer connected to the information processing apparatus. The computer is made to execute an image acquisition process of acquiring, from the external device, a composite image registered in an external device connected to the information processing apparatus. Further, when there is a print instruction output from an application program incorporated in the information processing apparatus, and the print instruction causes the printer connected to the information processing apparatus to perform printing of an image with respect to a general-purpose printing program previously incorporated in the operating system of the information processing apparatus, and printing of a composite image is set in the print settings for the print instruction, a preview process of displaying, using a user interface of the information processing apparatus, a composite image of the composite image acquired in the image acquisition process and the image to be printed according to the print instruction, and a print process of performing a process for causing the printer to print the composite image displayed by the preview process are executed. This is the gist of the invention.

[0008] According to the support program disclosed in this specification, the information processing apparatus acquires a composite image possessed by an external device, generates a composite image with an image to be printed, and previews and displays the composite image before a process for printing. As a result, the user can grasp in advance what kind of image will be printed by the printer, and as a result, the possibility of avoiding unintended printing by the user is increased.

[0009] An information processing apparatus in which the above support program is incorporated, a computer-readable storage medium storing the support program, and a control method for realizing the functions of the support program are also novel and useful.

Advantages of the Invention

[0010] According to the technology disclosed in this specification, in an information processing apparatus incorporating a general-purpose printing program compliant with the OS standard, a technology for improving the printing of composite images is realized.

Brief Description of the Drawings

[0011]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Embodiments for Carrying Out the Invention

[0012] Hereinafter, a personal computer (hereinafter referred to as "PC") that uses the support program of this embodiment will be described in detail with reference to the accompanying drawings. This specification discloses a support program executed on a PC connected to a printer having a printing function.

[0013] As shown in FIG. 1, the PC1 of this embodiment includes a controller 10 that includes a CPU 11 and a memory 12. The PC1 is an example of an information processing device. The CPU 11 is an example of a computer. The PC1 also includes a user interface (hereinafter referred to as "user IF") 13 and a communication interface (hereinafter referred to as "communication IF") 14, and these are electrically connected to the controller 10. Note that the controller 10 in FIG. 1 is a general term for the hardware and software used for the control of the PC1, and does not necessarily represent a single piece of hardware actually present in the PC1.

[0014] The CPU 11 executes various processes according to the programs read from the memory 12 and based on the operations of the user. The memory 12 stores various programs and various data, including various application programs (hereinafter referred to as "apps"). The memory 12 is also used as a work area when various processes are executed. The buffer included in the CPU 11 is also an example of a memory. Note that an example of the memory 12 is not limited to a ROM, RAM, HDD, etc. built in the PC1, and may be a storage medium that can be read from and written to by the CPU 11, for example, a recording medium such as a CD-ROM or a DVD-ROM.

[0015] The user IF 13 includes hardware for displaying a screen for notifying the user of information and hardware for receiving operations by the user. Note that the user IF 13 may be a combination of a display capable of displaying information and a mouse, keyboard, etc. having an input reception function, or may be a touch panel having a display function and an input reception function.

[0016] The communication IF 14 includes hardware for communicating with an external device such as a printer 2. The communication standard of the communication IF 14 is Ethernet (registered trademark), Wi-Fi (registered trademark), USB, etc. The PC1 may include a plurality of communication IFs 14 corresponding to a plurality of communication standards.

[0017] As shown in FIG. 1, the memory 12 of PC1 stores an operating system (hereinafter referred to as "OS") 21 that includes 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. The editing application 43 is an example of an application program. The OS 21 is, for example, Windows (registered trademark), macOS (registered trademark), Linux (registered trademark), iOS (registered trademark), Android (registered trademark).

[0018] The general-purpose printing program 41 is an OS-standard program for causing various printers such as printer 2 to execute printing based on a user's instruction. The general-purpose printing program 41 of this embodiment is a program that includes a function of generating intermediate image data based on the image data to be printed. The intermediate image data is, for example, XPS data.

[0019] The general-purpose printing program 41 supports functions that can be commonly used by a plurality of types of printers models provided by various printer vendors. The general-purpose printing program 41 does not correspond to all the functions that each type of printer inherently has, and the supported functions are limited to general-purpose ones.

[0020] The auxiliary program 42 is a program or a group of programs that execute processing based on an instruction from the OS 21 accompanying the processing of the general-purpose printing program 41, 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 PC1, and is started from the general-purpose printing program 41, for example, when receiving an instruction to execute printing on the printer 2 using the general-purpose printing program 41. The auxiliary program 42 is, for example, called a hardware support application (abbreviation, HSA).

[0021] The auxiliary program 42 can receive a plurality of types of instructions from the general-purpose printing program 41, and executes various processes based on the received instructions. Note that the auxiliary program 42 may be a combination of a plurality of programs each of which receives an execution instruction, or may be a single program that can execute different processes according to instructions.

[0022] The auxiliary program may be a program prepared for each type of printer by the printer vendor. For example, an auxiliary program for an inkjet printer and an auxiliary program for a laser printer may be prepared respectively. When a new printer is connected to the PC1, the OS 21 of the PC1 downloads an appropriate auxiliary program from a server or the like and incorporates it into its own device according to the type of the connected printer. Then, the OS 21 associates the identification information of the incorporated auxiliary program with the printer information of the newly connected printer and stores it in the memory 12. Note that there may be an auxiliary program prepared not only for each type of printer but also for each model of the printer or for each series of printer models.

[0023] The editing application 43 is an application for creating and editing, for example, image data and document data. The editing application 43 may be, for example, Word or PowerPoint manufactured by Microsoft (registered trademark), or may be an application provided by the vendor of the printer 2. The editing application 43 receives a user operation including an instruction to cause the printer 2 to perform a predetermined operation. Specifically, the editing application 43 receives, via the user IF 13, a print execution instruction to cause the printer 2 to execute printing, for example.

[0024] The printer 2 of this embodiment is a device having a printing function. The PC1 can communicate with the printer 2 via the communication IF 14. The printer 2 receives print data from the PC1 or the like, for example, and executes printing based on the received print data.

[0025] Next, the printing procedure including the operation of the auxiliary program 42 of this embodiment will be described with reference to the sequence diagram of FIG. 2. FIG. 2 shows a case where a printing execution instruction to cause the printer 2 to perform printing using the general-purpose printing program 41 is received by an application that receives a printing instruction such as the editing application 43, and the auxiliary program 42 corresponding to the printer 2 is incorporated in the PC1.

[0026] Note that each processing step of the processing and flowchart in this embodiment basically shows the processing of the CPU 11 according to instructions described in a program such as the auxiliary program 42. The processing by the CPU 11 also includes hardware control using the API of the OS 21. In this specification, the detailed description of the OS 21 is omitted, and the operation of each program will be described. Also, "acquisition" is used as a concept that does not require a request.

[0027] The editing application 43 receives creation and editing of text, charts, etc. based on a user's instruction. When the editing application 43 receives an instruction regarding printing of the selected text or the like (A01), it displays a printing screen for receiving the user's instruction on the user IF 13 (A02). The editing application 43 receives, on the printing screen, for example, a printing execution instruction, an instruction for basic printing settings, and an instruction to start receiving detailed printing settings.

[0028] When the editing application 43 receives an instruction to start receiving detailed printing settings in a state where the printer 2 is selected on the displayed printing screen (A03), it passes the information of the received detailed setting instruction to the OS 21. When the OS 21 receives an instruction for detailed settings regarding printing using the general-purpose printing program 41, it causes the general-purpose printing program 41 to execute and passes an instruction to start receiving detailed printing settings to the general-purpose printing program 41 (A04). When the general-purpose printing program 41 receives an instruction to start receiving detailed printing settings, it passes an instruction to execute receiving detailed printing settings to the auxiliary program 42 corresponding to the printer 2, which is the selected printer (A05).

[0029] The auxiliary program 42 starts operating based on an execution instruction from the general-purpose printing program 41, and displays on the user IF 13 a setting screen for receiving an input operation of detailed printing settings (A06). The auxiliary program 42, for example, based on the model information of the printer 2, displays a screen for receiving applicable detailed settings and receives the user's operation.

[0030] An example of the setting screen is shown in FIG. 3. The setting screen 100 in the example of FIG. 3 is provided with a plurality of tabs. The setting screen 100 shown in FIG. 3 is an example of a screen in which the basic tab 101 for receiving basic printing settings is selected. The setting screen 100 is provided with a composition tab 102 for receiving an instruction to compose an image such as a watermark on the image to be printed. Note that the instruction for composition is not limited to reception by tabs and may also be received by an operation on a button or the like.

[0031] When the auxiliary program 42 receives, at the setting screen 100 displayed in A06, an instruction to perform image composition by an operation on the composition tab 102 (A07), it requests function information from the printer 2 via the communication IF 14 (A11) and receives the function information from the printer 2 (A12). A12 is an example of function information acquisition processing. The function information includes information indicating whether the printer 2 has a transmission function for responding with image data.

[0032] The printer 2 of this embodiment receives registration of a composition image for composing and printing on the image to be printed by an instruction from the PC 1 or the like or reading from a USB memory, and stores the image data of the received image in the memory of the printer 2. The printer 2 stores, for example, multiple types of image data indicating watermark images. The printer 2 having the above-described transmission function can respond with the image data of the composition image stored in the memory of the printer 2 in response to a request from the PC 1 or the like. The image data acquired by the PC 1 from the printer 2 is, for example, intermediate image data of the composition image.

[0033] When the auxiliary program 42 determines that the printer 2 has a transmission function of responding with image data based on the function information received at A12 (alt: [has]), the auxiliary program 42 requests image data from the printer 2 (A13) and receives the image data from the printer 2 (A14). Then, the auxiliary program 42 stores the received image information in the memory 12. In this case, the printer 2 is an example of an external device, and A14 is an example of an image acquisition process. When the printer 2 stores a plurality of image data, the auxiliary program 42 can acquire the plurality of image data.

[0034] By acquiring image data during the period when the setting screen 100 for accepting detailed settings is displayed, the process after receiving the print instruction can be completed earlier compared to the case of acquiring at the timing of receiving the print instruction. Also, for example, in the case of the PC1 to which a plurality of printers are connected, by the PC1 acquiring the image data registered in the printer to execute printing, for each printer, an image for composition suitable for that printer can be managed.

[0035] Note that the communication between the auxiliary program 42 and the printer 2 may be performed, for example, by the auxiliary program 42 directly communicating with the printer 2 using MIB (abbreviation for Management Information Base), or may be performed via the OS 21. When performed via the OS 21, the auxiliary program 42 and the printer 2 perform communication according to the communication protocol of the OS 21, such as IPP (abbreviation for internet printing protocol).

[0036] Then, the auxiliary program 42 accepts the selection of an image for composition (A22) via the user IF13. For example, as shown in FIG. 4, the auxiliary program 42 displays a list 103 of the names of the images for composition acquired from the printer 2 and accepts a selection instruction from the user (A23). A23 is an example of a selection process. The auxiliary program 42 may display the images of each image for composition on the screen for accepting the selection of the image for composition. By enabling the selection of the composition target from among a plurality of images for composition, the degree of freedom of the composite image is increased and the convenience is improved. Then, the auxiliary program 42 determines the image selected by the user as the image for composition (A26). Note that the auxiliary program 42 may execute A11 to A14 before receiving the composition instruction of A07.

[0037] On the other hand, when the auxiliary program 42 determines, based on the function information received in A12, that the printer 2 does not have a transmission function for responding with image data (alt: [none]), the auxiliary program 42 uses the user IF13 to display a message notifying that the image data of the image for composition cannot be acquired (A27). A27 is an example of a notification process.

[0038] If the printer 2 does not have a transmission function for responding with image data, the auxiliary program 42 cannot display a preview of the composite image. In this case, the auxiliary program 42 omits the processes for acquiring the image for composition and displaying the preview even when there is a composition instruction, thereby reducing the processing load of the support program. Also, by providing the notification, the user can recognize this fact. Note that when the image data cannot be acquired in response to the image data request instruction in A1 , such as when no image data is registered in the printer 2, the auxiliary program 42 may provide the same notification as A27.

[0039] After determining the image for synthesis at A26 or after giving the notification at A27, the auxiliary program 42 returns, for example, to the display of the basic tab 101 shown in FIG. 3. When receiving an instruction to end the detailed setting by the setting screen 100, the auxiliary program 42 ends the display of the setting screen 100 and passes an end notification to the general-purpose printing program 41. Upon receiving the end notification from the auxiliary program 42, the general-purpose printing program 41 passes the end notification to the editing application 43.

[0040] When the editing application 43 receives a print execution instruction from the user on the print screen (A31), it passes the print instruction to the general-purpose printing program 41 (A32). The general-purpose printing program 41 acquires information indicating the image data of the image to be printed and information indicating the print settings in the print instruction.

[0041] The general-purpose printing program 41 generates intermediate image data by converting the format of the image data included in the received print instruction into the format of the intermediate image data (A33), and generates a print job including the intermediate image data. The image data included in the editing application 43 is of various types, and the general-purpose printing program 41 converts the received image data into intermediate image data suitable for generating print data. If the image data included in the print instruction is data suitable for generating print data, the generation of the intermediate image data may be omitted and it may be used as the intermediate image data as it is.

[0042] The general-purpose printing program 41 further outputs an execution instruction to the auxiliary program 42 (A34) to operate the auxiliary program 42. In the execution instruction, the generated intermediate image data and the print setting information are passed to the auxiliary program 42. That is, the auxiliary program 42 acquires the intermediate image data from the OS 21 at A34. A34 is an example of the intermediate image acquisition process.

[0043] When receiving an instruction to synthesize an image as a print setting, the information on the print setting passed to the auxiliary program together with the intermediate image data includes information specifying the image for synthesis as information on image synthesis. When the auxiliary program 42 determines the image for synthesis at A26, the information on the determined image for synthesis may be stored in the memory 12 and used as part of the print setting. Hereinafter, the case where a synthesis instruction is included in the print setting will be described.

[0044] Since the synthesis instruction is included in the print setting of the received execution instruction, the auxiliary program 42 executes the composite printing process (A41). The composite printing process is a process of synthesizing an image based on the synthesis instruction and generating print data of the synthesized image. The procedure of the composite printing process will be described with reference to the flowchart of FIG. 5. The composite printing process is a process by the auxiliary program 42 and is executed by the CPU 11 of the PC 1.

[0045] In the composite printing process, first, based on the execution instruction received from the general-purpose printing program 41, the CPU 11 synthesizes the intermediate image data of the image to be printed received from the general-purpose printing program 41 and the intermediate image data of the image for synthesis corresponding to the information specifying the image for synthesis and read from the memory 12, and generates the intermediate image data after synthesis (S101). The intermediate image data generated in S101 is an example of an intermediate composite image. By synthesizing the image to be printed and the image for synthesis in the state of the intermediate image data, it is possible to generate a composite image as compared with the case of synthesizing after rasterization.

[0046] Then, the CPU 11 causes the user IF 13 to display a preview screen including the image of the synthesized image (S102). S102 is an example of preview processing. An example of the preview screen is shown in FIG. 6. The preview screen 50 in the example of FIG. 6 includes a preview image 52, an OK button 53, an add button 54, and a setting button 55. The preview image 52 is a sample image schematically representing a composite image obtained by synthesizing the image to be printed and the image for synthesis.

[0047] The CPU 11 determines whether the OK button 53 has been operated on the preview screen 50 being displayed (S103). If it is determined that the OK button 53 has not been operated (S103: NO), the CPU 11 determines whether the setting button 55 has been operated (S104). If it is determined that the setting button 55 has not been operated (S104: NO), the CPU 11 determines whether the add button 54 has been operated (S105). If it is determined that the add button 54 has not been operated (S105: NO), the CPU 11 waits until any one of the OK button 53, the add button 54, and the setting button 55 is operated.

[0048] If it is determined that the setting button 55 has been operated (S104: YES), the CPU 11 causes the user IF 13 to display an editing screen which is a screen for accepting editing of the image for composition (S111). An example of the editing screen is shown in FIG. 7. The editing screen 60 in the example of FIG. 7 includes a sample image 61 of the image for composition, a basic item field 62 for accepting change instructions such as the display content and font of the image for composition, an OK button 63, and a cancel button 64.

[0049] The CPU 11 determines whether an editing instruction has been received by an operation on the basic item field 62 or the like on the displayed editing screen 60 (S112). S112 is an example of the editing process. By making the image for composition editable, the degree of freedom of the composite image is increased and the convenience is improved. Note that the auxiliary program 42 accepts, as editing of the image for composition, for example, designation of an angle, transparency, stacking order, arrangement, size, content of the image (character), and page. If it is determined that an editing instruction has been received (S112: YES), the CPU 11 returns to S111 and causes the user IF 13 to display the editing screen 60 including the sample image of the edited image.

[0050] When it is determined that no editing instruction has been received (S112: NO), the CPU 11 determines whether the cancel button 64 has been operated (S113). When it is determined that the cancel button 64 has been operated (S113: YES), the CPU 11 returns to S102 and causes the user IF 13 to display the preview screen 50. When it is determined that the cancel button 64 has not been operated (S113: NO), the CPU 11 determines whether the OK button 63 has been operated (S114). When it is determined that the OK button 63 has not been operated (S114: NO), the CPU 11 waits until it receives either an editing instruction, an operation on the OK button 63, or an operation on the cancel button 64.

[0051] When it is determined that the OK button 63 has been operated (S114: YES), the CPU 11 synthesizes the intermediate image data of the image being displayed in the sample image 61 of the image for synthesis, which is the edited image, and the intermediate image data of the image to be printed (S115). Then, the CPU 11 returns to S102 and causes the user IF 13 to display the preview screen 50 including the image of the synthesized image.

[0052] On the other hand, when it is determined that the add button 54 has been operated on the currently displayed preview screen 50 (S105: YES), the CPU 11 transmits the image data of the image for synthesis being displayed in the sample image 61 of the image for synthesis and a registration command instructing registration to the memory to the printer 2 (S116). S116 is an example of a registration process. Note that the CPU 11 may enable acceptance of the add button 54 when an image edit is accepted.

[0053] As a result, the printer 2 stores the received image data as an image for composition in the memory of the printer 2. By registering the edited image in the printer 2, the edited image can be used as an image for composition in the next print or in a print from another PC. Note that the printer 2 may overwrite the image data of the image for composition before editing, or may newly store it with a name. Also, in S116, the CPU 11 may receive an instruction from the user as to whether to overwrite or newly register, and include information based on the user's instruction in the registration command.

[0054] Also, when it is determined that the OK button 53 has been operated on the preview screen 50 being displayed (S103: YES), the CPU 11 rasterizes the intermediate image data after composition to generate print data (S121). S121 is an example of a rasterization process and a raster composition process. The print data generated in S121 is an example of a raster image and a raster composite image. The print data generated in S121 is data in a format that can be used for printing by the printer 2, for example, PDL data dedicated to the model of the printer 2.

[0055] By rasterizing in the auxiliary program 42 corresponding to the printer 2, the degree of freedom is greater compared to the case of rasterizing in the general-purpose printing program 41, and there is a high possibility that print data suitable for printing by the printer 2 is generated. Note that the print data generated by the auxiliary program 42 may be data in a format that can also be used for printing by a printer other than the model of the printer 2.

[0056] Note that instead of the auxiliary program 42 generating the print data, the general-purpose printing program 41 may generate the print data. That is, the auxiliary program 42 may pass the intermediate image data after composition and the information on print execution to the general-purpose printing program 41. The general-purpose printing program 41 may rasterize the intermediate image data received from the auxiliary program 42 to generate print data, and pass the generated print data to the auxiliary program 42.

[0057] The print data generated by the general-purpose printing program 41 is print data in a format that can be used for printing on various printers, for example, PWGRaster data or PDF data. If rasterized by the general-purpose printing program 41, the processing of the auxiliary program 42 is less, an increase in processing time can be avoided, and the program size of the auxiliary program 42 can be suppressed.

[0058] The CPU 11 causes the user IF 13 to display a preview screen based on the generated print data (S122). S122 is an example of preview processing. An example of the preview screen displayed in S122 is shown in FIG. 8. The preview screen 70 in the example of FIG. 8 includes a preview image 71, an edit button 72, a print button 73, and a print cancel button 74. The preview image 71 is an image showing an image of a composite image obtained by combining an image to be printed and an image for composition.

[0059] Then, the CPU 11 determines whether an operation on the print button 73 has been received on the currently displayed preview screen 70 (S123). If it is determined that an operation on the print button 73 has not been received (S123: NO), the CPU 11 determines whether an operation on the print cancel button 74 has been received (S124). If it is determined that an operation on the print cancel button 74 has not been received (S124: NO), the CPU 11 determines whether an operation on the edit button 72 has been received (S125). If it is determined that an operation on the edit button 72 has not been received either (S125: NO), the CPU 11 waits until an operation on any button is received.

[0060] If it is determined that an operation on the edit button 72 has been received (S125: YES), the CPU 11 proceeds to S111, causes the user IF 13 to display the edit screen 60 shown in FIG. 7, and receives an edit instruction from the user.

[0061] When it is determined that an operation on the print button 73 has been received (S123: YES), the CPU 11 transmits the print data generated in S121 to the printer 2 together with a print command instructing the execution of printing (S131). The process of transmitting the print data to the printer 2 is an example of a process for causing the printer 2 to perform printing and is an example of a process for transmitting the composite image to the printer 2. S131 is an example of a printing process.

[0062] After transmitting the print data, the CPU 11 notifies the general-purpose printing program 41 that the transmission of the print data has ended (S132). As a result, the general-purpose printing program 41 ends the processing of the print job based on the print instruction received at A32 in FIG. 2. The printer 2 that has received the print data and the print command executes the printing of the image of the received print data based on the received print command. Thereby, a printed matter is generated.

[0063] Note that the general-purpose printing program 41 may transmit the print data and the like to the printer 2. That is, the auxiliary program 42 may pass the generated print data to the general-purpose printing program 41 so as to be transmitted from the PC 1 with the printer 2 as the destination. The general-purpose printing program 41 transmits the print data received from the auxiliary program 42 to the printer 2. In this case, the process of passing the print data to the general-purpose printing program 41 is an example of a process for causing the printer 2 to print the composite image and is an example of a process for transmitting the composite image to the printer 2.

[0064] On the other hand, when it is determined that an operation on the print cancel button 74 has been received on the preview screen 70 being displayed (S124: YES), the CPU 11 passes a notification to cancel the print job to the general-purpose printing program 41 (S133). As a result, the general-purpose printing program 41 cancels the print job based on the print instruction received at A32 in FIG. 2 and ends the printing process. After S132 or S133, the CPU 11 ends the composite printing process.

[0065] Note that the printer 2 in this embodiment may have a compositing function for compositing images. When the printer 2 has a function for compositing images, when it receives a composite print command for instructing composite printing, it composes and prints the images. The composite print command includes, for example, print data indicating the image to be printed and a designation command for designating the image to be composited. When the printer 2 receives the composite print command, it reads out the image data of the image to be composited designated by the designation command from the memory of the printer 2, composes it with the received print data, and prints the composited image.

[0066] When the printer 2 has a compositing function, the auxiliary program 42 may generate print data of the image to be printed instead of generating print data of the composited image, and transmit a composite print command including the generated print data and a designation command for designating the image to be composited to the printer 2. In this case, the process of transmitting the composite print command to the printer 2 is an example of the process for causing the printer 2 to print the composite image.

[0067] Also, the printer 2 may have a function of rasterizing intermediate image data. When the printer 2 also has a rasterizing function, the auxiliary program 42 may transmit a composite print command including the intermediate image data of the image to be printed and a designation command for designating the image to be composited to the printer 2 without generating the print data of the image to be printed. Also in this case, the process of transmitting the composite print command to the printer 2 is an example of the process for causing the printer 2 to print the composite image.

[0068] If the auxiliary program 42 does not perform image composition and transmits a composite print command to the printer 2, and the printer 2 generates and prints the composite image, the load on the auxiliary program 42 is reduced. On the other hand, if the auxiliary program 42 generates the composite image and transmits the composite image to the printer 2, there is no need for the printer 2 to perform image composition, and the load on the printer 2 is reduced.

[0069] Note that the auxiliary program 42 may determine whether to cause the printer, which is selected as the device for executing printing, to synthesize an image or to synthesize the image by the auxiliary program 42 based on whether the printer has a function of synthesizing an image. For example, the auxiliary program 42 may request the printer 2 for information indicating the presence or absence of the function of synthesizing an image at A11 in FIG. 2. Further, when the printer for executing printing does not have a function of synthesizing an image, the auxiliary program 42 may not accept an instruction for synthesis as a print setting.

[0070] As described in detail above, according to the auxiliary program 42 of the present embodiment, the PC 1 acquires the image for synthesis that the printer 2 has, generates a synthesized image with the image to be printed, and previews and displays the synthesized image. As a result, the user can grasp in advance what kind of image will be printed by the printer, and as a result, the possibility of avoiding unintended printing by the user is increased.

[0071] Furthermore, in the present embodiment, since the printer 2 manages the image for synthesis, the image for synthesis can also be used from other PCs or the like connected to the printer 2. Therefore, the image for synthesis can be shared by a plurality of PCs or the like.

[0072] Note that 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 variously improved and modified without departing from the gist thereof. For example, the device connected to the PC 1 is not limited to a printer, and may be any device having a printing function such as a multifunction peripheral, a copying machine, a fax machine, or the like. Also, the number of printers connected to the PC 1 is not limited to the illustrated example, and may be two or more.

[0073] Also, for example, an example of an external device is not limited to the printer 2, and it may be a server or the like that can communicate with the PC 1. For example, as shown in FIG. 9, the printer 2 and the server 3 may be connected to the PC 1, and the server 3 may have an image for composition. In the case of this configuration, the auxiliary program 42 issues requests such as A11 and A13 in FIG. 2 and an instruction for registration in S116 of the composite printing process to the server 3. The server 3 responds to requests from the PC 1 and performs registration in the A12 and A14 responses and the memory. The auxiliary program 42 may perform processing after A22 based on the image data acquired from the server 3 and accept selection of an image for composition by the user. If the server manages the image for composition, the capacity of the printer's memory may be small. On the other hand, if the printer manages the image for composition, the image for composition can be used even in a small printing system without a server.

[0074] Also, all of the illustrated display screens are merely examples and are not limited thereto. For example, the arrangement and number of each image and each button displayed on the display screen are not limited to the illustrated example. For example, in the editing screen 60 shown in FIG. 7, a sample image 61 of the image for composition was displayed, but it may not be displayed. Also, in the preview screen 50 shown in FIG. 6, although it was assumed that changes such as the arrangement of the image for composition are accepted, they may not be accepted.

[0075] Also, in this embodiment, it was assumed that the preview is displayed in both S102 and S122 of the composite printing process, but only one of them may be used. For example, if S122 to S125 and S133 are deleted and the OK button 53 is operated on the preview screen 50, the CPU 11 may transmit the print data generated in S121 to the printer 2. Also, for example, if S102 is deleted, the CPU 11 may display a preview after generating the print data after composition. In that case, instead of synthesizing with the intermediate image data, the CPU 11 may rasterize each of the image to be printed and the image for composition and then synthesize them. By synthesizing the rasterized images, the composite image can be transmitted to the printer more quickly compared to the case of synthesizing with the intermediate image data.

[0076] Also, the image information obtained by the auxiliary program 42 from the printer 2 at A14 in FIG. 2 does not have to be intermediate image data, and may be, for example, image data in a format that can be directly synthesized with the print data. In this case, the accuracy of the display of the sample image 52 is improved. The auxiliary program 42 may generate print data in S121 of the composite printing process (FIG. 5), then synthesize an image with the print data, and perform a preview display in S122 based on the synthesized print data.

[0077] Also, in this embodiment, the auxiliary program 42 is assumed to acquire all the image data stored in the printer 2 collectively at A14 in FIG. 2, but it is not limited to this. For example, the auxiliary program 42 may acquire only the names or thumbnail information of the images for synthesis that can be selected at A14, and may acquire the image data of the selected image when receiving the user's selection of an image.

[0078] Also, at A11 or A13, the auxiliary program 42 may request not only function information and image information but also, for example, information regarding the capabilities of the printer 2. In that case, the printer 2 responds with various types of information according to the request. Then, the auxiliary program 42 may display a screen for receiving the user's settings based on the various types of information acquired from the printer 2.

[0079] Also, 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. Also, the program that executes the processing of this embodiment is not limited to the auxiliary program 42, and any program that receives instructions from the OS 21 or the general-purpose printing program 41 when performing printing using the general-purpose printing program 41 may be used. For example, the Print workflow app published by Microsoft may also be used.

[0080] Also, the execution timing of the auxiliary program 42 is not limited to the examples of the embodiments. For example, it may be directly executed upon receiving an execution instruction from the OS 21, or it may be an auxiliary program 42 that is resident. When it is resident, the auxiliary program 42 may perform the above-described operations upon receiving an execution instruction.

[0081] Also, in any of the flowcharts disclosed in the embodiments, the plurality of processes in any plurality of steps can be arbitrarily changed in execution order or executed in parallel within a range where there is no contradiction in the processing content.

[0082] Also, the processes disclosed in the embodiments may be executed by a single CPU, a plurality of CPUs, hardware such as an ASIC, or a combination thereof. Also, the processes disclosed in the embodiments can be realized in various forms such as a recording medium recording a program for executing the process, or a method.

Description of Reference Numerals

[0083] 1 PC 2 Printer 3 Server 11 CPU 13 User IF

Claims

1. A program that assists a general-purpose printing program included in an operating system of an information processing device that can communicate with an external device, The computer of the information processing device executes an acquisition process for acquiring image data representing an image to be synthesized from the external device; When an instruction for print settings is received on a print screen displayed by a program different from the program, a receiving process is executed to receive input of print settings to be used for compositing the image to be used for compositing, the image data being indicated by the image data; When a print execution instruction is received on the print screen, a display process for displaying a preview screen including the intermediate image data received from the general-purpose printing program and a composite image based on the image data; a print control process for causing a printer to print the composite image; A program that executes the following.

2. 2. The program according to claim 1, The print control process includes: a synthesis process for generating synthetic image data representing the synthetic image based on the intermediate image data and the image information; A process of passing the composite image data to the general-purpose printing program; the general-purpose printing program generates print data based on the composite image data and transmits the print data to the printer. program.

3. 2. The program according to claim 1, The print control process includes: a transmission control process for transmitting to the printer either the intermediate image data or print data based on the intermediate image data, and a command for designating the image information indicating the image to be combined; program.

4. The program according to claims 1 to 3, The computer, executing an editing process for accepting editing of the image to be combined while the preview screen is displayed; program.

5. 5. The program according to claim 4, The computer, When the editing of the image to be combined is accepted, a registration process is executed to register edited image data indicating the image to be combined after editing in the external device. program.

6. 5. The program according to claim 4, The computer, when editing of the image to be combined is accepted, an update process is executed to update the preview screen by displaying, on the preview screen, a combined image of edited image data indicating the image to be combined after editing and the intermediate image data. program.

7. The program according to any one of claims 1 to 6, the external device is the printer; program.

8. The program according to any one of claims 1 to 7, The computer, In response to the instruction for the print setting being accepted on the print screen, The reception process; a storage control process for storing print setting information indicating the accepted print settings in a memory of the information processing device; Execute When the instruction to execute printing is accepted on the print screen, the display process and the print control process are executed based on the print setting information stored in the memory. program.