Application program, control method, and information processing device.

The application program enhances standard drivers by allowing trapping processing settings and execution, addressing the inability of standard drivers to perform trapping, thereby ensuring high-quality prints.

JP2026057899APending Publication Date: 2026-04-03CANON KK
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-09-24
Publication Date
2026-04-03

AI Technical Summary

Technical Problem

Standard drivers in printing systems are unable to perform trapping processing during the printing process, which is essential for preventing white gaps due to color plate misalignment.

Method used

An application program that supports standard drivers, enabling a display control step for trapping processing settings and an instruction step to execute trapping processing based on user inputs.

Benefits of technology

Enables image forming apparatuses to perform trapping processing, ensuring high-quality prints by preventing white gaps due to color plate misalignment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026057899000001_ABST
    Figure 2026057899000001_ABST
Patent Text Reader

Abstract

The objective is to provide a mechanism that allows an image forming apparatus to perform trapping processing. [Solution] The extended application 204 is general-purpose printing software 202 provided by the operating system provider, and supports the general-purpose printing software 202 that is pre-installed in the operating system. The extended application 204 causes the CPU 111 to perform a display control step that displays a detailed setting screen 500C that accepts settings for trapping processing of image data, and an instruction step that instructs the image forming apparatus to execute trapping processing based on the settings accepted on the detailed setting screen 500C.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an application program, a control method, and an information processing apparatus.

Background Art

[0002] A host computer (information processing apparatus) capable of processing information with the printing apparatus is communicably connected to the printing apparatus that performs printing. As control software for controlling the printing apparatus, for example, a printer driver installed from the printing apparatus to the host computer is used. With this printer driver, a print instruction can be given from the host computer to the printing apparatus. An operating system (hereinafter referred to as "OS"), which is basic software, is pre-installed in the host computer. The printer driver has a configuration conforming to the specifications defined by the OS and can be called by the OS to operate. Also, such a printer driver is different for each vendor that supplies the printing apparatus, that is, a printer driver specific to a model suitable for each printing apparatus.

[0003] In recent years, Windows® has provided a standard class driver (hereinafter sometimes referred to as "standard driver") that can be used in common even for printing devices supplied by multiple different vendors. Such standard drivers are pre-installed in the OS. By connecting any printing device to a host computer with an OS that has the standard driver installed, the standard driver can be used. This eliminates the need to install the model-specific printer driver. Furthermore, the standard driver can be used by specifying the printing functions of the printing device according to the Print Device Capabilities (hereinafter referred to as "PDC") generated based on information obtained from the printing device. This allows printing functions to be specified for each printing device with a single standard driver. Functionality extension applications (hereinafter sometimes referred to as "extension applications") that extend the functionality can be associated with the standard driver. Extension applications are provided by each vendor. Therefore, it is difficult to execute the functions of extension applications with the standard driver alone.

[0004] Patent Document 1 discloses an apparatus having a first application for generating image data and a second application for allowing the user to configure print settings used for printing the image data. The second application can configure items that cannot be configured in the first application. These items include color printing, poster printing, bookbinding, etc. [Prior art documents] [Patent Documents]

[0005] [Patent Document 1] Japanese Patent Publication No. 2021-33526 [Overview of the Initiative] [Problems that the invention aims to solve]

[0006] As mentioned earlier, printer drivers differ depending on the vendor supplying the printing device; in other words, they are model-specific printer drivers suited to each printing device. When a print command is issued to the printing device, this printer driver has a function to perform trapping processing during the printing process. "Trapping processing" is a process that, for example, if there is black text on a cyan background, extends a portion of the cyan background so that it overlaps with the black text, thereby preventing white gaps even if one of the color plates is misaligned. However, standard drivers had a problem in that they could not perform trapping processing during the printing process when a print command was issued to the printing device.

[0007] This invention has been made in view of the above-mentioned problems. The object of this invention is to provide a mechanism that enables an image forming apparatus to perform trapping processing. [Means for solving the problem]

[0008] To achieve the above objective, the application program of the present invention is a standard driver provided by an operating system provider, an application program that supports a standard driver pre-installed in the operating system, and is characterized by causing a computer to perform a display control step of displaying a setting acceptance screen for accepting settings for trapping processing of image data, and an instruction step of instructing an image forming apparatus to execute the trapping processing based on the settings accepted on the setting acceptance screen. [Effects of the Invention]

[0009] According to the present invention, an image forming apparatus can be made to perform a trapping process. [Brief explanation of the drawing]

[0010] [Figure 1] This is a block diagram showing the hardware configuration of the printing system according to the first embodiment. [Figure 2A]This is a block diagram showing the software configuration of a printing system. [Figure 2B] This is a flowchart showing the image processing performed by a printing device. [Figure 3] Figure 2B is a flowchart showing the detailed processing of step S2103 (subroutine) in the flowchart. [Figure 4] This diagram illustrates the effects of the trapping process. [Figure 5A] This figure shows an example of a screen displayed on the display unit of a printing system. [Figure 5B] This diagram shows a modified version of the screen displayed on the display unit of a printing system. [Figure 6] This flowchart shows the process by which the print function extension unit edits print function information. [Figure 7] This figure shows an example of a list of printing device capability information. [Figure 8] This figure shows an example of a list of printing functions supported by the extended application. [Figure 9] This figure shows an example of a list of capability information for general-purpose printing software. [Figure 10] This is a sequence diagram showing the processes that occur between the drawing application, general-purpose printing software, extension applications, and printing device after the drawing application accepts the print settings. [Figure 11] This is a block diagram showing the software configuration of the printing system according to the second embodiment. [Figure 12] This flowchart shows the process by which the print function extension unit edits print function information. [Figure 13] This figure shows an example of a list of printing device capability information. [Figure 14] This is a sequence diagram showing the processes that occur between the drawing application, general-purpose printing software, extension applications, and printing device after the drawing application accepts the print settings. [Figure 15A]It is a block diagram showing the software configuration of the printing system according to the third embodiment. [Figure 15B] It is a flowchart showing image processing executed by a printing apparatus. [Figure 16] It is a diagram showing an example of a list of trapping exclusion setting information. [Figure 17] It is a sequence diagram showing processing executed among a drawing application, general-purpose printing software, an extended application, and a printing apparatus after the drawing application receives a print setting. [Figure 18] It is a diagram showing an example of a screen displayed on a display unit of the printing system. [[ID=?]] [Figure 19] It is a sequence diagram showing processing executed among a drawing application, general-purpose printing software, an extended application, and a printing apparatus after the drawing application according to the fourth embodiment receives a print setting. [Figure 20] It is a diagram showing an example of a screen displayed on a display unit of the printing system.

Embodiments for Carrying Out the Invention

[0011] Hereinafter, each embodiment of the present invention will be described in detail with reference to the drawings. However, the configurations described in the following embodiments are merely examples, and the scope of the present invention is not limited by the configurations described in each embodiment. For example, each part constituting the present invention can be replaced with any configuration that can exhibit the same function. Also, any component may be added. Further, any two or more configurations (features) among the embodiments can be combined.

[0012] <<First Embodiment>> Hereinafter, the first embodiment will be described with reference to FIGS. 1 to 10. [[ID=?]]

[0013] <Hardware Configuration of Printing System> It seems there is a small error in the provided text where the "ID=13" tag is not used in the English translation as it doesn't have a corresponding content in the original text. I've left it as it is in the translation following the rules. If this is a mistake, please correct the original text.Figure 1 is a block diagram showing the hardware configuration of a printing system according to the first embodiment. As shown in Figure 1, the printing system 1000 includes a host computer 101, a printing device 102, a pointing device 117, a keyboard 118, and a display unit 119, which are connected to each other in a communicative manner. The host computer 101 is an information processing device and includes an input interface 110, a CPU 111, a ROM 112, a RAM 113, an external storage device (storage medium) 114, an output interface 115, an input / output interface 116, and a NET interface 120. The host computer 101 can be, for example, a desktop personal computer, but is not limited to this; for example, a notebook personal computer, a tablet terminal, a smartphone, etc., can also be used.

[0014] The CPU 111 is a computer that executes programs stored in the ROM 112 and the external storage device 114. This allows the CPU 111 to execute the various processes (control methods) described later. The ROM 112 stores the initialization program. The external storage device 114 stores application programs, the operating system (OS), print data generation software, and various other data. In this embodiment, Microsoft's Windows 11 is installed on the host computer 101 as the OS. The RAM 113 is used as work memory for executing various programs stored in the external storage device 114, allowing various programs to run within the host computer 101. The input interface 110 is connected to input devices, namely the pointing device 117 and the keyboard 118. The output interface 115 is connected to the display unit 119 as a display device. The display unit 119 displays, for example, the print settings screen 500A and the detailed settings screen 500C, described later. The NET interface 120 is a network interface that controls data transfer to and from external devices via the network. The printer 102 is connected to the input / output interface 116. This allows the host computer 101 to communicate with printers 102 from multiple manufacturers, regardless of the manufacturer of the printer 102, meaning that information can be processed between printers 102 from multiple manufacturers.

