Information processing device, control method, and control program

The application program addresses device-specific processing challenges by generating print data with user input and ensuring compatibility in mobile environments, providing a device-independent print setting solution.

JP7819396B2Active Publication Date: 2026-02-24CANON KK
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2025114720
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2018-06-29
Filing Date
2025-07-07
Publication Date
2026-02-24
Estimated Expiration
2039-05-17

AI Technical Summary

Technical Problem

Existing operating systems and device drivers struggle to incorporate device-specific processes, such as printer driver settings, especially in mobile device environments, leading to difficulties in character restriction processing and compatibility issues.

Method used

An application program that cooperates with a generic printer driver to generate print data, allowing for user input of settings, performs processing to ensure compatibility, and outputs settings to the operating system while eliminating device-specific dependencies.

Benefits of technology

This mechanism enables a platform environment compatible with mobile devices by eliminating device-specific processing within the general-purpose OS or device driver, ensuring consistent and conflict-free print settings.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007819396000001
    Figure 0007819396000001
  • Figure 0007819396000002
    Figure 0007819396000002
  • Figure 0007819396000003
    Figure 0007819396000003
Patent Text Reader

Abstract

To provide an information processing device for enabling a print expansion application to perform prohibition determination by using prohibition information 340 at timing requiring prohibition.SOLUTION: An information processing device includes: prohibition information presence / absence determination means 301 for determining the presence / absence of prohibition information 340 in an application data area 307; prohibition information acquisition means 342 for acquiring the prohibition information 340 from a printer 102 through a device connection module 308; prohibition information storage means 341 for storing the acquired prohibition information 340 in an application data area 307; and prohibition determination means 343 for performing prohibition determination by using the prohibition information 340 stored in the application data area 307.SELECTED DRAWING: Figure 5
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing apparatus, a control method for the information processing apparatus, and a control program, and, for example, to a system capable of processing print settings. [Background technology]

[0002] In some configurations, a printer driver installed on a host computer is used as control software for an image forming device, and printing is performed on an image forming device connected to the host computer. An operating system (hereinafter referred to as OS), which is basic software, is installed on the host computer, and the printer driver is configured according to the specifications defined by the OS. By providing a printer driver that conforms to the OS specifications, a vendor that provides an image forming device can obtain a means of issuing print instructions to the image forming device.

[0003] However, in recent years, operating systems have begun to provide generic printer drivers and methods for issuing print instructions using industry-standard protocols such as IPP (Internet Printing Protocol).

[0004] Conventionally, if a printer driver is provided by a printer vendor, the prohibition information can be included within the printer driver. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] Patent Publication No. 2014-209316 Summary of the Invention [Problem to be solved by the invention]

[0006] To build a platform environment that is compatible with mobile devices, including smartphones and tablets, there is a need to reduce the parts of a general-purpose operating system or general-purpose device driver that are dependent on peripheral devices. In such a platform environment, it is difficult to incorporate processes that depend on the specifications of each peripheral device into the general-purpose operating system or general-purpose device driver. It is also difficult to incorporate the processes and data required for character restriction processing, such as in printer drivers, into the general-purpose operating system or general-purpose device driver.

[0007] The present invention has been made in consideration of at least one of the above problems. One objective of this embodiment is to provide a mechanism for eliminating processing that depends on the specifications of each peripheral device from a general-purpose OS or a general-purpose device driver.

[0008] Yet another object of this embodiment is to provide a mechanism for a platform environment that is also compatible with mobile devices including, for example, smartphones and tablets. [Means for solving the problem]

[0009] One aspect of the present invention is an application program that cooperates with a generic printer driver provided by a provider of an operating system of an information processing device to generate print data that can be transmitted to an image forming device; A first setting item is input to the information processing device from a user. Setting value in a first object for receiving a second setting item different from the first setting item; Setting value in a display step of displaying a first object and a second object for receiving the first object from the user; a processing step of performing processing so that a predetermined setting value in the first setting item and a predetermined setting value in the second setting item do not coexist and are not included; and an output step of outputting information about the print settings set by the user to the operating system after the processing; An application program characterized by executing the following: [Effects of the Invention]

[0010] According to one aspect of the present invention, it is possible to provide a mechanism for eliminating processes that depend on the specifications of each peripheral device from within a general-purpose OS or a general-purpose device driver.

