Method for reducing image artificiality by adjusting dot position for overlapped dots in a printer

An adjusting dot position method for overlapped dots in a printer is disclosed. The pixels of an image are first input. Then, it determines whether the pixel is an overlapped dot or not. If yes and a pixel on a left side is a blank dot, the magenta, cyan or yellow in the pixel is moved to the left side pixel. Then, it determines whether the pixel is an overlapped dot or not. If yes and a pixel on an upper side is a blank dot, the magenta, cyan or yellow dot in the pixel is moved to the upper side pixel.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to the technical field of a printer and, more particularly, to an adjusting dot position method for overlapped dots in a printer.

2. Description of Related Art

During a printing process of a conventional printer, due to the low sensitivity of the human eye, when a group of dots are closely arranged within a small area, the human eye cannot distinguish any difference among these dots but sees only an average reflection ratio of this group of dots. Therefore, by controlling the density of this group of dots, different color levels can be generated during the printing process, and typically a dithering method or an error diffusion method is used to determine the density.

However, the dithering method may cause a pattern effect that will result in unpleasant visual sense. Error diffusion can avoid this pattern effect to obtain higher visual qualities. However, mo matter the dithering method or the error diffusion method, the processed data are still comprising the overlapped phenomenon, it will yield unpleasant visual effect after printing the processed data. Therefore, the above conventional printing processes are desired to be improved.

SUMMARY OF THE INVENTION

The objective of the present invention is to provide an adjusting dots position method for overlapped dots in a printer that can reduce large density differences to achieve high quality printing.

To achieve the object, there is provided an adjusting dots position method for overlapped dots in a printer, the printer comprising a memory and three line buffers, an image to be printed being composed of pixels arranged in a two-dimensional array having a plurality of lines, wherein a pixel P(i, j) is in the i-th line and the j-th column, and a pixel P(i, j) is an overlapped dot which has at least two colors of magenta, cyan or yellow. The memory is used for storing the image to be printed. The three line buffers is coupled to the memory and used for temporarily storing three lines of pixels. The method comprises the steps of: (A) inputting the pixels of lines from the memory into the three line buffers; (B) determining whether the pixel P(i, j) in the three line buffers is an overlapped dot; if the pixel P(i, j) is an overlapped dot and a pixel on a left side is a blank dot, the magenta, cyan or yellow in the pixel P(i, j) is moved to the left side pixel in accordance with a first rule; (C) determining whether the pixel P(i, j) in the three line buffers is an overlapped dot; if the pixel P(i, j) is an overlapped dot and a pixel on a upper side is a blank dot, the magenta, cyan or yellow in the pixel P(i, j) is moved to the upper side pixel in accordance with a second rule; (D) outputting the first and the second line buffers; and (E) duplicating content in the third line buffer to the first line buffer and clearing the second and the third line buffers, and executing step (A) again.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

FIG. 1is a schematic diagram of an adjusting dot position method for overlapped dots in a printer in accordance with the present invention. The printer comprises a memory110and three line buffers120. An image130to be printed contains a plurality of pixels P(i, j) arranged in a two-dimensional array, wherein a pixel P(i, j) is in the i-th line and the j-th column. A pixel P(i, j) is said to be an overlapped dot when it has at least two colors of magenta, cyan or yellow. The memory110is used for storing the image130to be printed, and the three line buffers120are coupled to the memory and are used for temporarily storing three lines of pixels of the image130.

FIG. 2AandFIG. 2Bare flowchart of the adjusting dot position method for overlapped dots in a printer in accordance with the present invention. First, in step301, column pixels are input from the memory110and loaded into the three line buffers120.

In step305, it is determined whether the pixel P(i, j) in the three line buffers is an overlapped dot. If yes, step307is performed to further determine whether a pixel P(i, j−1) on the left side of pixel P(i, j) is a blank dot. If not, step315is performed. If the left side pixel P(i, j−1) is a blank dot, step309is performed.

In step309, it is determined whether the pixel P(i, j) and a second left pixel P(i, j−2) have the same color. If yes, step311is performed, which moves the same color in the pixel P(i, j) to the left side pixel P(i, j−1), and then step305is executed. As shown inFIG. 3, the pixel P(i, j) is an overlapped dot with magenta and cyan and the pixel P(i, j−1) is a blank dot. Because the second left pixel P(i, j−2) is a magenta dot, the magenta dot in the pixel P(i, j) is moved into the pixel P(i, j−1), which satisfies a gray level requirement in the error diffusion method. Furthermore, there will be no sudden color changes among these three pixels that would otherwise reduce the printing image quality.

In step309, if the pixel P(i, j) and the second left pixel P(i, j−2) do not have the same color, step313is performed. In step313, one color in the pixel P(i, j) is moved into the pixel P(i, j−1) in accordance with a prioritized ranking from cyan to magenta to yellow, and then the process returns to step305.

In step315, it determines whether a pixel P(i, j+1) on the right side of the pixel P(i, j) is a blank dot. If not, step323is performed. If yes, step317is performed.

In step317, it determines whether the second right pixel P(i, j+2) and the pixel P(i, j) have the same color or not. If yes, step319is performed, which moves the same color in the pixel P(i, j) to the right side pixel P(i, j+1), and then step305is executed. As shown inFIG. 4, the pixel P(i, j) is an overlapped point with magenta and cyan, the pixel P(i, j−1) is not a blank dot, the pixel P(i, j+1) is a blank dot and the second right pixel P(i, j+2) is a magenta dot. The magenta in the pixel P(i, j) is moved into the pixel P(i, j+1), which satisfies a gray level requirement in the error difflusion method. Furthermore, there are no sudden color changes among these three pixels that would otherwise reduce the printing image quality.

In step317, if the pixel P(i, j) and the second right pixel P(i, j+2) do not have the same color, step321is performed. In step321, one color in the pixel P(i, j) is moved into the pixel P(i, j+1) in accordance with a prioritized ranking from cyan to magenta to yellow, and then the process returns to step305.

In step327, it determines whether a pixel P(i+1, j) below the pixel P(i, j) is a blank dot or not. If not, it means that there is no blank pixel next to the pixel P(i, j) so that there is no color adjustment that can be performed, and then step331is performed. If the pixel P(i+1, j) is a blank dot, step329is performed. In step329, one color in the pixel P(i, j) is moved into the pixel P(i+1, j) in accordance with a prioritized ranking from cyan to magenta to yellow, and then the process returns to step305. As shown inFIG. 6, the pixel P(i, j) is an overlapped dot with magenta and cyan, the pixel P(i+1, j) is a blank dot, the pixel P(i−1, j), the pixel P(i, j+1) and the pixel P(i, j−1) are not blank dot, and the cyan in the pixel P(i, j) is moved into the pixel P(i+1, j).

In step331, it determines whether the pixels P(i, j) in the first line buffer and the second line buffer have all been processed. If any pixels P(i, j) have not been processed, step305is performed again. If all pixels P(i, j) in the first line buffer and the second line buffer have been processed, step333is performed. In step333, the processed first line buffer and the second line buffer are output. In step335, content in the third line buffer is duplicated into the first line buffer, the second and the third line buffers are emptied, and then step305is performed again.

In viewing of foregoing, it is known that the adjusting dot position method for overlapped dots in accordance with the present invention can achieve better printing qualities and avoid mixing of different colors, which would otherwise cause printing color mistakes and incorrect ink point shapes. The present invention also prevents one dot from being printed with another dot, or near an area with a significant different density.