[0015] The printing device 102 can be, for example, an image forming apparatus such as a multi-function peripheral (MFP) that has multiple functions such as copying, printing, and faxing, but is not limited to this. Also, the printing performed by the printing device 102 is electrophotographic printing in this embodiment, but is not limited to this, and could be inkjet printing, for example. Furthermore, in this embodiment, the host computer 101 and the printing device 102 are configured as separate devices, but is not limited to this. For example, the host computer 101 and the printing device 102 may be configured as an integrated device.

[0016] <Configuration of a software-centric printing system> Figure 2A is a block diagram showing the software configuration of a printing system. Figure 2A(a) shows a typical configuration when the extended application (application program) 204 is not associated with the general-purpose printing software (standard driver) 202 and the printing device 102. Figure 2A(b) shows a configuration when the extended application 204 is associated with the general-purpose printing software 202 and the printing device 102. The general-purpose printing software 202 is a standard driver provided by the OS provider. The standard driver is a class driver (general-purpose program) that can be used in common, for example, during printing, for printing devices from multiple manufacturers (printing devices 102). The standard driver is pre-installed (built into) the OS, that is, it is provided as one of the functions in the OS package. The standard driver can perform processing for various printing devices by utilizing a standardized printing method. As a result, the standard driver can generate and output instructions that can be interpreted by printing devices from multiple manufacturers. The general-purpose printing software 202 uses a program that operates based on IPP (Internet Printing Protocol). The extension application 204 is a program that supports, or assists, the general-purpose printing software 202. In this embodiment, the extension application 204 is an extension program (a program that executes control methods) that can extend functions that the general-purpose printing software 202 cannot perform on the printing device 102, but is not limited to this. For example, the extension application 204 may be a program that improves the convenience of the functions that the general-purpose printing software 202 can perform on the printing device 102. The extension application 204 is stored in the external storage device 114 together with the OS (general-purpose printing software 202), for example. As a result, the host computer 101 has the general-purpose printing software 202 and the extension application 204.

[0017] <If no extension application is associated>First, referring to Figure 2A(a), we will describe the configuration when the extended application 204 is not associated with the general-purpose printing software 202 and the printing device 102. The drawing application 201 is software that creates content (print data) to be printed by the printing device 102. The drawing application 201 is not particularly limited and can include, for example, a word processing application or a spreadsheet application. The drawing application 201 issues a print command to the OS upon receiving a print request from the user, for example via the keyboard 118. The print command includes print setting information to instruct the operation of the general-purpose printing software 202 and the printing device 102. The print setting information is also called a "Print Ticket (PT)". In addition, the drawing application 201 can display a print setting screen 500A (see Figure 5A(a)) provided by the general-purpose printing software 202, the OS, or the drawing application 201 on the display unit 119 in order to output the print setting information. Furthermore, by operating (pressing) the control 505 within the print settings screen 500A, the detailed settings screen 500B (see Figure 5A(b)) or the detailed settings screen 500C (see Figure 5A(c)) can be displayed on the display unit 119. The print settings screens 500A to the detailed settings screens 500C will be described later. The print settings screen 500A includes setting items that indicate the printable printing functions and control items that indicate the setting values, according to the capability information obtained from the general-purpose printing software 202, that is, the information that can be set as print settings. The capability information is capability information related to the printing device 102's ability to perform printing, and is also called Print Capabilities (hereinafter sometimes referred to as "PC"). It is also possible to determine whether or not this capability information contains information that enables the display of the detailed settings screen 500C (determination step). If, as a result of this determination, it is determined that the information that enables the display of the detailed settings screen 500C is contained, the detailed settings screen 500C can be displayed. On the other hand, if it is determined that the information necessary to display the detailed settings screen 500C is not included, the detailed settings screen 500C will not be displayed.In this way, the extended application 204 can switch whether or not to display the detailed settings screen 300C depending on the capabilities information of the printing device 102.

[0018] The general-purpose printing software 202 determines the PC based on the printing function information 203. The printing function information 203 is data indicating the printing functions, which includes all configurable printing functions, their settings, and mutual exclusion relationships between the settings. The printing function information 203 is also called PDC (Print Device Capabilities). The printing function information 203 is included in the configuration file of the general-purpose printing software 202 and is placed on the external storage device 114 as an immutable file. Alternatively, the printing function information 203 is dynamically generated by the general-purpose printing software 202. Specifically, the general-purpose printing software 202 obtains attribute data of the printing device 102 from the printing device 102. The general-purpose printing software 202 generates the printing function information 203 according to the attribute information in this attribute data. When the printing function information 203 is dynamically generated in this way, it is possible to edit the printing function information 203. Furthermore, the attribute data of the printer 102 is the response obtained by issuing the IPP "Get-Printer-Attributes" operation to the printer 102. The response includes attribute information indicating the functions that can be specified by the printer 102, i.e., the capabilities of the printer 102, and setting values ​​related to that attribute information. The response is also stored in RAM 113.

[0019] With this configuration, the general-purpose printing software 202 allows the user to specify the printing functions available on the printing device 102, depending on the printing device 102 connected to the general-purpose printing software 202. This makes it possible to specify the printing functions available on the printing device regardless of the printing device 102 connected to the general-purpose printing software 202, that is, even when a printing device with different functions or a printing device developed by a different printer manufacturer is connected. In this embodiment, the general-purpose printing software 202 is assumed to be configured to use the "IPP Class Driver" included in Windows® 11. The "IPP Class Driver" is a printer driver that performs printing processing according to the specifications of a standard printing protocol called IPP, and is included in the OS package. The "IPP Class Driver" is not a specific printer driver for each model of printing device 102, but a standard class driver that can be used in common with printing devices 102 from each printer manufacturer, regardless of the printer manufacturer. The "IPP Class Driver" also acquires capability information of the printing device 102 and generates printing function information 203 based on that information.

[0020] Furthermore, an extension application 204 can be associated with the general-purpose printing software 202. This allows the general-purpose printing software 202 to perform functions that are not present in the general-purpose printing software 202. For example, the IPP ClassDriver (general-purpose printing software 202) cannot perform the function of accepting settings for image data trapping processing. This is because the trapping processing setting function is a function that is uniquely performed by the printing device 102 manufactured by a given printer manufacturer. The extension application 204 can extend the trapping processing setting function that the IPP ClassDriver cannot perform to enable it to perform. In this embodiment, the IPP ClassDriver cannot perform the trapping processing setting function, and the extension application 204 can extend that trapping processing setting function to enable it to perform, but it is not limited to this. For example, the IPP ClassDriver may be able to perform a part of the trapping processing setting function, and the extension application 204 may supplement the missing parts of that trapping processing setting function to further extend its scope of execution.

[0021] <Image processing in printing devices> Figure 2B is a flowchart showing the image processing performed by the printing device. The program based on the flowchart shown in Figure 2B is stored in the ROM of the printing device 102. The CPU of the printing device 102 can read this program from the ROM into RAM and execute it. As shown in Figure 2B, in step S2101, the printing device 102 (CPU) performs rasterization on the print data received from the general-purpose printing software 202 or the extended application 204 to generate bitmap image data. In this embodiment, since the general-purpose printing software 202 or the extended application 204 processes data in RGB format, RGB color space image data is generated as bitmap image data.

[0022] In step S2102, the printing device 102 performs a color conversion process from RGB color space image data to CMYK color space image data. This color conversion process is performed, for example, by using a lookup table (hereinafter referred to as "LUT") that outputs a 4D value from a 3D input value. This color conversion process is preferably performed prior to the trapping process. This is because the purpose of the trapping process is to prevent white spots caused by color plate misalignment in the printed material by the printing device 102, and therefore it is better to perform the trapping process in the color space on the printed material at the end.

[0023] In step S2103, the printing device 102 performs trapping on the CMYK color space image data. The trapping process will be described later.

[0024] In step S2104, the printing apparatus 102 performs gamma correction on the trapping image data. Gamma correction ensures that the density characteristics of the screen-processed image data when transferred to the recording paper become the desired characteristics. The gamma correction is performed using a one-dimensional LUT.

[0025] In step S2105, the printing device 102 performs screen processing on the image data that has undergone gamma correction. Screen processing allows the multi-level image data to be quantized into data that the printing device can print. In this embodiment, dithering is used as the screen processing. Dithering is a processing method that sequentially compares the pixel values ​​of the image data with a threshold table in which M × N thresholds of width M and height N are arranged in a matrix, and converts the data into "0 (no toner output)" and "1 (toner output)". The image data that has undergone screen processing is then printed.

[0026] <Trapping process> Figure 3 is a flowchart showing the detailed processing of step S2103 (subroutine) of the flowchart shown in Figure 2B. Hereafter, "pixel of interest" refers to the pixel whose color (pixel value) is replaced. "Reference pixels" refer to pixels within the region (reference region) centered on the pixel of interest (for example, 8 pixels or 15 pixels near the pixel of interest). The size of the reference region changes according to the trapping width. For example, if the trapping width is N pixels wide, the reference region is a region of ((2N+1)×(2N+1)) pixels. As shown in Figure 3, in step S301, the printing device 102 determines whether there are pixels with color plates that are not present in the pixel of interest in order to determine whether white spots due to color plate misalignment may occur. For example, if, within a 3×3 pixel reference region, the pixel of interest is composed of two colors, cyan and black, and the reference pixels are composed of only one color, magenta, then in step S301, it is determined that there are pixels with color plates that are not present in the pixel of interest. In this case, the process proceeds to step S302. In contrast, if all reference pixels are composed of two colors, cyan and magenta, that is, if the same color plate exists in both the pixel of interest and the reference pixels, no white gaps will occur due to color plate misalignment. Therefore, in step S301, it is determined that there are no pixels that have a color plate that is not present in the pixel of interest. In this case, the process ends.

