WO2022230740A1 - サポートプログラムおよび印刷システム - Google Patents

サポートプログラムおよび印刷システム Download PDF

Info

Publication number
WO2022230740A1
WO2022230740A1 PCT/JP2022/018343 JP2022018343W WO2022230740A1 WO 2022230740 A1 WO2022230740 A1 WO 2022230740A1 JP 2022018343 W JP2022018343 W JP 2022018343W WO 2022230740 A1 WO2022230740 A1 WO 2022230740A1
Authority
WO
WIPO (PCT)
Prior art keywords
display
printer
program
print
application program
Prior art date
Application number
PCT/JP2022/018343
Other languages
English (en)
French (fr)
Inventor
仁人 細溝
Original Assignee
ブラザー工業株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ブラザー工業株式会社 filed Critical ブラザー工業株式会社
Priority to CN202280029496.8A priority Critical patent/CN117501232A/zh
Publication of WO2022230740A1 publication Critical patent/WO2022230740A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1211Improving printing performance
    • G06F3/1212Improving printing performance achieving reduced delay between job submission and print start
    • G06F3/1214Improving printing performance achieving reduced delay between job submission and print start at the submitting node
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1228Printing driverless or using generic drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1259Print job monitoring, e.g. job status
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Definitions

  • the technical field disclosed in this specification relates to support programs and printing systems that support printer control.
  • Japanese Patent Laid-Open No. 2002-200002 discloses a technique for notifying the status of a printer in an information processing apparatus in which the general-purpose print program is installed.
  • Patent Document 1 when a printing instruction is given to a general-purpose printing program, the general-purpose printing program activates an auxiliary program, the auxiliary program acquires current status information from the printer, and displays a message based on the acquired current status information. is disclosed.
  • control is returned to the general-purpose print program after the message has ended, and print data is sent from the general-purpose print program. Therefore, the start of printing is likely to be delayed.
  • This specification discloses a technique for suppressing a delay in starting printing and making a notification based on information obtained from a printer in an information processing apparatus in which an OS-standard general-purpose print program is installed.
  • a support program intended to solve the above-described problems is executable by a computer of an information processing device, corresponds to a printer connected to the information processing device, and is pre-installed in the operating system of the information processing device.
  • a support program for supporting a print program wherein a print instruction is output from an editing application program incorporated in the information processing apparatus to the computer, and instructs the general-purpose print program to print an image to the printer.
  • the display application program is a program that operates as a separate process from the editing application program and can display the notification screen corresponding to the parameter on the user interface of the information processing device; causing the computer to continue processing for transmitting print data based on the print instruction to the printer without waiting for completion of display of the notification screen by the display application program when the print instruction is given to the computer; Characterized by
  • the information processing device acquires the current status information from the printer when there is a print instruction from the editing application program, and displays the notification screen corresponding to the acquired current status information.
  • the display is requested from a display application program in a separate process from the editing application program.
  • the display application program operates independently from the support program as a process separate from the editing application program, and displays the notification screen on the user interface based on the request. This eliminates the need for the support program and editing application program to wait for the end of the display when continuing processing, and allows the processing for sending print data based on the print instruction to the printer without waiting for the end of the display of the notification screen. continue. Therefore, even if the notification is made based on the information obtained from the printer, the delay in starting printing can be suppressed.
  • a printing system including the above support program, an information processing device incorporating the support program, a computer-readable storage medium storing the support program, and a control method for realizing the function of the support program are also novel and useful. is.
  • a technology is realized that performs notification based on information obtained from a printer while suppressing delays in starting printing. be.
  • FIG. 10 is a sequence diagram showing an example of a procedure of operations by each program when a print instruction is received;
  • FIG. 10 is an explanatory diagram showing an example of a notification screen;
  • FIG. 10 is a sequence diagram showing an example of a procedure of operations by each program when receiving an instruction for detailed print settings;
  • 1 is a block diagram showing an outline of an electrical configuration of a printing system;
  • FIG. 10 is a sequence diagram showing an example of a procedure of operations by each program when a print instruction is received;
  • this embodiment discloses a printing system 100 including a personal computer (hereinafter referred to as "PC") 1 using a support program and a printer 2 having a printing function.
  • PC personal computer
  • the PC 1 of this embodiment includes a controller 10 including a CPU 11 and a memory 12, as shown in FIG.
  • 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 hereinafter referred to as "communication IF”
  • the controller 10 in FIG. 1 is a general term for hardware and software used to control the PC 1 and does not necessarily represent a single piece of hardware that actually exists in the PC 1 .
  • the CPU 11 executes various processes according to programs read from the memory 12 and based on 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.
  • a buffer provided 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 into the PC 1, but is a storage medium readable and writable by the CPU 11, such as a recording medium such as a CD-ROM, DVD-ROM, etc. Also good.
  • the user IF 13 includes hardware for displaying screens for notifying the user of information, and hardware for accepting user operations.
  • the user IF 13 may be a combination of a display capable of displaying information and a mouse or keyboard having an input reception function, or may be a touch panel having a display function and an input reception function.
  • the communication IF 14 includes hardware for communicating with an external device such as the printer 2.
  • the communication standards of the communication IF 14 are Ethernet (Japanese registered trademark of Fuji Film Business Innovation), Wi-Fi (Japanese registered trademark of Wi-Fi Alliance), USB, and the like.
  • the PC 1 may have a plurality of communication IFs 14 corresponding to a plurality of 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, an auxiliary program 42, an editing application 43, a guide display application 44, is stored.
  • Auxiliary program 42 includes correspondence table 45 .
  • the auxiliary program 42 is an example of a support program.
  • the editing application 43 is an example of an editing application program.
  • the guide display application 44 is an example of a display application program.
  • the OS 21 is a multitasking OS that can process a plurality of tasks in parallel by managing and switching over a plurality of tasks.
  • Linux Japanese registered trademark of Linus Torvalds
  • iOS Japanese registered trademark of Cisco Technology Inc.
  • Android Japanese registered trademark of Google Inc.
  • 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 user instructions.
  • the general-purpose print program 41 of this embodiment is a program including a function of generating intermediate image data based on image data to be printed.
  • the intermediate image data is, for example, XPS data.
  • the general-purpose printing program 41 supports functions that can be commonly used by multiple types of printer models provided by various printer vendors.
  • the general-purpose printing program 41 does not support all the functions unique to various printers, and the supported functions are limited to general-purpose functions.
  • the auxiliary program 42 is a program or program group that executes processing based on instructions from the OS 21 accompanying the processing of the general-purpose printing program 41, and is an application that supports control of target hardware.
  • the auxiliary program 42 of this embodiment corresponds to the model of the printer 2 connected to the PC 1. For example, when receiving an instruction to cause the printer 2 to execute printing using the general-purpose printing program 41, the general-purpose It is started from the print program 41 .
  • the auxiliary program 42 is called, for example, a hardware support application (abbreviated as HSA).
  • the auxiliary program 42 can receive multiple types of commands from the general-purpose printing program 41, and executes various types of processing based on the received commands.
  • the auxiliary program 42 may be a combination of a plurality of programs each of which accepts an execution instruction, or may be a single program capable of executing different processes according to instructions.
  • the auxiliary program may be a program prepared for each printer type by the printer vendor.
  • an auxiliary program for inkjet printers and an auxiliary program for laser printers may be prepared.
  • the OS 21 of the PC 1 downloads an appropriate auxiliary program from the printer vendor's server or the like according to the type of the connected printer and installs it in the PC 1. Then, the OS 21 associates the identification information of the incorporated auxiliary program with the printer information of the newly connected printer and stores it in the memory 12 .
  • auxiliary programs may be prepared for each printer model or printer model series, not just for each printer type.
  • the editing application 43 is, for example, an application for creating and editing image data and document data.
  • the editing application 43 may be, for example, Word (registered trademark in Japan of Microsoft Corporation) or PowerPoint (registered trademark in Japan of Microsoft Corporation) manufactured by Microsoft (registered trademark in Japan of Microsoft Corporation). It may be an application provided.
  • the editing application 43 can receive, for example, a print execution instruction for causing the printer 2 to execute printing via the user IF 13 .
  • the guide display application 44 is a program that can display a predetermined notification screen on the user IF 13 based on instructions from the auxiliary program 42 .
  • the guide display application 44 of this embodiment is a program compatible with a plurality of models including the model of the printer 2 and has a plurality of notification screens for each model to be displayed on the user IF 13 .
  • the guide display application 44 of the present embodiment may be compatible with at least the model of the printer 2, and may be a program prepared for each series of printer models, for example.
  • the correspondence table 45 includes printer status information including printer status, model information indicating the printer model, and screen information specifying a notification screen to be displayed by the guide display application 44. Information that is related to each other.
  • the auxiliary program 42 can acquire screen information from the printer status information and model information based on the correspondence table 45 . Details of the guide display application 44 and the correspondence table 45 will be described later.
  • the printer 2 of this embodiment is a device having a printing function.
  • PC 1 can communicate with printer 2 via communication IF 14 .
  • the printer 2 can execute printing based on the received print data.
  • the printer 2 of this embodiment has a function of generating printer status information based on the status of the printer 2 and transmitting the printer status information in response to a request from an external device.
  • the status of the printer 2 is, for example, printing in progress, waiting for print data, printing stopped, or error occurring. If the status is printing stopped or an error has occurred, the printer status information also includes information indicating the cause.
  • the printer 2 of this embodiment further has a function of generating consumable material information indicating the status of consumable materials stored in the printer 2 and transmitting the consumable material information in response to a request from an external device. good.
  • the consumables are, for example, paper for printing, and coloring materials such as ink and toner.
  • the consumable material information is information indicating the remaining amount of each color of coloring material contained in the printer 2, the presence or absence of paper contained in each paper feed tray, the size of the paper, and the like.
  • FIG. 3 shows the operation of each program when the editing application 43 receives a user's print instruction to cause the printer 2 to print to the general-purpose print program 41 .
  • processing in the present embodiment and each processing step in the flow chart basically indicate the processing of the CPU 11 according to the instructions written in the program such as the auxiliary program 42 .
  • the processing by the CPU 11 also includes hardware control using API of the OS 21 .
  • OS 21 In this specification, detailed description of the OS 21 will be omitted and the operation of each program will be described. Also, "obtain" is used as a concept that does not require a request.
  • the editing application 43 accepts creation and editing of sentences, charts, etc. based on user instructions. Then, when the editing application 43 receives a print execution instruction for the general-purpose printing program 41 to cause the printer 2 to print an image based on the sentence or the like being selected (A11), the printing instruction is sent to the general-purpose printing program 41 via the OS 21. It is passed to the program 41 (A12).
  • the general-purpose print program 41 acquires information indicating image data of an image to be printed and information indicating print settings from the print instruction.
  • the general-purpose print program 41 generates intermediate image data by converting the format of the image data included in the received print instruction into the format of intermediate image data (A13), and creates a print job including the intermediate image data.
  • the image data passed from the editing application 43 are of various types, and the general-purpose print program 41 converts the received image data into intermediate image data suitable for generating print data. Note that if the image data included in the print instruction is data suitable for generating print data, the generation of the intermediate image data may be omitted and the intermediate image data may be used as it is.
  • the general-purpose printing program 41 further outputs an execution instruction to the auxiliary program 42, which is a program corresponding to the printer 2 (A14), and causes the auxiliary program 42 to operate.
  • the execution instruction the intermediate image data generated in A13 and the information indicating the print settings are passed to the auxiliary program 42 .
  • the auxiliary program 42 communicates with the printer 2 via the communication IF 14 and acquires printer status information indicating the current status from the printer 2 (A21).
  • A21 is an example of an acquisition process. That is, the auxiliary program 42 requests printer status information from the printer 2 , and the printer 2 responds to the request from the auxiliary program 42 with the printer status information based on the status of the printer 2 .
  • the auxiliary program 42 requests printer status information and consumable material information at A21 and acquires these information from the printer 2.
  • FIG. Printer status information and consumables information are examples of current status information.
  • Communication between the auxiliary program 42 and the printer 2 may be performed by the auxiliary program 42 directly communicating with the printer 2 using, for example, MIB (abbreviation of Management Information Base), or via the OS 21.
  • MIB abbreviation of Management Information Base
  • the auxiliary program 42 and the printer 2 communicate according to the communication protocol of the OS 21, such as IPP (abbreviation of internet printing protocol).
  • the auxiliary program 42 determines whether display is necessary based on the printer status information received from the printer 2 and the print settings included in the execution instruction received at A14 (A22). Specifically, the auxiliary program 42 does not accept the user's operation when the printer 2 requires a user's operation in order to start printing based on the print data received by the printer 2. If it is in a situation where printing cannot be started, it is determined that display is necessary.
  • the auxiliary program 42 determines that display is necessary, for example, if the status of the printer 2 is that an error has occurred or printing is stopped. "Error occurring" and “Printing stopped” are examples of statuses that satisfy predetermined display conditions. If the status of the printer 2 is that an error has occurred or printing is stopped, the printer 2 cannot start printing until the cause is resolved. Errors that occur in the printer 2 include, for example, paper jam and memory full. The printer 2 status is an error even when parts such as the print head and photoreceptor of the printer 2 need to be replaced. In addition, factors that cause printing to stop include, for example, running out of paper or running out of coloring material during printing, open cover of the printer 2, and full output tray.
  • the auxiliary program 42 even if the printer status information does not indicate that an error has occurred or that printing has stopped, the auxiliary program 42 also performs Decide that display is necessary. For example, if the printer 2 runs out of color coloring material and color printing is specified as the print setting, the printer 2 cannot start printing until the coloring material is replenished. In this case, the auxiliary program 42 determines that display is necessary. On the other hand, even when the color coloring material has run out, the printer 2 can start printing if grayscale printing is specified as the print setting. In this case, the auxiliary program 42 determines that display is not necessary. Even if the size of the paper specified in the print settings and the size of the paper accommodated in the printer 2 are different, the auxiliary program 42 may determine that display is necessary.
  • the auxiliary program 42 determines that the display is necessary (alt: [required])
  • the auxiliary program 42 instructs the guide display application 44 to display the notification screen indicated by the screen information (A24).
  • A24 is an example of display request processing.
  • Screen information is an example of a parameter.
  • the screen information is information for specifying a notification screen to be displayed from among a plurality of notification screens provided by the guide display application 44 .
  • the screen information may be one piece of information specifying the entire notification screen, or may be a combination of partial information specifying information to be displayed on each part of the notification screen.
  • the auxiliary program 42 should also pass the consumable material information acquired from the printer 2 to the guide display application 44. FIG.
  • the auxiliary program 42 activates the guide display application 44 at A24 and passes the determined screen information to the guide display application 44. Let The auxiliary program 42 activates the guide display application 44, so that the notification screen can be reliably displayed.
  • the guide display application 44 causes the user IF 13 to display a notification screen corresponding to the received screen information from a plurality of notification screens provided in advance (A25). If the notification screen corresponding to the screen information includes a column for displaying the remaining amount of consumable goods and has also received the consumable goods information from the auxiliary program 42, the guide display application 44 uses the received consumable goods information to display the remaining amount of consumable goods. A quantity display image is generated, synthesized with the notification screen, and displayed.
  • FIG. 4 shows an example of a notification screen displayed by the guide display application 44 when "001-xxx" is received as screen information.
  • the notification screen 51 of the example shown in FIG. 4 includes a model name 511 of the printer 2, printer status information 512 indicating the status of the printer 2 and its cause, a button 513 for receiving an instruction to display the web Q&A page, and a colored A material remaining amount display 514 , a button 515 for receiving an instruction to display the genuine consumables site, and an image 516 showing the appearance of the printer 2 are included.
  • the guide display application 44 selects a notification screen including the model name 511, the printer status information 512, and the image 516 based on the screen information "001-xxx", and based on the consumables information, selects the selected notification screen. remaining amount display 514 is generated.
  • the printer status information 512 of the notification screen 51 in FIG. 4 a message indicating the status "printing stopped” as information indicating that the printer 2 is in the stopped printing state due to paper exhaustion, and the cause of the message are displayed.
  • a message indicating "out of paper” is displayed.
  • the notification screen 51 may further include information indicating the paper feed tray that is out of paper and an image indicating a paper storage method.
  • the remaining amount display 514 for example, the remaining amount of the coloring material of each color is displayed using a color bar.
  • a button 513 and a button 515 are buttons for accepting an instruction to display a predetermined page on the website provided by the vendor of the printer 2, respectively.
  • the guide display application 44 stores information indicating the URL corresponding to each button, and when receiving an operation to the button 513 or the button 515, launches the browser and performs a predetermined display based on the stored information. By passing the URL to the browser, the corresponding page is displayed on the user IF 13 .
  • the information stored by the guide display application 44 may be information for each printer model. Further, the information may be the URL itself, or may be information indicating the storage location where the URL is stored.
  • the notification screen 51 may further include a remaining amount display indicating the remaining amount of paper in each paper feed tray, images and messages regarding how to use the printer 2, advertisements and latest information on related products, and the like. For example, if the status of the printer 2 is cover open, the guide display application 44 may display an image indicating the position of the open cover.
  • the guide display application 44 that supports multiple models, by receiving screen information corresponding to the printer model, it is possible to display an appropriate notification screen that differs for each printer model with simple processing. In other words, the guide display application 44 can provide more detailed information suitable for the model, and can display an easier-to-understand notification screen.
  • the guide display application 44 is a program that operates as a separate process from the editing application 43.
  • the general-purpose print program 41 and auxiliary program 42 are programs that operate in the process of the editing application 43 .
  • the guide display application 44 and the auxiliary program 42 can operate in parallel, and the auxiliary program 42 determines that display is necessary and passes the display instruction to the guide display application 44 at A24. After that, regardless of the progress of the process by the guide display application 44, the next process can be continuously executed. For example, even when the guide display application 44 accepts an operation on the button 513 or the button 515 and starts displaying a web page, the processing by the auxiliary program 42 is continuously executed.
  • the auxiliary program 42 After outputting a display instruction to the guide display application 44 at A24, the auxiliary program 42 generates print data based on the intermediate image data and the print settings received at A14 (A31), and uses the generated print data for printing. It is sent to the printer 2 together with a print command instructing execution (A32).
  • the auxiliary program 42 determines in A22 that display is not necessary, it executes the processes of A31 and A32 without executing the processes of A23 and A24.
  • A31 and A32 are examples of processing for transmitting print data based on a print instruction to a printer. As a result, the printer 2 forms a printed matter. If printing is stopped when the printer 2 receives the print data transmitted in A32, the printer 2 waits for the cause to be resolved before executing printing.
  • the auxiliary program 42 determines whether display is necessary based on the printer status information or based on the relationship between the consumable material information and the print settings. Then, the auxiliary program 42 instructs display of the notification screen when determining that display is necessary, and does not instruct display of the notification screen when determining that display is not necessary. For example, if the status of the printer 2 is printing or waiting for print data, the auxiliary program 42 determines that display is not necessary at A22 and does not start the guide display application 44 . As a result, the display frequency of the notification screen can be reduced, and the annoyance caused by the display of the notification screen of low importance can be reduced. Note that the auxiliary program 42 may pass a display instruction to the guide display application 44 to display the remaining amount of coloring material and the progress of printing even when the display is not necessary.
  • the general-purpose print program 41 may generate print data. That is, the auxiliary program 42 may pass the intermediate image data, print setting information, and print execution information to the general-purpose print program 41 .
  • the general-purpose print program 41 may generate print data based on the intermediate image data and print settings received from the auxiliary program 42 and pass the generated print data to the auxiliary program 42 .
  • the print data generated by the general-purpose print program 41 is print data in a format that can be used for printing by various printers, such as PWGRaster data or PDF data. If the print data is generated by the general-purpose print program 41, the processing of the auxiliary program 42 is reduced, and an increase in processing time can be expected to be avoided, and the program size of the auxiliary program 42 can be suppressed.
  • the print data generated by the auxiliary program 42 is data in a format that can be used for printing by the printer 2, for example, PDL data dedicated to the model of the printer 2.
  • PDL data dedicated to the model of the printer 2.
  • the transmission of print data and the like to the printer 2 may be performed by the general-purpose print program 41 .
  • the auxiliary program 42 may pass the generated print data to the general-purpose print program 41 so that it is sent from the PC 1 with the printer 2 as the destination.
  • the general-purpose print program 41 sends the print data received from the auxiliary program 42 to the printer 2 via the OS 21 .
  • the printer 2 may have a function of rasterizing the intermediate image data. If the printer 2 has a rasterization function, the auxiliary program 42 issues a print command including intermediate image data of the image to be printed and print settings without generating print data of the image to be printed. It may be sent to the printer 2.
  • the process of generating print data and the process of transmitting print data or intermediate image data to the printer 2 are executed based on the print instruction, regardless of whether the execution subject is the auxiliary program 42, the general-purpose print program 41, or the printer 2. It is an example of processing for sending data to a printer.
  • the auxiliary program 42 and general-purpose printing program 41 of this embodiment can continue each process regardless of the progress of the process by the guide display application 44 .
  • the auxiliary program 42 When the transmission of the print data ends, the auxiliary program 42 notifies the general-purpose printing program 41 of the end of processing (A33). As a result, the general-purpose print program 41 ends the processing of the print instruction received at A12, and notifies the editing application 43 of the end of the processing (A34). By receiving the end notification from the general-purpose printing program 41, the editing application 43 receives the next instruction from the user, for example, an instruction to edit or print another document, even if the guide display application 44 is continuing processing. be in an acceptable state.
  • the auxiliary program 42 may acquire printer status information from the printer 2 after sending the print data and before notifying the general-purpose printing program 41 of completion. You may pass display instructions to For example, if authentication information is added to the transmitted print data, the printer 2 waits for input of the authentication information. 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 the print data to which the authentication information is added, it temporarily stores the print data in a memory and does not start printing until the input of the authentication information added to the print data is received.
  • the editing application 43 can also cause the user IF 13 to display a print screen for accepting instructions regarding printing before issuing an instruction to execute printing, and accept an instruction to start accepting detailed print settings.
  • the detailed print settings are, for example, print settings that use functions unique to the printer 2 , and include print settings that cannot be accepted by the editing application 43 .
  • the editing application 43 causes the general-purpose printing program 41 and the auxiliary program 42 to be executed even when a detailed print setting instruction is received.
  • the auxiliary program 42 may acquire the printer status information from the printer 2 even when receiving a detailed print setting instruction.
  • the editing application 43 When the editing application 43 accepts an instruction to start the printing procedure with the printer 2 selected (A01), it causes the user IF 13 to display a screen for accepting the printing instruction (A02). When receiving an instruction to start receiving detailed print settings on this screen (A03), the editing application 43 passes information on the received instruction to the general-purpose printing program 41 (A04).
  • the general-purpose printing program 41 causes the auxiliary program 42 corresponding to the printer 2 to be executed, and passes an execution instruction instructing reception of detailed print settings (A05).
  • the auxiliary program 42 starts operating based on the execution instruction from the general-purpose printing program 41, and causes the user IF 13 to display a setting screen for accepting detailed print settings (A06).
  • A06 is an example of screen display processing.
  • the auxiliary program 42 inquires of the printer 2 via the communication IF 14 and acquires printer status information and consumables information from the printer 2 (A21).
  • A21 is an example of acquisition processing, and an example of acquisition processing before printing.
  • the auxiliary program 42 determines whether display is necessary based on the acquired printer status information (A07). For example, if the status of the printer 2 is that an error has occurred or that printing is stopped, the auxiliary program 42 determines that display is necessary. Since the print settings have not been determined in A07, the auxiliary program 42 does not determine the necessity of display based on the consumable material information and the print settings, unlike the determination in A22.
  • the correspondence table 45 is used based on the printer status information that needs to be displayed and the model information of the printer 2 to display a notification.
  • Screen information indicating the screen is determined (A23).
  • the auxiliary program 42 passes a display instruction including the determined screen information to the guide display application 44 (A24).
  • A24 is an example of the display request process and an example of the pre-printing display request process.
  • Screen information is an example of a parameter.
  • the guide display application 44 causes the user IF 13 to display the notification screen to be displayed based on the received screen information (A25).
  • the user can determine whether or not to issue the print instruction based on the notification screen, and the user's operation or work can be expected to be completed earlier. . For example, if the status of the printer 2 is out of paper, it can be expected that paper will be inserted early. Also, depending on the status of the printer 2 and the consumables information, for example, by accepting a printer change instruction or an instruction to change the print setting from color printing to grayscale printing, it is expected that printing will be completed early.
  • the auxiliary program 42 determines that display is not necessary at A07, or after outputting a display instruction to the guide display application 44 at A24, it performs subsequent processing (not shown). Specifically, the auxiliary program 42 accepts the user's operation on the setting screen displayed at A06, and sets the print settings based on the accepted operation. Furthermore, upon receiving an instruction to end the detailed print settings from the user, the auxiliary program 42 notifies the general-purpose print program 41 of the end of processing. As a result, the general-purpose printing program 41 notifies the editing application 43 of the end of the detailed setting instruction received in A04. By receiving the end notification from the general-purpose printing program 41, the editing application 43 becomes ready to receive the next instruction from the user, for example, an instruction to execute printing.
  • the auxiliary program 42 of this embodiment acquires the printer status information from the printer 2 when there is a print instruction from the editing application 43, and sends a notification corresponding to the acquired printer status information.
  • the screen is displayed on a guide display application 44 of a process different from the editing application 43. - ⁇ As a result, the auxiliary program 42 and the editing application 43 do not have to wait for the end of the display to continue processing, and the processing for transmitting the print data based on the print instruction to the printer can be performed without waiting for the end of the display of the notification screen. can continue. Therefore, a delay in starting printing can be suppressed.
  • the present embodiment is a printing system 100 including a PC 1 and a printer 2, in which a guide display application 44 includes a correspondence table 45.
  • FIG. This embodiment differs from the first embodiment only in the program that uses the correspondence table 45, and the same configurations and processes as those in the first embodiment are denoted by the same reference numerals to simplify the description. .
  • the auxiliary program 42 uses the correspondence table 45 to determine screen information
  • the guide display application 44 uses the correspondence table 45 to determine screen information.
  • the contents of the correspondence table 45 of this embodiment are the same as those of the first embodiment.
  • the editing application 43 When the editing application 43 receives a print execution instruction from the user (A11), it passes the print instruction to the general-purpose print program 41 (A12).
  • the general-purpose print program 41 generates intermediate image data based on the print instruction (A13), and passes an execution instruction to the auxiliary program 42 (A14).
  • the auxiliary program 42 acquires printer status information and consumables information from the printer 2 (A21).
  • the auxiliary program 42 passes the printer status information acquired from the printer 2 to the guide display application 44 (A41), and instructs the guide display application 44 to display.
  • A41 is an example of display request processing.
  • the auxiliary program 42 also passes the print settings received by the execution instruction at A14, the model information of the printer 2, and the consumables information acquired at A21 to the guide display application 44.
  • Information including printer status information, which is passed to the guide display application 44 in A41, is an example of a parameter. If the guide display application 44 has not been started, the auxiliary program 42 starts the guide display application 44 at A41.
  • the auxiliary program 42 After instructing the guide display application 44 to display, the auxiliary program 42 continues to execute the following processing. That is, the auxiliary program 42 generates print data (A31) and transmits the generated print data to the printer 2 (A32). Further, the auxiliary program 42 notifies the general-purpose printing program 41 of the end of processing (A33), and the general-purpose printing program 41 notifies the editing application 43 of the end of processing (A34). The general-purpose print program 41 may generate and transmit print data.
  • the processing of the auxiliary program 42 after A31 and the general-purpose printing program 41 is an example of processing for transmitting print data based on a print instruction to the printer. Even with the auxiliary program 42 and the general-purpose printing program 41 of this embodiment, each process can be continued regardless of the progress of the process by the guide display application 44 .
  • the guide display application 44 determines whether display is necessary based on the information received from the auxiliary program 42 in A41 (A51). Since the received information does not include screen information, the guide display application 44 determines that the determination of A51 is necessary. Alternatively, the auxiliary program 42 may pass an instruction to the guide display application 44 to determine the necessity of display at A41.
  • the processing of A51 by the guide display application 44 may be the same as the processing of A22 in FIG. 3 by the auxiliary program 42.
  • the determination of A51 is performed by the guide display application 44 by a process different from that of the editing application 43, so the order with A32 is not limited. That is, A51 may precede or follow A32, or may be executed in parallel.
  • the guide display application 44 determines that display is necessary (alt: [required]), based on the information received in A41, the correspondence table 45 provided by the guide display application 44 is used to display a notification screen. is determined (A52).
  • the processing of A52 by the guide display application 44 is the same processing as the processing of A23 in FIG.
  • the guide display application 44 displays the notification screen on the user IF 13 based on the determined screen information (A53).
  • the guide display application 44 determines in A51 that the display is not necessary, it does not execute A52 and A53 and does not display the notification screen.
  • the auxiliary program 42 can quickly execute print data generation and transmission processing. On the other hand, if the auxiliary program 42 determines the necessity, the chances of executing the guide display application 44 are reduced, and the processing load of the guide display application 44 is reduced.
  • the auxiliary program 42 may determine the necessity of display, and the guide display application 44 may determine the screen information indicating the notification screen to be displayed. Specifically, in the process shown in FIG. 3, the auxiliary program 42 makes the determination of A22, and if it determines that it is necessary, the auxiliary program 42 outputs the same information and display instructions as in A41 of FIG. may be passed to the guide display application 44. In that case, the guide display application 44 does not perform A51 of FIG. 7, but performs A52 and A53 to display the notification screen.
  • the guide display application 44 determines and displays the notification screen to be displayed, the guide display application 44 is changed to change the display target notification screen. You can flexibly change the notification screen.
  • the guide display application 44 simply displays the screen based on the received information, which is a simple process.
  • the guide display application 44 separate from the auxiliary program 42 has the notification screen information, and the auxiliary program 42 displays the notification screen as a guide display. Leave it to the application 44. Therefore, when it is necessary to change the contents of the notification screen, for example, when updating the product advertisement or the latest information being displayed, the vendor of the printer 2 can change the guide display application 44 without changing the auxiliary program 42 . This can be resolved by updating the .
  • processing for display is shared in the auxiliary program 42, there is no need to develop a plurality of auxiliary programs 42 for different notification screens, and the auxiliary program 42 can be shared.
  • the device connected to the PC 1 is not limited to a printer, and may be a device having a printing function such as a multifunction machine, a copier, a FAX machine, or the like.
  • the number of devices included in the printing system 100 is not limited to the illustrated example, and may be two or more.
  • the illustrated notification screen is an example and is not limited to this.
  • the arrangement and number of each message and each button displayed on the notification screen are not limited to the illustrated examples.
  • the notification screen is displayed when the user's operation is required. However, when the print instruction is received, the notification screen may be displayed regardless of the status.
  • the guide display application 44 may be able to communicate with the printer 2 .
  • the guide display application 44 may be operated and the guide display application 44 may acquire the printer status information from the printer 2 .
  • the guide display application 44 may be capable of accepting an instruction to cancel printing from the user, and may transmit a cancel command to the printer 2 when the instruction to cancel printing is accepted.
  • the guide display application 44 has various notification screens, but part of the information on the notification screen may be obtained from an external device. For example, if the printer 2 has information on the exterior image of the printer 2, the guide display application 44 may acquire the information from the printer 2 and combine it with the notification screen to be displayed.
  • the correspondence table 45 includes model information, for example, if the guide display application 44 is a program that supports only the model or model series of the printer 2, the correspondence table 45 does not include the model information. Also good. Also, the correspondence table 45 may be stored in an external device such as a server. In that case, the auxiliary program 42 or the guide display application 44 may acquire the correspondence table 45 from the external device and use it.
  • the guide display application 44 is not limited to a program that is activated in response to an instruction from the auxiliary program 42, and may be a program that resides on the PC1. Further, the guide display application 44 is not limited to the auxiliary program 42, and may be capable of receiving a display instruction from another program, such as a printer driver, that causes the printer 2 to perform a specific operation. Further, the guide display application 44 may have both the functions of the first form and the functions of the second form. In that case, the guide display application 44 may determine whether or not to determine the necessity of display according to the received parameters.
  • 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 also have other roles.
  • the program that executes the processing of this embodiment is not limited to the auxiliary program 42, and 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.
  • a print workflow application Print workflow
  • Microsoft Corporation may be used.
  • the execution timing of the auxiliary program 42 is not limited to the example of the embodiment. For example, it may be directly instructed by the OS 21 to be executed, or may be a resident auxiliary program 42 . In the case of being resident, the auxiliary program 42 may perform the operations described above upon receiving an execution instruction.
  • processing disclosed in the embodiments may be executed by a single CPU, multiple CPUs, hardware such as ASIC, or a combination thereof. Further, the processes disclosed in the embodiments can be realized in various forms such as a recording medium recording a program for executing the processes, a method, and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (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標準の汎用印刷プログラムが組み込まれた情報処理装置において、印刷開始の遅延を抑制しつつ、プリンタから取得した情報に基づく通知を行う技術を提供する。 補助プログラム42によって、PC1は、汎用印刷プログラム41に対して画像の印刷をプリンタ2に行わせる印刷指示が編集アプリ43から出力された場合に、通信IF14を介してプリンタ2からプリンタ状態情報を取得し、取得したプリンタ状態情報に基づく画面情報をガイド表示アプリ44に渡す。ガイド表示アプリ44は、編集アプリ43とは別のプロセスとして動作し、受け取った画面情報に対応する通知画面をユーザIF13に表示させることができる。さらに補助プログラム42は、ガイド表示アプリ44による通知画面の表示終了を待つことなく、印刷指示に基づく印刷データをプリンタ2に送信するための処理を継続させる。

Description

サポートプログラムおよび印刷システム
 本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラムおよび印刷システムに関する。
 近年、プリンタドライバを利用せず、オペレーティングシステム(OS)に標準に組み込まれている汎用印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタを検知するとOS標準の汎用印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタドライバを用いずに、OS標準の汎用印刷プログラムによる印刷が可能になる。
 また、情報処理装置に印刷指示が入力された際に、その情報処理装置がプリンタのステータスを取得し、取得したステータスに基づく通知を行う技術が知られている。前述した汎用印刷プログラムが組み込まれた情報処理装置においてプリンタのステータスを通知する技術としては、例えば特許文献1がある。特許文献1には、汎用印刷プログラムに対して印刷指示があった場合に、汎用印刷プログラムが補助プログラムを起動し、補助プログラムがプリンタから現況情報を取得し、取得した現況情報に基づくメッセージを表示する構成が開示されている。
特開2020-160989号公報
 前述した補助プログラムがメッセージを表示する構成では、メッセージが終了したことを待って汎用印刷プログラムに制御を戻し、汎用印刷プログラムから印刷データが送信される。そのため、印刷開始が遅延し易い。
 本明細書は、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、印刷開始の遅延を抑制しつつ、プリンタから取得した情報に基づく通知を行う技術を開示する。
 上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応し、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムをサポートするサポートプログラムであって、前記コンピュータに、前記情報処理装置に組み込まれている編集アプリケーションプログラムから出力された印刷指示であって、前記汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、前記情報処理装置の通信インタフェースを介して、前記プリンタから前記プリンタの現況情報を取得する取得処理と、前記取得処理にて取得された前記現況情報に基づくパラメータを、前記情報処理装置に組み込まれている表示アプリケーションプログラムに渡すことで、前記現況情報に対応する通知を行う通知画面の表示を、前記表示アプリケーションプログラムに要求する表示要求処理と、を実行させ、前記表示アプリケーションプログラムは、前記編集アプリケーションプログラムとは別のプロセスとして動作し、前記パラメータに対応する前記通知画面を前記情報処理装置のユーザインタフェースに表示させることが可能なプログラムであり、さらに前記コンピュータに、前記印刷指示があった場合に、前記表示アプリケーションプログラムによる前記通知画面の表示終了を待つことなく、前記印刷指示に基づく印刷データを前記プリンタに送信するための処理を継続させる、ことを特徴としている。
 本明細書に開示されるサポートプログラムによれば、情報処理装置は、編集アプリケーションプログラムからの印刷指示があった場合に、プリンタから現況情報を取得し、その取得した現況情報に対応する通知画面の表示を、編集アプリケーションプログラムとは別のプロセスの表示アプリケーションプログラムに要求する。表示アプリケーションプログラムは、編集アプリケーションプログラムとは別のプロセスとしてサポートプログラムから独立して動作し、要求に基づいて通知画面をユーザインタフェースに表示させる。これにより、サポートプログラムおよび編集アプリケーションプログラムが処理を継続するにあたって、表示の終了を待つ必要がなくなり、通知画面の表示終了を待つことなく、印刷指示に基づく印刷データをプリンタに送信するための処理を継続する。従って、プリンタから取得した情報に基づく通知を行っても、印刷開始の遅延を抑制できる。
 上記サポートプログラムを含む印刷システム、サポートプログラムが組み込まれた情報処理装置、サポートプログラムを格納するコンピュータにて読取可能な記憶媒体、および、サポートプログラムの機能を実現するための制御方法も、新規で有用である。
 本明細書に開示される技術によれば、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、印刷開始の遅延を抑制しつつ、プリンタから取得した情報に基づく通知を行う技術が実現される。
印刷システムの電気的構成の概略を示すブロック図である。 対応表の例を示す説明図である。 印刷指示を受け付けた場合の各プログラムによる動作の手順の例を示すシーケンス図である。 通知画面の例を示す説明図である。 詳細な印刷設定の指示を受け付けた場合の各プログラムによる動作の手順の例を示すシーケンス図である。 印刷システムの電気的構成の概略を示すブロック図である。 印刷指示を受け付けた場合の各プログラムによる動作の手順の例を示すシーケンス図である。
 以下、サポートプログラムを具体化した第1の形態について、添付図面を参照しつつ詳細に説明する。本形態は、図1に示すように、サポートプログラムを利用するパーソナルコンピュータ(以下、「PC」とする)1と、印刷機能を有するプリンタ2と、を含む印刷システム100を開示するものである。
 本形態のPC1は、図1に示すように、CPU11と、メモリ12と、を含むコントローラ10を備えている。PC1は、情報処理装置の一例である。CPU11は、コンピュータの一例である。また、PC1は、ユーザインタフェース(以下、「ユーザIF」とする)13と、通信インタフェース(以下、「通信IF」とする)14と、を備え、これらがコントローラ10に電気的に接続されている。なお、図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。
 CPU11は、メモリ12から読み出したプログラムに従って、また、ユーザの操作に基づいて、各種の処理を実行する。メモリ12には、各種のアプリケーションプログラム(以下、「アプリ」とする)を含む、各種のプログラムや各種のデータが記憶されている。メモリ12は、各種の処理が実行される際の作業領域としても利用される。CPU11が備えるバッファも、メモリの一例である。なお、メモリ12の一例は、PC1に内蔵されるROM、RAM、HDD等に限らず、CPU11が読み取り可能かつ書き込み可能なストレージ媒体、例えば、CD-ROM、DVD-ROM等の記録媒体であっても良い。
 ユーザIF13は、ユーザに情報を報知するための画面を表示するハードウェアと、ユーザによる操作を受け付けるハードウェアと、を含む。なお、ユーザIF13は、情報を表示可能なディスプレイと、入力受付機能を有するマウスやキーボード等と、の組であっても良いし、表示機能と入力受付機能とを備えるタッチパネルであっても良い。
 通信IF14は、プリンタ2等の外部装置と通信を行うためのハードウェアを含む。通信IF14の通信規格は、イーサネット(富士フィルムビジネスイノベーションの日本登録商標)、Wi-Fi(Wi-Fi Allianceの日本登録商標)、USBなどである。PC1は、複数の通信規格に対応する複数の通信IF14を備えていてもよい。
 PC1のメモリ12には、図1に示すように、汎用印刷プログラム41を含むオペレーティングシステム(以下、「OS」とする)21と、補助プログラム42と、編集アプリ43と、ガイド表示アプリ44と、が記憶されている。補助プログラム42には、対応表45が含まれる。補助プログラム42は、サポートプログラムの一例である。編集アプリ43は、編集アプリケーションプログラムの一例である。ガイド表示アプリ44は、表示アプリケーションプログラムの一例である。
 OS21は、複数のタスクを管理して切り換えることにより複数のタスクを並行して処理できるマルチタスクOSであり、例えば、Windows(Microsoft Corporationの日本登録商標)、macOS(Apple Inc.の日本登録商標)、Linux(Linus Torvaldsの日本登録商標)、iOS(Cisco Technology Inc.の日本登録商標)、Android(Google Inc.の日本登録商標)のいずれかである。
 汎用印刷プログラム41は、ユーザの指示に基づいて、プリンタ2等の各種のプリンタに印刷を実行させるためのOS標準のプログラムである。本形態の汎用印刷プログラム41は、印刷対象の画像データに基づいて、中間画像データを生成する機能を含むプログラムである。中間画像データは、例えば、XPSデータである。
 汎用印刷プログラム41は、各種のプリンタのベンダによって提供される複数種類のモデルのプリンタが共通に利用できる機能をサポートしている。汎用印刷プログラム41は、各種のプリンタが固有に備える機能の全てに対応するものではなく、サポートする機能は汎用的なものに限られる。
 補助プログラム42は、汎用印刷プログラム41の処理に付随してOS21からの指示に基づいて処理を実行するプログラムまたはプログラム群であり、対象のハードウェアの制御をサポートするアプリである。本形態の補助プログラム42は、PC1に接続されているプリンタ2のモデルに対応するものであり、例えば、汎用印刷プログラム41を使用してプリンタ2に印刷を実行させる指示を受け付けた場合に、汎用印刷プログラム41から起動される。補助プログラム42は、例えば、ハードウェアサポートアプリ(略称、HSA)と呼ばれる。
 補助プログラム42は、汎用印刷プログラム41から複数種の命令を受け付け可能であり、受け付けた命令に基づいて、各種の処理を実行する。なお、補助プログラム42は、それぞれが実行命令を受け付ける複数のプログラムの組み合わせであっても良いし、1つのプログラムであって命令に応じてそれぞれ異なる処理を実行できるプログラムであっても良い。
 補助プログラムは、プリンタのベンダによってプリンタのタイプごとに用意されるプログラムであっても良い。例えば、インクジェットプリンタ用の補助プログラムやレーザプリンタ用の補助プログラムが、それぞれ用意されても良い。PC1のOS21は、例えば、新たなプリンタがPC1に接続された場合、接続されたプリンタのタイプに応じて、適切な補助プログラムを、プリンタのベンダのサーバ等からダウンロードしてPC1に組み込む。そして、OS21は、組み込んだ補助プログラムの識別情報を新たに接続されたプリンタのプリンタ情報に対応付けて、メモリ12に記憶させる。なお、プリンタのタイプごとに限らず、プリンタのモデルごとやプリンタのモデルのシリーズごとに用意される補助プログラムが有っても良い。
 編集アプリ43は、例えば、画像データや文書データの作成や編集を行うためのアプリである。編集アプリ43は、例えば、マイクロソフト(Microsoft Corporationの日本登録商標)製のワード(Microsoft Corporationの日本登録商標)やパワーポイント(Microsoft Corporationの日本登録商標)などであっても良いし、プリンタ2のベンダから提供されるアプリであっても良い。編集アプリ43は、ユーザIF13を介して、例えば、プリンタ2に印刷を実行させる印刷実行指示を受け付け可能である。
 ガイド表示アプリ44は、補助プログラム42からの指示に基づいて、所定の通知画面をユーザIF13に表示可能なプログラムである。本形態のガイド表示アプリ44は、プリンタ2のモデルを含む複数のモデルに対応可能なプログラムであって、ユーザIF13に表示させるためのモデルごとに複数の通知画面を備えている。なお、本形態のガイド表示アプリ44は、少なくともプリンタ2のモデルに対応していれば良く、例えば、プリンタのモデルのシリーズごとに用意されるプログラムであっても良い。
 対応表45は、例えば、図2に示すように、プリンタのステータスを含むプリンタ状態情報と、プリンタのモデルを示すモデル情報と、ガイド表示アプリ44に表示させる通知画面を指定する画面情報と、が互いに関係づけられた情報である。補助プログラム42は、対応表45に基づいて、プリンタ状態情報とモデル情報とから画面情報を取得できる。ガイド表示アプリ44や対応表45についての詳細は、後述する。
 本形態のプリンタ2は、印刷機能を有する装置である。PC1は、通信IF14を介して、プリンタ2と通信可能である。プリンタ2は、例えば、PC1等から印刷データを受信した場合、受信した印刷データに基づく印刷を実行可能である。
 本形態のプリンタ2は、プリンタ2のステータスに基づいてプリンタ状態情報を生成し、外部装置からの要求に応じてプリンタ状態情報を送信する機能を有している。プリンタ2のステータスは、例えば、印刷実行中、印刷データの待機中、印刷停止中、エラー発生中、である。ステータスが印刷停止中やエラー発生中である場合、プリンタ状態情報には、その要因を示す情報も含まれる。
 本形態のプリンタ2は、さらに、プリンタ2に収容されている消費材の状況を示す消費材情報を生成し、外部装置からの要求に応じて消費材情報を送信する機能を有していても良い。消費材は、例えば、印刷用の用紙、インクやトナー等の着色材、である。消費材情報は、具体的には、プリンタ2に収容されている着色材の色ごとの残量、各給紙トレイに収容されている用紙の有無やサイズ、等を示す情報である。
 次に、本形態の補助プログラム42の動作を含む印刷の手順について、図3のシーケンス図を参照して説明する。図3は、汎用印刷プログラム41に対してプリンタ2に印刷を行わせるユーザの印刷指示を、編集アプリ43が受け付けた場合における、各プログラムによる動作について示している。
 なお、本形態における処理およびフローチャートの各処理ステップは、基本的に、補助プログラム42などのプログラムに記述された命令に従ったCPU11の処理を示す。CPU11による処理は、OS21のAPIを用いたハードウェア制御も含む。本明細書では、OS21の詳細な記載を省略して各プログラムの動作を説明する。また、「取得」は要求を必須とはしない概念で用いる。
 編集アプリ43は、ユーザの指示に基づいて、文章や図表等の作成や編集を受け付ける。そして、編集アプリ43は、汎用印刷プログラム41に対して選択中の文章等に基づく画像の印刷をプリンタ2に行わせる印刷実行指示を受け付けると(A11)、OS21を介して、印刷指示を汎用印刷プログラム41に渡す(A12)。汎用印刷プログラム41は、印刷指示にて、印刷対象の画像の画像データを示す情報と印刷設定を示す情報と、を取得する。
 汎用印刷プログラム41は、受け取った印刷指示に含まれる画像データの形式を中間画像データの形式に変換することで中間画像データを生成し(A13)、中間画像データを含む印刷ジョブを生成する。編集アプリ43から渡される画像データは種々のタイプのものであり、汎用印刷プログラム41は、受け取った画像データを、印刷データの生成に適した中間画像データに変換する。なお、印刷指示に含まれる画像データが印刷データの生成に適したデータであれば、中間画像データの生成を省略し、そのまま中間画像データとしても良い。
 汎用印刷プログラム41は、さらに、プリンタ2に対応するプログラムである補助プログラム42に実行指示を出力し(A14)、補助プログラム42を動作させる。実行指示では、A13にて生成された中間画像データと印刷設定を示す情報とが補助プログラム42に渡される。
 補助プログラム42は、通信IF14を介してプリンタ2と通信し、プリンタ2から現在の状況を示すプリンタ状態情報を取得する(A21)。A21は、取得処理の一例である。つまり、補助プログラム42は、プリンタ2に対してプリンタ状態情報を要求し、プリンタ2は、補助プログラム42からの要求に応じて、プリンタ2のステータスに基づくプリンタ状態情報を補助プログラム42に返信する。なお、本形態では、補助プログラム42は、A21にてプリンタ状態情報と消費材情報とを要求し、これらの情報をプリンタ2から取得する。プリンタ状態情報と消費材情報とは、現況情報の一例である。
 なお、補助プログラム42とプリンタ2との通信は、例えば、MIB(Management Information Baseの略)を使って、補助プログラム42が直接プリンタ2と通信しても良いし、OS21を介して行っても良い。OS21を介して行う場合、補助プログラム42とプリンタ2とは、例えば、IPP(internet printing protocolの略)等のOS21の通信規約に応じた通信を行う。
 補助プログラム42は、プリンタ2から受信したプリンタ状態情報と、A14にて受け取った実行指示に含まれる印刷設定と、に基づいて、表示が必要であるか否かを判断する(A22)。具体的には、補助プログラム42は、プリンタ2が受信した印刷データに基づく印刷を開始するためには、プリンタ2におけるユーザの操作が必要な状況である場合、言い換えると、ユーザの操作を受け付けないと印刷を開始できない状況である場合に、表示が必要であると判断する。
 補助プログラム42は、例えば、プリンタ2のステータスがエラー発生中や印刷停止中であれば、表示が必要であると判断する。エラー発生中や印刷停止中は、所定の表示条件を満たすステータスの一例である。プリンタ2のステータスがエラー発生中や印刷停止中である場合、その要因が解消されるまでプリンタ2は印刷を開始できない。プリンタ2にて発生するエラーには、例えば、用紙ジャム、メモリフル、がある。プリンタ2の印刷ヘッドや感光体等の部品の交換が必要な状態でも、プリンタ2ステータスはエラーとなる。また、印刷停止中となる要因には、例えば、印刷実行中の用紙切れや着色材切れ、プリンタ2のカバーオープン、排紙トレイ満杯、がある。
 また、補助プログラム42は、プリンタ状態情報がエラー発生中や印刷停止中ではなくても、消費材情報と印刷設定との関係が、ユーザによる解消を必要とする所定の関係を満たす場合にも、表示が必要であると判断する。例えば、プリンタ2がカラーの着色材切れの状態であって、印刷設定としてカラー印刷が指示されている場合、プリンタ2は、着色材が補充されるまで印刷を開始できない。この場合、補助プログラム42は、表示が必要であると判断する。一方、カラーの着色材切れの状態であっても、印刷設定としてグレースケール印刷が指示されている場合には、プリンタ2は、印刷を開始できる。この場合、補助プログラム42は、表示が必要ではないと判断する。印刷設定にて指定されている用紙とプリンタ2に収容されている用紙とのサイズが異なる場合にも、補助プログラム42は、表示が必要であると判断すると良い。
 補助プログラム42は、表示が必要であると判断した場合(alt:[必要])、A21にて取得したプリンタ状態情報とプリンタ2のモデル情報とに基づいて、対応表45を用いて、ユーザIF13に表示させる通知画面を示す画面情報を決定する(A23)。例えば、「xxxシリーズ」のプリンタ2のステータスが「印刷停止中」であって、その要因が「用紙切れ」である場合、補助プログラム42は、画面情報を「001-xxx」であると決定する。
 さらに、補助プログラム42は、決定した画面情報を渡すことで、ガイド表示アプリ44に、その画面情報によって示される通知画面の表示を指示する(A24)。A24は、表示要求処理の一例である。画面情報は、パラメータの一例である。画面情報は、ガイド表示アプリ44の備える複数の通知画面から、表示対象の通知画面を特定する情報である。画面情報は、通知画面の全体を指定する1つの情報であっても良いし、通知画面の部分ごとに、その部分に表示させる情報を指定する部分情報の組み合わせであっても良い。なお、A24では、補助プログラム42は、プリンタ2から取得した消費材情報もガイド表示アプリ44に渡すと良い。
 なお、ガイド表示アプリ44が起動していない場合には、補助プログラム42は、A24にてガイド表示アプリ44を起動して、前述の決定した画面情報をガイド表示アプリ44に渡す。させる。補助プログラム42がガイド表示アプリ44を起動させることで、通知画面を確実に表示させることができる。
 ガイド表示アプリ44は、予め備える複数の通知画面から、受け取った画面情報に対応する通知画面をユーザIF13に表示させる(A25)。画面情報に対応する通知画面中に消費材の残量表示欄が含まれ、補助プログラム42から消費材情報も受け取っている場合には、ガイド表示アプリ44は、受け取った消費材情報を用いて残量表示画像を生成して、通知画面に合成して表示する。
 画面情報として「001-xxx」を受け取った場合に、ガイド表示アプリ44によって表示される通知画面の例を、図4に示す。図4に示す例の通知画面51には、プリンタ2のモデル名511と、プリンタ2のステータスとその要因を示すプリンタ状態情報512と、ウェブQ&Aのページを表示する指示を受け付けるボタン513と、着色材の残量表示514と、純正消耗品サイトを表示する指示を受け付けるボタン515と、プリンタ2の外観を示すイメージ516と、が含まれる。ガイド表示アプリ44は、画面情報の「001-xxx」に基づいて、モデル名511とプリンタ状態情報512とイメージ516とを含む通知画面を選択し、消費材情報に基づいて、選択した通知画面中の残量表示514を生成する。
 図4の通知画面51のプリンタ状態情報512には、プリンタ2のステータスが用紙切れによる印刷停止中であることを示す情報として、ステータスである「印刷停止中」を示すメッセージと、その要因である「用紙切れ」を示すメッセージと、が表示される。通知画面51にはさらに、用紙切れである給紙トレイを示す情報や用紙の収容方法を示す画像が含まれても良い。残量表示514には、例えば、各色の着色材の残量がカラーバーで表示される。
 ボタン513とボタン515とは、それぞれ、プリンタ2のベンダによって提供されるウェブサイトの所定のページを表示させる指示を受け付けるボタンである。ガイド表示アプリ44は、各ボタンに対応するURLを示す情報を記憶しており、ボタン513またはボタン515への操作を受け付けた場合、ブラウザを起動して、記憶している情報に基づいて所定のURLをブラウザに渡すことで、該当するページをユーザIF13に表示させる。ガイド表示アプリ44が記憶している情報は、プリンタのモデルごとの情報であっても良い。また、その情報は、URLそのものであっても良いし、URLを記憶している記憶場所を示す情報であっても良い。
 なお、通知画面51には、さらに、各給紙トレイの用紙残量を示す残量表示、プリンタ2の使用方法に関する画像やメッセージ、関連商品の広告や最新情報、などが含まれても良い。例えば、プリンタ2のステータスがカバーオープンであれば、ガイド表示アプリ44は、開いているカバーの位置を示す画像を表示させても良い。
 複数のモデルに対応するガイド表示アプリ44であっても、プリンタのモデルに対応した画面情報を受け取ることで、シンプルな処理でプリンタのモデルごとに異なる適切な通知画面を表示させることができる。つまり、ガイド表示アプリ44は、モデルに適したより詳細な情報を提供可能になり、より分かり易い通知画面を表示できる。
 ガイド表示アプリ44は、編集アプリ43とは別のプロセスとして動作するプログラムである。一方、汎用印刷プログラム41と補助プログラム42は、編集アプリ43のプロセス中で動作するプログラムである。つまり、ガイド表示アプリ44と補助プログラム42は、並行して動作することが可能であり、補助プログラム42は、表示が必要であると判断してA24にてガイド表示アプリ44に表示指示を渡した後も、ガイド表示アプリ44による処理の進行状況に関わらず、継続して次の処理を実行できる。例えば、ガイド表示アプリ44にてボタン513やボタン515への操作を受け付け、ウェブページの表示を開始した場合であっても、補助プログラム42による処理は継続して実行される。
 補助プログラム42は、A24にてガイド表示アプリ44に表示指示を出力すると、A14にて受け取った中間画像データと印刷設定とに基づいて印刷データを生成し(A31)、生成した印刷データを印刷の実行を指示する印刷コマンドとともに、プリンタ2に送信する(A32)。一方、補助プログラム42は、A22にて表示が必要ではないと判断した場合には、A23とA24の処理を実行することなく、A31とA32の処理を実行する。A31とA32は、印刷指示に基づく印刷データをプリンタに送信するための処理の一例である。これにより、プリンタ2にて印刷物が形成される。なお、プリンタ2は、A32にて送信された印刷データを受け取った際に印刷停止中であれば、その要因が解消されるのを待って、印刷を実行する。
 補助プログラム42は、プリンタ状態情報に基づいて、または、消費材情報と印刷設定との関係に基づいて、表示が必要であるか否かを判断する。そして、補助プログラム42は、表示が必要であると判断した場合に通知画面の表示を指示し、表示が必要ではないと判断した場合には通知画面の表示を指示しない。例えば、プリンタ2のステータスが、印刷実行中や印刷データの待機中であれば、補助プログラム42は、A22にて表示が必要ではないと判断し、ガイド表示アプリ44を起動しない。これにより、通知画面の表示頻度が減り、重要度が低い通知画面の表示による煩わしさを軽減できる。なお、補助プログラム42は、表示が必要ではない場合であっても、着色材の残量や印刷の進行状況を表示させる表示指示をガイド表示アプリ44に渡しても良い。
 なお、補助プログラム42が印刷データを生成する代わりに、汎用印刷プログラム41が印刷データの生成を行っても良い。つまり、補助プログラム42は、中間画像データと、印刷設定の情報と、印刷実行の情報と、を汎用印刷プログラム41に渡しても良い。汎用印刷プログラム41は、補助プログラム42から受け取った中間画像データと印刷設定とに基づいて印刷データを生成し、生成した印刷データを補助プログラム42に渡しても良い。
 汎用印刷プログラム41によって生成される印刷データは、各種のプリンタにて印刷に使用できる形式の印刷データであり、例えば、PWGRasterデータ、または、PDFデータである。汎用印刷プログラム41によって印刷データを生成するとすれば、補助プログラム42の処理が少なく、処理時間増大の回避が見込まれ、また、補助プログラム42のプログラムサイズが抑えられる。
 一方、補助プログラム42によって生成される印刷データは、プリンタ2にて印刷に使用できる形式のデータであり、例えば、プリンタ2のモデルに専用のPDLデータである。プリンタ2に対応する補助プログラム42にて印刷データを生成することで、汎用印刷プログラム41にて印刷データを生成する場合に比較してプリンタ2の処理の自由度を大きくでき、あるいは、プリンタ2の処理負荷を小さくできる。
 また、プリンタ2への印刷データ等の送信は、汎用印刷プログラム41が行っても良い。つまり、補助プログラム42は、生成した印刷データを、プリンタ2を送信先としてPC1から送信されるように、汎用印刷プログラム41に渡しても良い。この場合、汎用印刷プログラム41は、補助プログラム42から受け取った印刷データを、OS21を介してプリンタ2に送信する。
 また、プリンタ2は、中間画像データをラスタライズする機能を有していても良い。プリンタ2がラスタライズの機能を有している場合には、補助プログラム42は、印刷対象の画像の印刷データを生成することなく、印刷対象の画像の中間画像データと印刷設定とを含む印刷コマンドをプリンタ2に送信しても良い。
 印刷データを生成する処理や印刷データまたは中間画像データをプリンタ2に送信する処理は、その実行主体が補助プログラム42、汎用印刷プログラム41、プリンタ2、のいずれであっても、印刷指示に基づく印刷データをプリンタに送信するための処理の一例である。本形態の補助プログラム42や汎用印刷プログラム41は、ガイド表示アプリ44による処理の進行状況に関わらず、各処理を継続可能である。
 印刷データの送信が終了したら、補助プログラム42は、汎用印刷プログラム41に処理の終了を通知する(A33)。これにより、汎用印刷プログラム41は、A12にて受け付けた印刷指示の処理を終了し、処理の終了を編集アプリ43に通知する(A34)。汎用印刷プログラム41からの終了通知を受け取ることで、編集アプリ43は、ガイド表示アプリ44が処理を継続中であったとしても、ユーザによる次の指示、例えば、別の文書の編集や印刷指示を受け付け可能な状態となる。
 なお、補助プログラム42は、印刷データの送信後、汎用印刷プログラム41に終了を通知する前にも、プリンタ2からプリンタ状態情報を取得しても良く、取得したステータスに応じて、ガイド表示アプリ44に表示指示を渡しても良い。例えば、送信した印刷データに認証情報が付加されている場合、プリンタ2は、認証情報の入力待ち状態となる。そこで、補助プログラム42は、ガイド表示アプリ44に、認証情報の入力方法を示す画像を表示させても良い。プリンタ2は、認証情報が付加された印刷データを受信した場合、その印刷データを一旦メモリに保管し、印刷データに付加された認証情報の入力を受け付けるまで印刷を開始しない。
 また、編集アプリ43は、印刷実行の指示の前に、印刷に関する指示を受け付けるための印刷画面をユーザIF13に表示させ、詳細な印刷設定の受け付け開始の指示を受け付けることもできる。詳細な印刷設定は、例えば、プリンタ2に固有の機能を利用する印刷設定であり、編集アプリ43では受け付けることのできない印刷設定も含まれる。編集アプリ43は、詳細な印刷設定の指示を受け付けた場合も、汎用印刷プログラム41および補助プログラム42を実行させる。そして、補助プログラム42は、詳細な印刷設定の指示を受け付けた場合にも、プリンタ2からプリンタ状態情報を取得しても良い。
 詳細な印刷設定の指示を受け付けた場合における、各プログラムによる動作の手順について、図5のシーケンス図を参照して説明する。図5のシーケンス図に示す手順は、図3に示した手順に先立って実行される。なお、以下では、図3のシーケンス図と同様の手順については、同じ符号を付し、説明を簡略化する。
 編集アプリ43は、プリンタ2が選択された状態で、印刷に関する手順を開始する指示を受け付けると(A01)、印刷に関する指示を受け付ける画面を、ユーザIF13に表示させる(A02)。この画面にて詳細な印刷設定の受け付け開始の指示を受け付けた場合(A03)、編集アプリ43は、受け付けた指示の情報を汎用印刷プログラム41に渡す(A04)。汎用印刷プログラム41は、プリンタ2に対応する補助プログラム42を実行させ、詳細な印刷設定の受け付けを指示する実行指示を渡す(A05)。
 補助プログラム42は、汎用印刷プログラム41からの実行指示に基づいて動作を開始し、詳細な印刷設定を受け付けるための設定画面をユーザIF13に表示させる(A06)。A06は、画面表示処理の一例である。さらに、補助プログラム42は、通信IF14を介してプリンタ2に問い合わせ、プリンタ2からプリンタ状態情報や消費材情報を取得する(A21)。この場合、A21は、取得処理の一例であり、印刷前取得処理の一例である。
 補助プログラム42は、取得したプリンタ状態情報に基づいて、表示が必要であるか否かを判断する(A07)。補助プログラム42は、例えば、プリンタ2のステータスがエラー発生中や印刷停止中であれば、表示が必要であると判断する。A07では、印刷設定は決定していないことから、補助プログラム42は、A22における判断とは異なり、消費材情報と印刷設定とに基づく表示の必要性の判断は行わない。
 補助プログラム42は、表示が必要であると判断した場合(alt:[必要])、表示が必要なプリンタ状態情報とプリンタ2のモデル情報とに基づいて、対応表45を用いて、表示させる通知画面を示す画面情報を決定する(A23)。さらに、補助プログラム42は、決定した画面情報を含む表示指示をガイド表示アプリ44に渡す(A24)。この場合、A24は、表示要求処理の一例であり、印刷前表示要求処理の一例である。画面情報は、パラメータの一例である。ガイド表示アプリ44は、受け取った画面情報に基づいて、表示対象の通知画面をユーザIF13に表示させる(A25)。
 印刷指示を受け付ける前に通知画面を表示すれば、ユーザは、その通知画面に基づいて、そのまま印刷指示を行うか否かを判断でき、ユーザの操作ないし作業がより早期に終了することが期待できる。例えば、プリンタ2のステータスが用紙切れであれば、早期に用紙が挿入されることが期待できる。また、プリンタ2のステータスや消費材情報によっては、例えば、プリンタの変更指示やカラー印刷の印刷設定をグレースケール印刷に変更する指示を受け付けることで、早期に印刷を終了させることが期待できる。
 補助プログラム42は、A07にて表示が必要ではないと判断した場合、または、A24にてガイド表示アプリ44に表示指示を出力した後、後続の処理(不図示)を行う。具体的には、補助プログラム42は、A06にて表示させた設定画面へのユーザの操作を受け付け、受け付けた操作に基づいて印刷設定を設定する。さらに、ユーザによる詳細な印刷設定の終了指示を受け付けると、補助プログラム42は、汎用印刷プログラム41に処理の終了を通知する。これにより、汎用印刷プログラム41は、A04にて受け付けた詳細設定指示の終了を編集アプリ43に通知する。汎用印刷プログラム41からの終了通知を受け取ることで、編集アプリ43は、ユーザによる次の指示、例えば、印刷実行の指示を受け付け可能な状態となる。
 以上、詳細に説明したように、本形態の補助プログラム42は、編集アプリ43からの印刷指示があった場合に、プリンタ2からプリンタ状態情報を取得し、その取得したプリンタ状態情報に対応する通知画面を、編集アプリ43とは別のプロセスのガイド表示アプリ44に表示させる。これにより、補助プログラム42および編集アプリ43が処理を継続するにあたって表示の終了を待つ必要がなくなり、通知画面の表示終了を待つことなく、印刷指示に基づく印刷データをプリンタに送信するための処理を継続することができる。従って、印刷開始の遅延を抑制できる。
 続いて、サポートプログラムを具体化した第2の形態について、添付図面を参照しつつ詳細に説明する。本形態は、図6に示すように、PC1とプリンタ2とを含む印刷システム100であって、ガイド表示アプリ44が対応表45を備える印刷システム100である。本形態は、第1の形態に比較して、対応表45を利用するプログラムが異なるのみであり、第1の形態と同様の構成や処理については、同じ符号を付して説明を簡略化する。
 第1の形態では補助プログラム42が対応表45を利用して画面情報を決定するのに対し、本形態ではガイド表示アプリ44が対応表45を利用して画面情報を決定する。本形態の対応表45の内容は、第1の形態と同様である。第2の形態における各プログラムの手順について、図7のシーケンス図を参照して説明する。図7に示す手順では、図3に示した手順中のA22~A23の処理を、ガイド表示アプリ44が行う。
 編集アプリ43は、ユーザによる印刷実行の指示を受け付けると(A11)、汎用印刷プログラム41に印刷指示を渡す(A12)。汎用印刷プログラム41は、印刷指示に基づいて中間画像データを生成し(A13)、補助プログラム42に実行指示を渡す(A14)。補助プログラム42は、プリンタ2からプリンタ状態情報と消費材情報とを取得する(A21)。
 補助プログラム42は、プリンタ2から取得したプリンタ状態情報をガイド表示アプリ44に渡し(A41)、ガイド表示アプリ44に表示を指示する。A41は、表示要求処理の一例である。なお、本形態では、A41にて、補助プログラム42は、A14の実行指示にて受け取った印刷設定と、プリンタ2のモデル情報と、A21にて取得した消費材情報もガイド表示アプリ44に渡す。プリンタ状態情報を含む情報であって、A41にてガイド表示アプリ44に渡される情報は、パラメータの一例である。なお、ガイド表示アプリ44が起動していない場合には、補助プログラム42は、A41にてガイド表示アプリ44を起動させる。
 補助プログラム42は、ガイド表示アプリ44に表示を指示した後、継続して次の処理を実行する。つまり、補助プログラム42は、印刷データを生成し(A31)、生成した印刷データをプリンタ2に送信する(A32)。さらに、補助プログラム42は、汎用印刷プログラム41に処理の終了を通知し(A33)、汎用印刷プログラム41は、編集アプリ43に処理の終了を通知する(A34)。汎用印刷プログラム41が、印刷データの生成や送信を行ってもよい。
 本形態でも、A31以降の補助プログラム42や汎用印刷プログラム41の処理は、印刷指示に基づく印刷データをプリンタに送信するための処理の一例である。本形態の補助プログラム42や汎用印刷プログラム41であっても、ガイド表示アプリ44による処理の進行状況に関わらず、各処理を継続可能である。
 一方、ガイド表示アプリ44は、A41にて補助プログラム42から受け取った各情報に基づいて、表示が必要であるか否かを判断する(A51)。ガイド表示アプリ44は、受け取った情報に画面情報が含まれないことから、A51の判断が必要であると判断する。あるいは、補助プログラム42が、A41にて、表示の必要性の判断の指示をもガイド表示アプリ44に渡しても良い。
 ガイド表示アプリ44によるA51の処理は、補助プログラム42による図3のA22の処理と同様の処理であっても良い。なお、本形態では、A51の判断は、ガイド表示アプリ44によって、編集アプリ43とは別のプロセスによって実行されることから、A32との順序は限定されない。つまり、A51は、A32より前であっても良いし、後であっても良いし、並行して実行されても良い。
 ガイド表示アプリ44は、表示が必要であると判断した場合(alt:[必要])、A41にて受け取った情報に基づいて、ガイド表示アプリ44が備える対応表45を用いて、表示する通知画面を示す画面情報を決定する(A52)。ガイド表示アプリ44によるA52の処理は、補助プログラム42による図3のA23の処理と同様の処理である。そして、ガイド表示アプリ44は、決定した画面情報に基づいて、通知画面をユーザIF13に表示させる(A53)。一方、ガイド表示アプリ44は、A51にて表示が必要ではないと判断した場合、A52とA53とを実行せず、通知画面の表示を行わない。
 ガイド表示アプリ44が表示の必要性の判断を行うことで、補助プログラム42は、印刷データの生成や送信の処理を早期に実行できる。一方、補助プログラム42が必要性の判断を行えば、ガイド表示アプリ44が実行される機会が減少し、ガイド表示アプリ44の処理負荷が小さい。
 なお、表示の必要性の判断までを補助プログラム42が行い、表示する通知画面を示す画面情報の決定をガイド表示アプリ44が行うとしても良い。具体的には、図3に示した処理において、補助プログラム42がA22の判断を行い、必要であると判断した場合に、補助プログラム42が、図7のA41と同様の情報と表示の指示とをガイド表示アプリ44に渡すとしても良い。その場合、ガイド表示アプリ44は、図7のA51を行わず、A52とA53とを実行して、通知画面を表示する。
 以上、詳細に説明したように、第2の形態の印刷システム100であっても、第1の形態と同様に、印刷開始の遅延を抑制できる。第2の形態のように、ガイド表示アプリ44が対応表45を備え、ガイド表示アプリ44が表示対象の通知画面を決定して表示することとすれば、ガイド表示アプリ44の変更によって表示対象の通知画面を柔軟に変更できる。一方、第1の形態のように、補助プログラム42が画面情報を決定すれば、ガイド表示アプリ44は、受け取った情報に基づいて画面を表示するのみであり、シンプルな処理となる。
 さらに、第1の形態および第2の形態の印刷システム100によれば、補助プログラム42とは別のガイド表示アプリ44が通知画面の情報を備え、補助プログラム42は、通知画面の表示をガイド表示アプリ44に任せる。そのため、通知画面の内容を変更する必要がある場合、例えば、表示中の製品広告や最新情報等を更新する場合に、プリンタ2のベンダは、補助プログラム42を変更することなく、ガイド表示アプリ44を更新することで対応できる。また、補助プログラム42において表示のための処理が共通化されるため、通知画面が異なることによる複数の補助プログラム42を開発する必要が無く、補助プログラム42の共通化が可能になる。
 なお、本明細書に開示される実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。従って、本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、印刷システム100に含まれる各装置の数は、図示の例に限らず、2台以上でも良い。
 また、図示した通知画面は一例であり、これに限らない。例えば、通知画面に表示される各メッセージや各ボタンの配置や数は、図示の例に限らない。また、実施の形態では、ユーザによる操作が必要な場合に通知画面を表示させるとしたが、印刷指示を受け付けた場合、ステータスに関わらず通知画面を表示させるとしても良い。
 また、例えば、ガイド表示アプリ44は、プリンタ2との通信を実行可能であっても良い。例えば、補助プログラム42が実行指示を受け付けた場合、ガイド表示アプリ44を動作させ、ガイド表示アプリ44がプリンタ2からプリンタ状態情報を取得しても良い。また、ガイド表示アプリ44は、ユーザによる印刷キャンセルの指示を受け付け可能であって、印刷キャンセルの指示を受け付けた場合、キャンセルコマンドをプリンタ2に送信するとしても良い。
 また、第1の形態や第2の形態では、ガイド表示アプリ44が各種の通知画面を備えるとしたが、通知画面の情報の一部は、外部装置から取得してもよい。例えば、プリンタ2がプリンタ2の外観イメージの情報を備えていれば、ガイド表示アプリ44は、プリンタ2からその情報を取得して、表示対象の通知画面に合成してもよい。
 また、対応表45にはモデル情報も含まれるとしたが、例えば、ガイド表示アプリ44がプリンタ2のモデルまたはモデルシリーズのみに対応するプログラムであれば、対応表45にモデル情報は含まれなくても良い。また、対応表45は、サーバ等の外部装置に記憶されていても良く、その場合、補助プログラム42またはガイド表示アプリ44は、外部装置から対応表45を取得して利用すれば良い。
 また、ガイド表示アプリ44は、補助プログラム42からの指示に応じて起動されるプログラムに限らず、PC1に常駐するプログラムであっても良い。また、ガイド表示アプリ44は、補助プログラム42に限らず、プリンタ2に特定の動作を行わせる他のプログラム、例えば、プリンタドライバによる表示指示をも受け付け可能であっても良い。また、ガイド表示アプリ44は、第1の形態の機能と第2の形態の機能とを両方備えていてもよい。その場合、ガイド表示アプリ44は、受け取ったパラメータに応じて、表示の必要性の判断を行うか否かを決定すれば良い。
 また、実施の形態では、補助プログラム42の動作として、印刷動作のみを詳細に記載しているが、補助プログラム42は、さらに他の役割を有していても良い。また、本形態の処理を実行するプログラムは、補助プログラム42に限らず、汎用印刷プログラム41を用いた印刷を行う際に、OS21または汎用印刷プログラム41から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフロー アプリ(Print workflow)でも良い。
 また、補助プログラム42の実行タイミングは、実施の形態の例に限らない。例えば、OS21から直接実行指示されて実行されても良く、または、常駐される補助プログラム42であっても良い。常駐される場合には、補助プログラム42は、実行命令を受けて前述した動作を行うとすれば良い。
 また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
 また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
 1 PC
 2 プリンタ
 10 コントローラ
 11 CPU
 12 メモリ
 13 ユーザIF
 14 通信IF
 21 OS
 41 汎用印刷プログラム
 42 補助プログラム
 43 編集アプリ
 44 ガイド表示アプリ
 45 対応表
 100 印刷システム

 

Claims (11)

  1.  情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応し、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムをサポートするサポートプログラムであって、
     前記コンピュータに、
      前記情報処理装置に組み込まれている編集アプリケーションプログラムから出力された印刷指示であって、前記汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、
       前記情報処理装置の通信インタフェースを介して、前記プリンタから前記プリンタの現況情報を取得する取得処理と、
       前記取得処理にて取得された前記現況情報に基づくパラメータを、前記情報処理装置に組み込まれている表示アプリケーションプログラムに渡すことで、前記現況情報に対応する通知を行う通知画面の表示を、前記表示アプリケーションプログラムに要求する表示要求処理と、
      を実行させ、前記表示アプリケーションプログラムは、前記編集アプリケーションプログラムとは別のプロセスとして動作し、前記パラメータに対応する前記通知画面を前記情報処理装置のユーザインタフェースに表示させることが可能なプログラムであり、
     さらに前記コンピュータに、
      前記印刷指示があった場合に、前記表示アプリケーションプログラムによる前記通知画面の表示終了を待つことなく、前記印刷指示に基づく印刷データを前記プリンタに送信するための処理を継続させる、
     ことを特徴とするサポートプログラム。
  2. 請求項1に記載するサポートプログラムにおいて、
     前記コンピュータに、
      前記印刷指示があった場合に、前記表示アプリケーションプログラムが起動していなければ、前記表示要求処理の実行に伴って、前記表示アプリケーションプログラムを起動させる、
     ことを特徴とするサポートプログラム。
  3. 請求項1または請求項2に記載するサポートプログラムにおいて、
     前記表示要求処理では、
      前記プリンタのモデルに対応する前記通知画面の表示を、前記表示アプリケーションプログラムに行わせ、前記表示アプリケーションプログラムは、複数のモデルに対応しており、モデルごとに異なる前記通知画面を表示可能である、
     ことを特徴とするサポートプログラム。
  4. 請求項3に記載するサポートプログラムにおいて、
     前記表示要求処理では、
      前記取得処理にて取得された前記現況情報に基づく前記パラメータと、前記プリンタのモデルを示すモデル情報と、を前記表示アプリケーションプログラムに渡すことで、前記プリンタのモデルに対応する前記通知画面の表示を、前記表示アプリケーションプログラムに行わせ、前記表示アプリケーションプログラムでは、前記サポートプログラムから渡された前記パラメータと前記モデル情報とを用いて、表示する前記通知画面の内容を決定する、
     ことを特徴とするサポートプログラム。
  5. 請求項3に記載するサポートプログラムにおいて、
     前記表示要求処理では、
      前記取得処理にて取得された前記現況情報と、前記プリンタのモデルと、に基づいて、前記表示アプリケーションプログラムに表示させる前記通知画面の内容を決定し、決定された前記通知画面の内容を示す画面情報を前記パラメータとして前記表示アプリケーションプログラムに渡すことで、前記プリンタのモデルに対応する前記通知画面の表示を、前記表示アプリケーションプログラムに行わせ、前記表示アプリケーションプログラムでは、前記サポートプログラムから渡された前記画面情報に対応する前記通知画面を表示する、
     ことを特徴とするサポートプログラム。
  6. 請求項1から請求項5のいずれか1つに記載するサポートプログラムにおいて、
     前記コンピュータに、
      前記プリンタでの印刷に用いる印刷設定を受け付ける設定画面を、前記ユーザインタフェースに表示させる画面表示処理と、
      前記画面表示処理による前記設定画面の表示に基づいて、前記通信インタフェースを介して前記プリンタに問い合わせ、前記現況情報を取得する印刷前取得処理と、
      前記印刷前取得処理にて取得された前記現況情報に基づく前記パラメータを、前記表示アプリケーションプログラムに渡し、前記現況情報に対応する通知を行う前記通知画面の表示を、前記表示アプリケーションプログラムに要求する印刷前表示要求処理と、
      を実行させる、
     ことを特徴とするサポートプログラム。
  7. 請求項1から請求項6のいずれか1つに記載するサポートプログラムにおいて、
     前記コンピュータに、
      前記印刷指示があった場合に、
       前記取得処理にて取得された前記現況情報が所定の表示条件を満たす場合、前記表示要求処理を実行させ、さらに前記表示アプリケーションプログラムによる前記通知画面の表示終了を待つことなく、前記印刷指示に基づく印刷データを前記プリンタに送信するための処理を継続させ、
       前記取得処理にて取得された前記現況情報が前記所定の表示条件を満たさない場合、前記表示要求処理を実行させず、前記印刷指示に基づく印刷データを前記プリンタに送信するための処理を継続させる、
     ことを特徴とするサポートプログラム。
  8. 請求項1から請求項6のいずれか1つに記載するサポートプログラムにおいて、
     前記コンピュータに、
      前記印刷指示があった場合に、
       前記取得処理にて取得された前記現況情報と、前記印刷指示で設定された印刷設定と、が所定の関係を満たす場合、前記表示要求処理を実行させ、さらに前記表示アプリケーションプログラムによる前記通知画面の表示終了を待つことなく、前記印刷指示に基づく印刷データを前記プリンタに送信するための処理を継続させ、
       前記取得処理にて取得された前記現況情報と、前記印刷指示で設定された印刷設定と、が前記所定の関係を満たさない場合、前記表示要求処理を実行させず、前記印刷指示に基づく印刷データを前記プリンタに送信するための処理を継続させる、
     ことを特徴とするサポートプログラム。
  9. 請求項1から請求項6のいずれか1つに記載するサポートプログラムにおいて、
     前記表示要求処理では、
      前記取得処理にて取得された前記現況情報に基づく前記パラメータを、前記表示アプリケーションプログラムに渡し、前記通知画面の表示を、前記表示アプリケーションプログラムに要求し、前記表示アプリケーションプログラムは、渡された前記パラメータが所定の表示条件を満たす場合、前記パラメータに対応する前記通知画面を前記ユーザインタフェースに表示させ、渡された前記パラメータが前記所定の表示条件を満たさない場合、前記通知画面を前記ユーザインタフェースに表示させない、
     ことを特徴とするサポートプログラム。
  10. 請求項1から請求項6のいずれか1つに記載するサポートプログラムにおいて、
     前記表示要求処理では、
      前記取得処理にて取得された前記現況情報に基づく前記パラメータと、前記印刷指示で設定された印刷設定とを、前記表示アプリケーションプログラムに渡し、前記通知画面の表示を、前記表示アプリケーションプログラムに要求し、前記表示アプリケーションプログラムは、渡された前記パラメータと前記印刷設定とが所定の関係を満たす場合、前記パラメータに対応する前記通知画面を前記ユーザインタフェースに表示させ、渡された前記パラメータと前記印刷設定とが前記所定の関係を満たさない場合、前記通知画面を前記ユーザインタフェースに表示させない、
     ことを特徴とするサポートプログラム。
  11.  プリンタと、前記プリンタと接続する情報処理装置に組み込まれたサポートプログラムと、前記情報処理装置に組み込まれた表示アプリケーションプログラムと、を備える印刷システムであって、
     前記サポートプログラムは、
      前記プリンタに対応し、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムをサポートするプログラムであり、
     前記表示アプリケーションプログラムは、
      前記プリンタの現況情報に対応する通知を行う通知画面を、前記情報処理装置のユーザインタフェースに表示させることが可能なプログラムであり、
     さらに前記サポートプログラムは、前記情報処理装置のコンピュータに、
      前記情報処理装置に組み込まれている編集アプリケーションプログラムであって、前記表示アプリケーションプログラムとは別のプロセスとして動作する前記編集アプリケーションプログラムから出力された印刷指示であって、前記汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、
       前記情報処理装置の通信インタフェースを介して、前記プリンタから前記現況情報を取得させ、
       取得された前記現況情報に基づくパラメータを、前記表示アプリケーションプログラムに渡すことで、前記現況情報に対応する前記通知画面の表示を、前記表示アプリケーションプログラムに要求させ、
       前記表示アプリケーションプログラムによる前記通知画面の表示終了を待つことなく、前記印刷指示に基づく印刷データを前記プリンタに送信するための処理を継続させ、
     前記表示アプリケーションプログラムは、前記情報処理装置のコンピュータに、
      前記サポートプログラムから渡された前記パラメータに対応する前記通知画面を、前記ユーザインタフェースに表示させる、
     ことを特徴とする印刷システム。

     
PCT/JP2022/018343 2021-04-27 2022-04-20 サポートプログラムおよび印刷システム WO2022230740A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202280029496.8A CN117501232A (zh) 2021-04-27 2022-04-20 支持程序及打印系统

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021074927A JP2022169095A (ja) 2021-04-27 2021-04-27 サポートプログラムおよび印刷システム
JP2021-074927 2021-04-27

Publications (1)

Publication Number Publication Date
WO2022230740A1 true WO2022230740A1 (ja) 2022-11-03

Family

ID=83695138

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/018343 WO2022230740A1 (ja) 2021-04-27 2022-04-20 サポートプログラムおよび印刷システム

Country Status (4)

Country Link
US (1) US11662964B2 (ja)
JP (1) JP2022169095A (ja)
CN (1) CN117501232A (ja)
WO (1) WO2022230740A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023116259A (ja) * 2022-02-09 2023-08-22 キヤノン株式会社 プログラム、情報処理装置および制御方法
JP2024118714A (ja) * 2023-02-21 2024-09-02 ブラザー工業株式会社 サポートプログラム
JP2024118716A (ja) * 2023-02-21 2024-09-02 ブラザー工業株式会社 サポートプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011138394A (ja) * 2009-12-28 2011-07-14 Canon Inc 情報処理装置、情報処理装置の制御方法および情報処理システム
JP2014078927A (ja) * 2012-09-18 2014-05-01 Ricoh Co Ltd 電子機器、ネットワークシステム、表示制御方法およびプログラム
JP2020166350A (ja) * 2019-03-28 2020-10-08 ブラザー工業株式会社 サポートプログラム、情報処理装置、および印刷方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3962721B2 (ja) * 2003-12-15 2007-08-22 キヤノン株式会社 文書処理装置及び文書処理方法
JP5240170B2 (ja) * 2009-03-18 2013-07-17 株式会社リコー 画像形成装置、プログラムおよび情報処理システム
CN103685811B (zh) 2012-09-18 2016-06-08 株式会社理光 电子设备、显示控制方法、以及网络系统
JP6529388B2 (ja) 2015-08-25 2019-06-12 キヤノン株式会社 情報処理装置とその制御方法、及び情報処理システムとステータス表示アプリケーションと双方向通信アプリケーション
JP6604834B2 (ja) * 2015-12-04 2019-11-13 キヤノン株式会社 情報処理装置及びその制御方法、プログラム
JP7225738B2 (ja) * 2018-11-30 2023-02-21 ブラザー工業株式会社 サポートプログラム、情報処理装置、および印刷方法
JP7259477B2 (ja) 2019-03-27 2023-04-18 ブラザー工業株式会社 サポートプログラム、情報処理装置、および印刷方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011138394A (ja) * 2009-12-28 2011-07-14 Canon Inc 情報処理装置、情報処理装置の制御方法および情報処理システム
JP2014078927A (ja) * 2012-09-18 2014-05-01 Ricoh Co Ltd 電子機器、ネットワークシステム、表示制御方法およびプログラム
JP2020166350A (ja) * 2019-03-28 2020-10-08 ブラザー工業株式会社 サポートプログラム、情報処理装置、および印刷方法

Also Published As

Publication number Publication date
CN117501232A (zh) 2024-02-02
US20220342614A1 (en) 2022-10-27
JP2022169095A (ja) 2022-11-09
US11662964B2 (en) 2023-05-30

Similar Documents

Publication Publication Date Title
WO2022230740A1 (ja) サポートプログラムおよび印刷システム
JP7559919B2 (ja) サポートプログラム、情報処理装置、および印刷方法
WO2023145532A1 (ja) サポートプログラム
WO2022163428A1 (ja) サポートプログラム
WO2022138317A1 (ja) サポートプログラム
US20230102837A1 (en) Non-transitory computer-readable medium storing support program
JP2009053789A (ja) 情報処理装置とプログラムとコンピュータ読み取り可能な記録媒体
WO2022163427A1 (ja) サポートプログラム
JP2022109424A (ja) サポートプログラム
JP2022120952A (ja) サポートプログラム
WO2022163430A1 (ja) サポートプログラム
US11880619B2 (en) Computer product storing supporting program for managing common print settings for each identified printer
WO2022163429A1 (ja) サポートプログラム
US12050815B2 (en) Non-transitory storage medium storing supporting program executable by computer of information processing apparatus
WO2023145636A1 (ja) サポートプログラム
US11886756B2 (en) Non-transitory storage medium storing supporting program executable by information processing apparatus
WO2023190147A1 (ja) サポートプログラム
JP5659583B2 (ja) 印刷システム、画像処理装置、印刷装置、プログラムおよび記録媒体
WO2023190148A1 (ja) サポートプログラム
JP2022109423A (ja) サポートプログラム
JP2022144357A (ja) サポートプログラムおよび印刷システム
CN118647965A (zh) 支持程序及打印系统

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: 22795653

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 202280029496.8

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22795653

Country of ref document: EP

Kind code of ref document: A1