[0011] According to another aspect of the present invention, it is possible to provide a mechanism for a platform environment that is also compatible with mobile devices. [Brief explanation of the drawings]

[0012] [Figure 1] FIG. 1 is a diagram illustrating a system configuration. [Figure 2] FIG. 2 illustrates an example of a hardware configuration of a client computer. [Figure 3] FIG. 2 illustrates an example of a software configuration of a client computer. [Figure 4] 6 is a flowchart showing an example of processing by a generic printer driver and the like according to the first embodiment. [Figure 5] 6 is a flowchart showing an example of print setting processing of a universal printer driver according to the first embodiment. [Figure 6] 10 is a flowchart illustrating an example of processing of an extended print application according to the first embodiment. [Figure 7] 10 is a flowchart illustrating an example of processing of an extended print application according to the first embodiment. [Figure 8] 10 is a flowchart illustrating an example of processing of an extended print application according to the second embodiment. [Figure 9] 10 is a flowchart illustrating an example of processing of an extended print application according to the second embodiment. [Figure 10] 10A and 10B are schematic diagrams illustrating an example of a UI of a touch application and a generic printer driver. [Figure 11] FIG. 10 is a schematic diagram illustrating an example of an extended print setting UI. [Figure 12] FIG. 10 is a diagram illustrating an example of prohibition information. DETAILED DESCRIPTION OF THE INVENTION

[0013] Hereinafter, the best mode for carrying out the present invention will be described with reference to the drawings and tables.

[0014] (First embodiment) First, the configuration of a system according to this embodiment will be described with reference to FIG. 1. FIG. 1 is a schematic diagram illustrating an overview of the system configuration according to this embodiment. The system according to this embodiment includes a client computer 101, a server 104, and a printer 102. The client computer 101 is an example of an information processing device. The server 104 distributes data to the client computer 101. The printer 102 receives print data in a page description language (hereinafter referred to as PDL) format and performs printing. Each device can communicate with each other via a network 103, including a wide area network (WAN). The printer 102 may be a single-function printer equipped with only a printing function, or a multi-function printer equipped with printing, scanning, and copying functions. Furthermore, the number of client computers 101 connected to the network 103 is not limited to one. Multiple client computers 101 may be connected.

[0015] FIG. 2 is a block diagram showing the hardware configuration of the client computer 101 shown in FIG. 1. In the client computer 101, a central processing unit (CPU 201) controls each device connected to a system bus in accordance with a program stored in a random access memory (RAM 202). The client computer 101 is assumed to include at least one CPU 201. Additionally, the CPU 201 executes processing based on a program stored in an external memory 209, thereby realizing the software configuration of the client computer 101 and the processing of each step in the flowcharts described below. The RAM 202 functions as the CPU 201's main memory, work area, etc. The read-only memory (ROM) 203 stores various programs, such as a boot program and a basic input / output system (BIOS). The operation input device interface (I / F) 204 controls the operation input device 205, which may be a keyboard, a pointing device (mouse), or a touch UI (User Interface). The operation input device 205 functions as a reception unit that receives operations from a user. The display I / F 206 controls the screen display on the display 207. The display 207 functions as a display unit that displays information to the user. The external memory I / F 208 controls access to an external memory 209, such as a hard disk (HD) or solid-state disk (SSD). The external memory 209 stores an operating system program (OS) 210, an application execution environment 213, multiple applications 212 corresponding to the touch panel and desktop, and various files. The external memory 209 functions as a storage medium readable by the client computer 101. The network I / F 215 is connected to the printer 102 via the network 103 and performs communication control processing. The server 104 also includes the same hardware configuration as the client computer 101 and operates in the same manner. The multiple applications 212 in FIG. 2 include at least the extended print application 300, desktop application 302, and touch application 301 in FIG. 3. The printer driver 211 includes a generic printer driver 320.The instruction sequences of these programs are read into the RAM 202 and executed under the control of the CPU 201, and cause the processing of the flowcharts described later.

[0016] Next, Figure 3 shows a block diagram of the printing system of this embodiment. The user executes printing from a desktop application or a touch application. The printing process is performed by sequentially performing three processes: printer selection, print setting creation, and drawing data conversion.