[0027] In step S302, the printing device 102 determines the trapping density based on the trapping density set by the user and the pixel values ​​of the color plates that are not present in the target pixel determined in step S301. For example, if the color plate determined in step S301 is magenta, its pixel value is 128 (8 bits), and the trapping density set by the user is 25%, then the trapping density will be 32 (= 128 × 0.25).

[0028] In step S303, the printing device 102 adds the trapping density determined in step S302 to the pixel of interest.

[0029] In step S304, the printing device 102 determines whether the processing from steps S301 to S304 has been completed for all pixels. If the determination in step S304 indicates that the processing has been completed for all pixels, the processing ends. On the other hand, if the determination in step S304 indicates that the processing has not been completed for all pixels, the processing returns to step S301 and the subsequent steps are executed in order. In this embodiment, all color plates can be added to the pixel of interest, but this is not limited to this. For example, if black is added to the pixel of interest, the change in image quality may be more noticeable because it is a low-luminosity color. In this case, a process to determine whether or not black is to be added to the pixel of interest may be added. Also, if the color of the pixel of interest or the reference pixel is light, white spots due to color plate misalignment may be less noticeable. In this case, a process to determine whether or not the density of the pixel of interest or the reference pixel is above a threshold may be added.

[0030] Figure 4 is a diagram illustrating the effect of the trapping process. Figure 4(a) shows the image before the trapping process. Figure 4(b) shows the state where white areas have occurred. Figure 4(c) shows the image after the trapping process. As shown in Figure 4(a), image 400 consists of a first region 401 and a second region 402. The first region 401 is 100% cyan, and the second region 402 is 100% magenta. If there is no color misalignment in the printing device 102, image 400 will be printed in the state shown in Figure 4(a). However, if the first region 401 shifts to the left relative to the second region 402 during printing, a white area 404 will occur between the first region 401 and the second region 402, as shown in Figure 4(b). Trapping is performed to prevent this white area 404. Through the trapping process, data for image 400' shown in Figure 4(c) is generated from the data for image 400 shown in Figure 4(a). In image 400', an overlapping region 403 is formed where the first region 401 and the second region 402 overlap. As a result, even if the first region 401 shifts to the left relative to the second region 402 during printing, the overlapping region 403 can absorb the shift, thus enabling the printing of image 400' without white gaps 404. The width and density of the overlapping region 403 can be adjusted by adjusting the trapping width and trapping density, which will be described later. In addition, although the overlapping region 403 is a region where two colors overlap in the configuration shown in Figure 4, it is not limited to this, and may be a region where three or more colors overlap, for example.

[0031] Now, let's return to the explanation referring to Figure 2A(a). Based on the print command output from the drawing application 201, the OS generates intermediate data (sometimes called "input data") and sends it to the general-purpose printing software 202. The data that the drawing application 201 outputs for printing is not particularly limited, but for example, XML Paper Specification format (XPS format) data is preferred. Alternatively, the data that the drawing application 201 outputs for printing may be Graphic Device Interface format (GDI format) data. When using the IPP Class Driver as the general-purpose printing software 202, if the data output by the drawing application 201 is in GDI format, the OS converts the GDI format data to XPS format data. The OS then sends this converted XPS format data as intermediate data to the general-purpose printing software 202. Furthermore, if the data output by the drawing application 201 is in XPS format, the OS sends this XPS format data as intermediate data to the general-purpose printing software 202. The intermediate data includes drawing data, which consists of information such as characters and shapes formed on the print medium, and print settings information set by the user.

[0032] The general-purpose printing software 202 converts the intermediate data into printable data (image data) that can be processed by the printing device 102, i.e., printable, and transmits it to the printing device 102. In this embodiment, "print data" refers to Page Description Language (PDL) data equivalent to IPP. PDL data is, for example, data in PDF (Portable Document Format) or PWG-Raster format. The print data includes drawing data, which is information such as characters and figures formed on the printing paper (printing medium), and print setting attribute information, which is generated based on print setting information set by the user and specifies the print settings. The print setting attribute information includes attribute information indicating the functions that can be specified by the printing device 102, i.e., the capabilities of the printing device 102, and setting values ​​related to said attribute information.

[0033] The printing device 102 prints on the paper based on the print data sent from the general-purpose printing software 202. At this time, the printing device 102 can form the drawing data contained in the print data on the paper by performing operations according to the print setting attribute information contained in the print data. The print setting attribute information includes, for example, print quality such as image quality priority or speed priority, attribute information for specifying double-sided printing or single-sided printing, and the setting values ​​of said attribute information. For example, if the print setting attribute information includes attribute information for specifying double-sided printing, the printing device 102 can perform double-sided printing.

[0034] <If an extended application is associated> Referring to Figure 2A(b), the configuration when the extended application 204 is associated with the general-purpose printing software 202 and the printing device 102 will be described. As shown in Figure 2A(b), unlike Figure 2A(a), the extended application 204 is added. That is, the host computer 101 has the drawing application 201, the general-purpose printing software 202, the printing function information 203, and further has the extended application 204. The extended application 204 is software for extending the functionality of the general-purpose printing software 202. Note that the extended application 204 is software that is not pre-included (not bundled) with the OS. Therefore, the extended application 204 is downloaded from a server (not shown) via the Internet by the user operating the host computer 101 and installed on the host computer 101. Alternatively, the extended application 204 may be automatically installed on the host computer 101 based on the connection when the printing device 102 is connected to the host computer 101. Specifically, when the printing device 102 is connected to the host computer 101, the OS obtains device identification information from the printing device 102. The OS may download and install the extended application 204 corresponding to this device identification information from a server via the internet. As a result, the host computer 101 maintains the general-purpose printing software 202 and the extended application 204 as separate control programs. The general-purpose printing software 202 and the extended application 204 may be updated and upgraded. In this case, the update process for the general-purpose printing software 202 and the update process for the extended application 204 may occur at the same time or at different times. Also, the trigger for the host computer 101 to acquire the general-purpose printing software 202 and the trigger for acquiring the extended application 204 may be the same trigger or different triggers.Furthermore, if the extension application 204 is installed, the OS associates the extension application 204 with the general-purpose printing software 202 and the printing device 102.

[0035] As shown in Figure 2A(b), the extended application 204 can exchange information (send and receive information) with the general-purpose printing software 202 and the printing device 102, respectively. That is, the extended application 204 is associated with the general-purpose printing software 202 and the printing device 102. In this embodiment, the extended application 204 has a print settings screen extension unit 205, a print function extension unit 206, an intermediate data editing unit 207, and a notification unit 209. The extended application 204 also has shared information 208 that can be accessed from each of the units: the print settings screen extension unit 205, the print function extension unit 206, the intermediate data editing unit 207, and the notification unit 209. The shared information 208 is a file stored in the external storage device 114 or information stored in the RAM 113. The extended application 204 can write to and read the shared information 208 by using the API (Application Program Interface) provided by the OS.

[0036] Furthermore, the extended application 204 may terminate its operation as a whole when the processing of each unit from the print settings screen extended unit 205 to the notification unit 209 is completed. In this case, the OS will start the extended application 204 each time it receives a processing execution request for each unit. Also, the OS will terminate the operation of the extended application 204 as a whole, for example, when the processing of the print settings screen extended unit 205 is completed. In addition, the extended application 204 may cancel the processing of each unit from the print settings screen extended unit 205 to the notification unit 209 while it is in progress. In this case, the OS will delete the jobs currently being processed on the print queue. As mentioned above, the drawing application 201 issues a print command to the OS upon receiving a print request from the user. The drawing application 201 can also display the print settings screen. In the configuration shown in Figure 2A(b), the drawing application 201 can display the print settings screen 500A (detailed settings screen 500C) provided by the print settings screen extended unit 205 (extended application 204). Furthermore, the print settings screen extension unit 205 can save the detailed settings configured by the user to the shared information 208. Details of the print settings screen extension unit 205 will be described later.

[0037] The intermediate data editing unit 207 acquires intermediate data from the general-purpose printing software 202. The intermediate data editing unit 207 then converts the intermediate data into print data and transmits the print data to the printing device 102. The intermediate data editing unit 207 also acquires detailed setting information from the shared information 208 and adds the detailed settings to the print data. The printing device 102 prints on the paper based on the print data from the intermediate data editing unit 207. The extended application 204 may be configured to acquire the print data generated by the general-purpose printing software 202 and add the detailed settings to the print data. Furthermore, even in the configuration shown in Figure 2A(b), trapping settings may not be executed. In this case, the general-purpose printing software 202 may transmit the print data to the printing device 102 without going through the extended application 204.

