WO2023145531A1 - サポートプログラム - Google Patents

サポートプログラム Download PDF

Info

Publication number
WO2023145531A1
WO2023145531A1 PCT/JP2023/001129 JP2023001129W WO2023145531A1 WO 2023145531 A1 WO2023145531 A1 WO 2023145531A1 JP 2023001129 W JP2023001129 W JP 2023001129W WO 2023145531 A1 WO2023145531 A1 WO 2023145531A1
Authority
WO
WIPO (PCT)
Prior art keywords
print
program
general
information
printer
Prior art date
Application number
PCT/JP2023/001129
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 ブラザー工業株式会社
Publication of WO2023145531A1 publication Critical patent/WO2023145531A1/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/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1208Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
    • 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
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • 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
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • 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/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1232Transmitting printer device capabilities, e.g. upon request or periodically
    • 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/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1255Settings incompatibility, e.g. constraints, user requirements vs. device capabilities
    • 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

Definitions

  • the technical field disclosed in this specification relates to a support program that supports printer control.
  • Japanese Laid-Open Patent Publication No. 2002-200003 discloses a printer driver having a prohibition function that restricts the setting of a specific function. A configuration is disclosed.
  • the technology disclosed in this specification is intended to display information regarding whether or not print settings can be set 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 the general-purpose print program is capable of handling data for displaying a print setting screen on the display of the information processing device, and instructs the computer to provide the capabilities of the printer.
  • a first generation process for generating, in the computer, first notification data indicating that the print settings are inappropriate when the print settings are determined to be inappropriate in the determination process
  • the support program configured as above obtains the printer capability information, and when the print settings are changed, if the changed print settings are judged to be inappropriate based on the capability information, the print settings generate notification data indicating that the The support program passes the generated notification data to the general-purpose print program and displays it on the print setting screen.
  • a general-purpose print program is a print program different from a printer driver corresponding to each printer model. Accordingly, in an information processing apparatus that uses a general-purpose print program of the OS, it is possible to notify that the print setting is inappropriate in the print setting screen displayed using the general-purpose print program. As a result, the user knows information about whether or not the print settings can be set, which increases the possibility of avoiding unintended print results.
  • the device, control method, and computer-readable storage medium storing the support program for realizing the functions of the support program are also new and useful.
  • FIG. 10 is a sequence diagram showing an example of a procedure when printing is selected; It is a figure which shows the example of an information screen.
  • FIG. 10 is a diagram showing an example of a print setting screen;
  • FIG. 10 is a diagram illustrating an example of an inappropriate combination of print settings;
  • FIG. 11 is a sequence diagram illustrating a procedure when advanced settings are selected; It is a figure which shows the example of a detail setting screen.
  • FIG. 11 is a sequence diagram showing an example of a procedure when a change in print settings is accepted; It is a flow chart which shows an example of propriety judgment processing. It is a figure which shows the example of a display of notification data.
  • FIG. 10 is a sequence diagram showing an example of a procedure when a print instruction is accepted;
  • 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. Various programs and various data are stored in the memory 12 .
  • the memory 12 is also used as a work area when various processes are executed.
  • 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 13a capable of displaying information and a mouse or keyboard having an input reception function, or may be a touch panel having the display 13a and an input reception function.
  • User IF 13 includes an example of a display.
  • the communication IF 14 includes hardware for communicating with an external device such as the printer 2.
  • the communication standard of the communication IF 14 is Ethernet (registered trademark), Wi-Fi (registered trademark), USB, or the like.
  • the PC 1 may be connectable to the Internet via the communication IF 14 . Also, the PC 1 may include 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, and various application programs (hereinafter referred to as “apps”). ), is stored.
  • the OS 21 is, for example, Windows (registered trademark), macOS (registered trademark), Linux (registered trademark), iOS (registered trademark), and Android (registered trademark).
  • the auxiliary program 42 is an example of a support program.
  • an information application 43 is built into the PC 1 of this embodiment as various applications.
  • the information application 43 is, for example, a map application, a calendar application, or a browser, and has a function of displaying various types of information on the display 13a in response to user requests.
  • the information application 43 is an example of an application program. Note that the information application 43 itself does not have to have the function of printing the displayed information.
  • the general-purpose print program 41 is an OS-standard program provided together with the OS 21, and has a function of causing the printer 2 or the like to print information displayed on the display 13a by the information application 43 or the like.
  • 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 general-purpose printing program 41 supports functions that can be commonly used by multiple types of printer models provided by various printer vendors. Unlike a printer driver specific to various printers, the general-purpose print program 41 does not support all functions unique to various printers, and supports only 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 a program 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 print support application (abbreviated as PSA) or a hardware support application (abbreviated as HSA).
  • auxiliary program 42 may be a combination of a plurality of programs each of which accepts an execution command, or may be a single program capable of executing different processes according to commands.
  • the auxiliary program 42 may be a program prepared for each type of printer by the vendor of the printer. For example, an auxiliary program for inkjet printers and an auxiliary program for laser printers may be prepared. There may be an auxiliary program prepared for each printer model or printer model series, not just for each printer type.
  • the OS 21 of the PC 1 can download an appropriate auxiliary program from a server or the like and install it in the PC 1 according to the type and model of the connected printer.
  • the OS 21 associates the identification information of the incorporated auxiliary program with the printer information of the newly connected printer and stores it in the memory 12 .
  • the PC 1 of this embodiment is connected to a printer 2 as shown in FIG.
  • the printer 2 is a device having at least a printing function and a communication function.
  • the printer 2 receives print data and print settings from an external device such as the PC 1 and performs printing according to the print settings.
  • Examples of print setting items include number of copies, print orientation, paper feed tray, paper size, paper type, double-sided printing, color printing, and borderless printing.
  • Examples of setting items for print settings include processing options for processing the image to be printed, in addition to the setting items described above.
  • processing options include consolidated printing, split printing, and scaling printing.
  • Aggregation printing is a printing method in which images of N (N is a plurality) pages are reduced and arranged on one sheet of paper for printing.
  • Examples of aggregate printing include layout printing (Nin1) and booklet printing. In layout printing, the images of the document are laid out in the order of pages on one sheet. In booklet printing, the images are rearranged so that the pages of the document are arranged in order when the paper is folded like a booklet, and the images of the document are arranged on the front and back sides of the paper.
  • Divided printing is a printing method in which an image for one page is divided and printed on M (M is a plurality) sheets of paper.
  • M is a plurality
  • division printing there is poster printing in which printed sheets are printed with a margin for pasting them together.
  • Enlargement/reduction printing is a printing method in which an image for one page is enlarged or reduced to a specified magnification and printed.
  • the printer 2 can accept print settings based on the functions that the printer 2 has.
  • the printer 2 can also receive processing option settings that allow the printer 2 to perform image processing, such as layout printing (Nin1).
  • the processing option can also be realized by image processing by the auxiliary program 42.
  • FIG. The printer 2 does not accept the processing option setting in which the printer 2 cannot perform image processing and the auxiliary program 42 performs image processing.
  • the printer 2 does not accept the setting of aggregate printing. That is, the printer 2 stores parameters for each item that can be set according to the capabilities of the printer 2 .
  • the printer 2 stores information indicating an appropriate combination of print settings that can be set in the printer 2 .
  • the auxiliary program 42 has a function of displaying a dedicated print setting screen (hereinafter referred to as "detailed setting screen") on the printer 2.
  • the auxiliary program 42 displays items for which the printer 2 cannot perform image processing and the auxiliary program 42 performs image processing on the detailed setting screen, as described above, in addition to the items for which the printer 2 can accept settings. can accept.
  • the auxiliary program 42 determines the suitability of the combination based on the capabilities of the printer 2, and restricts printing instructions based on an inappropriate combination of print settings. For example, assume that printer 2 is unable to transport envelopes from tray 2 . In this case, on the detailed setting screen of the auxiliary program 42, when the setting value "Tray 2" is set for the setting item "Paper tray”, "Envelope size” cannot be set for the setting item "Paper size”. to
  • the general-purpose print program 41 accepts print settings for supported functions via the print setting screen. Since the general-purpose print program 41 supports a plurality of types of printers, unlike the auxiliary program 42, it does not limit inappropriate combinations of print settings. For example, the general-purpose printing program 41 selects the printer 2 that cannot convey envelopes from the tray 2, sets the setting value "tray 2" for the setting item "paper feed tray”, and sets the setting value for the setting item "paper size”. "Envelope size" can be set in the
  • FIG. 2 and other sequence diagrams to be described later show operations when the auxiliary program 42 corresponding to the printer 2 is installed in the PC 1 .
  • each processing step in the processing and flowcharts in this embodiment basically indicates 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 user activates the information application 43 (A01).
  • the information application 43 causes the display 13a to display an information screen containing various kinds of information according to the user's instruction (A02).
  • the user wants to print the image of the information screen being displayed, the user selects printing on the information screen (A03).
  • the information screen D1 includes a setting button SW1.
  • a pull-down menu DL including "print” is displayed as shown in FIG.
  • the information application 43 sends a display request and information screen data to the general-purpose print program 41 of the OS 21 (A04).
  • the general-purpose printing program 41 displays the print setting screen on the display 13a in response to the display request (A06).
  • the print setting screen is a screen for accepting print setting instructions and print execution instructions.
  • the print setting screen D2 includes a printer selection field 51 for receiving printer selection, a notification field 52 for displaying a notification image, and a print setting field 53 for receiving designation of various print settings.
  • a preview field 54 showing an image of an information screen to be printed, a detailed setting button SW2 for receiving instructions for making detailed print settings, and a print button SW3 for receiving instructions to execute printing.
  • print setting field 53 print setting items for functions supported by the general-purpose print program 41 are displayed, and print setting values can be accepted.
  • items that can be set via the print setting field 53 include number of copies, print orientation, double-sided printing, layout printing (Nin1), paper size, paper feed tray, print range, paper type, color, borderless printing, scaling. , print quality (resolution).
  • print setting field 53 in order to facilitate print settings, only main items may be displayed, and other items may be additionally displayed when other settings are operated.
  • the notification image displayed in the notification column 52 is an image showing the notification content to be notified to the user.
  • the general-purpose print program 41 can handle data for displaying the print setting screen D2.
  • the user can select a printer by operating the printer selection field 51 on the print setting screen D2 being displayed (A07). If the selected printer is the printer 2, the general-purpose printing program 41 activates the auxiliary program 42 corresponding to the printer 2 and requests the processing corresponding to the printer selection (A08). At A08, the general-purpose print program 41 passes the selected printer information and the print setting information set at the time of printer selection to the auxiliary program .
  • the general-purpose print program 41 displays the print setting screen D2 with the printer 2 selected, for example, as shown in FIG. (A06), and start the auxiliary program 42 (A08). That is, the printer 2 is automatically selected by the OS 21, and the general-purpose print program 41 executes A08 based on the information on the selected printer 2. FIG. In this case, the user does not need to operate A07.
  • the information application 43 may display the print setting screen D2 instead of the general-purpose print program 41 displaying the print setting screen D2.
  • the information application 43 activates the general-purpose print program 41 in response to the selection of print in A03, acquires data to be displayed on the print setting screen D2 from the general-purpose print program 41, and displays the data on the print setting screen. D2 is displayed on the display 13a.
  • the information application 43 passes the information of the selected printer 2 to the general-purpose printing program 41 in response to the printer 2 being selected or in response to the printer 2 being selected in A07.
  • the general-purpose printing program 41 activates the auxiliary program 42 corresponding to the printer 2 at A08.
  • the auxiliary program 42 requests the capability information of the printer 2 from the OS 21 (A11).
  • the OS 21 Upon receiving the request from the auxiliary program 42, the OS 21 transmits an acquisition request requesting the printer 2 for the capability information, and acquires the capability information from the printer 2 (A12).
  • the OS 21 passes the capability information acquired from the printer 2 to the auxiliary program 42 (A13).
  • A11 to A13 are an example of the capability acquisition process.
  • the OS 21 communicates with the printer 2 by, for example, communication according to IPP (abbreviation for internet printing protocol).
  • IPP abbreviation for internet printing protocol
  • the auxiliary program 42 may acquire capability information directly from the printer 2 using, for example, MIB (abbreviation of Management Information Base) instead of requesting it from the OS 21 .
  • MIB abbreviation of Management Information Base
  • the capability information acquired from the printer 2 includes information on parameters that can be set as print settings. Also, the capability information includes information indicating an appropriate combination of print settings. In addition, the capability information includes, for example, status information, information on the remaining amount of consumables, information on the installed tray, information on the paper set for each tray, and information on the print resolution that can be handled. . In addition, the printer 2 performs image processing based on the received print job and performs printing based on the data after the image processing. It may have a function to perform saving printing. If the printer 2 has a function of image processing that can be executed, the printer 2 may pass information on that function to the OS 21 as capability information.
  • the auxiliary program 42 stores the capability information notified from the OS 21 at A13 in a predetermined area in the memory 12 that can be used by the auxiliary program 42 (A14). If the ability information is already stored in the memory 12, the auxiliary program 42 overwrites the stored ability information and stores the current ability information.
  • the auxiliary program 42 executes exclusion information acquisition processing for acquiring exclusion information based on the acquired capability information (A15).
  • the exclusion information is information indicating an inappropriate combination of print settings. There are several inappropriate combinations of print settings.
  • FIG. 5 shows examples of combinations that cannot be set.
  • exclusion No. in FIG. 1 and exclusive no. 2 depending on the paper feed method (paper feed tray), there are types and sizes of paper that cannot be transported.
  • exclusion No. 3 and exclusive no. 4 borderless printing or double-sided printing may not be possible depending on the type and size of paper.
  • exclusive no. 5 depending on the printing method, there is a combination of printing methods that cannot be used together due to their nature.
  • the exclusive information acquisition process will be explained in detail.
  • the auxiliary program 42 extracts an inappropriate combination of print settings by back-calculating the appropriate combination of print settings included in the capability information acquired in A13. Then, the extracted inappropriate combinations are described in the exclusion list data shown in FIG. 5(a).
  • the exclusion list data is stored in the storage area for the auxiliary program 42 of the memory 12 .
  • the exclusive list data is described by, for example, Print Device Capabilities (XML format file).
  • the exclusion list data is an example of exclusion information.
  • the exclusion information may be the acquired capability information itself.
  • the printer 2 has a tray 1 and a tray 2, and can supply glossy paper from the tray 1, but cannot supply glossy paper from the tray 2.
  • the setting to set the setting value "Tray 1" for the setting item "Paper tray” (hereafter, such a setting is abbreviated as “Paper tray: Tray 1") and "Paper type: Glossy paper” , are included in the acquired capability information as a combination of appropriate print settings.
  • "paper feed tray: tray 2" and “paper type: glossy paper” are not included in the acquired capability information as a combination of proper print settings. Therefore, the auxiliary program 42 sets the exclusion No. in FIG. 5(a). 1, a combination of "paper feed tray: tray 2" and “paper type: glossy paper” is described in the exclusion list data as exclusion information.
  • Printer capabilities vary depending on the printer model.
  • the auxiliary program 42 acquires different capability information depending on the selected printer model. As a result, different models will store different exclusion list data.
  • the auxiliary program 42 executes notification data generation processing based on the ability information notified in A13 (A21).
  • the notification data generation process is a process of generating notification data indicating a notification image to be displayed in the notification column 52 of the print setting screen D2.
  • the notification image displayed in the notification column 52 may include, for example, text, still images, moving images, or a combination thereof.
  • notification data including the printer manufacturer's logo and advertisement is generated.
  • the notification data may be blank data when nothing is displayed in the notification column 52 .
  • the propriety of the print settings may be determined based on the capability information notified in A13 and the exclusion information acquired in A15, and notification data may be generated according to the propriety. Since this process is the same as C04, C11, and C12 in FIG. 8, which will be described later, description thereof is omitted.
  • the auxiliary program 42 passes the display information including the generated notification data and the print setting value information based on the capability information to the general-purpose printing program 41 (A22), and ends the process.
  • the general-purpose printing program 41 displays a notification image in the notification column 52 of the print setting screen D2 displayed on the display 13a (A23).
  • a notification image based on the notification data is displayed in the notification column 52, and information based on the capability information of the printer 2 is displayed in the print setting column 53 as initial values of each print setting.
  • the information application 43 when the information application 43 is configured to display the print setting screen D2, the information application 43 receives the notification data and displays the notification image in the notification column 52.
  • the auxiliary program 42 may acquire information in the notification column 52 from the general-purpose printing program 41 and determine notification data to be displayed in the notification column 52 based on the acquired information. For example, if there are multiple layouts where the notification column 52 can be displayed, and the auxiliary program 42 can specify the display location, the auxiliary program 42 sends notification data including information specifying the display location to the general-purpose printing program 41. You can give it to Also, if the size of the notification column 52 can be selected, the auxiliary program 42 may pass information designating the size to the general-purpose printing program 41 .
  • the auxiliary program 42 can also display information by itself instead of generating notification data and passing it to the general-purpose printing program 41 .
  • the display since a screen is displayed separately from the print setting screen D2, the display may become complicated and stressful for the user. Displaying it in the print setting screen D2 of the general-purpose print program 41 of the OS 21 simplifies the display and avoids stress on the user.
  • the general-purpose printing program 41 starts up the auxiliary program 42 (B02) based on the user's detailed setting instruction (B01).
  • the general-purpose print program 41 passes the print settings set in the print setting field 53 of the print setting screen D2 to the auxiliary program 42, and requests processing for receiving detailed settings.
  • the auxiliary program 42 displays, for example, a detail setting screen D3 shown in FIG. 7 on the display 13a.
  • a detailed setting field 61 and an apply button SW22 are displayed on the detailed setting screen D3 (B03).
  • the detail setting column 61 displays various print setting items for the functions supported by the auxiliary program 42 .
  • Print settings received from the general-purpose print program 41 are reflected in each item.
  • print setting values are set for items that cannot be set on the print setting screen D2, such as poster printing, booklet printing, and stapling. can do. Processing options not included in the capability information of the printer 2, such as poster printing and booklet printing, can also be set on the detailed setting screen D3.
  • B03 and B04 are examples of setting processing.
  • Processing options that can be handled by the general-purpose printing program 41, such as layout printing, can be set via the print setting screen D2 (FIG. 4).
  • the process of setting processing options via the print setting screen D2 is also an example of the setting process.
  • the auxiliary program 42 When the auxiliary program 42 receives an instruction to change the print settings by operating the apply button SW22, it uses the print settings set in the detailed setting field 61 to change the print settings received in B02 (B04). The auxiliary program 42 passes the changed print settings to the general-purpose print program 41 and ends the process (B05). Items that cannot be set on the print setting screen D2 are stored in the memory area for the auxiliary program 42. FIG. The general-purpose print program 41 displays the displayable print settings after the change received from the auxiliary program 42 in the print setting field 53 of the print setting screen D2 shown in FIG. 4 (B06). Note that the auxiliary program 42 cannot accept an inappropriate combination of print settings. Therefore, the auxiliary program 42 does not generate notification data.
  • the sequence diagram of FIG. 8 will be referred to regarding the procedure of each program when a print setting change instruction is received by the user's operation in the print setting field 53 while the print setting screen D2 shown in FIG. 4 is being displayed. to explain.
  • the print setting screen D2 can accept an instruction to change the print settings by operating the print setting field 53 or an instruction to execute printing by operating the print button SW3.
  • the general-purpose print program 41 changes the display contents of the print setting field 53 of the print setting screen D2 (C02) based on the user's instruction to change the print settings (C01). Furthermore, even when the print settings are changed, the general-purpose print program 41 activates the auxiliary program 42 and requests processing corresponding to the change in print settings (C03). At C ⁇ b>03 , the auxiliary program 42 receives the changed print setting information from the general-purpose print program 41 .
  • C03 is an example of a setting acquisition process.
  • the auxiliary program 42 performs suitability determination processing for determining whether the print settings are appropriate (C04). When the auxiliary program 42 determines that the print settings are inappropriate in the suitability determination process (alt: inappropriate), it generates inappropriate notification data indicating that the print settings are inappropriate (C11). On the other hand, when the auxiliary program 42 determines that the print settings are appropriate in the suitability determination process (alt: appropriate), it generates appropriate notification data indicating that the print settings are appropriate (C12). The auxiliary program 42 passes the notification data generated at C11 and C12 to the general-purpose printing program 41 (C13). The general-purpose print program 41 displays the received notification data in the notification column 52 of the print setting screen D2 in FIG. 4 (C14).
  • FIG. 9 is a flowchart showing an example of the procedure of the suitability judgment process shown in C04 shown in FIG.
  • the suitability determination process is executed by the CPU 11 of the PC 1 based on the description of the auxiliary program 42 .
  • the CPU 11 first reads the exclusion information generated in A15 of FIG. 2 from the memory 12 (S11). The CPU 11 compares the read exclusion information with the changed print settings received in C03 of FIG. 8, and determines whether or not the changed print settings include a combination corresponding to the exclusion information (S12). That is, the CPU 11 determines whether or not the changed print settings are an inappropriate combination of the print settings shown in FIG. 5(a).
  • S11 and S12 are examples of determination processing.
  • the auxiliary program 42 determines that the changed print settings are inappropriate based on the exclusion information (alt: inappropriate), it generates inappropriate notification data indicating that the print settings are inappropriate. (C11).
  • the auxiliary program 42 generates, for example, different notification information for each set value of the setting item of the print setting that is inappropriate, and generates inappropriate notification data including the notification information.
  • the unsuitability notification data may include guide information for making print settings appropriate.
  • the inappropriate notification data may include an image showing an inappropriate combination. Both or one of the guide information and the still image may be omitted from the inappropriate notification data.
  • the unsuitability notification data may include, for example, a moving image for making print settings appropriate.
  • the unsuitable notification data in this case is an example of the first notification data.
  • C11 in this case is an example of the first generation process.
  • the auxiliary program 42 passes the inappropriate notification data generated at C11 to the general-purpose printing program 41 (C13).
  • the general-purpose print program 41 displays the inappropriate notification data received from the auxiliary program 42 in the notification column 52 (see FIG. 4) of the print setting screen D2 (C14).
  • the notification field 52 displays, for example, notification information M5 explaining that the envelope size and double-sided printing cannot be set together.
  • a correspondence method for changing the setting of double-sided printing to single-sided printing and when giving priority to double-sided printing, a correspondence method for changing the paper size to a size other than the envelope size is displayed.
  • Guide information GM5 to be conveyed is displayed.
  • an image IM5 is displayed to give an impression that envelope printing and double-sided printing cannot be used together.
  • C13 in this case is an example of the first display process.
  • the CPU 11 determines whether there is a processing option setting (S14). As shown in FIG. 5B, processing options that cannot be set by the printer 2 are not included in the exclusion information. Processing options that cannot be set by the printer 2 cannot be set on the print setting screen D2 of FIG. 4, and are set on the detailed setting screen D3 of FIG. Therefore, the CPU 11 refers to the memory 12 and determines whether or not there is a processing option based on the print settings set in the auxiliary program 42 .
  • the CPU 11 determines that a processing option is set (S14: YES), it reads information indicating an inappropriate combination of processing options shown in FIG. 5(b) from the memory 12 (C15).
  • the CPU 11 determines whether the changed print settings include print settings that cannot be combined with the processing options set in the auxiliary program 42 (S16).
  • S15 and S16 are examples of option determination processing.
  • the auxiliary program 42 determines that the changed print settings are inappropriate based on the processing options set in the auxiliary program 42 (alt: inappropriate), the print settings are inappropriate.
  • Incompatibility notification data indicating that is generated C11).
  • the unsuitability notification data in this case is an example of the third notification data.
  • C11 in this case is an example of the third generation process.
  • the auxiliary program 42 passes the inappropriate notification data generated at C11 to the general-purpose printing program 41 (C13).
  • the general-purpose printing program 41 displays the inappropriate notification data received from the auxiliary program 42 in the notification column 52 (see FIG. 4) of the print setting screen D2, as shown in FIG. 10B, for example (C14).
  • the notification field 52 displays, for example, notification information M6 explaining that double-sided printing and poster printing cannot be set together.
  • a method for setting poster printing on the detailed setting screen to "No" is displayed, and when priority is given to poster printing, the setting for double-sided printing is changed to single-sided printing.
  • Guide information GM6 is displayed to convey how to deal with the problem.
  • an image IM6 is displayed to give an impression that poster printing is not possible.
  • C13 and C14 in this case are an example of the third display process.
  • FIGS. 10(a) and 10(b) instead of the guide information GM5 and GM6, an object having a link embedded with the URL of the web page displaying the guide information GM5 and GM6 is displayed in the notification column 52. You may
  • auxiliary program 42 determines that the changed print settings are proper (alt: proper)
  • it generates proper notification data indicating that the print settings are proper (C12).
  • Appropriate notification data is an example of second notification data.
  • C12 is an example of the second generation process.
  • the auxiliary program 42 passes the generated proper notification data to the general-purpose printing program 41 (C13), and displays it in the notification column 52 of the print setting screen D2 (C14).
  • the notification field 52 displays notification information M11 indicating that the print settings are correct.
  • the notification field 52 displays an image IM11 indicating that the print settings are correct.
  • the CPU 11 determines that the print setting after the change does not include an inappropriate combination corresponding to exclusion information (S12: NO), and the processing option is not set in the auxiliary program 42 (S14: NO), it is determined that the changed print settings are appropriate (S17), and the process ends.
  • C12 to C14 shown in FIG. 8 are performed in the same manner as described above, and notification data indicating properness is displayed in the notification column 52 .
  • the user's instruction to execute printing may be directly input to the general-purpose printing program 41 , or may be input to the information application 43 and output from the information application 43 to the general-purpose printing program 41 .
  • the general-purpose print program 41 When the general-purpose print program 41 receives a print execution instruction from the user (D01), it uses the print settings received on the print setting screen D2 to change the format of the image data representing the image to be printed into the format of the intermediate image data.
  • Intermediate image data is generated by conversion (D02), and the generated intermediate image data is delivered to the auxiliary program 42 (D03).
  • Various types of image data are included in the information application 43, and the general-purpose print program 41 converts image data to be printed into intermediate image data suitable for generating print data. Note that if the image data to be printed 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 intermediate image data is, for example, XPS data.
  • the auxiliary program 42 reflects the print settings set in the auxiliary program 42 on the intermediate image data received in D03, and processes the intermediate image data (D04). For example, when poster printing (1 in 2 ⁇ 2) is set, the auxiliary program 42 divides the image data to be printed into two vertically and horizontally to generate divided image data.
  • the processed intermediate image data is an example of processed data.
  • D04 is an example of processing.
  • the auxiliary program 42 rasterizes the processed intermediate image data and generates print data indicating the image to be printed (D05).
  • the print data generated in D05 is data in a format that can be used for printing by the printer 2, such as PDL data dedicated to the model of the printer 2.
  • the print data generated by the auxiliary program 42 may be data in a format that can be used for printing by a printer other than the model of the printer 2 .
  • the auxiliary program 42 sends the print data generated in D05 to the printer 2 together with a print command instructing execution of printing (D06).
  • D06 is an example of transmission processing. If there is image processing determined to be executed by the printer 2, the auxiliary program 42 generates a print command including information on that processing. The auxiliary program 42 may also notify the general-purpose printing program 41 that the transmission of the print data has ended (D08).
  • the printer 2 Upon receiving the print data and the print command, the printer 2 prints the image of the print data based on the received print command (D07). A printed matter is thus generated.
  • the general-purpose print program 41 may generate print data.
  • the auxiliary program 42 may pass the intermediate image data processed in D03 and the print execution information to the general-purpose printing program 41, and the general-purpose printing program 41 may rasterize the intermediate image data to generate print data.
  • the general-purpose print program 41 passes the generated print data to the auxiliary program 42 .
  • the auxiliary program 42 transmits the print data received from the general-purpose print program 41 to the printer 2 together with a print command instructing execution of printing.
  • 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 rasterization is performed by the general-purpose printing program 41, the processing of the auxiliary program 42 is small, 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 transmission of print data and print commands 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 transmits the print data and the like received from the auxiliary program 42 to the printer 2 .
  • the process in which the auxiliary program 42 passes print data and the like to the general-purpose print program 41 is an example of the transmission process.
  • the auxiliary program 42 of this embodiment acquires the capability information of the printer 2, and when the print settings are changed, the changed print settings are determined to be inappropriate based on the capability information.
  • notification data indicating that the print settings are inappropriate is passed to the general-purpose print program 41 and displayed in the notification column 52 of the print setting screen D2.
  • the PC 1 that uses the general-purpose print program 41 of the OS 21 can be notified that the print settings are inappropriate, and as a result, the user knows information about whether or not the print settings can be set, resulting in unintended print results. The possibility of avoiding this will increase.
  • 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 printers connected to the PC 1 is not limited to the illustrated example, and may be two or more.
  • each notification image example in FIG. 10 is an example, and is not limited to the illustrated example.
  • Acquisition of capability information is not limited to when the printer is selected on the print setting screen D2 (A07 to A13 in FIG. 2), but may be obtained when installing the auxiliary program 42, or whenever the print settings are changed.
  • the auxiliary program 42 stores in the memory 12 information based on the acquired ability information (either the ability information itself or, for example, list information of exclusion settings generated based on the ability information). It is used in the suitability judgment process (C04 in FIG. 8).
  • FIGS. 10A and 10B different notification data is generated for each setting value of the setting item of the print setting that is inappropriate, and different notification data is displayed in the notification column 52. displayed the image.
  • the same notification data may be generated and the same notification image may be displayed in the notification column 52 .
  • FIGS. 10A and 10B by displaying different notification information, guide information, and images for each combination of inappropriate setting items, the user can understand which setting items are inappropriate. easy to understand.
  • the guide information GM5 and GM6 shown in FIGS. 10(a) and 10(b) may not be displayed.
  • the notification column 52 displays guide information for making the print settings appropriate, thereby making it easier for the user to change the print settings to appropriate ones.
  • the appropriate notification data may not be displayed in the notification column 52 by not performing the processes of C12 to C14 in FIG.
  • the notification field 52 may display information other than the propriety of the print settings, such as the printer manufacturer's logo or advertisement. According to this, it is possible to reduce the annoyance of switching the display every time the print settings are appropriately changed, and avoid giving stress to the user.
  • the notification data indicating that is displayed in the notification column 52, so that the user can change the print settings on the PC 1 using the general-purpose print program 41 of the OS 21. It is possible to know information about whether the setting is possible or not.
  • S14 to S16 in FIG. 9 may be omitted.
  • the auxiliary program 42 sets a processing option for processing the image to be printed, if the changed print settings are determined to be inappropriate, notification data indicating that the print settings are inappropriate is sent to a general purpose user.
  • the print program 41 By passing it to the print program 41 and displaying it in the notification column 52 of the print setting screen D2, the user in the PC 1 using the general-purpose print program 41 of the OS 21 can know information about the propriety of the print settings based on the processing options.
  • capability information may be acquired when changing print settings, and exclusion information may be generated based on the capability information.
  • exclusion information when selecting a printer, it is possible to reduce the time required to determine whether print settings can be set, compared to the case of acquiring capability information and generating exclusion information when changing print settings.
  • the auxiliary program 42 may be started. Also in this case, the auxiliary program 42 should execute notification data generation processing and pass the notification data to the general-purpose printing program 41, as in the case where the printer 2 is selected.
  • 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.

