Patent Description:
A technique for carrying out printing by using ordinary coloring materials such as cyan, magenta, yellow, and black coloring materials used in process color printing and also a coloring material of a specific color different from the ordinary coloring materials has been developed in the recent years.

<CIT> discloses a printing technique designed to form an image by using a coloring material of a prescribed specific color into an image of process colors using coloring materials of basic colors.

In the course of forming an image by using a coloring material of a prescribed specific color into an image formed from coloring materials of ordinary colors, color conversion processing such as color matching and color adjustment may be sometimes carried out. There has been a demand for a technique for properly conducting printing by using the coloring material of the specific color even in the case of carrying out the above-mentioned color conversion processing. <CIT> discloses that setting information of a special color including RGB values set in a special color settings screen is generated, printing data to which the setting information that is generated is added is generated, and an image forming apparatus which received the printing data that is generated prints using a special color for a part of the RGB values set in the special color settings screen and prints using CMY toners for the other part. <CIT> discloses that when a designated color is determined image data in an RGB space is converted to printing data for CMY special toner (CMYIR). Specifically, a designated color RGB = (<NUM>,<NUM>, <NUM>) is converted into CMYK = (<NUM>,<NUM>,<NUM>,<NUM>), and thereafter the K value of <NUM> is replaced with a value for outputting the IR toner to obtain CMYIR = (<NUM>,<NUM>,<NUM>,<NUM>). Further, for colors other than the designated color, the CMYK value, as it is, is used as the CMYIR value.

Given the circumstances, it is an object of the present invention to provide a printing technique that enables proper conduct of printing in a specific color even in the case of carrying out color conversion processing.

The present invention provides a method, a printing apparatus, and a program as specified in the appended claims.

According to the present invention, it is possible to conduct printing in a specific color properly even in the case of carrying out color conversion processing.

Embodiments of the present invention will be described below in detail with reference to the accompanying drawings. Note that the following embodiments are not intended to limit the scope of the present invention as defined in the appended claims. It is to be also understood that a solution according to the present invention does not always require a combination of all of the features described in any of the embodiments.

A printing control apparatus according to a first embodiment of the present invention will be described. <FIG> is a block diagram showing a hardware configuration of a printing system according to the present embodiment. The printing system is formed from a host computer <NUM> and an image output device (printing apparatus) <NUM>. The host computer <NUM> is an example of an information processing apparatus, which includes an input interface <NUM>, a CPU <NUM>, a ROM <NUM>, a RAM <NUM>, an external storage device <NUM>, an output interface <NUM>, and an input-output interface <NUM>. Meanwhile, input devices such as a keyboard <NUM> and a pointing device <NUM> are connected to the input interface <NUM>, and a display device such as a display unit <NUM> is connected to the output interface <NUM>.

The CPU <NUM> controls the entire host computer <NUM> serving as the information processing apparatus by carrying out processing in accordance with procedures of programs stored in the ROM <NUM>, and executes processing concerning functions to be described later and flowcharts to be described later. An initialization program is stored in the ROM <NUM>. A group of application programs, an operating system (OS), a printer driver, and other various data are stored in the external storage device <NUM>. The RAM <NUM> is formed from a static random access memory (SRAM), a dynamic random access memory (DRAM), or the like which requires a backup power supply. Here, the RAM <NUM> may retain data by using a not-illustrated primary battery for data backup. In this case, the RAM <NUM> can store data such as program control variables without causing volatilization thereof. Moreover, the RAM <NUM> is provided with a memory area for storing setting information on the host computer <NUM>, management data, and the like. Furthermore, the RAM <NUM> is used, for example, as a main memory of the CPU <NUM>, a work memory in executing various programs stored in the external storage device <NUM>, and the like.

The image output device <NUM> is connected to the host computer <NUM> through the input-output interface <NUM>. Here, the host computer <NUM> and the image output device <NUM> are separately provided. However, these structures may be integrated into a single information processing apparatus instead. Although an ink jet printer configured to execute printing by ejecting inks (coloring materials) onto a surface of a print medium will be described as an example of the image output device <NUM> in the present embodiment, the printing may be executed in accordance with a different method (such as an electrophotographic method).

Meanwhile, the present embodiment will describe the example of the ink jet printer configured to execute printing by using inks of ordinary colors and inks of specific colors (spot color inks) which will be explained below. In the meantime, the host computer <NUM> may be any of a desktop personal computer, a notebook personal computer, and a smartphone.