[0038] The print function extension unit 206 can edit the print function information 203 (PDC) generated by the general-purpose printing software 202 or the OS. This allows for the addition of functions provided by the extension application 204. It can also add functions that are executable on the printing device 102 but not on the general-purpose printing software 202 (e.g., trapping functions), and add mutual exclusion relationships between print function settings. The OS starts the print function extension unit 206 when the extension application 204 is first associated with the printing device 102 and the general-purpose printing software 202. The OS may also start the print function extension unit 206 at other times (e.g., when the OS starts). With such startup, even if functions related to printing are extended later, the print function extension unit 206 can detect the extension and add it to the print function information 203. An example of functions related to printing being extended later is adding optional devices (e.g., a finisher) to the printing device 102.

[0039] The notification unit 209 can notify the user when an error occurs in the printer 102. For example, if a paper out error occurs in the printer 102, the general-purpose printing software 202 detects this error. The OS uses a notification function called toast notification, which is one of the functions of the OS, to display the paper out error detected by the general-purpose printing software 202 as a message on the display unit 119. When the user interacts with the toast notification, the notification unit 209 is called by the OS and the user interface screen (UI screen) of the notification unit 209 is displayed. The user interface screen can display, for example, detailed messages regarding the paper out error and instructions on how to load paper.

[0040] As described above, in this embodiment, the extended application 204 can be said to have the following four functions. The first function is to display a settings screen. This function is performed by the print settings screen extension unit 205. The second function is to edit intermediate data, convert it into print data, and add detailed settings to the print data. This function is performed by the intermediate data editing unit 207. The third function is to extend the functions that can be specified in the print data generation software. This function is performed by the print function extension unit 206. The fourth function is to display a screen in response to an error occurring in the printer 102. This function is performed by the notification unit 209. Note that the configuration of the extended application 204 is not limited to a configuration having these four functions, and a configuration having at least one function is preferable, and a configuration having other functions is also possible. Furthermore, once the extended application 204 has sent print data to the printer 102, it is not possible to display screens such as guides associated with the print data during the processing of each unit.

[0041] <Example of print settings screen / advanced settings screen> Figure 5A shows an example of a screen displayed on the display unit of a printing system. Figure 5A(a) is the print settings screen displayed by the drawing application 201. Figure 5A(b) is the detailed settings screen displayed when the extended application 204 is not associated. Figure 5A(c) is the detailed settings screen displayed when the extended application 204 is associated. Note that the units and modules that display each screen are not particularly limited. For example, the print settings screen extension unit 205 may be configured only to generate the display screen. In that case, the print settings screen extension unit 205 sends the generated display screen to the drawing application 201 via the general-purpose printing software 202. The drawing application 201 may be configured to display the acquired display screen.

[0042] The print settings screen 500A shown in Figure 5A(a) is a screen where printing conditions related to printing on the printer 102 can be set. This print settings screen 500A includes controls (buttons) 301, 502, 503, 504, and 505. Control 501 allows you to set the printer 102 to be used for printing, the orientation of printing on the printer 102, and the number of copies to be printed on the printer 102. In Figure 5A(a), as an example, the printer 102 to be used for printing is set to "printer 200a", the orientation of printing on the printer 102 is set to "portrait", and the number of copies to be printed on the printer 102 is set to "1". Control 502 displays a preview screen. Control 503 allows you to instruct the printer 102 to start printing. Control 504 allows you to instruct the printer 102 to cancel printing. Control 505 allows you to make detailed settings.

[0043] In configurations where the extended application 204 is not associated, operating control 505 displays the detailed settings screen 500B shown in Figure 5A(b). The detailed settings screen 500B includes controls 506, 507, 508, and 509. Controls 506 to 508 are arranged vertically at the top of the detailed settings screen 500B. Control 509 is located at the bottom of the detailed settings screen 500B. Control 506 allows you to select and set the type of paper used for printing with the printer 102. In Figure 5A(b), "plain paper" is selected as an example. Control 507 allows you to select and set the paper size used for printing with the printer 102. In Figure 5A(b), "A4" is selected as an example. Control 508 allows you to select the paper feed slot for printing with the printer 102. In Figure 5A(b), "automatic" is selected as an example. Control 509 allows you to exit the settings made in controls 506 through 508. Operating control 509 also returns you to the print settings screen 500A shown in Figure 5A(a).

[0044] In a configuration where the extended application 204 is associated, operating control 505 displays the detailed settings screen (settings acceptance screen) 500C shown in Figure 5A(c) (display control process). The detailed settings screen 500C is displayed together with the print settings screen 500A, but its display manner is not particularly limited. For example, the detailed settings screen 500C may be displayed overlaid on the print settings screen 500A, or it may be displayed adjacent to the print settings screen 500A, or the print settings screen 500A may disappear before the detailed settings screen 500C is displayed. The detailed settings screen 500C is a screen that can accept settings for trapping processing of image data (hereinafter referred to as "trapping settings"). The detailed settings screen 500C includes controls 506 to 509, similar to the detailed settings screen 500B. In addition, the detailed settings screen 500C includes controls 510 and 512 as trapping settings.

[0045] Control 510 is a width setting unit that sets the width (trapping width) of the overlapping region 403 (see Figure 4) where the first region 401 and the second region 402 overlap. By operating control 510, a list 511 containing "None", "1 pixel", "2 pixels", and "3 pixels" is displayed. Then, the desired option can be selected from "None", "1 pixel", "2 pixels", and "3 pixels". If "None" is selected, the trapping setting can be omitted. If "1 pixel" is selected, the width of the overlapping region 403 can be set to 1 pixel. If "2 pixels" is selected, the width of the overlapping region 403 can be set to 2 pixels. If "3 pixels" is selected, the width of the overlapping region 403 can be set to 3 pixels. Figure 5A(c) shows an example where "1 pixel" is selected. Also, the widths of the overlapping region 403 included in list 511 are not limited to three types, but may be two types or four or more types, for example.

[0046] Control 512 is a density setting unit that sets the density (trapping density), i.e., transmittance, in the overlapping region 403. This density is the trapping density added to the pixel of interest. By operating control 512, a list 513 containing "25%", "50%", "75%", and "100%" is displayed. Then, the desired option can be selected from "25%", "50%", "75%", and "100%". If "25%" is selected, the density of the overlapping region 403 can be set to 25%. If "50%" is selected, the density of the overlapping region 403 can be set to 50%. If "75%" is selected, the density of the overlapping region 403 can be set to 75%. If "100%" is selected, the density of the overlapping region 403 can be set to 100%. Figure 5A(c) shows an example where "100%" is selected. Furthermore, the concentrations of the overlapping regions 403 included in List 513 are not limited to four types, but may be, for example, two, three, or five or more types.

[0047] Then, the trapping process can be made to be executed by the printing device 102 under the settings accepted by the operation of controls 510 and 512. In this embodiment, the detailed settings screen 500C includes both controls 510 and 512, but is not limited to this; for example, it is sufficient if at least one of controls 510 and 512 is included.

[0048] Figure 5B shows a modified version of the screen displayed on the display unit of the printing system. As shown in Figure 5B, the detailed settings screen 500D includes controls 506 to 509, similar to the detailed settings screen 500C. In addition, the detailed settings screen 500D includes slider bars 521 and 522 as trapping settings. Slide bar 521 is the width setting section for setting the width of the overlapping area 403. By operating slider bar 521, the desired option can be selected from "none", "1 pixel", "2 pixels", and "3 pixels". Figure 5B shows the state where "1 pixel" is selected as an example. Slide bar 522 is the density setting section for setting the density of the overlapping area 403. By operating slider bar 522, the desired density can be selected within the range of "0%" to "100%". Thus, with slider bar 522, in addition to selecting densities such as "25%" and "50%", densities between "25%" and "50%" can also be selected. This allows for precise control of the concentration. Figure 5B shows an example where "100%" is selected.

[0049] Here, we will explain why the items included in the detailed settings screen 500B shown in Figure 5A(b) and the items included in the detailed settings screen 500C shown in Figure 5A(c) are different. Detailed settings screens 500B and 500C are each generated based on print function information (capability information). As mentioned above, the general-purpose printing software 202 does not support the execution of the trapping function. Therefore, the general-purpose printing software 202 alone cannot add the trapping function to the print function information. Furthermore, even if the print function information originally included the trapping function, the general-purpose printing software 202 cannot interpret the trapping function included in the print function information. Therefore, it is not possible to display the trapping function settings on the detailed settings screen. Thus, the print function extension unit 206 adds the trapping function to the print function information 203. Then, the print setting screen extension unit 205 refers to the capability information and displays the detailed settings screen 500C. As a result, the extension application 204 can display the trapping function settings on the detailed settings screen.

[0050] <Flowchart for editing print function information on the print function extension unit> Figure 6 is a flowchart showing the process by which the printing function extension unit edits printing function information. The program based on the flowchart shown in Figure 6 is executed by the CPU 111 controlling the printing function extension unit 206. Figure 7 is a diagram showing an example of a list of capabilities information for the printing device. Figure 8 is a diagram showing an example of a list of printing functions supported by the extension application. Figure 9 is a diagram showing an example of a list of capabilities information for general-purpose printing software. As shown in Figure 6, in step S601, the printing function extension unit 206 acquires capability information from the printing device 102 prior to the display control step described above (acquisition step). Capability information is information about the printing device 102's ability to perform printing, and in this embodiment, it is a setting value included in the response obtained by issuing the IPP "Get-Printer-Attributes" operation to the printing device 102. The setting value is attribute information that indicates the functions that can be specified by the printing device 102, and related to that attribute information. Table 701 shown in Figure 7 shows a list of the capabilities information for the printing device 102. Capability information includes, for example, information about the paper size used for printing with the printing device 102. Other information includes the type of paper (media) used for printing with the printing device 102, the paper feed slot for the paper used for printing with the printing device 102, and the trapping functions that can be performed with the printing device 102. The trapping functions include a trapping width setting function for setting the trapping width and a trapping density setting function for setting the trapping density.