[0017] In this embodiment, the software in the client computer 101 is composed of various application programs such as a desktop application 302, a touch application 301, and a print extension application 300. These programs run on the OS 210. The various components are described below. The OS 210 can include a print manager 331, an I / O monitor 332, an XMS spool file 330, and a registry 333. The generic print manager 321 controls various modules in the generic print driver (described later) and manages data transfer. It also generates and changes print setting information. The registry 323 is an area where settings for the OS 210 are written. The print manager 331 manages the schedule for print processing. The I / O monitor 332 communicates with the printer 102. The generic print setting UI 322 is a UI for configuring and changing print settings associated with the generic printer driver. The GDI to XPS conversion processor 328 converts drawing data, which is used for printing from the desktop application 302, into XPS, generates an XPS spool file 330, and passes it to the spooler in the OS 3210. The rendering processor 329 renders the XPS spool file 330 and converts it into PDL. The touch application 301 is selected by the user through an application distribution system published on the Internet and installed on the client computer 101. The print extension application 300 is a type of touch application 301, and is obtained by the OS 210 from the application distribution system via the Internet and installed on the client computer 101. The application data area 307 is an area for storing unique data used by each application. However, it can be configured to be inaccessible from other applications. The prohibition information presence / absence determination module 301 determines whether prohibition information 340 for the printer 102 associated with the print extension application is stored in the application data area 307. The prohibition information saving module 342 saves prohibition information 340 of the printer 102 associated with the print extension application in the application data area 307 .As shown in FIG. 3, multiple different printer models can be connected to the printer 102. In this case, prohibition information 340 is stored in the application data area 307 for each printer. The tile application unit 303 displays a tiled UI in response to a user operation to launch the print extension application 300. The extended print setting UI unit 306 displays a UI for extended print settings in response to receiving an extended print setting event issued by the OS 210. The extended print setting UI unit 306 generates a UI for extended print settings based on print setting information passed from the OS 210 and printing capability information obtained by communicating independently with the printer 102. The extended print setting UI unit 306 changes the values ​​of the print setting information in response to user input and then returns the print setting information to the OS 210. The print-time startup application 305 provides a function called Workflow (WF) that executes print-related processing in response to a specific user operation or the like. The print-time startup application 305 is a background task that starts the edit & preview function unit 306, which is a foreground task, when a print event is issued from the OS 210. The print-time startup application 305 requests the OS 210 to start the edit & preview function unit 306. The print-time startup application 305 also exchanges print setting information with the edit & preview function unit 306 via an application data area 307. The edit & preview function unit 306 acquires print setting information and changes the settings. In this embodiment, the edit & preview function unit 306 also acquires and saves prohibition information 340 and executes prohibition determination processing. FIG. 12 shows an example of the prohibition information 340, which is a text file that contains definitions of print functions and invalid combinations of functions.

[0018] The prohibition information acquisition module 342 acquires information such as printing capability information and prohibition information 340 from the target printer or cloud server via the device connection module 308 or cloud connection module 309. The device connection module is a module that communicates with the printer 102. The cloud connection module is a module that communicates with a predetermined cloud server 105. The prohibition determination module 343 uses the prohibition information 340 in response to input print settings to determine whether a conflict has occurred in the print settings.

[0019] Next, a mechanism for performing prohibition character determination processing for print settings, which cannot be performed by a generic printer driver, using a print extension application will be described with reference to Figures 4, 5, 6 and 7. The CPU 201 is an example of a storage control unit.

[0020] Each application and module is stored in external memory 209, loaded into RAM 202 as needed, and executed by CPU 201 on client computer 101. The flow shown in FIG. 4 begins when a print setting request event occurs from a predetermined application. The predetermined application may include, but is not limited to, a spreadsheet, document editing application, paint application, etc., and may be included in application 212 in FIG. 2. The application that triggers the print setting request event may be touch application 301 or desktop application 302.