Abstract

OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、印刷設定の設定可否に関する情報を表示すること。 PC1と接続するプリンタ2に対応し、PC1のOS21にあらかじめ組み込まれた汎用印刷プログラム41をサポートする補助プログラム42をPC1に組み込む。汎用印刷プログラム41は、PC1のディスプレイ13aに印刷設定画面D2を表示させるためのデータを取り扱うことが可能である。PC1では、情報アプリ43が汎用印刷プログラム41を使用して印刷設定画面D2をディスプレイ13aに表示させ、補助プログラム42が、印刷設定画面D2にて変更された印刷設定の組み合わせの適否を判断し、変更された印刷設定が不適な組み合わせであると判断した場合、印刷設定が不適であることを示す通知データを生成し、生成した通知データを印刷設定画面D2に表示させる。

Description

サポートプログラム
 本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラムに関する。
 従来、プリンタドライバを利用して、印刷設定の設定可否に関する情報を表示する技術が知られている。例えば特許文献1には、特定の機能の設定を制限する禁則機能を有するプリンタドライバであって、禁則機能を動作させた場合にどの設定を選択すれば印刷可能になるかを示す画面を表示する構成が開示されている。
特開2017-156980号公報
 近年、プリンタドライバを利用せず、オペレーティングシステム(OS)に標準に組み込まれている汎用印刷プログラムによってプリンタを制御する技術が実用化されている。
