WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Graphic data processing apparatus for producing a tone for an edge pixel and reducing aliasing effects    
United States Patent5386509   
Link to this pagehttp://www.wikipatents.com/5386509.html
Inventor(s)Suzuki; Hiroaki (Yokohama, JP); Ueda; Naofumi (Urayasu, JP)
AbstractA tone determining apparatus for determining tones of edge pixels of vector data, is especially suitable for use within an image forming apparatus of the type writing an image on a photoconductive drum by controlling a scanning beam by pulse width modulation (PWM). The tone determining apparatus involves dividing the edge pixels of the vector data, and then transforming the area of a trailing portion into a tone using a greater contribution ratio than a contribution ratio used when transforming the area of a leading portion, whenever the edge pixel is divided in a main scanning direction. The tone determining apparatus thus eliminates fine dots otherwise appearing at the leading portion, thus providing smoother edges.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Drawing from US Patent 5386509
Graphic data processing apparatus for producing a tone for an edge pixel

     and reducing aliasing effects - US Patent 5386509 Drawing
Graphic data processing apparatus for producing a tone for an edge pixel and reducing aliasing effects
Inventor     Suzuki; Hiroaki (Yokohama, JP); Ueda; Naofumi (Urayasu, JP)
Owner/Assignee     Ricoh Company, Ltd. (Tokyo)
Patent assignment
All assignments
Publication Date     January 31, 1995
Application Number     08/149,552
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     November 9, 1993
US Classification     345/501 345/613 382/269
Int'l Classification     G06F 015/20
Examiner     Powell; Mark R.
Assistant Examiner     Tung; Kee M.
Attorney/Law Firm     Popham, Haik Schnobrich & Kaufman, Ltd.
Address
Parent Case     This application is a continuation of U.S. Pat. application Ser. No. 07/659,559, filed Feb. 22, 1991now U.S. Pat. No. 5,299,308.
Priority Data     Feb 28, 1990[JP]2-19566 Jun 22, 1990[JP]2-165079 Jun 22, 1990[JP]2-165080 Jul 30, 1990[JP]2-202190 Jul 30, 1990[JP]2-202191 Nov 13, 1990[JP]2-306710
USPTO Field of Search     395/126 395/131 395/132 395/162 345/135 345/136 345/137 345/138 345/135 345/136 345/137 345/138 345/152 358/455 358/456 358/457 358/458 358/447 382/54
Patent Tags     graphic data processing tone edge pixel reducing aliasing effects
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
5126726
Howard
345/615
Jun,1992

[0 after 0 votes]
4908780
Priem
345/611
Mar,1990

[0 after 0 votes]
4847641
Tung
347/131
Jul,1989

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


What is claimed is:

1. A tone determining apparatus for determining tones of respective edge pixels, the tone determining apparatus especially suitable for use within an image forming apparatus which writes an image on a photoconductive drum by scanning a beam from left to right and uses pulse width modulation (PWM) to define areas of a higher tone, the tone determining apparatus comprising:

a dividing means for dividing the edge pixels into subpixels in accordance with a pixel dividing scheme, the pixel dividing scheme dividing each edge pixel into:

(A) one or more left subpixels adjacent a left side of each edge pixel, followed by

(B) one or more right subpixel adjacent a right side of each edge pixel; and

b) tone determining means for determining a tone of each edge pixel by using (A) a first contribution ratio for at least one right subpixel of the edge pixel and (B) a second contribution ratio used for at least one left subpixel of the edge pixel;

wherein:

1) the first and second contribution ratios determine how much the at least one right subpixel's tone contribution value and the at least one left subpixel's tone contribution value respectively contribute to the tone of the edge pixel; and

2) wherein the first contribution ratio is greater than the second contribution ratio, so that:

1) edge pixel, which are at a left edge of the area of the higher tone, are provided with a higher tone by broadened pulse widths; and

2) edge pixel, which are at a right edge of the area of the higher tone, are provided with a lower tone by narrowed pulse widths.

2. An apparatus as claimed in claim 1, wherein said tone determining means includes:

means for determining the tone of the edge pixel by using:

(1) a uniform averaging method among the subpixels, and

(2) a pixel dividing scheme which causes at least one of the right subpixels always to be smaller in area than at least one of the left subpixels.

3. An apparatus as claimed in claim 1, wherein said tone determining means includes:

means for determining the tone of the edge pixel by using a weighted averaging method which weights at least one right subpixel more than it weights at least one left subpixel.

4. An image forming apparatus, comprising:

I) a photoconductive drum;

II) scanning means for scanning a beam across the photoconductive drum from left to right; and

III) control means for using pulse width modulation (PWM) to control the scanning means to define areas of a higher tone on an image on the photoconductive drum, the image having left and right edges encountered by the scanning beam, the control means including:

