Character outputting apparatus and method

Abstract: An outputting apparatus as a printer comprises: a memory to store a bit map pattern to be produced on the basis of outline font data together with resolution information; and means for comparing a resolution of a cached character and a resolution of a current by referring to the resolution information stored in the memory and for newly executing a cache process by the current resolution in the case where the resolution of the cached character differs from the current resolution. A decrease in print speed due to the change of the output resolution can be prevented.

Description: The present invention relates to a character output apparatus and method in which an output resolution can be changed and data is generated by using scalable fonts. Hitherto, in a printer which can change an output resolution and prints data by using outline fonts, a cache process of a character of a type style which has previously been designated by the user is executed upon idling and cache process of a character to be printed is performed upon printing. However, in the above conventional printer, in the case where a character of the same size as that of the character which has been cached before an output resolution is changed is printed after the resolution was changed, a size of character differs from a size of character before the change of the resolution in a bit map, so that a new cache must be formed in the print control. Therefore, when the output resolution is changed, the operation to develop an outline font in the bit map is needed when a character is printed, so that there is a drawback such that the print speed becomes slow by a time corresponding to such a developing operation. EP 0215664 discloses an apparatus for creating and storing characters for display on a video screen. All characters are converted from spline curve coefficients to pixelmaps for display. Since this takes a finite amount of time, the most frequently used characters are stored in pixelmap form. In use, a user indicates a character code and the size of the character to be displayed. It is then determined whether the character has already been converted to pixelmap form and is stored somewhere in the computer memory. If it has not, then the character stored as a set of spline coefficients is converted to pixelmap form for display. In consideration of the above drawbacks, the present invention provides, in a first aspect, a character output apparatus comprising: means for generating character bit map patterns from pre-stored scalable font data, in accordance with specific size and resolution parameters; and memory means for storing a generated bit map pattern of a scalable font character, such that said character can be output plural times with a given size and resolution without re-generating the bit map pattern, characterised in that: the bit map pattern is stored together with associated resolution information; and further characterised by: comparing means for comparing during idling periods the resolution of a character previously stored in the memory means with a current resolution of the apparatus by referring to the associated resolution information in the memory means; and generating means for generating and storing a new bit map pattern corresponding to the current resolution of the apparatus in the memory means when the comparison made by said comparing means shows that the resolution is not equal to the current resolution. In a second aspect, the invention provides a method of operating a character output apparatus comprising the steps: generating and storing a bit map pattern of a scalable font character in a memory; and using the stored bit map pattern to output said character plural times without re-generating the bit map pattern each time from scalable font data; characterised in that: the bit map pattern is stored together with associated resolution information; and further characterised by: comparing during idling periods the resolution of the character in the memory with the current resolution of the apparatus by referring to the associated resolution information in the memory; and generating and storing a new bit map pattern corresponding to the current resolution of the apparatus in the memory when the comparison shows that the resolution is not equal to the current resolution. An embodiment of the invention provides an outputting apparatus in a printer which has a font cache memory for storing a pattern to be cached on the basis of an outline font whose output resolution can be changed together with resolution information and which can change the output resolution, wherein the font cache memory has forming means for storing the pattern to be cached on the basis of the outline font together with the resolution information, for comparing a resolution of the cached character and a current resolution by referring to the resolution information of the font cache memory upon idling of the apparatus, and for forming a new outline font cache by the current resolution in the case where the resolution of the cached character differs from the current resolution. An embodiment of the invention provides outputting method and apparatus in which since the resolution upon formation of a cache has been stored in the font cache, even if the output resolution was changed, the resolution upon caching of the character to be output upon idling after the change of the output resolution is compared with the current resolution, and if they differ, a new cache can be formed by the current resolution, and a decrease in print speed after the change of the resolution can be prevented. An embodiment of the invention provides an outputting apparatus comprising: memory means for storing a bit map pattern to be produced on the basis of outline font data together with resolution information; and means for comparing a resolution of the cached character and a current resolution by referring to the resolution information stored in the memory means and for newly executing a cache process by the current resolution in the case where the resolution of the cached character differs from the current resolution. An embodiment of the invention provides an outputting method whereby a bit map pattern is formed together with resolution information on the basis of outline font data and whether a bit map pattern is newly produced or not can be determined in accordance with the resolution information to be output. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a whole block diagram of a printer showing an embodiment according to the invention; Fig. 2 is a detailed constructional diagram of a cache area shown in Fig. 1; and Fig. 3 is a flowchart showing a control procedure of the embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT An embodiment according to the invention will be described in detail hereinbelow with reference to the drawings. Fig. 1 is a block diagram of an embodiment according to the invention. In the diagram, reference numeral 1 denotes a printer main body. In the printer main body 1, reference numeral 2 denotes a CPU for controlling the whole apparatus of the embodiment in accordance with a control procedure which has been stored in a program ROM 3 and is shown in, for instance, Fig. 3, which will be explained hereinlater, or the like. Reference numeral 3 denotes the program ROM in which the above program and the like have been stored, and 4 indicates an output section which can change an output resolution to an arbitrary resolution. The output section 4 constructs a well-known printer engine section such as paper feed conveying mechanism of a recording paper, print outputting mechanism to the recording paper by a desired resolution, and the like. Reference numeral 5 denotes an RAM to store print data or the like. The RAM 5 is also used as a work area when the CPU 2 executes the program. A character cache area 5a is provided in the RAM 5. Fig. 2 shows an example of a construction of the cache area 5a in the RAM 5. In Fig. 2, reference numeral 30 denotes a memory area to store a bit map font pattern which has been developed by a predetermined resolution on the basis of outline font data; 31 a bit map pattern of a developed character; 32 information associated with the character of the developed bit map pattern 31; 33 resolution information indicative of a resolution of the developed bit map pattern 31; 40 a bit map pattern memory area of a character to be printed and generated; 41 a character map pattern which has been developed; 42 information associated with the developed character map pattern 41; 43 resolution information indicative of a resolution of the developed character map pattern 41. In the embodiment, as shown in the diagram, the resolution information of the developed bit map pattern has been stored in a corresponding manner. The printing operation of the embodiment with the above construction will now be described hereinbelow with reference to a flowchart of Fig. 3. When a power source is supplied to the apparatus of the embodiment, the CPU 2 first advances to a process in step S1 and checks to see if it is necessary to perform an idle cache process or not. If there is no need to carry out the idle cache process because the idle cache process has already been executed or the like, step S3 follows. If it is necessary to perform the idle cache process in the case of the initialization or the like, the processing routine advances to step S2 from step S1 and the idle cache process is executed. In this step, the bit map pattern of a character, the information associated with the character, and the resolution information are stored into the memory area 30 in the cache area 5a in the RAM 5 in correspondence to each other. After the idle cache was formed and the outline font pattern was registered, step S3 follows. In step S3, a check is made to see if there is a data input or not. If there is no data input, step S5 follows. If there is a data input, step S4 follows. If data has been input during the execution of the idle cache process in step S2, the idle cache process is interrupted and the processing routine similarly advances to step S4. In step S4, the CPU 2 performs the caching of the character which is executed upon printing and controls the output section 4 so as to print and output the input data. Upon caching of the character which is performed at the time of the printing as well, a numerical value 43 indicative of a resolution of the character is stored into the bit map pattern memory area 40 of the character to be printed and generated in the cache area 5a of the RAM 5 in correspondence to the character map pattern 41 of each character. The data is printed by sequentially controlling the output section 4 in accordance with the well-known printing means. Then, step S5 follows. In step S5, a check is made to see if the resolution has been changed to the output resolution to be printed and generated or not. If the resolution is not switched and a change or the like of the output resolution is not executed, the processing routine is returned to step S1 and the apparatus waits for the reception of next data or the like. If the output resolution has been switched and a change in output resolution has been instructed, the processing routine advances from step S5 to step S6. In step S6, the cache area 5a of the RAM 5 is searched and the resolution 33 of the character stored in the memory area 30 which has been cached so far is compared with the resolution 43 of the character stored in the bit map pattern memory area 40 of the character to be printed and generated. In step S7, a check is made to see if there is a bit map pattern whose resolution differs as a result of the comparison or not. If the resolution coincides, the processing routine is returned to step S1 and the apparatus waits for the search of a next pattern or the like. If the resolution differs as a result of the comparison, this resolution is referred to as a bit map pattern P and the processing routine advances from step S7 to step S8 and a check is made to see if a bit map pattern of a character or the like having the same size as that of the bit map pattern P at the current resolution has already been cached in the memory area 30 or not. If the bit map pattern of the character or the like of the size corresponding to the current resolution has already been cached in the memory area 30, the processing routine is returned to step S1. On the contrary, if NO in step S8, the processing routine advances from step S8 to step S9 and the bit map pattern of the character of the same size as that of the bit map pattern P is newly cached into the memory area 30 at the current resolution. At this time, the associated information 32 and resolution information 33 are also stored in a corresponding manner. By the procedure described above, even if the bit map pattern of the character or the like of the same size as the size before the resolution is switched is not cached into the memory area 30 in accordance with the new resolution, a cache of the bit pattern of the character of the same size as that before the switching of the resolution can be formed in accordance with the new resolution upon idling in a state in which the print output control is not executed. Therefore, in the case of executing the actual printing operation, the bit map pattern of the character or the like of the same size as that before switching has already been cached in the memory area 30 in accordance with the new resolution. Even if the resolution is switched, the print speed is not decreased by the cache. An efficient printer can be provided. As described above, according to the embodiment, although the cache area 5a has been assigned into the RAM 5 as a volatile memory, the invention is not limited to such an example. It is possible to assign such a memory area to an external memory device as a nonvolatile memory such as flexible disk device, hard disk device, optical disk device, or the like and to hold outline font or the like into the external memory device, thereby enabling the number of developing times of the outline font character to be further reduced. As described above, according to the invention, even if the resolution was switched, a cache can be formed at the new resolution in an idling state in which the print output control is not performed. Even if the resolution was switched, the print speed is not reduced by the cache. An efficient printer can be provided.

