Support programs and printing systems

The support program addresses printing delays by independently acquiring and displaying printer status information, allowing the printing process to continue without waiting for notification screens, thus enhancing printing efficiency.

JP2026050457APending Publication Date: 2026-03-19BROTHER KOGYO KK
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2026-01-09
Publication Date
2026-03-19

AI Technical Summary

Technical Problem

Existing printer control systems using general-purpose printing programs experience delays in starting printing due to the need for notifications after acquiring printer status information, as the control is returned to the general-purpose printing program after message display is finished.

Method used

A support program that operates independently of the editing application program to acquire printer status information and request a separate display application program to display notifications, allowing the printing process to continue without waiting for the notification screen to finish.

Benefits of technology

This approach suppresses delays in the start of printing by enabling the printing process to proceed concurrently with notification display, ensuring efficient and timely printing operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026050457000001_ABST
    Figure 2026050457000001_ABST
Patent Text Reader

Abstract

To provide a technology for an information processing device that incorporates a standard OS-standard general-purpose printing program, which suppresses delays in the start of printing while providing notifications based on information obtained from the printer. [Solution] When the editing application 43 outputs a print command to the general-purpose printing program 41 that instructs the printer 2 to print an image, the auxiliary program 42 allows the PC 1 to obtain printer status information from the printer 2 via the communication interface 14 and pass screen information based on the obtained printer status information to the guide display application 44. The guide display application 44 operates as a separate process from the editing application 43 and can display a notification screen corresponding to the received screen information on the user interface 13. Furthermore, the auxiliary program 42 continues processing to send print data based on the print command to the printer 2 without waiting for the guide display application 44 to finish displaying the notification screen.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The technical field disclosed in this specification relates to a support program for supporting printer control and a printing system.

Background Art

[0002] In recent years, a technology for controlling a printer by a general-purpose printing program incorporated as a standard in an operating system (OS) without using a printer driver has been put into practical use. In this technology, when the OS detects a printer, it associates the printer with a general-purpose printing program standard to the OS. Thereafter, when a print instruction for the printer is received, printing by the general-purpose printing program standard to the OS becomes possible without using a printer driver.

[0003] Also, a technology is known in which when a print instruction is input to an information processing apparatus, the information processing apparatus acquires the status of a printer and makes a notification based on the acquired status. As a technology for notifying the status of a printer in an information processing apparatus in which the above-described general-purpose printing program is incorporated, for example, there is Patent Document 1. Patent Document 1 discloses a configuration in which when there is a print instruction for a general-purpose printing program, the general-purpose printing program starts an auxiliary program, the auxiliary program acquires status information from the printer, and displays a message based on the acquired status information.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0005] In the configuration described above, where the auxiliary program displays a message, control is returned to the general-purpose printing program after the message has finished, and the print data is sent from the general-purpose printing program. Therefore, the start of printing is prone to delays.

[0006] This specification discloses a technology for providing notifications based on information obtained from a printer while suppressing delays in the start of printing in an information processing device that incorporates a general-purpose printing program that is a standard of the OS. [Means for solving the problem]

[0007] 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. The support program is characterized in that, when the computer receives a print instruction output from an editing application program installed in the information processing device, which instructs the general-purpose printing program to print an image to the printer, it performs an acquisition process to acquire current status information of the printer from the printer via the communication interface of the information processing device, and a display request process to request the display application program to display a notification screen that provides notification corresponding to the current status information by passing parameters based on the current status information acquired in the acquisition process to a display application program installed in the information processing device, the display application program operates as a separate process from the editing application program, and is capable of displaying the notification screen corresponding to the parameters on the user interface of the information processing device. Furthermore, when the computer receives the print instruction, it continues processing to send print data based on the print instruction to the printer without waiting for the display application program to finish displaying the notification screen.

[0008] According to the support program disclosed herein, when a print command is received from an editing application program, the information processing device acquires current status information from the printer and requests a display application program, which is a separate process from the editing application program, to display a notification screen corresponding to the acquired current status information. The display application program operates independently of the support program as a separate process from the editing application program and displays the notification screen on the user interface based on the request. As a result, the support program and the editing application program do not need to wait for the display to finish before continuing their processing, and can continue processing to send print data based on the print command to the printer without waiting for the notification screen to finish displaying. Therefore, even when a notification is made based on information acquired from the printer, delays in the start of printing can be suppressed.

[0009] The printing system including the above-mentioned support program, the information processing device incorporating the support program, the storage medium readable by a computer that stores the support program, and the control method for realizing the functions of the support program are also novel and useful. [Effects of the Invention]

[0010] The technology disclosed herein enables an information processing device incorporating an OS standard general-purpose printing program to provide notifications based on information obtained from a printer while suppressing delays in the start of printing. [Brief explanation of the drawing]