この技術では、OSがプリンタを検知するとOS標準の汎用印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタドライバを用いずに、OS標準の汎用印刷プログラムによる印刷が可能になる。
 しかしながら、OS標準の汎用印刷プログラムを用いる情報処理装置において、プリンタドライバのような印刷前に印刷設定の設定可否に関する情報を表示する構成は知られていない。そのため、OS標準の汎用印刷プログラムを用いた環境での表示技術には、改善の余地がある。
 本明細書において開示する技術は、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、印刷設定の設定可否に関する情報を表示することを目的としてなされたものである。
 上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応し、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムをサポートするサポートプログラムであって、前記汎用印刷プログラムは、前記情報処理装置のディスプレイに印刷設定画面を表示させるためのデータを取り扱うことが可能であり、前記コンピュータに、前記プリンタの能力を示す能力情報を取得する能力取得処理を実行させ、さらに前記コンピュータに、前記印刷設定画面にて印刷設定が変更されたことによって前記汎用印刷プログラムから処理が要求された場合に、変更された前記印刷設定を取得する設定取得処理と、前記能力取得処理にて取得された前記能力情報に基づいて、前記設定取得処理にて取得された前記印刷設定の適否を判断する判断処理と、を実行させ、さらに前記コンピュータに、前記判断処理にて前記印刷設定が不適と判断された場合に、印刷設定が不適であることを示す第1通知データを生成する第1生成処理と、前記第1生成処理にて生成された前記第1通知データを前記汎用印刷プログラムに渡し、前記情報処理装置の前記ディスプレイに表示される前記印刷設定画面に前記第1通知データを表示させる第1表示処理と、を実行させる、ように構成されている。
 上記のように構成されるサポートプログラムは、プリンタの能力情報を取得し、印刷設定が変更された際に、変更された印刷設定がその能力情報に基づいて不適と判断された場合に、印刷設定が不適であることを示す通知データを生成する。サポートプログラムは、生成した通知データを汎用印刷プログラムに渡して印刷設定画面に表示させる。汎用印刷プログラムは、プリンタのモデルごとに対応するプリンタドライバとは異なる印刷プログラムである。これにより、OSの汎用印刷プログラムを用いる情報処理装置において、汎用印刷プログラムを使用して表示される印刷設定画面の中で、不適の印刷設定であることを通知することができるようになる。その結果としてユーザがその印刷設定の設定可否に関する情報を知ることから、意図しない印刷結果となることを回避できる可能性が高まる。
 上記サポートプログラムの機能を実現するための装置、制御方法、および当該サポートプログラムを格納するコンピュータにて読取可能な記憶媒体も、新規で有用である。
 本明細書に開示される技術によれば、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、印刷設定の設定可否に関する情報を表示する技術が実現される。
