Support Program

JP7917047B2Active Publication Date: 2026-09-08BROTHER KOGYO KK
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2025169309
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2025-10-07
Publication Date
2026-09-08
Estimated Expiration
2042-03-16

AI Technical Summary

Benefits of technology

【0008】 本明細書に開示される技術によれば、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、プリンタとの通信に伴う処理の遅延を抑制する技術が実現される。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007917047000001
    Figure 0007917047000001
  • Figure 0007917047000002
    Figure 0007917047000002
  • Figure 0007917047000003
    Figure 0007917047000003
Patent Text Reader

Abstract

To suppress the delay of processing accompanying communication with a printer in an information processor in which an OS standard general-purpose print program is incorporated.SOLUTION: The supporting program 42 obtains the capability information indicating the capability of the printer 2 by communicating with the printer 2 connected to PC1, and stores information based on the obtained capability information in the memory 12 as the capability-dependent information 44. When the process is requested by the general-purpose print program 41 by selecting the printer 2 on the print setting screen D2 in a state where the capability-dependent information 44 is stored in the memory 12, the supporting program 42 reads the capability-dependent information 44 from the memory 12 without causing the PC1 to execute the process of obtaining the capability information from the printer 2, and passes the display information to the general-purpose print program 41, thereby displaying the contents of the setting items reflecting the capability information of the printer 2 on the print setting screen D2.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The technical field disclosed in the present specification relates to a support program that supports control of a printer. Background Art

[0002] In recent years, a technology for controlling a printer by a general-purpose printing program pre-installed as standard in an operating system (OS) without using the aforementioned printer driver has been put into practical use. According to this technology, when the OS detects a printer, it associates the printer with the OS-standard general-purpose printing program, and thereafter, when a print instruction for the printer is received, printing can be performed by the OS-standard general-purpose printing program without using a printer driver. A technology related to the OS-standard general-purpose printing program is disclosed in, for example, Patent Document 1. Prior Art Documents Patent Documents

[0003] Patent Document 1 Japanese Unexamined Patent Publication No. 2020-126364 Summary of Invention Problem to be Solved by Invention

[0004] As disclosed in Patent Document 1, every time a printer is selected, a support program (auxiliary program) is activated from the general-purpose printing program, the support program accesses the printer, and printer capability information is passed to an editing application program via the general-purpose printing program. However, if access to the printer is performed every time the printer is selected, processing delay may occur. Means for Solving the Problem

[0005] The support program, which was created to solve the above-mentioned problems, is executable by the computer of the information processing device, corresponds to a printer connected to the information processing device, and supports a general-purpose printing program pre-installed in the operating system of the information processing device, wherein the general-purpose printing program is capable of handling data for displaying a print settings screen on the display of the information processing device, and causes the computer to perform a capability acquisition process to acquire capability information indicating the capabilities of the printer through communication with the printer, and a storage process to store information based on the capability information acquired in the capability acquisition process in the memory of the information processing device, and further causes the computer to perform the print settings screen When the printer is selected on the screen and processing is requested from the general-purpose printing program, and the information based on the capability information is stored in the memory, the system is configured to execute the following without executing the capability acquisition process: a read process that reads the information based on the capability information stored in the storage process from the memory; 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 settings 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 settings screen on the display of the information processing device according to the display data.

[0006] The support program having the above configuration communicates with the printer to obtain capability information and stores information based on that capability information in the memory of the information processing device. When the support program has information based on capability information stored in memory and a printer is selected, and a processing request is made from the general-purpose printing program, the support program does not perform the capability acquisition process that requires communication with the printer, but instead uses the information based on capability information stored in memory to display the contents of the setting items that reflect the capability information on the print settings screen. As a result, the information processing device has fewer opportunities to communicate with the printer when a printer is selected, and processing delays associated with communication with the printer are suppressed.

[0007] The devices, control methods, and storage media readable by the computer that stores the above-mentioned support program are also novel and useful. [Effects of the Invention]

[0008] According to the technology disclosed herein, a technology is realized that suppresses processing delays associated with communication with a printer in an information processing device incorporating an OS standard general-purpose printing program. [Brief explanation of the drawing]

[0009] [Figure 1] This is a schematic block diagram showing the electrical configuration of a PC incorporating the auxiliary program of the first embodiment. [Figure 2] This is a sequence diagram showing an example of the procedure when printing is selected. [Figure 3] This figure shows an example of a print settings screen. [Figure 4] This diagram shows the changes made to the print settings screen. [Figure 5] This diagram shows the changes made to the print settings screen. [Figure 6] This is a sequence diagram showing an example of the procedure when a print command is received. [Figure 7] This is a sequence diagram showing an example of the procedure when printing is selected in the second embodiment. [Figure 8] This is a sequence diagram illustrating the procedure when advanced settings are selected. [Figure 9] This figure shows an example of the detailed settings screen. [Figure 10] This is a sequence diagram showing a modified version of the procedure when printing is selected in the third embodiment. [Figure 11] This is a sequence diagram showing a modified version of the procedure when printing is selected. [Modes for carrying out the invention]

[0010] The personal computer (hereinafter referred to as "PC") that utilizes this support program will be described in detail below with reference to the attached drawings. This specification discloses a support program that runs on a PC.

[0011] (First Embodiment) As shown in Figure 1, the PC1 of the first embodiment includes a controller 10 which includes a CPU 11 and 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, which are electrically connected to the controller 10. Note that the controller 10 in Figure 1 is a general term for the hardware and software used to control the PC1, and does not necessarily represent a single piece of hardware actually present in the PC1.