a) dividing means for dividing edge pixels into subpixels in accordance with a pixel dividing scheme, the pixel dividing scheme dividing each edge pixel into:

(A) one or more left subpixels adjacent a left side of each edge pixel, followed by

(B) one or more right subpixels adjacent a right side of each edge pixel; and

b) tone determining means for determining a tone of each edge pixel by using (A) a first contribution ratio for at least one right subpixel of the edge pixel and (B) a second contribution ratio used for at least one left subpixel of the edge pixel;

wherein:

1) the first and second contribution ratios determine how much the at least one right subpixel's tone contribution value and the at least one left subpixel's tone contribution value respectively contribute to the tone of the edge pixel; and

2) wherein the first contribution ratio is greater than the second contribution ratio, so that:

1) edge pixels, which are at a left edge of the area of the higher tone, are provided with a higher tone by broadened pulse widths; and

2) edge pixels, which are at a right edge of the area of the higher tone, are provided with a lower tone by narrowed pulse widths.

5. An apparatus as claimed in claim 4, wherein said tone determining means includes:

means for determining the tone of the edge pixel by using:

(1) a uniform averaging method among the subpixels, and

(2) a pixel dividing scheme which causes at least one of the right subpixels always to be smaller in area than at least one of the left subpixels.

6. An apparatus as claimed in claim 4, wherein said tone determining means includes:

means for determining the tone of the edge pixel by using a weighted averaging method which weights at least one right subpixel more than it weights at least one left subpixel.
 Description Submit all comments and votes
 


BACKGROUND OF THE INVENTION

The present invention relates to a graphic data processing apparatus for removing the jags of edges included in vector data and, more particularly, to a graphic data processing apparatus for determining the tones (densities) of edge pixels of vector data and feeding the determined tones to a laser printer or similar output unit.

It is a common practice with computer graphics to execute antialiasing which allows an image to appear more attractive on a CRT (Cathode Ray Tube). Conventional approaches for implementing antialiasing include (1) an uniform averaging method, (2) a weighted averaging method (2) and (3) a convolutional integration method.

With the advance of so-called DTP (Desk Top Publishing) using a personal computer, systems of the type printing out vector images similar to those which are handled by the computer graphics art are extensively used today. Typical of such systems is one using Postscript of Adbi. Postscript belongs to a family of languages usually referred to as PDLs (Page Description Languages). PDL is a programming language for describing a form representative of the contents of one document including the text, graphics, and their arrangement and format. Regarding a character font, this type of system is implemented with a vector font. Hence, even when the text is changed in magnification, this system prints it out in far higher quality than a system which uses a bit map font (e.g. conventional word processor). Another advantage particular to the above-stated system is that both the character font and the graphics can be printed out in combination.

However, a laser printer applicable to such a system has a resolution which is not higher than 240 dpi to 400 dpi and, like CRT of computer graphics, suffers from alias. It is, therefore, necessary to provide even the laser printer type printing with an antialias implementation so as to produce high quality images.

When a conventional graphic data processing apparatus is implemented with antialiasing which uses N.times.N subpixel devision, it cannot achieve sufficient effects since it uses only moderate N from the standpoint of processing time and subjective evaluation of image quality. Specifically, excessively great N would increase the calculating time while excessively small N would limit the effect.

A conventional graphic data processing apparatus using the uniform averaging scheme uses only one kind of subpixel configuration such as N * M submatix in calculating the tone (luminance and density) of a pixel. This brings about a problem that, depending on the inclination of vector data, the tone produced from the actual image and the tone produced from the subpixel configuration greatly differ from each other, resulting in insufficient antialiasing.

A graphic data processing apparatus implemented by the weighted averaging scheme or the convolutional integration scheme is advantageous over the apparatus implemented by the uniform averaging scheme since it reduces the difference between the tone derived from the actual area and the tone derived from the subpixel configuration and thereby enhancing the antialiasing effect. Such an apparatus, however, consumes a substantial period of time in calculating the area ratio and, therefore, slows down the processing.

Moreover, in a graphic data processing apparatus provided with any one of the conventional antialiasing schemes, despite that a laser printer which outputs an image by electrophotographic process is substituted for CRT which plays the role of an output unit, the luminance of CRT is simply replaced with the density of the laser printer. This is undesirable since the characteristic particular to an electrophotographic process prevents the antialiasing effect from being fully exhibited.

SUMMARY OF THE INVENTION

It is therefore an object of the present invention to enhance the antialising effect.

It is another object of the present invention to produce a tone not greatly different from a tone derived from the actual area ratio without slowing down the processing.

It is another object of the present invention to insure the antialiasing effect by taking account of the characteristic of an electrophotographic process.

