1. Field of the Invention
The present invention relates to an image processor, an image processing method, an image printing method and a storage medium, all for a multipass printing operation that forms an image on a print medium by executing two or more scans of a print head over the same print area on the print medium.
2. Description of the Related Art
Among the printing apparatus used for a multipass printing method there is known an inkjet printing apparatus (inkjet printer) of a serial scan type that uses an inkjet print head capable of ejecting ink from a plurality of nozzles.
The inkjet printer repetitively alternates a printing scan for ejecting ink from the print head as it reciprocally moves in a main scan direction and a conveyance operation for feeding the print medium in a sub-scan direction crossing the main scan direction, thereby progressively forming an image on the print medium. The multipass printing method for scanning the print head over the same print area two or more times is able to prevent a possible degradation of quality of a printed image that is likely to occur with a one-pass printing method for scanning the print head over the same print area of a print medium only once.
In this example, the print data for printing an image in a first scan using the lower four nozzles N of the print head H in
In expressing a gradation level in one pixel, there are a multidrop technique and a droplet modulation technique. The multidrop method expresses a gradation level by changing the number of ink droplets ejected onto a single pixel, while the droplet modulation technique changes the volume of an ink droplet ejected onto a single pixel.
Japanese Patent Laid-Open No. 2000-103088 discloses a method of first dividing multivalue image data into portions for each printing scan (pass) before quantizing them. With this method, since the image data is divided into portions for individual passes before being quantized, the complementary relationship between the print data of different passes can be changed so that an undesired effect that may occur when the complementary relationship is perfect can be minimized. That is, if the complementary relationship between the divided data is perfect as shown in
When
The present invention provides an image processor, an image processing method, an image printing method and a storage medium, all for a multipass printing technique capable of printing high-quality images based on print data that has been produced by dividing multivalue image data into portions for individual printing scans, followed by quantization of the divided data.
In the first aspect of the present invention, there is provided an image processor for generating print data used to print an image on a print medium, wherein the image is printed on the print medium by scanning a print head over the same print area of the print medium a plurality of times, the print head being adapted to eject at least two kinds of ink droplets of different volumes onto each pixel according to a value of the print data for the pixel, the image processor comprising:
a dividing unit configured to divide a value of image data, whose range is wider than that of the print data, into portions, one for each scan;
a correction unit configured to correct each of the divided portions of the image data with a correction value of each scan to determine a corrected input value for each scan;
an addition unit configured to add up the corrected input values for the individual scans to calculate a total corrected input value;
a quantization unit configured to quantize the total corrected input value into a value corresponding to the print data to create a total output value; and
a generation unit configured to allocate the total output value unevenly to the plurality of scans to create the print data for each scan.
In the second aspect of the present invention, there is provided an image processing method for generating print data used to print an image on a print medium, wherein the image is printed on the print medium by scanning a print head over the same print area of the print medium a plurality of times, the print head being adapted to eject at least two kinds of ink droplets of different volumes onto each pixel according to a value of the print data for each pixel, the image processing method comprising the steps of:
dividing a value of image data, whose range is wider than that of the print data, into portions, one for each scan;
correcting a value of each of the divided portions of the image data with a correction value of each scan to determine a corrected input value for each scan;
adding up the corrected input values for the individual scans to calculate a total corrected input value;
quantizing the total corrected input value into a value corresponding to the print data to create a total output value; and
allocating the total output value unevenly to the plurality of scans to create the print data for each scan.
In the third aspect of the present invention, there is provided an image printing method for printing an image on a print medium by scanning a print head over the same print area of the print medium a plurality of times, wherein the print head ejects at least two kinds of ink droplets of different volumes onto each pixel according to a value of print data for each pixel which is obtained by quantizing a value of image data for each pixel, the image printing method comprising the steps of:
dividing the value of the image data, whose range is wider than that of the print data, into portions, one for each scan;
correcting a value of each of the divided portions of the image data with a correction value of each scan to determine a corrected input value for each scan;
adding up the corrected input values for the individual scans to calculate a total corrected input value;
quantizing the total corrected input value into a value corresponding to the print data to create a total output value; and
allocating the total output value unevenly to the plurality of scans to create the print data for each scan.
In the fourth aspect of the present invention, there is provided a storage medium storing a computer-readable program, wherein the program causes a computer to execute the following steps to generate print data used to print an image on a print medium, wherein the image is printed on the print medium by scanning a print head over the same print area of the print medium a plurality of times, the print head being adapted to eject at least two kinds of ink droplets of different volumes onto each pixel according to a value of the print data for each pixel, the steps including:
a dividing step to divide a value of image data, whose range is wider than that of the print data, into portions, one for each scan;
a correction step to correct each of the divided portions of the image data with a correction value of each scan to determine a corrected input value for each scan;
an addition step to add up the corrected input value for the individual scans to calculate a total corrected input value;
a quantization step to quantize the total corrected input value into a value corresponding to the print data to create a total output value; and
a generation step to allocate the total output value unevenly to the plurality of scans to create the print data for each scan.
The present invention can keep density variations due to air flow influences from occurring and achieve image quality improvements.
Further features of the present invention will become apparent from the following description of exemplary embodiments (with reference to the attached drawings).
Now, referring to the accompanying drawings, embodiments of this invention will be described.
In the inkjet printer 50 of this example, a carriage 53 is guided by guide shafts 51, 52 so that it can move in a main scan direction of arrow X. The carriage 53 is reciprocated in the main scan direction by a carriage motor and a drive force transmission mechanism, such as belt, that transmits a drive force of the carriage motor. On the carriage 53 are mounted an inkjet print head 10 and an ink tank 54 for supplying ink to the print head 10. The print head 10 uses ejection energy generation elements, such as electrothermal conversion elements (heaters) or piezoelectric elements, to eject ink supplied from the ink tank 54 from its ejection openings. For example, in a print head using the electrothermal conversion elements, a bubble is formed in ink in each nozzle by heating of the associated electrothermal conversion element so that the expanding bubble expels an ink droplet from the ejection opening. The ink ejecting nozzles each comprise the ejection energy generation element and the ejection opening. A plurality of such nozzles are arrayed in a direction crossing the main scan direction (in this example, in a direction perpendicular to the main scan direction) to form a nozzle array. The print head 10 and the ink tank 54 may be integrally constructed to form an inkjet cartridge.
Paper P as a print medium is transported by feeding rollers 55, 56 and transport rollers 57, 58 in a sub-scan direction of arrow Y crossing the main scan direction (perpendicularly in this example). The printer progressively prints an image on the paper P by repetitively alternating a printing operation, which involves ejecting ink from the print head 10 onto the paper P as the print head 10 is moved in the main scan direction, and a transporting operation, which transports the paper P a predetermined distance in the sub-scan direction.
A host computer (host device) 101 connectable to the printer 50 has a CPU 105, an input port 106 such as LAN and USB port, an output port 107, a memory 108, and an auxiliary storage device 109. To the input port 106 of the host computer 101, an input device 103 such as scanner and digital camera, and an external storage device 104 such as CD-ROM drive and memory card reader are connected. The output port 107 of the host computer 101 is connected to the printer 50.
The printer 50 has an input port 110, such as USB and LAN port to receive print data and control information, a control unit 111 to control the printer, and a memory 112 in which print data and inner setting information are held. A paper transporting device 113 is a device to transport the paper in the sub-scan direction and includes paper feeding rollers 55, 56 and paper transport rollers 57, 58.
Image data to be printed by the printer 50 is supplied from the input device 103 or the like into the host computer 101. The entered color or grayscale image data undergoes a color correction in the color correction unit 201 according to the print setting made in the printer 50. The color-corrected image data is then converted in a color conversion unit 202 from RGB components, which are commonly used to represent image data, into CMYK components suited for printing by the printer 50.
The image data that has been converted into the CMYK components is subjected to the following output gradation correction by an output gradation correction unit 203. The relation between the number of ink dots formed in a unit print area and the output characteristic such as reflected density is normally not linear. This is due to a fact that the gradation characteristic of output data varies depending on which one of a variety of quantization methods, such as error diffusion method and dithering, is used in converting the data into pseudo-gradation levels and how a dot forming unit 206, described later, performs a dot arrangement. To assure a linear relationship between an input level of the image data that has been converted into CMYK components and an output characteristic of the printer 50, an output gradation correction is performed. In this embodiment, the output gradation correction suitably matches the quantization process executed by a multipass print data generation unit 204.
The multipass print data generation unit 204 converts data output from the output gradation correction unit 203 (input data) into multipass print data for each component of each color (multipass print data generation process). This multipass print data generation process will be described later. The multipass print data is converted by a print command data generation unit 205 into a print command for each component of each color that can be interpreted by the printer 50. The converted print data is sent to the printer 50 connected to the host computer 101. The host computer 101 may constitute an image processor to generate print data used by the printer 50. It is also possible to combine the host computer 101 with the printer 50 to form an image printing device to print an image.
First, at step S1 a check is made to see if image data for all lines has been processed. If so, the processing is ended. If the processing of image data for all lines has not yet finished, the process moves to step S2. Step S2 checks whether, for each pixel in the image data, the color correction by the color correction unit 201, the color conversion by the color conversion unit 202 and the output gradation correction by the output gradation correction unit 203 (step S3) have been completed.
When the color correction, color conversion and output gradation correction have been completed for one line in step S3, the processing moves to step S4. Step S4 checks whether the multipass print data generation process (step S5) by the multipass print data generation unit 204 is completed for individual pixels in one line of image data. When it is found that the multipass print data generation process for one line has finished, the processing moves to step S6. In step S6, the print command data generation unit 205 converts the multipass print data thus generated into print command data that can be interpreted by the printer 50 (print command data generation process). The converted print data is output to the printer 50 (step S7).
The printer 50 stores the received print data in a print buffer within the memory 112 (see
As described above, the gradation level is expressed by arranging dots according to the output value 0, 1, 2. In the gradation level expression method, such as multidrop technique and droplet modulation technique, differences in the gradation characteristic resulting from the way the dots are arranged are absorbed, as described above, by the output gradation correction unit 203 executing the output gradation correction that suitably matches the way the dots are arranged. This guarantees the linear relationship between the input level of image data and the output characteristic of the printer. The droplet modulation technique used in this example to express the gradation level of one pixel is intended to prevent the generation of data involving small ink droplets that are easily influenced by air flows, by performing a process described later.
The dot forming unit 206 determines the dot arrangement as described above and the printing unit 207 including the print head 10 prints an image based on the dot arrangement. The printing unit 207 ejects ink from its print head 10 to print an image on the paper P fed by the paper transporting device 113. In a 2-pass printing method, the print head 10 scans twice over one line, as described above.
Next, the multipass print data generation process executed by the multipass print data generation unit 204 shown in
The multipass print data generation unit 204 has its pass data dividing unit (dividing means) 300 in which input data 10 from the color correction unit 201 is divided into input pass data I1, I2 for two passes. I1 and 12 have an allocation percentage of 50% each. Because the input data 10 is divided in a way that allocates 50% of the data to each of the two passes, the input pass data I1, I2 can take up data ranges of 0-127 and 0-128, respectively. Adders (correction means) 310, 311 add up the values of input pass data I1, I2 for each pixel and the values (correction values) of the error data E1, E2 for each pixel and output corrected input values C1, C2. The error data E1, E2 are calculated based on output values O1, O2 of pixels already quantized, as described later. An adder (addition means) 320 outputs a total corrected input value CS, an addition of the corrected input values C1, C2. A total output value calculation unit (quantization means) 330 outputs a total output value OS by quantizing the total corrected input value CS. The total corrected input value CS has 256 gradation levels and the total output value OS three levels.
Thresholds at which the total output value calculation unit 330 determines the output value (0, 1, 2) are Th0 and Th1 (Th0<Th1). The total corrected input value CS can be expressed by equation (1) below. A range of the total corrected input value CS is expressed as Min−Max (Min≦0, 255 Max).
The total output value OS output from the total output value calculation unit 330 is 0 when the total corrected input value CS is less than Th0, 128 (3-value output is 1) when CS is equal to or greater than Th0 and less than Th1, and 255 (3-value output is 2) when CS is equal to or greater than Th1. These total output values OS are represented by solid lines in
An output value determination unit (generation means) 340, based on the corrected input values C1, C2 for each pass, divides the total output value OS into an output O1 and an output O2 and allocates them to the first pass and the second pass respectively. At this time, the total output value OS is distributed unevenly to these passes. In this example, the total output value OS is allocated only to one of the output values O1, O2. That is, when C1>C2, the total output value OS is allocated only to the output value O1, i.e., O1=OS and O2=0. When C1≦C2, the total output value OS is allocated only to the output value O2, i.e., O1=0 and O2=OS. Therefore, the output value determination unit 340 allocates all of the total output value OS to one of the plurality of passes with the largest corrected input value and 0 to the remaining passes. The output data of the output value determination unit 340, i.e., output data of the multipass print data generation unit 204 (output values O1, O2) takes one of the converted three values of 0, 1, 2.
Error calculation units (error calculation means) 350, 351 take in the output values O1, O2 from the output value determination unit 340 and corrected input values C1, C2 from the adders 310, 311, calculates differences between them and outputs error data E1, E2. The values of the error data E1, E2 can be determined by the following equations (2-1) and (2-2). O1 and O2 are 0, 128 or 255.
E1=C1−O1 (2-1)
E2=C2−O2 (2-2)
These error data E1, E2 are input to the adders 310, 311 respectively and added to the input pass data I1, I2 to be taken in the next time.
As described above, one of input data I0 is processed. By repetitively shifting the process one pixel at a time in the direction of processing, multipass print data corresponding to each pass for printing the entire image is generated.
Next, an example result of calculating the multipass print data in this embodiment will be explained by referring to
In
First, the process in the case of
At the first pixel, since there is no error data E1, E2 from the preceding pixel, E1=0 and E2=0. Adding the error data E1, E2 and the input pass data I1, I2 results in the corrected input values C1, C2 of C1=50 and C2=50. Adding up these corrected input values C1, C2 gives a total corrected input value CS of 100 (=50+50), which falls between Th0 (=64) and Th1 (192). So the total output value OS is 128. Since C1≧C2, the total output value OS of 128 is divided into O1=0 and O2=OS (=128). Further, from equations (2-1) and (2-2), the error data E1, E2 to be allocated to the next pixel are E1=50 (=50−0) and E2=−78 (=50−128). These error data E1, E2 are used as E1, E2 for the second pixel in
The similar process is also performed on the second and subsequent pixels and the processing results are shown in
As can be seen from
As a result of the above processing, if the maximum print density for each pass is lowered by dividing unquantized multivalue image data, the output value for each pass will not become 100% or nearly 100% “1” as they do in the case of Japanese Patent Laid-Open No. 2000-103088 of
Further, in this example, the pass data dividing unit 300 allocates the input data I0 into the input pass data I1, I2 at an allocation percentage of 50%. Hence, if the total output value OS is 1 or 2, the allocation percentages at which the total output value OS is allocated to the first pass output value O1 and the second pass output value O2 are almost 50%. This is because, by the output value determination unit 340, all of the total output value OS is allocated to only one of the first and second pass which has a larger corrected input value C1 or C2, with the other pass allocated with 0. In other words, since the total output value OS is allocated partially only to whichever of the two passes has a greater corrected input value C1 or C2, the allocation percentage at which to allocate the OS to each of the two passes can be controlled according to the allocation percentage at which the pass data dividing unit 300 divides and allocates the input data I0 to each of the two passes. That is, the frequency at which the quantized value of 1 or 2 is output as the print data for each pass can be controlled according to the allocation percentage at which the pass data dividing unit 300 allocates the input data I0 to each of the two passes.
Where the unquantized multivalue image data is divided into portions for two passes which are then quantized, it is possible to control the frequency at which a predetermined quantized value is output while widening the range of value that the image data to be quantized can take. This means that the air flow-induced density variations that becomes discernible in the case of
In the aforementioned first embodiment, in order to partially allocate the total output value to a predetermined pass, the output value determination unit 340 allocates the total output value only to whichever of a plurality of passes has the largest corrected input value. However, in a high density print area—an area where the total output value has become large because of the partial allocation of the total output value to a predetermined pass—the number of pixels to which an output 0 is assigned increases. If this happens, variations in ink droplet landing position (variations in ink droplet ejection direction and ink droplet size) and printed area deviations among passes may become conspicuous. To deal with this problem, the allocation technique may be switched to a different one depending on the total output value when the output value determination unit 340 allocates the total output value partially to the predetermined pass.
As one method of switching between different allocation techniques depending on the total output value, a method of creating print data with four output levels, or 4-value print data, will be explained. The 4-value print data has one of output values 0, 1, 2, 3.
When the total output value is 1 or 2, which is likely to occur in low density print areas, the total output value OS is allocated only to the pass with the maximum corrected input value, as in the preceding embodiment. That is, If C1>C2, the total output value OS is allocated to the output value O1, i.e., O1=OS and O2=0. If C1≦C2, the total output value OS is allocated to the output value O2, i.e., O1=0 and O2=OS.
When, on the other hand, the total output value is 3, which is likely to occur in high density print areas, the total output value OS is allocated to two passes according to which of the corrected input values C1, C2 is greater. For example, if C1>C2, the total output value OS is divided into the output values O1, O2 at a ratio of 2:1, i.e., O1=2 and O2=1. If C1≦C2, the total output value OS is divided into the output values O1, O2 at a ratio of 1:2, i.e., O1=1 and O2=2.
As described above, when the output value determination unit 340 partially allocates the total output value to a predetermined pass, a switch is made between the two allocation procedures according to the total output value. One of the two procedures is to allocate all of the total output value only to one pass having the maximum corrected input value and the other is to divide and allocate the total output value to two or more passes at different allocation percentages such that the sum of the allocated output values equals the total output value. By switching between the different allocation procedures, those of the high density print areas which are allocated with the output value of 0 can be reduced as much as possible to render ink droplet ejection direction and ink droplet size variations and printed area deviations among different passes unnoticeable. If the linear relationship between the input level of image data and the output characteristic of the printer when the output value of 3 is distributed among two or more passes differs from that when the output value of 1 or 2 is allocated to only one pass, the difference need only be absorbed by the output gradation correction process.
In addition to the method of the second embodiment described above, when the output value determination unit 340 partially allocates the total output value to a predetermined pass, the allocation procedure can be changed at a predetermined ratio according to the total output value, thereby more finely controlling the frequency at which a particular output value occurs.
As an example method of switching between different allocation procedures at a predetermined ratio according to the total output value, an explanation is given to a case in which 3-value print data is created. The 3-value print data can take one of output values 0, 1, 2.
When the total output value is 1, which is likely to occur in low density print areas, the total output value OS is allocated only to the pass with the greatest corrected input value, as in the preceding embodiment. That is, if C1>C2, the total output value OS is allocated only to the output value O1, i.e., O1=OS and O2=0; and if C1≦C2, the total output value OS is allocated only to the output value O2, i.e., O1=0 and O2=OS. A procedure of allocating all of the total output value only to a scan with the largest corrected input value is referred to as a first allocation mode.
When, on the other hand, the total output value is 2, which is likely to occur in high density print areas, the total output value OS is divided and distributed to passes according to the magnitudes of corrected input values C1, C2. That is, for a predetermined percentage of the total output values 2 that occur two or more times, each of them is equally divided and allocated to the passes. For the remaining percentage, the total output value 2 is wholly allocated to a pass having the largest corrected input value. In this manner the process of allocating the total output value OS is changed. For example, for 20% of the total output values 2 that occur two or more times, each of them is equally divided and allocated to the passes, i.e., O1=1 and O2=1. For the remaining 80%, when C1>C2, each of the total output values OS is wholly allocated only to the output value O1, i.e., O1=2 and O2=0; and when C1≦C2, each of the total output values OS is wholly given only to the output value O2, i.e., O1=0 and O2=2. This allocation procedure that distributes each of a predetermined percentage of the total output values to two or more passes such that the sum of the allocated values equals the total output value is referred to as a second allocation mode.
By switching at a predetermined ratio between the first allocation mode, that allocates the output level only to one pass, and the second allocation mode, that distributes the output level to two passes, the frequency at which a specific quantized value is created can be finely controlled. This enables ink dots to be arranged more appropriately according to the output characteristic of the printer in an allowable range of density variations caused by air flows and in an allowable range of variations in ink droplet ejection direction and ink droplet size and of printed area deviations among different passes.
In this example, when the output value is 2, the two allocation modes—one that divides and distributes the output level to two passes and one that allocates the output level only to one pass—are switched at a predetermined ratio. The switching method may involve counting the number of pixels having the output value of 2 and, based on the count value, switching between the two allocation modes. Another switching method may also be used which refers to random numbers and tables in switching between the two allocation modes. The switching method is not limited to those described above.
As described above, by switching between the two allocation modes at a predetermined ratio when the output value determination unit 340 allocates the total output value to the two passes, the frequency at which to output a specific quantized value can be more finely controlled. This enables dots to be arranged in a way that better matches the output characteristic of the printer, reducing density variations caused by air flows while executing a high-speed printing with a reduced number of passes, offering a unique combination of the high-speed printing and the improved quality of printed images.
In the above first to third embodiment, the output from the output value determination unit 340 is used, as is, as an output value for each pass, i.e., an output value of the multipass print data generation unit 204. It is also possible to switch between a mode in which the output from the output value determination unit 340 is used as an output value for each path and a mode in which a value, independently quantized for each pass from the corrected input value, is used as an output value for each pass.
The configuration shown in
In this example, a process of generating 3-value print data will be explained. The 3-value print data takes one of output values 0, 1, 2. In high density print areas, when the total output value OS from the total output value calculation unit 330 is 2, the switching unit 420 issues a switching signal for the output value selection unit 410 to select the second mode. When the total output value OS is other than 2 (i.e., 0, 1), the switching unit 420 gives a switching signal for the output value selection unit 410 to select the first mode. In the following, explanations about the processing by those components that are identical with those of FIG. 6—pass data dividing unit 300, adders 310, 311, 320, total output value calculation unit 330 and output value determination unit 340—will be omitted.
The corrected input values C1, C2 for two passes output from the adders 310, 311 are independently quantized by the output value calculation units 400, 401. The quantized output values O1-2, O2-2 are output to the output value selection unit 410. Explanations about the output value calculation units 400, 401 will be omitted as they perform the same processing as that of the total output value calculation unit 330 already described. The output values O1-1, O2-1 from the output value determination unit 340 are also given to the output value selection unit 410.
The output value selection unit 410, based on the switching signal from the switching unit 420, selects either the output values O1-1, O2-1 or the outputs O1-2, O2-2 as final output values O1, O2 for two passes. In this example, when the total output value OS is 2, the output values O1-2, O2-2 are chosen as the final output values O1, O2. When the total output value OS is 0 or 1, the output values O1-1, O2-1 are selected as the final output values O1, O2. The output values O1, O2 from the output value selection unit 410 will become an output from the multipass print data generation unit 204 and at the same time input to the error calculation units 350, 351. Other processing does not need explanation as they are similar to those of
As described above, when the total output value OS is 2, which is likely to occur in high density print areas, the output values O1-2, O2-2, that are independently quantized from the corrected input values C1, C2 for two passes, are selected as the final output values O1, O2 for two passes. This can minimize the effects that variations in ink droplet ejection direction and ink droplet size and print area deviations between two passes have on the density of printed image, as in the case of Japanese Patent Laid-Open No. 2000-103088. As in the preceding embodiments 1 to 3, the fourth embodiment can arrange dots in ways that are more suited to the output characteristics of the printer, which in turn allows for realizing high-speed printing with reduced number of passes.
In this embodiment, either the first or second mode of output allocation is selected according to the total output value OS. The method of selecting the allocation mode, however, may also be based on the corrected input values C1, C2 for two passes. There are other methods that may be used for switching between the first and second allocation mode, such as one that involves counting the number of pixels having a predetermined output value and switching between the first and second allocation mode at a ratio determined by that count and one that switches between the first and second mode at a ratio determined by referencing random numbers and tables. It is also noted that the allocation mode switching is not limited to these methods.
In the first embodiment, the total output value calculation unit 330 performs the quantization process by comparing a total corrected input value CS with a threshold. The total output value calculation unit 330, however, may also determine the total output value OS by referring to a lookup table that provides associations between the total corrected input value CS and the total output value OS.
In the preceding embodiments, the error data E1, E2 calculated by the error calculation units 350, 351 have been shown to be allocated and added only to the next pixel to be processed. These error data E1, E2, however, may be distributed to a plurality of neighboring pixels according to weighted coefficients that are empirically determined, as is done in the generally known error diffusion method. Furthermore, it is possible to change the weighted coefficients and thresholds used to distribute the error data E1, E2 according to the pixel positions and input data so as to produce slightly different quantization results among print areas of different passes.
As described above, by constructing the total output value calculation unit 330 and the error calculation units 350, 351 to slightly differentiate the quantization results among print areas of different passes, dot arrangement patterns in print areas of different passes can be made to hardly interfere with one another. This improves the quality of printed images.
The objective of this invention can be achieved by storing in a storage medium the program codes that realize the functions of the aforementioned embodiments and providing the storage medium to a system or apparatus. That is, the objective of this invention can be accomplished by a computer (or CPU or MPU) of the system or apparatus reading the program codes stored in the medium and executing them. In that case, the program codes read out from the storage medium realize the functions of the aforementioned embodiments, so the medium storing the program codes constitutes this invention.
The storage media in which to store program codes include, for example, flexible disks, hard disks, optical discs, magnetooptical discs, CD-ROMs, CD-Rs, magnetic tapes, nonvolatile memory cards, ROMs and DVDs.
The functions of the aforementioned embodiments can be achieved not just by the computer reading program codes and executing them. They can also be realized, for example, by causing an operating system (OS) running on the computer to execute a part or all of the actual processing. Further, the program codes that are read from the storage medium in the above example may be written into a function expansion board inserted in the computer or into a memory installed in a function expansion unit connected to the computer. In that case, the CPU on the function expansion board or function expansion unit executes a part or all of the actual processing according to instructions dictated by the written program codes to realize the functions of the aforementioned embodiments.
The processing done by the aforementioned embodiments may be shared by a plurality of devices (e.g., host computer and printing apparatus) or performed entirely by a single device. Furthermore, while in the aforementioned embodiments, the host device as an image processor has been shown to be separate from the printing apparatus, the image processor may be configured to be a printing apparatus with a printing unit.
While in the aforementioned embodiments the 2-pass printing has been taken up as an example, it is needless to say that this invention can also be applied to printing operations with three or more passes. Although the print data has been described to be 3-value data, it may have three or more values. When, for example, the print data has five values, the method of the first embodiment allocates all of the value “5” to one of the scans and the method of the second embodiment allocates the value “5” to two scans at a ratio of 2:3 or 3:2.
Ink droplets ejected from the print head are not limited to two kinds—large ink droplets and small ink droplets—but may have three different sizes of ink droplets. As long as the print head is configured to eject at least two different volumes of ink droplets (large and small ink droplets), the present invention can minimize the use of small ink droplets that are easily influenced by air flows, by executing the processing in the aforementioned embodiments.
The print head applicable to this invention may also include, in addition to an inkjet print head, a thermal head or other types of print head. The only requirement is that the print head be able to print images by forming a plurality of pixels on a print medium using a plurality of printing elements. Further, this invention can be applied widely to multipass printing with two or more passes.
While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.
This application claims the benefit of Japanese Patent Application No. 2010-057495, filed Mar. 15, 2010, which is hereby incorporated by reference herein in its entirety.
Number | Date | Country | Kind |
---|---|---|---|
2010-057495 | Mar 2010 | JP | national |