[0012] The CPU 11 executes various processes according to the program read from memory 12 and based on user input. Memory 12 stores various programs and data. Memory 12 is also used as a workspace when various processes are executed. The buffer provided by the CPU 11 is also an example of memory. Note that the example of memory 12 is not limited to ROM, RAM, HDD, etc., built into the PC 1, but may also be a storage medium that the CPU 11 can read and write to, such as a recording medium such as a CD-ROM or DVD-ROM.

[0013] User IF13 includes hardware that displays a screen for informing the user of information and hardware that accepts user operations. User IF13 may be a combination of a display 13a capable of displaying information and a mouse or keyboard with input acceptance functionality, or it may be a touch panel equipped with a display 13a and input acceptance functionality. User IF13 includes an example of a display.

[0014] The communication IF 14 includes hardware for communicating with an external device such as the printer 2. Communication standards for the communication IF 14 include Ethernet (registered trademark), Wi-Fi (registered trademark), USB, and the like. The PC 1 may be connectable to the Internet via the communication IF 14. Further, the PC 1 may include a plurality of communication IFs 14 compatible with a plurality of communication standards.

[0015] As shown in FIG. 1, an operating system (hereinafter referred to as "OS") 21 including a general-purpose print program 41, an auxiliary program 42, and various application programs (hereinafter referred to as "apps") are stored in the memory 12 of the PC 1. Examples of the OS 21 include Windows (registered trademark), macOS (registered trademark), Linux (registered trademark), iOS (registered trademark), and Android (registered trademark). The auxiliary program 42 is an example of a support program.

[0016] In the PC 1 of the present embodiment, for example, an information app 43 is incorporated as one of various apps. The information app 43 is, for example, a map app, a calendar app, or a browser, and has a function of causing the display 13a to display various types of information in response to a user's request. The information app 43 is an example of an application program. Note that the information app 43 itself does not need to have a function of printing the displayed information.

[0017] The general-purpose print 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 app 43 or the like. The general-purpose print program 41 of the present embodiment is a program including a function of generating intermediate image data based on image data to be printed. The general-purpose print program 41 supports a function that can be commonly used by a plurality of types of model printers provided by various printer vendors. Unlike printer drivers specific to various printers, the general-purpose print program 41 does not support all of the functions inherently provided by various printers, and the functions it supports are limited to general-purpose ones.

[0018] The auxiliary program 42 is a program or a group of programs that execute processing accompanying the processing of the general-purpose printing program 41 based on instructions from the OS 21, and is a program that supports control of target hardware. The auxiliary program 42 of the present embodiment corresponds to the model of the printer 2 connected to the PC 1, and is activated by the general-purpose printing program 41, for example, when an instruction to cause the printer 2 to perform printing using the general-purpose printing program 41 is received. The auxiliary program 42 is, for example, what is called a print support application (abbreviated as PSA) or a hardware support application (abbreviated as HSA).

[0019] Note that the auxiliary program 42 may be a combination of a plurality of programs each receiving execution instructions, or may be a single program capable of executing different processes according to instructions. Further, the auxiliary program 42 may be a program prepared for each printer type by a printer vendor. For example, an auxiliary program for inkjet printers and an auxiliary program for laser printers may be prepared respectively. There may be auxiliary programs prepared not only for each printer type but also for each printer model or each 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 and incorporate it into the PC 1 according to the type and model of the connected printer. The OS 21 associates the identification information of the incorporated auxiliary program with the printer information of the newly connected printer and stores the information in the memory 12.

[0021] The PC 1 of the present embodiment is connected to the printer 2 as shown in FIG. 1. The printer 2 is a device having 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 in accordance with the print settings.

[0022] Printer 2 can accept print settings based on the functions it possesses. Printer 2 can also accept settings for image processing options that allow it to perform image processing, such as layout printing (Nin1). Note that these processing options can also be implemented by the auxiliary program 42. Printer 2 will not accept settings for processing options where it cannot perform image processing itself, and where the auxiliary program 42 performs the image processing. In other words, Printer 2 stores parameters for each configurable item according to its capabilities.

[0023] The auxiliary program 42 has the function of displaying a dedicated print settings screen (hereinafter referred to as the "detailed settings screen") on the printer 2. In addition to the items that the printer 2 can accept settings for, the auxiliary program 42 can also display items on the detailed settings screen that the printer 2 cannot process and for which the auxiliary program 42 performs image processing, and accept settings for these items. The auxiliary program 42 is capable of storing capability-dependent information 44. The capability-dependent information 44 is information that indicates the content of the setting items to be displayed on the print settings screen, based on the printer's capability information. The capability-dependent information 44 is an example of "information based on capability information". The capability-dependent information 44 is not stored in memory 12 when the auxiliary program 42 is installed, but is stored, for example, through communication with the printer 2. Details of the print settings screen and the capability-dependent information 44 will be described later.

[0024] The general-purpose printing program 41 can display a print settings screen and accept print settings. The general-purpose printing program 41 can handle data to be displayed on the print settings screen. For example, the general-purpose printing program 41 can receive display data based on capability-dependent information 44 from the auxiliary program 42 and accept print settings via a print settings screen based on that display data.

[0025] Next, the printing procedure, including the operation of the auxiliary program 42 in this embodiment, and the procedures performed by each program when printing is selected in the information application 43, will be explained with reference to the sequence diagram in Figure 2. Note that Figure 2 and other sequence diagrams described later show the operation when the auxiliary program 42 corresponding to printer 2 is installed in PC1.

