WO2024181230A1 - サポートプログラム - Google Patents
サポートプログラム Download PDFInfo
- Publication number
- WO2024181230A1 WO2024181230A1 PCT/JP2024/005984 JP2024005984W WO2024181230A1 WO 2024181230 A1 WO2024181230 A1 WO 2024181230A1 JP 2024005984 W JP2024005984 W JP 2024005984W WO 2024181230 A1 WO2024181230 A1 WO 2024181230A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- program
- printer
- printing
- information
- notification
- Prior art date
Links
- 230000010365 information processing Effects 0.000 claims abstract description 16
- 238000007639 printing Methods 0.000 claims description 117
- 238000000034 method Methods 0.000 claims description 107
- 238000004891 communication Methods 0.000 abstract description 18
- 230000006870 function Effects 0.000 description 23
- 230000004044 response Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 239000003086 colorant Substances 0.000 description 5
- 230000001629 suppression Effects 0.000 description 3
- 206010000210 abortion Diseases 0.000 description 1
- 231100000176 abortion Toxicity 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
- B41J—TYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
- B41J29/00—Details of, or accessories for, typewriters or selective printing mechanisms not otherwise provided for
- B41J29/38—Drives, motors, controls or automatic cut-off devices for the entire printing mechanism
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
Definitions
- the technical field disclosed in this specification relates to a support program that supports the control of a printer.
- Patent Document 1 which is a document disclosing a technique for printing via a general-purpose print program that is standard on the OS, discloses a configuration in which an auxiliary program started from a general-purpose print program in response to a print command repeatedly acquires status information from the printer and passes the acquired status information to an editing application.
- a support program corresponding to a printer connected to the information processing device which is executable by a computer of an information processing device and is made for the purpose of solving the above-mentioned problems, wherein the information processing device is equipped with an operating system having a general-purpose printing program, and causes the computer to execute a printing process that, when a print instruction is output from an application program incorporated in the information processing device and the print instruction is given to the general-purpose printing program to cause the printer to print an image, causes the computer to execute a printing process that performs processing to cause the printer to print based on print data indicating the image to be printed by the print instruction, and when an end notification is received from the printer by executing the printing process, the general-purpose printing program outputs an end event, and further causes the computer to execute a screen information acquisition process that acquires screen information including information associated with the end of processing by the printer when the end event is output from the general-purpose printing program, and a printing end notification process that displays a notification screen based on the screen information acquired by the screen information acquisition process on
- the support program having the above configuration in conjunction with a print instruction, displays a notification screen including information associated with the end of processing on the printer on the user interface of the information processing device when an end event is output from the general-purpose print program. This allows the user to know the information they want to know when processing on the printer ends. In addition, because the support program does not need to monitor the printer after sending print data, an increase in the communication load when notifying the user of the end of processing on the printer is suppressed.
- the device and control method for implementing the functions of the above program, as well as the computer-readable storage medium that stores the program, are also novel and useful.
- the technology disclosed in this specification realizes a technology that notifies the end of printer processing while suppressing an increase in communication load in an information processing device that incorporates an OS-standard general-purpose printing program.
- FIG. 2 is a block diagram showing an outline of the electrical configuration of a PC according to the first embodiment.
- FIG. 11 is a sequence diagram illustrating an example of a printing execution procedure.
- FIG. 13 is a diagram showing an example of a completion notification screen.
- FIG. 13 is a diagram showing an example of a cancellation notification screen.
- FIG. 13 illustrates an example of an error notification screen.
- 13 is a flowchart illustrating an example of a procedure for a restriction setting process.
- FIG. 11 is a sequence diagram showing an example of a print execution procedure in a second embodiment.
- PC personal computer
- the PC 1 of this embodiment includes a controller 10 including a CPU 11 and a memory 12.
- the PC 1 is an example of an information processing device.
- the CPU 11 is an example of a computer.
- the PC 1 also includes a user interface (hereinafter referred to as "user IF") 13 and a communication interface (hereinafter referred to as "communication IF") 14, which are electrically connected to the controller 10.
- user IF user interface
- communication IF communication interface
- the controller 10 in Fig. 1 is a collective term for hardware and software used to control the PC 1, and does not necessarily represent a single piece of hardware actually present in the PC 1.
- the CPU 11 of the PC 1 executes various processes according to programs read from the memory 12 and based on user operations. Various programs and data are stored in the memory 12.
- the memory 12 is also used as a working area when various processes are executed.
- the buffer provided in the CPU 11 is also an example of memory. Note that an example of the memory 12 is not limited to the ROM, RAM, HDD, etc. built into the PC 1, but may also be a storage medium that can be read and written by the CPU 11, such as a recording medium such as a CD-ROM or DVD-ROM.
- User IF 13 includes display 13a, which is hardware that displays a screen to notify the user of information, and hardware that accepts operations by the user.
- User IF 13 may be a combination of display 13a capable of displaying information and a mouse or keyboard or the like that has an input acceptance function, or it may be a touch panel that has the functions of display 13a and an input acceptance function.
- the communication IF 14 includes hardware for communicating with external devices such as the printer 2.
- the communication standards of the communication IF 14 include Ethernet (registered trademark), Wi-Fi (registered trademark), USB, etc.
- the PC 1 may be connectable to the Internet via the communication IF 14.
- the PC 1 may be equipped with multiple communication IFs 14 that support multiple communication standards.
- the memory 12 of the PC 1 stores an operating system (hereinafter referred to as "OS") 21 including a general-purpose print program 41, various programs including an auxiliary program 42 and an editing application 43, and various data including restriction setting information 48.
- OS operating system
- the auxiliary program 42 is an example of a support program.
- the editing application 43 is an example of an application program.
- the restriction setting information 48 will be described later.
- OS21 is a multitasking OS that can process multiple tasks in parallel by managing and switching between multiple tasks.
- Examples of OS21 include Windows (registered trademark), MacOS (registered trademark), Linux (registered trademark), iOS (registered trademark), and Android (registered trademark).
- the OS 21 includes a generic print program 41.
- the generic print program 41 is a standard OS program prepared by the OS 21 vendor and provided as part of the OS 21.
- the generic print program 41 is not configured to use a printer driver specific to each printer.
- the generic printing program 41 is a program that has the functionality to cause multiple models of printers provided by multiple vendors to print based on user instructions.
- the generic printing program 41 supports generic functions that allow printing to be performed on many printers. Unlike printer drivers specific to each printer, the generic printing program 41 does not support functions specific to each printer or printer driver, particularly functions that require complex processing.
- the general-purpose printing program 41 is a program that includes a function that receives image data specified as the print target in print instructions output from various applications based on user instructions, and generates intermediate image data based on that image data.
- the intermediate image data is, for example, XPS data.
- the general-purpose printing program 41 further has a function that generates print data in a format that can be used for printing on various printers based on the intermediate image data.
- the print data is, for example, PWGRaster data or PDF data.
- the general-purpose printing program 41 also has a function that transmits the generated print data to the printer specified as the device to execute printing, via the communication function of the OS 21.
- the auxiliary program 42 is a program or group of programs that executes processing based on instructions from the OS 21 in conjunction with the processing of the general-purpose printing program 41, and is a program that supports the control of the target hardware.
- the auxiliary program 42 in this embodiment corresponds to the model of the printer 2 connected to the PC 1, and is provided, for example, by the vendor of the printer 2.
- the general-purpose printing program 41 starts the auxiliary program 42 corresponding to the printer 2 when the printer 2 is selected as the device to execute printing, when an instruction for detailed print settings is received with the printer 2 selected, when an instruction to execute printing on the printer 2 is received, etc.
- the auxiliary program 42 is, for example, called a print support app (abbreviated as PSA) or a hardware support app (abbreviated as HSA).
- auxiliary program 42 may be a combination of multiple programs that each accept execution commands, or it may be a single program that can execute different processes depending on the command.
- the auxiliary program may also be a program prepared by the printer vendor for each type of printer. For example, an auxiliary program for inkjet printers and an auxiliary program for laser printers may be prepared. There may also be auxiliary programs prepared not only for each type of printer, but also for each model of printer or each series of printer models.
- OS21 of PC1 can download an appropriate auxiliary program from a printer vendor's server or the like according to the type and model of the connected printer and install it in PC1.
- 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.
- the editing application 43 is, for example, a program for creating and editing image data and document data.
- the editing application 43 may be, for example, Microsoft's (registered trademark) Word (registered trademark) or PowerPoint (registered trademark), or may be a program provided by the vendor of the printer 2.
- the editing application 43 is capable of accepting, for example, a print execution instruction to cause the printer 2 to execute printing via the user IF 13.
- the editing application 43 is not limited to a program for creating and editing data, and may also be a program having a function for accepting display instructions and print instructions for various types of information, such as map information and web pages, in response to a user request.
- the PC 1 is connected to the printer 2 via the communication IF 14 as shown in FIG. 1.
- the printer 2 is a device having at least a printing function and a communication function. For example, when the printer 2 receives print data from the PC 1 or the like, it can execute printing based on the received print data.
- the printer 2 in this embodiment is a color printer capable of color printing, but the printer 2 may also be a printer capable of only monochrome printing.
- each process in this embodiment basically indicates processing by the CPU 11 according to commands written in a program such as the auxiliary program 42. Processing by the CPU 11 also includes control of hardware using the API of the OS 21. In this specification, detailed description of the OS 21 is omitted and the operation of each program is explained. Also, "obtain" is used as a concept that does not necessarily require a request.
- the editing application 43 is capable of displaying an editing screen (not shown) and a print setting screen (not shown).
- the editing application 43 accepts the creation of text or images based on the user's instructions via the editing screen, and displays the print setting screen when it accepts the selection of a print function on the editing screen.
- the editing application 43 accepts the specification of the printer to execute printing and the settings of various parameters on the print setting screen.
- the editing application 43 accepts an operation on the print button on the print setting screen, it determines that it has accepted an execution instruction to the general-purpose printing program 41 to cause the printer 2 to print the selected image.
- the editing application 43 passes the received print instruction information to the general-purpose printing program 41 (C02).
- the general-purpose printing program 41 obtains, as the print instruction information, image data indicating the image to be printed and information indicating the print settings from the editing application 43.
- the general-purpose printing program 41 generates intermediate image data by converting the format of the image data of the image to be printed into the format of intermediate image data based on the information obtained from the editing application 43 (C03).
- the image data contained in the editing application 43 is of various types, and the general-purpose printing program 41 converts the image data to be printed into intermediate image data suitable for generating print data. Note that if the image data to be printed is suitable for generating print data, the generation of the intermediate image data may be omitted and the intermediate image data may be used as is.
- the general-purpose printing program 41 may start an auxiliary program 42 corresponding to the designated device, printer 2, and notify the printer 2 that the print job processing has started.
- the auxiliary program 42 is started from the general-purpose printing program 41, it can pass information indicating various instructions used when generating the intermediate image data to the general-purpose printing program 41 as necessary.
- the general-purpose printing program 41 After generating the intermediate image data, the general-purpose printing program 41 starts the auxiliary program 42 (C05).
- the auxiliary program 42 can obtain the intermediate image data generated by the general-purpose printing program 41 by making a request to the general-purpose printing program 41.
- the auxiliary program 42 then edits the intermediate image data and print setting information received from the general-purpose printing program 41 based on the print settings received via the print setting screen.
- the auxiliary program 42 registers the issuance of an end event in the general-purpose printing program 41 (C11).
- the end event is an event that the general-purpose printing program 41 can output when the general-purpose printing program 41 receives an end notification from the printer 2 that is executing the printing, notifying the end of printing.
- the timing for executing the end event registration process shown in C11 may be any time after the auxiliary program 42 is started in conjunction with a print instruction (after the execution instruction is accepted in C05) and before the auxiliary program 42 performs the print process (before the print data is output in C21, which will be described later).
- the auxiliary program 42 registers the issuance of an end event with the general-purpose printing program 41 every time a print instruction is issued, but if the general-purpose printing program 41 has a function for maintaining the registration of the issuance of an end event, the auxiliary program 42 may omit the process of C11.
- the auxiliary program 42 passes the intermediate image data to the general-purpose printing program 41 and requests rasterization from the general-purpose printing program 41 (C12).
- the general-purpose printing program 41 rasterizes the intermediate image data and generates raster data, which is bitmap data (C13).
- the general-purpose printing program 41 passes the generated raster data to the auxiliary program 42 (C14). As a result, the auxiliary program 42 obtains the raster data.
- the auxiliary program 42 may perform rasterization instead of the general-purpose printing program 41.
- the auxiliary program 42 performs rasterization based on the intermediate image data received in the print execution instruction, and generates raster data. Rasterization by the auxiliary program 42 allows greater freedom than rasterization by the general-purpose printing program 41, and there is a high possibility that raster data suitable for printing on the printer 2 will be generated.
- the auxiliary program 42 requires less processing, and the program size of the auxiliary program 42 can be reduced.
- the auxiliary program 42 processes the raster data acquired in C14 as necessary, and encodes the processed raster data into PDL data to generate print data (C15). Furthermore, the auxiliary program 42 passes the generated print data to the general-purpose print program 41 and instructs it to send it to the printer 2 (C21).
- C21 is a process for causing the printer 2 to print, and is an example of a "print process.”
- the print data that the auxiliary program 42 passes to the general-purpose print program 41 at C21 in FIG. 2 may be data in a format that can be printed by the printer 2.
- the PDL data generated by the auxiliary program 42 may be data in a format that can be used for printing by printers other than the model of the printer 2.
- the general-purpose printing program 41 sends print data to the printer 2 and instructs it to print in response to instructions from the auxiliary program 42 (C22).
- the printer 2 executes printing based on the received print data (C23). This generates a printed matter based on the print instructions output from the editing application 43.
- the printer 2 that performs printing notifies the general-purpose printing program 41 of the end of the printing process (C31).
- Types of end of the printing process include, for example, printing completion, printing cancellation, and abortion due to the occurrence of an error.
- the printer 2 can send an end notification that includes type information indicating the type of end to the general-purpose printing program 41.
- the general-purpose printing program 41 When the general-purpose printing program 41 receives an end notification including type information from the printer 2, it outputs an end event on the condition that the issuance of an end event has been registered (C32). The general-purpose printing program 41 outputs the type information included in the end notification received from the printer 2 together with the end event.
- the general-purpose printing program 41 in this embodiment does not have a function for notifying the PC 1 of the end of printing. Therefore, even if the general-purpose printing program 41 receives an end notification from the printer 2, it does not notify the end of the printing process, but outputs the end event and type information.
- the auxiliary program 42 acquires the end event and type information output from the general-purpose print program 41 (C35).
- C35 is an example of an "end type acquisition process.”
- the auxiliary program 42 can acquire the type information without communicating with the printer 2.
- the general-purpose printing program 41 may output an end event of a type that corresponds to the end code.
- the auxiliary program 42 may obtain type information by analyzing the type of end event.
- the auxiliary program 42 may obtain the type information included in the end notification from the general-purpose printing program 41. In this case, too, the auxiliary program 42 can obtain the type information from the general-purpose printing program 41 without communicating with the printer 2.
- the auxiliary program 42 may obtain the type information from the printer 2.
- the auxiliary program 42 may obtain the type information from the printer 2 via the general-purpose printing program 41.
- the general-purpose printing program 41 communicates with the printer 2 via the OS 21, for example, by communication according to IPP (short for internet printing protocol).
- the auxiliary program 42 may obtain the type information directly from the printer 2, for example, by using MIB (short for Management Information Base).
- the auxiliary program 42 acquires screen information corresponding to the type information acquired in C35 (C36).
- the process of C36 is an example of a "screen information acquisition process.”
- the screen information is information for displaying a notification screen indicating that the process on the printer has ended.
- the screen information includes information associated with the end of the printing process on the printer 2.
- the information associated with the end of the printing process on the printer is, for example, information indicating the end of the printing process, printer name information, file name information, job information, and status information.
- Information indicating the end of the printing process includes information for notifying the result of the printing process, such as printing completed, printing canceled, or printing stopped due to an error. For example, if information indicating the end of the printing process is stored in a non-volatile storage area for the auxiliary program 42 in the memory 12, the auxiliary program 42 extracts information corresponding to the type information acquired in C35 from the memory 12. Note that the information indicating the end of the printing process may be stored in the printer 2, or in an external device such as a server.
- the printer name information is information that identifies the printer that has completed the printing process.
- the printer name may be included in the completion notification from the printer 2, or may be stored in advance by the auxiliary program 42.
- the file name information is information that indicates the name of the file that is instructed to be printed.
- the job information is information about the job that corresponds to the print instruction. Job information is, for example, the number of sheets printed, power consumption, and the amount of consumables consumed. For example, the power consumption and the amount of consumables consumed are determined according to the number of sheets printed, based on the power consumption and consumption per sheet of paper.
- the status information is information based on the state of the printer when the printing process has finished. Examples of the status information include the status, the remaining amount of consumables, and the state of the output tray.
- the consumables are, for example, colorants such as ink and toner, and paper.
- the auxiliary program 42 obtains the type of error as the status. Examples of the error types are door open, no colorant, very little colorant, little colorant, no paper, paper jam, no free space in the output tray, and little free space in the output tray. For example, if the printer is a color printer, the error of insufficient colorant may be determined for each color.
- the auxiliary program 42 may obtain information relating to the end of the print process, such as the file name, job information, and status information, directly from the printer 2. Also, if information relating to the end of the print process, such as the file name, job information, and status information, is included in the end notification, the auxiliary program 42 may obtain it from the general-purpose print program 41. If information relating to the end of the print process, such as the file name, job information, and status information, is stored in a distributed manner in the printer 2, the general-purpose print program 41, the memory 12, etc., the auxiliary program 42 may obtain each piece of information from each storage location in the process of C36.
- the auxiliary program 42 notifies the user that the processing on the printer 2 has ended by displaying a notification screen on the display 13a of the PC 1 that corresponds to the type information obtained in C35 based on the screen information obtained in C36 (C37).
- the processing of C37 is an example of a "printing end notification processing".
- the auxiliary program 42 displays a notification screen on the PC 1 that notifies the user that the processing has ended, so that the user can know that the printing on the printer 2 has ended even if he or she is not near the printer 2.
- the auxiliary program 42 stores in advance the layout of a notification screen that notifies the user that printing has finished.
- the auxiliary program 42 acquires information related to the type of printing completion acquired in C35 (C36), and embeds the acquired information in the layout, thereby making it possible to display, for example, notification screens 100, 200, and 300 shown in Figures 3 to 5 on the display 13a of the PC 1.
- the notification screens 100, 200, and 300 each include a print result display area 120, a file name display area 130, a printer name display area 140, a job information display area 150, a status information display area 160, a consumables purchasing site display button 170, check boxes 180, and a close button 190.
- the auxiliary program 42 acquires type information indicating printing completion in C35, it acquires screen information including information associated with printing completion (C36) and displays the completion notification screen 100 shown in FIG. 3 on the display 13a (C37).
- the screen information including information associated with printing completion is an example of "first screen information.”
- the completion notification screen 100 is an example of an "notification screen” and a "first notification screen.”
- the auxiliary program 42 obtains a print completion mark 121 and a message 122 indicating the print result, "Printing has been completed," as information indicating the end of the print process, and embeds these in the print result display area 120.
- the auxiliary program 42 also acquires the file name "aaa”, the printer name "XXX1", job information including power consumption, ink consumption, and number of pages printed, and status information including remaining ink, remaining paper, and number of pages that can be printed, and embeds this information in the file name display area 130, the printer name display area 140, the job information display area 150, and the status information display area 160.
- the auxiliary program 42 displays the embedded information on the completion notification screen 100, together with a consumables purchasing site display button 170, check boxes 180, and a close button 190.
- the user can see the print completion mark 121 and message 122 displayed on the user IF 13 of the PC 1 and know that the printing he or she instructed has been completed.
- the user can see the file name and printer name displayed on the PC 1 and know which document or image was printed on which printer.
- the user can also check the amount of electricity and ink consumed in their printing by looking at the job information, and can confirm that all of the images they specified have been printed.
- the user can also check the current remaining amount of consumables from an image 161 showing the remaining amount of ink and an image 162 showing the remaining amount of paper, which are displayed in the status information display area 160.
- a Low mark 164 is attached to consumables that are running low on remaining amounts. This allows the user to know which consumables are close to the time to be purchased.
- the auxiliary program 42 can, in the process of C36, obtain the number of printable sheets 165 for the user after printing is completed from the printer 2 as a piece of status information and display it in the status information display area 160.
- the user can check the number of printable sheets 165 displayed on the completion notification screen 100 and take steps to increase the number of printable sheets as necessary.
- the auxiliary program 42 acquires type information indicating printing cancellation in C35.
- the auxiliary program 42 acquires screen information including information associated with printing cancellation (C36), and displays the cancellation notification screen 200 on the display 13a (C37).
- the screen information including information associated with printing cancellation is an example of "second screen information.”
- the cancellation notification screen 200 is an example of a "notification screen” and a "second notification screen.”
- the auxiliary program 42 acquires a print abort mark 221 and a message 222 indicating the print result "Printing has been canceled" as information indicating the end of the print process, and embeds them in the print result display area 120.
- the auxiliary program 42 also embeds various information in the file name display area 130, printer name display area 140, job information display area 150, and status information display area 160, similar to when displaying the completion notification screen 100.
- the auxiliary program 42 displays the embedded information on the cancellation notification screen 200, together with a consumables purchase site display button 170, check boxes 180, and close button 190.
- the user can see the print cancel mark 221 and message 222 displayed on the user IF 13 of the PC 1 and know that the printing he or she instructed has been canceled.
- the user can see the file name and printer name displayed on the PC 1 and know which document or image printing was canceled on which printer.
- the number of pages to be printed in the job information display area 150 shows the number of pages to be printed before printing is canceled. This allows the user to know how much of the printing they have instructed has been completed, and the next time they print a document or image of the same file, they can specify the pages that have not yet been printed and print them.
- the auxiliary program 42 acquires type information indicating that the printing was stopped due to an error in C35.
- the auxiliary program 42 acquires screen information including information associated with the insufficient ink error (C36), and displays the error notification screen 300 on the display 13a (C37).
- the error notification screen 300 is an example of a "notification screen.”
- the auxiliary program 42 acquires a print stop mark 221 and a message 322 indicating the cause of the error, "change ink", as information indicating the end of the print process, and embeds them in the print result display area 120.
- the auxiliary program 42 also embeds various information in the file name display area 130, printer name display area 140, job information display area 150, and status information display area 160, just as when displaying the completion notification screen 100.
- the auxiliary program 42 displays the embedded information on the cancellation notification screen 200, together with a consumables purchase site display button 170, check boxes 180, and close button 190.
- the auxiliary program 42 also displays a shortage mark 366 indicating a shortage of ink in the color of the missing ink in the status information display area 160.
- the user can see the print abort mark 221 and message 322 displayed on the user IF 13 of the PC 1 and understand that the printing he or she instructed has been aborted due to an error due to insufficient ink.
- the user can see the file name and printer name displayed on the PC 1 to understand which printer aborted the printing of which document or image due to insufficient ink, and which printer requires replacement of the ink cartridge.
- the user can also see which color ink cartridge needs to be replaced based on the display of the shortage mark 366.
- a user who wishes to purchase an ink cartridge of a color that is running low operates the consumables purchase site display button 170 using the user IF 13.
- the auxiliary program 42 passes, for example, a URL associated with the consumables purchase site display button 170 to another program such as a browser built into the PC 1.
- the browser receives a purchase screen specified by the URL from the server and displays it on the display 13a of the PC 1. This allows the user to carry out the procedure for purchasing the ink cartridge.
- the auxiliary program 42 ends the display of the notification screen when the close button 190 of the displayed notification screen is operated using the user IF 13. Note that in this embodiment, the auxiliary program 42 controls the display of the notification screen, but the OS 21 may also control the display of the notification screen in response to a request from the auxiliary program 42.
- the restriction setting information 48 is information stored in a non-volatile area of the memory 12, and stores a flag indicating whether or not to display the notification screen.
- the flag of the restriction setting information 48 is set to ON when the auxiliary program 42 receives a setting to restrict the display of the notification screen, and is set to OFF when the auxiliary program 42 does not receive a setting to restrict the display of the notification screen.
- the notification screen displayed by the auxiliary program 42 is provided with a check box 180 for receiving a setting to restrict the display of the notification screen.
- the auxiliary program 42 can rewrite the restriction setting information 48 depending on whether the check box 180 is checked.
- the CPU 11 determines whether or not the restriction setting has been accepted (S31). For example, if the display of the completion notification screen 100 is ended with the check box 180 of the completion notification screen 100 not checked, the CPU 11 determines that the restriction setting has not been accepted (S31: NO). In this case, the CPU 11 does not restrict the display of the notification screen by setting the flag of the restriction setting information 48 to the OFF state (S33), and ends the restriction setting process. This allows the auxiliary program 42 to execute the screen display process of C37 at the time of the next printing, and to display the notification screen in the same manner as above.
- the CPU 11 determines that the restriction setting has been accepted (S31: YES). In this case, the CPU 11 restricts the display of the notification screen by setting the flag of the restriction setting information 48 to the ON state (S32), and ends the restriction setting process. As a result, the auxiliary program 42 does not execute the screen display process of S37 at the time of the next printing, and does not display the notification screen on the user IF 13.
- the process in which the CPU 11 accepts the restriction setting via the check box 180 is an example of a "restriction acceptance process".
- the setting of the restriction setting information 48 may be changed, for example, by providing an item for setting the restriction setting information 48 in the option setting screen of the auxiliary program 42. For example, if the user does not want to know the print results every time they print, they check the check box 180 and close the notification screen. This restriction setting will continue unless the user cancels the restriction setting in the option setting screen. This avoids the hassle of having to display the notification screen every time they print.
- the auxiliary program 42 of the first embodiment displays the notification screens 100, 200, 300 including information associated with the end of processing on the printer 2 when an end event is output from the general-purpose printing program 41 in conjunction with a print instruction. This allows the user to know the information they want to know when processing on the printer 2 ends. In addition, because the auxiliary program 42 does not need to monitor the printer 2 after sending print data, an increase in the communication load when notifying the user of the end of processing on the printer 2 is suppressed.
- the auxiliary program 42 of the second embodiment has a function of notifying the end of processing in the printer 2 when an error event is output from the general-purpose printing program 41. This is different from the first embodiment in which the auxiliary program 42 notifies the end of printing when an end event is output from the general-purpose printing program 41, but the other points are the same as in the first embodiment. Below, the points that differ from the first embodiment will be mainly described, and the same reference numerals as in the first embodiment will be used for the configurations and processes that are common to the first embodiment, and the description will be omitted as appropriate.
- Some general-purpose printing programs 41 do not have the functionality to issue an end event based on an end notification, but have the functionality to issue an error event based on an error notification.
- This embodiment assumes such a case, and is configured to use an error event based on an error notification from the general-purpose printing program 41 as an end event, disguising the end of processing in the printer 2 as a type of error that can be notified from the printer 2 to the auxiliary program 42.
- the auxiliary program 42 of this embodiment registers the issuance of an error event in the general-purpose printing program 41 (C101).
- the error event in this embodiment is an event that the general-purpose printing program 41 can output when the general-purpose printing program 41 receives an error notification from the printer 2 that is executing the printing.
- the auxiliary program 42 becomes able to receive the error event output from the general-purpose printing program 41.
- the error event registration process shown in C11 can be executed at any time after the auxiliary program 42 is started in conjunction with a print instruction (after the execution instruction is accepted in C05) and before the auxiliary program 42 performs the print process (before the print data is output in C21, described below), just like the end event in the first embodiment.
- the auxiliary program 42 registers the issuance of an error event with the general-purpose printing program 41 every time a print instruction is issued, but if the general-purpose printing program 41 has a function for maintaining the registration of the issuance of an error event, the auxiliary program 42 may omit the process of C101.
- the printer 2 When the printer 2 finishes processing based on the print data, it responds by sending an error notification to the general-purpose printing program 41 that output the print instruction (C102).
- the error notification contains end information indicating the end of processing in the printer. End information is, for example, printing completed, printing canceled, or aborted due to the occurrence of an error. This end information does not need to be interpretable by the general-purpose printing program 41, and its interpretation in the general-purpose printing program 41 may be a type of error that actually exists.
- the general-purpose printing program 41 When the general-purpose printing program 41 receives an error notification including the termination information from the printer 2 (C102), it outputs an error event on the condition that the issuance of an error event has been registered (C103). For example, the general-purpose printing program 41 outputs an error event to which the termination information included in the error notification has been added.
- auxiliary program 42 When the auxiliary program 42 receives an error event output from the general-purpose printing program 41 in C103, it passes a suppression notification to the general-purpose printing program 41, indicating that no error notification is required, and sets the general-purpose printing program 41 to no longer require error notification (C111).
- C111 The processing of C111 is an example of a "setting process.”
- the general-purpose printing program 41 when the general-purpose printing program 41 receives an error notification from the printer 2 during normal operation, the general-purpose printing program 41 itself has the function of displaying an error notification screen on the user IF 13 to notify the user of the error.
- the printer 2 outputs an error notification.
- this is a configuration in which an error is disguised. Therefore, if the general-purpose printing program 41 is configured to notify an error in response to an error notification, an error based on the interpretation of the general-purpose printing program 41 will be notified even if printing has terminated normally. Therefore, when an error event is output from the general-purpose printing program 41, the auxiliary program 42 outputs a suppression notification, eliminating the need for the general-purpose printing program 41 to notify an error, and thus avoiding such a problem.
- the auxiliary program 42 acquires the termination information added to the error event output from the general-purpose print program 41 (C121).
- C121 is an example of a "termination information acquisition process.”
- the auxiliary program 42 can acquire the termination information without communicating with the printer 2.
- the general-purpose printing program 41 may output an error event of a type that corresponds to the error code.
- the auxiliary program 42 may obtain the termination information by analyzing the type of error event.
- the auxiliary program 42 acquires screen information based on the termination information acquired in C121 (C36), and displays a notification screen based on the acquired screen information on the display 13a of the PC1 (C37).
- the auxiliary program 42 of the second embodiment can obtain the end information contained in the error notification in response to the error event output from the general-purpose printing program 41 and determine the end of processing, since the error notification sent from the printer 2 contains end information.
- the auxiliary program 42 can then obtain screen information in response to the determination result and display a notification screen on the display 13a of the PC 1.
- the auxiliary program 42 can, for example, display a notification screen in response to the end of processing on the printer 2 on the display 13a of the PC 1 while suppressing the communication load with the printer 2, etc., to allow the user to recognize the end of processing on the printer 2.
- the device connected to PC1 is not limited to a printer, but may be any device with a printing function, such as a multifunction device, copier, or fax machine.
- the number of printers connected to PC1 is not limited to the example shown in the figure, and may be two or more.
- the auxiliary program 42 may set the general-purpose printing program to notify the user that printing is complete, thereby avoiding the general-purpose printing program from notifying the user that printing is complete. This makes it possible to avoid the auxiliary program 42 and the general-purpose printing program 41 notifying the user that printing is complete in duplicate.
- a notification screen was displayed in the event of a shortage of ink as an example of an interruption due to an error, but an error notification screen may also be displayed if a consumable other than ink, such as paper, runs out, or if an error other than a shortage of consumables occurs, such as the door being open.
- the screens displayed on the user IF 13 are all merely examples and are not limited to the examples shown in the drawings.
- the power consumption and ink consumption may not be displayed in the job information display area 150 of each of the notification screens 100, 200, and 300.
- each of the notification screens 100, 200, and 300 may not display the consumables purchase site display button 170.
- the completion notification screen 100, the cancellation notification screen 200, and the error notification screen 300 may have different layouts.
- the cancellation notification screen 200 may not display the status information display area 160 or the consumables purchase site display button 170.
- the notification screen may display a link showing the URL of the consumables purchase site, or text containing the URL.
- the auxiliary program 42 may be configured to display a completion notification screen when printing is completed, and not display a cancellation notification screen or an error notification screen when printing is canceled or an error occurs.
- the auxiliary program 42 may register the issuance of a completion event in the general-purpose printing program 41 at C11 in FIG. 2, and the general-purpose printing program 41 may output a completion event when it receives a completion notification indicating that printing is completed from the printer 2.
- the auxiliary program 42 may obtain screen information including information associated with printing completion or information indicating printing completion, and display the completion notification screen 100.
- the end of the printer's processing includes printing completion and printing cancellation, and by displaying separate notification screens 100, 200 on the display 13a of the PC 1, the user can appropriately recognize whether the processing of the printer 2 is information that the user wants to know when printing is completed or when printing is canceled. Furthermore, by notifying the user of information suitable for printing completion when printing is completed, and by notifying the user of information suitable for printing cancellation when printing is canceled, the user can be provided with the necessary information in an easy-to-understand manner.
- the screen information acquired by C36 may not include printer name information, and the printer name may not be displayed on the notification screen.
- the user can recognize which printer has completed processing.
- the screen information acquired by C36 may not include information about the file name of the file that stores the image to be printed, and the file name may not be displayed on the notification screen.
- the user can recognize which file has been processed.
- the screen information acquired by C36 may not include job information corresponding to the print instruction, and the job information may not be displayed on the notification screen.
- the user can recognize information related to the job based on printing.
- the screen information acquired by C36 may not include status information based on the printer's status, and the status information may not be displayed on the notification screen.
- the status information may not be displayed on the notification screen.
- the user can recognize information related to the status of the printer itself.
- the check box 180 for accepting a setting to limit the display of the notification screen may not be displayed on each of the notification screens 100, 200, and 300 in Figures 3 to 5, and processing C62 in Figure 2 or Figure 7 may be omitted.
- the auxiliary program 42 may be configured not to set the general-purpose printing program to not require error notification.
- displaying a notification screen every time printing is performed may be annoying to the user, this can be avoided by accepting a restriction instruction to limit the display of the notification screen and limiting the display of the notification screen.
- the setting to limit the display of the notification screen may be received on a screen separate from the notification screen.
- the setting may be received at a timing different from the timing at which the notification screen is displayed.
- the effort required for the user to open a separate screen to make the setting is reduced.
- the process of C111 in FIG. 7 may be omitted, and the auxiliary program 42 and the general-purpose printing program 41 may notify the end of printing. However, if it is normal for the general-purpose printing program 41 to notify of an error, the auxiliary program 42 may pass a suppression notification to the general-purpose printing program 41 and set no error notification to avoid error notification in the general-purpose printing program 41, thereby preventing the general-purpose printing program 41 and the auxiliary program 42 from notifying the error twice.
- auxiliary program 42 only the printing operation is described in detail as the operation of the auxiliary program 42, but the auxiliary program 42 may have other roles as well.
- the program that executes the processing of this embodiment is not limited to the auxiliary program 42, but may 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.
- it may be a print workflow application (Print workflow) whose specifications have been published by Microsoft.
- the processes disclosed in the embodiments may be executed by a single CPU, multiple CPUs, hardware such as an ASIC, or a combination of these.
- the processes disclosed in the embodiments may be realized in various ways, such as a recording medium on which a program for executing the processes is recorded, or a method.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Facsimiles In General (AREA)
Abstract
OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、通信負荷の増大を抑えつつ、プリンタでの処理の終了を報知する技術を提供すること。 OS標準の汎用印刷プログラム41は、プリンタ2から終了通知を受信すると、終了イベントを出力する。補助プログラム42は、印刷指示に連動して、汎用印刷プログラム41から終了イベントが出力された場合に、プリンタ2での処理の終了に関連付けられた情報を含む報知画面をPC1のユーザIF13に表示させる。
Description
本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラムに関する。
近年、プリンタベンダから提供されるプリンタドライバを利用せず、オペレーティングシステム(OS)の一部を構成するOS標準の汎用印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタを検知するとOS標準の汎用印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタベンダから提供されるプリンタドライバを用いずに、OS標準の汎用印刷プログラムが印刷データを生成することで、OS標準の汎用印刷プログラムによる印刷が可能になる。
OS標準の汎用印刷プログラムを介して印刷を行う技術を開示した文献として、例えば特許文献1には、印刷指示によって汎用印刷プログラムから起動された補助プログラムが、プリンタからステータス情報の取得を繰り返し、取得されたステータス情報が編集アプリに渡される構成が開示されている。
情報処理装置からプリンタに印刷データを送信した後、ユーザはプリンタの近くにいなければその印刷データに基づくプリンタでの処理が終了するタイミングがわからない。そのため、そのプリンタでの処理が終了した場合、プリンタでの処理の終了を情報処理装置にて報知することが望まれるが、前述した汎用印刷プログラムは、プリンタでの処理の終了を報知する機能を有していない。特許文献1に開示されているように、印刷指示の後、補助プログラム(サポートプログラム)がプリンタからステータス情報の取得することで、プリンタでの処理の終了を報知することも可能であるが、ステータス情報の取得を繰り返していることから、補助プログラムによる通信負荷が高い。
上述した課題の解決を目的としてなされた情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記情報処理装置には、汎用印刷プログラムを有するオペレーティングシステムが搭載されており、前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、前記印刷指示による印刷対象の前記画像を示す印刷データに基づく印刷を前記プリンタに行わせるための処理を行う印刷処理を実行させ、前記汎用印刷プログラムは、前記印刷処理の実行によって前記プリンタから終了通知を受信した場合に、終了イベントを出力し、さらに前記コンピュータに、前記汎用印刷プログラムから前記終了イベントが出力された場合に、前記プリンタでの処理の終了に関連付けられた情報を含む画面情報を取得する画面情報取得処理と、前記画面情報取得処理にて取得された前記画面情報に基づく報知画面を、前記情報処理装置のユーザインタフェースに表示させる印刷終了時報知処理と、を実行させる。
上記構成を有するサポートプログラムは、印刷指示に連動して、終了イベントが汎用印刷プログラムから出力された場合に、プリンタでの処理の終了に関連付けられた情報を含む報知画面を情報処理装置のユーザインタフェースに表示させる。これにより、ユーザは、プリンタでの処理の終了時に知りたい情報を認識できる。また、サポートプログラムは、印刷データの送信後にプリンタを監視する必要が無いため、プリンタでの処理の終了を報知するにあたって通信負荷の増大が抑えられる。
上記プログラムの機能を実現するための装置、制御方法、および当該プログラムを格納するコンピュータにて読取可能な記憶媒体も、新規で有用である。
本明細書に開示される技術によれば、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、通信負荷の増大を抑えつつ、プリンタでの処理の終了を報知する技術が実現される。
以下、本形態のサポートプログラムを利用するパーソナルコンピュータ(以下、「PC」とする)について、添付図面を参照しつつ詳細に説明する。本明細書は、PCにて実行されるサポートプログラムを開示する。
(第1実施形態)
本形態のPC1は、図1に示すように、CPU11と、メモリ12と、を含むコントローラ10を備えている。PC1は、情報処理装置の一例である。CPU11は、コンピュータの一例である。また、PC1は、ユーザインタフェース(以下、「ユーザIF」とする)13と、通信インタフェース(以下、「通信IF」とする)14と、を備え、これらがコントローラ10に電気的に接続されている。なお、図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。
本形態のPC1は、図1に示すように、CPU11と、メモリ12と、を含むコントローラ10を備えている。PC1は、情報処理装置の一例である。CPU11は、コンピュータの一例である。また、PC1は、ユーザインタフェース(以下、「ユーザIF」とする)13と、通信インタフェース(以下、「通信IF」とする)14と、を備え、これらがコントローラ10に電気的に接続されている。なお、図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。
PC1のCPU11は、メモリ12から読み出したプログラムに従って、また、ユーザの操作に基づいて、各種の処理を実行する。メモリ12には、各種のプログラムや各種のデータが記憶されている。メモリ12は、各種の処理が実行される際の作業領域としても利用される。CPU11が備えるバッファも、メモリの一例である。なお、メモリ12の一例は、PC1に内蔵されるROM、RAM、HDD等に限らず、CPU11が読み取り可能かつ書き込み可能なストレージ媒体、例えば、CD-ROM、DVD-ROM等の記録媒体であっても良い。
ユーザIF13は、ユーザに情報を報知するための画面を表示するハードウェアであるディスプレイ13aと、ユーザによる操作を受け付けるハードウェアと、を含む。なお、ユーザIF13は、情報を表示可能なディスプレイ13aと、入力受付機能を有するマウスやキーボード等と、の組であっても良いし、ディスプレイ13aの機能と入力受付機能とを備えるタッチパネルであっても良い。
通信IF14は、プリンタ2等の外部装置と通信を行うためのハードウェアを含む。通信IF14の通信規格は、イーサネット(登録商標)、Wi-Fi(登録商標)、USBなどである。PC1は、通信IF14を介して、インターネットに接続可能であっても良い。PC1は、複数の通信規格に対応する複数の通信IF14を備えていてもよい。
PC1のメモリ12には、図1に示すように、汎用印刷プログラム41を含むオペレーティングシステム(以下、「OS」とする)21と、補助プログラム42と、編集アプリ43と、を含む、各種のプログラムや、制限設定情報48を含む、各種のデータが記憶されている。補助プログラム42は、サポートプログラムの一例である。編集アプリ43は、アプリケーションプログラムの一例である。制限設定情報48については、後述する。
OS21は複数のタスクを管理して切り換えることにより複数のタスクを並行して処理できるマルチタスクOSである。OS21は、例えば、Windows(登録商標)、macOS(登録商標)、Linux(登録商標)、iOS(登録商標)、Android(登録商標)である。
OS21には、汎用印刷プログラム41が含まれている。汎用印刷プログラム41は、OS21のベンダによって用意され、OS21の一部として提供されるOS標準のプログラムである。汎用印刷プログラム41は、各プリンタに固有のプリンタドライバを利用するようには構成されていない。
汎用印刷プログラム41は、ユーザの指示に基づいて、複数のベンダによってそれぞれ提供される複数種類のモデルのプリンタに印刷を実行させるための機能を有するプログラムである。汎用印刷プログラム41は、多くのプリンタにて印刷を実行可能な汎用的な機能をサポートしている。汎用印刷プログラム41は、各プリンタに固有のプリンタドライバとは異なり、各プリンタやプリンタドライバが固有に備える機能、特に複雑な処理を要する機能をサポートしていない。
汎用印刷プログラム41は、ユーザの指示に基づいて、各種のアプリから出力された印刷指示にて印刷対象として指定された画像データを受け取り、その画像データに基づく中間画像データを生成する機能を含むプログラムである。中間画像データは、例えば、XPSデータである。汎用印刷プログラム41は、さらに、中間画像データに基づいて、各種のプリンタにて印刷に利用できる形式の印刷データを生成する機能を有している。印刷データは、例えば、PWGRasterデータ、または、PDFデータである。また、汎用印刷プログラム41は、生成した印刷データを、OS21による通信機能を介して、印刷を実行させる装置として指定されたプリンタに送信する機能を有している。
補助プログラム42は、汎用印刷プログラム41の処理に付随してOS21からの指示に基づいて処理を実行するプログラムまたはプログラム群であり、対象のハードウェアの制御をサポートするプログラムである。本形態の補助プログラム42は、PC1に接続されているプリンタ2のモデルに対応するものであり、例えば、プリンタ2のベンダによって提供される。汎用印刷プログラム41は、印刷を実行させる装置としてプリンタ2が選択された場合、プリンタ2が選択されている状態で詳細な印刷設定の指示を受け付けた場合、プリンタ2に印刷を実行させる指示を受け付けた場合、等に、プリンタ2に対応する補助プログラム42を起動する。補助プログラム42は、例えば、印刷サポートアプリ(略称、PSA)、またはハードウェアサポートアプリ(略称、HSA)と呼ばれるものである。
なお、補助プログラム42は、それぞれが実行命令を受け付ける複数のプログラムの組み合わせであっても良いし、1つのプログラムであって命令に応じてそれぞれ異なる処理を実行できるプログラムであっても良い。また、補助プログラムは、プリンタのベンダによってプリンタのタイプごとに用意されるプログラムであっても良い。例えば、インクジェットプリンタ用の補助プログラムやレーザプリンタ用の補助プログラムが、それぞれ用意されても良い。プリンタのタイプごとに限らず、プリンタのモデルごとやプリンタのモデルのシリーズごとに用意される補助プログラムが有っても良い。
PC1のOS21は、例えば、新たなプリンタがPC1に接続された場合、接続されたプリンタのタイプやモデルに応じて、適切な補助プログラムをプリンタのベンダのサーバ等からダウンロードしてPC1に組み込むことができる。OS21は、組み込んだ補助プログラムの識別情報を新たに接続されたプリンタのプリンタ情報に対応付けて、メモリ12に記憶させる。
編集アプリ43は、例えば、画像データや文書データの作成や編集を行うためのプログラムである。編集アプリ43は、例えば、マイクロソフト(登録商標)製のワード(登録商標)やパワーポイント(登録商標)などであっても良いし、プリンタ2のベンダから提供されるプログラムであっても良い。編集アプリ43は、ユーザIF13を介して、例えば、プリンタ2に印刷を実行させる印刷実行指示を受け付け可能である。なお、編集アプリ43は、データの作成や編集を行うためのプログラムに限らず、ユーザの要求に応じて、地図情報やウェブページ等の各種の情報の表示指示や印刷指示を受け付ける機能を有するプログラムであっても良い。
本形態のPC1は、通信IF14を介して、図1に示すように、プリンタ2に接続されている。プリンタ2は、少なくとも印刷機能と通信機能とを有する装置である。プリンタ2は、例えば、PC1等から印刷データを受信した場合、受信した印刷データに基づく印刷を実行可能である。本形態のプリンタ2は、カラー印刷可能なカラープリンタであるが、プリンタ2は、単色印刷のみを実行可能なプリンタであっても良い。
次に、プリンタ2に印刷を行わせる印刷実行手順について、図2のシーケンス図を参照して説明する。ここでは、PC1が、カラー印刷可能なプリンタ2を選択して印刷する場合を例にして、印刷実行手順を説明する。
なお、本形態における各処理は、基本的に、補助プログラム42などのプログラムに記述された命令に従ったCPU11の処理を示す。CPU11による処理は、OS21のAPIを用いたハードウェアの制御も含む。本明細書では、OS21の詳細な記載を省略して各プログラムの動作を説明する。また、「取得」は要求を必須とはしない概念で用いる。
ユーザは、印刷対象の画像とプリンタ2での印刷設定とを決定した後、編集アプリ43にて印刷実行の指示を入力する(C01)。編集アプリ43は、図示しない編集画面と図示しない印刷設定画面とを表示可能である。編集アプリ43は、例えば、ユーザの指示に基づいて文章や画像の作成を編集画面を介して受け付け、編集画面にて印刷機能の選択を受け付けると、印刷設定画面を表示する。編集アプリ43は、印刷設定画面にて印刷を実行するプリンタの指定や、各種パラメータの設定を受け付ける。編集アプリ43は、印刷設定画面の印刷ボタンへの操作を受け付けた場合、汎用印刷プログラム41に対して、選択中の画像の印刷をプリンタ2に行わせる実行指示を、受け付けたと判断する。
編集アプリ43は、受け付けた印刷指示の情報を汎用印刷プログラム41に渡す(C02)。汎用印刷プログラム41は、印刷指示の情報として、印刷対象の画像を示す画像データと印刷設定を示す情報と、を編集アプリ43から取得する。
汎用印刷プログラム41は、編集アプリ43から取得した情報に基づいて、印刷対象の画像の画像データの形式を中間画像データの形式に変換することで、中間画像データを生成する(C03)。編集アプリ43に含まれる画像データは種々のタイプのものであり、汎用印刷プログラム41は、印刷対象の画像データを、印刷データの生成に適した中間画像データに変換する。なお、印刷対象の画像データが印刷データの生成に適したデータであれば、中間画像データの生成を省略し、そのまま中間画像データとしても良い。
なお、汎用印刷プログラム41は、中間画像データの生成前に、指定されたデバイスであるプリンタ2に対応する補助プログラム42を起動して、印刷ジョブの処理を開始したことを通知しても良い。補助プログラム42は、汎用印刷プログラム41から起動された場合、中間画像データを生成する際に利用される各種の指示を示す情報を、必要に応じて、汎用印刷プログラム41に渡すことができる。
汎用印刷プログラム41は、中間画像データを生成した後、補助プログラム42を起動する(C05)。補助プログラム42は、汎用印刷プログラム41に要求することで、汎用印刷プログラム41によって生成された中間画像データを取得できる。そして、補助プログラム42は、印刷設定画面を介して受け付けた印刷設定に基づいて、汎用印刷プログラム41から受け取った中間画像データや印刷設定の情報を編集する。
補助プログラム42は、汎用印刷プログラム41に終了イベントの発行を登録する(C11)。本形態の終了イベントは、印刷を実行するプリンタ2から印刷の終了を知らせる終了通知を汎用印刷プログラム41が受信した場合に、汎用印刷プログラム41が出力可能なイベントである。補助プログラム42は、汎用印刷プログラム41に対して終了イベントの発行を登録することにより、汎用印刷プログラム41から出力される終了イベントを受け取ることが可能になる。
なお、C11に示す終了イベント登録処理を実行するタイミングは、印刷指示に連動して補助プログラム42が起動された後(C05にて実行指示を受け付けた後)、補助プログラム42が印刷処理を行う前(後述するC21にて印刷データを出力する前)であれば、いつでもよい。本形態では、印刷指示がある度に、補助プログラム42が終了イベントの発行を汎用印刷プログラム41に登録しているが、汎用印刷プログラム41が終了イベントの発行の登録を維持する機能を有する場合には、補助プログラム42は、C11の処理を省略してもよい。
補助プログラム42は、中間画像データを汎用印刷プログラム41に渡し、汎用印刷プログラム41にラスタライズを要求する(C12)。汎用印刷プログラム41は、中間画像データをラスタライズし、ビットマップデータであるラスタデータを生成する(C13)。さらに、汎用印刷プログラム41は、生成したラスタデータを補助プログラム42に渡す(C14)。これにより、補助プログラム42は、ラスタデータを取得する。
なお、汎用印刷プログラム41に代えて補助プログラム42がラスタライズを行っても良い。その場合、補助プログラム42は、印刷の実行指示にて受け取った中間画像データに基づいてラスタライズを実行し、ラスタデータを生成する。補助プログラム42にてラスタライズすれば、汎用印刷プログラム41にてラスタライズする場合に比較して自由度が大きく、プリンタ2での印刷に適したラスタデータが生成される可能性が高い。一方、汎用印刷プログラム41によってラスタライズするとすれば、補助プログラム42の処理が少なく、補助プログラム42のプログラムサイズを小さくできる。
そして、補助プログラム42は、C14にて取得したラスタデータを必要に応じて加工し、加工済みのラスタデータをPDLデータにエンコードして、印刷データを生成する(C15)。さらに、補助プログラム42は、生成した印刷データを汎用印刷プログラム41に渡し、プリンタ2への送信を指示する(C21)。C21は、プリンタ2に印刷させるための処理であり、「印刷処理」の一例である。
図2のC21にて補助プログラム42が汎用印刷プログラム41に渡す印刷データは、プリンタ2にて印刷可能な形式のデータであればよい。なお、補助プログラム42によって生成されるPDLデータは、プリンタ2のモデル以外のプリンタでの印刷にも使用できる形式のデータであっても良い。
汎用印刷プログラム41は、補助プログラム42の指示に応じて、印刷データをプリンタ2に送信し、印刷を指示する(C22)。プリンタ2は、受信した印刷データに基づいて、印刷を実行する(C23)。これにより、編集アプリ43から出力された印刷指示に基づく印刷物が生成される。
印刷を実行するプリンタ2は、その印刷の処理の終了を汎用印刷プログラム41に通知する(C31)。印刷の処理の終了の種類には、例えば、印刷完了と、印刷キャンセルと、エラーの発生による中止と、がある。プリンタ2は、終了の種類を示す種類情報を含む終了通知を、汎用印刷プログラム41に対して送信することができる。
汎用印刷プログラム41は、種類情報を含む終了通知をプリンタ2から受信すると、終了イベントの発行が登録されていることを条件として、終了イベントを出力する(C32)。汎用印刷プログラム41は、終了イベントとともに、プリンタ2から受信した終了通知に含まれる種類情報を出力する。
本形態の汎用印刷プログラム41は、印刷の終了をPC1に報知させる機能を有していない。そのため、汎用印刷プログラム41は、終了通知をプリンタ2から受信しても、印刷の処理の終了を報知せずに、終了イベントと種類情報とを出力する。
補助プログラム42は、汎用印刷プログラム41から出力された終了イベントと種類情報とを取得する(C35)。C35は「終了種類取得処理」の一例である。補助プログラム42は、プリンタ2と通信することなく、種類情報を取得できる。
なお、終了通知が印刷の終了の種類ごとに専用に設定された終了コードを含む場合、汎用印刷プログラム41は、終了コードに対応する種類の終了イベントを出力してもよい。この場合、補助プログラム42は、終了イベントの種類を解析することによって、種類情報を取得してもよい。
また、例えば、プリンタ2から送信される終了通知には種類情報が含まれるが、汎用印刷プログラム41が印刷の終了の種類を特定しない終了イベントを出力した場合、補助プログラム42は、汎用印刷プログラム41から終了通知に含まれていた種類情報を取得してもよい。この場合も、補助プログラム42は、プリンタ2と通信することなく、種類情報を汎用印刷プログラム41から取得できる。
また、例えば、プリンタ2から送信される終了通知に種類情報が含まれていない場合には、補助プログラム42は、プリンタ2から種類情報を取得してもよい。この場合、補助プログラム42は、汎用印刷プログラム41を介してプリンタ2から種類情報を取得してもよい。この際、汎用印刷プログラム41は、OS21を介して、例えば、IPP(internet printing protocolの略)に応じた通信によって、プリンタ2との通信を行う。また、補助プログラム42は、例えば、MIB(Management Information Baseの略)を使って、プリンタ2から種類情報を直接取得してもよい。
補助プログラム42は、C35にて取得した種類情報に対応する画面情報を取得する(C36)。C36の処理は、「画面情報取得処理」の一例である。画面情報は、プリンタでの処理が終了したことを示す報知画面を表示するための情報である。画面情報は、プリンタ2での印刷の処理の終了に関連付けられた情報を含む。プリンタでの印刷の処理の終了に関連付けられた情報は、例えば、印刷の処理の終了を示す情報、プリンタ名の情報、ファイル名の情報、ジョブ情報、状態情報、である
印刷の処理の終了を示す情報は、例えば、印刷完了、印刷キャンセル、エラーの発生による印刷の中止など、印刷の終了結果を報知するための情報を含む。例えば、印刷の処理の終了を示す情報がメモリ12の補助プログラム42用の不揮発性記憶領域に記憶されている場合、補助プログラム42は、C35にて取得した種類情報に対応する情報をメモリ12から抽出する。なお、印刷の処理の終了を示す情報は、プリンタ2に記憶されていてもよいし、サーバ等の外部装置に記憶されていてもよい。
プリンタ名の情報は、印刷の処理を終了したプリンタを識別する情報である。プリンタ名は、プリンタ2からの終了通知に含まれていてもよいし、補助プログラム42があらかじめ記憶していてもよい。
ファイル名の情報は、印刷指示されるファイルの名前を示す情報である。ジョブ情報は、印刷指示に対応するジョブに関する情報である。ジョブ情報は、例えば、印刷枚数、消費電力、消耗材の消費量、である。例えば、消費電力や、消耗材の消費量は、用紙1枚あたりの消費電力や消費量を基準にして、印刷枚数に応じて決定される。
状態情報は、印刷の処理を終了したプリンタの状態に基づく情報である。状態情報は、例えば、例えば、ステータス、消耗材の残量、排紙トレイの状態、である。消耗材は、例えば、インクやトナーなどの着色材、用紙である。例えば、印刷の処理がエラーの発生による中止によって終了した場合、補助プログラム42は、そのエラーの種別をステータスとして取得する。エラーの種別は、例えば、ドアオープン、着色材なし、着色材極少量、着色材少量、用紙なし、用紙詰まり、排紙トレイの空き無し、排紙トレイの空き少量、である。例えば、プリンタがカラープリンタの場合、着色材不足のエラーは、色ごとに判断してもよい。
ファイル名、ジョブ情報、状態情報などの印刷処理の終了に関する情報は、補助プログラム42がプリンタ2から直接取得してもよい。また、ファイル名、ジョブ情報、状態情報などの印刷処理の終了に関する情報が終了通知に含まれている場合、補助プログラム42は汎用印刷プログラム41からそれらを取得してもよい。ファイル名、ジョブ情報、状態情報などの印刷処理の終了に関する情報がプリンタ2、汎用印刷プログラム41、メモリ12などに分散して保存されている場合には、補助プログラム42は、C36の処理にて各保存場所から各情報を取得してもよい。
補助プログラム42は、C36にて取得した画面情報に基づいて、C35にて取得した種類情報に対応する報知画面をPC1のディスプレイ13aに表示させることにより、プリンタ2での処理の終了を報知する(C37)。C37の処理は、「印刷終了時報知処理」の一例である。上述したように汎用印刷プログラム41がプリンタ2での処理の終了を報知する機能を有していない場合であっても、補助プログラム42が処理の終了を報知する報知画面をPC1に表示させるので、ユーザは、プリンタ2の近くにいない場合でも、プリンタ2での印刷の終了を把握できる。
報知画面の表示について具体的に説明する。例えば、補助プログラム42は、印刷の終了を報知する報知画面のレイアウトをあらかじめ記憶している。補助プログラム42は、C35にて取得した印刷の終了の種類に関連する情報を取得し(C36)、取得した情報をレイアウトに埋め込むことにより、例えば図3~図5に示す報知画面100,200,300をPC1のディスプレイ13aに表示させることができる。
報知画面100,200,300には、それぞれ、印刷結果表示領域120と、ファイル名表示領域130と、プリンタ名表示領域140と、ジョブ情報表示領域150と、状態情報表示領域160と、消耗品購入サイト表示ボタン170と、チェックボックス180と、閉じるボタン190と、が配置されている。
例えば、補助プログラム42は、C35にて印刷完了を示す種類情報を取得した場合、印刷完了に関連付けられた情報を含む画面情報を取得し(C36)、図3に示す完了報知画面100をディスプレイ13aに表示させる(C37)。印刷完了に関連付けられた情報を含む画面情報は「第1画面情報」の一例である。完了報知画面100は「報知画面」、「第1報知画面」の一例である。
例えば、補助プログラム42は、印刷完了の種類情報に基づいて、印刷完了マーク121と、「印刷が完了しました。」との印刷結果を示すメッセージ122と、を印刷の処理の終了を示す情報として取得し、印刷結果表示領域120に埋め込む。
また、補助プログラム42は、ファイル名「aaa」、プリンタ名「XXX1」、消費電力、インク消費量、印刷枚数を含むジョブ情報、インク残量、用紙残量、印刷可能枚数を含む状態情報を取得し、ファイル名表示領域130、プリンタ名表示領域140、ジョブ情報表示領域150、状態情報表示領域160にそれぞれ埋め込む。補助プログラム42は、埋め込んだ情報を、消耗品購入サイト表示ボタン170、チェックボックス180、閉じるボタン190とともに、完了報知画面100にて表示する。
これにより、ユーザは、プリンタ2の近くにいない場合でも、PC1のユーザIF13に表示される印刷完了マーク121と、メッセージ122と、を見て、自分が指示した印刷が完了したことを把握できる。また、ユーザは、PC1に表示されるファイル名と、プリンタ名と、を見て、どの文書や画像の印刷がどのプリンタで完了したかを把握できる。
また、ユーザは、ジョブ情報を見て、自分の印刷で消費した電力やインク消費量を確認したり、自分が指示した画像が全て印刷されていることを確認したりすることができる。また、ユーザは、状態情報表示領域160に表示されるインク残量を示す画像161や、用紙残量を示す画像162から、現在の消耗材の残量を確認できる。状態情報表示領域160には、残量が少なくなっている消耗材にLowマーク164が付されている。これにより、ユーザは、購入時期が近い消耗材を把握できる。
また例えば、プリンタ2がユーザごとに印刷可能枚数を管理する場合、補助プログラム42は、C36の処理にて、印刷完了後のユーザの印刷可能枚数165を状態情報の1つとしてプリンタ2から取得し、状態情報表示領域160に表示することができる。この場合、ユーザは、完了報知画面100に表示される印刷可能枚数165を確認して、必要に応じて印刷可能枚数を追加する手続きを行うことができる。
また例えば、プリンタ2の本体操作によって印刷がキャンセルされた場合、補助プログラム42は、C35にて印刷キャンセルを示す種類情報を取得する。この場合、補助プログラム42は、印刷キャンセルに関連付けられた情報を含む画面情報を取得し(C36)、キャンセル報知画面200をディスプレイ13aに表示させる(C37)。印刷キャンセルに関連付けられた情報を含む画面情報は「第2画面情報」の一例である。キャンセル報知画面200は「報知画面」、「第2報知画面」の一例である。
例えば、補助プログラム42は、印刷キャンセルの種類情報に基づいて、印刷中止マーク221と、「印刷がキャンセルされました。」との印刷結果を示すメッセージ222と、を印刷の処理の終了を示す情報として取得し、印刷結果表示領域120に埋め込む。また、補助プログラム42は、完了報知画面100を表示する場合と同様に、ファイル名表示領域130、プリンタ名表示領域140、ジョブ情報表示領域150、状態情報表示領域160に各種情報を埋め込む。補助プログラム42は、埋め込んだ情報を、消耗品購入サイト表示ボタン170、チェックボックス180、閉じるボタン190とともに、キャンセル報知画面200にて表示する。
これにより、ユーザは、プリンタ2の近くにいない場合でも、PC1のユーザIF13に表示される印刷中止マーク221と、メッセージ222と、を見て、自分が指示した印刷がキャンセルされたことを把握できる。また、ユーザは、PC1に表示されるファイル名と、プリンタ名と、を見て、どの文書や画像の印刷がどのプリンタでキャンセルされたかを把握できる。
また、ジョブ情報表示領域150の印刷枚数には、印刷がキャンセルされるまでの印刷枚数が表示されている。そのため、ユーザは、自分が指示した印刷がどこまで終了しているかを把握し、つぎに同じファイルの文書や画像を印刷する際には、印刷未了のページを指定して印刷を行うことが可能になる。
また例えば、プリンタ2が黒色のインク不足によるエラーを発生して印刷を中止した場合、補助プログラム42は、C35にてエラーの発生による中止を示す種類情報を取得する。この場合、補助プログラム42は、インク不足のエラーに関連付けられた情報を含む画面情報を取得し(C36)、エラー報知画面300をディスプレイ13aに表示させる(C37)。エラー報知画面300は「報知画面」の一例である。
例えば、補助プログラム42は、インク不足のエラーによる中止を示す種類情報に基づいて、印刷中止マーク221と、「インク交換」とのエラーの原因を示すメッセージ322と、を印刷の処理の終了を示す情報として取得し、印刷結果表示領域120に埋め込む。また、補助プログラム42は、完了報知画面100を表示する場合と同様に、ファイル名表示領域130、プリンタ名表示領域140、ジョブ情報表示領域150、状態情報表示領域160に各種情報を埋め込む。補助プログラム42は、埋め込んだ情報を、消耗品購入サイト表示ボタン170、チェックボックス180、閉じるボタン190とともに、キャンセル報知画面200にて表示する。なお、補助プログラム42は、状態情報表示領域160にて、インク不足を示す不足マーク366を不足するインクの色に表示させる。
これにより、ユーザは、プリンタ2の近くにいない場合でも、PC1のユーザIF13に表示される印刷中止マーク221と、メッセージ322とを見て、自分が指示した印刷がインク不足のエラーにより中止されたことを把握できる。また、ユーザは、PC1に表示されるファイル名と、プリンタ名と、を見て、どの文書や画像の印刷がどのプリンタでインク不足により中止されたか、また、どのプリンタでインクカートリッジの交換が必要か、を把握できる。
また、ユーザは、不足マーク366の表示に基づいて、どの色のインクカートリッジを交換すべきかを把握できる。不足する色のインクカートリッジの購入を希望するユーザは、消耗品購入サイト表示ボタン170をユーザIF13を用いて操作する。すると、補助プログラム42は、例えば、消耗品購入サイト表示ボタン170に関連付けられたURLをPC1に組み込まれたブラウザなどの別のプログラムに渡す。例えば、ブラウザは、URLにて指定された購入画面をサーバから提供されて、PC1のディスプレイ13aに表示させる。これにより、ユーザは、インクカートリッジの購入手続きを行うことができる。
補助プログラム42は、表示中の報知画面の閉じるボタン190がユーザIF13を用いて操作されることによって、当該報知画面の表示を終了する。なお、本形態では、補助プログラム42が報知画面の表示を制御しているが、OS21が補助プログラム42からの依頼に応じて報知画面の表示を制御してもよい。
補助プログラム42は、報知画面の表示を終了すると、制限設定情報48の設定を変更する制限設定処理を実行する(C62)。制限設定情報48は、メモリ12の不揮発性領域に記憶される情報であり、報知画面を表示するか否かを示すフラグを記憶している。制限設定情報48は、例えば、補助プログラム42が報知画面の表示を制限する設定を受け付けた場合にフラグがON状態にされ、補助プログラム42が報知画面の表示を制限する設定を受け付けない場合にフラグがOFF状態にされる。本形態では、補助プログラム42が表示する報知画面に、報知画面の表示を制限する設定を受け付けるためのチェックボックス180が設けられている。補助プログラム42は、チェックボックス180のチェックに応じて、制限設定情報48を書き換えることができる。
具体的に、例えば図6のフローチャートに示すように、CPU11は、制限設定を受け付けたか否かを判断する(S31)。CPU11は、例えば、完了報知画面100のチェックボックス180にチェックが入れられていない状態で完了報知画面100の表示を終了した場合、制限設定を受け付けていないと判断する(S31:NO)。この場合、CPU11は、制限設定情報48のフラグをOFF状態にすることによって報知画面の表示を制限しないで(S33)、制限設定処理を終了する。これにより、補助プログラム42は、次の印刷時にC37の画面表示処理を実行し、上記と同様に報知画面を表示できる。
これに対して、CPU11は、例えば、完了報知画面100のチェックボックス180にチェックが入れられた状態で完了報知画面100の表示を終了した場合、制限設定を受け付けたと判断する(S31:YES)。この場合、CPU11は、制限設定情報48のフラグをON状態にすることによって報知画面の表示を制限し(S32)、制限設定処理を終了する。これにより、補助プログラム42は、次の印刷時にS37の画面表示処理を実行せず、報知画面をユーザIF13に表示させない。CPU11がチェックボックス180を介して制限設定を受け付ける処理は、「制限受付処理」の一例である。
なお、制限設定情報48の設定は、例えば、補助プログラム42のオプション設定画面に制限設定情報48の設定に関する項目を設け、制限設定情報48の設定を変更するようにしてもよい。例えば、ユーザは、印刷の度に印刷結果を知りたくない場合には、チェックボックス180にチェックが入れて報知画面を閉じる。この制限設定は、ユーザがオプション設定画面にて制限設定を解除しない限り、継続される。これにより、印刷の度に報知画面が表示される煩わしさが回避される。
以上、詳細に説明したように、第1実施形態の補助プログラム42は、印刷指示に連動して、終了イベントが汎用印刷プログラム41から出力された場合に、プリンタ2での処理の終了に関連付けられた情報を含む報知画面100,200,300を表示する。これにより、ユーザは、プリンタ2での処理の終了時に知りたい情報を認識できる。また、補助プログラム42は、印刷データの送信後にプリンタ2を監視する必要が無いため、プリンタ2での処理の終了を報知するにあたって通信負荷の増大が抑えられる。
(第2実施形態)
続いて、第2実施形態について説明する。第2実施形態の補助プログラム42は、汎用印刷プログラム41からエラーイベントが出力された場合にプリンタ2での処理の終了を報知する機能を有する。この点が、汎用印刷プログラム41から終了イベントが出力された場合に補助プログラム42が印刷の終了を報知する第1実施形態と相違し、その他の点は、第1実施形態と共通している。以下では、第1実施形態と相違する点を中心に説明し、第1実施形態の共通する構成や処理には、第1実施形態と同じ符号を用いて適宜説明を省略する。
続いて、第2実施形態について説明する。第2実施形態の補助プログラム42は、汎用印刷プログラム41からエラーイベントが出力された場合にプリンタ2での処理の終了を報知する機能を有する。この点が、汎用印刷プログラム41から終了イベントが出力された場合に補助プログラム42が印刷の終了を報知する第1実施形態と相違し、その他の点は、第1実施形態と共通している。以下では、第1実施形態と相違する点を中心に説明し、第1実施形態の共通する構成や処理には、第1実施形態と同じ符号を用いて適宜説明を省略する。
汎用印刷プログラム41によっては、終了通知に基づく終了イベントを発行する機能を有しておらず、エラー通知に基づくエラーイベントを発行する機能を有している場合がある。本形態は、そのような場合を想定したもので、プリンタ2での処理の終了をプリンタ2から補助プログラム42に通知可能な一種のエラーと偽装して、汎用印刷プログラム41のエラー通知に基づくエラーイベントを終了イベントとして用いる構成である。
図7に示すように、本形態の補助プログラム42は、エラーイベントの発行を汎用印刷プログラム41に登録する(C101)。本形態のエラーイベントは、印刷を実行するプリンタ2からエラー通知を汎用印刷プログラム41が受信した場合に、汎用印刷プログラム41が出力可能なイベントである。補助プログラム42は、汎用印刷プログラム41に対してエラーイベントの発行を登録することにより、汎用印刷プログラム41から出力されるエラーイベントを受け取ることが可能になる。
なお、C11に示すエラーイベント登録処理を実行するタイミングは、第1実施形態の終了イベントと同様、印刷指示に連動して補助プログラム42が起動された後(C05にて実行指示を受け付けた後)、補助プログラム42が印刷処理を行う前(後述するC21にて印刷データを出力する前)であれば、いつでもよい。本形態では、印刷指示がある度に、補助プログラム42がエラーイベントの発行を汎用印刷プログラム41に登録しているが、汎用印刷プログラム41がエラーイベントの発行の登録を維持する機能を有する場合には、補助プログラム42は、C101の処理を省略してもよい。
プリンタ2は、印刷データに基づく処理を終了すると、印刷指示を出力した汎用印刷プログラム41に対してエラー通知を送信して応答する(C102)。エラー通知には、プリンタでの処理の終了を示す終了情報が含まれる。終了情報は、例えば、印刷完了、印刷キャンセル、エラーの発生による中止、である。この終了情報は汎用印刷プログラム41が解釈できる必要性はなく、汎用印刷プログラム41における解釈が現実に存在する一種のエラーとなっていてもよい。
汎用印刷プログラム41は、終了情報を含むエラー通知をプリンタ2から受信すると(C102)、エラーイベントの発行が登録されていることを条件として、エラーイベントを出力する(C103)。例えば、汎用印刷プログラム41は、エラー通知に含まれる終了情報を付加したエラーイベントを出力する。
補助プログラム42は、C103にて、汎用印刷プログラム41から出力されたエラーイベントを受け取ると、エラー報知を不要とする抑制通知を汎用印刷プログラム41に渡し、エラー報知不要を汎用印刷プログラム41に設定する(C111)。C111の処理は「設定処理」の一例である。
本形態の汎用印刷プログラム41は、通常動作時、プリンタ2からエラー通知を受信すると、汎用印刷プログラム41自ら、エラーを報知するエラー報知画面をユーザIF13に表示させる機能を有する。一方で、本形態では、前述したように、印刷が完了して正常終了した場合であっても、プリンタ2からエラー通知が出力される。つまり、エラーを偽装する構成になる。そのため、汎用印刷プログラム41がエラー通知に応じてエラーを報知する構成のままだと、印刷が正常終了したにもかかわらず、汎用印刷プログラム41の解釈に基づくエラーが報知されてしまう。そのため、補助プログラム42は、汎用印刷プログラム41からエラーイベントが出力された場合に、抑制通知を出力し、汎用印刷プログラム41によるエラー報知を不要とし、このような不具合を回避する。
補助プログラム42は、汎用印刷プログラム41から出力されたエラーイベントに付加された終了情報を取得する(C121)。C121は「終了情報取得処理」の一例である。補助プログラム42は、プリンタ2と通信することなく、終了情報を取得できる。
なお、エラー通知が印刷の終了の種類ごとに専用に設定されたエラーコードを含む場合、汎用印刷プログラム41は、エラーコードに対応する種類のエラーイベントを出力してもよい。この場合、補助プログラム42は、エラーイベントの種類を解析することによって、終了情報を取得してもよい。
補助プログラム42は、C121にて取得した終了情報に基づく画面情報を取得し(C36)、取得した画面情報に基づく報知画面を、PC1のディスプレイ13aに表示させる(C37)。
以上、詳細に説明したように、第2実施形態の補助プログラム42は、汎用印刷プログラム41が終了通知に対応する終了イベントを発行できず、エラー通知に対応するエラーイベントを発行可能な場合であっても、プリンタ2から送信されるエラー通知が終了情報を含むことによって、汎用印刷プログラム41から出力されるエラーイベントに応じてエラー通知に含まれる終了情報を取得して処理の終了を判断できる。そして、補助プログラム42は、その判断結果に応じて画面情報を取得して報知画面をPC1のディスプレイ13aに表示することができる。つまり、補助プログラム42は、例えば、プリンタ2等との通信負荷を抑制しつつ、プリンタ2での処理の終了に応じた報知画面をPC1のディスプレイ13aに表示して、プリンタ2での処理の終了をユーザに認識させることができる。
なお、本明細書に開示される実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、PC1に接続されるプリンタの数は、図示の例に限らず、2台以上でも良い。
汎用印刷プログラム41で印刷の終了を報知することが通常動作の場合、補助プログラム42は、汎用印刷プログラムに報知不要を設定して汎用印刷プログラムでの印刷終了の報知を回避してもよい。これによれば、補助プログラム42と汎用印刷プログラム41とが、印刷の処理の終了を重複して報知することを回避できる。
上記形態では、インク不足をエラーの発生による中止の一例として通知画面を表示したが、用紙など、インク以外の消耗材が不足した場合や、ドアオープンなど消耗材不足以外のエラーを発生した場合に、エラー報知画面を表示してもよい。
例えば、ユーザIF13に表示される画面の例は、いずれも一例であって、図示の例に限らない。例えば、各報知画面100,200,300のジョブ情報表示領域150には、電力消費量やインク消費量が表示されなくてもよい。例えば、各報知画面100,200,300には、消耗品購入サイト表示ボタン170が表示されなくてもよい。例えば、完了報知画面100と、キャンセル報知画面200と、エラー報知画面300とのレイアウトが異なってもよい。例えば、キャンセル報知画面200は、状態情報表示領域160や、消耗品購入サイト表示ボタン170が表示されなくてもよい。例えば、報知画面には、消耗品購入サイト表示ボタン170に代えて、消耗品購入サイトのURLを示すリンクを表示してもよいし、URLを記載したテキストを表示してもよい。
例えば、補助プログラム42は、印刷完了時に完了報知画面を表示し、印刷キャンセル時やエラー発生時にキャンセル報知画面やエラー報知画面を表示しないように構成されてもよい。例えば、補助プログラム42は、図2のC11にて、完了イベントの発行を汎用印刷プログラム41に登録しておき、汎用印刷プログラム41は、印刷が完了したことを示す完了通知をプリンタ2から受信した場合に、完了イベントを出力してもよい。補助プログラム42は、完了イベントが出力された場合に、印刷完了に関連付けられた情報あるいは印刷完了を示す情報を含む画面情報を取得し、完了報知画面100を表示してもよい。ただし、プリンタの処理の終了には、印刷完了と印刷キャンセルとが含まれ、それぞれ別の報知画面100,200がPC1のディスプレイ13aに表示されることで、ユーザは、プリンタ2の処理が、印刷完了時に知りたい情報なのか印刷キャンセル時に知りたい情報なのかを適切に認識できる。さらに、印刷完了時には、印刷完了に好適な情報を報知し、印刷キャンセル時には、印刷キャンセルに好適な情報を報知することで、ユーザに必要な情報を分かりやすく伝えることができる。
例えば、C36にて取得される画面情報には、プリンタ名の情報が含まれず、プリンタ名が報知画面に表示されないようにしてもよい。ただし、プリンタ名が表示される報知画面を表示することで、ユーザはどのプリンタでの処理が終了したのかを認識できる。
例えば、C36にて取得される画面情報には、印刷対象の画像を記憶するファイルのファイル名の情報が含まれず、ファイル名が報知画面に表示されないようにしてもよい。ただし、ファイル名が報知画面に表示されることで、ユーザはどのファイルの処理が終了したのかを認識できる。
例えば、C36にて取得される画面情報には、印刷指示に対応するジョブ情報が含まれず、ジョブ情報が報知画面に表示されないようにしてもよい。ただし、ジョブ情報が報知画面に表示されることで、ユーザは印刷に基づくジョブに関する情報を認識できる。
例えば、C36にて取得される画面情報には、プリンタの状態に基づく状態情報が含まれず、状態情報が報知画面に表示されないようにしてもよい。ただし、状態情報が報知画面に表示されることで、ユーザはプリンタ本体の状態に関する情報を認識できる。
例えば、報知画面の表示を制限する設定を受け付けるチェックボックス180を図3~図5の各報知画面100,200,300に表示せず、図2あるいは図7のC62の処理を省略してもよい。つまり、補助プログラム42は、汎用印刷プログラムにエラー報知不要を設定しないように構成されてもよい。ただし、印刷が行われる度に報知画面が表示されるとユーザに煩わしさを与えてしまう可能性もあるため、報知画面の表示を制限する制限指示を受け付けて報知画面の表示を制限することで、これを回避できる。
報知画面の表示を制限する設定は、報知画面と別の画面で受け付けてもよい。つまり、当該設定は、報知画面を表示するタイミングで異なるタイミングで受け付けてもよい。ただし、当該設定を報知画面で受け付けることにより、ユーザが別の画面を開いて設定を行う手間が軽減される。
図7のC111の処理を省略し、補助プログラム42と汎用印刷プログラム41とが、印刷の終了を報知してもよい。ただし、汎用印刷プログラム41でエラーを報知することが通常動作の場合、補助プログラム42が、抑制通知を汎用印刷プログラム41に渡し、エラー報知不要を設定して汎用印刷プログラム41でのエラー報知を回避することで、汎用印刷プログラム41と補助プログラム42とがエラー報知を重複して行うことを回避できる。
また、実施の形態では、補助プログラム42の動作として、印刷動作のみを詳細に記載しているが、補助プログラム42は、さらに他の役割を有していても良い。また、本形態の処理を実行するプログラムは、補助プログラム42に限らず、汎用印刷プログラム41を用いた印刷を行う際に、OS21または汎用印刷プログラム41から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフローアプリ(Print workflow)でも良い。
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
1 PC
2 プリンタ
11 CPU
13 ユーザIF
21 OS
41 汎用印刷プログラム
42 補助プログラム
43 編集アプリ
100 通知画面
2 プリンタ
11 CPU
13 ユーザIF
21 OS
41 汎用印刷プログラム
42 補助プログラム
43 編集アプリ
100 通知画面
Claims (13)
- 情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記情報処理装置には、汎用印刷プログラムを有するオペレーティングシステムが搭載されており、
前記コンピュータに、
前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、前記印刷指示による印刷対象の前記画像を示す印刷データに基づく印刷を前記プリンタに行わせるための処理を行う印刷処理を実行させ、前記汎用印刷プログラムは、前記印刷処理の実行によって前記プリンタから終了通知を受信した場合に、終了イベントを出力し、
さらに前記コンピュータに、
前記汎用印刷プログラムから前記終了イベントが出力された場合に、前記プリンタでの処理の終了に関連付けられた情報を含む画面情報を取得する画面情報取得処理と、
前記画面情報取得処理にて取得された前記画面情報に基づく報知画面を、前記情報処理装置のユーザインタフェースに表示させる印刷終了時報知処理と、
を実行させる、
ように構成されるサポートプログラム。 - 請求項1に記載するサポートプログラムであって、
前記終了通知には、前記プリンタでの前記印刷指示よる印刷を完了したことを示す完了通知を含み、前記汎用印刷プログラムは、前記印刷処理の実行によって前記プリンタから前記完了通知を受信した場合に、前記終了イベントとして完了イベントを出力し、
前記画面情報取得処理では、
前記汎用印刷プログラムから前記完了イベントが出力された場合に、前記プリンタでの処理の完了に関連付けられた情報を含む前記画面情報を取得する、
ように構成されるサポートプログラム。 - 請求項2に記載するサポートプログラムであって、
前記画面情報取得処理では、
前記汎用印刷プログラムから前記完了イベントが出力された場合に、前記プリンタでの処理の完了を示す情報を含む前記画面情報を取得する、
ように構成されるサポートプログラム。 - 請求項1に記載するサポートプログラムであって、
前記コンピュータに、
前記汎用印刷プログラムから前記終了イベントが出力された場合に、終了の種類を示す種類情報を取得する終了種類取得処理を実行させ、
前記画面情報取得処理では、
前記終了種類取得処理にて取得された前記種類情報に対応する前記画面情報を取得する、
ように構成されるサポートプログラム。 - 請求項4に記載するサポートプログラムであって、
前記種類情報に示される前記終了の種類には、印刷完了と、印刷キャンセルと、が含まれ、
前記画面情報取得処理では、
前記種類情報に示される前記終了の種類が前記印刷完了であれば、前記画面情報として、前記印刷完了に関連付けられた第1画面情報を取得し、前記種類情報に示される終了の種類が前記印刷キャンセルであれば、前記画面情報として、前記印刷キャンセルに関連付けられた第2画面情報を取得し、
前記印刷終了時報知処理では、
前記画面情報取得処理にて前記第1画面情報が取得された場合、前記報知画面として、前記第1画面情報に基づく第1報知画面を、前記ユーザインタフェースに表示させ、前記画面情報取得処理にて前記第2画面情報が取得された場合、前記報知画面として、前記第2画面情報に基づく第2報知画面を、前記ユーザインタフェースに表示させる、
ように構成されるサポートプログラム。 - 請求項1に記載するサポートプログラムであって、
前記画面情報取得処理にて取得される前記画面情報には、前記プリンタを識別するプリンタ名の情報がさらに含まれ、
前記印刷終了時報知処理にて表示される前記報知画面には、前記プリンタ名が表示される、
ように構成されるサポートプログラム。 - 請求項1に記載するサポートプログラムであって、
前記画面情報取得処理にて取得される前記画面情報には、印刷指示されるファイルのファイル名の情報がさらに含まれ、
前記印刷終了時報知処理にて表示される前記報知画面には、前記ファイル名が表示される、
ように構成されるサポートプログラム。 - 請求項7に記載するサポートプログラムであって、
前記画面情報取得処理では、
前記ファイル名の情報を前記汎用印刷プログラムから取得し、前記汎用印刷プログラムは、前記プリンタから受信した前記終了通知に対応する印刷指示されるファイルの前記ファイル名を取得する、
ように構成されるサポートプログラム。 - 請求項1に記載するサポートプログラムであって、
前記画面情報取得処理にて取得される前記画面情報には、前記印刷指示に対応するジョブ情報がさらに含まれ、
前記印刷終了時報知処理にて表示される前記報知画面には、前記ジョブ情報が表示される、
ように構成されるサポートプログラム。 - 請求項1に記載するサポートプログラムであって、
前記画面情報取得処理にて取得される前記画面情報には、前記プリンタの状態に基づく状態情報がさらに含まれ、
前記印刷終了時報知処理にて表示される前記報知画面には、前記状態情報が表示される、
ように構成されるサポートプログラム。 - 請求項1に記載するサポートプログラムであって、
前記コンピュータに、
前記報知画面の表示を制限する設定を受け付ける制限受付処理を実行させ、
前記制限受付処理にて前記報知画面の表示を制限する前記設定が受け付けられた場合、前記汎用印刷プログラムから前記終了イベントが出力された場合であっても、前記画面情報取得処理および前記印刷終了時報知処理を実行させない、
ように構成されるサポートプログラム。 - 請求項1から請求項11のいずれか1つに記載するサポートプログラムであって、
前記プリンタは、前記印刷データに基づく処理を終了した場合に、前記終了通知として、前記プリンタでの前記処理の終了を示す終了情報をエラー通知として、前記汎用印刷プログラムに応答し、
前記汎用印刷プログラムは、前記印刷処理の実行によって前記プリンタから前記エラー通知を受信した場合に、エラーイベントを出力し、
前記コンピュータに、
前記汎用印刷プログラムから前記エラーイベントが出力された場合に、前記汎用印刷プログラムが前記プリンタから受信した前記エラー通知に基づいて前記終了情報を取得する終了情報取得処理を実行させ、
前記画面情報取得処理では、
前記終了情報取得処理にて取得された前記終了情報に基づく前記画面情報を取得する、
ように構成されるサポートプログラム。 - 請求項12に記載するサポートプログラムであって、
前記コンピュータに、
前記汎用印刷プログラムから前記エラーイベントが出力された場合に、前記汎用印刷プログラムに対して、エラー報知不要を設定する設定処理を実行させ、前記汎用印刷プログラムは、前記エラー報知不要が設定されていないと、前記プリンタから前記エラー通知を受信した場合にエラーを報知し、前記エラー報知不要が設定されていると、エラーを報知しない、
ように構成されるサポートプログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023029550A JP2024122165A (ja) | 2023-02-28 | 2023-02-28 | サポートプログラム |
JP2023-029550 | 2023-02-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024181230A1 true WO2024181230A1 (ja) | 2024-09-06 |
Family
ID=92590473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2024/005984 WO2024181230A1 (ja) | 2023-02-28 | 2024-02-20 | サポートプログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2024122165A (ja) |
WO (1) | WO2024181230A1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021041654A (ja) * | 2019-09-13 | 2021-03-18 | キヤノン株式会社 | 印刷装置、および印刷装置の制御方法ならびにプログラム |
JP2021056754A (ja) * | 2019-09-30 | 2021-04-08 | ブラザー工業株式会社 | サポートプログラム、情報処理装置、および印刷方法 |
JP2021121898A (ja) * | 2020-01-31 | 2021-08-26 | キヤノン株式会社 | 情報処理装置およびプログラム |
-
2023
- 2023-02-28 JP JP2023029550A patent/JP2024122165A/ja active Pending
-
2024
- 2024-02-20 WO PCT/JP2024/005984 patent/WO2024181230A1/ja unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021041654A (ja) * | 2019-09-13 | 2021-03-18 | キヤノン株式会社 | 印刷装置、および印刷装置の制御方法ならびにプログラム |
JP2021056754A (ja) * | 2019-09-30 | 2021-04-08 | ブラザー工業株式会社 | サポートプログラム、情報処理装置、および印刷方法 |
JP2021121898A (ja) * | 2020-01-31 | 2021-08-26 | キヤノン株式会社 | 情報処理装置およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP2024122165A (ja) | 2024-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20110310432A1 (en) | Computer readable recording medium storing print setting program, print setting apparatus, computer readable recording medium storing control program of printing apparatus, and printing apparatus | |
US20120194861A1 (en) | Computer readable information recording medium storing printing setting editing program, printing setting editing apparatus and printing setting editing method | |
US8605316B2 (en) | Information processing apparatus and control method thereof, and storage medium | |
US12014094B2 (en) | Support program, information processing device, and printing method | |
JP2013149085A (ja) | 印刷システム、印刷制御装置、および印刷制御プログラム | |
WO2023145532A1 (ja) | サポートプログラム | |
US11726729B2 (en) | Printing system including information processing device and printer having restriction function of printing, and non-transitory computer-readable recording medium containing computer-executable instructions therefor | |
WO2022138317A1 (ja) | サポートプログラム | |
WO2023145533A1 (ja) | サポートプログラム | |
WO2024181230A1 (ja) | サポートプログラム | |
US20230102837A1 (en) | Non-transitory computer-readable medium storing support program | |
US8547600B2 (en) | Printing setting apparatus, printing apparatus, and recording medium | |
US11861252B2 (en) | Non-transitory computer-readable recording medium containing computer-executable instructions which causes information processing device to control printer connected thereto | |
JP7585823B2 (ja) | サポートプログラム | |
WO2024176979A1 (ja) | サポートプログラム | |
WO2024176980A1 (ja) | サポートプログラム | |
WO2023140240A1 (ja) | サポートプログラム | |
WO2022163430A1 (ja) | サポートプログラム | |
JP7581895B2 (ja) | サポートプログラム | |
US20240362040A1 (en) | Computer-readable storage medium, information processing device, and method for customizing print setting screen | |
WO2024190651A1 (ja) | サポートプログラム | |
JP7581894B2 (ja) | サポートプログラム | |
JP2024112427A (ja) | サポートプログラム | |
JP2024129683A (ja) | サポートプログラム | |
JP2022109423A (ja) | サポートプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 24763711 Country of ref document: EP Kind code of ref document: A1 |