WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Apparatus for converting character outline data into dot-matrix data for display or printing    
United States Patent5473709   
Link to this pagehttp://www.wikipatents.com/5473709.html
Inventor(s)Aoki; Kazuma (Kasugai, JP)
AbstractAn apparatus for producing dot-matrix data from outline data defining an original outline of an image in an X-Y coordinate system, including a first transforming device transforming, according to transformation data, first interval data defining original intervals regarding the X and/or Y axis, into second interval data defining transformed intervals; a correcting device correcting the second interval data into third interval data defining corrected intervals; a determining device determining, based on the first and third interval data, a transformation function for each of at least one original interval; a second transforming device transforming original or first outline data into second outline data defining a transformed outline, the first outline data including original sets of x and y coordinates defining the original outline, the second outline data including transformed sets of x and y coordinates defining the transformed outline, the second transforming device transforming the x and/or y coordinate of at least one original set of x and y coordinates within each of at least one original interval, into the x and/or y coordinate of at least one transformed set of x and y coordinates within a corresponding one of the corrected intervals, according to the transformation function for the each original interval; and a producing device producing the dot-matrix data from the second outline data.
   














 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 5473709
Apparatus for converting character outline data into dot-matrix data for

     display or printing - US Patent 5473709 Drawing
Apparatus for converting character outline data into dot-matrix data for display or printing
Inventor     Aoki; Kazuma (Kasugai, JP)
Owner/Assignee     Brother Kogyo Kabushiki Kaisha (Nagoya, JP)
Patent assignment
All assignments
Publication Date     December 5, 1995
Application Number     08/270,251
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     July 5, 1994
US Classification     382/258 345/170 345/468 345/472 345/947 382/301
Int'l Classification     G06K 009/36 G06F 015/62
Examiner     Boudreau; Leo H.
Assistant Examiner     Bella; Matthew C.
Attorney/Law Firm     Oliff & Berridge
Address
Parent Case    
Priority Data     Jul 15, 1993[JP]5-175184
USPTO Field of Search     382/55 382/47 382/44 382/266 382/258 382/267 382/268 382/301 395/151 395/150 345/128 345/141 345/143
Patent Tags     converting character outline data into dot-matrix data for display printing
   
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
5319358
Martinez
345/469
Jun,1994

[0 after 0 votes]
5313573
Takahama
345/467
May,1994

[0 after 0 votes]
5309554
Ito
345/170
May,1994

[0 after 0 votes]
5241653
Collins
345/668
Aug,1993

[0 after 0 votes]
5050228
Yoshida
382/256
Sep,1991

[0 after 0 votes]
4897638
Kokunishi
345/472.3
Jan,1990

[0 after 0 votes]
4675830
Hawkins
345/666
Jun,1987