[0026] In this embodiment, each processing step in the flowchart basically represents the processing of the CPU 11 according to instructions written in a program such as the auxiliary program 42. The processing by the CPU 11 also includes hardware control using the OS 21 API. In this specification, a detailed description of OS 21 is omitted and the operation of each program is explained. Also, "acquisition" 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). The information application 43 displays an information screen containing various information on the display 13a in response to the user's instructions (A02). If the user wants to print the image of the currently displayed information screen, the user selects print on the information screen (A03). The information application 43 then sends a display request and the information screen data to the general-purpose printing program 41 of the OS 21 (A04).

[0028] The general-purpose printing program 41 displays the print settings screen on the display 13a in response to a display request (A06). The print settings screen is a screen that accepts instructions for print settings and instructions for executing print. For example, as shown in Figure 3, the print settings screen D2 includes a printer selection field 51 for accepting printer selection, a notification field 52 for displaying a notification image, a print settings field 53 for accepting specifications for various print settings, a preview field 54 for showing an image of the information screen to be printed, an advanced settings button SW2 for accepting instructions for making detailed print settings, and a print button SW3 for accepting instructions for executing print.

[0029] The print settings section 53 displays print settings items for functions supported by the general-purpose printing program 41, and accepts print setting values. Examples of items that can be set via the print settings section 53 include the number of copies, print orientation, duplex printing, layout printing (Nin1), paper size, paper tray, print range, paper type, color, borderless printing, scaling, and print quality (resolution). To simplify print settings, the print settings section 53 may display only the main items, and other items may be added and displayed when other settings are manipulated.

[0030] The notification image displayed in notification area 52 is an image that shows the content of the notification to be sent to the user. The notification image may include, for example, text, still images, videos, or a combination of these.

[0031] As shown in Figure 2, the user can select a printer by operating on the printer selection field 51 on the displayed print settings screen D2 (A07). If the selected printer is printer 2, the general-purpose printing program 41 starts the auxiliary program 42 corresponding to printer 2 and requests the processing corresponding to printer selection (A08). In A08, the general-purpose printing program 41 passes the information of the selected printer and the print settings information that was set when the printer was selected to the auxiliary program 42.

[0032] Furthermore, if printer 2 is set as the default printer in OS21, the general-purpose printing program 41 displays the print settings screen D2 with printer 2 selected (A06) and starts the auxiliary program 42 (A08). In other words, printer 2 is automatically selected by OS21, and the general-purpose printing program 41 executes A08 based on the information of the selected printer 2. In this case, user operation A07 is not required.

[0033] Alternatively, instead of the general-purpose printing program 41 displaying the print settings screen D2, the information application 43 may display the print settings screen D2. In that case, the information application 43 starts the general-purpose printing program 41 in response to print being selected in A03, obtains the data to be displayed on the print settings screen D2 from the general-purpose printing program 41, and displays the print settings screen D2 on the display 13a. Then, depending on whether printer 2 is selected, or whether printer 2 is selected in A07, the information application 43 passes the information of 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] The auxiliary program 42 determines whether the capability dependency information 44 corresponding to printer 2 is stored in memory 12, depending on whether it has been started (A09). For example, if printer 2 is selected and printed for the first time after the auxiliary program 42 has been installed, the capability dependency information 44 corresponding to printer 2 is not stored in memory 12. In this case (alt: not stored), the auxiliary program 42 requests the OS 21 to obtain the capability information for printer 2 (A11). Upon receiving the request from the auxiliary program 42, the OS 21 sends an acquisition request to printer 2 requesting the acquisition of capability information and obtains the capability information from printer 2 (A12). The OS 21 passes the capability information obtained from printer 2 to the auxiliary program 42 (A13). A11 to A13 is an example of the capability acquisition process.

[0035] OS21 communicates with printer 2, for example, through communication compliant with IPP (Internet Printing Protocol). Alternatively, auxiliary program 42 may obtain capability information directly from printer 2, for example, using MIB (Management Information Base), instead of requesting it from OS21.

[0036] The capability information obtained from printer 2 includes information on parameters that can be set as print settings. The capability information also includes, for example, status information, remaining consumable levels, information on installed trays, paper information for each tray, and information on supported print resolutions. Furthermore, printer 2 may have functions to perform image processing based on received print jobs and print based on the processed data, such as layout printing (Nin1), composite printing of watermarks, and energy-saving printing such as toner saving. If printer 2 has image processing capabilities, it may pass information about those capabilities to OS21 as capability information.

[0037] The auxiliary program 42, having acquired capability information, generates capability-dependent information 44 based on that capability information (A14) and stores it in memory 12 (A15). A14 and A15 are examples of memory processing.

[0038] For example, the auxiliary program 42 determines the content of the setting items to be displayed on the print settings screen D2 based on the capability information, and stores the content of the determined setting items in the memory 12 as capability-dependent information 44. Specifically, for example, suppose the capability information obtained from the printer 2 includes information indicating that the printer 2 has "Tray 1", "Tray 2", and "Additional Tray", that "Envelopes" can be set in "Tray 1", "Plain paper" can be set in "Tray 2", and "Cloth" can be set in the "Additional Tray". In this case, the auxiliary program 42 determines that "Automatic Selection", "Tray 1", "Tray 2", and "Additional Tray" can be set as setting parameters for "Paper Tray", and that "Plain paper", "Envelopes", and "Cloth" can be set as setting parameters for the "Paper Type" item, and stores this content in the memory 12 as capability-dependent information 44.