<FIG> is a block diagram schematically showing a configuration of a printing system that performs spot color printing based on a general application. The spot color printing is a printing mode that uses an ink of a special color (a spot color ink) other than ordinary inks. Moreover, the "ordinary inks (first coloring materials)" are inks used for performing process color printing, which are the inks of colors forming a basis of a process color, such as cyan (C), magenta (M), yellow (Y), and black (K) inks. Here, the process color is a color expressed either by one of the CMYK colors or by a combination of two or more colors of the CMYK colors. In the meantime, a fluorescent pink ink and a fluorescent orange ink are used as spot color inks (second coloring materials) in the present embodiment. A spot color is a color that is different from the process color, which cannot be expressed only with one of the CMYK colors or a combination of two or more colors of the CMYK colors. However, the present invention is not limited only to this configuration and the number and colors of the spot color inks may be arbitrarily determined, and an ink of a color which is not a fluorescent color is also applicable. For example, a violet ink, a green ink, an orange ink, a gold ink, a silver ink, or the like may be used as the spot color ink. Meanwhile, inks of other metallic colors are also applicable. In addition, an ink prepared by mixing a special color ink with another ink (such as an ordinary ink) may also be treated as the special color ink.

An application <NUM> is software that creates contents to be printed. For example, an image editing application to create poster data corresponds to the application <NUM>. A user designates RGB values indicating the after-mentioned specific color on the application <NUM> concerning characters and graphic image data for which the user wants to carry out the spot color printing. Upon receipt of a print request from the user, the application <NUM> issues a print instruction to an OS <NUM>. Upon receipt of the print instruction, the OS <NUM> assigns an OS printing system (not shown) included in the OS <NUM> to perform processing concerning the subsequent printing. The following description will be given on the assumption that the OS printing system carries out actions in cooperation with a printer driver <NUM> provided by a vendor of the image output device.

Upon receipt of a request for displaying a print setting screen from the application <NUM>, the OS printing system requests the printer driver <NUM> to display a print setting screen, and the printer driver <NUM> displays the print setting screen on a user interface unit <NUM>. Although the print setting screen will be described later, a size, a type, and the like of paper used as a print medium can be designated on the print setting screen and the spot color printing can also be designated thereon.

In the case of executing the spot color printing, the user selects the spot color ink to be used in the print setting screen displayed by the printer driver <NUM> to begin with. Then, the user creates contents on the application <NUM>, and designates RGB data values corresponding to the use of the above-mentioned spot color ink to characters and graphic print data for which the user wants to use the spot color ink.

After completion of the print setting, the user instructs the application <NUM> to execute the printing by pressing a print button on the application <NUM>. In response to the print instruction from the user, the application <NUM> creates print data and transmits the print data to a graphics processing unit <NUM> of the printer driver <NUM> through the OS <NUM>.

The graphics processing unit <NUM> includes a spot color processing unit <NUM>, a rendering unit <NUM>, a data storage unit <NUM>, and a color conversion processing unit <NUM>. Although details of processing will be described later, the spot color processing unit <NUM> executes processing concerning the spot color printing, the rendering unit <NUM> executes rendering from the print data to RGB data, and color conversion processing unit <NUM> executes processing including color conversion such as color matching. The data storage unit <NUM> performs processing to temporarily store data after rendering into a storage medium such as an HDD. Meanwhile, the graphics processing unit <NUM> converts the print data into a data format interpretable by the image output device <NUM> after executing the spot color print processing, the color conversion processing, and the like, and transmits the print data to the image output device <NUM> through a communication unit <NUM>. Thereafter, the inks are ejected from a print head to a paper sheet fed to the image output device <NUM>, and an image is formed thereon.

The image output device <NUM> of the present embodiment includes a mechanism configured to eject the spot color ink to a location having the RGB values indicating the specific color in the case where the spot color printing is set by using the printer driver <NUM>. Specifically, in the case where the spot color printing is set by using the printer driver <NUM>, pixels in the print data having the specific RGB values corresponding to the set spot color are printed by using the spot color ink. It is possible to use one type or two or more types of the inks as the spot color ink. The following description will be given of the example of the image output device (the ink jet printer) <NUM>, which includes a structure that can execute the printing by using two types of spot color inks of fluorescent pink and fluorescent orange as well as ordinary inks of four colors (CMYK).

The specific RGB values corresponding to the spot color are R = <NUM> (0xFF), G = <NUM> (0x00), and B = <NUM> (0xFF), for example. The pixels having the corresponding RGB values are printed in a fluorescent pink color by using the fluorescent pink ink. In another case, the specific RGB values are R = <NUM> (0xFF), G = <NUM> (0x55), and B = <NUM> (0x00), for example. The pixels having the corresponding RGB values are printed in a florescent orange color by using the fluorescent pink ink mixed with the magenta ink and the yellow ink. Here, in a case where the image output device <NUM> includes a structure that can use a fluorescent orange ink as the spot color ink, for example, then the printing in the fluorescent orange color may be carried out by using the ink of the orange color only. Specifically, the pixels having the specific RGB values corresponding to the spot color only need to be printed by using at least the spot color ink, and may be or may not be printed by using the ink obtained by mixing the spot color ink with any of the CMYK inks.