[0011] [Figure 1] This is a block diagram illustrating the electrical configuration of a printing system. [Figure 2] This is an explanatory diagram showing an example of a correspondence table. [Figure 3] This sequence diagram shows an example of the steps taken by each program when a print command is received. [Figure 4] This is an explanatory diagram showing an example of a notification screen. [Figure 5] This sequence diagram shows examples of the steps taken by each program when detailed print settings are received. [Figure 6] This is a block diagram illustrating the electrical configuration of a printing system. [Figure 7] This sequence diagram shows an example of the steps taken by each program when a print command is received. [Modes for carrying out the invention]

[0012] The first embodiment of the support program will be described in detail below with reference to the attached drawings. This embodiment discloses a printing system 100 that includes a personal computer (hereinafter referred to as "PC") 1 that utilizes the support program and a printer 2 that has printing capabilities, as shown in Figure 1.

[0013] As shown in Figure 1, the PC1 in this configuration includes a CPU 11 and a controller 10 which includes 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.

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

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

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

[0017] As shown in FIG. 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, an editing app 43, and a guide display app 44. The auxiliary program 42 includes a correspondence table 45. The auxiliary program 42 is an example of a support program. The editing app 43 is an example of an editing application program. The guide display app 44 is an example of a display application program.

[0018] OS21 is a multi-tasking OS that can process multiple tasks in parallel by managing and switching between them, and is, for example, one of Windows (registered trademark), macOS (registered trademark), Linux (registered trademark), iOS (registered trademark), and Android (registered trademark).

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

[0020] The general-purpose printing program 41 supports functions that can be commonly used by multiple types of printers provided by various printer vendors. The general-purpose printing program 41 does not support all the functions unique to each type of printer, and the supported functions are limited to general-purpose ones.

[0021] The auxiliary program 42 is a program or a group of programs that execute processing based on an instruction from the OS21 following the processing of the general-purpose printing program 41, and is an application that supports the control of the target hardware. The auxiliary program 42 in this embodiment corresponds to the model of the printer 2 connected to the PC1, and is, for example, launched from the general-purpose printing program 41 when receiving an instruction to execute printing on the printer 2 using the general-purpose printing program 41. The auxiliary program 42 is, for example, called a hardware support application (abbreviation, HSA).

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

[0023] The auxiliary programs may be programs provided by the printer vendor for each type of printer. For example, separate auxiliary programs may be provided for inkjet printers and laser printers. When a new printer is connected to PC1, for example, the OS21 of PC1 downloads the appropriate auxiliary program from the printer vendor's server, etc., according to the type of connected printer and installs it into PC1. Then, the OS21 associates the identification information of the installed auxiliary program with the printer information of the newly connected printer and stores it in memory 12. Note that auxiliary programs may be provided not only for each type of printer, but also for each printer model or series of printer models.

[0024] The editing application 43 is, for example, an application for creating and editing image data or document data. The editing application 43 may be, for example, Microsoft Word or PowerPoint, or it may be an application provided by the vendor of printer 2. The editing application 43 can receive a print execution command via the user interface 13, for example, to cause printer 2 to perform printing.

[0025] The guide display application 44 is a program that can display a predetermined notification screen to the user interface 13 based on instructions from the auxiliary program 42. The guide display application 44 in this embodiment is a program that can support multiple models, including the printer 2 model, and has multiple notification screens for each model to be displayed to the user interface 13. The guide display application 44 in this embodiment only needs to support at least the printer 2 model, and may, for example, be a program prepared for each series of printer models.

[0026] The correspondence table 45, as shown in Figure 2 for example, contains information relating printer status information, including the printer's status, model information indicating the printer's model, and screen information specifying the notification screen to be displayed in the guide display application 44. The auxiliary program 42 can obtain the screen information from the printer status information and model information based on the correspondence table 45. Details about the guide display app 44 and the correspondence table 45 will be described later.

[0027] In this configuration, printer 2 is a device with printing capabilities. PC1 can communicate with printer 2 via communication IF14. When printer 2 receives print data from, for example, PC1, it can perform printing based on the received print data.

[0028] In this configuration, printer 2 has the function of generating printer status information based on the printer's status and transmitting the printer status information in response to requests from external devices. The status of printer 2 can be, for example, printing in progress, waiting for print data, printing stopped, or an error occurring. If the status is printing stopped or an error has occurred, the printer status information also includes information indicating the cause of the problem.

[0029] The printer 2 in this embodiment may also have a function to generate consumable information indicating the status of consumables stored in the printer 2 and to transmit the consumable information in response to a request from an external device. Consumables include, for example, printing paper, ink, toner, and other colorants. Specifically, the consumable information includes information such as the remaining amount of each color of colorant stored in the printer 2, the presence and size of paper stored in each paper tray, and so on.

[0030] Next, the printing procedure, including the operation of the auxiliary program 42 in this embodiment, will be explained with reference to the sequence diagram in Figure 3. Figure 3 shows the actions of each program when the editing application 43 receives a print command from the user to the general-purpose printing program 41 to print to the printer 2.

[0031] 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.

[0032] The editing application 43 accepts the creation and editing of text, diagrams, etc., based on user instructions. When the editing application 43 receives a print execution instruction from the general-purpose printing program 41 to print an image based on the selected text, etc., to the printer 2 (A11), it passes the print instruction to the general-purpose printing program 41 via the OS 21 (A12). The general-purpose printing program 41 obtains information indicating the image data of the image to be printed and information indicating the print settings from the print instruction.