It is still another object of the present invention to prevent low-density dots ascribable to the characteristic of a pulse width modulation system from degrading the antialiasing effect, without reducing the processing rate.

It is a further object of the present invention to eliminate aliasing due to low-density dots without reducing the accuracy of antialiasing.

In accordance with the present invention, a graphic data processing apparatus for producing a tone of an edge pixel of vector data comprises a dividing section for dividing an edge pixel of vector data into subpixels, and a varying section for varying a configuration in which the dividing section divides an edge pixel.

Also, in accordance with the present invention, a graphic data processing apparatus for producing a tone of an edge pixel of vector data comprises a dividing section for dividing an edge pixel of vector data into subpixels, and a varying section for varying a size in which the dividing section divides an edge pixel into subpixels by approximating the vector data to a line vector and on the basis of an inclination of the line vector.

Further, a graphic data processing apparatus for determining a tone (density) of an edge pixel of vector data by dividing the edge pixel into subpixels and outputting the tone, the present invention selects, among a plurality of subpixel configurations, a particular subpixel configuration on the basis of whether or not a marginal point exists in the edge pixel, and divides the edge pixel divided into subpixels in the particuar subpixel configuration.

Yet, in accordance with the present invention, a graphic data processing apparatus for producing a tone of an edge pixel of vector data comprises a dividing section for dividing an edge pixel of vector data, and a tone determining section for transforming, when an edge pixel is divided in a left-and-right direction, the area of a right portion into a tone by a greater contribution ratio than the area of a left portion.

Furthermore, in accordance with the present invention, a graphic data processing apparatus for producing a tone of an edge pixel of vector data comprises a dividing section for dividing an edge pixel into subpixels, and a tone determining section for determining a tone of an edge pixel by dividing the edge pixel into a division region which is to be divided into subpixels and a non-division region which is not to be divided into subpixels and on the basis of the number of subpixels of the division region which are covered by an image.

In addition, in accordance with the present invention, a graphic data processing apparatus for producing a tone of an edge pixel of vector data comprises a dividing section for dividing an edge pixel of vector data into subpixels, a deciding section for determining, on the basis of an inclination of vector data traversing an edge pixel and the kind of an edge, which of upper, lower, left and right portions of the edge pixel an image to be painted is positioned, storing means for storing a first, a second, a third and a fourth weighting filter to be used when the image to be painted is positioned in the upper portion, lower portion, right portion, and left portion of the edge pixel, respectively, and a tone determining section for determining a tone of the edge pixel by selecting, on the basis of the result of decision by the deciding means, one of the first to fouth weighting filters matching the result of decision.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objects, features and advantages of the present invention will become more apparent from the following detailed description taken with the accompanying drawings in which:

FIGS. 1A and 1B show conventional antialiasing;

FIGS. 2A and 2B how antialiasing implemented by a uniform averaging scheme;

FIGS. 3A and 3B show antialiasing using a weighted averaging scheme;

FIGS. 4A to 4D show specific filters applicable to the weighted averaging scheme;

FIG. 5 shows a convolutional integration scheme using a 3.times.3 pixel division;

FIGS. 6A and 6B and 7A to 7D indicate problems particular to conventional antialising;

FIG. 8 is a block diagram schematically showing a first embodiment of the image forming system in accordance with the present invention;

FIG. 9 is a block diagram schematically showing a specific construction of a PDL controller included in the embodiment;

FIGS. 10A and 10B, 11 and 12A to 12C show the principle of the embodiment;

FIG. 13 is a flowchart demonstrating a specific operation of the embodiment;

FIGS. 14 and 15 each shows the operation of the embodiment;

FIGS. 16A to 16F show antialiasing Particular to a second embodiment of the present invention;

FIG. 17 is a block diagram schematically showing the second embodiment;

FIG. 18 is a block diagram schematically showing a specific construction of a PDL controller included in the second embodiment;

FIG. 19A is a flowchart representative of a specific operation of the PDL controller;

FIG. 19B shows a procedure for painting a path;

FIG. 19C is a flowchart representative of antialiasing processing;

FIGS. 20A and 20B indicate the division of a figure into line vectors;

FIG. 21 shows tones undergone antialiasing processing;

FIGS. 22A to 22D how Y, M, C and BK image data written to plain memory sections of a page memory;

FIG. 23 is a block diagram schematically showing a control system of a multi-level color laser printer;

FIG. 24 is a section showing a specific construction of the laser printer;

FIGS. 25A and 25B show a specific construction of a yellow recording unit;

FIGS. 26A to 26D show multi-level drive using pulse width modulation;

FIG. 27 shows various latent images each being associated with a particular pulse width modulation level; FIG. 28 shows a toner image representative of a square ABCD shown in FIG. 20A;