PCの電気的構成の概略を示すブロック図である。 印刷が選択された場合の手順の例を示すシーケンス図である。 情報画面の例を示す図である。 印刷設定画面の例を示す図である。 印刷設定の不適な組み合わせの例を示す図である。 詳細設定が選択された場合の手順を説明するシーケンス図である。 詳細設定画面の例を示す図である。 印刷設定の変更を受け付けた場合の手順の例を示すシーケンス図である。 適否判断処理の一例を示すフローチャートである。 通知データの表示例を示す図である。 印刷指示を受け付けた場合の手順の例を示すシーケンス図である。
 以下、本形態のサポートプログラムを利用するパーソナルコンピュータ(以下、「PC」とする)について、添付図面を参照しつつ詳細に説明する。本明細書は、PCにて実行されるサポートプログラムを開示する。
 本形態の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は、情報を表示可能なディスプレイ13aと、入力受付機能を有するマウスやキーボード等と、の組であっても良いし、ディスプレイ13aと入力受付機能とを備えるタッチパネルであっても良い。ユーザIF13は、ディスプレイの一例を含む。
 通信IF14は、プリンタ2等の外部装置と通信を行うためのハードウェアを含む。通信IF14の通信規格は、イーサネット(登録商標)、Wi-Fi(登録商標)、USBなどである。PC1は、通信IF14を介して、インターネットに接続可能であっても良い。また、PC1は、複数の通信規格に対応する複数の通信IF14を備えていてもよい。
 PC1のメモリ12には、図1に示すように、汎用印刷プログラム41を含むオペレーティングシステム(以下、「OS」とする)21と、補助プログラム42と、各種のアプリケーションプログラム(以下、「アプリ」とする)と、が記憶されている。OS21は、例えば、Windows(登録商標)、macOS(登録商標)、Linux(登録商標)、iOS(登録商標)、Android(登録商標)である。補助プログラム42は、サポートプログラムの一例である。
 本形態のPC1には、各種のアプリとして、例えば、情報アプリ43が組み込まれている。情報アプリ43は、例えば、地図アプリ、カレンダアプリ、ブラウザ、であり、ユーザの要求に応じて各種の情報をディスプレイ13aに表示させる機能を備えている。情報アプリ43は、アプリケーションプログラムの一例である。なお、情報アプリ43自身は、表示させた情報を印刷させる機能を備えていなくても良い。
 汎用印刷プログラム41は、OS21とともに提供されるOS標準のプログラムであり、情報アプリ43等によってディスプレイ13aに表示されている情報を、プリンタ2等に印刷させるための機能を有する。本形態の汎用印刷プログラム41は、印刷対象の画像データに基づいて、中間画像データを生成する機能を含むプログラムである。汎用印刷プログラム41は、各種のプリンタのベンダによって提供される複数種類のモデルのプリンタが共通に利用できる機能をサポートしている。汎用印刷プログラム41は、各種のプリンタに固有のプリンタドライバとは異なり、各種のプリンタが固有に備える機能の全てに対応するものではなく、サポートする機能は汎用的なものに限られる。
 補助プログラム42は、汎用印刷プログラム41の処理に付随してOS21からの指示に基づいて処理を実行するプログラムまたはプログラム群であり、対象のハードウェアの制御をサポートするプログラムである。本形態の補助プログラム42は、PC1に接続されているプリンタ2のモデルに対応するものであり、例えば、汎用印刷プログラム41を使用してプリンタ2に印刷を実行させる指示を受け付けた場合に、汎用印刷プログラム41から起動される。補助プログラム42は、例えば、印刷サポートアプリ(略称、PSA)、またはハードウェアサポートアプリ(略称、HSA)と呼ばれるものである。
 なお、補助プログラム42は、それぞれが実行命令を受け付ける複数のプログラムの組み合わせであっても良いし、1つのプログラムであって命令に応じてそれぞれ異なる処理を実行できるプログラムであっても良い。また、補助プログラム42は、プリンタのベンダによってプリンタのタイプごとに用意されるプログラムであっても良い。例えば、インクジェットプリンタ用の補助プログラムやレーザプリンタ用の補助プログラムが、それぞれ用意されても良い。プリンタのタイプごとに限らず、プリンタのモデルごとやプリンタのモデルのシリーズごとに用意される補助プログラムが有っても良い。
 PC1のOS21は、例えば、新たなプリンタがPC1に接続された場合、接続されたプリンタのタイプやモデルに応じて、適切な補助プログラムをサーバ等からダウンロードしてPC1に組み込むことができる。OS21は、組み込んだ補助プログラムの識別情報を新たに接続されたプリンタのプリンタ情報に対応付けて、メモリ12に記憶させる。
 本形態のPC1は、図1に示すように、プリンタ2に接続されている。プリンタ2は、少なくとも印刷機能と通信機能とを有する装置である。プリンタ2は、印刷データと印刷設定とをPC1等の外部装置から受信し、印刷設定に従って印刷を行う。印刷設定の設定項目の例としては、部数、印刷向き、給紙トレイ、用紙サイズ、用紙種類、両面印刷、カラー印刷、ふちなし印刷がある。
 印刷設定の設定項目の例としては、前述した設定項目の他、印刷対象の画像を加工する加工オプションがある。加工オプションの例としては、集約印刷、分割印刷、拡縮印刷がある。集約印刷は、N(Nは複数)ページの画像を縮小して1枚の用紙に配置して印刷する印刷方法である。集約印刷の例としては、割り付け印刷(Nin1)と小冊子印刷がある。割り付け印刷では、1枚の用紙に原稿の画像をページの順番に配置する。小冊子印刷では、用紙を小冊子のように折り畳んだときに原稿のページが順番に配置されるように画像を並び替えて、用紙の表面と裏面に原稿の画像を配置する。分割印刷は、1ページ分の画像をM(Mは複数)枚の用紙に分割して印刷する印刷方法である。分割印刷の例としては、印刷した用紙を貼り合わせるための余白を設けて印刷するポスター印刷がある。拡縮印刷は、1ページ分の画像を指定された倍率に拡大または縮小して印刷する印刷方法である。
 プリンタ2は、プリンタ2が有する機能に基づいて、印刷設定を受け付けることができる。また、プリンタ2は、例えば割り付け印刷(Nin1)など、プリンタ2が画像処理を行える加工オプションの設定を受け付けることもできる。なお、加工オプションは、補助プログラム42による画像処理によっても実現できる。プリンタ2は、プリンタ2が画像処理を行えず、補助プログラム42が画像処理を行う加工オプションの設定は、受け付けない。例えば、補助プログラム42が画像の縮小と並べ替えを行う場合、プリンタ2は、集約印刷の設定を受け付けない。すなわち、プリンタ2は、プリンタ2の能力に応じて、設定可能な各項目のパラメータを記憶している。プリンタ2には、プリンタ2に設定可能な印刷設定について、適正な組み合わせを示す情報を記憶している。
 補助プログラム42は、プリンタ2に専用の印刷設定画面(以下「詳細設定画面」とする)を表示する機能を有する。補助プログラム42は、プリンタ2が設定を受け付けることができる項目の他、前述したように、プリンタ2が画像処理できず、補助プログラム42が画像処理を行う項目を詳細設定画面に表示させ、設定を受け付けることができる。
 補助プログラム42は、プリンタ2の能力に基づいて組み合わせの適否を判断し、不適な印刷設定の組み合わせによる印刷指示を行うことを制限する。例えば、プリンタ2がトレイ2から封筒を搬送できないとする。この場合、補助プログラム42の詳細設定画面では、設定項目「給紙トレイ」に設定値「トレイ2」を設定した状態において、設定項目「用紙サイズ」の設定値に「封筒サイズ」を設定できないようにする。
 汎用印刷プログラム41は、サポートする機能について、印刷設定画面を介して印刷設定を受け付ける。汎用印刷プログラム41は、複数種類のプリンタに対応するため、補助プログラム42のように、不適な組み合わせの印刷設定を制限する処理は行っていない。