[0033] The general-purpose printing program 41 generates intermediate image data (A13) by converting the format of the image data included in the received print instruction into an intermediate image data format, and then generates a print job that includes the intermediate image data. The image data passed from the editing application 43 is of various types, and the general-purpose printing program 41 converts the received image data into intermediate image data suitable for generating print data. If the image data included in the print instruction is suitable for generating print data, the generation of intermediate image data can be omitted, and the intermediate image data can be used as is.

[0034] The general-purpose printing program 41 then outputs an execution command (A14) to an auxiliary program 42, which is a program corresponding to printer 2, and starts the auxiliary program 42. In the execution command, the intermediate image data generated in A13 and information indicating the print settings are passed to the auxiliary program 42.

[0035] The auxiliary program 42 communicates with the printer 2 via the communication IF 14 and obtains printer status information indicating the current status from the printer 2 (A21). A21 is an example of the acquisition process. In other words, the auxiliary program 42 requests printer status information from the printer 2, and the printer 2, in response to the request from the auxiliary program 42, returns printer status information based on the printer 2's status to the auxiliary program 42. In this configuration, the auxiliary program 42 requests printer status information and consumable information in A21 and obtains this information from the printer 2. Printer status information and consumable information are examples of current status information.

[0036] Furthermore, communication between the auxiliary program 42 and the printer 2 can be either done directly by the auxiliary program 42 using, for example, MIB (Management Information Base), or it can be done via OS21. If communication is done via OS21, the auxiliary program 42 and the printer 2 will communicate according to the OS21's communication protocol, such as IPP (Internet Printing Protocol).

[0037] The auxiliary program 42 determines whether a display is necessary based on the printer status information received from printer 2 and the print settings included in the execution instruction received in A14 (A22). Specifically, the auxiliary program 42 determines that a display is necessary if user operation on printer 2 is required to start printing based on the print data received by printer 2; in other words, if printing cannot be started without user operation.

[0038] The auxiliary program 42 determines, for example, that a display is necessary if the status of printer 2 is "error occurring" or "printing stopped." "Error occurring" and "printing stopped" are examples of statuses that meet the predetermined display conditions. If the status of printer 2 is "error occurring" or "printing stopped," printer 2 cannot start printing until the cause of the error is resolved. Examples of errors that can occur in printer 2 include paper jams and full memory. The printer 2 status will also show an error if parts such as the print head or photoconductor of printer 2 need to be replaced. Other factors that can cause printing to stop include, for example, running out of paper or colorants while printing is in progress, the cover of printer 2 being open, or the output tray being full.

[0039] Furthermore, the auxiliary program 42 determines that a display is necessary even if the printer status information does not indicate an error or that printing has stopped, if the relationship between the consumable information and the print settings satisfies a predetermined relationship that requires user resolution. For example, if printer 2 is out of color pigments and color printing is specified in the print settings, printer 2 cannot start printing until the pigments are replenished. In this case, the auxiliary program 42 determines that a display is necessary. On the other hand, even if the color pigments are out of stock, if grayscale printing is specified in the print settings, printer 2 can start printing. In this case, the auxiliary program 42 determines that a display is not necessary. The auxiliary program 42 should also determine that a display is necessary if the paper size specified in the print settings differs from the paper size loaded in printer 2.

[0040] If the auxiliary program 42 determines that a display is necessary (alt:[Required]), it uses the correspondence table 45 to determine the screen information that will be displayed on the user IF13, based on the printer status information obtained in A21 and the model information of printer 2 (A23). For example, if the status of printer 2 of the "xxx series" is "printing stopped" and the reason is "out of paper", the auxiliary program 42 determines that the screen information is "001-xxx".

[0041] Furthermore, the auxiliary program 42 instructs the guide display application 44 to display the notification screen indicated by the determined screen information by passing it to the guide display application 44 (A24). A24 is an example of display request processing. Screen information is an example of a parameter. Screen information is information that identifies the notification screen to be displayed from among the multiple notification screens provided by the guide display application 44. Screen information may be a single piece of information that specifies the entire notification screen, or it may be a combination of partial information that specifies the information to be displayed in each part of the notification screen. In addition, in A24, the auxiliary program 42 may also pass consumer information obtained from the printer 2 to the guide display application 44.

[0042] If the guide display app 44 is not running, the auxiliary program 42 will launch the guide display app 44 at A24 and pass the previously determined screen information to the guide display app 44. By launching the guide display app 44, the auxiliary program 42 ensures that the notification screen is displayed reliably.

[0043] The guide display application 44 displays a notification screen corresponding to the received screen information from among several pre-configured notification screens to the user IF13 (A25). If the notification screen corresponding to the screen information includes a section for displaying the remaining amount of a consumer product, and consumer product information has also been received from the auxiliary program 42, the guide display application 44 generates a remaining amount display image using the received consumer product information and composites it onto the notification screen for display.