Note that the pixels not having the specific RGB values corresponding to the spot color are printed by using the CMYK inks only even in the spot color printing. In the meantime, the spot color printing is executed in the case where the spot color printing is activated by a user operation. In other words, if a spot color print setting is not activated, then the pixels having the specific RGB values corresponding to the spot color are printed by using the CMYK inks only with reference to the RGB values as usual. Now, a specific description will be given of procedures in the case of performing the spot color printing.

In the case of executing the spot color printing, the user creates a content on the application <NUM> to begin with. Then, the user designates the specific RGB data values corresponding to the spot color ink to characters or a specific region on the graphic image in the created content, which the user wants to print by using the spot color ink.

<FIG> is a diagram showing an example of a screen of a poster data creation application <NUM> in the application <NUM>. This poster data creation application <NUM> is provided with toolbar buttons <NUM>, an image data display region <NUM>, an image data editing region <NUM>, and an object selecting frame <NUM>. In addition, the poster data creation application <NUM> is provided with an object color editing tab menu <NUM>, an object resizing tab menu <NUM>, a printer selection combo box <NUM>, a printer property button <NUM>, and a print button <NUM>.

The toolbar buttons <NUM> enable selection of application functions. In this example, it is possible to select application functions such as cancellation and redoing of an editing operation, creation of a text object, creation of a graphic object, creation of an image data object, change of a display magnification, and display of help for the application.

Meanwhile, the image data display region <NUM> is a region to display image data created by the user. The image data editing region <NUM> is a region to enable the user to select an arbitrary object, to move the selected object, and to edit the image data by using the pointing device <NUM> (<FIG>). The object selecting frame <NUM> is a display frame formed from a dashed line, which shows a selected object to the user in the case where the user selects the relevant object. In the example shown in <FIG>, selection of a text object stating "SALE" is shown in the object selecting frame <NUM>.

In the case where the object color editing tab menu <NUM> is selected, a control item is displayed for changing a color of the object that is currently selected. Meanwhile, in the case where the object resizing tab menu <NUM> is selected, a control item is displayed for changing the size of the currently selected object. In the example shown in <FIG>, the object color editing tab menu <NUM> is selected and an R value change control item <NUM>, a G value change control item <NUM>, and a B value change control item <NUM> are displayed for changing the RGB values of the object.

Each control item for the R value, the G value, and the B value can set a value from <NUM> to <NUM> by directly inputting a value with the keyboard <NUM> or selecting a button on the right side of each control item with the pointing device <NUM>. Meanwhile, the inputted value is also indicated below each control item in a hexadecimal number. In the example shown in <FIG>, the RGB values of the text object stating "SALE" surrounded by the object selecting frame <NUM> are set to R = <NUM> (0xFF), G = <NUM> (0x00), and B = <NUM> (0xFF) for designating fluorescent pink in the present embodiment.

In the present embodiment, a data creation color space of the application <NUM> may be set to an sRGB color spaces that stands for a standard RGB color space, or may be set to other color spaces such as an Adobe RGB color space. Moreover, it is also possible to set the data creation color space by using a CMYK color space besides the RGB color space, for example. In this case, the spot color is designated by using specific CMYK values. Meanwhile, in the case of setting the spot color in a color space other than the sRGB color space, it is necessary to conduct color conversion processing from a color space of inputted data into either the color space processed by the image output device <NUM> or the sRGB color space processed by the printer driver. Here, a problem that the specific RGB values (or the specific values of a different color space) for designating the spot color are altered in the middle may occur in this case. The present embodiment solves this problem by the processing to be described later.

Note that the printer selection combo box <NUM> is a control item for selecting the printer driver <NUM> to be used for the printing. The printer property button <NUM> is a button used for activating the print setting screen of the printer driver <NUM> designated in the printer selection combo box <NUM> for conducting a variety of print setting. The print button <NUM> is a button for transmitting the print data that includes the print setting set by using the printer property button <NUM> and the image data edited by the user to the printer driver <NUM> designated in the printer selection combo box <NUM>.

<FIG> is a diagram showing an example of the print setting screen to be displayed on the user interface unit <NUM> (<FIG>) in the case of pressing the printer property button <NUM>. The user can obtain a desired print product from the image output device <NUM> by carrying out a variety of the print setting on a print setting screen <NUM>.

The print setting screen <NUM> is provided with a paper type combo box <NUM>, a paper size combo box <NUM>, a print quality combo box <NUM>, and check boxes <NUM> and <NUM> dedicated for the spot color printing. Moreover, the print setting screen <NUM> is provided with a color matching check box <NUM>, an input profile combo box <NUM>, an output profile combo box <NUM>, and a matching method combo box <NUM>. Furthermore, the print setting screen <NUM> is provided with a color adjustment check box <NUM>, a brightness adjustment control item <NUM>, a contrast adjustment control item <NUM>, an OK button <NUM>, and a cancel button <NUM>.