[0021] In this embodiment, the description will be given using the touch application 301 (FIG. 10). FIG. 10A is a schematic diagram of the touch application 321 being launched. When the menu icon button 1000 is tapped, the touch application 301 lists a list of menu options. Next, when a print item 1001, which is a menu option, is selected by a user operation, the touch application 301 requests the OS 210 to display a UI for a generic printer driver, and displays a generic print setting UI 327. FIG. 10B shows a generic print setting UI 322 for the generic printer driver generated by the OS 210. The generic print setting UI 322 is composed of a print setting section 1020 and an event generation section 1030. The print setting section 1020 displays a list of simple print settings. 1021 is the name of the selected print queue, and 1022 is an example of the set print settings. The generic print setting UI 322 accepts user operations after being displayed. This process corresponds to step S403. The print button 1032 of the print event generating unit 1030 is pressed (S406). This causes a print event to occur. The print event triggers the processing of S407. A detailed explanation will be given below according to the flow.

[0022] The flow in Fig. 4 starts in response to the generic printer driver 322 receiving a user instruction, for example, via an application. Specifically, step S401 starts in response to the selection of print item 1001, which is a menu option. The flow in Fig. 4 may be controlled by the generic printer driver 322. The user instruction may also be input to the generic printer driver from the OS 201.

[0023] First, in step S401, the generic print setting UI 327 is launched. Next, in step S402, the generic print setting management unit 321 of the generic printer driver 322 initializes the print setting information. Next, in step S403, the generic printer driver 322 accepts print setting input from the user via the generic print setting UI 322 of the generic printer driver. Next, in step S404, if the generic printer driver 322 detects pressing of the "Other Settings" button 1031, then in step S405, the print extension application 300 executes extended print setting processing. This processing plays an important role and will be described later with reference to FIG. 5. Next, after returning from the extended print setting UI 306 of the print extension application 300 to the generic print setting UI 322 of the generic printer driver 322, the process proceeds to step S406. If the generic printer driver detects pressing of the "Print" button in step S406, then in step S407, the print setting information is passed to the OS 210, and processing of the print setting request is terminated.

[0024] Next, the operation of the extended print setting process by the print extension application 300 will be described with reference to FIG.

[0025] 5 begins in step S501 when the user presses the "Other Settings" button 1031, causing the generic printer driver 322 to request the OS 210 to launch the extended print setting UI 306 of the print extension application 300. The flow in FIG. 5 may be triggered under the control of the print extension application 300. The print extension application is an example of a control program.

[0026] First, in step S501, the extended print setting UI 306 of the print extension application 300 is launched by the OS 210. An example of the extended print setting UI 306 is shown in the schematic diagram of FIG. 11. Reference numeral 1101 denotes an example of the extended print setting UI 306, and reference numerals 1102 and 1103 display various print functions, with options and on / off switches 1104 and 1105 used to toggle between them. Reference numeral 1106 denotes an "OK" button for returning from the extended print setting UI 306 to the general-purpose print setting UI 322. Next, in step S502, the print extension application 300 receives print setting information set by the general-purpose printer driver from the OS 210. Next, in step S503, the extended print setting UI 306 of the print extension application 300 uses the prohibition information presence / absence determination module 301 to determine whether prohibition information 340 is present in the application data area 307. If the prohibition information 340 is not present in the application data area 307, then in step S504, the device connection module 308 of the print extension application 300 acquires the prohibition information 340 from the printer 102. Then, in step S505, the prohibition information storage module 341 of the print extension application 300 stores the acquired prohibition information 340 in the application data area 307 via the prohibition information acquisition module 342. Next, in step S506, the extended print setting UI 306 of the print extension application 300 acquires the prohibition information 340 stored in the application data area 307. Next, in step S507, print setting input from the user is accepted via the extended print setting UI 306. Next, in step S508, the extended print setting UI 306 performs prohibition determination processing on the input print settings using the prohibition information 340 via the prohibition determination module 343. Next, in step S509, the extended print setting UI 306 branches the processing depending on the result of the prohibition determination processing. If a conflict occurs in the print settings, the extended print setting UI 306 returns the print settings to their pre-change state in step S510. Then, in step S507, the print extension application 300 receives input of print settings from the user via the extended print setting UI 306.For example, in the schematic diagram of FIG. 11 , if the user selects “Postcard” 1104 for the output paper size 1102 and then attempts to set the double-sided printing setting 1103 to ON 1105, the extended print setting UI 306 performs a character line prohibition determination process using the character line prohibition determination module 343. In this example, because a conflict has occurred in the print settings, the extended print setting UI 306 changes the double-sided printing setting back to its previous setting of OFF, displays a warning screen 1110, and, after accepting the user's input of the OK button 1111, returns to the UI for accepting input of print settings. If no conflict has occurred in the print settings, the process proceeds to step S511. In step S511, the extended print setting UI 306 determines whether the “OK” button 1106 has been pressed. If the print extension application 300 detects that the “OK” button 1106 has been pressed in step S511, the print setting information is updated in step S512. Next, in step S513, the print extension application 300 passes the print setting information to the OS 210, ends the extended print setting process, and returns to the general-purpose print setting UI 322.