[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. An apparatus for producing dot-matrix data from outline data defining at least one original outline of an alpha-numeric character or other symbol in an image in a two-dimensional coordinate system provided by an X axis and a Y axis perpendicular to each other, comprising:

first transforming means for transforming, according to transformation data, first interval data defining a plurality of original intervals with respect to at least one of said X axis and said Y axis, into second interval data defining a plurality of transformed intervals with respect to said at least one of said X axis and said Y axis;

correcting means for correcting, according to a first predetermined rule, said second interval data into third interval data defining a plurality of corrected intervals with respect to said at least one of said X axis and said Y axis;

transformation-function determining means for determining, based on said first interval data and said third interval data, a transformation function for each of at least one of said original intervals defined with respect to said at least one of said X axis and said Y axis;

second transforming means for transforming first outline data as said outline data, into second outline data defining at least one transformed outline of said image, said first outline data comprising a plurality of original sets of x and y coordinates which cooperate with each other to define said original outline of said image, said second outline data comprising a plurality of transformed sets of x and y coordinates which cooperate with each other to define said transformed outline of said image,

said second transforming means transforming at least one of (a) an x coordinate and (b) a y coordinate of at least one said original set of x and y coordinates within said each of said at least one of said original intervals defined with respect to said at least one of (a) said X axis and (b) said Y axis, into at least one of (a) an x coordinate and (b) a y coordinate of at least one said transformed set of x and y coordinates within a corresponding one of said corrected intervals, according to said transformation function determined for said each original interval;

dot-matrix data producing means for producing said dot-matrix data from said second outline data according to a second predetermined rule, said dot-matrix data comprising a plurality of sets of inside data substantially defining an image area within said transformed outline of said image defined by said second outline data, and a plurality of sets of outside data substantially defining an outside area outside of said transformed outline of said image; and

presentation means for presenting said dot-matrix data to an observer corresponding to the alpha-numeric character or other symbol in the image.

2. An apparatus according to claim 1, wherein said presentation means comprises a printing device which records, on a recording medium, said image according to said dot-matrix data comprising said sets of inside data and said sets of outside data defining picture elements of the image to be recorded on the recording medium.

3. An apparatus according to claim 1, further comprising a dot-matrix data memory which stores said dot-matrix data.

4. An apparatus according to claim 1, further comprising an original-data memory which stores at least one of said first outline data and said first interval data, said first outline data defining at least one original outline of a character as said image, said original sets of x and y coordinates of said first outline data comprising at least one of (a) a set of x and y coordinates defining an end point of a straight line as a portion of said original outline, and (b) a plurality of sets of x and y coordinates defining at least one control point and an end point of a Bezier curve as a portion of said original outline.

5. An apparatus according to claim 1, further comprising an input device which is operable for inputting at least one of (a) said transformation data and (b) at least one character code corresponding to at least one set of character data as said first outline data and said first interval data for at least one character as said image.

6. An apparatus according to claim 5, further comprising a parameter memory which stores said at least one of (a) said transformation data and (b) said at least one character code, (a) said transformation data comprising at least one of (a1) size-related data relating to a size of said image with respect to said at least one of said X axis and said Y axis and (a2) a translation value indicative of a parallel-translation amount of said image with respect to said at least one of said X axis and said Y axis.

7. An apparatus according to claim 6, wherein said parameter memory stores (a) said transformation data including said (a1) size-related data comprising a size value indicative of said size of said image with respect to said at least one of said X axis and said Y axis.

8. An apparatus according to claim 1, further comprising reading means for reading at least one of said first outline data, said first interval data, and said transformation data.

9. An apparatus according to claim 1, wherein said first interval data comprise at least one of (a) x position data including one original x coordinate out of said original sets of x and y coordinates, (b) x spacing data including two original x coordinates out of said original sets of x and y coordinates, (c) y position data including one original y coordinate out of said original sets of x and y coordinates, and (d) y spacing data including two original y coordinates out of said original sets of x and y coordinates.

10. An apparatus according to claim 9, wherein said first transforming means comprises linear transformation means for transforming at least one, v, of (a) said one original x coordinate as said x position data, (b) said two original x coordinates as said x spacing data, (c) said one original y coordinate as said y position data, and (d) said two original y coordinates as said y spacing data, of said first interval data, into said second interval data comprising at least one, v', of (a) one transformed x coordinate corresponding to said one original x coordinate, (b) two transformed x coordinates corresponding to said two original x coordinates, (c) one transformed y coordinate corresponding to said one original y coordinate, and (d) two transformed y coordinates corresponding to said two original y coordinates, according to a linear function, v'=Z.times.v+T, defined by said transformation data comprising a transformation coefficient, Z, with respect to said at least one of said X axis and said Y axis and a constant, T, with respect to said at least one of said X axis and said Y axis.

11. An apparatus according to claim 10, wherein said linear transformation means transforms said first interval data into said second interval data according to said linear function, v'=Z.times.v+T, with respect to each of (a) said X axis and (b) said Y axis, such that said transformation coefficient Z is defined by a following expression:

Z=(p.times.d)/(I.times.e)

where

p is a desired size value of said image input through an input device;

d is a resolution of said image defined by said dot-matrix data;

e is an original size value of said image defined by said first outline data; and

I is a constant,

so that each of said sets of inside data and said sets of outside data of said dot-matrix data corresponds to a square unit area whose four vertices are defined by two adjacent transformed x integral coordinates, x and x+1, and two adjacent transformed y integral coordinates, y and y+1.

12. An apparatus according to claim 10, wherein said correcting means comprises rounding means for correcting at least one of (a) said one transformed x coordinate and (c) said one transformed y coordinate, of said second interval data, into said third interval data comprising at least one of (a) one corrected x coordinate corresponding to said one transformed x coordinate and (c) one corrected y coordinate corresponding to said one transformed y coordinate, according to said first predetermined rule wherein each of said at least one of (a) said one transformed x coordinate and (c) said one transformed y coordinate is rounded, according to a predetermined rounding rule, to one of a number of reference coordinates equidistant from one another by a unit distance with respect to a corresponding one of said at least one of said X axis and said Y axis, said one reference coordinate providing a corresponding one of (a) said one corrected x coordinate and (c) said one corrected y coordinate.

13. An apparatus according to claim 12, wherein said rounding means rounds, according to said predetermined rounding rule, said each of said at least one of (a) said one transformed x coordinate and (c) said one transformed y coordinate, to one nearest thereto of said reference coordinates.

14. An apparatus according to claim 10, wherein said correcting means comprises rounding means for correcting at least one of (b) said two transformed x coordinates and (d) said two transformed y coordinates, of said second interval data, into said third interval data comprising at least one of (b) two corrected x coordinates corresponding to said two transformed x coordinates and (d) two corrected y coordinates corresponding to said two transformed y coordinates, according to said first predetermined rule wherein one of the two transformed coordinates of each of said at least one of (b) said two transformed x coordinates and (d) said two transformed y coordinates which one transformed coordinate satisfies a predetermined rounding condition regarding one of a number of reference coordinates equidistant from one another by a unit distance with respect to a corresponding one of said at least one of said X axis and said Y axis, is rounded to said one reference coordinate as a first reference coordinate and wherein the other of said two transformed coordinates is changed to a second reference coordinate by a rounded distance of said two transformed coordinates, said rounded distance being equal to an integral number of said unit distances, said first and second reference coordinates providing the two corrected coordinates corresponding to said two transformed coordinates, respectively.

15. An apparatus according to claim 14, wherein said rounding means rounds one of said two transformed coordinates which one transformed coordinate satisfies a predetermined rounding condition that said one transformed coordinate has a smaller distance up to one nearest thereto of said reference coordinates than that of the other of said two transformed coordinates.

16. An apparatus according to claim 10, wherein said correcting means comprises means for correcting, according to said first predetermined rule, at least one of (a) said one transformed x coordinate, (b) said two transformed x coordinates, (c) said one transformed y coordinate, and (d) said two transformed y coordinates, each of said second interval data, into said third interval data comprising at least one of (a) one corrected x coordinate corresponding to said one transformed x coordinate, (b) two corrected x coordinates corresponding to said two transformed x coordinates, (c) one corrected y coordinate corresponding to said one transformed y coordinate, and (d) two corrected y coordinates corresponding to said two transformed y coordinates.

17. An apparatus according to claim 16, wherein said transformation-function determining means comprises means for determining, as said transformation function for said each of said at least one of said original intervals defined with respect to said at least one of said X axis and said Y axis, a linear function, v'=a.times.v+b, wherein, when said each original interval has two opposite ends respectively defined by two adjacent original coordinates, p and q, out of (a) at least one said one original x coordinate as said x position data, (b) at least one pair of said two original x coordinates as said x spacing data, (c) at least one said one original y coordinate as said y position data, and (d) at least one pair of said two original y coordinates as said y spacing data, said constants a, b of said linear function are as follows:

a=(q'-p')/(q-p)

b=(p'.times.q-q'.times.p)/(q-p)

where p' and q' are the two corrected coordinates corresponding to said two original coordinates p, q, respectively.

and wherein, when said each original interval has only one end defined by one, p, of a greatest and a smallest original coordinate out of (a) at least one said one original x coordinate, (b) at least one pair of said two original x coordinates, (c) at least one said one original y coordinate, and (d) at least one pair of said two original y coordinates, said constants a, b of said linear function are as follows:

a=Z

b=p'-p.times.Z

where

Z is a transformation coefficient with respect to said at least one of said X axis and said Y axis, said transformation data comprising said transformation coefficient; and

p' is the corrected coordinate corresponding to said one original coordinate p.

18. An apparatus according to claim 1, wherein said dot-matrix producing means comprises means for producing said dot-matrix data from said second outline data according to said second predetermined rule wherein, when a center of each of a number of rectangular unit areas each of which is defined by (a) a consecutive two of a number of reference x coordinates equidistant from one another by a first unit distance with respect to said X axis and (b) by a consecutive two of a number of reference y coordinates equidistant from one another by a second unit distance with respect to said Y axis, falls inside said transformed outline of said image defined by said second outline data, said each rectangular unit area is defined by one said set of inside data and, when not, said each rectangular unit area is defined by one said set of outside data, said first unit distance being equal to a distance between two transformed x integral coordinates, said second unit distance being equal to a distance between two transformed y integral coordinates.

19. An apparatus according to claim 1, further comprising a transformation-function memory which stores the transformation function determined by said transformation-function determining means for each of said original intervals defined with respect to said at least one of said X axis and said Y axis, wherein after said transformation-function determining means determines said transformation function for said each of said original intervals and said transformation-function memory stores said transformation function determined for said each of said original intervals, said second transforming means transforms said at least one of (a) said x coordinate and (b) said y coordinate of at least one said original set of x and y coordinates within said each of said original intervals, into said at least one of (a) said x coordinate and (b) said y coordinate of at least one said transformed set of x and y coordinates within said corresponding one of said corrected intervals, according to said transformation function determined for said each of said original intervals and stored in said transformation-function memory.

20. An apparatus according to claim 1, further comprising:

a transformation-function memory which stores said transformation determined by said transformation-function determining means for said each of said at least one of said original intervals defined with respect to said at least one of said X axis and said Y axis; and

judging means for judging, for each of at least one of (a) an x coordinate and (b) a y coordinate of each of said original sets of x and y coordinates, whether said transformation-function memory stores the transformation function determined for one of said original intervals within which interval said each of said at least one of (a) said x coordinate and (b) said y coordinate falls,

wherein when said judging means makes a negative judgment said transformation-function determining means determines the transformation function for said one of said original intervals within which interval said each of said at least one of (a) said x coordinate and (b) said y coordinate falls and said transformation-function memory stores said transformation function determined for said one of said original intervals, and when said judging means makes a positive judgment said second transforming means transforms said each of said at least one of (a) said x coordinate and (b) said y coordinate according to said transformation function determined for said one of said original intervals and stored in said transformation-function memory.
 Description Submit all comments and votes
 


BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an apparatus for producing dot data or dot-matrix data from outline data defining one or more outlines of an image such as a character.

2. Related Art Statement

There is known a data processing device which processes outline data including a plurality of sets of point data, i.e., sets of x and y coordinates which cooperate with each other to define, in the x-y coordinate system, one or more outlines of an image such as a character (e.g., letter, numeral, symbol, figure, etc.). The data processing device produces dot-matrix data from the outline data, so that an output device such as a printer or a display outputs the image according to the dot-matrix data. The dot-matrix data include (a) a plurality of sets of "ON" data (or "OFF" data) defining the inside area of the output image and (b) a plurality of sets of "OFF" data (or "ON" data) defining the outside area of the output image. Each set of "ON" or "OFF" data corresponds to a unit area of the x-y coordinate system or plane, on one hand, and corresponds to a picture element of the output image, on the other hand.

The process of producing dot-matrix data from outline data may easily be understood by assuming a picture-element screen 31, as shown in FIG. 16, which conceptionally defines the picture elements of an output image to be produced by the output device. The picture-element screen 31 is constructed by (a) a number of straight lines extending parallel to a Y axis and passing through respective integral coordinates of an X axis which is perpendicular to the Y axis and cooperates with the Y axis to provide a two-dimensional coordinate system, and (b) a number of straight lines extending parallel to the X axis and passing through respective integral coordinates of the Y axis. In this case, each picture element of the output image corresponds to a square unit area defined by (a) two adjacent straight lines parallel to the Y axis and (b) two adjacent straight lines parallel to the X axis, and those four straight lines provide the four boundary lines of the square unit area.

A raster-scanning method using a picture-element screen is widely used for producing dot-matrix data from outline data. This method will be described in detail by reference to the outline data of a character "n" shown in FIG. 2. First, the outline data, or outline defined thereby are assumed to be superposed on the picture-element screen. Next, a single straight scanning line is assumed to extend parallel to the X or Y axis and pass over the centers of square unit areas of the picture-element screen, i.e., picture elements of the output image. Subsequently, all the intersecting point or points of the scanning line and the character outline is/are determined. Based on the position or positions of the intersecting point or points, a set of "ON" or "OFF" data is given to each of the square unit areas currently under the scanning line, according to a predetermined rule, so that one or more sets of "ON" data substantially define the inside area of the character outline and one or more sets of "OFF" data substantially define the outside area of the character outline. Thus, one row or one column of the dot-matrix data is produced. By repeating this operation moving the scanning line all over the picture-element screen, the entire dot-matrix data are produced for the character as a whole. In this way, the dot-matrix data are produced from the outline data.

Alternatively, after the original or first outline data are transformed into second outline data defining a transformed outline having a changed size, the second outline data may be converted into dot-matrix data in the same manner as described above. In this case, it is possible to obtain various sizes of transformed outlines or images from a single set of original outline data. The process of changing the size of an outline or image defined by outline data will be described by reference to the outline data of character "n" of FIG. 2. This process may be performed by transforming the sets of point data, i.e., sets of x and y coordinates of the outline data in such a way that each picture element of an output image corresponds to a square unit area whose four vertices are defined by two adjacent transformed x integral coordinates and two adjacent transformed y integral coordinates. Assuming that a desired size of the output image be selected at a value, p (points; p=1 is equal to 1/72 inch), by an operator or user through an input device such as a keyboard, that the resolution of the output device be specified at a value, d (dots per inch), and that the original size of the image be defined at a value, e, by the original outline data, then a transformation coefficient, Z, for the above coordinate transformation is obtained by the following expression:

Z=(p.times.d)/(I.times.e)

where I is a constant, i.e., 72 (points per inch).

Additionally, the operator may input, through the input device, data indicative of a desired position of the output image, i.e., parallel-translation amount of the image with respect to the X and/or Y axis. Therefore, this coordinate transformation is generally expressed by the following transformation function, i.e., linear function:

v'=Z.times.v+T

where Z is the transformation coefficient with respect to the X and/or Y axis;

T is the parallel-translation amount with respect to the X and/or Y axis;

v is each of the x and/or y coordinates of the original outline data; and

v' is a corresponding one of the x and/or y coordinates of the transformed outline data.

Hereinafter, the original outline data are referred to as the "outline data A" and the transformed outline data are referred to as the "outline data B".

If the outline data B are superposed on a picture-element screen 31 as shown in FIG. 16 and subsequently the outline data B are subjected to the raster-scanning method to produce dot-matrix data, the dot-matrix data produced may suffer from low quality because quantization errors may occur when the outline data B are converted into the dot-matrix data. FIG. 16 shows the dot-matrix data including the sets of "ON" data (indicated by hatching) produced from the outline data B by the raster-scanning method. As can been seen from the figure, vertical parts 33, 34 of the dot-matrix data have different widths whereas the counter parts of the outline data B have the same width. Thus, the dot image, i.e., output image may give a strange impression to observers.

For solving the above problem, it has been practiced to automatically adjust the position and width of a vertical or horizontal part of a transformed image, and thereby control the number of picture elements to be located between the two opposite outline portions of the vertical or horizontal part. One of the known methods will be described below.

First, line-spacing data are prepared which include (a) position data including two x or y coordinates defining a vertical or horizontal part to be adjusted and (b) spacing data defining the distance between the two coordinates. Thus, the line-spacing data define the width of the vertical or horizontal part. More specifically, a set of x line-spacing data for a vertical part includes (a) x position data including two x coordinates and (b) x spacing data defining the difference or distance between the two x coordinates. Similarly, a set of y line-spacing data for a horizontal part includes (c) y position data including two y coordinates and (d) y spacing data defining the difference or distance between the two y coordinates. FIG. 2 shows the outline data A of character "n" for which two sets of x line-spacing data are included for two vertical parts 20, 21 of the character "n".

Second, the line-spacing data are transformed according to a desired size of the output image. Regarding the character "n" of FIG. 2, the two x coordinates of each of the two sets of x line-spacing data 20, 21 are transformed by the same manner as used for the transformation of the outline data A into the outline data B, and the distance or width defined by the x spacing data of each set of x line-spacing data 20, 21 is multiplied by the transformation coefficient Z, and then is rounded by counting fractions of 0.5 and over as one and cutting away the rest, or otherwise cutting away fractions smaller than one. The thus obtained width will be referred to as the "dot width". The dot width just corresponds to an integral number of dots, i.e., picture elements of the output image. FIG. 16 shows the transformed sets of x line-spacing data 35, 36 respectively corresponding to the original sets of x line-spacing data 20, 21.

Third, one of the two transformed x coordinates of each transformed set of x line-spacing data 35, 36 which one coordinate has a smaller distance up to an x integral coordinate nearest thereto than that of the other transformed coordinate, is selected as a base coordinate, and the other transformed coordinate is selected as a dependent coordinate. The base coordinate is moved, i.e., rounded to that integral coordinate nearest thereto, which provides a corrected base coordinate. Otherwise, a smaller one of the two transformed coordinates may be selected as a base coordinate and be rounded to an integral coordinate as a corrected base coordinate by cutting away fractions smaller than one. Then, the dependent coordinate is moved to an integral x coordinate, i.e., corrected dependent coordinate, distant from the corrected base coordinate by the dot width. Subsequently, all the x coordinates of the outline data B equal to the base coordinate are corrected or moved to the corrected base coordinate, and all the x coordinates of the outline data B equal to the dependent coordinate are corrected or moved to the corrected dependent coordinate.

FIG. 17 shows outline data C obtained by correcting the outline data B as described above. The two sets of x line-spacing data 35, 36 of FIG. 16 are corrected to two sets of x line-spacing data 413, 414 of FIG. 17, respectively. In FIG. 17, black circles 40, 41, 42, 43, 44, 45, and 46 indicate the x coordinates corrected based on the transformed and corrected x line-spacing data 35, 413, and black circles 47, 48, 49, 410, 411, and 412 indicate the x coordinates corrected based on the transformed and corrected x line-spacing data 36, 414. The outline data C are converted into dot-matrix data indicated by hatching in FIG. 17 wherein the vertical parts 33, 34 of the dot-matrix data have the same width. Thus, the dot-matrix data enjoy high quality.

In short, the outline data A are first subjected to size changing to provide the outline data B, which in turn are subjected to correction of quantization errors to provide the outline data C, which in turn are subjected to the raster-scanning method using the picture-element screen 31 to provide the dot-matrix data.

In the above conventional process, however, it is not necessary, but actually is carried out, to transform the original x coordinates (indicated by black circles in FIG. 2) of the outline data A which are to be corrected when the outline data B are corrected to the outline data C, because those original x coordinates can be corrected without utilizing the corresponding transformed x coordinates of the outline data B. This applies to the original y coordinates to be corrected, if any. This problem leads to increasing the production cost of the dot-matrix data and lowering the production efficiency of the dot-matrix data.

SUMMARY OF THE INVENTION

It is therefore an object of the present invention to provide an apparatus which produces dot-matrix data with high quality from outline data with high production efficiency.

The above object has been achieved by the present invention, which provides an apparatus for producing dot-matrix data from outline data defining at least one original outline of an image in a two-dimensional coordinate system provided by an X axis and a Y axis perpendicular to each other, comprising: first transforming means for transforming, according to transformation data, first interval data defining a plurality of original intervals with respect to at least one of the X axis and the Y axis, into second interval data defining a plurality of transformed intervals with respect to the at least one of the X axis and the Y axis; correcting means for correcting, according to a first predetermined rule, the second interval data into third interval data defining a plurality of corrected intervals with respect to the at least one of the X axis and the Y axis; transformation-function determining means for determining, based on the first interval data and the third interval data, a transformation function for each of at least one of the original intervals defined with respect to the at least one of the X axis and the Y axis; second transforming means for transforming first outline data as the above-indicated outline data, into second outline data defining at least one transformed outline of the image, the first outline data comprising a plurality of original sets of x and y coordinates which cooperate with each other to define the original outline of the image, the second outline data comprising a plurality of transformed sets of x and y coordinates which cooperate with each other to define the transformed outline of the image, the second transforming means transforming at least one of (a) an x coordinate and (b) a y coordinate of at least one original set of x and y coordinates within the each of the at least one of the original intervals defined with respect to the at least one of (a) the X axis and (b) the Y axis, into at least one of (a) an x coordinate and (b) a y coordinate of at least one transformed set of x and y coordinates within a corresponding one of the corrected intervals, according to the transformation function determined for the each original interval; and dot-matrix data producing means for producing the dot-matrix data from the second outline data according to a second predetermined rule, the dot-matrix data comprising a plurality of sets of inside data substantially defining an inside area of the transformed outline of the image defined by the second outline data, and a plurality of sets of outside data substantially defining an outside area of the transformed outline of the image. The original interval data define a plurality of original intervals with respect to each of the X and Y axes of the x-y coordinate system in which the original outline of the character is defined by the original outline data. This data contains (a) one or more sets of position data each set of which includes a single x (or y) coordinate, and (b) one or more sets of spacing data each set of which includes a pair of x (or y) coordinates. A set of position data is used for positional alignment of a character with respect to the X (or Y) axis and a set of spacing data is used for adjusting the number of square unit area or areas (i.e., picture element or elements) to be located between a pair of transformed x (or y) coordinates. This information comprises hint data which will be described in detail.

In the dot-matrix data producing apparatus constructed as described above, the first transforming means transforms the first interval data defining a plurality of original intervals, into second interval data defining a plurality of transformed intervals, the correcting means corrects the second interval data into third interval data defining a plurality of corrected intervals, and the transformation-function determining means determines, based on the first and third boundary data, a transformation function for each of the original intervals. The correction of the second interval data to the third interval data is effected for compensating for quantization errors that has possibly been introduced into the second interval data. The second transforming means transforms the x and/or y coordinate of at least one original set of x and y coordinates within each of the original intervals, into the x and/or y coordinate of at least one transformed set of x and y coordinates within a corresponding one of the corrected intervals, according to the transformation function determined for each original interval. Thus, the x and/or y coordinates of the transformed sets of x and y coordinates of the second outline data are free from the quantization errors, therefore the second outline data enjoy excellent quality. Additionally, the first transforming means does not transform all the original x and/or y coordinates that need the quantization-error correction. Thus, the present apparatus enjoys improved production efficiency of the dot-matrix data. Furthermore, since the transformation function is determined for each of the original intervals, the second outline data are free from the problem that visual balance or smoothness of the image may be lost at the transition or transitions from one interval to its adjacent interval or intervals.

According to a preferred feature of the present invention, the dot-matrix data producing apparatus further comprises an output device which outputs the image according to the dot-matrix data. The output device may be a printing device, such as a laser printer, or a displaying device, such as a liquid-crystal display. The printing device may record, on a recording medium, the image according to the dot-matrix data comprising the sets of inside data and the sets of outside data each set of which corresponds to a picture element of the image to be recorded on the recording medium. Each set of inside data may indicate the presence of an image and each set of outside data may indicate the absence of the image, or vice versa.

According to another feature of the present invention, the apparatus further comprises an original-data memory which stores at least one of the first outline data and the first interval data, the first outline data defining at least one original outline of a character as the image, the original sets of x and y coordinates of the first outline data comprising at least one of (a) a set of x and y coordinates defining an end point of a straight line as a portion of the original outline, and (b) a plurality of sets of x and y coordinates defining at least one control point and an end point of a Bezier curve as a portion of the original outline. In the case where the original outline of the image consists of a plurality of straight lines connected to each other, one of the two end points of each of the connected straight lines defines one of the two end points of the preceding or following straight line. In the case where the original outline consists of a plurality of Bezier curves connected to each other, one of the two end points of each of the Bezier curves defines one of the two end points of the preceding or following Bezier curve. In the case where a Bezier curve is defined by a quadratic Bezier function, the Bezier curve has a single control point; and in the case where a Bezier curve is defined by a cubic Bezier function, the Bezier curve has two control points.

According to yet another feature of the present invention, the apparatus further comprises an input device which is operable for inputting at least one of (a) the transformation data and (b) at least one character code corresponding to at least one set of character data as the first outline data and the first interval data for at least one character as the image. In this case, the apparatus may further comprise a parameter memory which stores the at least one of (a) the transformation data and (b) the at least one character code, the transformation data comprising at least one of (a1) size-related data relating to a size of the image with respect to the at least one of the X axis and the Y axis and (a2) a translation value indicative of a parallel-translation amount of the image with respect to the at least one of the X axis and the Y axis. The size-related data may comprise a size value indicative of the size of the image with respect to the at least one of the X axis and the Y axis. The size value may be a point number, p (points; p=1 is equal to 1/72 inch). Otherwise, the size-related data may be a reduction or magnification factor (e.g., 1/2, 2).

According to a further feature of the present invention, the first interval data comprise at least one of (a) x position data including one original x coordinate out of the original sets of x and y coordinates, (b) x spacing data including two original x coordinates out of the original sets of x and y coordinates, (c) y position data including one original y coordinate out of the original sets of x and y coordinates, and (d) y spacing data including two original y coordinates out of the original sets of x and y coordinates.

According to another feature of the present invention, the first transforming means comprises linear transformation means for transforming at least one, v, of (a) the one original x coordinate as the x position data, (b) the two original x coordinates as the x spacing data, (c) the one original y coordinate as the y position data, and (d) the two original y coordinates as the y spacing data, of the first interval data, into the second interval data comprising at least one, v', of (a) one transformed x coordinate corresponding to the one original x coordinate, (b) two transformed x coordinates corresponding to the two original x coordinates, (c) one transformed y coordinate corresponding to the one original y coordinate, and (d) two transformed y coordinates corresponding to the two original y coordinates, according to a linear function, v'=Z.times.v+T, defined by the transformation data comprising a transformation coefficient, Z, with respect to the at least one of the X axis and the Y axis and a constant, T, with respect to the at least one of the X axis and the Y axis.

According to yet another featur