[0044] Figure 4 shows an example of a notification screen displayed by the guide display app 44 when it receives "001-xxx" as screen information. The notification screen 51 in the example shown in Figure 4 includes the model name 511 of printer 2, printer status information 512 indicating the status of printer 2 and its cause, a button 513 that accepts instructions to display the web Q&A page, a colorant remaining amount display 514, a button 515 that accepts instructions to display the genuine consumables site, and an image 516 showing the appearance of printer 2. Based on the screen information "001-xxx", the guide display app 44 selects a notification screen that includes the model name 511, printer status information 512, and image 516, and generates the remaining amount display 514 in the selected notification screen based on the consumables information.

[0045] The printer status information 512 on the notification screen 51 in Figure 4 displays information indicating that the printer 2's status is stopped due to a paper shortage. This includes a message indicating the status "Printing stopped" and a message indicating the cause, "Paper out." The notification screen 51 may also include information indicating the paper tray that is out of paper and an image showing how to load the paper. The remaining amount display 514 may, for example, display the remaining amount of each color of coloring agent using a color bar.

[0046] Buttons 513 and 515 are buttons that receive instructions to display a specific page on a website provided by the printer 2 vendor, respectively. The guide display application 44 stores information indicating the URL corresponding to each button, and when it receives an operation on button 513 or button 515, it launches a browser and passes the specified URL to the browser based on the stored information, thereby displaying the corresponding page to the user interface 13. The information stored by the guide display application 44 may be information specific to each printer model. Furthermore, this information may be the URL itself, or it may be information indicating the location where the URL is stored.

[0047] The notification screen 51 may also include a paper level indicator showing the remaining paper in each paper tray, images and messages regarding the use of printer 2, advertisements and the latest information on related products, etc. For example, if the status of printer 2 is cover open, the guide display app 44 may display an image showing the position of the open cover.

[0048] Even a guide display app 44 that supports multiple models can receive screen information corresponding to the printer model, allowing it to display different and appropriate notification screens for each printer model with simple processing. In other words, the guide display app 44 can provide more detailed information suited to the model and display a more user-friendly notification screen.

[0049] The guide display application 44 is a program that operates as a separate process from the editing application 43. On the other hand, the general-purpose printing program 41 and the auxiliary program 42 are programs that operate within the process of the editing application 43. In other words, the guide display application 44 and the auxiliary program 42 can operate in parallel, and even after the auxiliary program 42 determines that a display is necessary and passes a display instruction to the guide display application 44 in A24, it can continue to execute the next process regardless of the progress of the processing by the guide display application 44. For example, even if the guide display application 44 accepts an operation on button 513 or button 515 and starts displaying a web page, the processing by the auxiliary program 42 will continue to be executed.

[0050] When the auxiliary program 42 outputs a display instruction to the guide display application 44 in A24, it generates print data based on the intermediate image data and print settings received in A14 (A31), and sends the generated print data to the printer 2 along with a print command instructing it to print (A32). On the other hand, if the auxiliary program 42 determines in A22 that a display is not necessary, it executes processes A31 and A32 without executing processes A23 and A24. A31 and A32 are examples of processes for sending print data based on a print instruction to the printer. As a result, the printer 2 forms a printout. Note that if the printer 2 is stopped printing when it receives the print data sent in A32, it waits for the cause of the stoppage to be resolved before executing the printout.

[0051] The auxiliary program 42 determines whether a display is necessary based on the printer status information or the relationship between the consumable information and the print settings. If the auxiliary program 42 determines that a display is necessary, it instructs the notification screen to be displayed; if it determines that a display is not necessary, it does not instruct the notification screen to be displayed. For example, if the status of printer 2 is printing or waiting for print data, the auxiliary program 42 determines in A22 that a display is not necessary and does not launch the guide display application 44. This reduces the frequency of notification screen displays and alleviates the annoyance caused by low-priority notification screens. Even if a display is not necessary, the auxiliary program 42 may still pass a display instruction to the guide display application 44 to display the remaining amount of colorants or the print progress.

[0052] Alternatively, instead of the auxiliary program 42 generating the print data, the general-purpose printing program 41 may generate the print data. In other words, the auxiliary program 42 may pass intermediate image data, print setting information, and print execution information to the general-purpose printing program 41. The general-purpose printing program 41 may generate print data based on the intermediate image data and print settings received from the auxiliary program 42, and then pass the generated print data back to the auxiliary program 42.

[0053] 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 the print data is generated by the general-purpose printing program 41, the processing of the auxiliary program 42 is reduced, which is expected to avoid an increase in processing time, and the program size of the auxiliary program 42 can be kept down.

[0054] On the other hand, the print data generated by the auxiliary program 42 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. By generating print data with the auxiliary program 42 that corresponds to printer 2, the processing flexibility of printer 2 can be greatly increased, or the processing load on printer 2 can be reduced, compared to when print data is generated by the general-purpose printing program 41.

[0055] Furthermore, the general-purpose printing program 41 may also perform the transmission of print data 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 this case, the general-purpose printing program 41 sends the print data received from the auxiliary program 42 to printer 2 via OS21.