FIG. 29A to 29D show antialiasing particular to a third embodiment of the present invention;

FIGS. 30A and 30B show the division of a figure into line vectors;

FIG. 31 is a flowchart demonstrating antialiasing particular to the third embodiment;

FIG. 32 shows tones produced by the processing particular to the third embodiment;

FIGS. 33A to 33D show Y, M, C and BK image data written to plain memory sections of a page memory in the third embodiment;

FIG. 34 shows a toner image representative of a pentagon ABCDE shown in FIG. 30A;

FIG. 35 shows a toner image representative of the pentagon ABDCE and produced by the conventional subpixel division;

FIGS. 36A to 36E show antialiasing particular to a fourth embodiment of the present invention;

FIG. 37 is a flowchart demonstrating the processing of the fourth embodiment more specifically;

FIG. 38 shows tones undergone the processing of FIG. 4;

FIGS. 39A to 39D show Y, M, C and BK image data written to plain memory sections of a page memory in the fourth embodiment;

FIG. 40 shows a toner image representative of the pentagon ABCDE shown in FIG. 30A;

FIGS. 41A to 41F show antialiasing particular to a fifth embodiment;

FIG. 42 is a flowchart demonstrating the antialiasing of the fifth embodiment more specifically;

FIG. 43 shows tones resulted from the processing particular to the fifth embodiment;

FIGS. 44A to 44D show Y, M, C and BK image data written to plain memory sections of a page memory in the fifth embodiment; and

FIG. 45 shows a toner image representative of the pentagon ABCDE shown in FIG. 30A.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

To better understand the present invention, conventional graphic data processing technologies will be described.

FIG. 1A shows a specific image appearing on CRT for computer graphics and having jagged edges (generally referred to as "alias"), while FIG. 1B shows the image whose alias has undergone luminance modulation to appear smoother and more attractive. Antialiasing approaches available with conventional graphic data processing are (1) uniform averaging, (2) weighted averaging, and (3) convolutional integration, as stated earlier.

The averaging scheme decomposes each pixel into N * M (both being natural numbers) subpixels, effects raster calculation at high resolution, and then determines the luminance of each pixel by averaging the N * M subpixels. A reference will be made to FIGS. 2A and 2B for describing the uniform averaging scheme specifically. As shown, assume that the edge of of an image traverses a certain pixel (in the figure, the image extends rightward and downward from the oblique line). Then, if antialiase processing is not executed, the maximum displayable luminance (e.g. kid=255 in the case of 256 tones) is assigned to the pixel of interest, as shown in FIG. 2A. When N=M=7 averaging, for example, is used to implement antialiasing, the pixel of interest is divided into 7 * 7 subpixels, as shown in FIG. 2B. The subpixels in which the image exists are counted. The number of such subpixels (twenty-eight) is divided by the total number of subpixels (forty-nine in this case) for standardization (averaging). The maximum luminance (255) is multiplied by the result of division to produce a luminance of the pixel of interest. In this manner, this particular approach determines the luminance of a pixel by taking account of how the image is associated therewith.

The weighted averaging approach is a modified version of the uniform averaging approach. While the uniform averaging scheme treats all the subpixels of a single pixel by using the same weight, i.e. , it simply counts the subpixels covered by an image, the weighted averaging approach assigns a particular weight to each subpixel so that the influence on the luminance kid may depend on which subpixels are covered by an image. The weights are provided by a filter. FIG. 3A shows a specific filter (here, cone filter) characteristic for implementing the weighted averaging scheme. Assume that the weighted averaging scheme is executed with the image data shown in FIG. 2A and by using the N=M=7 division. The weights of the filter are applied to corresponding subpixels which constitute a single pixel. For example, the subpixel positioned at the upper right corner is "2". When all the subpixels are covered by an image, the weight provided by the filter characteristic is the count of a subpixel. FIG. 3B shows a displayed image pattern which is associated with the different weights of the subpixels shown in FIG. 3A. In this case, 199 subpixels are covered by an image. The number of such subpixels is divided by the sum of the values of the filter (here 336) as in the uniform averaging scheme, and the maximum luminance is multiplied by the result of division produce the luminance of the pixel of interest. FIGS. 4A to 4D show specific filters for implementing the above procedure.

The convolution integration scheme determines the luminance of a given pixel while referencing surrounding pixels. Specifically, this scheme considers N'.times.N' pixels next to and surrounding a pixel whose luminance should be determined as pixels which correspond to those of the uniform averaging scheme or the weighted averaging scheme. FIG. 5 shows the convolutional integration scheme which references 3.times.3 pixels by way of example. In the figure, the pixel whose luminance should be determined is designated by the reference numeral 2901. An image extends rightward an downward from the oblique line, and smeared subpixels are counted. Each pixel is divided into a 4 * 4 matrix. In this case, therefore, use is made of a 12 * 12 filter. This kind of method is successful in removing high-frequency components from a vector image.