The paper type combo box <NUM> is a control item for selecting one of types of paper such as plain paper, glossy paper, and coated paper from a list, which are acceptable to the image output device <NUM>. The paper size combo box <NUM> is a combo box for a paper size, which is a control item for selecting one of the sizes of paper such as A4 and A3 from a list, which are printable with the image output device <NUM>. The print quality combo box <NUM> is a combo box for print quality, which is a control item for selecting one of print quality modes such as a fast mode, a standard mode, and a high mode from a list, which are applicable in the case of printing with the image output device <NUM>.

The check boxes <NUM> and <NUM> dedicated for the spot color printing are check boxes for designating the spot color. In the case where one of the check boxes <NUM> and <NUM> is on, the pixels included in the print data and having the RGB values equal to the RGB values set to one of the check boxes <NUM> and <NUM> are subjected to printing by using the corresponding spot color ink. In the present embodiment, the spot color printing by using fluorescent pink is carried out in the case where the check box <NUM> is on, while the spot color printing by using fluorescent orange is available in the case where the check box <NUM> is on. On the other hand, no spot color inks are used in the case where the check boxes <NUM> and <NUM> are off. Specifically, even in the case where the RGB values of the pixels included in the print data are equal to the RGB values set to any of the check boxes <NUM> and <NUM>, an image representing the relevant RGB values is formed by using the ordinary inks for carrying out the process color printing of CMYK and the like. No spot color inks are used in this case.

The color matching check box <NUM> is a check box used for issuing an instruction (a color conversion instruction) as to whether or not it is appropriate to subject color information in the image data to color matching serving as the color conversion processing. In the case where this color matching check box <NUM> is on, the color matching is executed by the color conversion processing unit <NUM> in the graphics processing unit <NUM> of the printer driver <NUM> (<FIG>). On the other hand, the color matching is not executed in the case where the color matching check box <NUM> is off.

The input profile combo box <NUM> is a control item for selecting a color space of input data such as sRGB, Adobe RGB, and CMYK from a list. The output profile combo box <NUM> is a combo box for an output profile, which is a control item for selecting one of dedicated profiles indicating color spaces that the image output device <NUM> can express on the paper serving as a print target. Meanwhile, the matching method combo box <NUM> is a control item for selecting one of matching methods such as a "perceptual" method, a "saturation" method, a "relative colorimetric" method, and an "absolute colorimetric" method from a list.

The user sets the respective boxes as shown in <FIG> in the case where the user wants to print the data created based on the Adobe RGB color space on the coated paper, for example. Specifically, the user sets "on" to the color matching check box <NUM>. Then, the user sets "Adobe RGB" to the input profile combo box <NUM>, and sets an output profile (coated paper <NUM>) corresponding to the coated paper to the output profile combo box <NUM>. In addition, the user sets "perceptual" to the matching method combo box <NUM>.

In the case where the printing is executed in the state of setting as mentioned above, the color conversion processing unit <NUM> executes color conversion (color matching) from the input to the output corresponding to the values set by using the color conversion processing unit <NUM> itself or a color management module (CMM) installed in the OS. This makes it possible to execute the printing without causing tint deviation even in the case where the color space of the input data is different from the color space that the image output device <NUM> can express. Although <FIG> shows the example of setting the "perceptual" method to the matching method, the matching method can be set freely depending on the user's taste or the data type.

Regarding the color adjustment check box <NUM>, color adjustment processing is executed by the color conversion processing unit <NUM> of the printer driver in the case where this check box is on. The brightness adjustment control item <NUM> is a control item for changing brightness of a print product, which can be set by directly inputting a value in the combo box with the keyboard <NUM> or selecting a button on the right side of the combo box with the pointing device <NUM>. Reference numeral <NUM> denotes the contrast adjustment control item for changing contrast of the print product, which can be set by directly inputting a value with the keyboard <NUM> or selecting a button on the right side of the control item with the pointing device <NUM>.

<FIG> shows an example in which the user set the brightness of the print product to "+<NUM>" and the contrast thereof to "-<NUM>" while setting the color adjustment check box <NUM> to the "on" state, for instance. In the case where the printing is executed in the state set as described above, the color conversion processing unit <NUM> executes the color conversion in accordance with the set values by using a color adjustment module installed in the color conversion processing unit <NUM>. This makes it possible to adjust the colors in the print product. Here, colors such as "cyan", "magenta", and "yellow" are also adjustable in addition to the "brightness" and the "contrast". In this regard, the configuration is not limited only to the example shown in <FIG>. Incidentally, in the case where the check box for the color adjustment check box <NUM> is off, the setting of the brightness adjustment control item <NUM> and the contrast adjustment control item <NUM> is invalid and the color adjustment does not take place.

The OK button <NUM> is a button for closing the print setting screen <NUM> after transmitting the print setting set on the print setting screen <NUM> as the set values to the application <NUM>. The cancel button <NUM> is a button for closing the print setting screen <NUM> without reflecting the print setting set on the print setting screen <NUM> as the set values.