[0039] The capability-dependent 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 original documents are reduced in size and arranged on one side of a sheet of paper for printing. Booklet printing is a printing method in which images of original documents are reduced in size and rearranged, and two pages are placed on the front and back of a sheet of paper for printing. Poster printing is a printing method in which images of original documents are enlarged and divided into M parts, and the divided images are placed on one side of M sheets of paper for printing. For example, booklet printing and poster printing are items or parameters that cannot be processed by printer 2 but can be implemented by auxiliary program 42. In this embodiment, layout printing can be handled by both printer 2 and auxiliary program 42, but booklet printing and poster printing cannot be processed by printer 2 and can only be implemented by auxiliary program 42.

[0040] As shown in Figure 2, the auxiliary program 42, which stores capability-dependent information 44 in memory 12, generates display data using the capability-dependent information 44 (A22). A22 is an example of the generation process. The auxiliary program 42 passes the generated display data to the general-purpose printing program 41 (A23), and displays the print settings screen D2 reflecting the capability information on the display 13a (A24). A23 is an example of the display process. When the print button SW3 on the print settings screen D2 shown in Figure 3 is operated, the auxiliary program 42 executes printing. The procedure for executing printing will be described later.

[0041] After processing A22 to A23, A01 to A6 are performed again, and when 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 way as above (A08). In this case, since the capability-dependent information 44 is stored in memory 12 (A09, alt: stored), the auxiliary program 42 does not perform the process of obtaining capability information from printer 2, but reads the capability-dependent information 44 from memory 12 (A16). A16 is an example of the reading process. Then, the auxiliary program 42 performs the processing A22 to A23 based on the capability-dependent information 44, and displays the print setting screen D2 that reflects the capability information on the display 13a.

[0042] In other words, the auxiliary program 42, upon initial printer selection, obtains capability information from printer 2, stores capability-dependent information 44 in memory 12, and generates display data. Subsequent times, when printer 2 is selected, the auxiliary program 42 generates display data using the capability-dependent information 44 stored in memory 12 without obtaining capability information from printer 2. Therefore, the time from the printer selection operation to the display of the print settings screen D2, which reflects the capabilities of printer 2, is shortened when printer 2 is selected in subsequent times.

[0043] Alternatively, instead of obtaining capability information from printer 2 when printer 2 is initially selected (A09, alt: not remembered, A11~A13), the capability information may be obtained from printer 2 when a predetermined amount of time has elapsed since the last time capability information was obtained. This would allow the printer settings screen D2 to be displayed in accordance with the change in capability information, for example, if an additional tray is attached to or detached from printer 2 after the capability information has been obtained.

[0044] The display of the print settings screen D2 will be explained in detail. For example, in the print settings screen D2, which is displayed without using capability information, the print settings items and parameters supported by the general-purpose printing program 41 are displayed in the print settings field 53, as shown in Figure 4(a). 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 parameters that can be set for that item are displayed in the list box 112 for selection.

[0045] In this embodiment, the items "Number of Copies," "Paper Size," "Paper Tray," "Duplex Printing," and "Layout Printing" are displayed on the print settings screen D2. For example, the "Paper Type" list box 112 displays "Plain Paper" and "Envelope" as selectable parameters. Also, for example, the "Paper Tray" list box displays "Automatic Selection," "Tray 1," and "Tray 2" as selectable parameters.

[0046] In contrast, in the print settings screen D2, which is displayed using capability information, additional items or parameters are displayed for the print settings items or parameters shown in the print settings screen D2 shown in Figure 4(a), as shown in Figure 4(b). For example, if capability-dependent information 44 includes the additional items "poster printing" and "stapling," then the items "poster printing" and "stapling" will be added to the print settings screen D2, as shown by arrows 123 and 124 in Figure 4(b).

[0047] Furthermore, for example, if the capability dependency 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 tray" item, then on the print settings screen D2, as shown by arrow 121 in Figure 4(b), "cloth" will be added to the "paper type" list box 112 and "additional tray" will be added to the "paper tray" list box 112, as shown by arrow 122 in the figure.

[0048] Thus, when the auxiliary program 42 stores capability-dependent information 44 in memory 12 and then selects a printer 2 and sets up print settings, it can display a print settings screen D2 on the display 13a that reflects the capabilities of the selected printer 2, or the capabilities of the auxiliary program 42 that are compatible with printer 2. Therefore, the user can perform detailed print settings on the print settings screen D2 without having to operate the detailed settings button SW2 on the print settings screen D2 to display the detailed settings screen on the display 13a, thus saving time and effort in setting up print settings.

[0049] Furthermore, since the auxiliary program 42 stores the contents of the setting items to be ultimately displayed on the print settings screen D2 as capability-dependent information 44 in memory 12, there is no need to perform processing to generate the capability-dependent information 44 when generating display data, and delays in displaying the print settings screen D2 that reflect the capability information can be suppressed.

[0050] Furthermore, the auxiliary program 42 may, for example, generate a notification image to indicate that an item or parameter in the print settings displayed on the print settings screen D2 has been added, and display data including this image in the notification area 52 of the print settings screen D2. Alternatively, the auxiliary program 42 may generate display data including a message box containing the notification, and display the message box separately on the print settings screen D2 in addition to the notification area 52.

[0051] In the example shown in Figure 3, a print settings screen D2 including one notification field 52 is shown, but the arrangement, shape, size, and number of notification fields 52 are not limited to this example. The auxiliary program 42 may obtain information about the notification fields 52 from the general-purpose print program 41 and determine the display data to be displayed in the notification fields 52 based on the obtained information. For example, if there are multiple possible arrangements for displaying the notification fields 52 and the auxiliary program 42 can specify the display location, the auxiliary program 42 may pass display data including information specifying the display location to the general-purpose print program 41. Also, if the size of the notification fields 52 can be selected, the auxiliary program 42 may pass information specifying the size to the general-purpose print program 41.