The antialiasing method using the N.times.N subpixel matrix has a problem left unsolved when applied to a conventional graphic data processing apparatus, as follows. Namely, excessively great N would increase the calculating time while excessively small N would limit the antialiasing effect. Customarily, therefore, moderate N is selected by considering the processing time as well as the subjective evaluation of image quality. A conventional graphic data processing apparatus implemented by the uniform averaging method uses only one kind of subpixel configuration (e.g. N * M submatrix) in calculating a tone (luminance and density). This is undesirable in that depending on the inclination of vector data, the tone derived from the actual area and the tone derived from the subpixel configuration greatly differ from each other, resulting in insufficient antialiasing. Specifically, when the inclination of vector data is nearly vertical or nearly horizontal, the N * M submatrix is apt to produce a tone different from the actual area ratio. Assume a 3* 3 submatrix and an edge pixel which vector data traverses with a nearly vertical inclination, as shown in FIGS. 6A and 6B. Then, the probability that, among tones "0" to "9", tons "1" and "2" are produced is small while the probability that tons "3", "6" and "9" are produced is great. As a result, the tone derived from the actual area ("4", FIG. 6B) noticeably differs from the tone ("6", FIG. 6A) derived from the subpixel configuration, whereby the expected antialiasing effect is not achievable.

A graphic data processing apparatus using the weighted averaging scheme or the convolutional integration scheme reduces the difference between the tone derived from the actual area and the tone derived from the submatrix and thereby enhances the antialiasing effect, compared to the apparatus implemented by the uniform averaging method. However, such an apparatus increases the area ratio calculating time and thereby lowers the processing rate.

Moreover, in a graphic data processing apparatus implemented by any one of the conventional antialiasing schemes, despite that CRT is replaced with a lasr printer which outputs an image by an electrophotographic process, the luminance of CRT is simply replaced with the tone of the laser printer. In this condition, the antialiasing effect is not always attainable due to the characteristic of the electrophotoraphic process. Assume that a vector image shown in FIG. 7A is subjected to antialias processing to produce tones shown in FIG. 7B (tones "0" to "9" in the figure). When the resulted tones are displayed on CRT as luminances, an image as smooth as a vector image appears on the CRT due to the antialiasing effect, as shown in FIG. 7C. However, when the tones shown in FIG. 7B are used as densities and the output of a laser beam is adjusted by pulse width modulation to form a latent image, the density decreases at the left end (left edge) of the latent image and increases at the right end (right) edge of the same, as shown in FIG. 7D. This degrades the advantage particular to antialiasing and is ascribable to the fact that in the case of pulse width modulation a dot is formed by a laser beam whose duration (pulse width) depends on a tone and whose reference point is the left end of a pixel. As a result, the lower the tone of a dot, the farther the position of dot as measured from the position of an actual image. This not only prevents an image having tones resulted from antialiasing (see FIG. 7B) from being reproduced faithfully but also makes jaggs conspicuous.

Preferred embodiments of the graphic data processing apparatus in accordance with the present invention will be described hereinafter.

Embodiment 1

An image forming system incorporating a first embodiment of the present invention which is implemented as a PDL (Desk Top Publishing) controller will be described. The system forms an image by transforming vector data described in PDL (Page Description Language) and outputted by PDL into image data by the PDL controller.

As shown in FIG. 8, the image forming system has a host computer 100 for generating a document described in PDL (postscript language in the embodiment). A PDL controller (graphic data processing apparatus of the invention) 200 receives PDL from the host computer 100 page by page and develops it into black (BK), yellow (Y) , magenta (M) and cyan (C) multi-level image data while executing antialias processing. A multi-level color laser printer 300 prins out the multi-level image data outputted by the PDL controller 200. A system controller 400 controls the operation of the laser printer 300.

FIG. 9 shows a specific construction of the PDL controller 200. As shown, the PDL controller 200 has a receiving unit 201 for receiving PDL fed from the host computer 100. A CPU 202 controls the storage of the received PD1 and executes various kinds of processing such as antialias processing. The reference numeral 203 designates an internal bus. A RAM 204 stores PDL transferred thereto from the receiving unit 201 over the bus 203. A ROM 205 stores an antialiasing program and other programs thereon. A page memory 206 stores multi-level Y, M, C and BK image data undergone antialias processing. A transmitting unit 207 transfers the Y, M, C and BK image data from the page memory 206 to the laser printer 300. An I/O (Input/Output) interface 208 interfaces the PDL controller 200 to the system controller 400. Subpixel varying means 208 is also connected to the bus 203. The CPU 202 stores PDL received by the receiving unit 201 in the RAM 204 via the system bus 203 according to the program stored in the ROM 205. On storing one page of PDL in the RAM 204, the CPU 202 executes an antialiasing procedure with the graphic element having been stored in the RAM 204 and thereby stores multi-level Y, M, C and BK image data in plain memory sections included in the page memory 206. The page memory 206 has a feature data memory section in addition to Y, M, C and BK plain memory sections. Afterwards, the data in the page memory 206 is fed to the laser printer 300 via the transmitting unit 207.