例えば、汎用印刷プログラム41は、トレイ2から封筒を搬送できないプリンタ2を選択し、設定項目「給紙トレイ」に設定値「トレイ2」を設定した状態で、設定項目「用紙サイズ」の設定値に「封筒サイズ」を設定することができる。
 次に、本形態の補助プログラム42の動作を含む印刷の手順であって、情報アプリ43にて印刷が選択された場合の各プログラムによる手順について、図2のシーケンス図を参照して説明する。なお、図2および後述する他のシーケンス図では、プリンタ2に対応する補助プログラム42がPC1に組み込まれている場合の動作について示している。
 なお、本形態における処理およびフローチャートの各処理ステップは、基本的に、補助プログラム42などのプログラムに記述された命令に従ったCPU11の処理を示す。CPU11による処理は、OS21のAPIを用いたハードウェア制御も含む。本明細書では、OS21の詳細な記載を省略して各プログラムの動作を説明する。また、「取得」は要求を必須とはしない概念で用いる。
 手順の最初に、ユーザが情報アプリ43を起動する(A01)。情報アプリ43は、ユーザの指示に応じて、各種の情報を含む情報画面をディスプレイ13aに表示させる(A02)。表示中の情報画面の画像を印刷させたい場合、ユーザは、情報画面にて印刷を選択する(A03)。例えば、図3に示すように、情報画面D1には、設定ボタンSW1が含まれる。ユーザの操作によって設定ボタンSW1が押下されると、図3に示すように、「印刷」を含むプルダウンメニューDLが表示される。プルダウンメニューDL中の「印刷」がユーザによって選択されると、情報アプリ43は、OS21の汎用印刷プログラム41に表示要求と情報画面のデータを送る (A04)。
 汎用印刷プログラム41は、表示要求がされたことに応じて、印刷設定画面をディスプレイ13aに表示させる(A06)。印刷設定画面は、印刷設定の指示や印刷実行の指示を受け付ける画面である。例えば、図4に示すように、印刷設定画面D2には、プリンタの選択を受け付けるプリンタ選択欄51と、通知画像を表示する通知欄52と、各種の印刷設定の指定を受け付ける印刷設定欄53と、印刷対象となる情報画面の画像を示すプレビュー欄54と、詳細な印刷設定を行う指示を受け付ける詳細設定ボタンSW2と、印刷実行の指示を受け付ける印刷ボタンSW3と、が含まれる。
 印刷設定欄53では、汎用印刷プログラム41がサポートする機能について印刷設定の項目が表示され、印刷設定値を受け付けることができる。印刷設定欄53を介して設定可能な項目の例としては、部数、印刷向き、両面印刷、割り付け印刷(Nin1)、用紙サイズ、給紙トレイ、印刷範囲、用紙種類、カラー、ふちなし印刷、拡縮、印刷品質(解像度)がある。印刷設定欄53では、印刷設定を容易にするため、主要な項目だけを表示し、その他の設定を操作した場合に、他の項目を追加表示するようにしてもよい。
 通知欄52に表示される通知画像は、ユーザに通知する通知内容を示す画像である。汎用印刷プログラム41は、印刷設定画面D2を表示させるためのデータを取り扱うことができる。
 図2に示すように、ユーザは、表示中の印刷設定画面D2にて、プリンタ選択欄51への操作を行うことでプリンタの選択を行うことができる(A07)。選択されたプリンタがプリンタ2である場合、汎用印刷プログラム41は、プリンタ2に対応する補助プログラム42を起動して、プリンタの選択に対応する処理を要求する(A08)。A08では、汎用印刷プログラム41は、選択されたプリンタの情報や、プリンタの選択時に設定されていた印刷設定の情報を、補助プログラム42に渡す。
 なお、汎用印刷プログラム41は、OS21にて通常使用するプリンタとしてプリンタ2が設定されている場合には、例えば、図4に示すように、プリンタ2が選択された状態で印刷設定画面D2を表示し(A06)、補助プログラム42を起動する(A08)。すなわち、OS21によってプリンタ2が自動的に選択され、汎用印刷プログラム41は、選択されたプリンタ2の情報に基づいて、A08を実行する。この場合、ユーザによるA07の操作は不要である。
 なお、汎用印刷プログラム41が印刷設定画面D2を表示する代わりに、情報アプリ43が印刷設定画面D2を表示させる構成でも良い。その場合、情報アプリ43は、A03で印刷が選択されたことに応じて汎用印刷プログラム41を起動し、印刷設定画面D2に表示させるためのデータを汎用印刷プログラム41から取得して、印刷設定画面D2をディスプレイ13aに表示させる。そして、情報アプリ43は、プリンタ2が選択されていることに応じて、あるいは、A07にてプリンタ2が選択されたことに応じて、選択されたプリンタ2の情報を汎用印刷プログラム41に渡す。これにより、汎用印刷プログラム41は、A08にて、プリンタ2に対応する補助プログラム42を起動する。
 補助プログラム42は、起動されたことに応じて、OS21に対してプリンタ2の能力情報を要求する(A11)。OS21は、補助プログラム42からの要求を受けて、プリンタ2に能力情報を要求する取得要求を送信し、プリンタ2から能力情報を取得する(A12)。OS21は、プリンタ2から取得した能力情報を補助プログラム42に渡す(A13)。A11~A13は、能力取得処理の一例である。
 OS21は、例えば、IPP(internet printing protocolの略)に応じた通信によって、プリンタ2との通信を行う。なお、補助プログラム42は、OS21に要求する代わりに、例えば、MIB(Management Information Baseの略)を使って、プリンタ2から直接、能力情報を取得しても良い。
 プリンタ2から取得する能力情報には、印刷設定として設定可能なパラメータの情報が含まれる。また、能力情報には、適正な印刷設定の組み合わせを示す情報が含まれる。また、能力情報には、例えば、ステータス情報、消耗品の残量情報、装着されているトレイの情報、トレイごとに設定されている用紙の用紙情報、対応可能な印刷解像度の情報、が含まれる。また、プリンタ2は、受け付けた印刷ジョブに基づいて画像処理を行って,画像処理後のデータに基づいて印刷する機能、例えば、Nin1等の集約印刷、ウォータマーク等の合成印刷、着色剤を節約する節約印刷、を行う機能を有していても良い。プリンタ2にて実行可能な画像処理の機能を有している場合、プリンタ2は、その機能の情報を能力情報としてOS21に渡しても良い。
 補助プログラム42は、A13にてOS21から通知された能力情報を、メモリ12内の補助プログラム42にて使用可能な所定の領域に記憶する(A14)。なお、補助プログラム42は、能力情報が既にメモリ12に記憶されている場合、記憶されている能力情報に上書きして今回の能力情報を記憶する。
 補助プログラム42は、取得した能力情報に基づく排他情報を取得する排他情報取得処理を実行する(A15)。排他情報は、印刷設定の不適の組み合わせを示す情報である。