[0056] Furthermore, printer 2 may have a function to rasterize intermediate image data. If printer 2 has a rasterization function, auxiliary program 42 may send a print command to printer 2 that includes intermediate image data of the image to be printed and print settings, without generating print data for the image to be printed.

[0057] The processes of generating print data and sending print data or intermediate image data to printer 2 are examples of processes for sending print data to a printer based on a print instruction, regardless of whether the execution entity is the auxiliary program 42, the general-purpose printing program 41, or printer 2. In this configuration, the auxiliary program 42 and the general-purpose printing program 41 can continue their respective processes regardless of the progress of the processing by the guide display application 44.

[0058] Once the transmission of the print data is complete, the auxiliary program 42 notifies the general-purpose printing program 41 that processing is finished (A33). As a result, the general-purpose printing program 41 finishes processing the print instruction received in A12 and notifies the editing application 43 that processing is finished (A34). Upon receiving a termination notification from the general-purpose printing program 41, the editing application 43 becomes ready to accept further user instructions, such as editing or printing another document, even if the guide display application 44 is still processing.

[0059] Furthermore, the auxiliary program 42 may obtain printer status information from the printer 2 after sending the print data but before notifying the general-purpose print program 41 of its completion, and may pass a display instruction to the guide display application 44 according to the obtained status. For example, if authentication information is attached to the sent print data, the printer 2 will enter a state of waiting for the authentication information to be entered. Therefore, the auxiliary program 42 may cause the guide display application 44 to display an image showing how to enter the authentication information. When the printer 2 receives print data with authentication information attached, it temporarily stores the print data in memory and does not start printing until it accepts the input of the authentication information attached to the print data.

[0060] Furthermore, before issuing a print command, the editing application 43 can display a print screen to the user interface 13 to accept print-related instructions and can also accept instructions to begin accepting detailed print settings. Detailed print settings include, for example, print settings that utilize functions specific to printer 2, and may include print settings that the editing application 43 cannot accept. Even when the editing application 43 receives instructions for detailed print settings, it still executes the general-purpose print program 41 and the auxiliary program 42. The auxiliary program 42 may also obtain printer status information from printer 2 when it receives instructions for detailed print settings.

[0061] The procedures for each program's operation when detailed print settings are received will be explained with reference to the sequence diagram in Figure 5. The procedures shown in the sequence diagram in Figure 5 are executed prior to the procedures shown in Figure 3. In the following explanation, the same reference numerals will be used for procedures similar to those in the sequence diagram in Figure 3, and the explanation will be simplified.

[0062] When the editing application 43 receives an instruction to start the printing procedure with printer 2 selected (A01), it displays a screen for receiving printing instructions to the user interface 13 (A02). If the editing application 43 receives an instruction to start accepting detailed print settings on this screen (A03), it passes the information of the received instruction to the general-purpose printing program 41 (A04). The general-purpose printing program 41 executes the auxiliary program 42 corresponding to printer 2 and passes an execution instruction to instruct it to accept detailed print settings (A05).

[0063] The auxiliary program 42 starts operating based on an execution instruction from the general-purpose printing program 41 and displays a settings screen for accepting detailed print settings to the user IF 13 (A06). A06 is an example of screen display processing. Furthermore, the auxiliary program 42 queries the printer 2 via the communication IF 14 and obtains printer status information and consumable information from the printer 2 (A21). In this case, A21 is an example of acquisition processing and is an example of pre-print acquisition processing.

[0064] The auxiliary program 42 determines whether a display is necessary based on the acquired printer status information (A07). For example, if the status of printer 2 is that an error has occurred or printing has stopped, the auxiliary program 42 determines that a display is necessary. In A07, since the print settings have not been determined, the auxiliary program 42 does not make a determination of whether a display is necessary based on the consumer information and print settings, unlike the determination in A22.

[0065] If the auxiliary program 42 determines that a display is necessary (alt:[Required]), it uses the correspondence table 45 to determine the screen information that will be displayed, based on the printer status information that needs to be displayed and the model information of printer 2 (A23). Furthermore, the auxiliary program 42 passes a display instruction including the determined screen information to the guide display application 44 (A24). In this case, A24 is an example of a display request process and an example of a pre-print display request process. The screen information is an example of a parameter. Based on the screen information it receives, the guide display application 44 displays the notification screen to be displayed on the user IF13 (A25).

[0066] If a notification screen is displayed before accepting a print command, the user can decide whether or not to proceed with the print command based on that notification screen, and it is expected that the user's operation or task will be completed sooner. For example, if the status of printer 2 is out of paper, it is expected that paper will be inserted sooner. Also, depending on the status of printer 2 and the information on consumables, it is expected that printing will be completed sooner by accepting commands such as changing the printer or changing the print settings from color to grayscale.

