Support program and program set
The support program and program set address the lack of interface in OS-compliant printing programs by automating printer selection and application activation, improving user convenience and system efficiency.
Patent Information
- Application Number
- JP2024006576
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-01-19
- Publication Date
- 2025-08-01
AI Technical Summary
Existing general-purpose printing programs compliant with OS standards lack an interface for managing applications, making it difficult to efficiently manage printers and applications in a unified manner.
A support program and program set that integrate with the OS's general-purpose printing program, enabling printer identification and application activation, allowing seamless printer selection and management without user intervention.
Facilitates convenient printer management and application integration by automating the selection and activation processes, reducing user effort and enhancing overall system usability.
Smart Images

Figure 2025112387000001_ABST
Abstract
Description
Technical Field
[0001] The technical field disclosed in this specification relates to a support program and a program set for supporting the control of a printer.
Background Art
[0002] In recent years, a technology for controlling a printer by using a general-purpose printing program standard for an OS that constitutes a part of the OS without using a printer driver provided by a printer vendor has been put into practical use. In this technology, when the OS detects a printer, it associates with the general-purpose printing program standard for the OS. Thereafter, when receiving a print instruction for the printer, the general-purpose printing program standard for the OS generates print data without using the printer driver provided by the printer vendor, enabling printing by the general-purpose printing program standard for the OS.
[0003] Also, various application programs (apps) that can use a printer are known, and an app for managing a plurality of apps is also known. For example, Patent Document 1 discloses an information processing apparatus including an app management unit for managing apps and a printer management unit for managing a printer, configured to display the current state of a printer corresponding to a selected app.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0005] As described above, a technique for associating and managing a printer and an application is known. Even in an environment that uses a general-purpose printing program compliant with the OS standard, it is desirable to be able to manage applications that can use the printer. However, since the general-purpose printing program compliant with the OS standard does not have an interface related to the application, there is room for improvement.
Means for Solving the Problem
[0006] The support program made for solving the above-described problems is executable by a computer of an information processing apparatus, supports a general-purpose printing program incorporated in advance in the operating system of the information processing apparatus, and corresponds to a specific printer. The operating system can receive a first activation instruction which is an activation instruction for the support program corresponding to the selected printer. When there is a print instruction output from an application program incorporated in the information processing apparatus to the computer, and the print instruction causes the general-purpose printing program to perform printing of an image on the specific printer, the computer causes the general-purpose printing program to acquire image data indicating the image, and execute processing for transmitting a print job based on the image data to the specific printer. When the operating system receives the first activation instruction with the specific printer selected, the computer further performs an acquisition process of acquiring printer identification information for identifying the specific printer, and a reception process of receiving a second activation instruction which is an activation instruction for a specific application program via a user interface of the information processing apparatus. The specific application program can receive selection of a printer and a print instruction for the selected printer. When the computer receives the second activation instruction in the reception process, the computer further performs an activation process of activating the specific application program. In the activation process, the printer identification information acquired in the acquisition process is passed to the specific application program being activated as information used for selection of a printer in the specific application program, and is configured as such.
[0007] The support program disclosed in this specification is also activated when the OS receives a first activation instruction, separately from a print instruction from an application program. When activated by the first activation instruction, the support program causes the computer of the information processing apparatus to acquire printer identification information for identifying a specific printer and enables the reception of a second activation instruction for starting a specific application program. When the support program receives the second activation instruction, it causes the computer to start a specific application program and pass the acquired printer identification information to the specific application program. As a result, the specific application program can use the printer identification information for printer selection. Therefore, in a specific application program, the labor of the user's operation for selecting a specific printer can be saved.
[0008] Also, a program set made for the purpose of solving the above-described problems is a program set including a first program and a second program executable by a computer of an information processing apparatus, wherein the first program is a support program that supports a general-purpose print program pre-installed in the operating system of the information processing apparatus and corresponding to a specific printer, the operating system can receive a first activation instruction that is an activation instruction for the support program corresponding to the selected printer, the second program is an application program that can receive printer selection and receive a print instruction for the selected printer, the first program causes the computer, when there is a print instruction output from an application program incorporated in the information processing apparatus and causing the general-purpose print program to perform image printing on the specific printer, to acquire image data indicating the image from the general-purpose print program and execute a process for transmitting a print job based on the image data to the specific printer, and the first program further causes the computer to When the operating system receives the first activation instruction in a state where the specific printer is selected, an acquisition process for acquiring printer identification information for identifying the specific printer is executed, and a reception process for receiving a second activation instruction, which is an activation instruction for the second program, is executed via the user interface of the information processing apparatus. The first program further causes the computer to execute an activation process for activating the second program in response to receiving the second activation instruction in the reception process. In the activation process, the printer identification information acquired in the acquisition process is passed to the second program to be activated. The second program causes the computer to search for the specific printer using the printer identification information when the second program is activated by the second activation instruction for the first program and the printer identification information is passed from the first program, and to execute a selection process for selecting the specific printer in response to the specific printer being searched for. It is configured as described above.
[0009] The program set disclosed in this specification includes a first program that is a support program and a second program that is an application program. The first program causes the computer of the information processing apparatus to acquire printer identification information for identifying a specific printer and to receive an instruction to activate the second program. When the first program receives an instruction to activate the second program, the first program causes the computer to activate the second program and to pass the acquired printer identification information to the activated second program. When the second program is activated and the printer identification information is passed, the second program causes the computer to select a specific printer using the printer identification information. Therefore, in the second program, the trouble of the user's operation for selecting a specific printer can be saved.
[0010] An information processing apparatus in which the support program and the program set are incorporated, a computer-readable storage medium storing the support program and the program set, and a control method for realizing the functions of the support program and the program set are also novel and useful.
Advantages of the Invention
[0011] According to the technology disclosed in this specification, in an information processing apparatus incorporating a general-purpose printing program compliant with the OS standard, a technology for enhancing the convenience of an application that can utilize a printer is realized.
Brief Description of the Drawings
[0012]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Modes for Carrying Out the Invention
[0013] Hereinafter, a personal computer (hereinafter referred to as "PC") that uses the support program and program set of the first embodiment will be described in detail with reference to the accompanying drawings. This specification discloses a support program executed on a PC.
[0014] As shown in FIG. 1, the PC1 of this embodiment includes a controller 10 including a CPU 11 and a memory 12. The PC1 is an example of an information processing apparatus. The CPU 11 is an example of a computer. Further, the PC1 includes a user interface (hereinafter referred to as "user IF") 13 and a communication interface (hereinafter referred to as "communication IF") 14, and these are electrically connected to the controller 10. Note that the controller 10 in FIG. 1 is a general term for the hardware and software used for the control of the PC1, and does not necessarily represent a single piece of hardware actually existing in the PC1.
[0015] The CPU 11 of the PC1 executes various processes according to the program read from the memory 12 and based on the user's operations. The memory 12 stores a plurality of programs including various application programs (hereinafter referred to as "apps") and various data. The memory 12 is also used as a work area when various processes are executed. The buffer included in the CPU 11 is also an example of a memory. Note that an example of the memory 12 is not limited to a ROM, a RAM, an HDD, etc. built in the PC1, and may be a storage medium readable and writable by the CPU 11, for example, a recording medium such as a CD-ROM or a DVD-ROM.
[0016] The user IF 13 includes a display 13a which is hardware for displaying a screen for notifying the user of information, and hardware for receiving operations by the user. Note that the user IF 13 may be a combination of a display 13a capable of displaying information and a mouse, a keyboard, etc. having an input reception function, or may be a touch panel having the function of the display 13a and the input reception function.
[0017] The communication IF14 includes hardware for communicating with an external device such as the printer 2. The communication standards of the communication IF14 are Ethernet (registered trademark), Wi-Fi (registered trademark), USB, etc. The PC1 may be connected to the Internet via the communication IF14. The PC1 may be provided with a plurality of communication IF14s corresponding to a plurality of communication standards.
[0018] As shown in FIG. 1, the memory 12 of the PC1 stores various programs and various data, including an operating system (hereinafter referred to as "OS") 21 including a general-purpose printing program 41, an auxiliary program 42, an image processing application 43, and a status monitor 44. The auxiliary program 42 is an example of a support program and an example of a first program. The image processing application 43 is an example of a specific application program and an example of a second program. The set of the auxiliary program 42 and the image processing application 43 is an example of a program set.
[0019] The OS21 is a multitasking OS that can manage and switch a plurality of tasks to process the plurality of tasks in parallel. The OS21 is, for example, Windows (registered trademark), macOS (registered trademark), Linux (registered trademark), iOS (registered trademark), Android (registered trademark).
[0020] The OS21 includes a general-purpose printing program 41. The general-purpose printing program 41 is an OS standard program prepared by the vendor of the OS21 and provided as a part of the OS21. That is, the PC1 is equipped with the OS21 having the general-purpose printing program 41. The general-purpose printing program 41 is not configured to use a printer driver unique to each printer.
[0021] The general-purpose printing program 41 is a program having a function for causing printers of a plurality of types provided by a plurality of vendors to execute printing based on a user's instruction. The general-purpose printing program 41 supports general-purpose functions that can execute printing on many printers. Unlike the printer driver specific to each printer, the general-purpose printing program 41 does not support functions specific to each printer or the printer driver, particularly functions that require complex processing.
[0022] The general-purpose printing program 41 is a program including a function of receiving image data specified as a printing target in a printing instruction output from various applications based on a user's instruction, and generating intermediate data based on the image data. The intermediate data is, for example, XPS data. The general-purpose printing program 41 further has a function of generating printing data in a format that can be used for printing on various printers based on the intermediate data. The printing data is, for example, PWGRaster data or PDF data. Also, the general-purpose printing program 41 has a function of transmitting the generated printing data to a printer specified as a device for executing printing via a communication function by the OS 21.
[0023] The auxiliary program 42 is a program or a group of programs that execute processing based on an instruction from the OS 21 accompanying the processing of the general-purpose printing program 41, and is a program that supports control of the target hardware. The auxiliary program 42 of this embodiment corresponds to the model of the printer 2 connected to the PC 1 and is provided, for example, by the vendor of the printer 2. The printer 2 is an example of a specific printer. When the printer 2 is selected as a device for executing printing, when a detailed printing setting instruction is received in a state where the printer 2 is selected, when an instruction to cause the printer 2 to execute printing is received, etc., the general-purpose printing program 41 activates the auxiliary program 42 corresponding to the printer 2. The auxiliary program 42 is, for example, what is called a print support application (abbreviation, PSA) or a hardware support application (abbreviation, HSA).
[0024] Note that the auxiliary program 42 may be a combination of a plurality of programs each of which receives an execution instruction, or may be a single program that can execute different processes according to instructions. Further, the auxiliary program may be a program prepared by the printer vendor for each type of printer. For example, an auxiliary program for an inkjet printer and an auxiliary program for a laser printer may be prepared respectively. Not limited to each type of printer, there may be an auxiliary program prepared for each model of the printer or for each series of printer models.
[0025] When a new printer is connected to the PC1, for example, the OS 21 of the PC1 can download an appropriate auxiliary program from a server of the printer vendor or the like and incorporate it into the PC1 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.
[0026] The image processing application 43 is a program for using the printer 2. For example, it is a program for causing the printer 2 to perform printing and scanning of image data. The image processing application 43 may be able to create and edit image data. The image processing application 43 of this embodiment is a program provided by the vendor of the printer 2 and can transmit at least one of a print instruction for executing printing and a scan instruction for executing scanning to the printer 2 based on an instruction received via the user IF 13.
[0027] The status monitor 44 is an application program that can monitor a plurality of printers including the printer 2. The status monitor 44 can communicate with the printer to be monitored regularly and acquire information indicating the status of the printer.
[0028] The PC1 of this embodiment is connected to the printer 2 as shown in FIG. 1 via the communication IF14. The printer 2 is a device having at least a printing function and a communication function. When the printer 2 receives a printing job from, for example, the PC1 or the like, it can execute printing based on the received printing job. The printer 2 may be a device capable of color printing or a device capable of executing only monochrome printing.
[0029] Next, in the PC1 of this embodiment, an app management procedure for using the image processing app 43 will be described with reference to the sequence diagram of FIG. 2. The PC1 of this embodiment is connected to the printer 2, and a printer queue corresponding to the printer 2 is created. Further, an auxiliary program 42 and an image processing app 43 corresponding to the printer 2 are incorporated in the PC1, and the OS 21 registers the auxiliary program 42 in association with the printer queue corresponding to the printer 2.
[0030] In addition, each processing step other than the user operation in this embodiment basically shows the processing of the CPU 11 according to the instructions described in a program such as the auxiliary program 42. In this specification, for various processes performed by the controller 10 or the CPU 11 according to programs such as the auxiliary program 42, the general-purpose printing program 41, and the OS 21, for convenience, it may be described that the auxiliary program 42, the general-purpose printing program 41, and the OS 21 mainly perform various processes. The processing by the CPU 11 also includes the control of hardware using the API of the OS 21. In this specification, the detailed description of the OS 21 is omitted to explain the operation of each program. Also, "acquisition" is used as a concept that does not require a request.
[0031] OS21 can receive setting instructions for each part from the user, and on the screen for receiving setting instructions, it can receive device management instructions including display instructions for information about various devices connected to PC1 and change instructions for settings. For example, when OS21 receives a setting instruction and a device management instruction (A01), it can further receive a device selection, as shown in FIG. 3 for example. When OS21 receives an operation on the "Device" button 511 and then receives an operation on the "Printer and Scanner" button 512 on the device setting screen 51 (FIG. 3(A)) displayed thereby, it will display a device management screen 52 as shown in FIG. 3(B) for example (A02).
[0032] The device management screen 52 is a screen including a list of various devices that are devices connected to PC1 and can execute image processing such as printers and scanners. The user can select a device to be managed from the list displayed on the device management screen 52 (A03). For example, when OS21 receives an operation on the button 521 for specifying Printer 2 on the device management screen 52, it will display a detailed management screen 53 as shown in FIG. 4(A) for example (A04).
[0033] On the detailed management screen 53, for example, a "Open Printer Queue" button 531, an "App Launch" button 532, and a "Print Test Page" button 533 are displayed. The "Open Printer Queue" button 531 is a button for receiving an instruction to check the status of the printer queue corresponding to the selected printer. The "App Launch" button 532 is a button for receiving an instruction to launch the app corresponding to the selected printer. When receiving an operation on this button 532, OS21 will launch the auxiliary program 42 corresponding to Printer 2. The "Print Test Page" button 533 is a button for receiving an instruction to send a test image by OS21 to the selected printer. On the detailed management screen 53, OS21 can receive operations by the user on buttons 531, 532, 533, etc.
[0034] When an operation on the "App Launch" button 532 is received on the detailed management screen 53 where the printer 2 is selected and displayed (A11), the OS 21 passes the information of the printer 2 which is the selected printer and the instruction to start the program corresponding to that printer to the general-purpose printing program 41. When the general-purpose printing program 41 receives this instruction from the OS 21, it is configured to start the program associated with the printer information of the printer 2. In this embodiment, since the identification information of the auxiliary program 42 is stored in association with the printer information of the printer 2, the general-purpose printing program 41 starts the auxiliary program 42 (A12). The user's operation on the "App Launch" button 532 is an example of a start instruction (also referred to as Open Printer App) for starting the auxiliary program 42. The operation on the "App Launch" button 532 is an example of the first start instruction.
[0035] When the auxiliary program 42 is started from the general-purpose printing program 41 in response to the user's operation on the "App Launch" button 532, first, it requests the printer information of the printer 2 from the OS 21 (A21) and acquires the printer information from the OS 21 (A22). The printer information is information for identifying the printer 2 and includes, for example, the model name and IP address of the printer 2. The printer information is an example of the printer identification information. A22 is an example of the acquisition process.
[0036] By acquiring the model name and IP address of the printer 2, the auxiliary program 42 can identify the printer 2 and enable communication with the printer 2. Therefore, the auxiliary program 42 requests the main body information from the printer 2 (A23).
[0037] At this time, if the printer 2 is offline (alt: [offline]), the auxiliary program 42 cannot acquire the information for the request of A23. In that case, the auxiliary program 42 causes the user IF 13 to display an offline notification screen 54 notifying that the printer 2 is offline, as shown in FIG. 5 for example (A24). The auxiliary program 42 may retry the request of A23.
[0038] If the printer 2 is online (alt: [Online]), the auxiliary program 42 acquires main body information from the printer 2 (A25). The main body information includes, for example, information indicating parameters included in print settings used for printing by the printer 2, print setting information indicating parameters that can be set for each item of the print settings, information indicating the remaining amount and model number of consumables, information on selectable trays, and information on the paper size of the paper set in each tray. The parameters included in the print settings used for printing by the printer 2 include, for example, the default paper size, information indicating whether double-sided printing is acceptable, color settings at the time of copying, layout information at the time of copying, information indicating whether to perform ground color removal copying, and information on the paper feed tray and the paper discharge tray. The main body information is information including the print setting information, and A25 is an example of print setting acquisition processing. Further, the main body information is information including consumable information regarding the consumables possessed by the printer 2, and A25 is also an example of consumable acquisition processing.
[0039] Note that the auxiliary program 42 can directly acquire the main body information from the printer 2 using, for example, MIB (abbreviation for Management Information Base). The auxiliary program 42 may acquire the main body information of the printer 2 by requesting it from the general-purpose printing program 41. The general-purpose printing program 41 can communicate with the printer 2 through communication corresponding to, for example, IPP (abbreviation for internet printing protocol) via the OS 21. The auxiliary program 42 can acquire the information on the currently set print settings by acquiring the information on the print settings from the printer 2.
[0040] Then, the auxiliary program 42 causes the user IF 13 to display an application selection screen for receiving the user's selection as to whether or not to start an application that uses the printer 2 (A31). For example, as shown in FIG. 6, the auxiliary program 42 is an application incorporated in the PC 1, and displays an application selection screen 55 for receiving a selection of an application to be started from various applications that can use the printer 2, and receives the user's operation (A32). The application selection screen 55 includes printer identification information 551 indicating the currently selected printer 2, a button 552 for receiving an instruction to start the image processing application 43, and a button 553 for receiving an instruction to start the status monitor 44. The button 552 is an example of an operator. Note that information indicating the printer 2 is displayed in the printer identification information 551 based on the printer information acquired from the OS 21 in A22.
[0041] By displaying the printer identification information 551 of the printer 2 on the application selection screen 55, the user can grasp the information of the printer 2, which is the currently selected printer. Note that in addition to the image processing application 43 and the status monitor 44, applications that can use the printer 2, such as a FAX transmission application, a disk label application, a New Year's card application, and a label application, may be incorporated in the PC 1. In that case, the application selection screen 55 may include buttons for receiving start instructions for each application incorporated in the PC 1.
[0042] When the auxiliary program 42 receives the user's operation on the application selection screen 55, it starts the application selected by the user (A33). For example, when the user operates the button 552, the auxiliary program 42 determines to start the image processing application 43. The operation on each button in the application selection screen 55 is an example of a second start instruction, and the process of receiving the operation in A32 is an example of a reception process.
[0043] Next, based on the user's selection at A32, the application startup procedure, which is the procedure for starting an application, will be described with reference to the sequence diagram of FIG. 7. In the following, it is assumed that the user has selected the image processing application 43 as the application to be used and has operated the button 552 in FIG. 6.
[0044] Since the image processing application 43 has been selected, the auxiliary program 42 causes the user IF 13 to display an application selection screen (B01) for receiving a selection as to whether to pass the print setting parameters set in the printer 2 to the image processing application 43, and receives the user's selection (B02). The processes of B01 and B02 are an example of a specified process.
[0045] The print setting parameters set in the printer 2 are information used for printing by the printer 2 and are information included in the main body information acquired from the printer 2 at A25 in FIG. 2. If the printer 2 is offline, since the main body information cannot be acquired from the printer 2, the auxiliary program 42 may be considered to have received an instruction not to pass it without performing the processes of B01 to B02.
[0046] The image processing application 43 is an application that receives instructions for printing and scanning and can use the print setting information set in the printer 2. In B01, the auxiliary program 42 displays, for example, an application selection screen 56 including a message for asking the user whether to pass the print settings of the printer 2 to the image processing application 43 as shown in FIG. 8, a button 561 for receiving an instruction to pass it, and a button 562 for receiving an instruction not to pass it.
[0047] When it is determined that an instruction to transfer has been received by operating the button 561 (alt: [transfer]), the auxiliary program 42 associates printer information, consumable information, and parameters, and starts the image processing application 43 (B11). Also, when it is determined that an instruction not to transfer has been received by operating the button 562 (alt: [not transfer]), the auxiliary program 42 associates printer information and consumable information, and starts the image processing application 43 (B12). B11 and B12 are examples of startup processing.
[0048] The printer information is the information acquired by the auxiliary program 42 from the OS 21 at A22 in FIG. 2, and includes the model name and IP address of the printer 2. The consumable information is the information included in the main body information acquired by the auxiliary program 42 from the printer 2 at A25 in FIG. 2.
[0049] By allowing the user to select whether to pass the information on the print settings set in the printer 2 to the image processing application 43, the default value of the print settings can be set according to the convenience of the user. Note that the selection as to whether the auxiliary program 42 passes the information on the print settings to the image processing application 43 may be accepted collectively for all parameters related to the print settings, or may be selectable for each individual item.
[0050] When the image processing application 43 is started by the instruction of B11 or B12 (B15), it searches for the printer 2 using the printer information received from the auxiliary program 42 (B16). The image processing application 43, for example, sends a search signal and waits for the reception of a response signal. Then, the image processing application 43 determines whether it has received a response from the printer 2.
[0051] When the image processing application 43 receives a response from a device that matches the printer information, it determines that it has been able to search for the printer 2 (alt: [able to search]), and selects the printer 2 as the printer to be used in the image processing application 43 (B21). B21 is an example of selection processing.
[0052] If the printer information is only the model name, when there are multiple printers of the same model, the image processing application 43 cannot identify the printer 2. Also, if the printer information is only the IP address, there is a possibility that printers of different models are set to the same IP address, and the image processing application 43 may select a printer different from the selected printer 2. Since the auxiliary program 42 passes the printer information including the model name and IP address of the printer 2, which is the selected printer, to the image processing application 43, the image processing application 43 can appropriately search for the printer 2 selected by the user on the device management screen 52 (see Fig. 3(B)).
[0053] Furthermore, when the image processing application 43 is started by a start instruction associated with print setting parameters (opt: [with parameters]), the image processing application 43 sets the print setting parameters passed in the start instruction as the default values of the print settings in the image processing application 43 (B26). B26 is an example of setting processing. By setting the print settings set in the printer 2 as the default values of the print settings in the image processing application 43, the image processing application 43 can use the printer 2 with appropriate settings. Therefore, the user can save the trouble of the operation of selecting parameters.
[0054] On the other hand, when the printer 2 cannot be searched at B16 (alt: [could not be searched]), the image processing application 43 notifies that the printer 2 is offline (B28). The image processing application 43 causes the user IF13 to display an offline notification screen 54 as shown in Fig. 5, for example.
[0055] If the auxiliary program 42 gives an offline notification at A24 in Fig. 2, the user can notice that it is offline before starting the image processing application 43. Also, if the image processing application 43 gives an offline notification at B28, it can notify that the printer 2 cannot be used in the image processing application 43. The CPU 11 may perform only one of A24 and B28 in Fig. 2.
[0056] Then, the image processing app 43 causes the startup screen to be displayed on the user IF 13 (B31). When starting up, the image processing app 43 displays the startup screen 61, for example, as shown in FIG. 9. The startup screen 61 includes a button 611 for receiving a print instruction and a button 612 for receiving a scan instruction as the processes to be executed by the image processing app 43. Further, when the image processing app 43 receives printer information and consumable information from the auxiliary program 42, it causes the startup screen 61 including the model name of the printer 2 and consumable information to be displayed as the information 613 of the printer 2. Since the auxiliary program 42 acquires the consumable information from the printer 2 and passes it to the image processing app 43, the image processing app 43 can display the consumable information on the startup screen 61. Therefore, the image processing app 43 can notify the user to that effect, for example, when the remaining amount of consumables is low.
[0057] Note that when the printer 2 is offline and the main body information cannot be acquired at the time of A23 in FIG. 2, the auxiliary program 42 may start the image processing app 43 without associating the consumable information. In that case, the image processing app 43 may acquire the main body information from the printer 2 if it is started and can search for the printer 2. Further, when the image processing app 43 cannot search for a device that matches the printer information passed at startup, it may be normally started and be able to accept the selection of a printer by the user's operation.
[0058] Note that when an operation on the button 553 is received on the app selection screen 55, the auxiliary program 42 starts the status monitor 44. In this case, the auxiliary program 42 starts the status monitor 44 in association with the printer information. The status monitor 44 causes a status screen showing the status information of the printer 2 corresponding to the printer information passed at startup to be displayed on the user IF 13. The status screen displays status information including, for example, the remaining amount information of the consumables of the printer 2 and error information.
[0059] Next, the printing execution procedure will be described with reference to the sequence diagram of FIG. 10. Hereinafter, it is assumed that the printer 2 is online and the printer 2 is selected by the activated image processing application 43. The user can start a procedure for causing the printer 2 to execute printing using the image processing application 43, for example, by operating the button 611 on the startup screen 61 shown in FIG. 9.
[0060] After the user determines the image to be printed and the printing settings for the printer 2, the user inputs an instruction to execute printing in the image processing application 43 (C01). Since the general-purpose printing program 41 is incorporated in the OS 21 of the PC 1, the image processing application 43 determines that it has received an execution instruction to cause the general-purpose printing program 41 to print the selected image on the printer 2. In this case, the image processing application 43 is an example of an application program.
[0061] If the image processing application 43 has received the printing setting parameters from the auxiliary program 42, it accepts the user's selection of the parameters as selectable printing setting information. For example, if the information on the paper size of the paper set in the tray of the printer 2 is included in the printing setting parameters, the image processing application 43 can accept the user's selection of the paper size information as a selectable paper size. Therefore, the labor of the user for selecting the paper size can be reduced, and for example, the possibility of selecting a non-selectable paper size can be reduced.
[0062] The image processing application 43 passes the received printing instruction information to the general-purpose printing program 41 (C02). The general-purpose printing program 41 acquires, as the printing instruction information, the image data indicating the image to be printed and the information indicating the printing settings from the image processing application 43.
[0063] The general-purpose printing program 41 generates intermediate data (C03) by converting the format of the image data of the image to be printed into the format of intermediate data based on the information obtained from the image processing application 43. The image data included in the image processing application 43 is of various types, and the general-purpose printing program 41 converts the image data to be printed into intermediate data suitable for generating print data. If the image data to be printed is data suitable for generating print data, the generation of intermediate data may be omitted and it may be used as intermediate data as it is.
[0064] Note that the general-purpose printing program 41 may start the auxiliary program 42 corresponding to the printer 2 which is the specified device before generating the intermediate data, and notify that the processing of the print job has started. When the auxiliary program 42 is started from the general-purpose printing program 41, it can pass information indicating various instructions used when generating intermediate data to the general-purpose printing program 41 as necessary.
[0065] After generating the intermediate data, the general-purpose printing program 41 starts the auxiliary program 42 (C05). The auxiliary program 42 can obtain the intermediate data and print settings generated by the general-purpose printing program 41 by requesting them from the general-purpose printing program 41. Then, the auxiliary program 42 can edit the information on the intermediate data and print settings received from the general-purpose printing program 41 as necessary. The intermediate data is an example of image data.
[0066] The auxiliary program 42 stores the information on the print settings of the received print job in the memory 12 (C11). C11 is an example of a storage process. When the auxiliary program 42 receives a print job based on a print instruction output from the image processing application 43, for example, it overwrites the information on the latest print settings. When the auxiliary program 42 has stored the information on the print settings of the print job in the memory 12, it may use the stored print setting information instead of the print settings of the main body information acquired at A25 in FIG. 2. For example, when the printer 2 is offline at A23 in FIG. 2, the auxiliary program 42 may read and acquire the print settings stored in the memory 12. If the information on the print settings used for printing is acquired, it is less troublesome for users who print with the same settings.
[0067] Note that the auxiliary program 42 may store not only the information on the latest print settings but also the information on a plurality of print settings. When storing the information on a plurality of print settings, the auxiliary program 42 may, for example, acquire the parameter with the highest number of usage times among them as the information on the print settings. Also, when storing the information on a plurality of print settings, the auxiliary program 42 may limit the number of print settings to be stored. For example, the auxiliary program 42 may store only the print settings of the print jobs received within a predetermined period.
[0068] The auxiliary program 42 passes the intermediate data to the general-purpose printing program 41 and requests the general-purpose printing program 41 to perform rasterization and transmission to the printer 2 (C21). The general-purpose printing program 41 rasterizes the intermediate data to generate raster data which is bitmap data (C22), and transmits a print job including the generated raster data to the printer 2 (C23). C21 is an example of a process for transmitting a print job to the printer 2.
[0069] Note that instead of the general-purpose printing program 41, the auxiliary program 42 may perform rasterization. In this case, the auxiliary program 42 executes rasterization based on the intermediate data received in the print execution instruction and generates raster data. If rasterization is performed by the auxiliary program 42, the degree of freedom is greater compared to the case of performing rasterization by the general-purpose printing program 41, and there is a high possibility that raster data suitable for printing by the printer 2 is generated. On the other hand, if rasterization is performed by the general-purpose printing program 41, the processing of the auxiliary program 42 is less, and the program size of the auxiliary program 42 can be reduced.
[0070] Furthermore, the auxiliary program 42 may acquire the raster data generated by the general-purpose printing program 41 or the auxiliary program 42 and process it as necessary. For example, the auxiliary program 42 may encode the raster data into PDL data suitable for the printer 2 to generate print data. Note that the PDL data generated by the auxiliary program 42 may be data in a format that can also be used for printing by printers other than the model of the printer 2.
[0071] The printer 2 executes printing based on the received print data (C24). Thereby, a printed matter based on the print instruction output from the image processing application 43 is generated.
[0072] Note that although the general-purpose printing program 41 is assumed to send a print job to the printer 2, the auxiliary program 42 may send a print command instructing the execution of printing and print data to the printer 2. For example, when the settings regarding image processing executable by the printer 2 are included as print settings, the auxiliary program 42 may generate a print command including the information of the processing. In this case, after the transmission of the print data is completed, the auxiliary program 42 may notify the general-purpose printing program 41 of the end information.
[0073] As described in detail above, the OS 21 of the PC 1 can receive an instruction to start an auxiliary program corresponding to the selected printer. The auxiliary program 42 of the present embodiment corresponds to the printer 2. When the OS 21 receives an instruction to start in a state where the printer 2 is selected, the CPU 11 is caused to acquire printer information for identifying the printer 2. When the auxiliary program 42 further receives an instruction to start the image processing application 43, the CPU 11 is caused to start the image processing application 43, and the printer information of the printer 2 is passed to the started image processing application 43. Therefore, the image processing application 43 can select the printer 2 based on the printer information. As a result, an operation by the user for selecting the printer 2 after the image processing application 43 is started is unnecessary, saving the user's time and effort.
[0074] Next, the support program and program set of the second embodiment will be described in detail with reference to the accompanying drawings. The second embodiment is only different from the first embodiment in the application start procedure shown in FIG. 7, and the application management procedure shown in FIG. 2 and the print execution procedure shown in FIG. 10 are the same as those in the first embodiment. The same components and procedures as those in the first embodiment are denoted by the same reference numerals, and the description thereof will be omitted. The application start procedure of the second embodiment will be described with reference to the sequence diagram of FIG. 11.
[0075] The auxiliary program 42 of the present embodiment does not receive the selection of the application shown in B01 to B02 of FIG. 7. When the auxiliary program 42 of the present embodiment receives an operation on the button 552 in FIG. 6, when the image processing application 43 is selected and the main body information can be acquired from the printer 2 at A25 in FIG. 2, without asking the user, the information included in the main body information is associated as a parameter, and the image processing application 43 is started (B11).
[0076] When the image processing application 43 is launched (B15), it searches for the printer 2 using the printer information received from the auxiliary program 42 (B16). If it is determined that the printer 2 has been found (alt: [found]), the image processing application 43 selects the printer 2 as the printer to be used in the image processing application 43 (B21).
[0077] Furthermore, when the image processing application 43 is launched by a startup instruction associated with print setting parameters (opt: [with parameters]), it causes the user IF 13 to display a setting reflection selection screen for receiving a selection as to whether to set the parameters as the default values of the print settings of the image processing application 43 (D01), and receives the user's selection (D02). D01 to D02 are processes for receiving a selection as to whether to set the print setting parameters passed from the auxiliary program 42 as the default values of the print settings of the image processing application 43, and are an example of a setting selection process.
[0078] In D01, the image processing application 43 causes the user IF 13 to display a setting reflection selection screen 71 including, for example, as shown in FIG. 12, a message asking the user whether to reflect the print settings of the printer 2 as the default print settings of the image processing application 43, a button 711 for receiving an instruction to reflect, and a button 712 for receiving an instruction not to reflect.
[0079] When an instruction to reflect as the default print settings is received by an operation on the button 711 (opt: [reflect]), the image processing application 43 sets the print setting parameters passed in the startup instruction as the default values of the print settings in the image processing application 43 (D05). D05 is an example of a setting process. By setting the print settings set in the printer 2 as the default values of the print settings of the image processing application 43, the image processing application 43 can use the printer 2 with appropriate settings. Therefore, the user can save the trouble of operating to select parameters.
[0080] On the other hand, when the printer 2 cannot be searched for at B16 (alt: [Could not be searched for]), the image processing application 43 notifies that the printer 2 is offline (B28).
[0081] Then, the image processing application 43 causes the startup screen 61 as shown in FIG. 9 to be displayed on the user IF13 (B31). As a result, the user can use the image processing application 43 to execute printing and scanning on the printer 2.
[0082] As described in detail above, also with the auxiliary program 42 of the second form and the set of the auxiliary program 42 and the image processing application 43, similar to the first form, no user operation is required to select the printer 2 after the image processing application 43 is started, saving the user's effort.
[0083] Note that the embodiments disclosed in this specification are merely examples and do not limit the present invention in any way. Therefore, the technology disclosed in this specification can naturally be variously improved and modified without departing from the gist thereof. For example, the printer connected to the PC1 is not limited to a single-function printing device, and any device having a printing function such as a multifunction machine, a copying machine, a fax device, etc. may be used. Also, the number of printers connected to the PC1 may be two or more.
[0084] Also, for example, the examples of the screens displayed on the user IF13 are all examples and are not limited to the illustrated examples. Also, the words, the shapes of the objects, the backgrounds, etc. displayed in each of the illustrated screens may be any. Also, the process of notifying offline (A24 in FIG. 2, B28 in FIG. 7) may be omitted.
[0085] Also, in this specification, when the auxiliary program 42 is launched from the OS 21 (A12 in FIG. 2), it is assumed that the CPU 11 acquires the model name and the IP address as printer information. However, the information to be acquired is not limited to this. The printer information may be any information that can identify the printer 2, such as the printer name, serial number, or installation location of the printer 2, or a combination thereof. Also, the printer information may include a part of the main body information.
[0086] Also, in this specification, it is assumed that the activated image processing application 43 searches for the printer 2. However, when the IP address is received as printer information, communication with the printer 2 may be attempted using that IP address. The image processing application 43 may directly communicate if the printer information includes the IP address, and perform a device search if it does not.
[0087] Also, the information acquired by the auxiliary program 42 from the printer 2 and passed to the image processing application 43 may not include consumable information. Also, even if the image processing application 43 receives consumable information, it may not display the consumable information on the startup screen.
[0088] Also, in this specification, it is assumed that the auxiliary program 42 stores the information on the print settings of the print job in the memory 12, but it does not have to. That is, C11 in FIG. 10 may be omitted.
[0089] Also, in this specification, the image processing application 43 is exemplified as an application launched from the auxiliary program 42, but any application that can use the printer 2 may be used. Also, in this specification, an example of acquiring the parameters of the print settings as the main body information is shown. However, for a printer 2 having a scan function, the auxiliary program 42 may acquire the parameters of the scan settings. Also, the auxiliary program 42 may select the parameters to be passed according to the specified application to be launched.
[0090] Also, in the first form, before starting the image processing application 43, the auxiliary program 42 displays an application selection screen 56 (see FIG. 8) to receive the user's selection (B01 to B02 in FIG. 7). In the second form, the started image processing application 43 displays a setting reflection selection screen 71 (see FIG. 12) to receive the user's selection (D01 to D02 in FIG. 11). However, the present invention is not limited to these. For example, both procedures may be executed, or neither may be performed. However, if the selection is received by the auxiliary program 42 and then further received by the image processing application 43, the user's effort will increase. Also, since there may be users who do not wish to apply the parameters, it is preferable to receive the selection rather than applying it without receiving the selection.
[0091] Also, in the embodiment, only the printing operation is described in detail as the operation of the auxiliary program 42. However, the auxiliary program 42 may have other roles. Also, the program for executing the processing of the present form is not limited to the auxiliary program 42, and any program that receives an instruction from the OS 21 or the general-purpose printing program 41 when performing printing using the general-purpose printing program 41 may be used. For example, a print workflow application (Print workflow) whose specifications are disclosed by Microsoft may also be used.
[0092] Also, the execution timing of the auxiliary program 42 is not limited to the example of the embodiment. For example, it may be directly executed by an execution instruction from the OS 21, or may be an auxiliary program 42 that is resident. When it is resident, the auxiliary program 42 may perform the above-described operation upon receiving an execution instruction.
[0093] Also, in any flowchart disclosed in the embodiment, the plurality of processes in any plurality of steps can be arbitrarily changed in execution order or executed in parallel within a range where there is no contradiction in the processing content.
[0094] Moreover, the processes disclosed in the embodiments may be executed by a single CPU, multiple CPUs, hardware such as an ASIC, or a combination thereof. Also, the processes disclosed in the embodiments can be realized in various forms such as a recording medium storing a program for executing the processes, or a method and the like.
Explanation of Signs
[0095] 1 PC 2 Printer 11 CPU 12 Memory 13 User IF
Claims
1. A support program that can be executed by a computer of an information processing apparatus, supports a general-purpose printing program incorporated in advance in the operating system of the information processing apparatus, and corresponds to a specific printer. The operating system can receive a first activation instruction that is an activation instruction for a support program corresponding to the selected printer. On the computer, When there is a print instruction output from an application program incorporated in the information processing apparatus, and the print instruction causes the specific printer to perform image printing on the general-purpose printing program, Image data indicating the image is acquired from the general-purpose printing program, and a process for transmitting a print job based on the image data to the specific printer is executed. Furthermore, on the computer, When the operating system receives the first activation instruction in a state where the specific printer is selected, An acquisition process for acquiring printer identification information for identifying the specific printer, A reception process for receiving a second activation instruction that is an activation instruction for a specific application program via a user interface of the information processing apparatus, are executed. The specific application program can receive printer selection and receive a print instruction for the selected printer. Furthermore, on the computer, In response to receiving the second activation instruction in the reception process, an activation process for activating the specific application program is executed. In the activation process, the printer identification information acquired in the acquisition process is passed to the specific application program that is activated as information used for selecting a printer in the specific application program. A support program configured as described above.
2. In the support program according to Claim 1, In the acquisition process, as the printer identification information, the model name of the specific printer and the IP address set in the specific printer are acquired. A support program configured as described above.
3. In the support program according to Claim 1, On the computer, When the operating system receives the first activation instruction in a state where the specific printer is selected, Execute a print setting acquisition process for acquiring print setting information indicating parameters included in the print settings used for printing by the specific printer. In the startup process, pass the printer identification information acquired in the acquisition process to the specific application program to be started as information used for selecting a printer in the specific application program, and pass the print setting information acquired in the print setting acquisition process to the specific application program as information used for the default value of the print settings in the specific application program. A support program configured as described above.
4. In the support program according to claim 3, In the print setting acquisition process, at least acquire the paper size included in the print settings as the print setting information. A support program configured as described above.
5. In the support program according to claim 3, In the print setting acquisition process, acquire the print setting information stored in the specific printer from the specific printer. A support program configured as described above.
6. In the support program according to claim 3, Cause the computer to When there is the print instruction, Execute a storage process of storing the print settings of the print job in the memory of the information processing device, In the print setting acquisition process, acquire the print setting information based on the print settings stored in the memory. A support program configured as described above.
7. In the support program according to claim 3, Cause the computer to In response to receiving the second startup instruction in the reception process, before executing the startup process, execute a designation process of receiving a designation as to whether to pass the print setting information acquired in the print setting acquisition process to the specific application program via the user interface of the information processing device, In the startup process, when the designation to pass the print setting information to the specific application program is received, pass the print setting information acquired in the print setting acquisition process to the specific application program to be started, and when the designation not to pass the print setting information to the specific application program is received, do not pass the print setting information acquired in the print setting acquisition process to the specific application program to be started. A support program configured as described above.
8. In the support program according to claim 1, when the operating system of the computer receives the first start instruction in a state where the specific printer is selected, the computer is caused to execute a consumable acquisition process of acquiring consumable information regarding consumables that the specific printer has from the specific printer, in the start process, the printer identification information acquired in the acquisition process is passed to the specific application program to be started as information used for selecting a printer in the specific application program, and the consumable information acquired in the consumable acquisition process is passed as information used for notification regarding consumables in the specific application program. A support program configured as described above.
9. In the support program according to claim 1, in the start process, the printer identification information acquired in the acquisition process is passed to the specific application program to be started as information used for selecting a printer in the specific application program, and when the specific printer is offline, it is notified that the specific printer is offline. A support program configured as described above.
10. In the support program according to claim 1, in the reception process, a screen including an operator corresponding to the second start instruction and the printer identification information acquired in the acquisition process is displayed, and the second start instruction is received by operating on the operator. A support program configured as described above.
11. A program set including a first program and a second program executable by a computer of an information processing apparatus, wherein the first program is a support program corresponding to a specific printer and supporting a general-purpose printing program pre-installed in the operating system of the information processing apparatus, and the operating system can receive a first start instruction which is a start instruction of a support program corresponding to a selected printer, and the second program is an application program capable of receiving a selection of a printer and receiving a print instruction for the selected printer, wherein the first program causes the computer When there is a print instruction output from an application program incorporated in the information processing apparatus, and the print instruction causes the general-purpose print program to print an image on the specific printer, acquire image data indicating the image from the general-purpose print program, and execute a process for transmitting a print job based on the image data to the specific printer, The first program further causes the computer to when the operating system receives the first activation instruction while the specific printer is selected, execute an acquisition process for acquiring printer identification information for identifying the specific printer, receive, via the user interface of the information processing apparatus, a second activation instruction which is an activation instruction for the second program, and execute The first program further causes the computer to execute an activation process for activating the second program in response to receiving the second activation instruction in the reception process, In the activation process, pass the printer identification information acquired in the acquisition process to the second program to be activated, The second program causes the computer to when the second program is activated due to the second activation instruction being given to the first program and the printer identification information is passed from the first program, search for the specific printer using the printer identification information, and execute a selection process for selecting the specific printer in response to the specific printer being searched, A program set configured as described above.
12. In the program set according to claim 11, The first program causes the computer to when the operating system receives the first activation instruction while the specific printer is selected, execute a print setting acquisition process for acquiring print setting information indicating parameters included in a print setting used for printing on the specific printer, In the activation process of the first program, pass the printer identification information acquired in the acquisition process and the print setting information acquired in the print setting acquisition process to the second program to be activated, The second program causes the computer to when the second program is activated due to the second activation instruction being given to the first program and the print setting information is passed from the first program, A setting process for setting parameters of the print settings indicated in the print setting information to default values of the print settings is executed. A program set configured as described above.
13. In the program set according to claim 12, The second program causes the computer to When the second activation instruction is given to the first program and the print setting information is passed from the first program, Before executing the setting process, a setting selection process is executed to receive a selection of whether to set the print setting information passed from the first program to the default value of the print settings via the user interface of the information processing device. When the selection to set to the default value of the print settings is received in the setting selection process, the setting process is executed. When the selection not to set to the default value of the print settings is received in the setting selection process, the setting process is not executed. A program set configured as described above.
14. In the program set according to claim 11, In the selection process of the second program, the specific printer is searched using the printer identification information, and when the specific printer is searched, the specific printer is selected, and when the specific printer is not searched, it is notified that the specific printer is offline. A program set configured as described above.
Citation Information
Patent Citations
Information processing device and program
JP2018088109A