Character processing apparatus and method

Abstract: There is provided an output apparatus in which a character pattern of a bit map form can be selected and output or a character pattern can be made and output by arithmetic operating processes. The apparatus comprises: a receiver to receive a command from the outside to indicate which one of the character pattern generating methods is used; a discriminating circuit to discriminate a memory capacity in the apparatus in the case of outputting a certain character and a size of character to be output; and a selector to select on the basis of the memory capacity and the character size either one of the character pattern generating methods in accordance with the command from the outside which is received by the receiver or irrespective of the command from the outside. With the apparatus, the optimum character pattern which the user desires can be made and output by the proper method of the bit map form or the scaling form at a high speed with a small memory capacity at a high print quality.

Description: Field of the Invention The present invention relates to a character processing apparatus for outputting by using a character pattern of a bit map form and a character pattern of other form and a character processing method. Hitherto, there has been known an output apparatus for outputting a relevant character pattern which has previously been recorded in a medium such as an ROM or the like in a bit map form in accordance with a command which was received by a host computer or the like. (Hereinafter, such a style is called a "bit map system".) Or, there has also been known an output apparatus in which a relevant character pattern is newly formed in a bit map form in the apparatus on the basis of design information (for instance, vector font data, stroke font data, etc.) of the character pattern and is output in accordance with a command which was received from a host computer or the like. (Hereinafter, such a style is called a "scaling system".) Character pattern outputs according to the above two systems have the following advantages, respectively. First, in the "bit map system" in which character patterns of the bit map form are previously prepared, by merely transferring the pattern which has already been formed to an output area, the character pattern is output. Thus, the processes are simple, the processing speed is also high, and it is sufficient to provide a small memory area. On the other hand, in the case of the "scaling system" to newly form a character pattern from a bit map from the design information, since the design information itself is formed in a relative position information form, a change in size by setting a reducing/enlarging magnification and a modification of a pattern by setting the coordinate system can be easily executed from one pattern information and it is sufficient that an amount of data itself of the pattern which is prepared is also smaller than the bit map. In the above two different functions, the former "bit map system" is simpler and can be more easily used. Therefore, the "bit map system" has already been put into practical use from the initial stage of the development of the output apparatus. In recent years, the latter "scaling system" has been tried. However, the above two systems also have the following drawbacks, respectively. First, in the "bit map system", since all of the character patterns which are preliminarily used must be prepared, in the case of outputting character patterns of different sizes and designs, a large amount of character pattern designs of the bit map as many as only the number of kinds of character patterns which are used need to be prepared in a memory such as an ROM or the like. For instance, even in the case of the character patterns of the same design, if their sizes differ by merely one level, the bit map patterns corresponding to those character patterns must be prepared as different character patterns in the memory. If the character pattern of the relevant size does not exist, an accurate output as the user desires cannot be derived. On the other hand, a large character pattern needs a large memory area as large as such a large character pattern. Ordinarily, for the character patterns, since a set of a plurality of character patterns such as alphabetic characters, numerals, or the like are handled as a unit, as a character pattern increases, a necessary memory capacity of the whole memory increases. From the above reasons, in the "bit map system", there is inherently a limitation in the number of kinds of character patterns which can be used by a single apparatus. In the case of the "scaling system", upon outputting, a character pattern of a bit map is newly formed and its arranging process inevitably becomes complicated. It takes a long time to arrange the character pattern and efficiency deteriorates. When actually outputting, in general, the character pattern is once converted into a bit map form and output. Therefore, a large memory area is needed although it is temporarily used. As mentioned above, as compared with the method whereby the character patterns are prepared in a bit map form from the beginning, a complicated and large construction of the apparatus is needed and the processing speed is also slow. The output apparatus using the above two systems has been put into practical use in recent years. The formation of the character pattern by the "scaling system" is provided in addition to the "bit map system" which has early been put into practical use. The above two systems have the advantages and disadvantages as mentioned above and the "scaling system" as a new technique is not always excellent. For instance, there is considered a case where the size of memory area which can be used is so small that the character pattern cannot be preferably output by the "scaling system". Fig. 4 shows an example in the case where the character patterns were generated by the "scaling system". In the diagram, reference numeral 41 denotes the result of the output in the case where character patterns were generated by variably changing the size. At this time, if the memory area lacks, as shown by reference numeral 42 in the diagram, a state in which it is impossible to form character patterns and no character pattern can be output can be also caused. In such a case, character patterns can be normally output by using the "bit map system". On the other hand, although the "scaling system" is effective in the case where a character pattern of a size or a design which does not certainly exist is formed and used, if the character pattern which is used already exists in a bit map form, the use of the "bit map system" is obviously effective from viewpoints of the speed, use efficiency of the memory, and the like. It is not always necessary to use the "scaling system". Or, in the case where the output apparatus at the initial stage is mainly designed in the "bit map system" as mentioned above and the application softwares formed on the basis of the "bit map system" which have already been accumulated at that era are used, there is a possibility such that the output result differs from that which has been output so far because of the difference in compatibility with the new system. Further, in the case of the output for what is called an output confirmation such that a high outputting speed is required rather than the accuracy of the formation of the character patterns, the "bit map system" is more effective than the process based on the "scaling system" in which the processing speed is slow although the output accuracy is higher. However, in such a conventional output apparatus, significance is paid to the "scaling system" as a new technique and such an output apparatus is not designed by sufficiently considering the effective use of the advantages and disadvantages of both of the "bit map system" and the "scaling system". Due to an idea to execute the processes by always using the "scaling system", the users of the output apparatuses must perform memory expansion, which would be unnecessary in the conventional output form, and work processing time and correct or abandon the data or application softwares which have been accumulated so far. As mentioned above, the conventional output apparatus does not have means for properly selectively using either the "bit map system" or the "scaling system" as necessary. Therefore, the advantages of those two systems cannot be sufficiently used by the selective use. There is a problem such that a burden on the user increases. It is an object of the present invention to provide an output apparatus in which either one of the "scaling system" and the "bit map system" is preliminarily designated as an output system, while the output system can be properly changed in accordance with a memory capacity, an output character size, or the like. Another object of the invention is to provide means for sufficiently selectively using the "bit map system" and the "scaling system" in accordance with the necessity. Still another object of the invention is to realize an effective character pattern output of a high efficiency in which the advantages of the above two systems can be sufficiently used by the selective use. Further another object of the invention is to provide a character output apparatus to realize a character pattern generating process in which a character pattern generating method can be previously designated and can be further designated in accordance with a situation and a character pattern can be generated and output by the designated method. According to the present invention there is disclosed a character processing apparatus comprising: first generation means operable to receive character data defining a character to be output and to generate a corresponding bit map character pattern from character pattern data of bit map form; second generation means operable to receive character data defining a character to be output and to generate a corresponding bit map character pattern from character pattern data of non-bit map form; and a memory to be used by said second generation means, characterised by further comprising: designation means operable to designate either one of said first and second generation means for output of characters; and selection means operable to select said first generation means for output of a character if said second generation means is designated by said designation means and said memory has insufficient memory capacity to generate the character pattern and operable to select said second generation means for output of a character if said first generation means is designated by said designation means and the size of the character to be output is greater than a predetermined value. According to a further aspect of the present invention there is disclosed a character processing method using an apparatus having: first generation means for receiving character data defining a character to be output and for generating a corresponding bit map character pattern from character pattern data of bit map form; second generation means for receiving character data defining a character to be output and for generating a corresponding bit map character pattern from character pattern data of non-bit map form; and a memory to be used by the second generation means, said method comprising the steps of: designating either one of the first and second generation means for output of characters; and selecting the first generation means for output of a character if the second generation means is designated in said designating step and said memory has insufficient memory capacity to generate the character pattern or selecting the second generating means for output of a character if said first generation means is designated in said designating step and the size of the character to be output is greater than a predetermined value. In embodiments of the invention, the designation means may forcedly set one of the two generation means at power-up, and may receive external commands designating the generation means to be used subsequently. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a block diagram showing a construction of a page printer according to an embodiment of the present invention; Fig. 2 is a plan view showing character pattern generating processes which were improved by the embodiment; Fig. 3 is a flowchart showing the operation of the printer in the embodiment; Fig. 4 is a plan view showing an example of conventional character pattern generating processes; and Fig. 5 is a flowchart for changing a form. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described in detail hereinbelow with reference to the drawings. An apparatus shown in the embodiment may be apparatuses which are connected to a host computer or a single apparatus. Fig. 1 is a block diagram showing a construction of a page printer as an embodiment of the invention. Reference numeral 1 denotes a host computer. The host computer 1 generates data (hereinafter, simply referred to as character data) of characters, numerals, symbols, or the like and various control commands and also generates a character pattern generation form instructing command to designate a character pattern generating method which is used for printing. Those character data and commands are input to a character-generation controller 2 as a main section of the output apparatus according to the embodiment. In the character-generation controller 2, reference numeral 3 denotes an input buffer to temporarily store the character data, various control data, character pattern generation form instructing command, etc. which are input from the host computer 1. Reference numeral 4 indicates a CPU which is constructed by, for instance, a general microprocessor or the like. In accordance with programs or the like corresponding to a processing procedure shown in Fig. 3 and stored in an ROM 4-1, the CPU 4 analyzes the input data accumulated in the input buffer 3 and executes the relevant process. In the case where the input data is character data, the CPU 4 generates a character code 4a. If the character pattern generation form designating instruction is input, the CPU 4 generates a character pattern generation form instructing command 4b. Reference numeral 5 indicates a character pattern generator for generating a relevant character pattern 5c in accordance with the character code 4a which was received from the CPU 4. To generate the character pattern 5c, two processing flows are executed by the character generating method at that time point. First, in the case of the "bit map system", the character pattern generator 5 sends a character pattern selecting command 5a to a character pattern selector 6 so as to search the character pattern corresponding to the character code 4a. In response to the command 5a, the character pattern selector 6 selects the character pattern designated by the character pattern selecting command 5a from among bit map character patterns 6-1 which have been prepared in a bit map form in an ROM, an RAM, or the like. Then, the selector 6 returns the selected character pattern as a bit map character pattern 6a to the character pattern generator 5. Character patterns of the sizes until, for instance, 28.8 points are prepared as the bit map character patterns 6-1. The bit map character pattern 6a is sent to an output page buffer 8. On the other hand, in the case of the "scaling system", the character pattern generator 5 sends a character pattern forming command 5b to a character pattern maker 7 so as to make the character pattern corresponding to the character code 4a. The character pattern maker 7 which receives the command 5b has a memory area to develop the character pattern of the "scaling system" into the bit map character pattern. The character pattern maker 7 forms the character pattern of the bit map form into a memory area 7-2 on the basis of the design information of the character pattern designated by the character pattern forming command 5b existing in character pattern design information 7-1 which has been prepared as a form of the design information of the character pattern in an ROM, an RAM, or the like. Then, the character pattern maker 7 returns the character pattern which was formed as mentioned above as a bit map character pattern 7a to the character pattern generator 5. Reference numeral 8 denotes the output page buffer. The character pattern 5c which was received from the character pattern generator 5 is temporarily stored in the output page buffer 8. A dot image 8a stored is sent to a printer interface (I/F) 9. The printer I/F 9 sends a video signal 9a corresponding to the dot image stored in the output page buffer 8 to a recorder 10 which is constructed by, for instance, a laser beam printer. Reference numeral 11 denotes a character generating method selector according to the embodiment. In accordance with the character generating method selecting command 4b which was received from the CPU 4, the character generating method selector 11 selects either a method of generating a character pattern by the "bit map system" by the character pattern generator 5 or a method of making the character pattern by the "scaling system" and generates the selected character generating method as character generating method instructing command 11a. The character generating method instructing command 11a is input to the character pattern generator 5. It is determined that the character pattern generating process is executed by which one of the above two systems when the character code 4a is sent. For the ROM and RAM which have been mentioned with respect to the bit map character patterns 6-1 and character pattern design information 7-1, both of the ROM and the RAM can commonly store those patterns and information. The memory area 7-2 for development of the character pattern design information 7-1 may be also provided as a part of the RAM. On the other hand, the same ROM as the ROM 4-1 or a different ROM can be also used as the above ROM. Fig. 2 shows states of the character pattern generation according to the embodiment. In the diagram, reference numeral 21 denotes character patterns formed by the "scaling system" and expresses a state in which the size of pattern is freely changed in accordance with commands from the host computer 1 and the character patterns of various sizes are printed. However, as shown by 22 in the diagram, in the case of the "scaling system", since a large memory area is needed, the number of character patterns which can be formed is limited due to circumstances of the memory (memory area 7-2 mentioned above) at that time point. The character patterns of the number larger than that limit value cannot be made nor output. Not only the output patterns lack but also the control itself stops. Or, in the case where an output time is long and a large amount of data is output or the like, the processing speed is too slow and such a system cannot be used. Therefore, the "scaling system" is abandoned and the character pattern generation form instructing command is set to the "bit map system" so as to execute the character pattern generating process by the "bit map system" and the similar data is printed, so that character patterns are printed as shown by 23 in the diagram. For instance, if the output size is set to a size of 28.8 point or less which has already been provided as bit maps, the data in the bit map form can be immediately output in place of the data in the scaling form. By designating the "bit map system", even if the capacity of the memory area 7-2 of the apparatus lacks, the memory itself is unnecessary, so that the character patterns can be printed without any problem. On the other hand, the processing speed is also high and even a large amount of output data can be processed in a short time. The "bit map system" also obviously has a problem. For instance, as shown by 24 in the diagram, if the character pattern of the relevant size or design does not exist, the character pattern of a size near the inherent size is substituted. Consequently, there is also a case where the accurate output as in the case of using the "scaling system" cannot be obtained. In such a case, it is sufficient to generate the character patterns in the "scaling system" with respect to only the character patterns which cannot be supplied by the "bit map system". Reference numeral 25 in the diagram shows the result of the printing in such a case. There is a case where although it is impossible to execute the whole output by the "scaling system" in the memory, it is possible to perform the output with respect to only the necessary portion by the "scaling system". In the case of executing the scaling process for such a necessary part, the processing speed is not so slow. Although the above embodiment has been described with respect to the example of the size of character pattern, the same shall also apply to the design, making method, or the like of character pattern. Fig. 3 shows an example of a procedure for character pattern making processes according to the above embodiment. Reference numerals (S1) to (S10) denote step numbers. When the printing is started, data codes are transmitted by the host computer 1 and the input data is read one unit by one by the CPU 4 (S1). A check is made to see if the input data is character data or not (S2). In the case of the character data, a check is made to see if the character pattern is generated by the "bit map system" or the "scaling system" in accordance with the character pattern generating method designated at that time point (S3). If the "bit map system" is designated, the relevant bit map character pattern is selected (S4). If the "scaling system" has been designated, a character pattern of a bit map is newly formed on the basis of the design information of the relevant character pattern (S5). The character pattern is printed (S6). If the input data is not character data, a check is made to see if the input data is a command to designate the character pattern generating method or not (S7). If NO, the other printing/control process is executed (S8). If the input data is the command to designate the character pattern generating method, the subsequent character pattern generating method is selected by the character generating method selector 11 according to the embodiment (S9). The character pattern generating method designated by the selection is stored into the RAM by using a flag or the like so as to be used in the subsequent character pattern generating processes (S10). The generating method stored is used upon generation of the character patterns mentioned in step (S3) above. By the above processes, when the operator executes the operations to generate and output the character patterns, the best character pattern generating method at that time point can be selected and the character patterns can be output in accordance with the output content of the apparatus and the performance and construction of the apparatus. Thus, the optimum pattern formation which cannot be realized when each of the "bit map system" and the "scaling system" is solely used can be realized. A desired character pattern output of the user can be accomplished. Although the embodiment has been described with respect to the case where the present invention was applied to a page printer, the invention is not limited to the above case but can be also easily applied to an output apparatus such as printer, CRT, or the like of other system. The character pattern generating method can be also switched and selected by using a switch (1000 in Fig. 1) or the like by the user. In this case, the CPU 4 for extracting data from the key section 1000 is used as receiving means. Fig. 5 shows a flowchart for discriminating the state of the memory area 7-2. The processes shown in Fig. 5 can be also provided, for instance, between steps S2 and S3 in Fig. 3. If data has been read in S1 in Fig. 3, a check is first made in S11 in Fig. 5 to see if the character generation is executed by the "scaling system" or the "bit map system". On the other hand, it is now assumed that when the power source is turned on, either one of the systems is forcedly set. However, either one of the systems can be also designated from the outside as mentioned above. In the case of the "scaling system", step S12 follows and a check is made to see if the capacity of the memory area 7-2 is sufficient or not. If YES, since the scaling system is proper for the data to be subsequently output, the processing routine advances, to step S3. If NO in S12, the "bit map system" is selected in S13 in order to use the characters to be subsequently output as data in the bit map form. If NO in S11, that is, if the "bit map system" is selected, S14 follows and a check is made to see if the output size is set to, for instance, 28.8 point or not. If YES, the character pattern of the bit map form is read out but cannot be output as it is. Therefore, the processing routine advances to S15 and the "scaling system" is selected. Then, S3 follows. Due to this, although the generating method of the character to be output has previously been designated to either the "scaling system" or the "bit map system", one of the systems can be properly changed in accordance with the memmory capacity or the size of output character. As described above, according to the invention, the character pattern is made and output in accordance with the designated making form. Therefore, the optimum character pattern making processes can be executed in accordance with the requirements of the user such as compatibility with the conventional outputs, avoidance of the unnecessary scaling process, and the like. A character pattern formation which the user desires can be realized. As mentioned in detail above, it is possible to provide an output apparatus in which a character pattern of a bit map form can be selected and output or a character pattern can be formed and output by arithmetic operating processes, comprising: receiving means for receiving a command from an outside to indicate which one of the character pattern generating methods is used; discriminating means for discriminating a memory capacity in the apparatus in the case of outputting a certain character and a size of character to be output; and selecting means for selecting on the basis of the results of the discrimination of the discriminating means either one of the character pattern generating methods in accordance with the command from the outside which is received by the receiving means or irrespective of the command from the outside.