FIGS. 10A and 10B each shows part of, i.e., one pixel G of imgae data stored in the page memory 206. Specifically, FIG. 10A presents a case wherein the pixel G is divided into 4 * 4 subpixels S1 and four of the sixteen subpixels S1 are painted. FIG. 10B presents a case wherein the pixel G is divided into eight subpixels in the vertical direction and two pixels in the horizontal direction and three of the sixteen subpixels S2 are painted. The pixel shown in FIG. 10A has a luminance of 25% while the pixel shown in FIG. 10B has a luminance of 18.75% Since the real area of the hatched portion is 12.5%, dividing the pixel into different numbers of segments in the vertical and horizontal directions is sometimes higher in accuracy despite the same number of subpixels. In the light of this, as shown in FIG. 11, zones A, B and C are defined in matching relation to the inclination of the line to the x and y axes. As shown in FIG. 12A to 12C, 4 * 4 subpixels S1, 2 * 8 subpixels S3, and 8 * 2 subpixels S2 are assigned to the zones A, B and C, respectively. This is successful in enhancing accurate antialias processing.

A specific operation of the PDL controller 200 will be described with reference to FIG. 13. First, the coordinates representative of the start and end points of lines such as those shown in FIGS. 10A, 10B and 11 and the inclinations obtainable from the coordinates are stored in the RAM 204 as table data beforehand. Assume that graphic data D.sub.oo shown in FIG. 14 has been stored in the page memory 206. Then, the position of the start line L which is O and the position of the end line L which is E are respectively coincident with the Y axis of points e.sub.o (X.sub.o, Y.sub.o) and e.sub.2 (X.sub.2, Y.sub.2) of the graphic data D.sub.oo. Hence, the Y coordinate of the start L=0 of the graphic data D.sub.oo is read (step S601), and then curved edges are subjected to linear approximation (S602). It is to be noted that term "linear approximation" refers to processing which, as shown in FIG. 15, represents a curve RL by a set of lines DL. The coordinates of the start and end points of the so approximated line and the inclination produced from the two coordinates are stored as table data (S603). When the subpixel varying means 209 processes each line L, the inclination of the approximated line is determined on the basis of the table data and the table data which is stored in the RAM 204 beforehand. Next, the zone to which the obtained inclination belongs is determined (S604), and then the sizes of the subpixels S1, S2 and S3 are determined (S605). Subsequently, scan line conversion is executed in each of the subpixels S1, S2 and S3 in matching relation to the inclination of the approximated line (S606). Then, a luminance is calculated on the basis of the number of painted pixels S1, S2 and S3 (S607) and written as pixel luminance data (S608 ). Such procedure is repeated from L=0 to L=E (S609 and S610).

As stated above, the embodiment changes the size in which a pixel is divided into subpixels, on the basis of the inclination of an approximated line. This allows the subpixel size for the calculation of a pixel luminance to be changed in matching relation to the inclination of an approximated line. As a result, more effective and accurate antialiasing is achievable with the variable subpixel size than with a fixed subpixel size, enhancing the quality of a resultant image.

Embodiment 2

An image forming system having a PDL controller which is implemented by the graphic processing apparatus will be described hereinafter.

(1) Outline of Antialiasing

Referring to FIGS. 16A to 16C, three different subpixel configurations (referred to as "submatrixes" hereinafter) applicable to this embodiment are shown. Specifically, FIGS. 16A to 16C show respectively a 1 * 9 submatrix applicable to a vector data inclination .theta. which is tan .theta.>9/2 (i.e. 77.47.degree.>.theta.>102.53.degree.), a 9 * 1 submatrix applicable to a vector data inclination .theta. which is 2/9>tan .theta.>-2/9 (e.g. 12.53.degree.>.theta.>-12.53.degree.), and a 3 * 3 submatrix applicable to the other vector data inclinations .theta.. When a marginal point (start or end of vector data) exists in an edge pixel, the embodiment uses the submatrix of FIG. 16C since the inclination .theta. of the vector data cannot be determined unconditionally. For example, when the inclination .theta. of the vector data is tan .theta.>9/2 and, therefore, nearly vertical, tone "4" is produced by use of the 1 * 9 submatrix and the division shown in FIG. 16D. On the other hand, when the conventional method (3 * 3 submatrix) is used to determined a tone of the same edge pixel, tone "6" is obtained, as shown in FIG. 16E. As a result, the tone resuled from the 1 * 9 submatrix is closer (or equal) to the actual tone than the 3 * 3 submatrix. When a maginal point exists in an edge pixel, a tone is determined by the 3 * 3 submatrix, as shown in FIG. 16F.

