Support program
A support program stores printer capability information to reduce processing delays by generating print setting screens based on stored data, rather than re-acquiring it from the printer each time, thus optimizing printer interaction.
Patent Information
- Application Number
- JP2025169309
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-10-07
- Publication Date
- 2026-01-08
AI Technical Summary
Accessing a printer each time it is selected causes processing delays due to the need for communication with the printer to acquire capability information.
A support program that stores printer capability information in the memory of an information processing device, allowing it to display print setting screens without repeated communication with the printer, by generating display data based on previously acquired capability information.
Reduces processing delays associated with printer communication by minimizing the need for repeated printer interactions.
Smart Images

Figure 2026002870000001_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 general-purpose print program that is built into the operating system (OS) as standard, without using the printer driver described above. With this technology, when the OS detects a printer, it associates it with the OS's standard general-purpose print program, and thereafter, when a print instruction for that printer is received, printing can be performed using the OS's standard general-purpose print program without using a printer driver. Technology related to the OS's standard general-purpose print program is disclosed, for example, in Patent Document 1. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2020-126364 Summary of the Invention [Problem to be solved by the invention]
[0004] As disclosed in Patent Document 1, a support program (auxiliary program) is launched from the general-purpose printing program each time a printer is selected, and the support program accesses the printer and passes printer capability information to the editing application program via the general-purpose printing program. However, accessing the printer each time a printer is selected can cause processing delays. [Means for solving the problem]
[0005] A support program devised for the purpose of solving the above-mentioned problems 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 is pre-installed in the operating system of the information processing device, the general-purpose printing program being capable of handling data for displaying a print setting screen on a display of the information processing device, and causes the computer to execute a capability acquisition process for acquiring capability information indicating the capabilities of the printer by communicating with the printer, and a storage process for storing information based on the capability information acquired in the capability acquisition process in a memory of the information processing device, and further causes the computer to execute a process for acquiring the print setting screen. When processing is requested by the general-purpose printing program due to the printer being selected on the screen and the information based on the capability information is stored in the memory, the information processing device is configured to execute the following processes without executing the capability acquisition process: a read process that reads from the memory the information based on the capability information stored in the storage process; a generation process that uses the information based on the capability information read in the read process to generate display data for displaying the contents of setting items that reflect the capability information on the print setting screen; and a display process that passes the display data generated in the generation process to the general-purpose printing program and displays the print setting screen to be displayed on the display of the information processing device in accordance with the display data.
[0006] A support program having the above configuration communicates with a printer to obtain capability information and stores information based on the capability information in the memory of the information processing device. When a printer is selected and a processing request is made from the general-purpose printing program while the capability information-based information is stored in the memory, the support program does not execute the capability acquisition process that requires communication with the printer, but instead uses the information based on the capability information stored in the memory to display the contents of setting items that reflect the capability information on the print setting screen. This reduces the number of times the information processing device communicates with the printer when the printer is selected, and suppresses processing delays associated with communication with the printer.
[0007] An apparatus for realizing the functions of the support program, a control method, and a computer-readable storage medium storing the support program are also novel and useful. [Effects of the Invention]
[0008] The technology disclosed in this specification realizes a technology for suppressing processing delays associated with communication with a printer in an information processing device in which an OS-standard general-purpose printing 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 in which an auxiliary program according to a first embodiment is installed. [Figure 2] FIG. 10 is a sequence diagram showing an example of a procedure when printing is selected. [Figure 3] FIG. 10 is a diagram illustrating an example of a print setting screen. [Figure 4] FIG. 10 is a diagram showing changes made to a print setting screen. [Figure 5] FIG. 10 is a diagram showing changes made to a print setting screen. [Figure 6] FIG. 10 is a sequence diagram illustrating an example of a procedure when a print instruction is received. [Figure 7] FIG. 10 is a sequence diagram showing an example of a procedure when printing is selected in the second embodiment. [Figure 8] FIG. 10 is a sequence diagram illustrating a procedure when detailed settings are selected. [Figure 9] FIG. 10 is a diagram illustrating an example of a detailed setting screen. [Figure 10] FIG. 11 is a sequence diagram showing a modified example of the procedure when printing is selected in the third embodiment. [Figure 11] FIG. 10 is a sequence diagram showing a modified example of the procedure when printing is selected. DETAILED DESCRIPTION OF THE INVENTION
[0010] 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] (First embodiment) As shown in FIG. 1, the PC 1 of the first 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 executes various processes in accordance with programs read from the memory 12 and based on user operations. Various programs and various data are stored in the memory 12. The memory 12 is also used as a work area when various processes are executed. The buffer provided in the CPU 11 is also an example of memory. Note that the memory 12 is not limited to a ROM, RAM, HDD, etc. built into the PC 1, but may also be a storage medium readable and writable by the CPU 11, such as a recording medium, such as a CD-ROM or DVD-ROM.
[0013] The user IF 13 includes hardware that displays a screen for notifying the user of information and hardware that accepts user operations. The user IF 13 may be a combination of a display 13a capable of displaying information and a mouse, keyboard, or the like that has an input acceptance function, or may be a display 13a and a touch panel that has an input acceptance function. The user IF 13 includes an example of a display.
[0014] The communication IF 14 includes hardware for communicating with an external device such as the printer 2. The communication IF 14 may use 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 also be provided with multiple communication IFs 14 compatible with multiple communication standards.
[0015] 1, the memory 12 of the PC 1 stores an operating system (hereinafter referred to as "OS") 21 including a general-purpose printing program 41, an auxiliary program 42, and various application programs (hereinafter referred to as "apps"). The OS 21 is, for example, Windows (registered trademark), macOS (registered trademark), Linux (registered trademark), iOS (registered trademark), or Android (registered trademark). The auxiliary program 42 is an example of a support program.
[0016] The PC 1 of this embodiment incorporates various applications, such as an information application 43. The information application 43 is, for example, a map application, a calendar application, or a browser, and has a function of displaying various information on the display 13a in response to a user request. The information application 43 is an example of an application program. Note that the information application 43 itself does not necessarily have a function of printing the displayed information.
[0017] The generic printing program 41 is an OS standard program provided together with the OS 21, and has a function for causing the printer 2 or the like to print information displayed on the display 13a by the information application 43 or the like. The generic printing program 41 of this embodiment is a program that includes a function for generating intermediate image data based on the image data to be printed. The generic printing program 41 supports functions that can be used in common by multiple models of printers provided by various printer vendors. Unlike printer drivers that are specific to various printers, the generic printing program 41 does not support all of the functions that are specific to various printers, and the functions it supports are limited to generic ones.
[0018] The auxiliary program 42 is a program or group of programs that executes processing based on instructions from the OS 21 in conjunction with the processing of the general-purpose printing program 41, and is a program that supports the control of the target hardware. The auxiliary program 42 of this embodiment corresponds to the model of the printer 2 connected to the PC 1, and is launched from the general-purpose printing program 41 when, for example, an instruction to cause the printer 2 to execute printing using the general-purpose printing program 41 is received. The auxiliary program 42 is, for example, called a print support app (abbreviated as PSA) or a hardware support app (abbreviated as HSA).
[0019] The auxiliary program 42 may be a combination of multiple programs that each accept an execution command, or a single program that can execute different processes in response to commands. The auxiliary program 42 may also be a program prepared by a printer vendor for each printer type. For example, an auxiliary program for inkjet printers and an auxiliary program for laser printers may be prepared. A separate auxiliary program may be prepared not only for each printer type, but also for each printer model or series of printer models.
[0020] 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 or the like according to the type and model of the connected printer 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.
[0021] As shown in Fig. 1, the PC 1 of this embodiment is connected to the printer 2. The printer 2 is a device that has at least a printing function and a communication function. The printer 2 receives print data and print settings from an external device such as the PC 1, and performs printing according to the print settings.
[0022] The printer 2 can accept print settings based on the functions of the printer 2. The printer 2 can also accept settings for processing options that allow the printer 2 to perform image processing, such as layout printing (N in 1). Note that processing options can also be realized by image processing using the auxiliary program 42. The printer 2 cannot perform image processing, and does not accept settings for processing options that allow the auxiliary program 42 to perform image processing. In other words, the printer 2 stores parameters for each configurable item according to the capabilities of the printer 2.
[0023] The auxiliary program 42 has a function of displaying a dedicated print setting screen (hereinafter referred to as the "detailed setting screen") on the printer 2. In addition to items for which the printer 2 can accept settings, the auxiliary program 42 can display and accept settings for items for which the printer 2 cannot process images but the auxiliary program 42 does, as described above, on the detailed setting screen. The auxiliary program 42 can store capability-based information 44. The capability-based information 44 is information that indicates the contents of setting items to be displayed on the print setting screen based on the printer's capability information. The capability-based information 44 is an example of "information based on capability information." The capability-based information 44 is not stored in the memory 12 when the auxiliary program 42 is installed, but is stored, for example, through communication with the printer 2. Details of the print setting screen and the capability-based information 44 will be described later.
[0024] The general-purpose printing program 41 can display a print setting screen and accept print settings. The general-purpose printing program 41 can handle data to be displayed on the print setting screen. For example, the general-purpose printing program 41 can receive display data based on the capability-dependent information 44 from the auxiliary program 42 and accept print settings via the print setting screen based on the display data.
[0025] Next, the printing procedure including the operation of the auxiliary program 42 of this embodiment, and the procedure performed by each program when printing is selected in the information application 43, will be described with reference to the sequence diagram of Fig. 2. Note that Fig. 2 and other sequence diagrams described later show the operation when the auxiliary program 42 corresponding to the printer 2 is installed in the PC 1.
[0026] Note that the processes and each processing step of the flowchart in this embodiment basically represent processing by the CPU 11 in accordance with instructions written in a program such as the auxiliary program 42. The processing by the CPU 11 also includes hardware control using the API of the OS 21. In this specification, the operation of each program will be explained without a detailed description of the OS 21. Also, the term "obtain" is used as a concept that does not necessarily require a request.
[0027] At the beginning of the procedure, the user launches the information application 43 (A01). In response to a user instruction, the information application 43 displays an information screen containing various information on the display 13a (A02). If the user wants to print an image of the displayed information screen, the user selects print on the information screen (A03). The information application 43 then sends a display request and data for the information screen to the general-purpose print program 41 of the OS 21 (A04).
[0028] In response to the display request, the general-purpose printing program 41 displays a print setting screen on the display 13a (A06). The print setting screen is a screen that accepts instructions for print settings and instructions for printing. For example, as shown in FIG. 3, the print setting screen D2 includes a printer selection field 51 that accepts the selection of a printer, a notification field 52 that displays a notification image, a print setting field 53 that accepts the specification of various print settings, a preview field 54 that displays an image of the information screen to be printed, a detailed settings button SW2 that accepts an instruction to make detailed print settings, and a print button SW3 that accepts an instruction to execute printing.
[0029] The print setting field 53 displays print setting items for functions supported by the general-purpose print program 41, and allows the user to enter print setting values. Examples of items that can be set via the print setting field 53 include the number of copies, print orientation, double-sided printing, layout printing (Nin1), paper size, paper tray, print range, paper type, color, borderless printing, scaling, and print quality (resolution). To make print settings easier, the print setting field 53 may display only the main items, and other items may be added and displayed when other settings are operated.
[0030] The notification image displayed in the notification field 52 is an image that indicates the content of the notification to be sent to the user. The notification image may include, for example, text, a still image, or a video, or may be a combination of these.
[0031] 2, the user can select a printer by operating the printer selection field 51 on the currently displayed print setting screen D2 (A07). If the selected printer is printer 2, the general-purpose print program 41 starts the auxiliary program 42 corresponding to printer 2 and requests processing corresponding to the selected printer (A08). In A08, the general-purpose print program 41 passes information about the selected printer and information about the print settings that were set when the printer was selected to the auxiliary program 42.
[0032] If printer 2 is set as the printer to be normally used by the OS 21, the general-purpose printing program 41 displays the print setting screen D2 with printer 2 selected (A06) and starts the auxiliary program 42 (A08). That is, printer 2 is automatically selected by the OS 21, and the general-purpose printing program 41 executes A08 based on the information of the selected printer 2. In this case, the user does not need to operate A07.
[0033] Instead of the general-purpose printing program 41 displaying the print setting screen D2, the information application 43 may be configured to display the print setting screen D2. In this case, the information application 43 starts the general-purpose printing program 41 in response to the selection of printing in A03, obtains data to be displayed on the print setting screen D2 from the general-purpose printing program 41, and displays the print setting screen D2 on the display 13a. Then, in response to the selection of printer 2 or in response to the selection of printer 2 in A07, the information application 43 passes information about the selected printer 2 to the general-purpose printing program 41. As a result, the general-purpose printing program 41 starts the auxiliary program 42 corresponding to printer 2 in A08.
[0034] Upon being started, the auxiliary program 42 determines whether the capability-dependent information 44 corresponding to the printer 2 has been stored in the memory 12 (A09). For example, when the printer 2 is selected and printed for the first time after the auxiliary program 42 is installed, the capability-dependent information 44 corresponding to the printer 2 is not stored in the memory 12. In this case (alt: not stored), the auxiliary program 42 requests the OS 21 to acquire the capability information of the printer 2 (A11). In response to the request from the auxiliary program 42, the OS 21 sends an acquisition request to the printer 2 requesting acquisition of the capability information, and acquires the capability information from the printer 2 (A12). The OS 21 passes the capability information acquired from the printer 2 to the auxiliary program 42 (A13). A11 to A13 are an example of a capability acquisition process.
[0035] The OS 21 communicates with the printer 2, for example, using IPP (Internet Printing Protocol) communication. Note that the auxiliary program 42 may obtain capability information directly from the printer 2, for example, using MIB (Management Information Base), instead of making a request to the OS 21.
[0036] The capability information acquired from the printer 2 includes information on parameters that can be set as print settings. The capability information also includes, for example, status information, information on remaining consumables, information on the installed trays, information on the paper type set for each tray, and information on the print resolution that can be supported. The printer 2 may also have a function for performing image processing based on a received print job and printing based on the processed data, such as layout printing (N in 1), composite printing such as watermark printing, and economical printing such as toner saving that conserves coloring agents. If the printer 2 has an image processing function that it can execute, the printer 2 may pass information on that function to the OS 21 as capability information.
[0037] The auxiliary program 42, which has acquired the capability information, generates capability-based information 44 based on the capability information (A14) and stores it in the memory 12 (A15). A14 and A15 are an example of storage processing.
[0038] For example, the auxiliary program 42 determines the content of the setting items to be displayed on the print setting screen D2 based on the capability information, and stores the determined content of the setting items in the memory 12 as capability-based information 44. Specifically, for example, assume that the capability information acquired from the printer 2 includes information indicating that the printer 2 is equipped with "Tray 1," "Tray 2," and an "additional tray," that "envelopes" can be loaded in "Tray 1," that "plain paper" can be loaded in "Tray 2," and that "cloth" can be loaded in the "additional tray." In this case, the auxiliary program 42 determines that "auto-select," "Tray 1," "Tray 2," and "additional tray" can be set as setting parameters for the "paper feed tray," and that "plain paper," "envelope," and "cloth" can be set as setting parameters for the "paper type" item, and stores the determined content in the memory 12 as capability-based information 44.
[0039] The capability-based information 44 may include settings for processing options such as layout printing, booklet printing, and poster printing. Layout printing is a printing method in which images of N pages of a document are reduced and arranged on one side of a sheet of paper, and then printed. Booklet printing is a printing method in which images of a document are reduced and rearranged, and two pages are arranged on each side of a sheet of paper, and then printed. Poster printing is a printing method in which an image of a document is enlarged and divided into M pieces, and the divided images are arranged on one side of M sheets of paper, and then printed. For example, booklet printing and poster printing are items or parameters that cannot be processed by the printer 2, but can be realized by the auxiliary program 42. In this embodiment, layout printing can be handled by both the printer 2 and the auxiliary program 42, but booklet printing and poster printing cannot be processed by the printer 2, but can be realized by the auxiliary program 42.
[0040] As shown in FIG. 2, the auxiliary program 42, which has stored the capability-based information 44 in the memory 12, generates display data using the capability-based information 44 (A22). A22 is an example of a generation process. The auxiliary program 42 passes the generated display data to the general-purpose print program 41 (A23), and displays a print setting screen D2 reflecting the capability information on the display 13a (A24). A23 is an example of a display process. When the print button SW3 on the print setting screen D2 shown in FIG. 3 is operated, the auxiliary program 42 executes printing. The procedure for the process of executing printing will be described later.
[0041] After the processes of A22 and A23, A01 to A6 are performed again, and when the printer 2 is selected and printing is performed using the general-purpose printing program 41 (A07), the general-purpose printing program 41 starts the auxiliary program 42 in the same manner as described above (A08). In this case, since the capability-based information 44 is stored in the memory 12 (A09, alt: stored), the auxiliary program 42 reads the capability-based information 44 from the memory 12 (A16) without executing a process to acquire the capability information from the printer 2. A16 is an example of a read process. Then, the auxiliary program 42 performs the processes of A22 to A23 based on the capability-based information 44, thereby displaying the print setting screen D2 reflecting the capability information on the display 13a.
[0042] That is, the auxiliary program 42 acquires capability information from the printer 2 when the printer is selected for the first time, stores the capability-dependent information 44 in the memory 12, and generates display data. From the next time onwards, when the printer 2 is selected, the auxiliary program 42 does not acquire capability information from the printer 2, but generates display data using the capability-dependent information 44 stored in the memory 12. Therefore, from the next time onwards when the printer 2 is selected, the time from the printer selection operation to the display of the print setting screen D2 that reflects the capabilities of the printer 2 is shortened.
[0043] Instead of acquiring the capability information from the printer 2 when the printer 2 is selected for the first time (A09, alt: not stored, A11 to A13), the capability information may be acquired from the printer 2 when a predetermined time has passed since the previous process of acquiring the capability information. In this way, if the capability information changes after the capability information was acquired, for example, when an additional tray is attached or detached from the printer 2, it becomes possible to display the print setting screen D2 according to the change in the capability information.
[0044] The display of the print setting screen D2 will be described in detail below. For example, in the print setting screen D2 displayed without using the capability information, as shown in FIG. 4(a), the print setting items and parameters supported by the general-purpose printing program 41 are displayed in the print setting field 53. Each item is provided with a list box 112 and a list button 113. When the list button 113 is operated using the user IF 13, the list box 112 displays selectable parameters that can be set for the item.
[0045] In this embodiment, the print setting screen D2 displays the following items: "Number of Copies," "Paper Size," "Paper Tray," "Double-Sided Printing," and "Layout Printing." For example, the "Paper Type" list box 112 displays "Plain Paper" and "Envelope" as selectable parameters. For example, the "Paper Tray" list box displays "Auto Select," "Tray 1," and "Tray 2" as selectable parameters.
[0046] In contrast, print setting screen D2 displayed using capability information displays additional items or parameters in addition to the print setting items or parameters displayed on print setting screen D2 shown in Fig. 4(a), as shown in Fig. 4(b). For example, if capability-based information 44 includes the additional items "poster printing" and "staple," the print setting screen D2 additionally displays the items "poster printing" and "staple," as indicated by arrows 123 and 124 in Fig. 4(b).
[0047] Furthermore, for example, if the capability-based information 44 includes "cloth" as a parameter to be added to the "paper type" item and "additional tray" as a parameter to be added to the "paper feed tray" item, then on the print setting screen D2, "cloth" will be added to the "paper type" list box 112, as indicated by arrow 121 in Figure 4(b), and "additional tray" will be added to the "paper feed tray" list box 112, as indicated by arrow 122 in the figure.
[0048] In this way, when the auxiliary program 42 selects a printer 2 and performs print settings after storing the capability-dependent information 44 in the memory 12, the auxiliary program 42 can display on the display 13a a print setting screen D2 that reflects the capabilities of the selected printer 2 or the capabilities of the auxiliary program 42 that is compatible with the printer 2. Therefore, the user can perform detailed print settings on the print setting screen D2 without operating the advanced settings button SW2 on the print setting screen D2 to display the advanced settings screen on the display 13a, thereby saving the user the trouble of configuring the print settings.
[0049] Furthermore, the auxiliary program 42 stores the contents of the setting items that will ultimately be displayed on the print setting screen D2 in the memory 12 as capability-based information 44, so that when generating display data, there is no need to execute processing to generate the capability-based information 44, thereby reducing delays in displaying the print setting screen D2 that reflects the capability information.
[0050] Furthermore, auxiliary program 42 may generate a notification image notifying that the number of print setting items or parameters displayed on print setting screen D2 has increased, and display data including the notification image in notification field 52 of print setting screen D2. Note that auxiliary program 42 may generate display data including a message box including the notification, and display the message box on print setting screen D2 separately from notification field 52.
[0051] 3 shows the print setting screen D2 including one notification field 52, but the layout, shape, size, number, etc. of the notification field 52 are not limited to the example shown in this figure. The auxiliary program 42 may acquire information about the notification field 52 from the general-purpose printing program 41 and determine display data to be displayed in the notification field 52 based on the acquired information. For example, if there are multiple layouts in which the notification field 52 can be displayed and the display location can be specified by the auxiliary program 42, the auxiliary program 42 may pass display data including information specifying the display location to the general-purpose printing program 41. Furthermore, if the size of the notification field 52 can be selected, the auxiliary program 42 may pass information specifying the size to the general-purpose printing program 41.
[0052] Furthermore, the auxiliary program 42 can display the information itself instead of generating display data and passing it to the general-purpose printing program 41. However, in this case, a screen separate from the print setting screen D2 is displayed, which can be cumbersome and stressful for the user. Displaying the information within the print setting screen D2 of the general-purpose printing program 41 of the OS 21 simplifies the display and avoids stress for the user.
[0053] Next, the procedures performed by each program when a print instruction is received by a user operating the print button SW3 while the print setting screen D2 shown in Fig. 3 is displayed will be described with reference to the sequence diagram in Fig. 6. The print instruction from the user may be input directly to the general-purpose print program 41, or may be input to the information application 43 and output from the information application 43 to the general-purpose print program 41.
[0054] When the general-purpose printing program 41 receives a print execution instruction from the user (D01), it uses the print settings received on the print setting screen D2 to convert the format of the image data representing the image to be printed into the format of intermediate image data to generate intermediate image data (D02), and passes the generated intermediate image data to the auxiliary program 42 (D03). The image data contained in the information application 43 is of various types, and the general-purpose printing program 41 converts the image data to be printed into intermediate image 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 image data may be omitted and the image data may be used as is as intermediate image data. The intermediate image data may be, for example, XPS data.
[0055] The auxiliary program 42 processes the intermediate image data received in D03 by reflecting the print settings set in the auxiliary program 42 (D04). For example, if layout printing (2 in 1) is set, the intermediate image data to be printed is reduced and arranged two pages on each side of the paper. The auxiliary program 42 rasterizes the processed intermediate image data and generates print data representing the image to be printed (D05). The print data generated in D05 is data in a format that can be used for printing by printer 2, for example, PDL data dedicated to the model of printer 2.
[0056] Rasterizing with the auxiliary program 42 corresponding to the printer 2 allows for greater flexibility than rasterizing with the general-purpose print program 41, and is more likely to generate print data suitable for printing on the printer 2. Note that the print data generated by the auxiliary program 42 may be in a format that can also be used for printing on printers other than the printer 2 model.
[0057] The auxiliary program 42 transmits the print data generated in D05 to the printer 2 together with a print command instructing execution of printing (D06). D06 is an example of transmission processing. If there is image processing that the auxiliary program 42 has decided to have the printer 2 execute, it generates a print command that also includes information about that processing. The auxiliary program 42 further notifies the general-purpose printing program 41 that transmission of the print data has been completed (D08). Based on this notification, the general-purpose printing program 41 cancels transmission of the print data.
[0058] Upon receiving the print data and print command, the printer 2 prints the image of the print data based on the received print command (D07), thereby generating a printed matter.
[0059] Note that instead of the auxiliary program 42 generating the print data, the general-purpose printing program 41 may generate the print data. For example, the auxiliary program 42 may pass the intermediate image data processed in D03 and print execution information to the general-purpose printing program 41, and the general-purpose printing program 41 may rasterize the intermediate image data to generate the print data. In this case, the general-purpose printing program 41 passes the generated print data to the auxiliary program 42. Then, when the auxiliary program 42 receives print data from the general-purpose printing program 41, it sends the print data received from the general-purpose printing program 41 to the printer 2 together with a print command instructing the execution of printing.
[0060] The print data generated by the general-purpose print program 41 is print data in a format that can be used for printing on various printers, such as PWGRaster data or PDF data. If the print data is rasterized by the general-purpose print program 41, the processing of the auxiliary program 42 is reduced, which is expected to prevent an increase in processing time and reduce the program size of the auxiliary program 42.
[0061] The general-purpose printing program 41 may transmit the print data and print commands to the printer 2. In other words, the auxiliary program 42 may pass the generated print data to the general-purpose printing program 41 so that the data is sent from the PC 1 to the printer 2 as the destination. In this case, the general-purpose printing program 41 transmits the print data, etc. received from the auxiliary program 42 to the printer 2. In this case, the process in which the auxiliary program 42 passes the print data, etc. to the general-purpose printing program 41 is an example of a transmission process.
[0062] As described above, the auxiliary program 42 of this embodiment communicates with the printer 2 to acquire capability information, and stores capability-dependent information 44, including print setting items or parameters determined based on the capability information, in the memory 12 of the PC 1. When the auxiliary program 42 receives a processing request from the general-purpose printing program 41 upon selection of the printer 2 while the capability-dependent information 44 is stored in the memory 12, the auxiliary program 42 does not execute processing that requires communication with the printer 2, as shown at A11 to A13 in FIG. 2, but instead displays the contents of the setting items that reflect the capability information on the print setting screen D2 using the capability-dependent information 44 stored in the memory 12. This reduces the number of times the PC 1 communicates with the printer 2 when the printer 2 is selected, thereby suppressing processing delays associated with communication with the printer 2.
[0063] (Second embodiment) Next, a second embodiment of the support program disclosed in this specification will be described with reference to Figures 7 to 9. This embodiment differs from the first embodiment in that the process of acquiring capability information and the process of storing capability-dependent information 44 in memory 12 are performed when the detailed setting screen is displayed, rather than when the printer 2 is selected. Here, the differences from the first embodiment will be mainly described, and the same reference numerals as in the first embodiment will be used to refer to common points, and a description thereof will be omitted as appropriate.
[0064] 7, when the printer 2 is selected and started from the general-purpose printing program 41 with the capability-dependent information 44 not stored in the memory 12 (A07-A09, alt: not stored), the auxiliary program 42A performs processing for the general-purpose printing program 41 (A41) without performing processing for displaying the print setting screen D2 on the OS 21. Therefore, the general-purpose printing program 41 displays default values on the print setting screen D2 (A42). In this case, the print setting items or parameters displayed on the print setting screen D2 are not changed, and the setting values become the default values.
[0065] The auxiliary program 42A may pass display data for displaying a notification image to be displayed in the notification field 52 of the print setting screen D2 to the general-purpose print program 41. The notification image is, for example, an image notifying the user that, if detailed print settings are made by operating the detailed settings button SW2, detailed print settings can be made on the print setting screen D2 from the next time onwards. This promotes the use of the function of the auxiliary program 42 to reflect the capability information of the printer 2 on the print setting screen D2.
[0066] The procedures performed by each program when an instruction for detailed settings is received through a user operation of the detailed settings button SW2 while the print settings screen D2 shown in Fig. 3 is displayed will be described with reference to Fig. 8. The instruction received by the general-purpose printing program 41 via the detailed settings button SW2 is an example of a display instruction.
[0067] The general-purpose printing program 41 starts the auxiliary program 42A (B02) based on a detailed setting instruction from the user (B01). The general-purpose printing program 41 passes the print settings set in the print setting field 53 of the print setting screen D2 to the auxiliary program 42A.
[0068] In response to being started, the auxiliary program 42A acquires capability information from the printer 2 (B11 to B13). B11 to B13 are an example of a capability acquisition process. The processes of B11 to B13 are similar to the processes of A11 to A13 in FIG. 2, and therefore a description thereof will be omitted.
[0069] The auxiliary program 42A that has acquired the capability information displays a detailed setting screen on the display 13a and accepts detailed print settings (B21). B21 is an example of a detailed display process and an acceptance process.
[0070] 9, the detailed settings screen D3 displays a detailed settings field 61 and an apply button SW22. The detailed settings field 61 displays print setting items and parameters based on the capability information acquired from the printer 2 in B11 to B13. The detailed settings field 61 also displays setting items and parameters for processing options that are processed by the auxiliary program 42A, not by the printer 2. In other words, the detailed settings field 61 displays additional items that are items added to the print setting items that can be set in the general-purpose printing program 41, or additional parameters that are parameters that are parameters that can be set in the general-purpose printing program 41, based on the capability information of the printer 2.
[0071] For example, "Staple" indicated by arrow 151 in the detailed settings screen D3 in Fig. 9 is an example of an additional item. "Poster printing" indicated by arrow 153 and "Booklet printing" indicated by arrow 154 are examples of additional items. "Additional tray" indicated by arrow 152 and "Fabric" indicated by arrow 155 are examples of additional parameters. The auxiliary program 42A can accept setting values for each item via the detailed settings screen D3.
[0072] Returning to FIG. 8 , the auxiliary program 42A accepts an operation via the user IF 13 (B22). For example, when the auxiliary program 42A accepts an instruction to complete the detailed print settings by operating the Apply button SW22 shown in FIG. 9 , the auxiliary program 42A generates (B25) and stores (B26) capability-based information 44 based on the additional items or additional parameters accepted via the detailed settings screen D3. B25 and B26 are examples of storage processing. The auxiliary program 42A of this embodiment stores all of the additional items or additional parameters that can be set via the detailed settings screen D3 as capability-based information 44 in the memory 12. In other words, the capability-based information 44 includes not only the additional items or additional parameters set on the detailed settings screen D3, but also the additional items or additional parameters that were not set on the detailed settings screen D3, as targets to be displayed on the print settings screen D2.
[0073] Returning to Fig. 8, the auxiliary program 42A that has stored the capability-dependent information 44 in the memory 12 generates display data based on the capability-dependent information 44 (B31) and passes it to the general-purpose printing program 41 (B32). The general-purpose printing program 41 displays the display data received from the auxiliary program 42A on the print setting screen D2 (B33). The processes of B31 to B33 are similar to A22 to A24 in Fig. 2, and therefore will not be described here. When the print button SW3 on the print setting screen D2 is operated, the auxiliary program 42 executes the process shown in Fig. 6 described above.
[0074] After the process of FIG. 8, the processes A01 to A06 shown in FIG. 7 are performed again. When the printer 2 is selected and printing is performed using the general-purpose printing program 41 (A07), the auxiliary program 42A reads the capability-based information 44 from the memory 12 in response to being started by the general-purpose printing program 41 (A08, A09, alt: stored, A16). The capability-based information 44 includes all of the additional items or additional parameters of the detailed setting screen D3. Therefore, the auxiliary program 42A uses the capability-based information 44 to generate display data for displaying all of the contents of the setting items of the printer 2 or the auxiliary program 42A on the print setting screen D2 (A22), and passes this to the general-purpose printing program 41 to display on the print setting screen D2 (A23, A24).
[0075] In this case, the print setting screen D2 can accept settings for all print setting items or parameters that can be set on the printer 2 or the auxiliary program 42A, and can be substituted for the advanced settings screen D3. Therefore, the auxiliary program 42A may generate display data indicating content that prevents the advanced settings button SW2 shown in FIG. 3 from being displayed on the print setting screen D2, thereby hiding the advanced settings button SW2 on the print setting screen D2. In other words, the auxiliary program 42A may generate display data indicating display content that restricts the acceptance of a display instruction to display the advanced settings screen D3 on the display 13a. This prevents the user from needlessly operating the advanced settings button SW2 to display the advanced settings screen D3 for print setting items or parameters that can be set on the print setting screen D2.
[0076] Note that the display instruction may be received not only by the advanced settings button SW2 but also by another object such as a link. The restriction is not limited to non-display, and may be implemented by graying out the object that receives the display instruction.
[0077] In addition, instead of storing all of the additional items or additional parameters of the detailed setting screen D3 in memory 12 as ability-based information 44, the auxiliary program 42A may store only the additional items or additional parameters set on the detailed setting screen D3, out of the additional items or additional parameters displayed on the detailed setting screen D3, in memory 12 as ability-based information 44.
[0078] Specifically, for example, suppose that the additional item "booklet printing" is set to "Yes" and the additional items "poster printing" and "staple" are set to "No" on the detailed setting screen D3. In this case, the auxiliary program 42A may include "booklet printing" in the capability-based information 44, but may exclude "poster printing" and "staple" from the capability-based information 44. Also, for example, suppose that the additional parameter "additional tray" is set for "paper feed tray" and the parameter "plain paper" which is not an additional parameter is set for "paper type" on the detailed setting screen D3. In this case, the auxiliary program 42A may include "additional tray" in the capability-based information 44, but exclude "fabric" from the capability-based information 44.
[0079] This allows the auxiliary program 42A to display, on the print setting screen D2, the additional items or parameters set on the detailed setting screen D3 among the additional items or parameters when the next time the printer 2 is selected and print settings are made. Therefore, after starting the print setting screen D2, the user can set the items or parameters for the print settings set on the detailed setting screen D3 without starting the detailed setting screen D3, thereby saving the effort of making print settings. In addition, the user can select the print setting items or parameters to be used from those displayed on the detailed setting screen D3 and display them on the print setting screen D2.
[0080] In this case, however, the user must launch the detailed settings screen D3 to set additional items (e.g., poster printing, stapling) or additional parameters (e.g., fabric) that were not set on the detailed settings screen D3. If the auxiliary program 42A displays all of the additional items and additional parameters on the print settings screen D2, it becomes possible to set on the print settings screen D2 other items or other parameters that were not set on the detailed settings screen D3, thereby reducing the effort required for the user to make print settings. On the other hand, displaying all of the items and parameters on the print settings screen D2 can easily make the screen cluttered, so by displaying only the items or parameters selected by the user on the print settings screen D2, the screen is less likely to become cluttered.
[0081] As described above, when the auxiliary program 42A of this embodiment receives a display instruction to display the detailed settings screen D3, it communicates with the printer 2 to acquire its capabilities information, and stores the capabilities-based information 44, including the print setting items or parameters determined based on the capabilities information, in the memory 12 of the PC 1 (B11 to B13, B25, B26 in FIG. 8). When the auxiliary program 42A receives a processing request from the general-purpose printing program 41 due to the selection of the printer 2 while the capabilities-based information 44 is stored in the memory 12, the auxiliary program 42A does not execute processing that requires communication with the printer 2, such as B11 to B13 in FIG. 8, but instead displays the contents of the setting items that reflect the capabilities information on the print settings screen D2 using the capabilities-based information 44 stored in the memory 12 (A9, alt: stored, A16 to A23 in FIG. 7). This reduces the number of times the PC 1 communicates with the printer 2 when the printer 2 is selected, thereby suppressing processing delays associated with communication with the printer 2.
[0082] Furthermore, when the auxiliary program 42A displays the detailed settings screen D3, it is highly likely that the user desires settings based on capabilities specific to the printer 2 or capabilities that can be realized by the auxiliary program 42A. The auxiliary program 42A of this embodiment acquires capability information when the detailed settings screen D3 is displayed, and stores capability-dependent information 44 generated based on the capability information in the memory 12. This makes it possible for the auxiliary program 42A to subsequently set items or parameters specific to the printer 2 or items or parameters that can be realized by the auxiliary program 42A on the print settings screen D2, thereby improving convenience.
[0083] (Third embodiment) Next, a third embodiment of the support program disclosed in this specification will be described with reference to Fig. 10. This embodiment differs from the first embodiment in that capability information acquired from the printer 2 is stored in memory 12, and that capability information 44 is generated using that capability information each time display data is generated. Here, the differences from the first embodiment will be mainly described, and common features will be designated by the same reference numerals as in the first embodiment, and description thereof will be omitted as appropriate.
[0084] As shown in FIG. 10, when the auxiliary program 42B is started by the general-purpose printing program 41 with the printer 2 selected (A07, A08), it determines whether or not the capability information is stored in the memory 12 (A51). If the auxiliary program 42B determines that the capability information is not stored in the memory 12 (alt: not stored), it acquires the capability information from the printer 2 (A11-A13) and stores the acquired capability information as is in the memory 12 (A52). A11-A13 are an example of a capability acquisition process. A52 is an example of a storage process. The capability information is an example of information based on the capability information. Thereafter, the auxiliary program 42B proceeds to A54.
[0085] On the other hand, if the auxiliary program 42B determines that the capability information is stored in the memory 12 (alt: stored), it reads the capability information from the memory 12 (A53) and proceeds to A54. A53 is an example of a read process.
[0086] At A54, the auxiliary program 42B generates capability-dependent information 44 based on the capability information acquired at A11 to A13 or the capability information read from the memory 12 at A53. A54 is the same process as A14 in FIG. 2, so a description thereof will be omitted. The auxiliary program 42B generates display data using the capability-dependent information 44 generated at A54, and displays the print setting screen D2 reflecting the capability information of the printer 2 on the display 13a (A22 to A24). A22 is an example of a generation process. A23 is an example of a display process.
[0087] The auxiliary program 42B of this embodiment communicates with the printer 2 to obtain its capability information, and stores the capability information in the memory 12 of the PC 1. When the auxiliary program 42B receives a processing request from the general-purpose printing program 41 as a result of the selection of the printer 2 while the capability information is stored in the memory 12, the auxiliary program 42B does not execute the processing that requires communication with the printer 2 as shown in A11 to A13, but instead generates capability-dependent information 44 based on the capability information stored in the memory 12, and uses the generated capability-dependent information 44 to display the contents of the setting items that reflect the capability information on the print setting screen D2. This reduces the number of times the PC 1 communicates with the printer 2 when the printer 2 is selected, and suppresses processing delays associated with communication with the printer 2.
[0088] Furthermore, the auxiliary program 42B of this embodiment stores in the memory 12 the capability information before the capability-dependent information 44 is determined, thereby enabling the storage process indicated at A52 to be completed quickly.
[0089] 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.
[0090] Furthermore, the information based on capability information stored in memory 12 does not have to be capability-based information 44 or capability information, but may be information in the intermediate process of generating capability-based information from capability information. Furthermore, the information based on capability information stored in memory 12 may be information whose data format has been converted, such as by compression / decompression.
[0091] Furthermore, when the installation of the auxiliary programs 42, 42A, and 42B is completed, the auxiliary programs 42, 42A, and 42B may execute a process to acquire capability information from the printer 2. In this case, for example, the processes shown in A11 to A13 in FIG. 2 or FIG. 10 and B11 to B13 in FIG. 8 may be omitted.
[0092] Furthermore, when the auxiliary program 42B generates capability-based information 44 including all of the additional items or additional parameters in BB25 of FIG. 8, it is not necessary to generate display data for hiding the advanced settings button SW2 in B26.
[0093] 11, the auxiliary program 42C may statically store capability-dependent information 44 for each model of the printer 2. In this case, when the printer 2 is selected, the auxiliary program 42C identifies the model of the printer 2 based on the information about the printer 2 passed from the general-purpose printing program 41 in A08 (A61). The auxiliary program 42C references the capability-dependent information 44 corresponding to the identified model (A62) and generates display data (A22). This auxiliary program 42C generates display data using the statically stored capability-dependent information 44 without acquiring capability information from the printer 2. This reduces the number of opportunities for communication with the printer 2 when the printer 2 is selected, thereby suppressing processing delays associated with communication with the printer 2. Note that the auxiliary program 42C may statically store capability information for each model of the printer 2 instead of the capability-dependent information 44. In this case, the auxiliary program 42C identifies the model of the selected printer (A61), then references the capability information to generate the capability-dependent information 44 and generates display data.
[0094] Furthermore, if the user changes the default printer from another printer to printer 2 via the OS 21 after the print setting screen D2 is displayed by the general-purpose printing program 41, the general-purpose printing program 41 may also start the auxiliary programs 42, 42A, 42B, and 42C. In this case, as in the case where printer 2 is selected, the auxiliary programs 42, 42A, 42B, and 42C may execute a process to acquire capability information from printer 2 and a process to generate display data, and then pass the display data to the general-purpose printing program 41.
[0095] In the embodiment, only the printing operation is described in detail as the operation of the auxiliary programs 42, 42A, 42B, and 42C, but the auxiliary programs 42, 42A, 42B, and 42C may have other roles. The program that executes the process of this embodiment is not limited to the auxiliary programs 42, 42A, 42B, and 42C, but 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, a print workflow application (Print Workflow) whose specifications have been published by Microsoft Corporation may be used.
[0096] Furthermore, the execution timing of the auxiliary programs 42, 42A, 42B, and 42C is not limited to that of the embodiment. For example, the auxiliary program 42 may be executed in response to an execution instruction directly from the OS 21, or the auxiliary programs 42, 42A, 42B, and 42C may be resident. If the auxiliary programs 42, 42A, 42B, and 42C are resident, they may perform the above-described operations upon receiving an execution instruction.
[0097] 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.
[0098] 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]
[0099] 1...PC, 2...printer, 11...CPU, 13a...display, 21...OS, 41...general-purpose printing program, 42, 42A, 42B...auxiliary programs
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 print program that is pre-installed in an operating system of the information processing device, the general-purpose print program being capable of handling data for displaying a print setting screen on a display of the information processing device; The computer, a capability acquisition process for acquiring capability information indicating the capabilities of the printer through communication with the printer; a storage process of storing information based on the capability information acquired in the capability acquisition process in a memory of the information processing device; Execute Furthermore, the computer When the printer is selected on the print setting screen, a process is requested from the general-purpose printing program, and the information based on the capability information is stored in the memory, the capability acquisition process is not executed, a read process of reading from the memory the information based on the capability information stored in the storage process; a generation process for generating display data for displaying content of setting items that reflect the capability information on the print setting screen using the information based on the capability information read in the reading process; a display process for passing the display data generated in the generation process to the general-purpose print program and displaying the print setting screen displayed on the display of the information processing device in accordance with the display data; Execute A support program configured to:
2. 2. The support program according to claim 1, In the storage process, determining the contents of the setting items to be displayed on the print setting screen based on the capability information acquired in the capability acquisition process, and storing the determined contents of the setting items in the memory of the information processing device as the information based on the capability information; In the generation process, generating the display data for displaying the contents of the setting items, which are the information based on the capability information read in the read process; A support program configured to:
3. 2. The support program according to claim 1, In the storage process, storing the information based on the capability information acquired in the capability acquisition process in the memory of the information processing device without determining the content of the setting items to be displayed on the print setting screen; In the generation process, determining the contents of the setting items to be displayed on the print setting screen using information based on the capability information read in the reading process, and generating the display data for displaying the contents of the determined setting items. A support program configured to:
4. 4. The support program according to claim 1, The computer, When a process is requested from the general-purpose printing program due to the printer being selected on the print setting screen, and information based on the capability information corresponding to the selected printer is not stored in the memory, The capability acquisition process; The storage process; Execute A support program configured to:
5. 2. The support program according to claim 1, the support program has a function of displaying a detailed setting screen that accepts print settings that can be supported by the printer on the display of the information processing device, and the general-purpose printing program is capable of accepting an instruction to display the detailed setting screen; The computer, When the general-purpose printing program receives an instruction to display the detailed setting screen and a process is requested from the general-purpose printing program, The capability acquisition process; a detail display process for displaying the detail setting screen, which accepts print settings that can be supported by the printer, on the display of the information processing device based on the capability information acquired in the capability acquisition process; The storage process; Execute A support program configured to:
6. 6. The support program according to claim 5, The computer, executing an acceptance process for accepting the print settings on the detailed setting screen, and print setting items or setting parameters are added to the detailed setting screen from the contents of the setting items of the print settings that can be set in the general-purpose printing program based on the capability information acquired in the capability acquisition process; In the storage process, When an additional item that is an item added based on the capability information acquired in the capability acquisition process or an additional parameter that is a setting parameter added based on the capability information acquired in the capability acquisition process is set in the print setting accepted in the acceptance process, the set additional item or the set additional parameter is stored in the memory of the information processing device as information based on the capability information, In the generation process, generating the display data for displaying the additional items or the additional parameters indicated in the information based on the capability information read in the reading process; A support program configured to:
7. 6. The support program according to claim 5, The computer, executing an acceptance process for accepting the print settings on the detailed setting screen, and print setting items or setting parameters are added to the detailed setting screen from the contents of the setting items of the print settings that can be set in the general-purpose printing program based on the capability information acquired in the capability acquisition process; In the storage process, storing all of the additional items that are items added based on the capability information acquired in the capability acquisition process and the additional parameters that are setting parameters added based on the capability information acquired in the capability acquisition process in a memory of the information processing device as information based on the capability information; In the generation process, generating the display data for displaying all of the additional items and additional parameters indicated in the information based on the capability information read in the reading process; A support program configured to:
8. 8. The support program according to claim 7, In the generation process, the display data is generated, which further indicates display content that limits acceptance of the display instruction. A support program configured to:
9. 9. The support program according to claim 1, The computer, When a print instruction is output from an application program installed in the information processing device, the print instruction being to cause the printer to print an image to the general-purpose print program, and processing is requested from the general-purpose print program, acquiring image data representing the image from the general-purpose printing program, and executing a transmission process for transmitting a print command to the printer based on the image data; A support program configured to:
Citation Information
Patent Citations
Information processing device, control method and program
JP2020004254A
Information processing device, control method, and control program
JP2020009420A
Support program, information processor, and printing method
JP2020126364A