BACKGROUND OF THE INVENTION1. Field of the Invention[0001]
The present invention relates to a system for printing color data displayed on a color monitor of a computer, by using a color printer.[0002]
2. Related Background Art[0003]
It will be explained hereinafter conventional technique concerning a system for printing color data on a color monitor of a computer by using a color printer.[0004]
Initially, the system will be explained briefly as a whole. The color data which has been edited on a host computer is stored in a memory, a filing system or the like on such the host computer. In a case where the stored color data is printed by the color printer or the like, after the color data is appropriately subjected to color correction in a gamma correction process and a matrix conversion process, obtained color information is transferred to the color printer. In the conventional technique, a color development characteristic of the monitor, a color reproduction characteristic of the color printer, and the like can be predicted or foreseen within a range of restricted accuracy or precision. For example, measurement of a sample which is performed by a measurement equipment or the like and a model which is obtained by using interpolation calculation are defined to be applied to such prediction.[0005]
In such the system, for example, color matching between a color on the color monitor and a color on the color printer can be realized by appropriately adjusting parameters applied to the above-described gamma correction process and the matrix conversion process. In many cases, such the parameter is determined by simulation calculation such as least square or the like. At that time, there is a merit function (or performance function) or the sample as a factor which significantly affects a result of such determination. Ordinarily, a color space which is perceptibly uniform is defined, and a distance (i.e., color difference or chrominance) in such the color space is used as the performance function. Further, as the sample, it is ordinarily used samples which are appropriately diffusive.[0006]
However, even in a color matching system which has been theoretically designed, there is a remarkable difference between the color on the color monitor and the color on the color printer. That is, the color difference itself in the above-described uniform color space has been applied on the premise of the color matching between the same media (e.g., printed matter versus printed matter). Therefore, if the color difference is used, the color matching between the different-kind media (e.g., monitor versus printed matter) is not always succeeded.[0007]
In such case, the most serious problem is occurred when a displacement or an aberration is occurred in a hue.[0008]
In order to clarify such the problem as to the displacement in the hue, the perceptible same hue (i.e., same hue in sight) should be strictly separated from the same hue consisting of each primary color in a device in a monitoring system (e.g., EBU (European Broadcasting Union) system, NTSC (National Television System Committee) system or the like).[0009]
In the perceptible same hue, the same hue is defined in human's sight or view as being representative of Munsell color system. Generally, the so-called uniform color space is correctly named as a perceptible uniform color space. Ideally, such the perceptible uniform color gamut is designed such that the perceptible same hue is linearly mapped from an origin. On the other hand, the same hue in an RGB (red, green and blue) device is defined as the same hue for a color group in which a ratio of each input value is constant. For example, in a case where each of R, G and B is represented as (R, G, B) with[0010]values 0 to 255, it is assumed that blue groups (0, 0, 0)→(0, 0, 64)→(0, 0, 128) e (0, 0, 192)→(0, 0, 225) on the monitor have the same hue.
In a case where each color on the monitor is mapped to the perceptible uniform color space, each color is mapped linearly. Therefore, the same-hue color in the monitor system tends to be considered as having the same hue in the uniform color space. However, when the color on such a line is actually reproduced by the color printer, blue (0, 0, 255) in primary color is printed as purple, whereby the printed blue is viewed as the color remarkably different from the blue on the monitor.[0011]
In a case where the uniform color space is a coordinate space in which the same hue defined in sight is mapped linearly, and in a case where the same-hue color on the monitor is plotted in the uniform color space, although such the same hue is represented linearly, the color on the monitor is viewed as the different-hue color on the printer. It is supposed that this is complicatedly affected by a difference between a color area of the Munsell color system and a color area of the monitor, relation between hue and saturation and the like. Therefore, even if some correction is not performed, such the problem can not be solved.[0012]
SUMMARY OF THE INVENTIONAn object of the present invention is to provide image process apparatus and method which can faithfully reproduce a color in a displayed image.[0013]
In order to achieve the above object, there is provided in the present invention an image processing method for generating a color image by using a color palette table, comprising the steps of:[0014]
restricting colors which can be registered in the palette table, on the basis of gamut data of an image output means outputting the color image;[0015]
forming the color palette table on the basis of color restriction obtained in the restriction step; and[0016]
generating the color image by using the colors which have been registered in the color palette table.[0017]
An another object of the present invention is to provide image process apparatus and method which absorb a difference in system between color development and light generation, a difference in media or the like, and performs matching in color appearance between a color in a generated image and the color in the displayed image.[0018]
In order to achieve the above object, there is provided in the present invention an image processing method comprising:[0019]
an input step of causing an image formation means to form a target image on the basis of target data, and inputting image data obtained by reading the target image with an image read means;[0020]
a correction step of correcting the target data belonging to a range neighboring a predetermined hue such that its saturation is raised and its hue is rotated, so as to generate the corrected target data; and[0021]
a color process parameter generation step of generating a color process parameter on the basis of the image data and the corrected target data.[0022]
The above and other objects of the present invention will become apparent from the following detailed description when read in conjunction with the accompanying drawings.[0023]
BRIEF DESCRIPTION OF THE DRAWINGSFIG. 1 is a block diagram showing an example of a color printing system according to a first embodiment of the present invention;[0024]
FIG. 2 is a block diagram showing an example of a color conversion process;[0025]
FIG. 3 is a block diagram showing an example of a simulation calculation for obtaining CMYK (cyan, magenta, yellow and black) color correction parameters;[0026]
FIG. 4 is a block diagram showing an example of a simulation calculation for obtaining a parameter in a fine controlling process;[0027]
FIG. 5 is a view showing changes in hue and saturation in a case where colors reproduced when outputting primary colors (R, G, B) in a conventional color printing system are plotted in a uniform color space;[0028]
FIG. 6 is a view in which a result of the fine controlling process for the primary colors (R, G, B) is represented in the uniform color space;[0029]
FIG. 7 is a view showing an example of a change in a gamma correction amount in a second embodiment of the present invention;[0030]
FIG. 8 is a view showing a modified example of the change in the gamma correction amount in the second embodiment;[0031]
FIG. 9 is a block diagram showing a color printing system according to a third embodiment of the present invention;[0032]
FIG. 10 is a block diagram showing an example of flow in a process according to the third embodiment;[0033]
FIG. 11 is a view showing an example of UI (user interface) according to the third embodiment;[0034]
FIG. 12 is a view showing an example of a color palette table;[0035]
FIG. 13 is a block diagram showing an example of flow in a process according to a fourth embodiment of the present invention; and[0036]
FIG. 14 is a block diagram showing an example of structure of a color printer.[0037]
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTSFirst EmbodimentInitially, an example of a printer according to the first embodiment will be explained hereinafter.[0038]
FIG. 14 is a schematic view showing structure of a[0039]color printer2010 in the first embodiment. In the drawing,reference numerals2200 to2230 denote color ink cartridges, respectively. That is, yellow (Y), magenta (M), cyan (C) and black (K) color inks are filled in thecartridges2200,2210,2220 and2230, respectively. An independent pipe extends from each ink cartridge and is connected to apressure pump2160. Each color ink is supplied with predetermined pressure, from thepressure pump2160 to aprint head2120. A printing paper is supplied from a rear side of thecolor printer2010, and then the supplied paper is fixed by aplaten roller2110 and afront guide roller2150. Theprinter2010 is operated by depressing key buttons on acontrol panel2180, and acontrol board2190 controls thecolor printer2010 as a whole. In order to cause thecolor printer2010 to perform printing, print control instruction and print data are sent to theprinter2010 via an interface (not shown). For example, in a case where RGB (red, green and blue) colors are designated based on color designation instruction, thecontrol board2190 converts RGB data into CMYK data by using an internal color process unit and then drives theprint head2120 to perform the printing.
FIG. 1 is a schematic block diagram showing a process in a color image system according to the first embodiment. In the drawing,[0040]print data111 is processed in a series ofmodule groups120 to generateoutput data125 in a host computer. After then, theoutput data125 is transferred to acolor printer140 via aninterface unit130 such that thecolor printer140 performs printing and outputting. Theprint data111 is composed of various objects (i.e., figure, image and character), and each object includes color information which is defined in an RGB system. On the basis of such the color information, a print image is developed into avideo memory112, and then the entirety or the part of the print data can be always recognized or confirmed on acolor monitor113. Themodule groups120 are composed of acolor conversion process121, a plottingprocess122 and abinarization process124. In thecolor conversion process121, the color information in the RGB system which information is included in each object is converted into the image information in a CMYK system which is suitable for the printing. In the plotting (or drawing)process122, each object is developed into a printing coordinate system. Further, in thebinarization process124,multivalue data123 obtained in theplotting process122 is binarized. As a result of such the series of the processes, theoutput data125 is generated.
each of the above-described modules is controlled by a[0041]control unit40. That is, thecontrol unit40 sets a source profile and a printer profile both stored in aprofile storage unit41 and a parameter stored in amemory42, to each module on the basis of a mode which has been set by a user with aconsole unit43.
FIG. 2 is a block diagram for explaining in detail actual processes in the[0042]color conversion process121.
In a color[0043]correction conversion process812,input data811 corresponding to theprint data111 in FIG. 1 is subjected to a color correction process in an RGB color space, to obtainrgb data813. In the printer, definition of “rgb” is designed with the intention of having a characteristic represented by the RGB color space independent of a device, e.g., NTSC-RGB color space. On the other hand, definition of “RGB” is designed in consideration of a color space (monitor or the like) dependent on a device. Therefore, while the parameter to be used for correcting CMYK data in the subsequent process is characterized to be uniformly determined, the color correction in this process is performed in consideration of color matching with the device.
That is, a matching process is performed to match the color formed by the[0044]color printer140 on a recording medium with the color of the image displayed on thecolor monitor113.
In the matching process performed in the color[0045]correction conversion process812, gamma correction on theRGB data811 dependent on themonitor113 is performed on the basis of a gamma parameter described in asource profile820 corresponding to themonitor113. Further, an LUT (look-up table) corresponding to a matching method which has been set from theconsole unit43 is selected from among LUTs described in aprinter profile821 corresponding to theprinter140, and then color conversion is performed on the basis of such the selected LUT. In theprinter profile821, the LUT has been stored or described in correspondence with the matching method.
In the first embodiment, the various matching methods are provided, i.e., the matching method which gives priority to vividness (or brightness), the matching method which gives priority to color tint, and the matching method which colorimetrically obtains the color matching.[0046]
In the matching method giving the priority to vividness, the image data belonging to a predetermined color space is not subjected to the mapping, but the image data belonging to outside of the predetermined color space is subjected to the mapping within a color reproduction gamut (or range) of the color printer such that a saturation component thereof is maintained. In the matching method giving the priority to color tint, the mapping is performed such that gradation of the entire image is maintained, i.e., such that the gradation of the input image can be reproduced in the output image. In other words, the image data which is included in the image and belongs to the outside of the color reproduction gamut of the printer is subjected to the mapping within the color reproduction gamut. Further, in the matching method for colorimetrically obtaining the color matching, the image data is subjected to the mapping within the color reproduction gamut of the printer such that the color difference between the input and output image data is minimized.[0047]
The[0048]printer profile821 includes the parameter corresponding to each matching method.
In a luminance[0049]density conversion process814, thergb data813 is subjected to the mapping in the CMY color space. Then,cmyk data817 is obtained in a black generation and UCR (under color removal)process816. In a colorcorrection conversion process818, thecmyk data817 is corrected in the CMYK color space, and finally CMYKcolor data819 is obtained. The parameter to be used in such the process can be obtained in a later-described simulation process (FIG. 3), and has been stored in thememory42.
Color Conversion Process Parameter (CMYK) used inColor Correction Conversion818In case of structuring the color process system according to the first embodiment, a parameter is obtained from a subsequent stage. Therefore, in the process, the parameter to be used for correcting the CMYK data is first determined or obtained and then the parameter to be used for correcting the RGB data is obtained. FIG. 3 is a block diagram showing the simulation process for obtaining the parameter to be used in the color correction of the CMYK data.[0050]
Initially, a[0051]printer model924 is formed in the color printer to which the CMYK data is input. In theprinter model924, the data obtained by uniformly dividing the CMYK colors is input, the sampling output of such the data is performed, and then the sampling output is measured by a calorimeter, whereby a characteristic of the color printer is simulated. In the simulation process, an interpolation calculation is applied based on the data at sampling points, and values corresponding to values of the input CMYK data are calculated and predicted. At that time, the color reproduction gamut of the printer is simultaneously checked, and a color sample for uniformly dividing the color reproduction gamut as much as possible is appropriately picked up. Then,target data932 is generated on the basis of such the color sample. In this case, thetarget data932 is represented by using CIE1976 Lab value (to be referred simply as Lab value hereinafter). In the simulation process, thetarget data932 having the Lab value is converted into an RGB signal by using a conversion equation defined in NTSC (process931), to generatesample data910. In aprocess921, the input RGB signal is converted into the cmyk data by using predetermined calculation equations (i.e., luminance density conversion, black generation, UCR). In acorrection process923 which is the same process as the colorcorrection conversion process818 in FIG. 2, the color correction is performed in the CMYK color space on the basis of the correction parameter. In such the color correction, a parameter obtained by mapping as an initial value the cmyk data as it is (in unit of column) is used as the correction parameter. Further, it is structured in the simulation calculation that a correction term is increased or decreased immediately in response to instruction from acontrol unit942. In the correction process, the value which has been mapped from the cmyk data into the CMYK data is input to theprinter model924, and the Lab value when outputting is obtained as prediction data925 (Lab value). The obtainedprediction Lab data925 is entered into a merit function (or performance function)941 simultaneously with thetarget data932, and an entire error amount evaluated in themerit function941 is then input to thecontrol unit942.
The[0052]control unit942 refers to a result of a partial differential calculation or the like and observes the entire error amount. Simultaneously, thecontrol unit942 increases or decreases each correction term such that the entire error amount is converged. In this case, the process to be used is a well-known attenuation least square or the like, whereby the detailed explanation thereof is omitted. When the color signal is input into the color printer on the basis of the parameter determined in such the manner as described above, e.g., as shown in FIG. 5, red scale data is output along a hue line of 320°, green scale data is output along the hue line of 37°, and blue scale data is output along the hue line of 203°. In FIG. 5 and FIG. 6 (described later), a b value is plotted along an axis of ordinate and-an a value is plotted along an axis of abscissa, and further a rotational angle is defined such that a counterclockwise rotation is a positive rotation.
LUT Used inColor Correction Conversion812The color printer which has been designed in consideration of the above-described procedure can perform the color reproduction which is preferable colorimetrically. However, in a case where the color on the monitor is actually printed, such the printed color is reproduced as the color which is remarkably different from the color on the color monitor because of the essential difference in the color matching between different kinds of devices. As such the essential difference, there is the difference in the color reproduction gamut inherent in each device, the difference in mechanism of color development and light emission, the difference in media, or the like.[0053]
Therefore, in the first embodiment, the mapping corresponding to the matching method is performed to absorb the difference in the color reproduction gamut inherent in each device. Further, in order to absorb the difference in the mechanism of color development and light generation, the difference in the media or the like, and thus to obtain the matching in color appearance in correspondence with each of the matching method for giving the priority to vividness and the matching method for giving the priority to color tint, a linear conversion (or transformation) using a linear matrix is performed for fine control of the results of the above-described mapping.[0054]
The matching method for giving the priority to vividness and the matching method for giving the priority to color tint are performed in case of attaching importance to an atmosphere of the entire image. Therefore, in order to obtain the matching of the color appearance, the fine control corresponding to each matching method is performed irrespective of a fact that such the fine control makes the color colorimetrically different from others.[0055]
On the other hand, the matching method for obtaining the colorimetrical matching minimizes the color difference in the input and output images. Therefore, in such the matching method, any fine control is not performed because the fine control undesirably increases the color difference colorimetrically.[0056]
The LUT which is stored or described in the[0057]printer profile821 and corresponds to each matching method is formed by synthesizing the mapping corresponding to the above-described matching method and the LUT for performing the fine control each other.
FIG. 4 is a block diagram showing the simulation for calculating the parameter to be used in case of forming the LUT concerning the fine control. In this case, the data obtained by uniformly dividing the cmyk colors is input in the color printer to which the rgb data is input so as to newly form a[0058]printer model1023. In theprinter model1023, the sampling output is performed via output systems (i.e., processes subsequent to luminancedensity conversion process814 in FIG. 2, a binarization process (not shown) and the like) including the CMYK color correction parameter which has been obtained in the process of FIG. 3, and then the sampling output is measured by the calorimeter, whereby the characteristic of the color printer is simulated. In the simulation, an output value (Lab value) corresponding to a value of the input rgb data is calculated and predicted. At this time, the color reproduction gamut of the printer is simultaneously checked, a color sample for uniformly dividing the color reproduction gamut as much as possible is appropriately picked up, and then such the sample is newly generated as target data1032 (Lab value).
In the simulation, the[0059]target data1032 having the Lab value is converted into the RGB signal by using the conversion equation defined in NTSC (process1031), to generate sample data (RGB)1010. In this case, by using the sample data (RGB) as an input, in a correction process1021 (same process as colorcorrection conversion process812 in FIG. 2), the color correction in the RGB color space is performed on the basis of the correction parameter. In such the color correction, a parameter obtained by mapping as an initial value the RGB signal as it is (in unit of matrix) is used as such the correction parameter. Further, it is structured in the simulation calculation that the correction term is increased or decreased immediately in response to instruction from acontrol unit1042. In the correction process, the data which has been mapped from the RGB data into the rgb data is input to theprinter model1023, and the Lab value when outputting is predicted and data1024 (Lab value) is calculated.
In this case, if the above-described printer model and the target data are determined, the parameter which is matched with the color (Lab value) on the monitor can be obtained in the conventional manner same as in case of obtaining the correction parameter of the CMYK data.[0060]
However, in the present embodiment, in order to obtain the matching in the color appearance between the different kinds of devices, i.e., the monitor and the printer, it is generated[0061]new target data1050 in which the hue of the target data is rotated in a clockwise direction in correspondence with the hue and saturation of the target data as shown in FIG. 6. A correction amount in this case has been set for each saturation of each hue of the RGB data (trichromatic data), as shown in FIG. 6. Therefore, for the target data other than the trichromatic data, the correction amount is interpolated such that a continuity between the adjacent hues is maintained, whereby the correction amount is set. As the correction amount, it is used the correction amount which is suitable for each of the matching method having the priority to vividness and the matching method having the priority to color tint. Then, the data added with the correction amount is entered into amerit function1041. The entire error amount obtained by themerit function1041 is then input to thecontrol unit1042, and the correction term is increased or decreased immediately in response to the instruction from thecontrol unit1042. In this case, thecontrol unit1042 refers to the result of the partial differential calculation or the like and observes the entire error amount. Simultaneously, thecontrol unit1042 increases or decreases each correction term such that the entire error amount is converged. The LUT is formed on the basis of the parameter obtained in the above-described simulation.
Further, in case of forming the LUT for the matching method of colorimetrically obtaining the matching, same as in the case where the correction parameter for the CMYK data has been obtained, the parameter is determined such that the printer model and the target data are matched with each other.[0062]
Second EmbodimentIn the color[0063]correction conversion process812 according to the first embodiment, in the case where the matching method having the priority to vividness or the matching method having the priority to color tint is set, the matching process is performed on the basis of such the set matching method. However, in the second embodiment, in case of setting such the matching method, after the matching process described in the first embodiment, a following gamma process is further performed as the above-described fine control.
Xm=max(R, G, B)
Xn=min(R, G, B)
Xd=Xm−Xn
where Xm is a maximum value in the RGB colors, Xn is a minimum value in the RGB colors, and Xd is a difference between the maximum and minimum values.[0064]
γ=0.6+(Xd·K1)·(Xn·K2)
By using such equation, coefficients K[0065]1 and K2 are controlled, whereby degradation of a saturation can be suppressed and also a gradation in each primary color can be well reproduced. FIG. 7 shows that a gamma value varies from 0.6 to the extent of 1.4. If the gamma value is set to have a value close to 0.6 in the vicinity of a primary color axis and a monochromatic axis and to have a value close to the-extent of 1.4 in the vicinity of an intermediate color, more excellent color reproduction can be realized for any image.
Such the non-linear gamma process used in the present invention is not limited to such the simple process as shown in FIG. 7. For example, as shown in FIG. 8, the gamma process may be defined such that the gamma value varies complicatedly and functionally.[0066]
Third EmbodimentThe first and second embodiments respectively show the method for matching the color on the monitor and the color on the printer with each other by processing the color on the monitor.[0067]
However, in case of obtaining faithful color reproduction, there is limitation when a color which is remarkably irradiated on a color monitor is reproduced on a color printer. For example, since green is yet within a fluorescent color region on the monitor, such the green can not be reproduced on the color printer even by using a green ink filled in such the printer. Therefore, in order to reproduce such the green, it must be specially provided the color printer which has a fluorescent paint. However, this is not practical due to a problem in cost or the like.[0068]
In the third embodiment, it is provided the structure in which a system printer is first selected by a printer selector, a printer profile is then selected on the basis of such the selected system printer, after then color palette data is generated on the basis of such the selected printer profile, and the obtained color palette data is provided in a client program. That is, by such the structure, it is provided a function for previously suppressing as much as possible a color which can not be reproduced by the printer. In the third embodiment, the printer profile may be arbitrarily and manually selected by a user.[0069]
FIG. 9 is a schematic block diagram showing a color image process system according to the third embodiment. In FIG. 9, the structural components same as those in FIG. 1 are added with the same reference numerals, and thus the detailed explanation thereof are omitted.[0070]
In the color image process system shown in FIG. 9, a[0071]control unit40 controls a process on the basis of a program stored in amemory42.
An application (i.e., application program)[0072]150 is used to generate a color image by using a color palette table as shown in FIG. 10. Image data which consists of the color palette data representing the color images generated based on theapplication150 is once stored in thememory42 together with the color palette table. Then, when printing and displaying are instructed by the user, the color palette data is converted into full-color data represented by RGB color data each having eight bits, on the basis of the color palette table. Thereafter, the obtained full-color data is transferred to amodule group120 and avideo memory112.
FIG. 12 shows the configuration of the color palette table. That is, in the color palette table, N pairs of palette number and full-color data represented by the RGB color data each having eight bits are stored in correspondence with the color palette data. In case of N=255, total 256 colors can be registered in the color palette table, and the color palette number can be represented by the eight-bit data. Therefore, the color image which has been generated based on the[0073]application150 can be represented by the color palette data having eight bits for each pixel.
For this reason, as compared with a case where the color image is represented by the full-color data (i.e., RGB color data each having eight bits), a memory capacity can be reduced to ⅓.[0074]
In the case where the color image is generated based on the[0075]application150, it is displayed on aconsole unit43 an UI (user interface) shown in FIG. 11 for setting the colors of the color palette table.
An[0076]UI200 is used to register the colors capable of being used in the application in the color palette table, up to N+1 colors.Reference numeral210 denotes a portion for displaying the registered colors.Reference numeral230 denotes a portion for designating brightness. In theportion230, as an arrow is moved upward, adesignation color240 becomes brighter.Reference numeral220 denotes a portion for designating a hue and a saturation. In theportion220, as a cursor is moved upward, the saturation becomes higher. Further, by moving the cursor rightward and leftward, the desired hue can be designated. In a case where the desireddesignation color240 could be designated, such the color can be registered in the color palette table by depressing acolor addition button250, and thus the designation colors are displayed on theportion210.
In a case where a color[0077]palette control mode260 which constructs the feature of the present embodiment is set in theUI200, anUI270 is displayed. In theUI270, an outside portion of a color reproduction gamut is displayed as a void (or blank area) on theportion220 such that a color belonging to the outside of the color reproduction gamut can not be registered in the color palette table.
If the color palette control mode is set, a color[0078]matching control manager512 performs gamut check for the color displayed on theportion220, on the basis of printer color reproduction gamut information stored in the selected printer profile. As a result of such the gamut check, the color judged as the color outside the color reproduction gamut is replaced by white (R=G=B=255), whereby the outside portion of the color reproduction gamut can be displayed as the void on theportion220.
Ordinarily, the color palette control mode is not being designated. However, in a case where the colors to be registered in the color palette table are previously restricted due to user's desire, the color palette control mode is designated.[0079]
As described above, if the user sets the color palette control mode, all the image data generated based on the[0080]application150 are within the color reproduction gamut of thecolor printer140.
Therefore, there is no need to absorb a difference in the color reproduction gamut inherent to each device in a matching process performed in a[0081]color conversion process121. For this reason, in the case where the color palette control mode has been set, as the matching method, thecontrol unit40 automatically sets the matching method for obtaining colorimetrical matching in acolor correction conversion812. On the other hand, in the case where the color palette control mode is not being set, the user is requested to set the matching method when the printing.
By interlocking the color palette control mode and the matching method, the color of the color image generated based on the[0082]application150 can be matched with the color of the image formed by thecolor printer140 in the color image process system, as a whole.
FIG. 10 shows a flow of the process according to the third embodiment. In a case where a color[0083]palette control mode511 has been designated on the UI, such information is sent to the colormatching control manager512. Ordinarily, such the mode is not being designated. However, in the case where the colors capable of being used on the monitor are previously restricted due to user's desire, such the colorpalette control mode511 is designated.
A[0084]printer selector515 selects only one printer to be used in the system, from among a plurality of printer drivers in aprinter driver group519. Simultaneously, theprinter selector515 supplies selection information to aprint control manager517. Aprofile manager518 can derive the corresponding profile in aprofile information group520, by referring to the selection information in theprinter control manager517.
In such the profile, information representing the color reproduction gamut of each printer has been stored or described.[0085]
Only in the case where the color palette control mode has been designated, the color[0086]matching control manager512 performs inquiry to theprofile manager518 and then notifies acolor palette creator513 of the information concerning a color palette to be used. Thus, a practical color palette table514 which is composed of the colors within the color reproduction gamut of the printer is formed or updated.
In this case, an application program A conventionally used does not have any means for communicating with the color palette table[0087]514, whereby the application program A can use only a function which is supported by an API provided in the system. On the other hand, in a newly-designed application program B, the colors which can not be reproduced by the color printer can be previously restricted by using the color palette table514.
In the case where the color palette control mode is not being designated, the[0088]color palette creator513 does not operate. Therefore, as in the past, the color image is generated by using the color palette table which has been set and stored. The updating and forming of the color palette table to be used in such the case is supported or controlled by aunit530. Therefore, both the application programs B and A can use such the palette table.
Fourth EmbodimentIn the foregoing third embodiment, it has been provided the structure in which the system printer is first selected by the printer selector, the printer profile is then selected on the basis of such the selected system printer, after then the color palette data is generated on the basis of such the selected printer profile, and the obtained color palette data is provided in the client program. That is, by such the structure, it has been provided in the fourth embodiment the function for previously suppressing as much as possible the color which can not be reproduced by the printer. On the other hand, the fourth embodiment shows the same system as to an OS (operating system) having the structure in which a color palette is managed or controlled on a system side.[0089]
As shown in FIG. 13, in a case where a color[0090]palette control mode611 has been designated on an UI which is set on the system side, such information is sent to a colormatching control manager612. Ordinarily, such the mode is not being designated. However, in the case where the colors capable of being managed on a monitor are previously restricted due to user's desire, such the colorpalette control mode611 is designated.
A[0091]printer selector619 selects only one printer to be used in the system, from among a plurality of printer drivers in aprinter driver group620. Simultaneously, theprinter selector619 supplies selection information to aprint control manager618. Aprofile manager617 can derive a corresponding profile in aprofile information group621, by referring to the selection information in theprinter control manager618. Only in the case where the colorpalette control mode611 has been designated, the colormatching control manager612 performs inquiry to theprofile manager617 and then notifies acolor palette creator613 of information concerning the color palette to be used, whereby a system color palette table630 is formed or updated.
In the fourth embodiment, the colors which can not be reproduced by the color printer can be previously restricted in application programs B and A (both client programs) which utilize the system color palette.[0092]
Although the present invention has been described above with respect to the preferred embodiments, the invention is not limited to the construction or structure of the above embodiments but many modifications and variations are possible within the spirit and scope of the appended claims of the invention.[0093]