[0051] In step S602, the print function extension unit 206 retrieves the print functions supported by the extension application 204 from the shared information 208. The shared information 208 stores a list of print functions supported by the extension application 204. This list includes all print functions that the extension application 204 can process, and their settings. Table 801, shown in Figure 8, contains information on the paper sizes supported by the extension application 204 as print functions. Other information includes information on the types of paper supported by the extension application 204, information on the paper feed slots supported by the extension application 204, and information on the trapping functions supported by the extension application 204. In addition, the print functions supported by the extension application 204 may be updated through updates to the extension application 204, etc.

[0052] In step S603, the print function extension unit 206 obtains print function information 203 created by the general-purpose print software 202 from the OS. The print function information 203 is created based on the capability information (see Table 701) obtained by the general-purpose print software 202 from the printing device 102. The print function information 203 (PDC) created by the general-purpose print software 202 includes only the print functions that the general-purpose print software 202 supports from the capability information obtained from the printing device 102. For example, Table 801 shown in Figure 8 includes "7x10 inches" and "Western style No. 6" as paper sizes, but Table 901 shown in Figure 9 shows that the general-purpose print software 202 does not support these paper sizes. Therefore, the print function information 203 does not include these paper sizes. Also, Table 801 shown in Figure 8 includes information on trapping functions, but Table 901 shown in Figure 9 shows that the general-purpose print software 202 does not support trapping functions. Therefore, the print function information 203 does not include trapping functions. The printing function expansion unit 206 adds functions and options to the printing function information 203, enabling the expansion application 204 to compensate for the lack of functionality in the general-purpose printing software 202. Furthermore, the printing function expansion unit 206 can also remove unnecessary functions and options from the printing function information 203 created by the general-purpose printing software 202.

[0053] Steps S604, S605, and S606 are repeated processes for the list of functions contained in the capability information obtained from the printing device 102 in step S601. In this embodiment, steps S604, S605, and S606 are repeated for all 10 options included in Table 901.

[0054] In step S604, the print function extension unit 206 determines whether the function or option currently being processed exists in the print function information 203 generated by the general-purpose printing software 202. If the determination in step S604 determines that it exists in the print function information 203, the processing terminates if the last item among the options is being processed. Alternatively, if the last item among the options is not being processed, the next item among the options is selected and step S604 is executed again. On the other hand, if the determination in step S604 determines that it does not exist in the print function information 203, the process proceeds to step S605. For example, in this embodiment, Table 701 includes the paper size "A4", and Table 901 also includes the paper size "A4". In this case, step S604 determines that the function or option currently being processed exists in the print function information 203. In contrast, Table 701 includes the "trapping function", but Table 901 does not include the "trapping function". In this case, step S604 determines that the function or option currently being processed does not exist in the print function information 203.

[0055] In step S605, the print function extension unit 206 determines whether the currently processed function (optional) exists among the functions (optional) supported by the extension application 204. If the determination in step S605 determines that the currently processed function exists, the process proceeds to step S606. On the other hand, if the determination in step S605 determines that the currently processed function does not exist, the process terminates if the last item among the options is being processed, similar to when "Yes" was determined in step S604. Alternatively, if the last item among the options is not being processed, the next item among the options is selected and step S604 is executed again. For example, in this embodiment, if the currently processed function is the "trapping function," then the "trapping function" also exists in Table 801. Therefore, in step S605, it is determined that the currently processed function exists.

[0056] In step S606, the print function extension unit 206 adds the currently processed function (option) to the print function information 203. After step S606 is executed, if the last item among the options is being processed, the process is terminated, as in the case where "Yes" was determined in step S604. Alternatively, if the last item among the options is not being processed, the next item among the options is selected and step S604 is executed again.

[0057] As described above, the extended application 204 can add functions (options) to the print function information 203 that are not supported by the general-purpose printing software 202, are supported by the printing device 102, and are also supported by the extended application 204. Based on the print function information 203 edited through this addition process, capability information (PC) is generated. The print setting screen extension unit 205 generates a display screen based on this capability information, thereby extending the functions not supported by the general-purpose printing software 202 and displaying the detailed settings screen 500C.

[0058] <Processing after the drawing application accepts the print settings> Figure 10 is a sequence diagram showing the processing performed between the drawing application, general-purpose printing software, extension application, and printing device after the drawing application receives print settings. Processing in the drawing application, general-purpose printing software, and extension application is executed by the CPU 111 of the host computer 101. This processing program is stored in the external storage device 114. The CPU 111 then reads the processing program from the external storage device 114 into the RAM 113 and executes it. Processing in the printing device 102 is executed by the CPU (not shown) of the printing device 102. The software configuration of the printing system 1000 is shown in Figure 2A(b).

[0059] As shown in Figure 10, in step S1001, the drawing application 201 accepts print settings from the user. The user can, for example, instruct the drawing application 201 to set print settings by operating the pointing device 117 or the keyboard 118.

[0060] In step S1002, the drawing application 201 displays the print settings screen 500A shown in Figure 5A(a) on the display unit 119.

[0061] In step S1003, the drawing application 201 accepts detailed setting instructions from the user. The user can provide detailed settings by, for example, operating the pointing device 117 or keyboard 118 to select control 505 on the print settings screen 500A.

[0062] In step S1004, the drawing application 201 requests the general-purpose printing software 202 to display the detailed settings.

[0063] In step S1005, the general-purpose printing software 202 requests the extended application 204 to display the detailed settings.

[0064] In step S1006, the print settings screen extension unit 205 of the extended application 204 displays the detailed settings screen 500C shown in Figure 5A(c). As mentioned above, the print function extension unit 206 adds trapping settings to the print function information 203 (PDC). The print settings screen extension unit 205 can display the detailed settings screen 500C by referring to the capability information (PC) generated based on this added print function information 203.

[0065] In step S1007, the print settings screen extension unit 205 accepts the user's detailed settings on the detailed settings screen 500C. Here, as an example, it is assumed that on the detailed settings screen 500C, the paper type "Plain Paper" is selected in control 506, the paper size "A4" is selected in control 507, and the paper feed slot "Automatic" is selected in control 508 (see Figure 5A(c)). Also, it is assumed that "1 pixel" is selected in control 510 and "100%" is selected in control 512 (see Figure 5A(c)). With these settings (selections), the print settings screen extension unit 205 accepts that the user has operated control 509 on the detailed settings screen 500C.

[0066] In step S1008, the print settings screen extension unit 205 receives confirmation that the user has finished the detailed settings based on the operation of control 509 in step S1007. The user can indicate the end of the detailed settings by, for example, operating the pointing device 117 or keyboard 118 to select control 509.

[0067] In step S1009, the extended application 204 sends detailed setting completion information to the general-purpose printing software 202, indicating that the detailed settings in step S1008 have been completed.

[0068] In step S1010, the general-purpose printing software 202 receives the detailed settings completion information sent from the extended application 204 in step S1009. The general-purpose printing software 202 then sends this detailed settings completion information to the drawing application 201.

[0069] In step S1011, the drawing application 201 accepts a print command from the user. The user can issue a print command, for example, by operating the pointing device 117 or the keyboard 118 and selecting control 503 on the print settings screen 500A (see Figure 5A(a)).

[0070] In step S1012, the drawing application 201 issues the print command received in step S1011 to the general-purpose printing software 202.

[0071] In step S1013, the general-purpose printing software 202 uses the OS module to generate intermediate data based on the print instructions in step S1012.

[0072] In step S1014, the general-purpose printing software 202 saves the print settings information (PT) based on the print instructions in step S1012 to the shared information 208.

[0073] In step S1015, the general-purpose printing software 202 sends the drawing data (image data) from the intermediate data generated in step S1013 to the extended application 204.

[0074] In step S1016, the intermediate data editing unit 207 of the extended application 204 retrieves the print settings information saved in step S1014 from the shared information 208.

[0075] In step S1017, the intermediate data editing unit 207 of the extended application 204 generates print data using the drawing data sent in step S1015 and the print setting information acquired in step S1016. This print data includes the numerical values ​​(numerical information) of the trapping settings received on the detailed settings screen 500C.

[0076] In step S1018, the intermediate data editing unit 207 of the extended application 204 sends the print data generated in step S1017 to the printing device 102 (transmission step). As mentioned above, the print data includes numerical information of the trapping settings received on the detailed settings screen 500C. This transmission also instructs the printing device 102 to perform the trapping process based on the trapping settings (instruction step).

[0077] In step S1019, the printing device 102 receives the print data transmitted in step S1018. The printing device 102 interprets the print data and performs the necessary image processing on it. The image processing here involves trapping the print data based on the numerical information transmitted in step S1018. For example, if the data for image 400 shown in Figure 4(a) was the input data, then the data for image 400' shown in Figure 4(c) is generated.