[0027] Once the print settings in the generic printer driver have been finalized, the user executes printing from an application. When printing from the desktop application 302, drawing data is sent to the GDI to XPS conversion processor 328, which creates an XPS spool file 330. At this time, the GDI to XPS conversion processor 206 calls the generic print manager 321, which converts the print setting information from an OS-specific format to a generic printing format (for example, converting from a DEVMODE structure to a PrintTicket). When printing from the touch application 301, there are two ways to do this: the touch application itself generates the XPS file, or the OS generates the XPS file in response to a command from the touch application. In either case, the XPS spool file 330 is generated.

[0028] The operation when a print request is received from the touch application 301 will be described below with reference to FIG.

[0029] In the flow of FIG. 6, a print event is started by pressing the print button 1032 as an instruction from the user, and in response to the generation of the XPS spool file 330, step S601 is started.

[0030] In step S601, since the XPS spool file 330 has been generated, the process is temporarily handed over to the OS 210, which reads the settings of the registry 330. Next, in step S602, the OS 210 checks whether the registry 330 is set to launch the print-time launch application 305. If the registry 330 is not set to launch the print-time launch application 304, the OS 210 hands over the process to the generic printer driver 320. Then, the process proceeds to step S604, which is the next rendering process. If the registry 330 is set to launch the print-time launch application 304, the process proceeds to the edit and preview process of the print extension application 300 in step S603. The details of the process of step S603 will be described later with reference to FIG. 7. S603 is a process performed by the print extension application 300. Next, in step S604, the OS 210 hands over the process to the generic printer driver 320. As a result, the process proceeds to the rendering processing unit 329. In S604, the rendering processing unit 329 renders the XPS spool file 330 and converts it into PDL. At this time, the print setting data is also converted from print setting information in an OS-specific format to industry-standard print setting information. Next, in step S605, the process is passed back to the OS 210. The OS 210 reads the settings in the registry 330. In step S606, the OS 210 checks whether the registry 330 is set to launch the print-time launch application 304. If the registry 330 is not set to launch the print-time launch application 304, the process proceeds to the next PDL transmission process S609. If the registry 330 is set to launch the print-time launch application 304, the process proceeds to the edit and preview process of the print extension application in step S608. The process of step S603 will be described in detail later with reference to FIG. 7. In step S609, the general-purpose print management unit passes the PDL data to the print manager 331, which manages the schedule of print processing, and print jobs are registered one after another in a queue. When the printer 102 is ready to print, it transmits the PDL data through the I / O monitor 332 in the order in which it was registered in the queue.

[0031] Next, the details of the edit and preview process of the print extension application will be described with reference to FIG.

[0032] 7 starts in step S701 in response to the OS 210 issuing an instruction to start the print extension application 300. Here, the OS 210 determines whether or not the application needs to be started based on information in the registry 330, and if it determines that the print startup application 304 should be started, issues an instruction to start the application.