[0067] If the auxiliary program 42 determines in A07 that display is not necessary, or if it outputs a display instruction to the guide display application 44 in A24, it performs subsequent processing (not shown). Specifically, the auxiliary program 42 receives user input on the settings screen displayed in A06 and sets the print settings based on the received input. Furthermore, when it receives an instruction from the user to finish the detailed print settings, the auxiliary program 42 notifies the general-purpose print program 41 that the processing is complete. As a result, the general-purpose print program 41 notifies the editing application 43 that the detailed setting instruction received in A04 is complete. Upon receiving the completion notification from the general-purpose print program 41, the editing application 43 becomes ready to receive the next instruction from the user, for example, an instruction to execute printing.

[0068] As explained in detail above, in this configuration, the auxiliary program 42, upon receiving a print command from the editing application 43, acquires printer status information from the printer 2 and displays a notification screen corresponding to the acquired printer status information in the guide display application 44, which is a separate process from the editing application 43. This eliminates the need for the auxiliary program 42 and the editing application 43 to wait for the display to finish before continuing processing, and allows them to continue processing to send print data based on the print command to the printer without waiting for the notification screen to finish displaying. Therefore, delays in the start of printing can be suppressed.

[0069] Next, a second embodiment of the support program will be described in detail with reference to the attached drawings. As shown in Figure 6, this embodiment is a printing system 100 including a PC1 and a printer2, and the guide display application 44 is equipped with a correspondence table 45. This embodiment differs from the first embodiment only in the program that utilizes the correspondence table 45, and the same reference numerals are used for the same configurations and processes as in the first embodiment to simplify the explanation.

[0070] In the first embodiment, the auxiliary program 42 determines the screen information using the correspondence table 45, whereas in this embodiment, the guide display application 44 determines the screen information using the correspondence table 45. The contents of the correspondence table 45 in this embodiment are the same as in the first embodiment. The procedures of each program in the second embodiment will be explained with reference to the sequence diagram in Figure 7. In the procedure shown in Figure 7, the guide display application 44 performs the processing A22 to A23 in the procedure shown in Figure 3.

[0071] When the editing application 43 receives a print command from the user (A11), it passes the print command to the general-purpose printing program 41 (A12). The general-purpose printing program 41 generates intermediate image data based on the print command (A13) and passes an execution command to the auxiliary program 42 (A14). The auxiliary program 42 obtains printer status information and consumable information from the printer 2 (A21).

[0072] The auxiliary program 42 passes the printer status information obtained from the printer 2 to the guide display application 44 (A41) and instructs the guide display application 44 to display the information. A41 is an example of the display request process. In this configuration, in A41, the auxiliary program 42 also passes the print settings received in the execution instruction A14, the model information of the printer 2, and the consumable information obtained in A21 to the guide display application 44. The information that includes the printer status information and is passed to the guide display application 44 in A41 is an example of parameters. If the guide display application 44 is not running, the auxiliary program 42 starts the guide display application 44 in A41.

[0073] After instructing the guide display application 44 to display information, the auxiliary program 42 continues to perform the following processes: the auxiliary program 42 generates print data (A31) and sends the generated print data to the printer 2 (A32). Furthermore, the auxiliary program 42 notifies the general-purpose print program 41 that processing is complete (A33), and the general-purpose print program 41 notifies the editing application 43 that processing is complete (A34). The general-purpose print program 41 may also generate and send the print data.

[0074] In this configuration as well, the processing of auxiliary programs 42 and general-purpose printing programs 41 from A31 onward is an example of processing for sending print data based on print instructions to the printer. Even with auxiliary programs 42 and general-purpose printing programs 41 in this configuration, each process can be continued regardless of the progress of processing by the guide display application 44.

[0075] Meanwhile, the guide display application 44 determines whether or not a display is necessary based on the information received from the auxiliary program 42 in A41 (A51). The guide display application 44 determines that the determination in A51 is necessary because the received information does not include screen information. Alternatively, the auxiliary program 42 may also pass an instruction to the guide display application 44 in A41 to determine whether or not a display is necessary.

[0076] The processing of A51 by the guide display application 44 may be the same as the processing of A22 in Figure 3 by the auxiliary program 42. In this embodiment, the decision of A51 is performed by the guide display application 44 in a process separate from the editing application 43, so the order with A32 is not limited. In other words, A51 may be performed before A32, after A32, or in parallel.

[0077] If the guide display application 44 determines that a display is necessary (alt:[Required]), it uses the correspondence table 45 provided by the guide display application 44 to determine the screen information indicating the notification screen to be displayed, based on the information received in A41 (A52). The processing in A52 by the guide display application 44 is the same as the processing in A23 in Figure 3 by the auxiliary program 42. Then, the guide display application 44 displays the notification screen on the user IF13 based on the determined screen information (A53). On the other hand, if the guide display application 44 determines in A51 that a display is not necessary, it does not execute A52 and A53 and does not display the notification screen.

[0078] By having the guide display application 44 determine the necessity of display, the auxiliary program 42 can perform the processes of generating and sending print data earlier. On the other hand, if the auxiliary program 42 determines the necessity, the opportunities for the guide display application 44 to be executed decrease, and the processing load on the guide display application 44 is reduced.