[0078] In step S1020, the printing device 102 prints the print data that has undergone image processing in step S1019. As a result, the printed material is a print of the print data that has been subjected to trapping processing.

[0079] As described above, in the printing system 1000, even if the general-purpose printing software 202 does not support trapping settings, the extended application 204 can display the detailed settings screen 500C shown in Figure 5A(c). This detailed settings screen 500C allows the printing device 102 to perform trapping processing. As a result, the printing device 102 prints a document containing the print data for which trapping processing has been performed. In the explanation referring to Figure 10, the software configuration of the printing system 1000 is assumed to be the software configuration shown in Figure 2A(b), and the detailed settings screen 500C shown in Figure 5A(c) is displayed, but it is not limited to this. For example, if a request to display detailed settings is made to the general-purpose printing software 202 in step S1004, the general-purpose printing software 202 displays the detailed settings screen 500B shown in Figure 5A(b). In this case, after operating the control 509 on the detailed settings screen 500B, the general-purpose printing software 202 requests the extended application 204 to display an additional detailed settings screen. Next, the extended application 204 may display an additional detailed settings screen where trapping settings can be configured. In this embodiment, the extended application 204 generates print data from the intermediate data generated by the general-purpose printing software 202, but it is not limited to this, and for example, the extended application 204 itself may generate the intermediate data.

[0080] <<Second Embodiment>> The second embodiment will be described below with reference to Figures 11 to 14, focusing on the differences from the previously described embodiment, and omitting explanations of similar matters. In the first embodiment, the extended application 204, together with the general-purpose printing software 202, generates print data including trapping settings. This print data is sent to the printing device 102. The printing device 102 can interpret the print data including trapping settings and execute the trapping process. Thus, in the first embodiment, the extended application 204, together with the general-purpose printing software 202, causes the printing device 102 to execute the trapping process.

[0081] However, some printing devices 102 are incapable of performing trapping processing. In this case, even if the extended application 204 generates print data including trapping settings, it is not possible to make the printing device 102 perform trapping processing. If the printing device 102 is unable to perform trapping processing, it is preferable for the extended application 204 to generate print data with trapping processing already performed and send it to the printing device 102.

[0082] Therefore, in this embodiment, based on the capability information of the printing device 102, it is determined whether or not trapping processing can be performed on the printing device 102. If, as a result of this determination, it is determined that trapping processing can be performed on the printing device 102, the extended application 204 generates print data including trapping settings and sends it to the printing device 102. On the other hand, if it is determined that trapping processing cannot be performed on the printing device 102, the extended application 204 generates print data with trapping processing performed on the drawing data and sends it to the printing device 102. This makes it possible to provide trapping processing to the user even when trapping processing cannot be performed on the printing device 102. This embodiment is the same as the first embodiment except that the configuration of the printing system 1000 when the extended application 204 is associated, the editing process of the PDC, and the processing after the drawing application 201 receives the print settings are different.

[0083] <Configuration of a software-centric printing system> Figure 11 is a block diagram showing the software configuration of a printing system according to the second embodiment. The block diagram shown in Figure 11 shows the configuration when the extended application 1102 is associated with the general-purpose printing software 202 and the printing device 1101. As shown in Figure 11, the host computer 101 has a drawing application 201, general-purpose printing software 202, printing function information 203, and the extended application 1102. The extended application 1102 is also connected to the printing device 1101 in a communicative manner. Unlike the printing device 102 in the first embodiment, the printing device 1101 is a printing device that cannot perform trapping processing. The extended application 1102 has a print setting screen extension unit 205, an intermediate data editing unit 207, shared information 208, a notification unit 209, a printing function extension unit 1103, a color conversion processing unit 1104, and a trapping processing unit 1105. The printing function expansion unit 1103 can add trapping processing to the printing function information 203 even if it is determined that trapping processing cannot be performed by the printing device 102 based on the capability information obtained from the printing device 1101. The color conversion processing unit 1104 performs color conversion processing on the intermediate data (drawing data) received from the general-purpose printing software 202. The trapping processing unit 1105 performs trapping processing on the color-converted intermediate data received from the color conversion processing unit 1104 based on the trapping settings.

[0084] <Flowchart for editing print function information on the print function extension unit> Figure 12 is a flowchart showing the process by which the printing function extension unit edits printing function information. The program based on the flowchart shown in Figure 12 is executed by the CPU 111 controlling the printing function extension unit 1103. Furthermore, the flowchart shown in Figure 12 is a flowchart with steps S1201 and S1202 added to the flowchart shown in Figure 6. Figure 13 is a diagram showing an example of a list of the capabilities information of the printing device. As shown in Figure 12, when the iterative processing of steps S604 to S606 is completed, the process proceeds to step S1201. Table 1301 shown in Figure 13 shows a list of the capabilities information of the printing device 1101. This table 1301 includes information on paper size, paper type, and paper feed slot as capability information, but unlike Table 701 shown in Figure 7, it does not include information on trapping processing. Therefore, it can be seen that the printing device 1101 is unable to perform trapping processing. Therefore, trapping processing is not added to the print function information 203 after the completion of processing in steps S604 to S606.

[0085] As shown in Figure 12, in step S1201, the printing function extension unit 1103 determines whether or not the extension application 1102 has a trapping processing unit 1105, that is, whether or not the trapping processing unit 1105 exists. If the determination in step S1201 determines that the trapping processing unit 1105 exists, the process proceeds to step S1202. On the other hand, if the determination in step S1201 determines that the trapping processing unit 1105 does not exist, the process ends. As mentioned above, the extension application 1102 has a trapping processing unit 1105, so the process proceeds to step S1202.

[0086] In step S1202, the print function extension unit 1103 adds the trapping settings shown in Table 801 in Figure 8, i.e., information related to the trapping process, to the print function information 203.

[0087] As described above, the extended application 1102 can add functions (options) to the printing function information 203 that are not supported by the general-purpose printing software 202, are supported by the printing device 102, and are also supported by the extended application 204. The extended application 1102 then determines whether or not the trapping processing unit 1105 is present. If the result of this determination is that the trapping processing unit 1105 is present, trapping processing is added to the printing function information 203. With this added processing, even if the printing device 1101 is unable to perform trapping processing, capability information is generated based on the printing function information 203 with the added trapping processing. Based on this capability information, the extended application 1102 can generate a display screen, thereby displaying the detailed settings screen 500C shown in Figure 5A(c).

[0088] <Processing after the drawing application accepts the print settings> Figure 14 is a sequence diagram showing the processes executed between the drawing application, general-purpose printing software, extended application, and printing device after the drawing application accepts the print settings. The sequence diagram in Figure 14 is a sequence diagram in which steps S1401 to S1405 are mainly added compared to the sequence diagram in Figure 10. As shown in Figure 14, after step S1015 is executed, the process proceeds to step S1401. In step S1401, the trapping processing unit 1105 of the extended application 1102 obtains the print setting information (PT) saved in step S1014 from the shared information 208. The trapping processing unit 1105 also obtains information regarding the trapping process included in the print setting information. Note that if the trapping width is set to "do not perform", the trapping process is not executed, so the process omits steps S1402 to S1405.

[0089] In step S1402, the trapping processing unit 1105 obtains the capability information of the printing device 1101 from the shared information 208. If the capability information of the printing device 1101 is not included in the shared information 208, the printing function extension unit 1103 may request the capability information from the printing device 1101. In this case as well, the capability information is stored in the shared information 208.

[0090] In step S1403, the trapping processing unit 1105 determines whether or not to perform trapping processing on the printing device 1101 based on the capability information acquired in step S1402. As mentioned above, in this embodiment, the printing device 1101 is a printing device in which trapping processing cannot be performed. Therefore, the determination result in step S1403 is that no trapping processing will be performed on the printing device 1101. If the determination result in step S1403 is that trapping processing will be performed on the printing device 1101, the process skips step S1404 and proceeds to step S1017. This is because the printing device 1101 can generally perform trapping processing faster than the trapping processing unit 1105. Specifically, the printing device 1101 can process faster than the trapping processing unit 1105 because it uses an ASIC (Application Specific Integrated Circuit).

[0091] In step S1404, the color conversion processing unit 1104 of the extended application 1102 performs a color conversion process on the intermediate drawing data to convert it into a color plate (CMYK data) that the printing device 1101 can print. This color-converted intermediate drawing data is stored in the shared information 208. If the processing in steps S1404 and S1405 is omitted based on the decision result in step S1403, the extended application 1102 generates RGB format print data in step S1017 and sends it to the printing device 1101. If the printing device 11011 receives CMYK format print data, it omits the color conversion process. If the printing device 11011 receives RGB format print data, it performs the color conversion process after rasterization.

[0092] In step S1405, the trapping processing unit 1105 performs trapping on the intermediate drawing data (intermediate data) based on the trapping processing information acquired in step S1401. As a result, the intermediate drawing data is generated as data that has undergone trapping processing based on the trapping settings (generation control step). This trapped intermediate drawing data is stored in shared information 208. The trapping processing unit 1105 also edits the trapping width in the print setting information to "do not trap" or deletes the trapping setting from the print setting information. After step S1405 is executed, the process proceeds sequentially to steps S1017 to S1020. In step S1018, the trapped intermediate drawing data is sent from shared information 208 to the printing device 1101 (transmission step). The printed material obtained in step S1020 is a printed material that has undergone trapping processing.