[0033] In step S701, the print-time launch application 304 of the print extension application 300 is launched by the OS 210. Next, in step S702, the print-time launch application receives print setting information from the OS 210. Next, in step S703, the print-time launch application 304 launches the edit & preview function 305 and passes the print setting information to the edit & preview function 305. Next, in step S704, the edit & preview function 305 determines whether or not prohibition information 340 is present in the application data area 307 via the prohibition information presence / absence determination module 301. If prohibition information 340 is not present in the application data area 307, in step S705, the prohibition information acquisition module 342 of the print extension application 300 acquires the prohibition information 340 from the printer 102. Then, in step S706, the prohibition information storage module 341 saves the acquired prohibition information 340 in the application data area 307. Next, in step S707, the print extension application 300 acquires the prohibition information 340 stored in the application data area 307. Next, in step S708, the print extension application 300 accepts input of print settings from the user via the UI of the edit & preview function 305. Next, in step S709, the print extension application 300 performs prohibition determination processing on the input of print settings using the prohibition information 340 via the prohibition information determination module 343. Next, in step S710, the print extension application 300 branches the processing depending on the result of the prohibition determination processing. If a conflict has occurred in the print settings, in step S711, the edit & preview function 305 of the print extension application 300 restores the print settings to their previous state. Then, in step S708, the print extension application 300 accepts input of print settings from the user again via the UI of the edit & preview function 305. If no conflict has occurred in the print settings, the processing proceeds to step S712. In step S712, the print extension application 300 determines whether the "OK" button 1106 has been pressed. If the edit and preview function 305 of the print extension application 300 detects that the "OK" button 1106 has been pressed in step S712, the print setting information is updated in step S713.Next, in step S713, the print extension application 300 passes the print setting information to the OS 210, ends the edit and preview function, and returns to the processing flow shown in FIG.

[0034] As described above, according to this embodiment, the print extension application 300 determines whether or not prohibition information is present at the following times: For example, when the extended print setting UI 306 is launched during print setting request processing; or when the edit & preview function 305 is launched during print request processing. At this time, the presence or absence of prohibition information 340 in the application data area 307 is determined. If prohibition information 340 is not present, prohibition information 340 is acquired from the printer 102 and saved in the application data area 307. This information is then used to perform prohibition determination processing. Therefore, even when printing from a generic printer driver, prohibition processing specific to the printer vendor or printer is possible.

[0035] (Second embodiment) In the first embodiment, we have described the mechanism for determining whether or not prohibition information 340 is present and for acquiring prohibition information 340 when the extended print setting UI 306 of the print extension application 300 is launched or when the edit & preview function 305 is launched during print setting processing and print processing.

[0036] In this embodiment, a mechanism for determining whether or not prohibition information 340 exists in the application data area 307 and acquiring the prohibition information 340 from the printer 102 using the tile application 303, which is another function of the print extension application 300, will be described.

[0037] Specific processing according to this embodiment will be described with reference to Fig. 8. Note that each application and module is stored in the external memory 209, loaded into the RAM 202 as needed, and executed by the CPU 201 on the client computer 101. Also, detailed description of numbers that have already been described will be omitted.

[0038] The flow in FIG. 8 starts in step S901 in response to the user directly starting up the print extension application 300.

[0039] First, in step S801, the tile application function 303 of the print extension application 300 is activated. Next, in step S802, the tile application function 303 of the print extension application 300 determines whether or not the prohibition information 340 is present in the application data area 307 of the print extension application 300 via the prohibition information presence / absence determination module 301. If the prohibition information 340 is not present in the application data area 307, in step S803, the prohibition information acquisition module 342 of the print extension application 300 acquires the prohibition information 340 from the printer 102. Then, in step S804, the prohibition information storage module 341 of the print extension application 300 saves the acquired prohibition information 340 in the application data area 307.

[0040] As described above, according to this embodiment, the print extension application 300 can determine whether the prohibition information 340 exists in the application data area 307 and acquire the prohibition information 340 from the printer 102, even when using the tile application 303. Therefore, when the tile application 303 is used, it is possible to eliminate the need to separately acquire the prohibition information 340 from the printer 102 during print setting processing or print processing. The processing in FIG. 8 can update or add the prohibition information 340 in response to starting the print extension application 300, asynchronously or independently from processing other than that in FIG. 8 described in this embodiment.

[0041] (Third embodiment) In the first embodiment, the mechanism by which the print extension application 300 acquires the prohibition information 340 from the printer 102 has been described.

[0042] In this embodiment, a mechanism for acquiring prohibition information 340 from a location other than the printer itself will be described. The following mainly describes the differences from the previous embodiment.

