WO2020195330A1 - サポートプログラム、情報処理装置、および印刷方法 - Google Patents
サポートプログラム、情報処理装置、および印刷方法 Download PDFInfo
- Publication number
- WO2020195330A1 WO2020195330A1 PCT/JP2020/006090 JP2020006090W WO2020195330A1 WO 2020195330 A1 WO2020195330 A1 WO 2020195330A1 JP 2020006090 W JP2020006090 W JP 2020006090W WO 2020195330 A1 WO2020195330 A1 WO 2020195330A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- program
- general
- printer
- processing
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1253—Configuration of print job parameters, e.g. using UI at the client
- G06F3/1257—Configuration of print job parameters, e.g. using UI at the client by using pre-stored settings, e.g. job templates, presets, print styles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/0035—User-machine interface; Control console
- H04N1/00405—Output means
- H04N1/00408—Display of information to the user, e.g. menus
- H04N1/0044—Display of information to the user, e.g. menus for image preview or review, e.g. to help the user position a sheet
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1208—Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1229—Printer resources management or printer maintenance, e.g. device status, power levels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1253—Configuration of print job parameters, e.g. using UI at the client
- G06F3/1256—User feedback, e.g. print preview, test print, proofing, pre-flight checks
Definitions
- a printer driver As a technique for controlling a printer from an information processing device such as a personal computer, a configuration in which a printer driver is installed in the information processing device, print data is generated by the printer driver, and the print data is transmitted to the printer is widely known (for example, Japanese Patent Application Laid-Open No. 2017-134718).
- the printer driver is provided by the manufacturer of the printer, supports various functions of the printer, and can fully utilize the printer.
- This specification discloses a technique for reducing printing based on an image that has been processed unintentionally by a user in an information processing apparatus incorporating an OS standard general-purpose printing program.
- the support program made for the purpose of solving the above-mentioned problems is a support program that can be executed by a computer of the information processing device and corresponds to a printer connected to the information processing device.
- the application program gives a specific instruction to the general-purpose printing program previously incorporated in the operating system of the information processing apparatus.
- the computer is used to generate the image data indicating the specified image and the intermediate image data output by the general-purpose printing program.
- the processing based on the processing setting received in the reception processing is performed, and the processing processing for outputting the processed intermediate image data which is the processed intermediate image data to the general-purpose printing program is executed, and the general-purpose processing is executed.
- the printing program generates print data based on the processed intermediate image data after the processing is executed, and transmits the generated print data to the printer and the print data to the printer. It is characterized in that it may respond to the application program without any notice.
- the support program with the above configuration does not generate print data based on the processed intermediate image data, that is, the print data is not transmitted to the printer 2 and the processed intermediate image data is sent to the application. May respond. Therefore, the user has more chances to confirm the image shown in the processed intermediate image data before printing, and as a result, the possibility of avoiding printing based on the image subjected to the processing not intended by the user increases.
- a control method for realizing the functions of the above device, a computer program, and a computer-readable storage medium for storing the computer program are also new and useful.
- an information processing device incorporating an OS standard general-purpose printing program a technology for reducing printing based on an image processed unintentionally by a user is realized.
- FIG. 1 shows an example of the configuration of the printing system in which the program of the first embodiment is executed.
- the system shown in FIG. 1 includes a PC 1, a printer 2, and a printer 3.
- PC1 is an example of an information processing device.
- the printer 2 and the printer 3 are devices having a printing function, and can communicate with the PC 1 via local communication or network communication.
- a plurality of printers 2 may be connected to the PC 1.
- the PC 1 includes a controller 10, a user interface (hereinafter referred to as "UI") 20, and a communication interface (hereinafter referred to as "communication IF”) 30.
- the UI 20 and the communication IF 30 are electrically connected to the controller 10.
- the UI 20 includes hardware that displays various displays and accepts user's instruction input.
- the UI 20 may be a touch panel having both a display function and an input reception function, or may be a combination of a display having a display function and a keyboard, a mouse, or the like having an input reception function.
- the communication IF30 includes hardware for communicating with the printer 2 and printer 3 and hardware for accessing the Internet.
- the communication IF 30 may include a plurality of interfaces having different communication methods.
- the communication method includes, for example, network communication and USB communication. Further, it may be wired communication or wireless communication.
- the controller 10 includes a CPU 11 and a memory 12.
- the CPU 11 is an example of a computer.
- the memory 12 includes a ROM, a RAM, a non-volatile memory, and a buffer of the CPU 11, and stores programs such as various application programs (hereinafter referred to as “applications”) and various data. In this specification, the details of the memory are not distinguished.
- the CPU 11 executes various processes according to the program read from the memory 12 and based on the user's instruction.
- the controller 10 in FIG. 1 is a general term for hardware and software used for controlling the PC 1, and does not necessarily represent a single hardware that actually exists in the PC 1.
- An example of the memory 12 may be a storage medium that can be read by a computer.
- a computer-readable storage medium is a non-transitory medium.
- the non-transitory medium also includes a recording medium such as a CD-ROM or a DVD-ROM.
- the non-transitory medium is also a tangible medium.
- an electric signal that carries a program downloaded from a server on the Internet is a computer-readable signal medium, which is a kind of computer-readable medium, but is a storage that can be read by a non-transitory computer. Not included in the medium.
- the memory 12 stores an operating system (hereinafter referred to as “OS”) 21 including a general-purpose printing program 41, an auxiliary program 42, and an editing application 43.
- the auxiliary program 42 is an example of a support program.
- the auxiliary program 42 is, for example, a hardware support application (abbreviation, HSA) created by a printer vendor based on a specification published by Microsoft Corporation.
- OS21 is, for example, Microsoft Windows (registered trademark), MacOS (registered trademark), Linux (registered trademark).
- the memory 12 stores various data including information on the connected printer and various programs such as a browser.
- the general-purpose printing program 41 is an application for executing printing from the PC 1 to various printers such as the printer 2, and is an OS standard printing program pre-installed in the OS 21.
- the general-purpose print program 41 of the present embodiment is a program that generates print data compatible with the printer based on the image data to be printed.
- the general-purpose printing program 41 is a general-purpose application that can be applied to printers of a plurality of types of models provided by the vendor of each printer, and is a program that causes each printer to perform operations common to each model.
- the general-purpose print program 41 may be a kind of program provided by the vendor of each printer to the vendor of OS21 in order to be incorporated in OS21 in advance, for example, a type of printer driver provided to be incorporated in OS21 in advance.
- the auxiliary program 42 is a program that executes processing based on an instruction from the OS 21 when the general-purpose printing program 41 is started, and is an application that supports control of the target hardware, for example, the printer 2.
- the auxiliary program 42 is started from, for example, the general-purpose printing program 41.
- the auxiliary program 42 is a program prepared for each type of printer by a vendor such as the printer 2. For example, an auxiliary program 42 for an inkjet printer and an auxiliary program 42 for a laser printer are prepared. There may be an auxiliary program 42 prepared not only for each printer type but also for each printer model and each printer model series.
- the printer vendor registers the auxiliary program 42 in the platform provided by the OS21 vendor according to the procedure specified by the OS21 vendor.
- the OS 21 downloads the auxiliary program 42 from the server in which the auxiliary program 42 is stored. Incorporate into PC1.
- the OS 21 associates the identification information of the incorporated auxiliary program 42 with the printer information of the newly connected printer and stores it in the memory 12.
- the respective auxiliary programs corresponding to the types of each model are incorporated, and the information for associating each printer with each auxiliary program is stored in the memory 12. That is, in the memory 12, as the printer information of each printer connected to the PC 1, the information of the corresponding auxiliary program 42 is stored together with the model information and access information of the printer.
- the editing application 43 is, for example, an application for creating and editing image data and document data.
- the editing application 43 is, for example, Microsoft Word (registered trademark) or PowerPoint (registered trademark). Further, the application may be provided by the vendor of the printer 2 or the printer 3.
- the editing application 43 accepts a user operation including an instruction to cause the printer 2 to perform a predetermined operation. Specifically, the editing application 43 receives, for example, a printing instruction for the printer 2 to execute printing via the UI 20. Further, the editing application 43 receives a preview instruction for displaying a preview of the image to be printed via the UI 20.
- each processing step of the processing and the flowchart in the embodiment basically indicates the processing of the CPU 11 according to the instruction described in the program such as the auxiliary program 42. That is, the processing of "judgment”, “extraction”, “selection”, “calculation”, “decision”, “specification”, “acquisition”, “acceptance”, “control”, etc. in the following description is the processing of the CPU 11. Represents.
- the processing by the CPU 11 also includes hardware control using the API of the OS 21.
- the operation of each program will be described by omitting the detailed description of the OS 21. That is, in the following description, the description to the effect that "program B controls hardware C” may refer to “program B controls hardware C using the API of OS21".
- the processing of the CPU 11 according to the instruction described in the program may be described in abbreviated wording.
- the program may be omitted, such as "CPU 11 performs”.
- the processing of the CPU 11 according to the instruction described in the program may be described by a wording that omits the CPU, such as "the program A performs”.
- acquisition is used as a concept that does not require a request. That is, the process of receiving data without the CPU 11 requesting is also included in the concept of "the CPU 11 acquires the data".
- data in the present specification is represented by a computer-readable bit string. Then, data having the same substantial meaning and content but different formats are treated as the same data. The same applies to "information” in the present specification.
- requesting and “instructing” are concepts indicating that information indicating that a request is being made or information indicating that an instruction is being given is output to the other party. Further, the information indicating that the request is made or the information indicating that the instruction is given is simply described as “request” or "instruction”.
- the process of determining whether or not the information A indicates that it is the matter B by the CPU 11 is conceptually described as "determining whether or not the information A is the matter B from the information A". There is.
- the process of determining whether the information A indicates that it is the matter B or the matter C by the CPU 11 is "determined from the information A whether it is the matter B or the matter C". It may be described conceptually as ".
- the auxiliary program 42 includes a first interface and a second interface as interfaces for receiving execution instructions.
- the general-purpose print program 41 outputs when the editing application 43 or the like receives a print instruction specifying the printer 2 corresponding to the auxiliary program 42 and the general-purpose print program 41 receives a print execution notification from the editing application or the like. It is an interface that accepts execution notifications.
- the second interface receives a preview instruction from the editing application 43 or the like, and receives an execution notification output by the general-purpose printing program 41 when the editing application or the like requests the general-purpose printing program 41 to start the auxiliary program 42. It is an interface.
- the print instruction is an example of the specific instruction and the first instruction
- the preview instruction is an example of the specific instruction and the second instruction.
- the editing application 43 displays the image editing screen via the UI 20 (arrow A).
- a document edited by the editing application 43, a photograph read by the editing application 43, and the like are displayed as images.
- the print setting screen for selecting a printer to execute printing and receiving setting of print parameters such as paper size and image quality. Is displayed.
- a print instruction button for instructing printing and a preview button for instructing the display of a print image are displayed.
- the editing application 43 receives a print instruction by operating the print button via the UI 20 (arrow B). Further, the editing application 43 receives a preview instruction by operating the preview button via the UI 20 (arrow B).
- the print parameters include general-purpose parameters that the general-purpose print program 41 can handle and printer-specific unique parameters that the general-purpose print program 41 cannot support.
- General-purpose parameters are, for example, settings such as paper size, image quality, and color / monochrome.
- the unique parameters are, for example, settings such as watermark and staple.
- the editing application 43 may receive only general-purpose parameters or both general-purpose parameters and unique parameters on the print setting screen.
- the editing application 43 When the editing application 43 receives the printing instruction, the editing application 43 passes the print execution notification including the content of the printing instruction to the OS 21 to cause the general-purpose printing program 41 to perform the printing process. Further, when the editing application 43 receives the preview instruction, the editing application 43 passes a start request including the content of the preview instruction and requests to start the auxiliary program 42 to the OS 21. Note that, in FIG. 2, the operation of the OS 21 is omitted.
- the OS 21 executes the general-purpose print program 41 and passes the print execution notification or the start request to the general-purpose print program 41 (arrow C).
- the general-purpose print program 41 can acquire various information included in the print instruction or the preview instruction by the print execution notification or the activation request. For example, the image data of the image displayed on the image editing screen is acquired as the image data of the image to be printed or previewed.
- the general-purpose printing program 41 can acquire information indicating a printer to print, information indicating printing parameters input to the print setting screen, and information identifying a user who has instructed printing. As will be described later, this information can also be used in the auxiliary program 42.
- the general-purpose print program 41 generates intermediate image data by converting the image data format included in the print execution notification or activation request into the intermediate image data format, and generates print job data including the intermediate image data (arrow). D).
- the image data included in the editing application 43 is of various types, and the general-purpose printing program 41 converts the received image data into intermediate image data suitable for generating print data.
- the general-purpose printing program 41 generates intermediate image data using only general-purpose parameters. If the image data included in the print execution notification is data suitable for generating the 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 print job data also includes print parameters set by the editing application 43.
- the general-purpose printing program 41 identifies a printer designated as a device for executing printing based on the information included in the print execution notification. For example, when the printer 2 is specified, the general-purpose printing program 41 identifies the model of the printer 2 based on the model information of the printer included in the printer information stored in the memory 12. Then, since the auxiliary program 42 corresponding to the printer 2 which is the printer specified by the print instruction is stored in the memory 12, the general-purpose print program 41 outputs a processing execution command of the auxiliary program 42 and is general-purpose. The auxiliary program 42 is operated (arrow E) before the print data generation by the print program 41 is started.
- the general-purpose print program 41 When the general-purpose print program 41 receives the print execution notification, it passes an execution command to the first interface of the auxiliary program 42. On the other hand, when the general-purpose printing program 41 receives the activation request, the general-purpose printing program 41 passes an execution command to the second interface of the auxiliary program 42.
- the auxiliary program 42 has only one interface for receiving the execution command and the general-purpose print program 41 receives the print execution notification for the interface, it is an option indicating that the print execution notification has been received.
- an execution command with a mark is passed and an activation request is accepted
- an execution instruction with an option indicating that the activation request has been accepted may be passed.
- the auxiliary program 42 displays the print parameter edit screen that accepts the print parameter settings, and accepts the print parameters by the operation using the UI 20 (arrow F).
- the arrow F is an example of the reception process
- the print parameter received by the arrow F is an example of the processing setting.
- the auxiliary program 42 displays, for example, a print parameter editing screen that accepts the setting of the unique parameter of the printer 2 corresponding to the auxiliary program 42 by using the UI 20, and receives the unique parameter.
- the auxiliary program 42 may accept both general-purpose parameters and unique parameters by using the print parameter edit screen. Further, the auxiliary program 42 may display different print parameter editing screens depending on whether it accepts general-purpose parameters or unique parameters.
- the auxiliary program 42 causes the UI 20 to display the watermark editing screen 200 shown in FIG. 4A.
- the auxiliary program 42 displays, for example, the unique parameters of the watermark indicated by the operation on the watermark editing screen 200 via the UI 20 on the watermark editing screen 200, and the print button 201 is operated using the UI 20. Then, the watermark setting is accepted by storing the unique parameter displayed on the watermark editing screen 200 in the memory 12.
- the auxiliary program 42 processes the print parameters attached to the execution command based on the print parameters received on the print parameter edit screen. For example, the auxiliary program 42 adds the newly accepted print parameter to the print parameter attached to the execution command, or rewrites the print parameter attached to the execution command with the newly accepted print parameter.
- the print parameters attached to the execution command may be accepted as they are.
- the auxiliary program 42 that has received the print parameters acquires the current status information indicating the current state and settings of the printer 2 from the printer 2 using the communication IF30 (arrow G).
- the current status information includes status information indicating the current state of the printer 2, setting information currently stored in the internal memory of the printer 2, and the like.
- the status information is, for example, job information related to printing operations, the presence or absence of staples, and the like.
- the setting information is, for example, the paper size of each tray and the presence / absence of a finisher.
- the auxiliary program 42 determines whether or not the message display condition is satisfied (arrow I). Specifically, for example, the auxiliary program 42 checks whether the print parameters include a particular setting. The auxiliary program 42 stores in advance a specific setting for displaying a message. For example, the setting of high-quality paper such as "postcard” is stored as a specific setting. The auxiliary program 42 determines that the display condition is satisfied when the print parameter includes a "postcard” having a specific setting. In this case, the auxiliary program 42 displays the dialog 110 shown in FIG. 5A on the UI20, and displays a message 114 confirming whether or not to continue printing (arrow J).
- the auxiliary program 42 displays the dialog 110 shown in FIG. 5A on the UI20, and displays a message 114 confirming whether or not to continue printing (arrow J).
- the auxiliary program 42 compares the accepted print parameter with the arrow F with the current status information acquired with the arrow G, and checks whether or not the print parameter and the current status information match. For example, the auxiliary program 42 determines that the display condition is satisfied when the paper type of the print parameter is glossy paper, but the paper type included in the current status information is plain paper, and the two do not match. In this case, the auxiliary program 42 displays the dialog 120 shown in FIG. 5 (b) on the UI 20, and displays a message 124 notifying the mismatch (arrow J).
- Dialogs 110 and 120 include continue buttons 111 and 121, cancel buttons 112 and 122, and reset buttons 113 and 123.
- the user operates the continue buttons 111 and 121 via the UI 20.
- the auxiliary program 42 generates processed intermediate image data when the operation of the continue button 111 or the continue button 121 is accepted (arrow K). For example, when the watermark F setting is accepted, the auxiliary program 42 performs a process of synthesizing the watermark with the intermediate image data generated by the general-purpose printing program 41 according to the watermark setting. If the message display condition is not satisfied even if the print parameter is checked, for example, if the print parameter does not include a specific setting, or if the print parameter and the current status information match, the auxiliary program 42 indicates an arrow. The processing of the arrow K may be performed without the processing of J. Note that in FIG. 3, the description of the processing when the cancel buttons 112 and 122 and the reset buttons 113 and 123 are operated is omitted.
- the auxiliary program 42 that generated the processed intermediate image data in response to the operation of the continue button 111 or the continue button 121 displays a confirmation screen (arrow L).
- the auxiliary program 42 displays the dialog 150 shown in FIG. 4B, and finally confirms whether or not to perform printing.
- the dialog 150 includes an execute button 151, a cancel button 152, and a reset button 153.
- FIG. 5A or FIG. 5B is displayed, the intention of printing has been confirmed by operating the continuation button 111 or the continuation button 121, so the processing of the arrow L may be omitted.
- the auxiliary program 42 operates the cancel button 152 when the cancel buttons 112 and 122 are operated, as in the case where the execute button 151 is operated when the continue buttons 111 and 121 are operated.
- the reset buttons 113 and 123 are operated, they operate in the same manner as when the cancel button 152 is operated.
- the auxiliary program 42 gives a preview instruction as to whether the general-purpose printing program 41 has received an execution command based on the print instruction from the editing application 43. It is determined whether the execution command based on the command has been accepted (arrow M). Specifically, the auxiliary program 42 determines that the execution instruction based on the print instruction has been accepted when the execution instruction is passed from the general-purpose print program 41 to the first interface. On the other hand, the auxiliary program 42 determines that the execution instruction based on the preview instruction has been accepted when the execution instruction is passed from the general-purpose printing program 41 to the second interface. When the auxiliary program 42 includes only one interface, the auxiliary program 42 can make the same determination based on the options attached to the execution instruction.
- the auxiliary program 42 determines that the execution command based on the print instruction has been received, the auxiliary program 42 outputs a completion notification set with the contents of the print execution to the general-purpose print program 41 (arrow N).
- the general-purpose printing program 41 generates print data according to the content of the printing execution attached to the end notification (arrow O).
- the general-purpose print program 41 generates print data based on the processed intermediate image data attached to the end notification.
- 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.
- the print data is, for example, PWGRaster data or PDF data.
- the general-purpose print program 41 When the general-purpose print program 41 generates print data, it sends a print command to the printer 2 (arrow P). The printer 2 executes printing according to the print data attached to the print command.
- the auxiliary program 42 may receive the print data generated by the general-purpose print program 41 from the general-purpose print program 41 and edit it. For example, the auxiliary program 42 may add a command for executing a function peculiar to the printer 2 to the print data. Functions unique to the printer 2 include, for example, a toner save setting and a finisher setting. When the printer 2 has a function of adding a water mark, a header / footer, or the like to the image by itself, the auxiliary program 42 may add a command for executing these functions to the print data. When the auxiliary program 42 edits the print data, even if the auxiliary program 42 outputs the edited print data to the general-purpose print program 41 and the general-purpose print program 41 sends a print command of the edited print data to the printer 2. Good.
- the auxiliary program 42 determines that the execution instruction based on the preview instruction has been accepted, the auxiliary program 42 outputs a completion notification set with the contents of the processing end to the general-purpose printing program 41 (arrow Q).
- the end notification includes processed intermediate image data.
- the general-purpose printing program 41 determines that it is not necessary to generate print data by receiving a completion notification from the auxiliary program 42 in which the content of the processing completion is set after the preview instruction is given. In this case, the general-purpose printing program 41 outputs a response notification to the editing application 43 without generating print data (arrow R).
- the general-purpose printing program 41 attaches the processed intermediate image data included in the end notification to the response notification, and outputs the response notification.
- the editing application 43 displays a preview in response to the response notification (arrow S). That is, the editing application 43 displays the processed intermediate image data attached to the response notification using the UI 20. Since the processed intermediate image data is generated by the auxiliary program 42 as in the case of printing, the editing application 43 can perform a preview display close to the print result.
- the auxiliary program 42 may attach the print parameter received by the arrow F to the end notification, and the general-purpose print program 41 may pass the response notification including the processed print parameter to the editing application 43.
- the editing application 43 may attach the processed print parameter to the print execution notification.
- the processed print parameter is set in the vendor area of the print execution notification.
- the general-purpose printing program 41 may output an execution instruction with the processed print parameters and intermediate image data to the first interface of the auxiliary program 42.
- the auxiliary program 42 may reflect the print parameters attached to the execution command on the print parameter edit screen. According to this, it is possible to reduce the trouble of the user repeatedly performing the same print setting and improve the usability.
- the editing application 43 edits an image on the image editing screen or makes print settings on the print setting screen after the preview display
- the processed print parameters are reflected in the image editing and print settings. , May be displayed. According to this, there is a high possibility that it is possible to avoid repeated settings contrary to the user's intention.
- the auxiliary program 42 when the cancel button 152 of the dialog 150 is operated by using the UI 20, the auxiliary program 42 outputs a end notification set with the contents of the processing end to the general-purpose print program 41 (arrow T). In this case, since the auxiliary program 42 does not need to generate print data, the processed intermediate image data is not added to the end notification.
- the general-purpose printing program 41 stops printing before generating print data in response to the end notification (arrow U). Then, the general-purpose printing program 41 outputs a cancellation notification to the editing application 43 (arrow V). According to this, it can be expected that unnecessary printing that is not intended by the user is avoided.
- the editing application 43 that has received the cancellation notification may display the image editing screen on the UI 20 and accept corrections such as the image to be printed and the print parameters input to the print setting screen. Then, the editing application 43 may re-accept the print instruction or the preview instruction.
- the cancellation notification may be accompanied by processed intermediate image data as in the response notification of the arrow R.
- the editing application 43 may return to the image editing screen after performing the preview display in the same manner as the arrow S, and accept corrections such as the image to be printed and the print parameters input to the print setting screen. ..
- the auxiliary program 42 when the reset button 153 is operated using the UI 20, the auxiliary program 42 outputs a end notification in which the reset contents are set to the general-purpose print program 41 (arrow W).
- the general-purpose print program 41 accepts resetting of print parameters according to the contents of the print settings attached to the end notification (arrows X and E). That is, for example, the auxiliary program 42 redisplays the print setting screen. According to this, it can be expected that the user changes the print parameters and prints contrary to the user's intention are avoided.
- the print parameter received when the reset button 153 is operated may be reflected in the display.
- the user can change the settings while checking the print parameters, which is convenient.
- the default value may be displayed on the redisplayed print parameter edit screen.
- the auxiliary program 42 performs the same operation as when the cancel button 152 is operated or the same operation as when the reset button 153 is operated, so that unnecessary printing contrary to the user's intention can be avoided. ..
- the general-purpose print program 41 when it is determined that the auxiliary program 42 of the first embodiment has received the execution command based on the preview instruction, the general-purpose print program 41 does not generate the print data based on the processed intermediate image data. That is, the print data is not transmitted to the printer 2. In this case, the general-purpose printing program 41 outputs a response notification with the processed intermediate image data to the editing application 43. Therefore, the image shown in the processed intermediate image data can be displayed on the editing application 43 before printing, and the user has more chances to check the printed image. As a result, there is a high possibility that printing based on an image that has been processed unintentionally by the user can be avoided.
- the editing application 43 performs the preview display based on the processed intermediate image data generated in the same manner as when printing is performed, the editing application 43 uses the auxiliary program 42 for the preview display by the editing application 43. It is possible to perform a preview display that accurately reflects the water mark setting, as compared with the case of performing the preview display without performing the preview display. Therefore, even if the user inputs a print instruction after confirming the preview display by the editing application 43, it is unlikely that the print result is contrary to the user's intention, and reprinting can be suppressed.
- the auxiliary program 42 when the auxiliary program 42 receives the execution command based on the print instruction, the auxiliary program 42 outputs the end notification in which the print execution is set, and when the auxiliary program 42 receives the execution command based on the preview instruction, the end notification indicating the end of processing Is output. That is, the response value of the end notification output by the auxiliary program 42 to the general-purpose printing program 41 differs depending on the type of instruction received by the editing application 43.
- the general-purpose print program 41 generates print data and sends it to the printer 2 or responds to the editing application 43 according to the response value of the end notification. Therefore, the auxiliary program 42 can control whether or not to pass the processed intermediate image data to the editing application 43 in response to the execution command output from the general-purpose printing program 41 in response to the instruction received by the editing application 43.
- the auxiliary program 42 that has received the execution command displays the print parameter edit screen that accepts the print parameter settings (arrow a).
- the watermark editing screen 200 which is an example of the printing parameter editing screen displayed by the auxiliary program 42, includes a print button 201, a cancel button 202, and a preview button 203, as shown in FIG. 4A. ing.
- the auxiliary program 42 When the operation of the preview button 203 is received by the auxiliary program 42 using the UI 20, the processed intermediate image data is generated (arrow K) and the preview is displayed (arrow b).
- the auxiliary program 42 causes the UI 20 to display the confirmation screen 160 shown in FIG. 4C according to the setting.
- the confirmation screen 160 includes an execute button 161, a cancel button 162, a reset button 163, and a preview image 164.
- the auxiliary program 42 When the auxiliary program 42 accepts the operation of the cancel button 162 using the UI 20, it outputs a end notification set with the contents of the end of processing to the general-purpose print program 41 (arrow c). At this time, the auxiliary program 42 adds the processed intermediate image data generated at the time of preview display to the end notification.
- the general-purpose printing program 41 When the general-purpose printing program 41 receives the end notification including the processed intermediate image data, the general-purpose printing program 41 stops printing without generating the print data (arrow d). Then, since the processed intermediate image data is attached to the end notification, the general-purpose printing program 41 outputs a response notification including the processed intermediate image data to the editing application 43 (arrow e).
- the editing application 43 detects that printing has been stopped by receiving a response notification including the processed intermediate image data.
- the editing application 43 may display the processed intermediate image data as a preview, then display the image editing screen and accept the correction of the image or the print parameter.
- the auxiliary program 42 accepts the operation of the execute button 161 using the UI 20, it processes the arrows N to P and executes printing. Further, when the auxiliary program 42 accepts the operation of the reset button 163 using the UI 20, the display of the confirmation screen 160 is terminated, the processes of the arrows W, X, and E are executed, and the print parameters are reset. Accept.
- Not operating the execute button 161 is an example of the image response condition.
- the end notification (arrow N) output when the execute button 161 is operated after the preview display is an example of the first information.
- the end notification (arrow c) output when the cancel button 162 is operated after the preview display is an example of the second information.
- the auxiliary program 42 When the auxiliary program 42 receives the operation of the print button 201 included in the watermark editing screen 200 displayed by the arrow a by using the UI 20, the auxiliary program 42 generates processed intermediate image data (arrow K). The processing of arrows N to P is performed, and printing is executed.
- the auxiliary program 42 When the auxiliary program 42 receives the operation of the cancel button 202 included in the water mark editing screen 200 displayed by the arrow a using the UI 20, the auxiliary program 42 processes the arrows T to V and performs the general-purpose printing program 41. Stops the print job before it generates print data.
- the auxiliary program 42 displays a preview
- the execute button 161 is operated after the preview display
- the general-purpose printing program 41 prints.
- the general-purpose print program 41 does not generate the print data based on the processed intermediate image data and includes the processed intermediate image data.
- the response notification is output to the editing application 43. Therefore, the user has more chances to confirm the image shown in the processed intermediate image data before printing, and as a result, the possibility of avoiding printing based on the image subjected to the processing not intended by the user increases.
- the auxiliary program 42 of the second embodiment if the response value of the end notification output to the general-purpose printing program 41 is different depending on whether the execution button 161 is operated after the preview is displayed and the execution button 161 is not operated after the preview is displayed. Let me.
- the general-purpose printing program 41 divides the response modes for responding to the editing application 43 according to the response value of the end notification. Therefore, the auxiliary program 42 can control whether or not to pass the processed intermediate image data to the editing application 43 in response to the operation of the execution button 161.
- 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 device, a copying machine, or a fax machine.
- the printer connected to the PC 1 is not limited to the illustrated example, and may be one printer or three or more printers.
- the module that executes each process of this embodiment is not limited to the auxiliary program 42, and may be a program that receives instructions from the OS 21 when printing is performed by the general-purpose print program 41 of the OS 21.
- a print workflow application Print workflow
- Microsoft may be used.
- the auxiliary program 42 may display the dialog 150 after processing the arrow K shown in FIG. 3 and displaying the preview (arrow L). Further, in the process of the arrow L in FIG. 3, the confirmation screen 160 shown in FIG. 4 (c) may be displayed instead of the dialog 150 shown in FIG. 4 (b). According to these, since the user is asked to confirm whether or not to execute printing based on the preview image, it can be expected that printing is suppressed against the intention of the user. Further, the preview display or the display of the confirmation screen 160 may be performed when the execution command based on the print instruction to the editing application 43 is received, and may not be performed when the execution command based on the preview instruction is received.
- the confirmation screen does not have to be displayed separately from the print parameter edit screen.
- the auxiliary program 42 determines that the execution command based on the print instruction has been accepted, and the arrows M to 3 in FIG.
- the processes of the arrows Q to S may be executed. For example, it is not necessary to add the processed intermediate image data to the response notification of the arrow R.
- the auxiliary program 42 performs preview display in response to the operation of the preview button 203, and in response to the operation of the buttons 161 to 163 of the confirmation screen 160 for preview display.
- the general-purpose print program 41 may generate print data and transmit it to the printer 2, or the general-purpose print program 41 may respond to the editing application 43 without transmitting the print data to the printer 2.
- the plurality of processes in any plurality of steps can be arbitrarily changed in the execution order or executed in parallel as long as the processing contents do not conflict with each other.
- the process disclosed in the embodiment may be executed by a single CPU, a plurality of CPUs, hardware such as an ASIC, or a combination thereof.
- the process disclosed in the embodiment can be realized in various aspects such as a recording medium or a method in which a program for executing the process is recorded.
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)
- Quality & Reliability (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
編集アプリ43が印刷対象とする画像を指定した状態で印刷指示を受け付けた場合(矢印A、B)、補助プログラム42が、固有の印刷パラメータを受け付けて中間画像データを加工し(矢印F,K)、汎用印刷プログラム41が、加工済みの中間画像データに基づいて印刷データを生成し(矢印O)、プリンタに送信する(矢印P)。一方、編集アプリ43が印刷対象とする画像を指定した状態でプレビュー指示を受け付けた場合(矢印A,B)、補助プログラム42が、固有の印刷パラメータを受け付けて中間画像データを加工し(矢印F、K)、汎用印刷プログラム41が、印刷データをプリンタ2に送信することなく、編集アプリ43に応答する(矢印R)。
Description
パーソナルコンピュータ等の情報処理装置からプリンタを制御する技術として、情報処理装置にプリンタドライバをインストールし、プリンタドライバによって印刷データを生成し、その印刷データをプリンタに送信する構成が広く知られている(例えば、特開2017-134718号公報)。プリンタドライバは、プリンタのメーカから提供され、そのプリンタが有する各種の機能に対応しており、そのプリンタを十分に利用することができる。
近年、前述したプリンタドライバを利用せず、オペレーティングシステム(OS)に標準に組み込まれている汎用印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタを検知するとOS標準の汎用印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタドライバを用いずに、OS標準の汎用印刷プログラムによる印刷が可能になる。
前述したOS標準の汎用印刷プログラムによる印刷であっても、プリンタドライバと同様に画像データに拡縮処理や合成処理等の加工を施した印刷データを生成する加工機能をサポートすることが望まれる。このような加工機能をサポートした場合、ユーザの設定ミス等によってユーザの意図しない加工が施される可能性があるが、そのような加工が施された印刷データをプリンタに送信してもユーザの希望する印刷物が出力されず、消耗品を無駄に消費してしまう。
本明細書は、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、ユーザの意図しない加工が施された画像に基づく印刷を低減する技術を開示する。
上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムにて印刷対象とする画像が指定されている状態で、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して前記アプリケーションプログラムから特定指示があった場合に、指定された前記画像の加工に用いる加工設定を受け付ける受付処理を実行させ、さらに前記コンピュータに、指定された前記画像を示す画像データであって、前記汎用印刷プログラムが出力する中間画像データに、前記受付処理にて受け付けた前記加工設定に基づく加工を施し、前記加工が施された前記中間画像データである加工済み中間画像データを前記汎用印刷プログラムに出力する加工処理を実行させ、前記汎用印刷プログラムは、前記加工処理が実行された後、前記加工済み中間画像データに基づいて印刷データを生成し、生成した前記印刷データを前記プリンタに送信する場合と、印刷データを前記プリンタに送信することなく前記アプリケーションプログラムに応答をする場合とがある、ことを特徴とする。
上記構成のサポートプログラムは、アプリから特定指示が出力された際、加工済み中間画像データに基づく印刷データが生成されず、つまり、プリンタ2に印刷データを送信せず、アプリに加工済み中間画像データを応答する場合がある。そのため、加工済み中間画像データに示される画像を印刷前にユーザが確認する機会が増え、その結果として、ユーザの意図しない加工が施された画像に基づく印刷を回避できる可能性が高まる。
上記装置の機能を実現するための制御方法、コンピュータプログラム、および当該コンピュータプログラムを格納するコンピュータにて読取可能な記憶媒体も、新規で有用である。
本明細書に開示される技術によれば、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、ユーザの意図しない加工が施された画像に基づく印刷を低減する技術が実現される。
(第1実施形態)
第1実施の形態のプログラムを利用する印刷システムについて、添付図面を参照しつつ詳細に説明する。本形態は、パーソナルコンピュータ(以下、「PC」とする)とプリンタとを含む印刷システムを具体化した実施の形態を開示するものである。
第1実施の形態のプログラムを利用する印刷システムについて、添付図面を参照しつつ詳細に説明する。本形態は、パーソナルコンピュータ(以下、「PC」とする)とプリンタとを含む印刷システムを具体化した実施の形態を開示するものである。
第1実施形態のプログラムが実行される印刷システムの構成の例を、図1に示す。図1に示すシステムには、PC1と、プリンタ2と、プリンタ3と、が含まれる。PC1は、情報処理装置の一例である。プリンタ2およびプリンタ3は、印刷機能を有する装置であり、ローカル通信またはネットワーク通信を介して、PC1と通信可能である。なお、PC1には、複数のプリンタ2が接続されてもよい。
PC1は、例えば、図1に示すように、コントローラ10と、ユーザインタフェース(以下、「UI」とする)20と、通信インタフェース(以下、「通信IF」とする)30と、を備えている。UI20及び通信IF30は、コントローラ10に電気的に接続されている。
UI20は、各種の表示を行い、ユーザの指示入力を受け付けるハードウェアを含む。UI20は、表示機能と入力受付機能との両方の機能を有するタッチパネルであっても良いし、表示機能を有するディスプレイと入力受付機能を有するキーボードやマウス等との組合せであっても良い。
通信IF30は、プリンタ2やプリンタ3との通信を行うためのハードウェアや、インターネットへのアクセスを行うためのハードウェアを含む。通信IF30は、通信方式の異なる複数のインタフェースを含んでいても良い。通信方式としては、例えば、ネットワーク通信、USB通信がある。また、有線通信であっても無線通信であってもよい。
コントローラ10は、CPU11と、メモリ12と、を含む。CPU11は、コンピュータの一例である。メモリ12は、ROMと、RAMと、不揮発性メモリと、CPU11のバッファと、を含み、各種のアプリケーションプログラム(以下、「アプリ」とする)などのプログラムや各種のデータなどを記憶する。なお、本明細書では、メモリの詳細を区別しない。CPU11は、メモリ12から読み出したプログラムに従って、また、ユーザの指示に基づいて、各種の処理を実行する。なお、図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。
メモリ12の一例は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non-transitoryな媒体である。non-transitoryな媒体には、上記の例の他に、CD-ROM、DVD-ROM等の記録媒体も含まれる。また、non-transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non-transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。
メモリ12には、例えば、図1に示すように、汎用印刷プログラム41を含むオペレーティングシステム(以下、「OS」とする)21と、補助プログラム42と、編集アプリ43と、が記憶されている。補助プログラム42は、サポートプログラムの一例である。補助プログラム42は、例えば、マイクロソフト社が公開した仕様に基づいてプリンタベンダによって作成された、ハードウェアサポートアプリ(略称、HSA)である。OS21は、例えば、マイクロソフトウィンドウズ(登録商標)、MacOS(登録商標)、Linux(登録商標)である。なお、メモリ12には、図示したもの以外にも、接続されているプリンタの情報を含む各種のデータや、ブラウザ等の各種のプログラムが記憶されている。
汎用印刷プログラム41は、PC1からプリンタ2等の各種のプリンタで印刷を実行させるためのアプリであり、OS21にあらかじめ組み込まれているOS標準の印刷プログラムである。本形態の汎用印刷プログラム41は、印刷対象の画像データに基づいて、プリンタが対応可能な印刷データを生成するプログラムである。
汎用印刷プログラム41は、各プリンタのベンダによって提供される複数種類のモデルのプリンタに適用可能な汎用のアプリであり、各モデルに共通する動作を各プリンタに行わせるプログラムである。あるいは、汎用印刷プログラム41は、OS21にあらかじめ組み込むために、各プリンタのベンダによってOS21のベンダに提供されるプログラム、例えば、OS21にあらかじめ組み込むために提供されるプリンタドライバの一種であっても良い。
補助プログラム42は、汎用印刷プログラム41の起動に付随してOS21からの指示に基づいて処理を実行するプログラムであり、対象のハードウェア、例えばプリンタ2等の制御をサポートするアプリである。補助プログラム42は、例えば、汎用印刷プログラム41から起動される。補助プログラム42は、プリンタ2等のベンダによってプリンタのタイプごとに用意されるプログラムである。例えば、インクジェットプリンタ用の補助プログラム42やレーザプリンタ用の補助プログラム42が用意される。プリンタのタイプごとに限らず、プリンタのモデルごとやプリンタのモデルのシリーズごとに用意される補助プログラム42が有っても良い。
プリンタのベンダは、OS21のベンダが指定する手順に従って、補助プログラム42をOS21のベンダが提供するプラットフォームに登録する。OS21は、PC1に新たにプリンタ2が接続され、そのプリンタ2に対応する補助プログラム42がプラットフォームに登録されている場合には、当該補助プログラム42を補助プログラム42が格納されているサーバからダウンロードしてPC1に組み込む。
そして、OS21は、組み込んだ補助プログラム42の識別情報を新たに接続されたプリンタのプリンタ情報に対応付けて、メモリ12に記憶させる。複数のモデルのプリンタが接続されているPC1では、各モデルのタイプに対応するそれぞれの補助プログラムが組み込まれ、各プリンタと各補助プログラムとを対応付ける情報がメモリ12に記憶される。つまり、メモリ12には、PC1に接続されている各プリンタのプリンタ情報として、当該プリンタのモデル情報やアクセス情報とともに、対応する補助プログラム42の情報が記憶される。
編集アプリ43は、例えば、画像データや文書データの作成や編集を行うためのアプリである。編集アプリ43は、例えば、マイクロソフト ワード(登録商標)、パワーポイント(登録商標)である。また、プリンタ2やプリンタ3のベンダから提供されるアプリであってもよい。編集アプリ43は、プリンタ2に所定の動作を行わせる指示を含むユーザ操作を受け付ける。具体的には、編集アプリ43は、UI20を介して、例えば、プリンタ2に印刷を実行させる印刷指示を受け付ける。また、編集アプリ43は、UI20を介して、印刷する画像をプレビュー表示するプレビュー指示を受け付ける。
なお、実施の形態における処理およびフローチャートの各処理ステップは、基本的に、補助プログラム42などのプログラムに記述された命令に従ったCPU11の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「取得」、「受付」、「制御」等の処理は、CPU11の処理を表している。CPU11による処理は、OS21のAPIを用いたハードウェア制御も含む。本明細書では、OS21の詳細な記載を省略して各プログラムの動作を説明する。すなわち、以下の説明において、「プログラムBがハードウェアCを制御する」という趣旨の記載は、「プログラムBがOS21のAPIを用いてハードウェアCを制御する」ことを指してもよい。また、プログラムに記述された命令に従ったCPU11の処理を、省略した文言で記載することがある。例えば、「CPU11が行う」のようにプログラムを省略して記載することがある。また、プログラムに記述された命令に従ったCPU11の処理を、「プログラムAが行う」のようにCPUを省略した文言で記載することがある。
なお、「取得」は要求を必須とはしない概念で用いる。すなわち、CPU11が要求することなくデータを受信するという処理も、「CPU11がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。また、「要求する」、「指示する」とは、要求していることを示す情報や、指示していることを示す情報を相手に出力することを示す概念である。また、要求していることを示す情報や指示していることを示す情報のことを、単に、「要求」、「指示」とも記載する。
また、CPU11による、情報Aは事柄Bであることを示しているか否かを判断する処理を、「情報Aから、事柄Bであるか否かを判断する」のように概念的に記載することがある。CPU11による、情報Aが事柄Bであることを示しているか、事柄Cであることを示しているか、を判断する処理を、「情報Aから、事柄Bであるか事柄Cであるかを判断する」のように概念的に記載することがある。
次に、本形態の補助プログラム42の構成、および補助プログラム42の動作を含む印刷手順の一例について、図2、図3のシーケンス図を参照して説明する。ここでは、PC1がUI20を介して、例えば、編集アプリ43にて、印刷対象の画像データが指定された状態で、汎用印刷プログラム41を介してのプリンタ2での印刷実行の指示を受け付けた場合であって、プリンタ2のモデルのタイプに対応する補助プログラム42がPC1に組み込まれている場合について説明する。
補助プログラム42は、実行命令を受け付けるインタフェースとして、第1インタフェースと第2インタフェースを備える。第1インタフェースは、編集アプリ43等が補助プログラム42に対応するプリンタ2を指定した印刷指示を受け付け、編集アプリ等から汎用印刷プログラム41に印刷実行通知があった場合に、汎用印刷プログラム41が出力する実行通知を受け付けるインタフェースである。第2インタフェースは、編集アプリ43等がプレビュー指示を受け付け、編集アプリ等から汎用印刷プログラム41に、補助プログラム42を起動する起動依頼があった場合に、汎用印刷プログラム41が出力する実行通知を受け付けるインタフェースである。印刷指示は、特定指示、第1指示の一例であり、プレビュー指示は、特定指示、第2指示の一例である。
図2に示すように、編集アプリ43は、UI20を介して、画像編集画面を表示する(矢印A)。画像編集画面は、例えば、編集アプリ43にて編集された文書や、編集アプリ43にて読み込んだ写真などが、画像として表示される。また、編集アプリ43は、画像編集画面にて、印刷設定画面を表示させる指示を受け付けると、印刷を実行するプリンタの選択や、用紙サイズや画質などの印刷パラメータの設定を受け付けるための印刷設定画面を表示させる。印刷設定画面には、例えば、印刷を指示する印刷指示ボタンと、印刷イメージの表示を指示するプレビューボタンが表示される。編集アプリ43は、UI20を介して印刷ボタンが操作されることにより、印刷指示を受け付ける(矢印B)。また、編集アプリ43は、UI20を介してプレビューボタンが操作されることにより、プレビュー指示を受け付ける(矢印B)。
なお、印刷パラメータには、汎用印刷プログラム41が対応可能な汎用パラメータと、汎用印刷プログラム41が対応できない、プリンタに固有の固有パラメータとがある。汎用パラメータは、例えば、用紙サイズや、画質や、カラー/モノクロなどの設定である。また、固有パラメータは、例えば、ウォータマーク、ステープルなどの設定である。編集アプリ43は、印刷設定画面にて、汎用パラメータのみを受け受けてもよいし、汎用パラメータと固有パラメータの両方を受け付けてもよい。
編集アプリ43は、印刷指示を受け付けた場合、その印刷指示の内容を含み、汎用印刷プログラム41に印刷処理を行わせる印刷実行通知を、OS21に渡す。また、編集アプリ43は、プレビュー指示を受け付けた場合、そのプレビュー指示の内容を含み、補助プログラム42を起動させることを依頼する起動依頼を、OS21に渡す。なお、図2では、OS21の動作を省略して示している。
OS21は、印刷実行通知又は起動依頼を受け付けた場合、汎用印刷プログラム41を実行させ、汎用印刷プログラム41に印刷実行通知又は起動依頼を渡す(矢印C)。汎用印刷プログラム41は、印刷実行通知又は起動依頼にて、印刷指示又はプレビュー指示に含まれる各種の情報を取得できる。例えば、画像編集画面に表示されている画像の画像データを、印刷対象又はプレビュー対象にする画像の画像データとして取得する。また、印刷を行うプリンタを示す情報、印刷設定画面に入力された印刷パラメータを示す情報、印刷を指示したユーザを識別する情報を、汎用印刷プログラム41は取得できる。なお、後述するように、これらの情報は、補助プログラム42でも使用可能とされる。
汎用印刷プログラム41は、印刷実行通知又は起動依頼に含まれる画像データの形式を中間画像データの形式に変換することで中間画像データを生成し、中間画像データを含む印刷ジョブデータを生成する(矢印D)。編集アプリ43に含まれる画像データは種々のタイプのものであり、汎用印刷プログラム41は、受け取った画像データを、印刷データの生成に適した中間画像データに変換する。汎用印刷プログラム41は、汎用パラメータだけ使用して中間画像データを生成する。なお、印刷実行通知に含まれる画像データが印刷データの生成に適したデータであれば、中間画像データの生成を省略し、そのまま中間画像データとしても良い。中間画像データは、例えば、XPSデータである。なお、印刷ジョブデータには、中間画像データの他、編集アプリ43にて設定された印刷パラメータも含まれる。
さらに、汎用印刷プログラム41は、印刷実行通知に含まれる情報に基づいて、印刷を実行させる装置として指定されているプリンタを特定する。汎用印刷プログラム41は、例えば、プリンタ2が指定されている場合、メモリ12に記憶されているプリンタ情報に含まれるプリンタのモデル情報に基づいて、プリンタ2のモデルを特定する。そして、印刷指示にて指定されたプリンタであるプリンタ2に対応する補助プログラム42がメモリ12に記憶されていることから、汎用印刷プログラム41は、補助プログラム42の処理の実行命令を出力し、汎用印刷プログラム41による印刷データの生成を開始する前に、補助プログラム42を動作させる(矢印E)。
汎用印刷プログラム41は、印刷実行通知を受け付けた場合、補助プログラム42の第1インタフェースに実行命令を渡す。一方、汎用印刷プログラム41は、起動依頼を受け付けた場合、補助プログラム42の第2インタフェースに実行命令を渡す。なお、補助プログラム42が、実行命令を受け付けるインタフェースを1つだけ備え、汎用印刷プログラム41が、そのインタフェースに対して、印刷実行通知を受け付けた場合には、印刷実行通知を受けたことを示すオプションを付した実行命令を渡し、起動依頼を受け付けた場合には、起動依頼を受け付けたことを示すオプションを付けた実行命令を渡すようにしてもよい。
補助プログラム42は、第1インタフェース又は第2インタフェースに実行命令を渡されると、印刷パラメータの設定を受けつける印刷パラメータ編集画面を表示し、UI20を用いた操作によって印刷パラメータを受け付ける(矢印F)。矢印Fは受付処理の一例であり、矢印Fで受け付けた印刷パラメータは加工設定の一例である。補助プログラム42は、例えば、補助プログラム42に対応するプリンタ2の固有パラメータの設定を受け付ける印刷パラメータ編集画面を、UI20を用いて表示し、固有パラメータを受け付ける。なお、補助プログラム42は、印刷パラメータ編集画面を用いて、汎用パラメータと固有パラメータの両方を受け付けてもよい。また、補助プログラム42は、汎用パラメータを受け付ける場合と、固有パラメータを受け付ける場合とで、異なる印刷パラメータ編集画面を表示してもよい。
固有パラメータを受け付けるための印刷パラメータ編集画面として、例えば、補助プログラム42は、図4(a)に示すウォータマーク編集画面200をUI20に表示させる。補助プログラム42は、例えば、UI20を介したウォータマーク編集画面200への操作によって指示された、ウォータマークの固有パラメータをウォータマーク編集画面200へ表示させ、印刷ボタン201がUI20を用いて操作されると、ウォータマーク編集画面200に表示されている固有パラメータをメモリ12に記憶することによって、ウォータマークの設定を受け付ける。
補助プログラム42は、印刷パラメータ編集画面にて受け付けた印刷パラメータに基づいて、実行命令に付された印刷パラメータを加工する。例えば、補助プログラム42は、新たに受け付けた印刷パラメータを実行命令に付された印刷パラメータに付加したり、新たに受け付けた印刷パラメータで実行命令に付された印刷パラメータを書き換えたりする。なお、実行命令に付された印刷パラメータを、そのまま受け付けてもよい。
印刷パラメータを受け付けた補助プログラム42は、通信IF30を用いてプリンタ2から、プリンタ2の現在の状態や設定を示す現況情報を取得する(矢印G)。現況情報は、プリンタ2の現在の状態を示すステータス情報や、プリンタ2の内部メモリに現在記憶されている設定情報などである。ステータス情報は、例えば、印刷動作に関するジョブ情報や、ステープルの針の有無などである。設定情報は、例えば、各トレイの用紙サイズや、フィニッシャの有無などである。
補助プログラム42は、メッセージ表示条件を満たすか否かを判断する(矢印I)。具体的には、例えば、補助プログラム42は、印刷パラメータが特定の設定を含むかチェックする。補助プログラム42は、メッセージを表示する特定の設定を予め記憶している。例えば、「はがき」などの高級紙の設定を特定の設定として記憶している。補助プログラム42は、印刷パラメータが特定の設定である「はがき」を含む場合に、表示条件を満たすと判断する。この場合、補助プログラム42は、図5(a)に示すダイアログ110をUI20に表示させ、印刷を続行するか否かを確認するメッセージ114を表示する(矢印J)。
また例えば、補助プログラム42は、矢印Fにて受け付け印刷パラメータと、矢印Gにて取得した現況情報とを比較し、印刷パラメータと現況情報とが合致するか否かをチェックする。例えば、補助プログラム42は、印刷パラメータの用紙種が光沢紙であるのに対して、現況情報に含まれる用紙種が普通紙であり、両者が合致しない場合に、表示条件を満たすと判断する。この場合、補助プログラム42は、図5(b)に示すダイアログ120をUI20に表示させ、不一致を知らせるメッセージ124を表示する(矢印J)。
ダイアログ110,120には、続行ボタン111、121と、キャンセルボタン112、122と、再設定ボタン113、123が含まれている。ユーザは、はがきに印刷する場合や、普通紙への印刷を許可する場合、続行ボタン111、121をUI20を介して操作する。
図3に示すように、補助プログラム42は、続行ボタン111又は続行ボタン121の操作を受け付けた場合、加工済み中間画像データを生成する(矢印K)。例えば、矢印Fにてウォータマークの設定を受け付けた場合、補助プログラム42は、ウォータマークの設定に応じて、汎用印刷プログラム41が生成した中間画像データにウォータマークを合成する加工を行う。なお、印刷パラメータをチェックしても、メッセージ表示条件を満たさない場合、例えば、印刷パラメータが特定の設定を含まない場合や、印刷パラメータと現況情報が合致している場合、補助プログラム42は、矢印Jの処理を行わず、矢印Kの処理を行ってもよい。なお、図3では、キャンセルボタン112,122と再設定ボタン113,123が操作された場合の処理の記載を省略している。
続行ボタン111又は続行ボタン121の操作に応じて加工済み中間画像データを生成した補助プログラム42は、確認画面を表示する(矢印L)。例えば、補助プログラム42は、図4(b)に示すダイアログ150を表示し、印刷を実施するか否かの最終的な確認を行う。ダイアログ150には、実行ボタン151と、キャンセルボタン152と、再設定ボタン153が含まれている。なお、図5(a)又は図5(b)を表示した場合、続行ボタン111又は続行ボタン121の操作により印刷の意思を確認済みなので、矢印Lの処理は省略してもよい。この場合、補助プログラム42は、続行ボタン111、121が操作された場合には実行ボタン151が操作された場合と同様に、キャンセルボタン112,122が操作された場合にはキャンセルボタン152が操作された場合と同様に、再設定ボタン113,123が操作された場合にはキャンセルボタン152が操作された場合と同様に、それぞれ動作する。
図3に示すように、補助プログラム42は、実行ボタン151がUI20を用いて操作された場合、汎用印刷プログラム41から、編集アプリ43からの印刷指示に基づく実行命令を受け付けたのか、プレビュー指示に基づく実行命令を受け付けたのかを判断する(矢印M)。具体的には、補助プログラム42は、汎用印刷プログラム41から第1インタフェースに実行命令が渡された場合に、印刷指示に基づく実行命令を受け付けたと判断する。一方、補助プログラム42は、汎用印刷プログラム41から第2インタフェースに実行命令が渡された場合に、プレビュー指示に基づく実行命令を受け付けたと判断する。なお、補助プログラム42は、インタフェースを1つだけ備える場合には、実行命令に付されたオプションに基づいて同様の判断を行うことができる。
補助プログラム42は、印刷指示に基づく実行命令を受け付けたと判断した場合、印刷実施の内容をセットした終了通知を、汎用印刷プログラム41に出力する(矢印N)。汎用印刷プログラム41は、その終了通知に付された印刷実施の内容に応じて印刷データを生成する(矢印O)。例えば、汎用印刷プログラム41は、終了通知に付された加工済み中間画像データに基づいて印刷データを生成する。汎用印刷プログラム41によって生成される印刷データは、各種のプリンタにて印刷に使用できる形式の印刷データである。印刷データは、例えば、PWGRasterデータまたはPDFデータである。
汎用印刷プログラム41は、印刷データを生成すると、プリンタ2に対して印刷命令を送信する(矢印P)。プリンタ2は、印刷命令に付された印刷データに従って印刷を実行する。
なお、補助プログラム42は、汎用印刷プログラム41が生成した印刷データを汎用印刷プログラム41から受け付け、編集してもよい。例えば、補助プログラム42は、プリンタ2に特有な機能を実行させるためのコマンドを印刷データに付加してもよい。プリンタ2に特有な機能としては、例えば、トナーセーブ設定、フィニッシャの設定、がある。プリンタ2が自身でウォータマークやヘッダ/フッタ等を画像に付加できる機能を有している場合、補助プログラム42は、これらの機能を実行させるコマンドを印刷データに付加しても良い。補助プログラム42が印刷データを編集する場合は、編集された印刷データを補助プログラム42が汎用印刷プログラム41に出力し、編集した印刷データの印刷命令を汎用印刷プログラム41がプリンタ2に送信してもよい。
これに対して、補助プログラム42は、プレビュー指示に基づく実行命令を受け付けたと判断した場合、処理終了の内容をセットした終了通知を、汎用印刷プログラム41に出力する(矢印Q)。その終了通知には、加工済み中間画像データが含まれる。汎用印刷プログラム41は、プレビュー指示があった後、処理終了の内容をセットした終了通知を補助プログラム42から受け付けることにより、印刷データを生成する必要がないと判断する。この場合、汎用印刷プログラム41は、印刷データを生成せずに、編集アプリ43に応答通知を出力する(矢印R)。汎用印刷プログラム41は、終了通知に含まれていた加工済み中間画像データを応答通知に付して、応答通知を出力する。
編集アプリ43は、応答通知に応じて、プレビュー表示を行う(矢印S)。すなわち、編集アプリ43は、応答通知に付された加工済み中間画像データをUI20を用いて表示する。加工済み中間画像データは、印刷実行時と同様、補助プログラム42によって生成されたものであるので、編集アプリ43は、印刷結果に近いプレビュー表示を行うことができる。
なお、補助プログラム42が、矢印Fにて受け付けた印刷パラメータを終了通知に付し、汎用印刷プログラム41が、その加工済み印刷パラメータを含む応答通知を編集アプリ43に渡してもよい。編集アプリ43は、矢印Sのプレビュー表示後、次の印刷指示を受け付けた場合に、その加工済み印刷パラメータを印刷実行通知に付してもよい。この場合、加工済み印刷パラメータは、印刷実行通知のベンダ領域に設定される。汎用印刷プログラム41は、その加工済み印刷パラメータと中間画像データを付した実行命令を、補助プログラム42の第1インタフェースに対して出力してもよい。この場合、補助プログラム42は、実行命令に付された印刷パラメータを印刷パラメータ編集画面に反映させるとよい。これによれば、ユーザが同じ印刷設定を繰り返し行う手間を低減し、使い勝手を向上させることができる。
また、編集アプリ43は、プレビュー表示後に、画像編集画面にて画像の編集を行ったり、印刷設定画面にて印刷設定を行ったりする場合、加工済み印刷パラメータを画像の編集や印刷設定に反映させ、表示してもよい。これによれば、ユーザの意図に反する設定が繰り返し行われることを回避できる可能性が高くなる。
上記に対して、補助プログラム42は、ダイアログ150のキャンセルボタン152がUI20を用いて操作された場合、処理終了の内容をセットした終了通知を汎用印刷プログラム41に対して出力する(矢印T)。この場合、補助プログラム42は、印刷データを生成する必要がないので、加工済み中間画像データを終了通知に付加しない。汎用印刷プログラム41は、その終了通知に応じて、印刷データを生成する前に印刷を中止する(矢印U)。そして、汎用印刷プログラム41は、キャンセル通知を編集アプリ43に出力する(矢印V)。これによれば、ユーザが意図しない無駄な印刷が回避されることを、期待できる。
なお、キャンセル通知を受け付けた編集アプリ43は、画像編集画面をUI20に表示させ、印刷対象の画像や、印刷設定画面に入力された印刷パラメータなどの修正を、受け付けてもよい。そして、編集アプリ43は、印刷指示又はプレビュー指示を受け付け直してもよい。
また、キャンセル通知には、矢印Rの応答通知と同様に、加工済み中間画像データが付されていてもよい。この場合、編集アプリ43は、矢印Sと同様にプレビュー表示を行った後、画像編集画面に戻り、印刷対象の画像や、印刷設定画面に入力された印刷パラメータなどの修正を、受け付けてもよい。
一方、補助プログラム42は、再設定ボタン153がUI20を用いて操作された場合、再設定の内容をセットした終了通知を、汎用印刷プログラム41に出力する(矢印W)。汎用印刷プログラム41は、その終了通知に付された印刷設定の内容に応じて、印刷パラメータの再設定を受け付ける(矢印X、E)。すなわち、例えば、補助プログラム42は、印刷設定画面を再表示する。これによれば、ユーザが印刷パラメータを変更し、ユーザの意図に反する印刷が未然に回避されることを、期待できる。
印刷パラメータ編集画面を再表示する場合、再設定ボタン153の操作時に受け付けた印刷パラメータを、表示に反映させてもよい。この場合、ユーザは、先の印刷パラメータを確認しながら設定変更を行うことができ、使い勝手がよい。なお、再表示された印刷パラメータ編集画面にはデフォルト値を表示させてもよい。
なお、矢印Jにて、図5(a)又は(b)に示すように、メッセージ114、124を表示した場合に、例えば、はがきに印刷しない場合や、普通紙に印刷しない場合、ユーザは、キャンセルボタン112、122又は再設定ボタン113、123をUI20を用いて操作する。この場合、補助プログラム42は、上述したキャンセルボタン152の操作時と同様の動作、又は、再設定ボタン153の操作時と同様の動作を行い、ユーザの意図に反する無駄な印刷を未然に回避できる。
以上説明したように、第1実施形態の補助プログラム42は、プレビュー指示に基づく実行命令を受け付けたと判断した場合、加工済み中間画像データに基づく印刷データを汎用印刷プログラム41に生成させない。つまり、プリンタ2に印刷データが送信されない。この場合、汎用印刷プログラム41は、編集アプリ43に加工済み中間画像データを付した応答通知を出力する。そのため、加工済み中間画像データに示される画像を印刷前に編集アプリ43に表示させることが可能になり、ユーザが印刷画像を確認する機会が増える。その結果として、ユーザの意図しない加工が施された画像に基づく印刷を回避できる可能性が高くなる。
また、編集アプリ43が、印刷を実施する場合と同様に生成された加工済み中間画像データに基づいて、プレビュー表示を行うので、編集アプリ43によるプレビュー表示は、編集アプリ43が補助プログラム42を使用せずにプレビュー表示を行う場合より、ウォータマークの設定を正確に反映したプレビュー表示を行うことが可能になる。よって、編集アプリ43によるプレビュー表示を確認してユーザが印刷指示を入力しても、印刷結果がユーザの意図に反する可能性が低く、印刷のやり直しを抑制できる。
更に、補助プログラム42は、印刷指示に基づく実行命令を受け付けた場合には、印刷実施をセットした終了通知を出力し、プレビュー指示に基づく実行命令を受け付けた場合には、処理終了を示す終了通知を出力する。つまり、編集アプリ43が受ける指示の種類に応じて、補助プログラム42が汎用印刷プログラム41に出力する終了通知の応答値が異なる。汎用印刷プログラム41は、終了通知の応答値に応じて、印刷データを生成してプリンタ2に送信する、あるいは、編集アプリ43に応答する。そのため、補助プログラム42は、編集アプリ43が受け付けた指示に応じて汎用印刷プログラム41から出力される実行命令に応じて、加工済み中間画像データを編集アプリ43に渡すか否かを制御できる。
(第2実施形態)
続いて、本発明の第2実施形態のプログラムを利用する印刷システムについて、図6のシーケンス図を参照しながら説明する。第2実施形態は、補助プログラム42が印刷指示とプレビュー指示を受け付ける点が、第1実施形態と相違している。ここでは、第1実施形態と相違する点を説明する。なお、図6において、図2、図3と共通する処理については、図2、図3同じ符号を使用する。
続いて、本発明の第2実施形態のプログラムを利用する印刷システムについて、図6のシーケンス図を参照しながら説明する。第2実施形態は、補助プログラム42が印刷指示とプレビュー指示を受け付ける点が、第1実施形態と相違している。ここでは、第1実施形態と相違する点を説明する。なお、図6において、図2、図3と共通する処理については、図2、図3同じ符号を使用する。
実行命令を受け付けた補助プログラム42は、印刷パラメータの設定を受け付ける印刷パラメータ編集画面を表示する(矢印a)。例えば、補助プログラム42が表示する印刷パラメータ編集画面の一例であるウォータマーク編集画面200には、図4(a)に示すように、印刷ボタン201と、キャンセルボタン202と、プレビューボタン203が含まれている。
補助プログラム42は、UI20を用いて、プレビューボタン203の操作を受け付けた場合、加工済み中間画像データを生成し(矢印K)、プレビュー表示を行う(矢印b)。例えば、矢印Fにてウォータマークの設定を受け付けた場合、補助プログラム42は、その設定に応じて、図4(c)に示す確認画面160をUI20に表示させる。確認画面160には、実行ボタン161と、キャンセルボタン162と、再設定ボタン163とプレビュー画像164が含まれている。
補助プログラム42は、UI20を用いて、キャンセルボタン162の操作を受け付けた場合、処理終了の内容をセットした終了通知を汎用印刷プログラム41に出力する(矢印c)。このとき、補助プログラム42は、プレビュー表示時に生成した加工済み中間画像データを終了通知に付加する。
汎用印刷プログラム41は、加工済み中間画像データを含む終了通知を受け付けると、印刷データを生成せずに印刷を中止する(矢印d)。そして、汎用印刷プログラム41は、加工済み中間画像データが終了通知に付されていることから、加工済み中間画像データを含む応答通知を編集アプリ43に対して出力する(矢印e)。
編集アプリ43は、加工済み中間画像データを含む応答通知を受け付けることにより、印刷が中止されたことを検知する。この場合、編集アプリ43は、加工済み中間画像データをプレビュー表示した後、画像編集画面を表示して画像や印刷パラメータの修正を受け付けてもよい。
これに対して、補助プログラム42は、UI20を用いて、実行ボタン161の操作を受け付けた場合、矢印N~Pの処理を行い、印刷を実行する。また、補助プログラム42は、UI20を用いて、再設定ボタン163の操作を受け付けた場合、確認画面160の表示を終了させて矢印W,X,Eの処理を実行し、印刷パラメータの再設定を受け付ける。
実行ボタン161を操作しないことは、画像応答条件の一例である。プレビュー表示後に実行ボタン161が操作された場合に出力される終了通知(矢印N)は、第1情報の一例である。プレビュー表示後にキャンセルボタン162が操作された場合に出力される終了通知(矢印c)は、第2情報の一例である。
なお、補助プログラム42は、UI20を用いて、矢印aにて表示されるウォータマーク編集画面200に含まれる印刷ボタン201の操作を受け付けた場合、加工済み中間画像データを生成し(矢印K)、矢印N~Pの処理を行い、印刷を実行する。
なお、補助プログラム42は、UI20を用いて、矢印aにて表示されるウォータマーク編集画面200に含まれるキャンセルボタン202の操作を受け付けた場合、矢印T~Vの処理を行い、汎用印刷プログラム41が印刷データを生成する前に、当該印刷ジョブを中止させる。
以上説明したように、第2実施形態では、プレビューボタン203が操作されると、補助プログラム42がプレビュー表示を行い、そのプレビュー表示後に実行ボタン161が操作された場合、汎用印刷プログラム41が、印刷データを生成してプリンタ2に送信し、そのプレビュー表示後にキャンセルボタン162が操作された場合、汎用印刷プログラム41が加工済み中間画像データに基づく印刷データを生成せず、加工済み中間画像データを含む応答通知を編集アプリ43に対して出力する。そのため、加工済み中間画像データに示される画像を印刷前にユーザが確認する機会が増え、その結果として、ユーザの意図しない加工が施された画像に基づく印刷を回避できる可能性が高まる。
第2実施形態の補助プログラム42は、プレビュー表示後に実行ボタン161が操作される場合と、プレビュー表示後に実行ボタン161が操作されない場合とで、汎用印刷プログラム41に出力する終了通知の応答値を異ならせる。汎用印刷プログラム41は、終了通知の応答値に応じて、編集アプリ43に応答する応答態様を分けている。そのため、補助プログラム42は、実行ボタン161の操作に応じて、加工済み中間画像データを編集アプリ43に渡すか否かを制御できる。
なお、本実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本発明は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、PC1に接続されるプリンタは、図示の例に限らず、1台でも良いし、3台以上でもよい。
また、本形態の各処理を実行するモジュールは、補助プログラム42に限らず、OS21の汎用印刷プログラム41にて印刷を行う際に、OS21から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフローアプリ(Print workflow)でも良い。
補助プログラム42は、図3に示す矢印Kの処理後、プレビュー表示してから、ダイアログ150を表示してもよい(矢印L)。また、図3の矢印Lの処理では、図4(b)に示すダイアログ150の代わりに、図4(c)に示す確認画面160を表示してもよい。これらによれば、プレビュー画像に基づいて印刷を実行するか否かをユーザに確認させるので、ユーザの意図に反した印刷の抑制が期待できる。また、プレビュー表示又は確認画面160の表示は、編集アプリ43への印刷指示に基づく実行命令を受け付けた場合に行い、プレビュー指示に基づく実行命令を受け付けた場合には行わなくてもよい。
図3の矢印Kにて、加工済み中間画像データの生成に失敗した場合に、印刷パラメータに問題があると判断し、矢印Lの処理を行ってもよい。
確認画面は、印刷パラメータ編集画面と別個に表示しなくてもよい。例えば、図4(a)に示すウォータマーク編集画面200の印刷ボタン201が操作された場合、補助プログラム42は、印刷指示に基づく実行命令を受け付けたと判断する場合には、図3の矢印M~Sの処理を実行し、プレビュー指示に基づく実行命令を受け付けたと判断する場合には、矢印Q~Sの処理を実行してもよい。例えば矢印Rの応答通知に加工済み中間画像データを付加しなくてもよい。
図2、図3の処理に、図6に示すように、補助プログラム42がプレビューボタン203の操作に応じてプレビュー表示を行い、プレビュー表示する確認画面160のボタン161~163の操作に応じて、汎用印刷プログラム41が印刷データを生成してプリンタ2に送信する、あるいは、汎用印刷プログラム41が印刷データをプリンタ2に送信せずに、編集アプリ43に応答するようにしてもよい。
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
1 PC
2 プリンタ
11 CPU
20 UI
21 OS
30 通信IF
41 汎用印刷プログラム
42 補助プログラム
2 プリンタ
11 CPU
20 UI
21 OS
30 通信IF
41 汎用印刷プログラム
42 補助プログラム
Claims (13)
- 情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
前記コンピュータに、
前記情報処理装置に組み込まれているアプリケーションプログラムにて印刷対象とする画像が指定されている状態で、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して前記アプリケーションプログラムから特定指示があった場合に、指定された前記画像の加工に用いる加工設定を受け付ける受付処理を実行させ、
さらに前記コンピュータに、
指定された前記画像を示す画像データであって、前記汎用印刷プログラムが出力する中間画像データに、前記受付処理にて受け付けた前記加工設定に基づく加工を施し、前記加工が施された前記中間画像データである加工済み中間画像データを前記汎用印刷プログラムに出力する加工処理を実行させ、前記汎用印刷プログラムは、前記加工処理が実行された後、前記加工済み中間画像データに基づいて印刷データを生成し、生成した前記印刷データを前記プリンタに送信する場合と、印刷データを前記プリンタに送信することなく前記アプリケーションプログラムに応答をする場合とがある、
ことを特徴とするサポートプログラム。 - 請求項1に記載するサポートプログラムにおいて、
前記汎用印刷プログラムは、印刷データを前記プリンタに送信することなく前記アプリケーションプログラムに応答をする場合に、前記加工済み中間画像データを付加する、
ことを特徴とするサポートプログラム。 - 請求項2に記載するサポートプログラムにおいて、
前記特定指示の種類には、第1指示と第2指示とがあり、
前記汎用印刷プログラムは、前記第1指示があったときに前記加工処理が実行された場合、前記加工済み中間画像データに基づいて前記印刷データを生成して前記印刷データを前記プリンタに送信し、前記第2指示があったときに前記加工処理が実行された場合、前記アプリケーションプログラムに前記加工済み中間画像データを応答する、
ことを特徴とするサポートプログラム。 - 請求項3に記載するサポートプログラムにおいて、
前記第1指示は、印刷を前記プリンタに行わせる印刷指示であり、
前記第2指示は、プレビュー指示である、
ことを特徴とするサポートプログラム。 - 請求項1又は請求項2に記載するサポートプログラムにおいて、
前記コンピュータに、
前記加工済み中間画像データを応答する画像応答条件を満たす場合には、前記汎用印刷プログラムに第1情報を応答し、前記画像応答条件を満たさない場合には、前記汎用印刷プログラムに第2情報を応答する応答処理を実行させ、前記汎用印刷プログラムは、前記第2情報が応答された場合、前記印刷データを生成して前記印刷データを前記プリンタに送信し、前記第1情報が応答された場合、前記アプリケーションプログラムに応答する、
ことを特徴とするサポートプログラム。 - 請求項5に記載するサポートプログラムにおいて、
前記受付処理では、
前記加工済み中間画像データによって示される画像の印刷を行うか否かの選択も受け付け、
前記画像応答条件を、前記受付処理にて印刷を行わない選択を受け付けたこととする、
ことを特徴とするサポートプログラム。 - 請求項1から請求項5のいずれか1つに記載するサポートプログラムにおいて、
前記受付処理では、
前記加工済み中間画像データによって示される画像を前記情報処理装置の表示デバイスに表示させるプレビュー表示を行うか否かの選択も受け付け、
前記加工処理では、
前記受付処理にて前記プレビュー表示を行う選択を受け付けた場合、生成した前記加工済み中間画像データによって示される画像を前記表示デバイスに表示させる、
ことを特徴とするサポートプログラム。 - 請求項7に記載するサポートプログラムにおいて、
前記加工処理では、
前記加工済み中間画像データによって示される画像を前記表示デバイスに表示させた場合、前記加工設定を変更するか否かの選択を受け付け、
前記コンピュータに、
前記加工処理にて前記加工設定を変更することが選択された場合、前記プレビュー表示を終了させ、前記受付処理を実行させる、
ことを特徴とするサポートプログラム。 - 請求項1から請求項8のいずれか1つに記載するサポートプログラムにおいて、
前記加工処理では、
前記加工設定に基づく前記加工として、前記特定指示で指定されていた前記画像に、特定の情報を示す画像を合成する、
ことを特徴とするサポートプログラム。 - 請求項2から請求項9のいずれか1つに記載するサポートプログラムにおいて、
前記受付処理では、
前記加工設定を前記汎用印刷プログラムに応答し、前記汎用印刷プログラムは、前記加工処理が実行された後、前記アプリケーションプログラムに前記加工済み中間画像データを応答する場合、前記加工設定も前記アプリケーションプログラムに応答する、
ことを特徴とするサポートプログラム。 - 請求項10に記載するサポートプログラムにおいて、
前記特定指示には、前記加工設定を付加することが可能であり、
前記受付処理では、
前記特定指示に前記加工設定が付加されていた場合に、前記加工設定の各項目のデフォルトを、前記特定指示に付加されていた前記加工設定の設定内容に合わせる、
ことを特徴とするサポートプログラム。 - コンピュータを備える情報処理装置であって、
前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
前記情報処理装置には、前記情報処理装置と接続するプリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
前記コンピュータは、
前記アプリケーションプログラムにて印刷対象とする画像が指定されている状態で、前記汎用印刷プログラムに対して前記アプリケーションプログラムから特定指示があった場合に、前記サポートプログラムによって、指定された前記画像の加工に用いる加工設定を受け付ける受付処理を実行し、
さらに前記コンピュータは、
前記サポートプログラムによって、指定された前記画像を示す画像データであって、前記汎用印刷プログラムが出力する中間画像データに基づいて、前記受付処理にて受け付けた前記加工設定に基づく加工を施し、前記加工が施された前記中間画像データである加工済み中間画像データを前記汎用印刷プログラムに出力する加工処理を実行し、前記汎用印刷プログラムは、前記加工処理が実行された後、前記加工済み中間画像データに基づいて印刷データを生成し、生成した前記印刷データを前記プリンタに送信する場合と、印刷データを前記プリンタに送信することなく前記アプリケーションプログラムに応答をする場合とがある、
ことを特徴とする情報処理装置。 - 情報処理装置にプリンタが接続され、
前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
前記情報処理装置には、前記情報処理装置と接続するプリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
前記情報処理装置で生成された印刷データに基づく印刷を、前記プリンタに実行させる印刷方法において、
前記アプリケーションプログラムにて印刷対象とする画像が指定されている状態で、前記汎用印刷プログラムに対して前記アプリケーションプログラムから特定指示があった場合に、前記サポートプログラムによって、指定された前記画像の加工に用いる加工設定を受け付ける受付ステップを含み、
さらに、
前記サポートプログラムによって、指定された前記画像を示す画像データであって、前記汎用印刷プログラムが出力する中間画像データに基づいて、前記受付ステップにて受け付けた前記加工設定に基づく加工を施し、前記加工が施された前記中間画像データである加工済み中間画像データを前記汎用印刷プログラムに出力する加工ステップを含み、前記汎用印刷プログラムは、前記加工ステップの後、前記加工済み中間画像データに基づいて印刷データを生成し、生成した前記印刷データを前記プリンタに送信する場合と、印刷データを前記プリンタに送信することなく前記アプリケーションプログラムに応答をする場合とがある、
ことを特徴とする印刷方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019063907A JP7172800B2 (ja) | 2019-03-28 | 2019-03-28 | サポートプログラム、情報処理装置、および印刷方法 |
JP2019-063907 | 2019-03-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2020195330A1 true WO2020195330A1 (ja) | 2020-10-01 |
WO2020195330A8 WO2020195330A8 (ja) | 2020-11-19 |
Family
ID=72606220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2020/006090 WO2020195330A1 (ja) | 2019-03-28 | 2020-02-17 | サポートプログラム、情報処理装置、および印刷方法 |
Country Status (3)
Country | Link |
---|---|
US (3) | US10949149B2 (ja) |
JP (2) | JP7172800B2 (ja) |
WO (1) | WO2020195330A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022100567A (ja) * | 2020-12-24 | 2022-07-06 | ブラザー工業株式会社 | サポートプログラム |
WO2022138316A1 (ja) * | 2020-12-24 | 2022-06-30 | ブラザー工業株式会社 | サポートプログラム |
JP2022114316A (ja) * | 2021-01-26 | 2022-08-05 | ブラザー工業株式会社 | サポートプログラム |
JP2022114317A (ja) * | 2021-01-26 | 2022-08-05 | ブラザー工業株式会社 | サポートプログラム |
JP2022169095A (ja) | 2021-04-27 | 2022-11-09 | ブラザー工業株式会社 | サポートプログラムおよび印刷システム |
DE102023200419A1 (de) | 2022-02-09 | 2023-08-10 | Canon Kabushiki Kaisha | Programm, informationsverarbeitungsvorrichtung und steuerverfahren |
JP2024112425A (ja) * | 2023-02-08 | 2024-08-21 | ブラザー工業株式会社 | サポートプログラム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010035021A (ja) * | 2008-07-30 | 2010-02-12 | Sharp Corp | 画像処理装置及びプレビュー表示方法 |
JP2013058090A (ja) * | 2011-09-08 | 2013-03-28 | Canon Inc | 情報処理装置、情報処理方法、及びプログラム |
JP2015041268A (ja) * | 2013-08-22 | 2015-03-02 | 株式会社リコー | プログラム、情報処理装置および画像処理システム |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020097419A1 (en) * | 2001-01-19 | 2002-07-25 | Chang William Ho | Information apparatus for universal data output |
JP4857135B2 (ja) * | 2007-01-30 | 2012-01-18 | キヤノン株式会社 | 情報処理装置、情報処理方法、プログラム、及び記憶媒体 |
WO2013089763A1 (en) * | 2011-12-16 | 2013-06-20 | Intel Corporation | Driverless printing by a target printer |
US8922795B2 (en) * | 2012-02-03 | 2014-12-30 | Apple Inc. | Enabling access to supported capabilities of printers prior to installing printer-specific software for the printers |
JP5962107B2 (ja) * | 2012-03-22 | 2016-08-03 | 株式会社リコー | 印刷制御装置、画像形成システムおよびプログラム |
JP6028776B2 (ja) * | 2014-09-19 | 2016-11-16 | コニカミノルタ株式会社 | Uiプログラム、印刷制御装置及びその制御方法 |
JP6723739B2 (ja) * | 2015-12-21 | 2020-07-15 | キヤノン株式会社 | 印刷制御装置、印刷制御方法、及びプログラム |
JP6631278B2 (ja) | 2016-01-29 | 2020-01-15 | ブラザー工業株式会社 | ドライバプログラム、及びドライバプログラムとプリンタとのセット |
JP6250110B2 (ja) * | 2016-07-19 | 2017-12-20 | キヤノン株式会社 | 情報処理装置、その方法およびプログラム |
JP6794786B2 (ja) * | 2016-09-15 | 2020-12-02 | 株式会社リコー | 情報処理装置、情報処理方法 |
US10452323B2 (en) * | 2018-03-23 | 2019-10-22 | Konica Minolta Laboratory U.S.A., Inc. | Method, printer, and computer-readable medium for printing with user-specified and predefined settings |
JP7508202B2 (ja) * | 2018-06-29 | 2024-07-01 | キヤノン株式会社 | 情報処理装置および制御方法、制御プログラム |
JP7250477B2 (ja) * | 2018-11-02 | 2023-04-03 | キヤノン株式会社 | プログラム及び情報処理装置 |
-
2019
- 2019-03-28 JP JP2019063907A patent/JP7172800B2/ja active Active
-
2020
- 2020-02-17 WO PCT/JP2020/006090 patent/WO2020195330A1/ja active Application Filing
- 2020-02-20 US US16/795,722 patent/US10949149B2/en active Active
-
2021
- 2021-03-15 US US17/200,977 patent/US11379170B2/en active Active
-
2022
- 2022-07-01 US US17/855,903 patent/US11720306B2/en active Active
- 2022-11-01 JP JP2022175373A patent/JP7405217B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010035021A (ja) * | 2008-07-30 | 2010-02-12 | Sharp Corp | 画像処理装置及びプレビュー表示方法 |
JP2013058090A (ja) * | 2011-09-08 | 2013-03-28 | Canon Inc | 情報処理装置、情報処理方法、及びプログラム |
JP2015041268A (ja) * | 2013-08-22 | 2015-03-02 | 株式会社リコー | プログラム、情報処理装置および画像処理システム |
Also Published As
Publication number | Publication date |
---|---|
JP7172800B2 (ja) | 2022-11-16 |
US20200310717A1 (en) | 2020-10-01 |
US20220334784A1 (en) | 2022-10-20 |
JP7405217B2 (ja) | 2023-12-26 |
US11720306B2 (en) | 2023-08-08 |
JP2020166350A (ja) | 2020-10-08 |
US10949149B2 (en) | 2021-03-16 |
JP2023014081A (ja) | 2023-01-26 |
US11379170B2 (en) | 2022-07-05 |
WO2020195330A8 (ja) | 2020-11-19 |
US20210200491A1 (en) | 2021-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020195330A1 (ja) | サポートプログラム、情報処理装置、および印刷方法 | |
WO2020158716A1 (ja) | サポートプログラム、情報処理装置、および印刷方法 | |
US11843753B2 (en) | Non-transitory computer-readable recording medium, information processing apparatus and printing method | |
US11231886B2 (en) | Non-transitory computer-readable recording medium, information processing apparatus and printing method | |
US20230124174A1 (en) | Information processing apparatus configured to perform printing using general-use printing program, non-transitory computer-readable recording medium, and printing method therefor | |
US11609727B2 (en) | Non-transitory computer-readable recording medium, information processing apparatus and printing method | |
US11064088B2 (en) | Non-transitory computer-readable recording medium, information processing apparatus and printing method | |
JP2020129221A (ja) | サポートプログラム、情報処理装置、および印刷方法 | |
CN113383305B (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: 20776864 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20776864 Country of ref document: EP Kind code of ref document: A1 |