[0093] As described above, in this embodiment, even if the trapping process cannot be performed on the printing device 1101, the extended application 1102 can perform the trapping process. As a result, the printing device 1101 will also print a document that reflects the execution of the trapping process.

[0094] <<Third Embodiment>> The third embodiment will be described below with reference to Figures 15A to 18, focusing on the differences from the previously described embodiment, and similar matters will be omitted. Trapping processing, due to its characteristic of adding color plates that were not present in the target pixel, may affect the printed material. One example of processing performed before trapping is background processing. "Background processing" is the process of adding a background area composed of small dots that cannot be reproduced by the printing device after copying, and a latent image area composed of large dots that can be reproduced by the printing device even after copying, to the print data. By setting the background area and the latent image area to the same density and printing, it is possible to achieve the phenomenon where the background pattern is not visible in the original printed material, but appears in the copy of the original. Furthermore, if another color plate is added to the pre-added small dots of the background area by trapping processing, the density difference between the background area and the latent image area may become noticeable. Alternatively, the small dots in the latent image area may become darker, and the small dots in the latent image area may be reproduced even after copying.

[0095] Therefore, in this embodiment, the extended application pre-stores exclusive setting information that excludes trapping processing. After a print command is issued, the extended application compares the print settings with the trapping exclusive setting information and reports the comparison result. This makes it possible to provide trapping functionality while suppressing the effects of trapping processing.

[0096] <Configuration of a software-centric printing system> Figure 15A is a block diagram showing the software configuration of a printing system according to the third embodiment. The block diagram shown in Figure 15A shows the configuration when the extended application 1501 is associated with the general-purpose printing software 202 and the printing device 1503. As shown in Figure 15A, the host computer 101 has a drawing application 201, general-purpose printing software 202, printing function information 203, and the extended application 1501. The extended application 1501 is also connected to the printing device 1503 in a communicative manner. The printing device 1503 is configured to perform watermark processing. The extended application 1501 has a print setting screen extension unit 205, an intermediate data editing unit 207, shared information 208, a notification unit 209, a print function extension unit 1103, and a trapping exclusive determination unit 1502. The trapping exclusive determination unit 1502 is a unit that compares the trapping exclusive setting information with the print setting and requests the display of a warning on the print setting screen based on the comparison result.

[0097] <Image processing in printing devices> Figure 15B is a flowchart showing the image processing performed by the printing device. The flowchart in Figure 15B is the same as the flowchart in Figure 2B, but with the addition of step S2201. As shown in Figure 15B, after step S2102 is executed, the process proceeds to step S2201. In step S2201, the printing device 102 performs the aforementioned background pattern processing on the image data for which the color conversion processing was performed in step S2102. After step S2201 is executed, the process proceeds to step S2203.

[0098] <Trapping Exclusive Setting Information> Figure 16 shows an example of a table of trapping exclusive setting information. Table 1600 in Figure 16 shows the relationship between trapping width, trapping density, and background processing. Specifically, the values ​​of trapping width and trapping density are enclosed by dashed line 1601, and the possibility or impossibility of executing background processing for each pair of trapping width and trapping density values ​​is enclosed by dashed line 1602. For example, when the trapping width is "1 pixel" and the trapping density is "25%", background processing is possible and recommended. This is because, when the trapping density added to the pixel of interest by the trapping process is very light, the impact on the background dots is minimal. Also, when the trapping width is "1 pixel" and the trapping density is "50%", executing background processing is not recommended. This is because the impact on the background dots increases as the trapping density increases.

[0099] <Processing after the drawing application accepts the print settings> Figure 17 is a sequence diagram showing the processes executed between the drawing application, general-purpose printing software, extended application, and printing device after the drawing application accepts the print settings. The sequence diagram shown in Figure 17 is a sequence diagram in which steps S1701 to S1703 are mainly added compared to the sequence diagram shown in Figure 14. As shown in Figure 17, after step S1401 is executed, the process proceeds to step S1701. In step S1701, the trapping exclusive determination unit 1502 of the extended application 1501 obtains print setting information and trapping exclusive setting information from the shared information 208.

[0100] In step S1702, the trapping exclusive determination unit 1502 determines whether or not to display the warning screen (notification screen) 1800 shown in Figure 18, based on the print setting information and trapping exclusive setting information obtained in step S1701. Details of the warning screen 1800 will be described later. If, as a result of this determination, it is decided to display the warning screen 1800, the trapping exclusive determination unit 1502 requests the print setting screen extension unit 205 to display the warning screen 1800. If it is decided not to display the warning screen 1800, the process proceeds to step S1017.

[0101] In step S1703, the print settings screen extension unit 205 of the extended application 1501 displays a warning screen 1800. This display notifies the user of the effects of the trapping process depending on the content of the printed material to be printed by the printing device 102 (notification step). This notification step is performed between the display control step and the instruction step. After step S1703 is executed, the process proceeds sequentially to steps S1402 to S1405 and steps S1017 to S1020.

[0102] <Warning screen> Figure 18 shows an example of a screen displayed on the display unit of the printing system. The warning screen 1800 shown in Figure 18 is a screen that notifies the user of the effects of the trapping process depending on the content of the printed material. The warning screen 1800 includes message 1801, control 1802, and control 1803. Message 1801 displays that the printed material may be affected by shadows from the trapping process and prompts the user to change the trapping settings. By operating control 1802, the user can instruct the printing device 1503 to print in a state where the printed material may be affected by shadows from the trapping process. In this case, the process proceeds to step S1017. By operating control 1803, the user can stop the instruction to print in a state where the printed material may be affected by shadows from the trapping process. In this case, the process from step S1017 onwards is omitted. In this embodiment, trapping settings can be configured while suppressing the effects of executing the trapping process.

[0103] <<Fourth Embodiment>> The fourth embodiment will be described below with reference to Figures 19 and 20, focusing on the differences from the previously described embodiments, and similar matters will be omitted. Trapping processing, if no color misalignment occurs in the printing device, darkens the color of the trapped pixels, making the edges more prominent. In this case, the image quality may not be what the user intended. Therefore, in this embodiment, the trapping processing result can be previewed before printing.

[0104] <Processing after the drawing application accepts the print settings> Figure 19 is a sequence diagram showing the processing performed between the drawing application, general-purpose printing software, extended application, and printing device after the drawing application receives print settings according to the fourth embodiment. The sequence diagram in Figure 19 is a sequence diagram in which step S1901 is added in place of step S1006 compared to the sequence diagram in Figure 14, and step S1902 is added in place of steps S1402 and S1403. Furthermore, the sequence diagram in Figure 19 is a sequence diagram in which step S1903 is added between steps S1405 and S1017 compared to the sequence diagram in Figure 14. Figure 20 is a diagram showing an example of a screen displayed on the display unit of the printing system. As shown in Figure 19, in step S1901, the print setting screen extension unit 205 of the extended application 1102 displays the detailed setting screen 2000A shown in Figure 20(a). The detailed setting screen 2000A is a screen in which control 2001 is added to the print setting screen 500A shown in Figure 5A(c). Control 2001 allows you to choose whether or not to display a preview.

[0105] In step S1902, the print settings screen extension unit 205 determines whether "Preview display" is selected in control 2001 of the detailed settings screen 2000A. If it is determined that "Preview display" is selected, in step S1404, the color conversion processing unit 1104 performs color conversion processing on the intermediate drawing data. Also, in step S1405, the trapping processing unit 1105 performs trapping processing on the intermediate drawing data.

[0106] In step S1903, the print settings screen extension unit 205 displays a preview image 2003 in the detailed settings screen 2000A, as shown in Figure 20(c). The preview image 2003 is an image of the intermediate drawing data after the trapping process. This image is the same as the image of the printed material that will be printed by the printing device 102 and reflect the trapping process. This preview image allows the user to determine whether or not the printed material will have unintended image quality. Also, as shown in Figure 20(b), the preview image 2003 includes a control 2004. By operating the control 2004, the detailed settings screen 2000A returns to the state shown in Figure 20(a). If the preview display "on" of the control 2001 in the detailed settings screen 2000A in the state shown in Figure 20(a) is canceled and the control 509 is operated, the process proceeds from step S1402 onwards.

[0107] Alternatively, instead of the detailed settings screen 2000A, the detailed settings screen 2000B shown in Figure 20(c) may be displayed. The detailed settings screen 2000B is a screen in which control 2002 has been added in place of control 2001. By operating control 2001, a preview display can be instructed. Alternatively, by operating control 2001, the processes from steps S1007 to S1904 may be executed.

[0108] Although preferred embodiments of the present invention have been described above, the present invention is not limited to the embodiments described above, and various modifications and changes are possible within the scope of its gist. The present invention can also be realized by supplying a program that implements one or more of the functions of the above embodiments to a system or device via a network or storage medium, and by having one or more processors in the computer of that system or device read and execute the program. Furthermore, the present invention can also be realized by a circuit (e.g., an ASIC) that implements one or more functions.