[0043] Specific processing according to this embodiment will be described with reference to FIG. 9. Each application and module is stored in the external memory 209, loaded into the RAM 202 as needed, and executed by the CPU 201 on the client computer 101. Detailed descriptions of previously described numbers will be omitted. While the present embodiment illustrates an example of the extended print setting UI 306 and the edit & preview function 305, a similar mechanism is possible with the tile application 303, as described in the second embodiment. The processing in the generic printer driver 322 before and after the extended print setting is performed by the print extension application 300 is similar to steps S401 to S407 shown in FIG. 4, and therefore detailed descriptions thereof will be omitted. The flow in FIG. 9 begins with step S901, in response to the user pressing the “Other Settings” button 1031, which causes the generic printer driver 322 to request the OS 210 to launch the extended print setting UI 306 of the print extension application 300.

[0044] First, in step S901, the extended print setting UI 306 of the print extension application is launched by the OS 210. Next, in step S902, the application launched during print setting UI function receives print setting information from the OS 210. Next, in step S903, the extended print setting UI 306 of the print extension application 300 determines whether or not prohibition information 340 is present in the application data area 307 of the print extension application 300 via the prohibition information presence / absence determination module 301. If prohibition information 340 is not present in the application data area 307, then in step S904, the prohibition information acquisition module 342 of the print extension application 300 acquires the prohibition information 340 from the printer 102. Next, in step S905, the prohibition information storage module 341 of the print extension application 300 determines whether or not acquisition of the prohibition information 340 from the printer 102 was successful. If acquisition of the prohibition information 340 fails, in step S906, the prohibition information acquisition module 342 of the print extension application 300 acquires the prohibition information 340 corresponding to the printer 102 from a predetermined cloud server. Then, in step S907, the prohibition information storage module 341 of the print extension application 300 stores the acquired prohibition information 340 in the application data area 307. Next, in step S908, the print extension application 300 acquires the prohibition information 340 stored in the application data area 307. Note that the processing of steps S909 to S915 is the same as the processing of steps S507 to S513 shown in FIG. 5, and therefore detailed description thereof will be omitted.

[0045] As described above, according to this embodiment, the print extension application 300 can obtain the prohibition information 340 from a location other than the printer itself. Therefore, even if the printer itself does not have the prohibition information 340, such as when the printer is an old model or a low-cost model, the prohibition information 340 can be obtained and prohibition processing can be performed.

[0046] In this embodiment, the following has been described: An information processing apparatus that executes a printer driver based on instructions from an application running on an operating system to generate print data has been described. An example of the information processing apparatus is a client computer 101.

[0047] An example of an application that processes print settings is the extended print application 300. For example, under the control of 301, conflicts or inconsistencies in print settings are resolved based on prohibition information 340 for resolving conflicts in settings to be input to the printer driver. An example of conflict resolution information is prohibition information 340. It has also been described that the resolved print settings are input to the printer driver from 310. An example of a printer driver is the generic printer driver 320.

[0048] It has also been described that the presence or absence of conflict resolution information is determined in the application data area 307. An example of an image forming apparatus is the printer 102. 308 acquires conflict resolution information from the printer. Furthermore, the CPU 201 stores the conflict resolution information acquired by 308 in the application data area.

[0049] For example, the printer 300 resolves print setting conflicts using the prohibition information 340 stored in the application data area.

[0050] The timing at which 300 is executed is, for example, when a tile application is started, when a user interface program for advanced print settings is started, or when a preview or editing function is started.

[0051] If the prohibition information cannot be obtained from the printer 102, the conflict resolution information may be obtained from a predetermined external information processing device. An example of the external information processing device is the cloud server 105.

[0052] An example of an operating system is OS201. Alternatively, a generic printer driver may be executed based on instructions from a document editing application running on OS201 to generate print data. 300 then accepts a predetermined event triggered by the generic printer driver. After the accepting means accepts the predetermined event triggered by the generic printer driver, 300 performs the following process. In other words, 300 is executed by CPU201. Then, under the control of 300, conflicts or inconsistencies in print settings are resolved based on conflict resolution information for resolving conflicts in settings to be input to the generic printer driver. 300 is an example of an application that processes predetermined extended print settings. The resolved print settings can then be input from 300 to the printer driver.

Claims