印刷設定の不適の組み合わせは幾つかある。図5に設定できない組み合わせの例を示す。
例えば図5(a)の排他No.1および排他No.2に示すように、給紙方法(給紙トレイ)によっては、搬送できない用紙の種類やサイズがある。また、排他No.3および排他No.4に示すように、用紙の種類やサイズによっては、ふちなし印刷や両面印刷ができない場合がある。さらに、排他No.5に示すように、印刷方法によっては、性質上併用できない印刷方法の組み合わせがある。
 排他情報取得処理を具体的に説明する。補助プログラム42は、A13にて取得した能力情報に含まれる適正な印刷設定の組み合わせを逆算することにより、印刷設定の不適の組み合わせを抽出する。そして、抽出した不適の組み合わせを図5(a)に示す排他一覧データに記述する。排他一覧データは、メモリ12の補助プログラム42用の記憶領域に記憶される。排他一覧データは、例えば、Print Device Capabilities(XML形式のファイル)により記述される。排他一覧データは、排他情報の一例である。排他情報は、取得された能力情報そのものでもよい。
 例えば、プリンタ2は、トレイ1とトレイ2とを備え、トレイ1から光沢紙を給紙できるが、トレイ2から光沢紙を供給できないとする。この場合、設定項目「給紙トレイ」に設定値「トレイ1」を設定する設定(以下、このような設定は「給紙トレイ:トレイ1」と略記する)と「用紙種類:光沢紙」は、適正な印刷設定の組み合わせとして、取得した能力情報に含まれている。一方、「給紙トレイ:トレイ2」と「用紙種類:光沢紙」とは、適正な印刷設定の組み合わせとして、取得した能力情報に含まれていない。そこで、補助プログラム42は、図5(a)の排他No.1に示すように、「給紙トレイ:トレイ2」と「用紙種類:光沢紙」との組み合わせを、排他情報として排他一覧データに記述する。
 プリンタの能力は、プリンタのモデルによって異なる。補助プログラム42は、選択されたプリンタのモデルによって、異なる能力情報を取得する。その結果として、モデルによって、異なる排他一覧データが記憶されることになる。
 なお、図5(b)に示すように、プリンタ2が画像処理できず、補助プログラム42が画像処理する加工オプションにも、不適な組み合わせが幾つかある。加工オプションの不適な組み合わせには、排他No.11,排他No.13に示すように、加工オプションと印刷設定との組み合わせもあれば、排他No.12に示すように、加工オプション同士の組み合わせもある。プリンタ2が画像処理できず、補助プログラム42が画像処理する加工オプションの不適な組み合わせを示すデータも、メモリ12に設けられた補助プログラム42用の記憶領域に記憶されている。
 図2に戻り、補助プログラム42は、A13にて通知された能力情報に基づいて、通知データ生成処理を実行する(A21)。通知データ生成処理は、印刷設定画面D2の通知欄52に表示させる通知画像を示す通知データを生成する処理である。通知欄52に表示させる通知画像は、例えば、テキスト、静止画像、動画を含んでも良く、これらの組み合わせであっても良い。例えば、A15の通知データ生成処理では、プリンタメーカのロゴや、広告を含む通知データが生成される。通知データは、通知欄52に何も表示させない場合、空データとしてもよい。
 なお、データ生成処理では、A13にて通知された能力情報とA15にて取得した排他情報とに基づいて印刷設定の適否を判断し、その適否に応じた通知データを生成してもよい。この処理は、後述する図8のC04、C11,C12と同様なので、説明を省略する。
 さらに、補助プログラム42は、生成した通知データと能力情報に基づく印刷設定値の情報とを含む表示情報を汎用印刷プログラム41に渡し(A22)、処理を終了する。汎用印刷プログラム41は、補助プログラム42から受け取った表示情報に基づいて、ディスプレイ13aに表示されている印刷設定画面D2の通知欄52に通知画像を表示させる(A23)。A23では、通知欄52に通知データに基づく通知画像が表示されるほか、印刷設定欄53に、各印刷設定の初期値として、プリンタ2の能力情報に基づく情報が表示される。尚、A23の処理は情報アプリ43が印刷設定画面D2を表示する構成の場合、情報アプリ43が通知データを受けて通知欄52に通知画像を表示させる。
 なお、図4の例では、1つの通知欄52を含む印刷設定画面D2を示したが、通知欄52の配置や形状、大きさ、個数等は、この図の例に限らない。補助プログラム42は、汎用印刷プログラム41から通知欄52の情報を取得し、取得した情報に基づいて、通知欄52に表示させる通知データを決定しても良い。例えば、通知欄52を表示可能な配置が複数有って、補助プログラム42にて表示場所を指定できる場合には、補助プログラム42は、表示場所を指定する情報を含む通知データを汎用印刷プログラム41に渡しても良い。また、通知欄52の大きさを選択できる場合には、補助プログラム42は、大きさを指定する情報を汎用印刷プログラム41に渡しても良い。
 なお、補助プログラム42は、通知データを生成して汎用印刷プログラム41に渡す代わりに、補助プログラム42自身にて情報を表示することもできる。ただし、その場合、印刷設定画面D2とは別に画面を表示することになるため、表示が煩雑になってユーザのストレスになる可能性がある。OS21の汎用印刷プログラム41の印刷設定画面D2の中に表示すれば、表示がシンプルになり、ユーザのストレスが回避される。
 次に、図4に示した印刷設定画面D2の表示中、詳細設定ボタンSW2へのユーザの操作による詳細設定の指示を受け付けた場合の各プログラムによる手順について、図6を参照して説明する。
 図6のシーケンス図に示すように、汎用印刷プログラム41は、ユーザによる詳細設定の指示に基づいて(B01)、補助プログラム42起動する(B02)。汎用印刷プログラム41は、印刷設定画面D2の印刷設定欄53に設定されている印刷設定を、補助プログラム42に渡し、詳細な設定を受け付ける処理を要求する。
 補助プログラム42は、例えば図7に示す詳細設定画面D3をディスプレイ13aに表示させる。詳細設定画面D3には、詳細設定欄61と適用ボタンSW22が表示されている(B03)。詳細設定欄61には、補助プログラム42がサポートする機能について、各種の印刷設定の項目が表示されている。各項目には、汎用印刷プログラム41から受け取った印刷設定が反映されている。詳細設定欄61では、印刷設定画面D2(図4参照)にて設定可能な項目の他、ポスター印刷、小冊子印刷、ステープルなど、印刷設定画面D2にて設定できない項目についても、印刷設定値を設定することができる。詳細設定画面D3では、ポスター印刷や小冊子印刷など、プリンタ2の能力情報に含まれない加工オプションについても、設定することができる。B03,B04は、設定処理の一例である。
なお、割り付け印刷のように汎用印刷プログラム41が対応可能な加工オプションについては、印刷設定画面D2(図4)を介して設定することができる。印刷設定画面D2を介して加工オプションを設定する処理も、設定処理の一例である。
 補助プログラム42は、適用ボタンSW22の操作により印刷設定の変更指示を受け付けると、詳細設定欄61に設定された印刷設定を用いてB02にて受け取った印刷設定を変更する(B04)。補助プログラム42は、変更した印刷設定を、汎用印刷プログラム41に渡し、処理を終了する(B05)。印刷設定画面D2に設定できない項目については、補助プログラム42用のメモリ領域に記憶しておく。汎用印刷プログラム41は、補助プログラム42から受け取った変更後の印刷設定について表示可能なものを、図4に示す印刷設定画面D2の印刷設定欄53に表示させる(B06)。なお、補助プログラム42では、不適な組み合わせの印刷設定を受け付けることができない。そのため、補助プログラム42は、通知データを生成していない。
 次に、図4に示した印刷設定画面D2の表示中、印刷設定欄53へのユーザの操作による印刷設定の変更指示を受け付けた場合の各プログラムによる手順について、図8のシーケンス図を参照して説明する。なお、印刷設定画面D2では、前述したように、印刷設定欄53への操作による印刷設定の変更指示や、印刷ボタンSW3への操作による印刷実行の指示を受け付け可能である。
 汎用印刷プログラム41は、ユーザによる印刷設定変更の指示に基づいて(C01)、印刷設定画面D2の印刷設定欄53の表示内容を変更する(C02)。さらに、汎用印刷プログラム41は、印刷設定が変更された場合にも、補助プログラム42を起動して、印刷設定の変更に対応する処理を要求する(C03)。C03では、補助プログラム42は、変更後の印刷設定の情報を、汎用印刷プログラム41から受け取る。C03は、設定取得処理の一例である。
 補助プログラム42は、印刷設定の適否を判断する適否判断処理を行う(C04)。補助プログラム42は、適否判断処理において印刷設定が不適と判断した場合(alt:不適)、不適な印刷設定であることを示す不適通知データを生成する(C11)。一方、補助プログラム42は、適否判断処理において印刷設定が適正と判断した場合(alt:適正)、適正な印刷設定であることを示す適正通知データを生成する(C12)。補助プログラム42は、C11,C12にて生成した通知データを汎用印刷プログラム41に渡す(C13)。汎用印刷プログラム41は、受け取った通知データを図4の印刷設定画面D2の通知欄52に表示させる(C14)。すなわち、情報アプリ43から起動されて表示された印刷設定画面D2に、補助プログラム42によって生成された不適通知データに基づく画像が表示される。C04、C11~C14について、図9、図10を参照しながら具体的に説明する。
 図9は、図8に示すC04に示す適否判断処理の手順の一例を示すフローチャートである。適否判断処理は、補助プログラム42の記載に基づいて、PC1のCPU11にて実行される。
 適否判断処理では、CPU11は、まず、図2のA15にて生成した排他情報をメモリ12から読み出す(S11)。CPU11は、読み出した排他情報に、図8のC03にて受け取った変更後の印刷設定を照合し、変更後の印刷設定が排他情報に該当する組み合わせを含むか否かを判断する(S12)。すなわち、CPU11は、変更した印刷設定が図5(a)に示す印刷設定の不適な組み合わせか否かを判断する。S11,S12は、判断処理の一例である。
 例えば、プリンタ2では、封筒に両面印刷できないとする。この場合において、図4に示す印刷設定画面D2では、設定項目「用紙サイズ」に設定値「A4サイズ」が設定され、設定項目「両面印刷」に「両面印刷」が設定され、印刷設定が適正に組み合わされているとする。この状態において、印刷設定画面D2において、用紙サイズが「封筒サイズ」に変更された場合、封筒サイズと両面印刷の組み合わせが、図5(a)の排他No.4に示す不適の組み合わせに該当することになる。この場合、CPU11は、変更した印刷設定が排他情報に該当する組み合わせを含むので(S12:YES)、変更後の印刷設定が不適であると判断し(S13)、処理を終了する。
 図8に示すように、補助プログラム42は、変更後の印刷設定が排他情報に基づいて不適であると判断した場合(alt:不適)、印刷設定が不適であることを示す不適通知データを生成する(C11)。補助プログラム42は、例えば、不適であった印刷設定の設定項目の設定値ごとに異なる通知情報を生成し、その通知情報を含む不適通知データを生成する。不適通知データには、印刷設定を適正にするためのガイド情報を含めてもよい。
