[0001] The present invention relates to a dot-matrix printer of the serial type.
[0002] A dot-matrix printer of the serial type is designed to print dot characters of a
specific font. Some of the dot characters printed by this printer are narrower than
the same characters printed by a fully formed character printer such as a daisy-wheel
printer.
[0003] The dot-matrix printer sometimes emulates the impact printer; it prints dot characters
similar to the characters printed by the impact printer. That is, it may print a dot
character that is wider than ordinary characters. A wide character 11 may be printed
at the right margin as shown in Fig. lA, or at the left margin as shown in Fig. 1B.
In the first case, the wide character 11 inevitably extends over the right margin.
In the second case, the last character 10 of the ordinary size also extends over the
right margin. That is, the characters 10 and 11 cannot be printed within the normal
printing margins (i.e., the distance G). When dot characters of different widths are
printed in several lines, the characters of one line may not vertically aligned with
those of the other lines. This deteriorates the quality of printing.
[0004] The object of this invention is to provide a dot-matrix printer which can neatly
print documents even if a dot character, which is wider than those of the ordinary
width by a predetermined value, is printed at the left or right margin.
[0005] To achieve this object, a dot-matrix printer according to the invention comprises
a print head for printing dot characters, a platen allowing said print head to print
dot characters in a normal margin printing mode and also in an extra wide-margin printing
mode, data-receiving means for receiving printing data, including data representing
the normal printing mode or extra wide-margin printing mode and character codes representing
dot characters to be printed, character dot pattern generating means for generating
data representing the dot patterns determined by the printing data input to the data-receiving
means, printing mode selecting means for selecting the extra wide-margin printing
mode when at least one of the character codes input to said data-receiving means represents
a dot character which is wider than characters of ordinary width and is to be printed
at the left or right margin, print head moving means for moving said print head along
a platen between the ordinary margins or between the extra wide margins in accordance
with the data representing the mode selected by said printing mode selecting means,
and print head drive means for driving the print head in accordance with the data
output by the character dot pattern generating means.
[0006] To print a wide dot character at the right margin or left margin, together with other
characters of ordinary width, the print head is operated in the extra-wide-margin
printing mode. Hence, the last character of any printed line, whether wide or ordinary,
is vertically aligned with the last dot character of the preceding printed line, and
the characters of ordinary width, other than the last dot character, are also vertically
aligned with those of the preceding printed line.
[0007] This invention can be more fully understood from the following detailed description
when taken in conjunction with the accompanying drawings, in which:
Figs. lA and 1B show the lines of dot characters printed by the conventional dot-matrix
printer;
Fig. 2 is a block diagram of a dot-matrix printer according to the present invention;
Fig. 3 is a flow chart illustrating the operation of the printer shown in Fig. 2;
and
Figs. 4A and 4B show two lines of dot characters printed by the printer shown in Fig.
2.
[0008] One embodiment of the invention, i.e., a dot-matrix printer, will be described with
reference to Figs. 2, 3, 4A and 4B. As shown in Fig. 2, the printer comprises a microprocessor
20, a read-only memory (ROM) 21 and an input/output (IO) interface 22.
[0009] The ROM 21 stores a program. In accordance with this program the microprocessor 20
controls the printing operation. The I/O interface 22 receives printing data from
an external device, e.g., a host computer. This data contains data designating a normal
printing mode or an extra-wide-margin printing mode and character codes representing
the dot character to be printed.
[0010] The printer further comprises a character generator 23, a printing buffer memory
24, a print head driver 25, a print head 26, a platen 27, a bus 28, I/O PORT 29, carriage
drive motor 30 and paper feed motor 31. The character generator 23 outputs character
pattern data corresponding to the printing data received by the I/O interface 22,
under the control of the microprocessor 20.
[0011] The output data of the generator 23 is stored, line by line, in the printing buffer
memory 24. The print head driver 25 operates under the control of the microprocessor
20, thereby driving the print head 26. As a result, the head 26 prints dot characters
on the paper (not shown) wrapped around the platen 27. The platen 27 is so long that
the print head 26 prints dot characters over a long distance W as well as over the
ordinary printing distance G. The carriage drive motor 30 is used to move a carriage
(not shown) along the platen 27. The print head 26 is mounted on this carriage. The.paper
feed motor 31 is used to rotate the platen 27 to feed the paper. These motors 30 and
31 are controlled by signals supplied from the microprocessor 20 through the I/O port
29. The bus 28 transfers data between the elements 20-25 and the elements 29, 30.
[0012] Referring to the flow chart of Fig. 3, the operation of the printer of Fig. 2 will
be explained.
[0013] Suppose printing data is supplied to the dot-matrix printer from the external device.
In step Sl, the I/O interface 22 receives this data and supplies it to the microprocessor
20 via the bus 28. The microprocessor 20 reads the character dot pattern from the
character generator 23, in accordance with the printing data. In step S2, the generator
23 generates the dot pattern data of either an ordinary or wide character in accordance
with the printing data, i.e., the normal or extra-wide-margin printing mode data and
the character codes. The dot pattern data is stored in the printing buffer memory
24. This memory can store dot pattern data for several lines of characters.
[0014] When the dot patterns for one line are stored in the printing buffer memory 24, the
dot characters of these patterns will be printed by the print head 26 under the control
of the microprocessor 20. First, in step S3, the microprocessor 20 determines, in
accordance with the printing mode data from the I/O interface 22, whether or not at
least one.of the dot patterns for one line stored in the memory 24 is a wide dot pattern.
When the answer to the question imposed in step S3 is no, the microprocessor 20 supplies
a control signal designating normal printing to the carriage drive motor 30 through
the I/O port 29. As a result, the microprocessor 20 controls the carriage drive motor
30, thereby moving the print head 26 to the left margin of ordinary printing. In step
S7, the head 26 is driven by the print head driver 25. In step S8, the head 26 prints
the dot characters in accordance with the dot patterns read from the character generator
23 to the printing buffer memory 24. The line thus printed has length G (Fig. 2).
[0015] On the other hand, when the answer to the question asked in step S3 is yes, the microprocessor
20 determines whether or not the wide character pattern is positioned at the left
or right margin, in step S4. When the answer is no, the operation proceeds to step
S5, S7 and S8, whereby the dot characters are printed.
[0016] When the answer to the question imposed in step S4 is yes, the microprocessor 20
supplies a control signal designating the extra-wide margin printing to the carriage
drive motor 30 via the I/O port 29. In step S6, the microprocessor 20 controls the
carriage drive motor 30, thus moving the print head 26 to the left margin of wide-margin
printing. In step S8, the head 26 prints dot characters in accordance with the character
dot patterns stored in the printing buffer memory 24. The line thus printed has length
W (Fig. 2). In this case, the dot characters 10 of the ordinary width are printed
and then the wide character 11 is printed at the right margin as shown in Fig. 4A.
Alternatively, the wide character 11 is printed at the left margin, and the characters
10 of the ordinary width are then printed as illustrated in Fig. 4B.
[0017] As described above, the dot-matrix printer of this invention prints a line of dot
characters in the extra wide-margin printing mode when the first or last character
of the line is wider than ordinary width. Hence, even if the last character of the
line-is a wide-character as shown in Fig. 4A, it does not extend over the right margin.
Further, even if the first character of the line is a wide character as illustrated
in Fig. 4B, the last character of the ordinary width does not extend over the right
margin and vertically aligned with the character of the preceding line at the corresponding
position. When several lines of dot characters are printed in this manner, the characters
of any line are vertically aligned with those of the adjacent lines. The printed document
therefore is neat and clean.
[0018] Moreover, when a wide character is printed at the left or right margin, the number
of characters of one line is the same as the number of characters of ordinary width
which form one line. Hence, a neat and clean printing is achieved even if wide dot
characters similar to those printed by the impact printer are printed together with
dot characters of ordinary width.
1. A dot-matrix printer of the type which determines the patterns of dot characters
and prints the dot characters of these patterns, characterized by comprising: a print
head (26) for printing dot characters; a platen (27) allowing said print head (26)
to print dot characters in a normal margin printing mode and also in an extra wide-margin
printing mode; data-receiving means (22) for receiving printing data including data
representing the normal printing mode or extra wide-margin printing mode and character
codes representing dot characters to be printed; character dot pattern generating
means (23) for generating data representing the dot patterns determined by the printing
data input to the data-receiving means (22); printing mode selecting means (20) for
selecting the extra wide-margin printing mode when at least one of the character codes
input to said data-receiving means (22) represents a dot character which is wider
than characters of ordinary width and is to be printed at the left or right margin;
print head moving means (30) for moving said print head along the platen between the
ordinary margins or between the extra wide margins in accordance with the data representing
the mode selected by said printing mode selecting means (20); and print head drive
means (25) for driving the print head in accordance with the data output by the character
dot pattern generating means (23).
2. A dot-matrix printer according to claim 1, characterized in that said character
dot pattern generating means (23) is a read-only memory storing the patterns of dot
characters of ordinary width and the patterns of wide dot characters.
3. A dot-matrix printer according to claim 1, characterized in that said printing
mode selecting means (20) is a microprocessor which operates in accordance with a
specific program.
4. A dot-matrix printer according to claim 1, further comprising a character buffer
memory (24) for storing at least character dot patterns for one line of characters
which have been read from said character dot pattern generating means (23), and for
supplying these patterns to said print head drive means (20, 25), to thereby print
dot characters for one line.
5. A dot-matrix printer according to claim 4, characterized in that said printing
mode .selecting means (20) selects the extra-wide-margin printing mode when at least
one of the character dot patterns stored in said character buffer memory (24) corresponds
to a wide dot character to be printed at the left or right margin.