<FIG> is a flowchart showing processing procedures to be executed by the graphics processing unit <NUM> of the printer driver <NUM> (<FIG>) in the case where the application <NUM> instructs execution of the printing. An example in which print data shown in <FIG> and setting information on the print setting shown in <FIG> are sent from the application <NUM> and the printer driver <NUM> serving as an obtaining unit obtains the data and the information will be discussed in the following description. The print data in <FIG> includes text objects <NUM>, <NUM>, and <NUM>, and graphic objects <NUM> and <NUM>. Values of colors of the respective objects are defined as values shown in a table of <FIG>.

Here, the series of processing shown in <FIG> is carried out by causing the CPU <NUM> of the host computer <NUM> to load program codes stored in the ROM <NUM> into the external storage device <NUM> and to execute the program codes. Alternatively, part or all of the functions of the steps in <FIG> may be realized by hardware such as an ASIC and an electronic circuit. Note that code S prefixed to each step number in flowcharts of the present specification stands for a step.

First, in S501, the spot color processing unit <NUM> (<FIG>) obtains spot color print setting information. Here, execution or non-execution of the spot color printing is determined from the setting of the check boxes <NUM> and <NUM> dedicated for the spot color printing (<FIG>) out of the print setting information such as DEVMODE included in the print data. Moreover, color information on specific RGB values (R = <NUM>, G = <NUM>, and B = <NUM> for fluorescent pink) corresponding to the spot color printing is obtained from model information on the printer driver <NUM> at the same time. Here, the color information on the specific RGB values may be obtained from the image output device <NUM> through a network cable or the like, or may be values determined as fixed values. Hence, the method of obtaining the specific RGB values is not limited to a particular method. The following description will be made on the assumption that only the check box <NUM> dedicated for the fluorescent pink spot color printing is set. Nonetheless, both the check box <NUM> dedicated for the fluorescent pink spot color printing and the check box <NUM> dedicated for the fluorescent orange spot color printing may be set at the same time. In that case, the entire processing to determine the RGB values to follow will be carried out based on the specific RGB values for the two colors of fluorescent pink and fluorescent orange.

Next, in S502, the spot color processing unit <NUM> obtains color conversion processing information from the print setting information such as DEVMODE included in the print data. The setting information on the color matching or the color adjustment is obtained as the color conversion processing information, and execution or non-execution of these color conversion processing procedures is determined.

Next, in S503, the rendering unit <NUM> (rendering means) <NUM> performs processing to convert draw commands included in the print data into the RGB values (rendering) by using a rendering engine installed in the OS or the rendering unit <NUM>. As a consequence of this processing, the draw commands of the objects <NUM> to <NUM> shown in <FIG> are converted into a piece of an RGB image (hereinafter referred to as first image data).

Next, in S504, the spot color processing unit <NUM> checks whether or not both of a spot color printing designation and a color conversion processing designation are used at the same time (whether or not the spot color printing is on and the color conversion processing is also on) based on the information obtained as a consequence of the processing in S501 and S502. Here, the processing goes to S505 in the case where both of the spot color printing designation and the color conversion processing designation are used at the same time, or goes to S506 in the case where the these designations are not used at the same time. As a consequence of the processing in S504, it is possible to skip the processing in S505 to be described below in the case where the spot color printing designation and the color conversion processing designation are not used at the same time. Since the processing in S505 requires a lot of time, skipping this processing can reduce a phenomenon of a needless delay.

In S505, the spot color processing unit <NUM> detects a location of the image data having the specific RGB values (which are R = <NUM>, G = <NUM>, and B = <NUM> in this example) from the first image data, and temporarily stores information indicating the detected location as first information in the data storage unit <NUM>. The processing goes to S506 after this procedure by the spot color processing unit <NUM> serving as a detection unit. The method of detecting the image data having the specific RGB values from the first image data is thought to be a method of scanning all the rendered RGB images, setting a color or a bit flag only to the RGB values that match the specific RGB values, and then saving the corresponding RGB image in a different image format, for example. Meanwhile, the spot color processing unit <NUM> may detect the image data having the specific RGB values simultaneously with the rendering processing in S503, and the first information may be saved as a different image. Alternatively, the first information may be retained in such a way as to be embedded in the first image data instead of saving the first information as a different image. In the present embodiment, the location corresponding to the object <NUM> is detected as shown in <FIG> and is saved as the first information.

Next, in S506, the graphics processing unit <NUM> checks execution or non-execution of the color conversion processing based on the color conversion processing information obtained in S502. As a consequence, the processing goes to S507 in the case where the color conversion processing is designated, or the processing goes to S512 in the case where the color conversion processing is not designated. In S512, the graphics processing unit <NUM> converts the first image data into a data format interpretable by the image output device <NUM>. Thereafter, the graphics processing unit <NUM> transmits the converted data to the image output device <NUM> through the communication unit <NUM>, and terminates the processing.

