Output apparatus which temporarily stores pattern data for output

This output apparatus has a memory for storing compressed data obtained by compressing a pattern or dot data representing a pattern. A controller determines whether the dot data representing the pattern to be output is stored in the memory or not. The controller also determines whether the compressed data corresponding to the pattern to be output is stored in the memory if the controller determines that no dot data representing the pattern is stored in the memory.

BACKGROUND OF THE INVENTION 
1. Field of the Invention 
The present invention relates to an output apparatus and, more 
particularly, to an output apparatus having the function to temporarily 
store, for instance, pattern data to be output. 
2. Related Background Art 
Hitherto, in such a kind of apparatus, for instance, a vector font is 
developed into a dot pattern and, thereafter, the pattern data is stored 
in a dot matrix form. In this case, a character cache memory to 
temporarily store the font in a dot pattern state is used. 
For instance, in the case of a character cache memory of the dot matrix 
form, the font based on a dot unit is stored into the memory without 
losing the entire font. 
However, in the case of printing utilizing the vector font on the basis of 
the above conventional example, since the patternized font is stored in 
its pattern state, there is a problem such that the memory capacity is 
used in vain. 
SUMMARY OF THE INVENTION 
In consideration of the above point, it is an object of the present 
invention to provide an output apparatus in which vector data is converted 
into dot data and a dot pattern is output, wherein the caching is executed 
in a data format other than the dot data. 
In consideration of the above point, it is another object of the invention 
to provide an output apparatus in which a plurality of kinds of data 
formats of character data to be cached can exist. 
In consideration of the above point, still another object of the invention 
is to provide an output apparatus in which a check is made to see if 
character data to be output exists in a dot character data cache memory or 
not, and if it does not exist, a check is made to see if the character 
data to be output exists in a compressed character data cache memory or 
not. 
In consideration of the above point, further another object of the 
invention is to provide an output apparatus in which a check is made to 
see if character data to be output has been stored in either one of a 
plurality of cache memories or not, and if it is not stored in any of the 
cache memories, vector data is converted into a predetermined data format 
and can be selectively stored into the cache memories. 
In consideration of the above point, further another object of the 
invention is to provide an output apparatus having a plurality of kinds of 
cache memories, in which vector data is converted into other data format 
and the cache memory into which the vector data is stored can be selected. 
In consideration of the above point, further another object of the 
invention is to provide an output apparatus in which when vector data 
corresponding to a pattern to be output is converted into other data 
format and is cached, the data format to be converted can be selected in 
accordance with the size of the pattern to be output. 
In consideration of the above point, further another object of the 
invention is to provide an output apparatus in which when vector data 
corresponding to a pattern to be output is converted into other data 
format and is cached, the data format to be converted can be selected on 
the basis of an output speed or a memory capacity.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
A preferred embodiment according to the invention will be described in 
detail hereinbelow with reference to the drawings. 
FIG. 1 is a block diagram for schematically explaining a construction of an 
output apparatus in an embodiment according to the invention. 
In FIG. 1, reference numeral 1 denotes a printing apparatus as an output 
apparatus in the embodiment. A construction of the printing apparatus 1 
will be described. Reference numeral 2 indicates an interface to input 
print data (character code) and a print command from an external host 
computer 20. Reference numeral 3 denotes a CPU to control the whole 
apparatus. The CPU 3 has therein an ROM 4 and an RAM 5. A control program, 
an error processing program, a program according to a flowchart shown in 
FIG. 2, which will be explained hereinlater, and the like are stored in 
the ROM 4. The RAM 5 has work areas for various programs and a temporary 
storage area. 
Reference numeral 6 denotes a vector font data storage in which the vector 
font data corresponding to the print data is stored. Reference numeral 7 
indicates a dot developer for detecting the vector font corresponding to 
the print data from the vector font data storage 6 and for developing a 
dot pattern on a dot unit basis in a memory 8, which will be explained 
hereinlater. Reference numeral 8 indicates the memory to store the font 
pattern which was pattern developed by an amount of one page. 
Reference numeral 9 indicates a dot character cache memory to temporarily 
store the font pattern which was pattern developed by the dot developer 7 
in a dot matrix format. Reference numeral 10 indicates a run length 
character cache memory to temporarily store the font pattern which was 
pattern developed by the dot developer 7 in a run length encoding format. 
Since the run length encoding format itself is a well-known technique 
which has already been used in a facsimile apparatus and the like, its 
detailed description is omitted. However, even if a number of such 
technical literatures exist, the patentability of the present invention is 
not denied by them. Reference numeral 11 indicates a cache memory selector 
to select either one of the two cache memories as a memory into which the 
font pattern which was developed by the dot developer 7 is to be stored. 
It is sufficient that the foregoing run length character has been 
compressed as compared with the dot character, and the invention is not 
limited to it. It is also possible to use one data format in the step of 
converting the vector data into the dot data. Different areas in one 
memory unit may be also used in place of the two cache memories. A 
selecting method in the cache memory selector 11 will be described in 
detail in conjunction with the explanation of FIG. 2 later. 
Reference numeral 12 denotes an output device to form a character onto a 
paper as a permanent visible image on the basis of the dot data of the 
amount of one page which was developed in the memory 8, Reference numeral 
13 indicates a system, bus for addresses, data, control signals, etc. in 
the apparatus. In the embodiment of claims, the means which is expressed 
as a memory denotes one means or one area in one memory unit. 
A printing method of the printing apparatus 1 in the embodiment will now be 
described. 
FIG. 2 shows a flowchart for explaining the printing operation of the 
embodiment. 
First, a control command to print is input from the host computer 20, 
thereby setting the apparatus into the printable mode. After completion of 
such a preparation, print data is input from the host computer 20 (step 
S1). In the embodiment, the print data is input on a line unit basis. The 
font corresponding to the input print data is searched in the dot 
character cache memory 9 (step S2). If the corresponding font pattern 
could be detected in the memory 9, it is stored into the memory 8 (steps 
S3 and S4). Then, step S13 follows. On the other hand, if the font pattern 
cannot be detected in step S3, the corresponding font is searched in the 
run length character cache memory 10 (step S5). 
If the corresponding font data could be detected from the memory 10, a 
pattern is developed on a dot unit basis in the memory 8 on the basis of 
the font data (steps S6 and S7). On the other hand, if the font data 
cannot be detected in step S6, the vector font data of the corresponding 
font is detected on the basis of the data in the vector font data storage 
6 and a dot pattern is developed in the memory 8 on the basis of the 
vector font data (step S8). 
A check is then made to see if the font which could not be detected from 
both of the dot character cache memory 9 and run length character cache 
memory 10 is stored into either one of those cache memories or not. In the 
embodiment, although not shown, a switch to decide whether the writing of 
data is permitted or inhibited is provided for the two cache memories. 
When the switch is turned on, the data writing is enabled. When the switch 
is turned off, the data writing is disenabled. Therefore, if the data 
writing is disenabled in step S9, step S13 follows. On the contrary, if 
the data writing is enabled in step S9, the point size of the dot pattern 
font is first detected. If the point size is the 14 point size or larger, 
the font is stored into the run length character cache memory 10 in a run 
length encoding format (steps S10 and S11). On the other hand, if the 
point size is determined to be smaller than the 14 point size in step S10, 
the font is stored into the dot character cache memory 9 in the dot matrix 
format (step S12). The point size can be arbitrarily set. 
As mentioned above, after step S4, S9, Sll, or S12, the processing routine 
advances to step S13 and a check is made to see if the data of one page 
has completely been developed in the memory 8 or not. In the 
discrimination of step S13, if the print data of the amount of one page is 
not input from the host computer 20 yet, the processing routine is 
returned to step S1 and the above-mentioned processes are repeated. On the 
other hand, if the completion of the development of the data of one page 
is confirmed in step S13, the dot data in the memory 8 is transmitted to 
the output device 12 and printed (step S14). If a print request is still 
generated from the host computer 20, the processing routine is returned to 
step S1 and the processes similar to those mentioned above are repeated 
(step S15). 
It will be understood from the above description that, according to the 
embodiment, if the number of dot points of the font which was developed in 
a dot pattern is less than a reference value, the font is stored as an 
ordinary dot pattern, and if the number of dot points is the reference 
value or more, the font is stored in a run length encoding format, so that 
the memory capacity of the character cache can be saved as a whole. 
In the above embodiment, the cache memory has been selected by checking as 
a reference whether the point size of the font is the 14 point size or 
more or smaller. Such a selecting method can be applied in the invention. 
That is, the dot character cache memory is selected for the font in which 
the printing speed can be improved if it is stored in the dot matrix 
format. On the other hand, the run length character cache memory is 
selected for the font in which the memory capacity can be saved if it is 
stored in the run length encoding system. In such a case, the selection of 
the character cache can be controlled by the attribute (point size, pitch, 
etc.) of the font and the printing process can be executed at a high 
speed. Those data are stored in the vector font data storage 6 or the 
like. 
(Another embodiment) 
Another embodiment will now be described. 
FIG. 3 shows a flowchart for explaining the printing operation of another 
embodiment. 
In another embodiment, since the operations in steps S1' to S5' are the 
same as those in the above embodiment, their descriptions are omitted. A 
construction of the apparatus in another embodiment is similar to that in 
the above embodiment and the same parts and elements as those in the first 
embodiment are designated by the same reference numerals. 
If the corresponding font data has been detected in the run length 
character cache memory 10 in step S6', a pattern is developed on a dot 
unit basis in the memory on the basis of the font data (step S7'). 
On the other hand, if the font data cannot be detected in step S6', a check 
is made to see if the font which could not be detected from both of the 
memories 9 and 10 is stored into either one of the cache memories or not 
(step S8'). 
In another embodiment as well, in a manner similar to the first embodiment, 
although not shown, a switch to determine whether the data writing is 
permitted or inhibited is provided for the two cache memories. When the 
switch is turned on, the data writing is enabled. When the switch is 
turned off, the data writing is disenabled. Therefore, if the data writing 
is disenabled in step S8', step S9' follows. On the basis of the data in 
the vector font data storage 6, the vector data of the corresponding font 
is detected. On the basis of the vector font data, a dot pattern is 
developed in the memory 8. 
On the contrary, if the data writing is enabled in step S8', the point size 
of the font is checked. If it is the 14 point size or larger, the font is 
stored into the run length character cache memory 10 in the run length 
encoding format (steps S10' and Sll'). The run length data is expanded and 
a dot pattern is developed in the memory 8 (step S12'). 
On the other hand, if the point size is determined to be smaller than the 
14 point size in step S10', the font is stored into the dot character 
cache memory 9 in the dot matrix format (step S13'). Further, on the basis 
of the data in the vector font data storage 6, the vector data of the 
corresponding font is detected. On the basis of the vector font data, a 
dot pattern is developed in the memory 8 (step S14'). 
After step S7', S9', S12', or S14', the processing routine advances to step 
S15' and a check is made to see if the data of the amount of one page has 
completely been developed in the memory 8 or not. If the print data of the 
amount of one page is not input from the host computer 20 yet in the 
discrimination of step S15', the processing routine is returned to step 
S1' corresponding to step S1 which has already been described in the first 
embodiment and the above-mentioned processes are repeated. On the other 
hand, if the completion of the development of the data of one page has 
been confirmed in step S15', the dot data in the memory 8 is transmitted 
to the output device 12 and printed (step S16'). 
If a print request is also generated from the host computer 20, the 
processing routine is returned to step S1' and the processes similar to 
those mentioned above are repeated (step S17'). 
It will be understood from the above description that, according to another 
embodiment, the operation and effects similar to those in the first 
embodiment can be obtained. 
As described above, according to the invention, the memory capacity of the 
character cache to store, for instance, dot fonts can be saved. In 
addition, the printing process can be executed at a high speed by the 
selecting control of the character cache memories. 
As described in detail above, in an apparatus for converting vector data 
into dot data and out- putting a dot pattern, an output apparatus for 
executing the caching in a data format other than the dot data format can 
be provided. 
As described in detail above, an output apparatus in which a plurality of 
kinds of data formats of character data to be cached can exist can be 
provided. 
As described in detail above, it is possible to provide an output apparatus 
in which a check is made to see if character data to be output exists in a 
dot character data cache memory or not, and if it does not exist, a check 
is made to see if the character data to be output exists in a compressed 
character data cache memory or not. 
As described in detail above, it is possible to provide an output apparatus 
in which a check is made to see if character data to be output has been 
stored in either one of a plurality of cache memories or not, and if it is 
not stored in any of the cache memories, vector data is converted in a 
predetermined data format and can be selectively stored into the cache 
memories. 
As described in detail above, it is possible to provide an output apparatus 
having a plurality of kinds of cache memories, wherein vector data is 
converted in another data format and the cache memory into which the 
vector data is stored can be selected. 
As described in detail above, it is possible to provide an output apparatus 
in which when vector data corresponding to a pattern to be output is 
converted into another data format and cached, the data format to be 
converted can be selected in accordance with the size of the pattern to be 
output. 
As described in detail above, it is possible to provide an output apparatus 
in which when vector data corresponding to a pattern to be output is 
converted into another data format and cached, the data format to be 
converted can be selected on the basis of an output speed or a memory 
capacity.