Claims: A character processing apparatus (1,2,10) comprising: first generation means (6, 6-1) operable to receive character data (5a) defining a character to be output and to generate a corresponding bit map character pattern (6a) from character pattern data of bit map form; second generation means (7, 7-1) operable to receive character data (5b) defining a character to be output and to generate a corresponding bit map character pattern (7a) from character pattern data of non-bit map form; and a memory (7-2) to be used by said second generation means, characterised by further comprising: designation means (S-9, S-10) operable to designate either one of said first and second generation means for output of characters; and selection means (S11,S12,S13; S11,S14,S15) operable to select (S12) said first generation means for output of a character if said second generation means is designated by said designation means and said memory (7-2) has insufficient memory capacity to generate the character pattern and operable to select (S14) said second generation means for output of a character if said first generation means is designated by said designation means and the size of the character to be output is greater than a predetermined value. An apparatus according to claim 1, wherein the character pattern data of non-bit map form comprises vector font data. An apparatus according to claim 1, wherein the character pattern data of non-bit map form comprises stroke font data. An apparatus according to any one of claims 1 to 3, further comprising output means (10) operable to output the character pattern generated by said first or second generation means. An apparatus according to claim 4, wherein said output means comprises a printer. An apparatus according to claim 4, wherein said output means comprises a display device. An apparatus according to any preceding claim, further comprising a host computer (1) operable to provide said character data for defining the character to be output. An apparatus according to any preceding claim, wherein said selection means is operable to select said first or second generation means for each character to be output. A character processing method using an apparatus having: first generation means (6, 6-1) for receiving character data (5a) defining a character to be output and for generating a corresponding bit map character pattern (6a) from character pattern data of bit map form; second generation means (7,7-1) for receiving character data (5b) defining a character to be output and for generating a corresponding bit map character pattern (7a) from character pattern data of non-bit map form; and a memory (7-2) to be used by the second generation means, said method comprising the steps of: designating (S9, S10) either one of the first and second generation means for output of characters; and selecting (S11-S13) the first generation means for output of a character if the second generation means is designated in said designating step and said memory (7-2) has insufficient memory capacity to generate the character pattern or selecting (S11,S14,S15) the second generating means for output of a character if said first generation means is designated in said designating step and the size of the character to be output is greater than a predetermined value. A method according to claim 9, wherein the character pattern data of non-bit map form comprises vector font data. A method according to claim 9, wherein the character pattern data of non-bit map form comprises stroke font data. A method according to any one of claims 9 to 11, further comprising the step (S6) of outputting the character pattern generated by the first or second generation means to output means. A method according to claim 12, wherein the output means comprises a printer. A method according to claim 12, wherein the output means comprises a display device. A method according to any one of claims 9 to 14, wherein said selecting step selects the first or second generation means for each character to be output.

Inventors: MATOBA TORU, MATOBA, TORU
Applicants: CANON KK, CANON KABUSHIKI KAISHA
Application year: 1990
Main classification: G06F3
IPC codes: B41J2, G06K15, B41J5, G09G5