[0052] Furthermore, instead of generating display data and passing it to the general-purpose printing program 41, the auxiliary program 42 can also display the information itself. However, in that case, a separate screen would be displayed from the print settings screen D2, which could make the display cluttered and stressful for the user. Displaying the information within the print settings screen D2 of the OS21 general-purpose printing program 41 simplifies the display and avoids user stress.

[0053] Next, the procedures performed by each program when a user inputs a print command to execute a print job via the print button SW3 while the print settings screen D2 shown in Figure 3 is displayed will be explained with reference to the sequence diagram in Figure 6. Note that the user's print command may be directly input into the general-purpose print program 41, or it may be input into 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 command from the user (D01), it uses the print settings received on the print settings screen D2 to generate intermediate image data by converting the image data format representing the image to be printed into an intermediate image data format (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. If the image data to be printed is suitable for generating print data, the generation of intermediate image data can be omitted, and it can be used as intermediate image data as is. The intermediate image data is, for example, XPS data.

[0055] The auxiliary program 42 processes the intermediate image data received in D03 by applying the print settings configured in the auxiliary program 42 (D04). For example, if 2-in-1 layout printing is set, the intermediate image data to be printed is reduced in size and arranged so that two pages are placed on one side of the paper. The auxiliary program 42 then rasterizes the processed intermediate image data and generates print data that indicates the image to be printed (D05). The print data generated in D05 is in a format that can be used for printing by printer 2, for example, it is PDL data specific to the printer 2 model.

[0056] Rasterizing the data using the auxiliary program 42, which is compatible with printer 2, offers greater flexibility compared to rasterizing with the general-purpose printing program 41, and is more likely to generate print data suitable for printing on printer 2. Furthermore, the print data generated by the auxiliary program 42 may be in a format that can be used for printing on printers other than printer 2.

[0057] The auxiliary program 42 sends the print data generated in D05 to the printer 2 along with a print command instructing it to print (D06). D06 is an example of the transmission process. If the auxiliary program 42 has decided to have printer 2 perform image processing, it generates a print command that includes information about that processing. The auxiliary program 42 also notifies the general-purpose print program 41 that it has finished sending the print data (D08). Based on this notification, the general-purpose print program 41 cancels the transmission of the print data.

[0058] Printer 2, having received the print data and print command, executes the printing of the image data based on the received print command (D07). This generates the printed document.

[0059] Alternatively, 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 the print execution information to the general-purpose printing program 41, and the general-purpose printing program 41 may rasterize the intermediate image data and generate the print data. In that case, the general-purpose printing program 41 passes the generated print data to the auxiliary program 42. When the auxiliary program 42 receives the 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 along with a print command instructing the execution of printing.

[0060] The print data generated by the general-purpose printing program 41 is in a format that can be used for printing on various printers, such as PWGRaster data or PDF data. If rasterization is performed by the general-purpose printing program 41, the processing required by the auxiliary program 42 is reduced, which is expected to avoid increased processing time, and the program size of the auxiliary program 42 can be kept down.

[0061] The general-purpose printing program 41 may also send print data and print commands to printer 2. In other words, the auxiliary program 42 may pass the generated print data to the general-purpose printing program 41 so that it is sent from PC1 to printer 2. In that case, the general-purpose printing program 41 sends the print data received from the auxiliary program 42 to printer 2. In this case, the process by which the auxiliary program 42 passes the print data 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 obtain capability information and stores capability-dependent information 44, which includes print setting items or parameters determined based on that capability information, in the memory 12 of the PC1. When the auxiliary program 42 receives a processing request from the general-purpose printing program 41 because the printer 2 has been selected while the capability-dependent information 44 is stored in the memory 12, it does not perform the processing that requires communication with the printer 2 as shown in A11 to A13 of Figure 2, but instead uses the capability-dependent information 44 stored in the memory 12 to display the contents of the setting items that reflect the capability information on the print setting screen D2. As a result, the PC1 has fewer opportunities to communicate with the printer 2 when the printer 2 is selected, and processing delays associated with communication with the printer 2 are suppressed.

[0063] (Second Embodiment) Next, a second embodiment of the support program disclosed herein 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 at the time the detailed settings screen is displayed, rather than at the time the printer 2 is selected. Here, we will mainly describe the differences from the first embodiment, and common points will be described using the same reference numerals as in the first embodiment, and explanations will be omitted as appropriate.

[0064] As shown in Figure 7, when printer 2 is selected and launched from the general-purpose printing program 41 while the capability dependency information 44 is not stored in memory 12, the auxiliary program 42A does not perform any processing on the OS 21 regarding the display of the print settings screen D2, but instead processes the general-purpose printing program 41 (A41). Therefore, the general-purpose printing program 41 displays the default values ​​on the print settings screen D2 (A42). In this case, the print settings items or parameters displayed on the print settings screen D2 will not be changed, and the settings will revert to their default values.

[0065] Furthermore, the auxiliary program 42A may pass display data to the general-purpose printing program 41 to display a notification image to be shown in the notification area 52 of the print settings screen D2. The notification image is, for example, an image that notifies the user that if they operate the detailed settings button SW2 to perform detailed print settings, they will be able to perform detailed print settings on the print settings screen D2 from the next time onward. This promotes the use of the function that the auxiliary program 42 uses to reflect the capabilities information of the printer 2 on the print settings screen D2.

[0066] The procedures of each program when a user inputs a detailed setting instruction via the detailed setting button SW2 while the print settings screen D2 shown in Figure 3 is displayed will be explained with reference to Figure 8. The instruction that the general-purpose print program 41 receives via the detailed setting button SW2 is an example of a display instruction.