[0109] Each embodiment of the disclosure includes the following programs, methods, and configurations. (Program 1) A standard driver provided by the provider of the operating system, which is an application program that supports the standard driver pre-installed in the operating system, On the computer, A display control process that displays a settings acceptance screen for accepting settings for image data trapping processing, An application program characterized by performing an instruction step of instructing an image forming apparatus to execute the trapping process based on the settings received on the setting reception screen. (Program 2) The computer, Between the display control step and the instruction step, a notification step is performed to notify the effect of the trapping process according to the content of the printed material printed by the image forming apparatus. The application program according to Program 1, characterized in that the execution of the instruction step can be stopped after the execution of the notification step. (Program 3) A standard driver provided by the provider of the operating system, which is an application program that supports the standard driver pre-installed in the operating system, On the computer, A display control process that displays a settings acceptance screen for accepting settings for image data trapping processing, A generation control step that generates image data of the trapping process performed based on the settings received on the setting reception screen, An application program characterized by causing the program to perform a transmission step of transmitting the image data generated in the generation control step to an image forming apparatus. (Program 4) The computer, Between the display control step and the transmission step, a notification step is performed to notify the effects of the trapping process according to the content of the printed material printed by the image forming apparatus. The application program according to program 3, characterized in that the execution of the transmission process can be stopped after the execution of the notification process. (Program 5) An application program according to any one of Programs 1 to 4, characterized in that the setting reception screen includes, as a setting, a setting section which includes either a width setting section which sets the width of the trapping in multiple overlapping color regions formed by the trapping process, or a density setting section which sets the density of the trapping in multiple overlapping color regions formed by the trapping process. (Program 6) The width setting unit includes a plurality of widths, and one of these widths can be selected. The application program according to program 5, characterized in that the concentration setting unit includes a plurality of concentrations, and one of the plurality of concentrations can be selected. (Program 7) An application program according to any one of Programs 1 to 6, characterized in that the setting reception screen includes a preview image of a printed product that has been printed by the image forming apparatus and in which the trapping process has been applied. (Program 8) An application program according to any one of Programs 1 to 7, characterized in that it is possible to switch whether or not to display the setting reception screen depending on the image forming apparatus. (Program 9) The computer, Prior to the display control step, an acquisition step is performed to acquire capability information relating to the printing capability of the image forming apparatus from the image forming apparatus, The process involves performing a determination step to determine whether the capability information acquired in the acquisition step includes information that enables the display of the setting reception screen, The application program according to program 8, characterized in that, in the display control step, if it is determined as a result of the determination step that the setting reception screen contains information that enables the display of the setting reception screen, the setting reception screen is displayed, and if it is determined that the setting reception screen does not contain information that enables the display of the setting reception screen, the setting reception screen is not displayed. (Program 10) An application program according to any one of Programs 1 to 9, characterized in that the function that accepts the above settings is a function that cannot be executed by the standard driver. (Program 11) An application program according to any one of Programs 1 to 10, characterized in that a program that operates based on IPP (Internet Printing Protocol) is used as the standard driver. (Program 12) An application program according to any one of Programs 1 to 11, characterized in that it is stored on a storage medium. (Method 1) A method for performing control that supports a standard driver provided by the provider of an operating system, which is a standard driver pre-installed in the operating system, A display control process that displays a settings acceptance screen for accepting settings for image data trapping processing, A control method characterized by comprising: an instruction step of instructing an image forming apparatus to execute the trapping process based on the settings received on the setting reception screen. (Method 2) A method for performing control that supports a standard driver provided by the provider of an operating system, which is a standard driver pre-installed in the operating system, A display control process that displays a settings acceptance screen for accepting settings for image data trapping processing, A generation control step that generates image data of the trapping process performed based on the settings received on the setting reception screen, A control method characterized by comprising a transmission step of transmitting the image data generated in the generation control step to an image forming apparatus. (Configuration 1) An information processing device comprising a standard driver provided by the provider of an operating system, which is pre-installed in the operating system, and an application program that supports the standard driver, The application program is installed on the computer of the information processing device. A display control process that displays a settings acceptance screen for accepting settings for image data trapping processing, An information processing apparatus characterized by performing an instruction step of instructing an image forming apparatus to execute the trapping process based on the settings received on the setting reception screen. (Configuration 2) An information processing device comprising a standard driver provided by the provider of an operating system, which is pre-installed in the operating system, and an application program that supports the standard driver, The application program is installed on the computer of the information processing device. A display control process that displays a settings acceptance screen for accepting settings for image data trapping processing, A generation control step that generates image data of the trapping process performed based on the settings received on the setting reception screen, An information processing apparatus characterized by causing it to perform a transmission step of transmitting the image data generated in the generation control step to an image forming apparatus. [Explanation of symbols]

[0110] 101 Host computer 102 Printing device 202 General-purpose printing software 204 Extended Applications 500C detailed setting screen 510 Control 511 List 512 Control List of 513

Claims

1. A standard driver provided by the provider of the operating system, and an application program that supports the standard driver pre-installed in the said operating system, On the computer, A display control process that displays a settings acceptance screen for accepting settings for image data trapping processing, An application program characterized by performing an instruction step of instructing an image forming apparatus to execute the trapping process based on the settings received on the setting reception screen.

2. To the aforementioned computer, Between the display control step and the instruction step, a notification step is performed to notify the effect of the trapping process according to the content of the printed material printed by the image forming apparatus. The application program according to claim 1, characterized in that the execution of the instruction step can be stopped after the execution of the notification step.

3. A standard driver provided by the provider of the operating system, and an application program that supports the standard driver pre-installed in the said operating system, On the computer, A display control process that displays a settings acceptance screen for accepting settings for image data trapping processing, A generation control step that generates image data of the trapping process performed based on the settings received on the setting reception screen, An application program characterized by causing the program to perform a transmission step of transmitting the image data generated in the generation control step to an image forming apparatus.

4. To the aforementioned computer, Between the display control step and the transmission step, a notification step is performed to notify the effects of the trapping process according to the content of the printed material printed by the image forming apparatus. The application program according to claim 3, characterized in that the execution of the transmission step can be stopped after the execution of the notification step.

5. The application program according to claim 1 or 3, characterized in that the setting reception screen includes, as a setting, one of the following setting units: a width setting unit for setting the width of the trapping in multiple overlapping color regions formed by the trapping process, and a density setting unit for setting the density of the trapping in multiple overlapping color regions formed by the trapping process.

6. The width setting section includes a plurality of widths, and one of these widths can be selected. The application program according to claim 5, characterized in that the concentration setting unit includes a plurality of concentrations, and one of the plurality of concentrations can be selected.

7. The application program according to claim 1 or 3, characterized in that the setting reception screen includes a preview image of a printed product that has been printed by the image forming apparatus and in which the trapping process has been applied.

8. The application program according to claim 1 or 3, characterized in that it is possible to switch whether or not to display the setting reception screen depending on the image forming apparatus.

9. To the aforementioned computer, Prior to the display control step, an acquisition step is performed to acquire capability information relating to the printing capability of the image forming apparatus from the image forming apparatus, The process involves performing a determination step to determine whether the capability information acquired in the acquisition step includes information that enables the display of the setting reception screen, The application program according to claim 8, characterized in that, in the display control step, if it is determined as a result of the determination step that the setting reception screen contains information that enables the display of the setting reception screen, the setting reception screen is displayed, and if it is determined that the setting reception screen does not contain information that enables the display of the setting reception screen, the setting reception screen is not displayed.

10. The application program according to claim 1 or 3, characterized in that the function for accepting the above settings is a function that cannot be executed by the standard driver.

11. The application program according to claim 1 or 3, characterized in that a program operating based on IPP (Internet Printing Protocol) is used as the standard driver.

12. The application program according to claim 1 or 3, characterized in that it is stored on a storage medium.

13. A standard driver provided by the provider of an operating system, and a method for performing control that supports a standard driver pre-installed in the operating system, A display control process that displays a settings acceptance screen for accepting settings for image data trapping processing, A control method characterized by comprising: an instruction step of instructing an image forming apparatus to execute the trapping process based on the settings received on the setting reception screen.

14. A standard driver provided by the provider of an operating system, and a method for performing control that supports a standard driver pre-installed in the operating system, A display control process that displays a settings acceptance screen for accepting settings for image data trapping processing, A generation control step that generates image data of the trapping process performed based on the settings received on the setting reception screen, A control method characterized by comprising a transmission step of transmitting the image data generated in the generation control step to an image forming apparatus.

15. An information processing device comprising a standard driver provided by the provider of an operating system, which is pre-installed in the operating system, and an application program that supports the standard driver, The application program is installed on the computer of the information processing device. A display control process that displays a settings acceptance screen for accepting settings for image data trapping processing, An information processing apparatus characterized by performing an instruction step of instructing an image forming apparatus to execute the trapping process based on the settings received on the setting reception screen.

16. An information processing device comprising a standard driver provided by the provider of an operating system, which is pre-installed in the operating system, and an application program that supports the standard driver, The application program is installed on the computer of the information processing device. A display control process that displays a settings acceptance screen for accepting settings for image data trapping processing, A generation control step that generates image data of the trapping process performed based on the settings received on the setting reception screen, An information processing apparatus characterized by causing it to perform a transmission step of transmitting the image data generated in the generation control step to an image forming apparatus.

Citation Information

Patent Citations

  • Server system and application

    JP2021033526A