The processing described above executes decision on the basis of the inclination .theta. readily obtainable from the vector data of an edge pixel and whether or not a marginal point exists. Regarding which subpixels the vector data traverses, the above processing uses the same decision principle as the conventional processing. Hence, the processing rate is substantially the same as the rate particular to the conventional uniform averaging scheme. Stated another way, the processing speed is far higher than the processing speed achievable with the weighted averaging scheme and convolutional integration scheme.

(2) Block Diagram of Image Forming System

The illustrative embodiment transforms vector data described in PDL and outputted by DTP into image data via the PDL controller. The system construction of the embodiment will be described with reference to FIG. 17.

The image forming system has a host computer 100 for generating a document described in PDL (postscript language in the embodiment). A PDL controller (graphic data processing apparatus of the invention) 200 receives PDL from the host computer 100 page by page and develops it into black BK, Y, M, and cyan C multi-level image data while executing antialias processing. A multi-level color laser printer 300 prins out the multi-level image data outputted by the PDL controller 200. A system controller 400 controls the operation of the laser printer 300.

(3) Construction and Operation of PDL Controller

FIG. 18 shows a specific construction of the PDL controller 200. As shown, the PDL controller 200 has a receiving unit 201 for receiving PDL fed from the host computer 100. A CPU 202 controls the storage of the received PID1 and executes various kinds of processing such as antialiasing. The reference numeral 203 designates an internal bus. A RAM 204 stores PDL transferred thereto from the receiving unit 201 over the bus 203. A ROM 205 stores an antialiasing program and other programs thereon. A page memory 206 stores multi-level Y, M, C and BK image data undegone antialias processing. A transmitting unit 207 transfers the Y, M, C and BK image data from the page memory 206 to the laser printer 300. An I/O (Input/Output) interface 208 interfaces the PDL controller 200 to the system controller 400. The CPU 202 stores PDL received by the receiving unit 201 in the RAM 204 via the system bus 203 according to the program stored in the ROM 205. On storing one page of PDL in the RAM 204, the PUC 202 executes an antialiasing procedure with the graphic element having been stored in the RAM 204 and thereby stores multi-level Y, M, C and BK image data in plain memory sections included in the page memory 206. The page memory 206 has a feature data memory section in addition to Y, M, C and BK plain memory sections. Afterwards, the data in the page memory 206 is fed to the laser printer 300 via the transmitting unit 207.

Referring to FIG. 19A, a specific operation of the CPU 202 included in the PDL controller 200 will be described. Receiving PDL page by page from the host computer 100, the PDL controller 200 develops it into BK, Y, M and C color image data while subjecting it to antialias processing. Regarding PDL, both the graphics and texts are described in vector data, and image data are dealt with on a page basis. One page is made up of more than one paths each having one or a plurality of elements (graphic and text elements).

On receiving PDL, the CPU 202 determines whether or not the element is a curve vector and, if it is a curve vector, approximates it to a line vector and then registers it in a working area as a line. The CPU 202 repeats this operation with all of the graphic and text elements included in one path to register resulted lines in the working area on a path basis (processing 1). Subsequently, the CPU 202 sorts the lines registered in the working area with respect to the start y axis of the line (processing 2). Then, the CPU 202 paints the path by scanning lines while updating the y axis (processing 3). In this embodiment, the term "scanning line" refers to a line whose thickness is less than one pixel, as distinguished from a one-pixel scanning line having a thickness corresponding to one pixel. For example, when a path shown in FIG. 19B is to be painted, the CPU 202 registers the elements located at the sides which a scanning line yc traverses and the real numerical values of the x coordinates traversing the scanning line yc (x.sub.1, x.sub.2, x.sub.3 and x.sub.4, FIG. 19B) in AET (Active Edge Table). Since the elements are registered in the working area in the order in which they have been registered by the processing 1, the x coordinates crossing the scanning line yc are not always registered in the increasing order. For example, assuming that the line which the scanning line yc and the coordinate x.sub.3 traverse has been processed by the processing 1 first, then x.sub.3 is registered in AET first as an x coordinate. Therefore, after the registration in AET, the elements of the individual sides registered in AET are sorted in x coordinate in the increasing order. Two elements as counted from the smallest x coordinate are paired, and then the space between the two elements is painted (specifically, painting by a one-pixel scanning line defined by nearby scanning lines yc and yc+1). In the event of such painting, antialiasing is implemented by adjusting the density of each edge pixel in conformity to the area ratio. The processed side is removed from AET, and then the scanning line or y axis is updated. The CPU 202 repeats this sequence of steps until it process all of the sides registered in AET, i.e., all of the elements constituting one path.