不適通知データは、不適な組み合わせを示す画像を含めてもよい。なお、不適通知データには、ガイド情報と静止画との両方あるいは何れか一方を省略してもよい。また、不適通知データは、例えば、印刷設定を適正にするための動画を含んでもよい。この場合の不適通知データは、第1通知データの一例である。この場合のC11は、第1生成処理の一例である。
 補助プログラム42は、C11にて生成した不適通知データを汎用印刷プログラム41に渡す(C13)。汎用印刷プログラム41は、例えば図10(a)に示すように、補助プログラム42から受け取った不適通知データを、印刷設定画面D2の通知欄52(図4参照)に表示させる(C14)。通知欄52には、例えば、封筒サイズと両面印刷とを一緒に設定できないことを説明する通知情報M5が表示される。また、通知欄52には、例えば、封筒印刷を優先する場合、両面印刷の設定を片面印刷に変更する対応方法や、両面印刷を優先する場合、用紙サイズを封筒サイズ以外に変更する対応方法を伝えるガイド情報GM5が表示される。さらに、通知欄52には、例えば、封筒印刷と両面印刷とを併用できないことをイメージさせる画像IM5が表示される。この場合のC13は、第1表示処理の一例である。
 図9に示すように、CPU11は、変更した印刷設定が排他情報に該当する組み合わせを含まない場合(S12:NO)、加工オプションの設定があるか否かを判断する(S14)。図5(b)に示すように、プリンタ2が設定できない加工オプションは、排他情報に含まれない。プリンタ2が設定できない加工オプションは、図4の印刷設定画面D2にて設定できず、図7の詳細設定画面D3にて設定される。そこで、CPU11は、メモリ12を参照し、補助プログラム42に設定されている印刷設定に基づいて加工オプションの有無を判断する。
 CPU11は、加工オプションが設定されていると判断する場合(S14:YES)、図5(b)に示す加工オプションの不適な組み合わせを示す情報を、メモリ12から読み出す(C15)。
 CPU11は、変更後の印刷設定が、補助プログラム42に設定されている加工オプションと組み合わせることができない印刷設定を含むか否かを判断する(S16)。S15,S16は、オプション判断処理の一例である。
 例えば、ポスター印刷は、原稿を分割してM枚の用紙に印刷するので、片面印刷する必要がある。図7に示す詳細設定画面D3において、「ポスター印刷」の「する」に対応するラジオボタンが操作された状態で、図4に示す印刷設定画面D2において、「両面印刷」の設定値が「片面印刷」から「両面印刷」に変更されたとする。変更後の印刷設定の組み合わせは、図5(b)の排他No.13に示す加工オプションの不適の組み合わせに該当するので(S16:YES)、CPU11は、変更後の印刷設定が不適であると判断し(S13)、処理を終了する。
 図8に示すように、補助プログラム42は、変更後の印刷設定が補助プログラム42に設定されている加工オプションに基づいて不適であると判断した場合(alt:不適)、印刷設定が不適であることを示す不適通知データを生成する(C11)。この場合の不適通知データは、第3通知データの一例である。この場合のC11は、第3生成処理の一例である。
 補助プログラム42は、C11にて生成した不適通知データを汎用印刷プログラム41に渡す(C13)。汎用印刷プログラム41は、例えば図10(b)に示すように、補助プログラム42から受け取った不適通知データを、印刷設定画面D2の通知欄52(図4参照)に表示させる(C14)。通知欄52には、例えば、両面印刷とポスター印刷とを一緒に設定できないことを説明する通知情報M6が表示される。また、通知欄52には、例えば、両面印刷を優先する場合、詳細設定画面のポスター印刷を「しない」に設定する対応方法や、ポスター印刷を優先する場合、両面印刷の設定を片面印刷に変更する対応方法を伝えるガイド情報GM6が表示される。さらに、通知欄52には、例えば、ポスター印刷できないことをイメージさせる画像IM6が表示される。この場合のC13,C14は、第3表示処理の一例である。
 図10(a)及び図10(b)では、ガイド情報GM5,GM6の代わりに、ガイド情報GM5,GM6を表示するウェブページのURLが埋め込まれたリンクが貼られたオブジェクトを通知欄52に表示してもよい。
 図9に示すように、CPU11は、変更後の印刷設定が補助プログラム42に設定されている加工オプションに対して組み合わせることができない印刷設定を含まないと判断した場合(S16:NO)、変更後の印刷設定が適正であると判断し(S17)、処理を終了する。
 図8に示すように、補助プログラム42は、変更後の印刷設定が適正であると判断した場合(alt:適正)、印刷設定が適正であることを示す適正通知データを生成する(C12)。適正通知データは、第2通知データの一例である。C12は、第2生成処理の一例である。
 補助プログラム42は、生成した適正通知データを汎用印刷プログラム41に渡し(C13)、印刷設定画面D2の通知欄52に表示させる(C14)。例えば図10(c)に示すように、通知欄52には、印刷設定が適正であることを示す通知情報M11が表示される。また、通知欄52は、印刷設定が適正であることを示す画像IM11が表示される。
 図9に示すように、CPU11は、変更後の印刷設定が排他情報に該当する不適な組み合わせを含まず(S12:NO)、かつ、補助プログラム42に加工オプションが設定されていない場合(S14:NO)、変更後の印刷設定が適正であると判断し(S17)、処理を終了する。この場合、図8に示すC12~C14を上記と同様に行い、適正であることを示す通知データを通知欄52に表示させる。
 次に、図4に示した印刷設定画面D2の表示中、印刷ボタンSW3へのユーザの操作による印刷実行の指示を受け付けた場合の各プログラムによる手順について、図11のシーケンス図を参照して説明する。なお、ユーザによる印刷実行の指示は、汎用印刷プログラム41に直接入力されてもよいし、情報アプリ43に入力され、情報アプリ43から汎用印刷プログラム41に出力されてもよい。
 汎用印刷プログラム41は、ユーザによる印刷実行の指示を受け付けると(D01)、印刷設定画面D2にて受け付けた印刷設定を用いて、印刷対象の画像を示す画像データの形式を中間画像データの形式に変換することで中間画像データを生成して(D02)、生成した中間画像データを補助プログラム42に渡す(D03)。情報アプリ43に含まれる画像データは種々のタイプのものであり、汎用印刷プログラム41は、印刷対象の画像データを、印刷データの生成に適した中間画像データに変換する。なお、印刷対象の画像データが印刷データの生成に適したデータであれば、中間画像データの生成を省略し、そのまま中間画像データとしても良い。中間画像データは、例えば、XPSデータである。
 補助プログラム42は、D03にて受け取った中間画像データに、補助プログラム42に設定されている印刷設定を反映させ、中間画像データを加工する(D04)。例えば、補助プログラム42は、ポスター印刷(1in2×2)が設定されている場合、印刷対象の画像データを縦方向と横方向に2分割し、分割画像データを生成する。加工した中間画像データは、加工データの一例である。D04は、加工処理の一例である。
 補助プログラム42は、加工した中間画像データにラスタライズを実行し、印刷対象の画像を示す印刷データを生成する(D05)。D05にて生成される印刷データは、プリンタ2にて印刷に使用できる形式のデータであり、例えば、プリンタ2のモデルに専用のPDLデータである。
 プリンタ2に対応する補助プログラム42にてラスタライズすることで、汎用印刷プログラム41にてラスタライズする場合に比較して自由度が大きく、プリンタ2での印刷に適した印刷データが生成される可能性が高い。なお、補助プログラム42によって生成される印刷データは、プリンタ2のモデル以外のプリンタでの印刷にも使用できる形式のデータであっても良い。
 補助プログラム42は、D05にて生成した印刷データを、印刷の実行を指示する印刷コマンドとともにプリンタ2に送信する(D06)。D06は、送信処理の一例である。
補助プログラム42は、プリンタ2に実行させると決定した画像処理がある場合、その処理の情報も含む印刷コマンドを生成する。補助プログラム42は、さらに、印刷データの送信を終了したことを汎用印刷プログラム41に通知しても良い(D08)。
 印刷データと印刷コマンドとを受信したプリンタ2は、受信した印刷コマンドに基づいて、印刷データの画像の印刷を実行する(D07)。これにより、印刷物が生成される。
 なお、補助プログラム42が印刷データを生成する代わりに、汎用印刷プログラム41が印刷データの生成を行っても良い。例えば、補助プログラム42は、D03にて加工した中間画像データと印刷実行の情報とを汎用印刷プログラム41に渡し、汎用印刷プログラム41が、中間画像データをラスタライズして印刷データを生成しても良い。その場合、汎用印刷プログラム41は、生成した印刷データを補助プログラム42に渡す。そして、補助プログラム42は、汎用印刷プログラム41から印刷データを受け取った場合、汎用印刷プログラム41から受け取った印刷データを、印刷の実行を指示する印刷コマンドとともにプリンタ2に送信する。
 汎用印刷プログラム41によって生成される印刷データは、各種のプリンタにて印刷に使用できる形式の印刷データであり、例えば、PWGRasterデータ、または、PDFデータである。汎用印刷プログラム41によってラスタライズするとすれば、補助プログラム42の処理が少なく、処理時間増大の回避が見込まれ、また、補助プログラム42のプログラムサイズが抑えられる。
 なお、プリンタ2への印刷データや印刷コマンドの送信は、汎用印刷プログラム41が行っても良い。つまり、補助プログラム42は、生成した印刷データを、プリンタ2を送信先としてPC1から送信されるように、汎用印刷プログラム41に渡しても良い。その場合、汎用印刷プログラム41は、補助プログラム42から受け取った印刷データ等をプリンタ2に送信する。この場合、補助プログラム42が汎用印刷プログラム41に印刷データ等を渡す処理が、送信処理の一例である。
 以上説明したように、本実施形態の補助プログラム42は、プリンタ2の能力情報を取得し、印刷設定が変更された際に、変更された印刷設定がその能力情報に基づいて不適と判断された場合に、印刷設定が不適であることを示す通知データを汎用印刷プログラム41に渡して印刷設定画面D2の通知欄52に表示させる。これにより、OS21の汎用印刷プログラム41を用いるPC1において、不適の印刷設定であることを通知することができ、その結果としてユーザがその印刷設定の設定可否に関する情報を知ることから、意図しない印刷結果となることを回避できる可能性が高まる。
 なお、本明細書に開示される実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、PC1に接続されるプリンタの数は、図示の例に限らず、2台以上でも良い。
 例えば、図10の各通知画像の例は、いずれも一例であって、図示の例に限らない。
 能力情報の取得は、印刷設定画面D2でのプリンタ選択時(図2のA07~A13)に限らず、補助プログラム42のインストール時でもよいし、印刷設定の変更の度でもよい。この場合も、補助プログラム42は、取得した能力情報に基づく情報(能力情報そのものでもよいし、例えば能力情報に基づいて生成された排他設定の一覧情報でもよい)をメモリ12に記憶しておいて適否判断処理(図8のC04)で利用する。
 例えば、上記実施形態では、図10(a)及び図10(b)に示すように、不適であった印刷設定の設定項目の設定値ごとに異なる通知データを生成し、通知欄52に異なる通知画像を表示させた。これに対して、印刷設定が不適である場合、同じ通知データを生成し、通知欄52に同じ通知画像を表示させてもよい。ただし、図10(a)及び図10(b)に示すように、不適となった設定項目の組み合わせごとに異なる通知情報やガイド情報や画像を表示することで、どの設定項目が不適なのかユーザにわかり易い。
 また、図10(a)及び図10(b)に示すガイド情報GM5,GM6は表示しなくてもよい。ただし、印刷設定が不適である場合に、印刷設定を適正にするためのガイド情報を通知欄52表示することで、ユーザが適正な印刷設定に変更し易くなる。
 また、印刷設定が適正である場合、図8のC12~C14の処理を行わないことで、通知欄52に適正通知データを表示させないようにしてもよい。この場合、通知欄52には、プリンタメーカのロゴマークや広告など、印刷設定の適否と別の情報が表示されてもよい。これによれば、印刷設定が適正に変更される度に表示が切り替えられる煩わしさを減らし、ユーザにストレスを与えることを回避できる。ただし、上記実施形態のように、印刷設定が適正である場合に、それを示す通知データを通知欄52に表示させることで、OS21の汎用印刷プログラム41を用いるPC1において、ユーザがその印刷設定の設定可否に関する情報を知ることができる。
 また、図9のS14~S16を省略してもよい。ただし、補助プログラム42で印刷対象の画像を加工する加工オプションが設定されている状態において、変更された印刷設定が不適と判断された場合に、印刷設定が不適であることを示す通知データを汎用印刷プログラム41に渡して印刷設定画面D2の通知欄52に表示させることで、OS21の汎用印刷プログラム41を用いるPC1において、ユーザが加工オプションに基づく印刷設定の適否に関する情報を知ることができる。
 また、印刷設定の変更時に能力情報を取得し、能力情報に基づく排他情報を生成してもよい。ただし、プリンタの選択時に排他情報を生成することで、印刷設定の変更時に能力情報を取得して排他情報を生成する場合と比較して、印刷設定の設定可否を判断する時間を短縮できる。
 また、汎用印刷プログラム41によって印刷設定画面D2が表示された後に、ユーザの操作によって、OS21を介して、通常使うプリンタが他のプリンタからプリンタ2に変更された場合にも、汎用印刷プログラム41は、補助プログラム42を起動しても良い。