[0067] The general-purpose printing program 41 starts the auxiliary program 42A based on the user's detailed setting instructions (B01) (B02). The general-purpose printing program 41 passes the print settings set in the print settings field 53 of the print settings screen D2 to the auxiliary program 42A.

[0068] The auxiliary program 42A acquires capability information from printer 2 upon activation (B11-B13). B11-B13 is an example of the capability acquisition process. The process in B11-B13 is similar to the process in A11-A13 in Figure 2, so the explanation is omitted.

[0069] The auxiliary program 42A, having acquired capability information, displays a detailed settings screen on the display 13a and accepts detailed print settings (B21). B21 is an example of the detailed display process and acceptance process.

[0070] For example, as shown in Figure 9, the detailed settings screen D3 displays the detailed settings section 61 and the apply button SW22. The detailed settings section 61 displays the print setting items and parameters based on the capability information obtained from printer 2 in B11 to B13. The detailed settings section 61 also displays the processing option settings and parameters that are processed by the auxiliary program 42A, rather than by printer 2. In other words, the detailed settings section 61 displays additional items, which are items added to the print setting items that can be set in the general-purpose printing program 41 based on the capability information of printer 2, or additional parameters, which are parameters added to the parameters that can be set in the general-purpose printing program 41.

[0071] For example, "Staple," indicated by arrow 151 in the detailed settings screen D3 of Figure 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 "Cloth," 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 Figure 8, the auxiliary program 42A accepts operations from the user IF13 (B22). For example, when the auxiliary program 42A receives an instruction to complete detailed print settings by operating the apply button SW22 shown in Figure 9, it generates capability-dependent information 44 based on the additional items or parameters received via the detailed settings screen D3 (B25) and stores it (B26). B25 and B26 are examples of storage processes. In this embodiment, the auxiliary program 42A stores all additional items or parameters that can be set via the detailed settings screen D3 as capability-dependent information 44 in the memory 12. In other words, the capability-dependent information 44 includes not only additional items or parameters set on the detailed settings screen D3, but also additional items or parameters that were not set on the detailed settings screen D3, as items to be displayed on the print settings screen D2.

[0073] Returning to Figure 8, the auxiliary program 42A, which has stored the capability-dependent information 44 in 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 settings screen D2 (B33). The processes in B31 to B33 are the same as A22 to A24 in Figure 2, so the explanation is omitted. When the print button SW3 on the print settings screen D2 is operated, the auxiliary program 42 executes the process shown in Figure 6 described above.

[0074] After the processing shown in Figure 8, the processes A01 to A06 shown in Figure 7 are performed again. When printer 2 is selected and printing is performed using the general-purpose printing program 41 (A07), the auxiliary program 42A reads the capability dependency information 44 from memory 12 in response to the activation by the general-purpose printing program 41 (A08, A09, alt: stored, A16). The capability dependency information 44 includes all the additional items or parameters of the detailed settings screen D3. Therefore, the auxiliary program 42A uses the capability dependency information 44 to generate display data that displays all the settings of printer 2 or the auxiliary program 42A on the print settings screen D2 (A22), and passes this to the general-purpose printing program 41 so that it can be displayed on the print settings screen D2 (A23, A24).

[0075] In this case, the print settings screen D2 can accept settings for all items or parameters of the print settings that can be set on printer 2 or auxiliary program 42A, and can replace the detailed settings screen D3. Therefore, the auxiliary program 42A may generate display data indicating that the detailed settings button SW2 shown in Figure 3 should not be displayed on the print settings screen D2, and hide the detailed settings button SW2 on the print settings screen D2. In other words, the auxiliary program 42A may generate display data indicating that the acceptance of display instructions to display the detailed settings screen D3 on display 13a should be restricted. This prevents the user from performing unnecessary operations such as operating the detailed settings button SW2 to display the detailed settings screen D3 for print settings items or parameters that can be set on the print settings screen D2.

[0076] Note that the acceptance of display instructions is not limited to the detailed settings button SW2; it may also be done through other objects, such as displaying links. The form of restriction is not limited to hiding; it may also be done by graying out the object that accepts display instructions.

[0077] Alternatively, instead of storing all additional items or parameters from the detailed settings screen D3 as capability-dependent information 44 in memory 12, the auxiliary program 42A may store only the additional items or parameters set on the detailed settings screen D3 from among the additional items or parameters displayed on the detailed settings screen D3 as capability-dependent information 44 in memory 12.

[0078] For example, suppose that in the detailed settings screen D3, the additional item "Booklet Printing" is set to "Enable," and the additional items "Poster Printing" and "Stapling" are set to "Disabled." In this case, the auxiliary program 42A may include "Booklet Printing" in the capability dependency information 44, but may not include "Poster Printing" and "Stapling." Alternatively, suppose that in the detailed settings screen D3, the additional parameter "Extension Tray" is set for "Paper Tray," and the parameter "Plain Paper," which is not an additional parameter, is set for "Paper Type." In this case, the auxiliary program 42A may include "Extension Tray" in the capability dependency information 44, but may not include "Cloth."

[0079] According to this, the auxiliary program 42A will be able to display additional items or parameters set in the detailed settings screen D3 on the print settings screen D2 the next time printer 2 is selected and print settings are configured. Therefore, after launching the print settings screen D2, the user can configure items or parameters for the print settings configured in the detailed settings screen D3 without having to launch the detailed settings screen D3, thus saving time on print settings. In addition, the user will be able to select the items or parameters of the print settings displayed in the detailed settings screen D3 that they want to use and display them on the print settings screen D2.