The CPU 202 executes the consecutive processing 1, 2 and 3 on a path basis and repeats them until it reaches the last path of one page.

FIG. 19C shows a specific sequence of steps representative of antialias processing which is executed during the painting procedure, i.e. processing 3. Assume that a square ABCD shown in FIG. 20A is inputted during the processing 1, FIG. 19A. The square ABCD has the following elements:

(a) four line vectors AB, BC, CD and DA (real number notation)

(b) colors and luminances in the square

As shown in FIG. 20B, the square ABCD is divided into five line vectors extending in the main scanning direction (real number notation). In the embodiment, data is added to the start and end points of each of the five line vectors, as follows:

(c) coordinates of the start point of the vector elements (above-mentioned (a)) which define the start and end points of the line vector (real number notation)

(d) inclination of the vector elements which define the start and end points of the line vector

(e) features of the start and end points of the line vector (right and left edges, apexes, lines thinner than one dot, crossing points of lines, etc).

When an edge pixel is detected during the painting procedure, the antialias processing shown in FIG. 19C is executed.

Specifically, at the beginning of the subpixel painting process, whether or not a marginal point of vector data exists in an edge pixel is determined. If the answer of the decision is positive, the pixel is subdivided into subpixels by use of the 3 * 3 submatrix shown in FIG. 16C so as to determine subpixels which should be painted. If the answer of the decision is negative, the inclination 0 of the vector data is determined. Then, the pixel is divided into subpixels by use of the 1 * 9 submatrix if tan .theta.>9/2 (see FIG. 16A), by use of the 9 * 1 submatrix if 2/9 >tan .theta.>-2/9 (see FIG. 16B), or by use of the 3 * 3 submatrix if otherwise (see FIG. 16B). This is also followed by the step of determining subpixels which should be painted (S1201). Such a procedure is repeated with all of the vectors which cross the scanning line (S1202 ). Subsequently, the tones (densities) of the individual pixels are calculated, the first pixel on the scanning line being first (S1203). This is followed by overwriting processing for calculating the tones (densities) of the individual colors (BK, R, G and B) of the figure (S1204), although not described specifically. Afterwards, the tones of the individual colors are written to the page memory by a conventional procedure (S1205). The steps S1203 to S1205 are repeated with all of the pixels defining one line (S1206).

The CPU 202 executes the above-stated iterative sequence of steps to the last pixel of the scanning lines (y axis) while updating the previously mentioned content (c) by the data of (d). FIG. 21 shows the tones k of the square ABCD, FIG. 20A, having been produced by the antialias processing. The tones k are developed into BK, Y, M and C images by predetermined Y, M, C and BK transform processing on the basis of the colors and luminances in the figure (data (b)), and then written as image data to the associated plain memory sections of the page memory 206. Regarding the Y, M, C and BK transform processing, the embodiment has a Y, M, C and BK transform program as software, although not shown or described specifically. FIGS. 22A to 22D show BK, C, M and Y data resulted from a relation C:M:Y=1:0.5:0.3 and 100% UCR (Undercolor Removal).

(4) Construction and Operation of Laser Printer

Referring to FIG. 23, the multi-color laser printer 300 has a developing section 301 for uniformly charging the surface of a photoconductive drum which will be described, exposing the charged surface by a laser beam to form a latent image, developing the latent image by a toner, and then transferring the resulted toner image to a recording medium. Specifically, the developing section 301 has a BK developing and transferring section 301 bk, a C developing and transferring section 301c, an M developing and transferring section 301m, and a Y developing and transferring section 301y assigned to BK data, C data, M data and Y data, respectively, as will be described in detail later. A laser driving section 302 receives 5-bit Y, M, C and BK data, i.e., image density data from the PDL controller 200 and, in response, outputs a laser beam. The laser driving section 302 has buffer memories 303y, 303m and 303c to which the 5-bit Y, M and C data are respectively applied, laser diodes 304y, 304m, 304c and 304bk for emitting laser beams associated respectively with the Y, M, C and BK data, and drivers 305y, 305m, 305c and 305bk for driving respectively the laser diodes 304y, 304m, 304c and 304bk. The BK developing and transferring section 301bk, laser driving section 202, laser diode 304bk and driver 305bk will be referred to as a BK recording unit BKU collectively hereinafter (see FIG. 24). Likewise, the combination of the C developing and transferring unit 301c, laser diode 304c, driver 305c and buffer memory 303c will be called a C recording unit CU (see FIG