[0079] Alternatively, the auxiliary program 42 may determine the necessity of displaying the notification, while the guide display application 44 may determine the screen information to display. Specifically, in the process shown in Figure 3, the auxiliary program 42 may make the determination in A22, and if it determines that it is necessary, the auxiliary program 42 may pass the same information and display instructions as in A41 in Figure 7 to the guide display application 44. In that case, the guide display application 44 will not perform A51 in Figure 7, but will execute A52 and A53 to display the notification screen.

[0080] As explained in detail above, even in the second form of the printing system 100, the delay in the start of printing can be suppressed, just as in the first form. In the second form, if the guide display application 44 has a correspondence table 45 and the guide display application 44 determines and displays the notification screen to be displayed, the notification screen to be displayed can be flexibly changed by changing the guide display application 44. On the other hand, in the first form, if the auxiliary program 42 determines the screen information, the guide display application 44 only displays the screen based on the received information, resulting in a simpler process.

[0081] Furthermore, according to the first and second embodiments of the printing system 100, a separate guide display application 44, distinct from the auxiliary program 42, contains information for the notification screen, and the auxiliary program 42 delegates the display of the notification screen to the guide display application 44. Therefore, if it is necessary to change the content of the notification screen, for example, to update the displayed product advertisement or latest information, the printer 2 vendor can do so by updating the guide display application 44 without changing the auxiliary program 42. In addition, since the display processing is standardized in the auxiliary program 42, there is no need to develop multiple auxiliary programs 42 for different notification screens, and the auxiliary program 42 can be standardized.

[0082] 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; it may be a multifunction device, copier, fax machine, or any other device with printing capabilities. Furthermore, the number of devices included in the printing system 100 is not limited to the illustrated example, and may be two or more.

[0083] Furthermore, the illustrated notification screen is just one example and is not limited to this. For example, the arrangement and number of messages and buttons displayed on the notification screen are not limited to the illustrated example. Also, in this embodiment, the notification screen is displayed when user action is required, but it may also be displayed when a print command is received, regardless of the status.

[0084] Furthermore, for example, the guide display application 44 may be capable of communicating with the printer 2. For instance, when the auxiliary program 42 receives an execution command, it may activate the guide display application 44, which may then obtain printer status information from the printer 2. Furthermore, the guide display application 44 may be capable of receiving instructions from the user to cancel printing, and if it receives such instructions, it may send a cancel command to the printer 2.

[0085] Furthermore, in the first and second embodiments, the guide display application 44 is provided with various notification screens, but some of the information on the notification screens may be obtained from an external device. For example, if the printer 2 has information about the external image of the printer 2, the guide display application 44 may obtain that information from the printer 2 and combine it with the notification screen to be displayed.

[0086] Furthermore, although it is stated that the correspondence table 45 will also include model information, if, for example, the guide display application 44 is a program that only supports the model or model series of printer 2, then the correspondence table 45 does not need to include model information. Also, the correspondence table 45 may be stored on an external device such as a server, in which case the auxiliary program 42 or the guide display application 44 can retrieve and use the correspondence table 45 from the external device.

[0087] Furthermore, the guide display application 44 is not limited to a program launched in response to instructions from the auxiliary program 42, but may also be a program that resides on the PC 1. Also, the guide display application 44 may be able to accept display instructions from other programs that cause the printer 2 to perform specific actions, such as the printer driver, in addition to the auxiliary program 42. Furthermore, the guide display application 44 may possess both the functions of the first and second forms. In that case, the guide display application 44 should decide whether or not to determine the necessity of displaying based on the received parameters.

[0088] Furthermore, although the embodiment describes only the printing operation as the operation of the auxiliary program 42 in detail, the auxiliary program 42 may have other roles as well. Also, the program that executes the processing of this embodiment is not limited to the auxiliary program 42, but can be any program that receives instructions from the OS 21 or the general-purpose printing program 41 when printing using the general-purpose printing program 41. For example, the Print Workflow application whose specifications have been published by Microsoft may also be used.

[0089] Furthermore, the execution timing of the auxiliary program 42 is not limited to the examples of this embodiment. For example, it may be executed by direct execution instruction from the OS 21, or it may be a resident auxiliary program 42. In the case of a resident auxiliary program, the auxiliary program 42 should perform the operations described above upon receiving an execution instruction.

[0090] 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.

[0091] 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]

[0092] 1 PC 2 Printer 11 CPU 13 User Interface 14 Communication IF 100 Printing Systems

Claims

1. A support program that is executable by the computer of an 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, To the aforementioned computer, A print instruction output from an editing application program incorporated in the information processing device, in which the general-purpose printing program is instructed to print an image to the printer, The information processing device performs an acquisition process to obtain current status information of the printer from the printer via the communication interface of the information processing device, A display request process that passes parameters based on the current status information acquired in the acquisition process to a display application program incorporated in the information processing device, thereby requesting the display application program to display a notification screen that provides notification corresponding to the current status information, The display application program is a program that runs as a separate process from the editing application program and is capable of displaying the notification screen corresponding to the parameters on the user interface of the information processing device. Furthermore, the computer, When the aforementioned print command is received, the process of sending the print data based on the print command to the printer continues without waiting for the display application program to finish displaying the notification screen. A support program characterized by the following features.