1. An application program, a generic printer driver provided by a provider of an operating system of the information processing device, which cooperates with the generic printer driver to generate print data that can be transmitted to an image forming device; The information processing device includes: a display step of displaying a first object for receiving a setting value for a first setting item from a user and a second object for receiving a setting value for a second setting item different from the first setting item from the user; a processing step of performing processing so that a predetermined setting value in the first setting item and a predetermined setting value in the second setting item do not coexist and are not included; an output step of outputting information about the print settings set by the user to the operating system after the processing; An application program characterized by executing the following:

2. An application program as described in Claim 1, characterized in that the combination of a predetermined setting value in the first setting item and a predetermined setting value in the second setting item is an invalid combination of setting values.

3. 2. The application program according to claim 1, wherein the predetermined setting value in the second setting item is a setting value that conflicts with the predetermined setting value in the first setting item.

4. In the display step, a print setting screen including at least the first object and the second object is displayed; The processing is processing for preventing a predetermined setting value in the first setting item and a predetermined setting value in the second setting item from both being selected on the print setting screen.

4. The application program according to claim 1, wherein the application program is a program for executing a program.

5. An application program described in any one of claims 1 to 4, characterized in that the processing step is executed before the generic printer driver generates the print data.

6. An application program described in any one of claims 1 to 5, characterized in that in the processing step, when the user selects a predetermined setting value in the first setting item and a predetermined setting value in the second setting item, processing is performed to display predetermined information.

7. 7. The application program according to claim 6, wherein the predetermined information is information indicating that a predetermined setting value in the first setting item and a predetermined setting value in the second setting item are in conflict.

8. The application program according to claim 6, characterized in that the specified information is information indicating that a specified setting value in the second setting item cannot be selected because a specified setting value in the first setting item has been selected.

9. An application program described in any one of claims 1 to 5, characterized in that in the processing step, when a predetermined setting value in the second setting item is selected while a predetermined setting value in the first setting item is selected, the setting value in the second setting item is returned to the state before the predetermined setting value in the second setting item was selected.

10. In the processing step, in response to a predetermined setting value in the first setting item being selected by the user on the print setting screen, processing is performed so that a predetermined setting value in the second setting item is not set.

5. The application program according to claim 4.

11. The display step further includes displaying a third object for receiving an operation from the user to terminate reception of the print settings; 11. The application program according to claim 1, further comprising causing the information processing device to execute the output step in response to the user selecting the third object.

12. 12. The application program according to claim 1, wherein the settings output in the output step are reflected in a PrintTicket.

13. 13. An application program according to claim 1, wherein the predetermined setting value in the first setting item is a setting value related to output paper size, and the predetermined setting value in the second setting item is a setting value related to double-sided printing.

14. An application program described in any one of claims 1 to 13, characterized in that in the processing step, the processing is performed based on information indicating a combination of setting values.

15. The application program according to claim 14, further comprising causing the information processing device to execute an acquisition step of acquiring information indicating the combination of setting values ​​from the image forming device.

16. 16. The application program according to claim 1, wherein the generic printer driver issues a print instruction to the image forming apparatus in accordance with the Internet Printing Protocol.

17. A method for controlling an information processing device having an application program, comprising: the application program cooperates with a generic printer driver provided by a provider of an operating system of the information processing apparatus, the generic printer driver generating print data that can be transmitted to an image forming apparatus; By executing the application program, displaying a first object for receiving a setting value for a first setting item from a user, and a second object for receiving a setting value for a second setting item different from the first setting item from the user; performing processing so that the predetermined setting value in the first setting item and the predetermined setting value in the second setting item do not coexist and are not included; outputting information about the print settings set by the user to the operating system after the processing; A control method comprising:

18. An information processing device having an application program, the application program cooperates with a generic printer driver provided by a provider of an operating system of the information processing apparatus, the generic printer driver generating print data that can be transmitted to an image forming apparatus; By executing the application program, displaying a first object for receiving a setting value for a first setting item from a user, and a second object for receiving a setting value for a second setting item different from the first setting item from the user; performing processing so that the predetermined setting value in the first setting item and the predetermined setting value in the second setting item do not coexist and are not included; outputting information about the print settings set by the user to the operating system after the processing; 1. An information processing device comprising:

Citation Information

Patent Citations

  • Print control program, information processor and printing system

    JP2014209316A

  • Information processor, control method, and control program

    JP2016164767A

  • Information processing apparatus, control method for information processing apparatus, and program

    JP2017194766A