[0080] However, in this case, the user needs to launch the detailed settings screen D3 to configure any additional items (e.g., poster printing, stapling) or additional parameters (e.g., fabric) that were not configured in the detailed settings screen D3. If auxiliary program 42A displays all additional items and parameters on the print settings screen D2, it becomes possible to configure other items or parameters that were not configured in the detailed settings screen D3 on the print settings screen D2, thereby reducing the effort required for the user to configure print settings. On the other hand, displaying all items and parameters on the print settings screen D2 can easily make the screen cluttered, so displaying only the items or parameters selected by the user on the print settings screen D2 can prevent the screen from becoming 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 obtain capability information and stores capability-dependent information 44, which includes print setting items or parameters determined based on that capability information, in the memory 12 of the PC1 (B11-B13, B25, B26 in Figure 8). When the auxiliary program 42A receives a processing request from the general-purpose printing program 41 because the printer 2 has been selected while the capability-dependent information 44 is stored in the memory 12, it does not perform the processing that requires communication with the printer 2 as shown in B11-B13 in Figure 8, but instead uses the capability-dependent information 44 stored in the memory 12 to display the contents of the setting items that reflect the capability information on the print settings screen D2 (A9 in Figure 7, alt: stored, A16-A23). As a result, the opportunities for PC1 to communicate with the printer 2 when the printer 2 is selected are reduced, and processing delays associated with communication with the printer 2 are suppressed.

[0082] Furthermore, when the auxiliary program 42A displays the detailed settings screen D3, it is highly likely that the user is requesting settings based on capabilities specific to the printer 2 or capabilities that can be realized by the auxiliary program 42A. In this embodiment, the auxiliary program 42A acquires capability information at the time the detailed settings screen D3 is displayed and stores capability-dependent information 44 generated based on that capability information in the memory 12. As a result, the auxiliary program 42A can 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 increasing convenience.

[0083] (Third embodiment) Next, a third embodiment of the support program disclosed herein will be described with reference to Figure 10. This embodiment differs from the first embodiment in that it stores capability information acquired from the printer 2 in memory 12 and generates capability-dependent information 44 using that capability information each time display data is generated. Here, the differences from the first embodiment will be described in detail, and common points will be described using the same reference numerals as in the first embodiment, and explanations will be omitted as appropriate.

[0084] As shown in Figure 10, when the auxiliary program 42B is started by the general-purpose printing program 41 with printer 2 selected (A07, A08), it determines whether or not capability information is stored in memory 12 (A51). If the auxiliary program 42B determines that capability information is not stored in memory 12 (alt: not stored), it obtains capability information from printer 2 (A11~A13) and stores the obtained capability information in memory 12 as is (A52). A11~A13 is an example of capability acquisition processing. A52 is an example of storage processing. Capability information is an example of information based on capability information. After that, 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 memory 12 (alt: stored), it reads the capability information from memory 12 (A53) and proceeds to A54. A53 is an example of a read operation.

[0086] In A54, the auxiliary program 42B generates capability-dependent information 44 based on the capability information acquired in A11 to A13, or the capability information read from memory 12 in A53. Since A54 is the same process as A14 in Figure 2, its explanation is omitted. The auxiliary program 42B uses the capability-dependent information 44 generated in A54 to generate display data and displays a print settings screen D2 reflecting the capability information of printer 2 on the display 13a (A22 to A24). A22 is an example of the generation process. A23 is an example of the display process.

[0087] In this embodiment, the auxiliary program 42B communicates with the printer 2 to obtain capability information and stores this capability information in the PC1's memory 12. When the general-purpose printing program 41 requests processing from the PC1 because the printer 2 has been selected while the capability information is stored in memory 12, the auxiliary program 42B does not perform the processing that requires communication with the printer 2 as shown in A11 to A13. Instead, it generates capability dependency information 44 based on the capability information stored in memory 12, and uses the generated capability dependency information 44 to display the contents of the setting items that reflect the capability information on the print setting screen D2. As a result, the PC1 has fewer opportunities to communicate with the printer 2 when the printer 2 is selected, and processing delays associated with communication with the printer 2 are suppressed.

[0088] Furthermore, the auxiliary program 42B of this embodiment can complete the memory processing shown in A52 earlier by storing the capability information in the memory 12 before determining the capability-dependent information 44.

[0089] The embodiments disclosed herein are merely illustrative and do not limit the present invention in any way. Therefore, the technology disclosed herein can naturally be improved and modified in various ways without departing from its essence. For example, the device connected to PC1 is not limited to a printer, but may be a multifunction device, copier, fax machine, or any other device with printing capabilities. Also, 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-dependent information 44 or capability information itself, but may also be information from an intermediate process that generates capability-dependent information from capability information. In addition, the information based on capability information stored in memory 12 may also be information obtained by converting data formats such as compression and decompression.

[0091] Additionally, auxiliary programs 42, 42A, and 42B may execute a process to obtain capability information from printer 2 when installation is complete. In this case, for example, the processes shown in A11-A13 of Figure 2 or Figure 10, or B11-B13 of Figure 8 may be omitted.

[0092] Furthermore, if the auxiliary program 42B generates capability-dependent information 44 that includes all additional items or parameters in BB25 of Figure 8, it does not need to generate display data in B26 to hide the detailed settings button SW2.