In S507, the color conversion processing unit <NUM> executes the color conversion processing such as the color matching and the color adjustment. <FIG> is a diagram showing an example of an image (hereinafter referred to as second image data) obtained after the color conversion processing unit <NUM> executes the color conversion processing as a first color conversion unit. In the image shown in <FIG>, colors of the locations corresponding to the original objects <NUM> to <NUM> are converted into colors shown in <FIG>.

Next, in S508, the spot color processing unit <NUM> checks whether or not the spot color printing is designated based on the result in S501. Then, the processing goes to S509 in the case where the spot color printing is designated, or goes to S513 in the case where the spot color printing is not designated. In S513, the graphics processing unit <NUM> converts the second image data into a data format interpretable by the image output device <NUM>. Thereafter, the graphics processing unit <NUM> transmits the converted data to the image output device <NUM> through the communication unit <NUM>, and terminates the processing.

In S509, the spot color processing unit <NUM> replaces the RGB values of a location to carry out the spot color printing (the location of the object <NUM>) in the second image data that undergoes execution of the color conversion processing such as the color matching into the RGB values before the execution of the color conversion processing. In other words, the spot color processing unit <NUM> carries out processing as a second color conversion unit that performs replacement with the original specific RGB values. The location to carry out the spot color printing in the second image data is identified based on the first information. <FIG> shows an example of the image after execution of the processing in S509 (hereinafter referred to as third image data). Meanwhile, <FIG> shows colors of the locations corresponding to the respective objects in the third image data. In the present embodiment, the color (R = <NUM>, G = <NUM>, and B = <NUM>) of the location of the text object <NUM> stating "SALE" after the color conversion processing such as the color matching are replaced with the original color (R = <NUM>, G = <NUM>, and B = <NUM>) of the text object. The processing in S509 makes it possible to correctly inform the image output device <NUM>, which performs the printing of the specific RGB values with the spot color ink, of the location of the specific RGB values designated by the user in a state of removing an impact of the color conversion processing in advance.

Next, in S510, the spot color processing unit <NUM> detects a location from the third image data having the specific RGB values, which are not the same values in the original first image data but are converted into the relevant RGB values as a consequence of the color conversion processing. Then, the spot color processing unit <NUM> carries out processing as a third color conversion unit that replaces the RGB values of the detected location with those of an approximate color other than the color having the specific RGB values. For example, in the case where the location of the specific RGB values included in the third image data does not coincide with the location of the specific RGB values included in the first information, the RGB values of the location that does not coincide are replaced with the RGB values of the approximate color to the color having the specific RGB values. <FIG> shows an example of the image after the conversion into the approximate color (hereinafter referred to as fourth image data). Meanwhile, <FIG> also shows colors after the conversion into the approximate color. In the present embodiment, the color (R = <NUM>, G = <NUM>, and B = <NUM>) of the location of the text object <NUM> stating "XYZ Store" after the color matching are replaced with the approximate color having no specific RGB (R = <NUM>, G = <NUM>, and B = <NUM>).

The present embodiment describes the case of setting the specific RGB values to be printed in the spot color to R = <NUM>, G = <NUM>, and B = <NUM> that represent a single color. However, the present invention is not limited only to this configuration. For example, the specific RGB values to be printed in the spot color may be defined as values with ranges such as R = <NUM> to <NUM>, G = <NUM> to <NUM>, and B = <NUM> to <NUM>. In this way, it is possible to reduce a phenomenon of deviation from the designation of the spot color printing due to a slight change in color in the course of the processing attributed to a print application, the OS, and the like.

In the case where the specific RGB values have certain ranges as in the above-mentioned example, a color which is approximate to the ranges is set as the approximate color in the processing in S510. For example, a color having the values R = <NUM>, G = <NUM>, and B = <NUM> is set as the approximate color. According to the processing in S510, it is possible to keep the image output device <NUM>, which is configured to print the specific RGB values with the spot color ink, from carrying out the spot color printing at an unintended location due to the impact of the color conversion processing. Although the present embodiment shows the example of creating the print data sequentially from the third image data to the fourth image data through the processing in S509 and S510, the print data of the fourth image data may be created by carrying out the processing in the S509 and the processing in S510 at the same time.

Next, in S511, the graphics processing unit <NUM> converts the print data of the fourth image data into a data format interpretable by the image output device <NUM>. Thereafter, the graphics processing unit <NUM> transmits the converted data to the image output device <NUM> through the communication unit <NUM>, and terminates the processing. Then, the image output device <NUM> that receives the print data from the host computer <NUM> executes a printing operation, thus forming an image (<FIG>) by ejecting the spot color ink to the location of the specific RGB values.

The above-described processing makes is possible to use the color matching technique and the color adjustment technique, which bring about the color conversion, in the spot color printing in accordance with a general application that uses the specific RGB values. Moreover, according to the present embodiment, it is always possible to designate the location of the spot color printing for the image output device by using the information on the RGB values only regardless of the presence or absence of the color conversion processing. Thus, the entire printing system can be simply configured. For example, even in the case of inputting data from a portable terminal or a USB memory which cannot perform the color conversion processing and the like, the image output device can always execute the spot color printing based on the color information on the specific RGB values.