その場合も、プリンタ2が選択された場合と同様に、補助プログラム42は、通知データ生成処理を実行し、通知データを汎用印刷プログラム41に渡すと良い。
 また、実施の形態では、補助プログラム42の動作として、印刷動作のみを詳細に記載しているが、補助プログラム42は、さらに他の役割を有していても良い。また、本形態の処理を実行するプログラムは、補助プログラム42に限らず、汎用印刷プログラム41を用いた印刷を行う際に、OS21または汎用印刷プログラム41から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフローアプリ(Print workflow)でも良い。
 また、補助プログラム42の実行タイミングは、実施の形態の例に限らない。例えば、OS21から直接実行指示されて実行されても良く、または、常駐される補助プログラム42であっても良い。常駐される場合には、補助プログラム42は、実行命令を受けて前述した動作を行うとすれば良い。
 また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
 また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
 1   PC
 2   プリンタ
 11  CPU
 13a ディスプレイ
 21  OS
 41  汎用印刷プログラム
 42  補助プログラム

Claims (8)

  1.  情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応し、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムをサポートするサポートプログラムであって、前記汎用印刷プログラムは、前記情報処理装置のディスプレイに印刷設定画面を表示させるためのデータを取り扱うことが可能であり、
     前記コンピュータに、
       前記プリンタの能力を示す能力情報を取得する能力取得処理を実行させ、
     さらに前記コンピュータに、
      前記印刷設定画面にて印刷設定が変更されたことによって前記汎用印刷プログラムから処理が要求された場合に、
       変更された前記印刷設定を取得する設定取得処理と、
       前記能力取得処理にて取得された前記能力情報に基づいて、前記設定取得処理にて取得された前記印刷設定の適否を判断する判断処理と、
      を実行させ、
     さらに前記コンピュータに、
      前記判断処理にて前記印刷設定が不適と判断された場合に、
       印刷設定が不適であることを示す第1通知データを生成する第1生成処理と、
       前記第1生成処理にて生成された前記第1通知データを前記汎用印刷プログラムに渡し、前記情報処理装置の前記ディスプレイに表示される前記印刷設定画面に前記第1通知データを表示させる第1表示処理と、
      を実行させる、
     ように構成されるサポートプログラム。
  2. 請求項1に記載するサポートプログラムにおいて、
     前記第1生成処理では、
      不適であった前記印刷設定の設定項目の設定値に対応した前記第1通知データを生成する、
     ように構成されるサポートプログラム。
  3. 請求項2に記載するサポートプログラムにおいて、
     前記第1生成処理では、
      不適であった前記印刷設定の設定項目の設定値に対応し、かつ前記印刷設定を適正にするためのガイド情報を含む前記第1通知データを生成する、
     ように構成されるサポートプログラム。
  4. 請求項1から請求項3のいずれか1つに記載するサポートプログラムにおいて、
     前記コンピュータに、
      前記判断処理にて前記印刷設定が適正と判断された場合に、前記第1生成処理および前記第1表示処理を実行させず、前記印刷設定の適否に関する情報を、前記印刷設定画面に表示させない、
     ように構成されるサポートプログラム。
  5. 請求項1から請求項3のいずれか1つに記載するサポートプログラムにおいて、
     前記コンピュータに、
      前記判断処理にて前記印刷設定が適正と判断された場合に、
       印刷設定が適正であることを示す第2通知データを生成する第2生成処理と、
       前記第2生成処理にて生成された前記第2通知データを前記汎用印刷プログラムに渡し、前記第2通知データを前記印刷設定画面に表示させる第2表示処理と、
      を実行させる、
     ように構成されるサポートプログラム。
  6. 請求項1から請求項5のいずれか1つに記載するサポートプログラムにおいて、
     前記コンピュータに、
       印刷対象の画像を加工する加工オプションを設定する設定処理を実行させ、
     さらに前記コンピュータに、
      前記設定処理にて前記加工オプションが設定されている状態において、前記汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる印刷指示があった場合に、
       前記汎用印刷プログラムから印刷対象の画像を示す画像データを取得し、取得された前記画像データに基づいて、前記画像を加工した加工画像を示す加工データを生成する加工処理を実行させ、
     さらに前記コンピュータに、
      前記設定処理にて前記加工オプションが設定されている状態において、前記印刷設定画面にて印刷設定が変更されたことによって前記汎用印刷プログラムから処理が要求された場合に、
       前記設定処理にて設定されている前記加工オプションに基づいて、前記設定取得処理にて取得された前記印刷設定の適否を判断するオプション判断処理を実行させ、
     さらに前記コンピュータに、
      前記オプション判断処理にて前記印刷設定が不適と判断された場合に、
       印刷設定が不適であることを示す第3通知データを生成する第3生成処理と、
       前記第3生成処理にて生成された前記第3通知データを前記汎用印刷プログラムに渡し、前記情報処理装置の前記ディスプレイに表示される前記印刷設定画面に前記第3通知データを表示させる第3表示処理と、
      を実行させる、
     ように構成されるサポートプログラム。
  7. 請求項1から請求項6のいずれか1つに記載するサポートプログラムにおいて、
     前記印刷設定画面の設定項目には、プリンタの選択が含まれ、
     前記コンピュータに、
      前記プリンタが選択されたことによって前記汎用印刷プログラムから処理が要求された場合に、前記能力取得処理を実行させ、取得された前記能力情報に基づく排他情報をメモリに記憶し、
      前記判断処理では、前記メモリに記憶された前記排他情報を読み出し、読み出された前記排他情報に基づいて、前記設定取得処理にて取得された前記印刷設定の適否を判断する、
     ように構成されるサポートプログラム。
  8. 請求項1から請求項7のいずれか1つに記載するサポートプログラムにおいて、
     前記コンピュータに、
      前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があったことによって、前記汎用印刷プログラムから処理が要求された場合に、
       前記汎用印刷プログラムから前記画像を示す画像データを取得し、前記画像データに基づいて印刷コマンドを前記プリンタに送信するための送信処理を実行させる、
     ように構成されるサポートプログラム。
PCT/JP2023/001129 2022-01-25 2023-01-17 サポートプログラム WO2023145531A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022009571A JP2023108441A (ja) 2022-01-25 2022-01-25 サポートプログラム
JP2022-009571 2022-01-25

Publications (1)

Publication Number Publication Date
WO2023145531A1 true WO2023145531A1 (ja) 2023-08-03

Family

ID=87313855

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/001129 WO2023145531A1 (ja) 2022-01-25 2023-01-17 サポートプログラム

Country Status (3)

Country Link
US (1) US11875074B2 (ja)
JP (1) JP2023108441A (ja)
WO (1) WO2023145531A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017102969A (ja) * 2017-02-23 2017-06-08 株式会社沖データ 印刷機能設定方法およびプリンタドライバ
JP2020046910A (ja) * 2018-09-19 2020-03-26 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
JP2020059123A (ja) * 2018-10-04 2020-04-16 キヤノン株式会社 印刷装置、その制御方法、及びプログラム
JP2020095535A (ja) * 2018-12-13 2020-06-18 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4438064B2 (ja) * 2004-11-15 2010-03-24 キヤノン株式会社 データ処理装置および印刷設定処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
JP6387918B2 (ja) * 2015-07-23 2018-09-12 コニカミノルタ株式会社 画像形成装置、端末装置、画像形成システム及びプログラム
JP6583731B2 (ja) 2016-03-02 2019-10-02 コニカミノルタ株式会社 プリンタドライバのインストールパッケージ生成プログラム及びプリンタドライバの利用方法
JP2019072894A (ja) * 2017-10-13 2019-05-16 キヤノン株式会社 画像形成装置、制御方法
JP7135342B2 (ja) * 2018-03-02 2022-09-13 ブラザー工業株式会社 端末装置のためのコンピュータプログラムと端末装置
US11048455B1 (en) * 2020-03-04 2021-06-29 Canon Kabushiki. Kaisha Devices, systems, and methods for resolving conflicting print settings

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017102969A (ja) * 2017-02-23 2017-06-08 株式会社沖データ 印刷機能設定方法およびプリンタドライバ
JP2020046910A (ja) * 2018-09-19 2020-03-26 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
JP2020059123A (ja) * 2018-10-04 2020-04-16 キヤノン株式会社 印刷装置、その制御方法、及びプログラム
JP2020095535A (ja) * 2018-12-13 2020-06-18 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム

Also Published As

Publication number Publication date
US11875074B2 (en) 2024-01-16
JP2023108441A (ja) 2023-08-04
US20230236781A1 (en) 2023-07-27

Similar Documents

Publication Publication Date Title
US10740049B2 (en) Printer and server
US7969593B2 (en) Printing apparatus, control method therefor, job processing method, printing system, and program
US8228514B2 (en) Information processing apparatus, data processing method, and computer readable medium storing print control program for performing data processing method for transmitting bitmap data to an image forming apparatus
JP5063101B2 (ja) 情報処理装置、情報処理方法、プログラム
EP2388685B1 (en) Information processing apparatus and control method thereof, and storage medium
US20230236773A1 (en) Non-transitory storage medium storing supporting program executable by computer of information processing apparatus
JP2009053789A (ja) 情報処理装置とプログラムとコンピュータ読み取り可能な記録媒体
US20230102837A1 (en) Non-transitory computer-readable medium storing support program
WO2023145531A1 (ja) サポートプログラム
WO2023145636A1 (ja) サポートプログラム
WO2023176579A1 (ja) サポートプログラム
WO2023145532A1 (ja) サポートプログラム
WO2023162772A1 (ja) サポートプログラム
WO2022138317A1 (ja) サポートプログラム
WO2022163430A1 (ja) サポートプログラム
US8773711B2 (en) Data processing apparatus, data processing method, and storage medium for controlling display setting screen based on selected printer driver
WO2023140240A1 (ja) サポートプログラム
WO2023181987A1 (ja) サポートプログラムおよび印刷システム
WO2023190151A1 (ja) サポートプログラム
JP2005321886A (ja) プリント支援モジュール、ポートモニタ、記録媒体及びプリントジョブ発行方法
JP2001058438A (ja) プリンタ制御装置及び方法
JP2023143184A (ja) サポートプログラムおよび印刷システム
JP2023145003A (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: 23746745

Country of ref document: EP

Kind code of ref document: A1