2. In the support program described in claim 1, To the aforementioned computer, If the aforementioned print command is issued and the display application program is not running, the display application program will be started in conjunction with the execution of the display request process. A support program characterized by the following features.

3. In the support program described in claim 1 or claim 2, In the aforementioned display request processing, The display application program is instructed to display the notification screen corresponding to the printer model, and the display application program supports multiple models and can display different notification screens for each model. A support program characterized by the following features.

4. In the support program described in claim 3, In the aforementioned display request processing, The parameters based on the current status information acquired in the acquisition process and model information indicating the printer model are passed to the display application program, causing the display application program to display the notification screen corresponding to the printer model, and the display application program uses the parameters and model information passed from the support program to determine the content of the notification screen to be displayed. A support program characterized by the following features.

5. In the support program described in claim 3, In the aforementioned display request processing, Based on the current status information acquired in the acquisition process and the printer model, the content of the notification screen to be displayed by the display application program is determined, and screen information indicating the determined content of the notification screen is passed to the display application program as a parameter, thereby causing the display application program to display the notification screen corresponding to the printer model, and the display application program displays the notification screen corresponding to the screen information passed from the support program. A support program characterized by the following features.

6. In a support program according to any one of claims 1 to 5, To the aforementioned computer, A screen display process that displays a settings screen on the user interface that accepts print settings used for printing with the aforementioned printer, Based on the display of the settings screen by the screen display process, a pre-print acquisition process is performed to query the printer via the communication interface and acquire the current status information, A pre-print display request process that passes the parameters based on the current status information obtained in the pre-print acquisition process to the display application program, and requests the display application program to display the notification screen that provides notification corresponding to the current status information, To execute A support program characterized by the following features.

7. In a support program according to any one of claims 1 to 6, To the aforementioned computer, When the aforementioned print instruction is given, If the current status information acquired in the acquisition process satisfies the predetermined display conditions, the display request process is executed, and without waiting for the display application program to finish displaying the notification screen, the process of sending the print data based on the print instruction to the printer is continued. If the current status information acquired in the acquisition process does not meet the predetermined display conditions, the display request process is not executed, and the process of sending print data based on the print instruction to the printer is continued. A support program characterized by the following features.

8. In a support program according to any one of claims 1 to 6, To the aforementioned computer, When the aforementioned print instruction is given, If the current status information acquired in the acquisition process and the print settings set in the print instruction satisfy a predetermined relationship, the display request process is executed, and without waiting for the display application program to finish displaying the notification screen, the process of sending the print data based on the print instruction to the printer is continued. If the current status information obtained in the acquisition process and the print settings set in the print instruction do not satisfy the predetermined relationship, the display request process is not executed, and the process of sending the print data based on the print instruction to the printer is continued. A support program characterized by the following features.

9. In a support program according to any one of claims 1 to 6, In the aforementioned display request processing, The parameters based on the current status information obtained in the acquisition process are passed to the display application program, and the display application program is requested to display the notification screen. If the passed parameters satisfy predetermined display conditions, the display application program displays the notification screen corresponding to the parameters on the user interface, and if the passed parameters do not satisfy the predetermined display conditions, the notification screen is not displayed on the user interface. A support program characterized by the following features.

10. In a support program according to any one of claims 1 to 6, In the aforementioned display request processing, The parameters based on the current status information acquired in the acquisition process and the print settings set in the print instruction are passed to the display application program, and the display application program is requested to display the notification screen. If the passed parameters and the print settings satisfy a predetermined relationship, the display application program displays the notification screen corresponding to the parameters on the user interface, and if the passed parameters and the print settings do not satisfy the predetermined relationship, the notification screen is not displayed on the user interface. A support program characterized by the following features.

11. A printing system comprising a printer, a support program incorporated into an information processing device connected to the printer, and a display application program incorporated into the information processing device, The aforementioned support program, This program is compatible with the aforementioned printer and supports a general-purpose printing program that is pre-installed in the operating system of the information processing device. The aforementioned display application program is This program is capable of displaying a notification screen on the user interface of the information processing device that provides notifications corresponding to the current status information of the printer. Furthermore, the support program is installed on the computer of the information processing device. An editing application program incorporated in the information processing device, which operates as a separate process from the display application program, outputs a print instruction to the general-purpose printing program in the event that the printer prints an image. The current status information is obtained from the printer via the communication interface of the information processing device. By passing parameters based on the acquired status information to the display application program, the display application program is instructed to display the notification screen corresponding to the status information. Without waiting for the display application program to finish displaying the notification screen, the process of sending the print data based on the print instruction to the printer continues, and the display application program instructs the computer of the information processing device to: The notification screen corresponding to the parameters passed from the support program is displayed on the user interface. A printing system characterized by the following features.

Citation Information

Patent Citations

  • Supporting program, information processing apparatus and printing method

    JP2020160989A