The present invention shows the example of causing the printer driver <NUM> to execute the entire processing from S501 to S510. Instead, it is also possible to cause the application <NUM> or the image output device <NUM> to execute the processing from S501 to S510. Meanwhile, the execution of the processing from S501 to S510 may be shared by two or more modules. For example, in the case of causing the image output device <NUM> to execute the rendering and color conversion processing, the image output device <NUM> may carry out the processing from S501 to S510 based on the print data received from the printer driver <NUM>. In the meantime, it is also possible to adopt a mode of causing the application <NUM> to execute the processing from S501 to S510 and causing the printer driver <NUM> to carry out only the data transmission to the image output device <NUM>.

Meanwhile, the present embodiment is configured to determine the location to designate the spot color printing after the rendering, and then to carry out the color conversion processing, and is therefore compatible with various modes of the printing systems. For example, depending on the printing system, there may be a case where data on all of the draw commands are transmitted in a rendered state at a point before the processing by the printer driver due to restrictions of the OS and the like, or a case where a variety of processing can be executed only after the rendering. In these cases, the information on the specific RGB values will be lost if the color conversion processing is executed on a rendered image in advance. Hence, it is not possible to carry out the spot color printing properly. In contrast, according to the present embodiment, the information on the location of the specific RGB values is temporarily saved after the rendering. Thus, it is possible to prevent the information on the location of the specific RGB values from being lost in the course of the subsequent color conversion processing. Hence, the present embodiment is compatible with various modes of the printing system. In the case where it is possible to create the first information by analyzing the draw commands before the rendering, the first information may be created in advance and the rendering and the color conversion processing may be carried out. Thereafter, the RGB values of the location to carry out the spot color printing may be replaced with the specific RGB values based on the first information.

Next, a second embodiment of the present invention will be described with reference to <FIG> and <FIG>. The first embodiment describes the example of correctly informing the image output device <NUM> of the location of the specific RGB values designated by the user by transmitting the data of the RGB values modified in advance to the image output device that prints the specific RGB values with the spot color ink. On the other hand, the second embodiment is configured to transmit the first information indicating the location of the specific RGB values to the image output device <NUM>, and to cause the image output device <NUM> to carry out proper spot color printing while removing the impact of the color conversion processing based on the first information. Note that features of the processing which are different from the first embodiment will be mainly discussed in the following description, and overlapping explanations concerning the same configuration and processing as those of the first embodiment will be omitted.

The present embodiment will also be described on the assumption that the print data in <FIG> and the print setting shown in <FIG> are transmitted as the print data from the application <NUM> as with the first embodiment.

<FIG> is a flowchart showing processing procedures to be executed by the graphics processing unit <NUM> of the printer driver <NUM> (<FIG>) in the case where the application <NUM> instructs execution of the printing. The series of processing shown in <FIG> is carried out by causing the CPU <NUM> of the host computer <NUM> to load program codes stored in the ROM <NUM> into the external storage device <NUM> and to execute the program codes. Alternatively, part or all of the functions of the steps in <FIG> may be realized by hardware such as an ASIC and an electronic circuit. In <FIG>, details of the processing shown in S801, S802, and S803 are the same as the details of the processing shown in S501, S502, S503 illustrated in <FIG>, and explanations of the details of the above-mentioned processing will be omitted herein.

In S804, the spot color processing unit <NUM> checks whether or not the spot color printing is designated (whether or not the spot color printing is on) based on the information obtained as a consequence of the processing in S801. Here, the processing goes to S805 in the case where the spot color printing is designated, or goes to S806 in the case where the spot color printing is not designated. In S805, the location of the image data having the specific RGB values is detected from the rendered first image data, and the first information indicating the detected location is temporarily stored in the data storage unit <NUM> as with S505 shown in <FIG>. Meanwhile, in S806, execution or non-execution of the color conversion processing is determined regarding the first image data as with S506 shown in <FIG>. The processing goes to S809 in the case where the color conversion processing is not carried out, or the processing goes to S807 in the case where the color conversion processing is carried out.

In S807, the color conversion processing unit <NUM> executes the color conversion processing such as the color matching to create the print data for the second image data, and then the processing goes to S808. In S808, the graphics processing unit <NUM> converts the second image data into the data format interpretable by the image output device <NUM>. Thereafter, the graphics processing unit <NUM> transmits the converted data to the image output device <NUM> through the communication unit <NUM>. Meanwhile, in S809, the graphics processing unit <NUM> converts the first image data into the data format interpretable by the image output device <NUM>. Thereafter, the graphics processing unit <NUM> transmits the converted data to the image output device <NUM> through the communication unit <NUM>.