Claims: Character output apparatus comprising: means for generating character bit map patterns from pre-stored scalable font data, in accordance with specific size and resolution parameters; and memory means (5a) for storing a generated bit map pattern (31) of a scalable font character, such that said character can be output plural times with a given size and resolution without re-generating the bit map pattern, characterised in that: the bit map pattern is stored together with associated resolution information (33); and further characterised by: comparing means for comparing during idling periods the resolution of a character previously stored in the memory means with a current resolution of the apparatus by referring to the associated resolution information in the memory means; and generating means for generating and storing a new bit map pattern corresponding to the current resolution of the apparatus in the memory means when the comparison made by said comparing means shows that the resolution is not equal to the current resolution. An apparatus according to claim 1 wherein: the comparing means is further operable to determine, when the comparison made by said comparing means shows that the resolution is not equal to the current resolution, whether a corresponding bit map pattern of the current resolution of the apparatus is already stored in the memory means; and said generating means generates and stores the new bit map pattern when it is determined by said comparing means that no bit map pattern already in the memory means corresponds to the same character with the current resolution of the apparatus. A method of operating a character output apparatus comprising the steps: generating and storing a bit map pattern (31) of a scalable font character in a memory (51); and using the stored bit map pattern to output said character plural times without re-generating the bit map pattern each time from scalable font data; characterised in that: the bit map pattern is stored together with associated resolution information (33); and further characterised by: comparing during idling periods the resolution of the character in the memory with the current resolution of the apparatus by referring to the associated resolution information in the memory; and generating and storing a new bit map pattern corresponding to the current resolution of the apparatus in the memory when the comparison shows that the resolution is not equal to the current resolution. A method according to claim 3, wherein, when the comparison shows that the resolution is not equal to the current resolution, the comparing step further comprises determining whether a corresponding bit map pattern of the current resolution of the apparatus is already stored in the memory means, and wherein the generating step generates and stores the new bit map pattern when it is determined that no bit map pattern already in the memory means corresponds to the same character with the current resolution of the apparatus.

Inventors: SHIMOOKU TAKASHI, SHIMOOKU, TAKASHI, SHIMOOKU, TAKASHI, CANON KABUSHIKI KAISHA
Applicants: CANON KK, CANON KABUSHIKI KAISHA
Application year: 1991
Main classification: G06K15
IPC codes: B41J5, G09G5, G06K15