[0093] Furthermore, as shown in Figure 11, the auxiliary program 42C may statically hold capability dependency information 44 for each model. In this case, when printer 2 is selected, the auxiliary program 42C identifies the model of printer 2 based on the information of printer 2 passed from the general-purpose printing program 41 in A08 (A61). The auxiliary program 42C refers to the capability dependency information 44 corresponding to the identified model (A62) and generates display data (A22). Since such an auxiliary program 42C generates display data using the statically held capability dependency information 44 without obtaining capability information from printer 2, the opportunities for communication with printer 2 when printer 2 is selected are reduced, and processing delays associated with communication with printer 2 are suppressed. Alternatively, the auxiliary program 42C may statically hold capability information for each model of printer 2 instead of capability dependency information 44. In this case, after identifying the model of the selected printer (A61), the auxiliary program 42C only needs to refer to the capability information to generate capability dependency information 44 and then generate display data.

[0094] Furthermore, if, after the print settings screen D2 is displayed by the general-purpose printing program 41, the user changes the default printer from another printer to printer 2 via the OS 21, the general-purpose printing program 41 may also launch auxiliary programs 42, 42A, 42B, and 42C. In this case, as with the case where printer 2 is selected, auxiliary programs 42, 42A, 42B, and 42C should perform processes to obtain capability information from printer 2 and generate display data, and then pass the display data to the general-purpose printing program 41.

[0095] Furthermore, although the embodiments describe only the printing operation in detail as the operation of auxiliary programs 42, 42A, 42B, and 42C, auxiliary programs 42, 42A, 42B, and 42C may also have other roles. In addition, the program that executes the processing in this embodiment is not limited to auxiliary programs 42, 42A, 42B, and 42C, but can be any program that receives instructions from OS21 or the general-purpose printing program 41 when printing using the general-purpose printing program 41. For example, a print workflow application whose specifications have been published by Microsoft may also be used.

[0096] Furthermore, the execution timing of auxiliary programs 42, 42A, 42B, and 42C is not limited to the examples of this embodiment. For example, auxiliary program 42 may be executed by direct execution instruction from OS21, or auxiliary programs 42, 42A, 42B, and 42C may be resident programs. In the case of resident programs, auxiliary programs 42, 42A, 42B, and 42C should perform the aforementioned operations upon receiving an execution instruction.

[0097] Furthermore, in any flowchart disclosed in the embodiments, the execution order of any multiple processes in any multiple steps can be arbitrarily changed or executed in parallel, as long as no inconsistencies arise in the processing content.

[0098] Furthermore, the processes disclosed in the embodiments may be executed by a single CPU, multiple CPUs, hardware such as an ASIC, or a combination thereof. Also, the processes disclosed in the embodiments can be implemented in various forms, such as a recording medium or method that stores a program for executing the process. [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. An application program that supports a general-purpose printing program included in the operating system of an information processing device, The computer of the aforementioned information processing device, The information processing device and the printer communicate to obtain capability information indicating the capabilities of the printer, and the acquisition process is performed. A storage process that stores information based on the acquired capability information in the memory of the information processing device, Make it run, When the printer is selected on a print settings screen displayed according to a program other than the aforementioned program, and the information based on the capability information is stored in the memory, the operating system is prompted to perform a response process to display data on the print settings screen, including the configurable print setting items and the selectable parameters in the print setting items, using the information based on the capability information stored in the memory. The other program that obtains the data from the operating system updates the print settings items that can be set on the print settings screen and the parameters that can be selected on the print settings items. program.

2. A program for an application having a processing function for processing intermediate image data obtained from a general-purpose printing program included in the operating system of an information processing device, The computer of the aforementioned information processing device, The information processing device and the printer communicate to obtain capability information indicating the capabilities of the printer, and the acquisition process is performed. A storage process that stores information based on the acquired capability information in the memory of the information processing device, Make it run, When the printer is selected on a print settings screen displayed according to a program other than the aforementioned program, and the information based on the capability information is stored in the memory, the operating system is prompted to perform a response process to display data on the print settings screen, including the configurable print setting items and the selectable parameters in the print setting items, using the information based on the capability information stored in the memory. The other program that obtains the data from the operating system updates the print settings items that can be set on the print settings screen and the parameters that can be selected on the print settings items. program.

3. A program according to claim 1 or 2, The aforementioned other program is the operating system, The operating system that has acquired the aforementioned data updates the print settings items that can be set on the print settings screen and the parameters that can be selected on the print settings items. program.

4. A program according to claim 1 or 2, The aforementioned other program is an information application program capable of displaying various types of information in response to user requests. The program of the information application that has obtained the data from the operating system updates the print settings items that can be set on the print settings screen and the parameters that can be selected on the print settings items. program.

5. A program according to claims 1 to 4, To the aforementioned computer, Based on the acquired capability information, the system determines the configurable print setting items and the selectable parameters in the print setting items, and then executes the storage process to store them in the memory of the information processing device as information based on the capability information. program.

6. A program according to claims 1 to 4, To the aforementioned computer, Without determining the configurable print setting items and the selectable parameters in the print setting items, the storage process is performed to store the acquired capability information in the memory of the information processing device. program.

7. A program according to claims 1 to 6, To the aforementioned computer, Data for displaying multiple configurable print setting items and multiple selectable parameters in the print setting items on the print setting screen is provided in response to the operating system. program.

8. A program according to Claims 1 to 7, To the aforementioned computer, After the acquisition process has been executed, if a predetermined time has elapsed, the acquisition process will be executed again. program.

9. A program according to Claims 1 to 8, The aforementioned print settings screen can accept the selection of the printer and instructions to perform additional print settings. The aforementioned computer further, When an instruction to perform the additional print settings is received on the print settings screen, the system executes a display process that shows an additional settings screen, which includes the additional items that have been added to the print settings items that can be set on the print settings screen. program.

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