In S810, the spot color processing unit <NUM> checks the presence of the spot color printing designation from a result of the processing in S801. Here, the processing goes to S811 in the case where the spot color printing is designated, or terminates the processing in the case where the spot color printing is not designated. In S811, the graphics processing unit <NUM> converts the first information into the data format interpretable by the image output device <NUM>. Thereafter, the graphics processing unit <NUM> transmits the converted data to the image output device <NUM> through the communication unit <NUM>. Here, the processing in S811 may be carried out simultaneously with S808 or S809. There is no particular order of carrying out these steps.

<FIG> is a flowchart showing processing to be carried out by a not-illustrated CPU provided to the image output device <NUM> after receiving the print data transmitted from the printer driver <NUM> of the host computer <NUM>. In S901, the CPU of the image output device <NUM> checks whether or not the print data is received from the printer driver <NUM> together with the first information. Here, the CPU of the image output device <NUM> moves the processing to S902 in the case where the print data is received together with the first information, or moves the processing to S903 in the case where the first information is not received. In S902, the CPU of the image output device <NUM> detects a location to be printed with the spot color ink based on the first information, and executes the printing only on the relevant location by using the spot color ink. Meanwhile, other locations are printed in the process colors by using the ordinary inks of the CMYK colors and the like without using any spot color inks. Then, the processing is terminated. In S903, the printing with the process color is executed on all the locations of the image data by using the ordinary inks without using any spot color inks. Then, the processing is terminated.

As described above, according to the present embodiment, the image output device <NUM> prints the location in the image data having the specific RGB values by using the spot color ink, and prints other locations by using the ordinary inks based on the first information transmitted from the printer driver <NUM>. In this way, it is possible to use the spot color printing and the color conversion processing such as the color matching at the same time without causing the printer driver <NUM> to carry out to replacement of the colors. As a consequence, it is possible to achieve the processing faster without having to carry out the color replacement processing in S509 of the first embodiment. Moreover, even if the pixels having the RGB values that coincide with the specific RGB values come into being at a location other than a location supposed to be subjected to the spot color printing, the pixels can be formed by using the ordinary inks without any spot color inks. Hence, the conversion processing into the approximate color in S510 of the first embodiment also becomes unnecessary. For this reason, the pixels at the location other than the location supposed to be subjected to the spot color printing are kept from being converted from the color subjected to the color conversion processing into the approximate color. Thus, it is possible to form the pixels with the color set by the color conversion processing. In addition, the processing is also speeded up as a consequence of curtailing the processing in S510.

The first embodiment has described the example of turning the color information corresponding to the location having the specific RGB values in the first image data subjected to the color conversion processing back to the color information indicating the specific color before carrying out the color conversion processing, and causing the image output device <NUM> to carry out the spot color printing based on the latter color information. Meanwhile, the second embodiment has described the example of transmitting the first information that indicates the location supposed to be subjected to the spot color printing to the image output device <NUM>, and causing the image output device <NUM> to carry out the spot color printing at the specific position indicated in the first information. It is also possible to carry out the processing of the first embodiment and the processing of the second embodiment while switching the procedures depending on the functions of the image output device <NUM> used therein. Specifically, the host computer <NUM> takes over the functions of the image output device <NUM> and carries out the processing shown in <FIG> and <FIG> in the case where the image output device has the functions with which it is possible to carry out the spot color printing based on the first information. On the other hand, in the case where the image output device <NUM> is configured to carry out the spot color printing based only on the RGB values, the image output device <NUM> executes the processing shown in <FIG>. As described above, the host computer <NUM> may be configured to determine the functions of the image output device <NUM> to be used, and to carry out the processing in accordance with the functions.

In the above-described embodiments, the ink jet printer configured to form images by ejecting the inks has been described as the example of the image output device <NUM> serving as a printing unit. However, the present invention is not limited only to this configuration. The present invention is also applicable to an image forming apparatus configured to execute printing by using coloring materials other than the inks, such as an electrophotographic image forming apparatus that executes printing by using coloring materials such as toners.

Claim 1:
A method executed by an apparatus configured to control print data for executing printing by using a process color and a specific color different from the process color, the method comprising:
obtaining specific color information indicating RGB values corresponding to the specific color (S501);
converting draw commands included in the print data into first image data including pixels having RGB values corresponding to the specific color and pixels having RGB values corresponding to the process color (S503); and
detecting a specific location to be printed in the specific color (S505), the specific location being in the first image data and corresponding to the pixels having RGB values corresponding to the specific color;
the method characterized by comprising:
performing first color conversion to alter the RGB values corresponding to the specific color from first values of the RGB values to second values of the RGB values and alter the RGB values corresponding to the process color from third values of the RGB values to fourth values of the RGB values in accordance with a color conversion instruction (S507); and
performing, after the first color conversion is performed, second color conversion to alter the RGB values corresponding to the specific color and corresponding to the detected specific location from the second values of the RGB values to the first values of the RGB values (S509), the second image data being converted to third image data by the second color conversion,
wherein printing by a printing unit based on the third image data is executed by using the specific color and the process color.