Character processing method and apparatus

Abstract: The invention relates to character processing method and apparatus having a function to convert data of a vector form into data of a dot form. The apparatus comprises: a converter for converting data of a vector form into data of a dot form; a discriminating circuit for discriminating a direction to convert the data from the vector form into the dot form on the basis of a size of memory area to store the data after completion of the conversion into the dot form and a size of output data; and a conversion control circuit for controlling the converter so as to convert from the data of the vector form into the data of the dot form in the direction discriminated.

Description: The present invention relates to character processing method and apparatus having a function to convert data of a vector form into data of a dot form. Hitherto, when data of a vector form is converted into data of a dot form, if there is a limitation of a capacity of a memory as shown in Fig. 1, the data of the vector form is converted into the data of the dot form in a row scan direction. When data is transferred to the output side, since the data direction of an output device is set into a column scan direction, a row/column scan conversion is executed and the data is generated. However, there is a problem such that it takes a time to execute the row/column scan converting process, so that a whole processing time increases. JP-A-57076675 discloses a control system in which characters can be turned through 90 degrees by use of a longitudinal-lateral conversion circuit. The system has means for recognising different orientations for different output devices. JP-A-20063762 discloses an output apparatus for a printer in which if the output image exceeds the appropriate paper size the font is reduced accordingly. According to the invention there is provided a character processing apparatus and method according to Claims 1 to 10. In particular, output apparatuses of different scanning types can be connected to said character processing apparatus, said character processing apparatus comprising: generating means for generating dot form data in accordance with vector form data; and memory means for storing the generated dot form data, characterised by discriminating means for discriminating whether an output apparatus connected has a column direction scanning type or a row direction scanning type; and determining means for determining whether one character of dot form data to be generated can be accommodated in a predetermined memory area, wherein, in the event that said determining means determines in operation that the one character of the dot form data to be generated cannot be accommodated in the predetermined memory area, said generating means generates the dot form data in a row direction even if said discriminating means discriminates that the connected output apparatus is of the column direction scanning type. In the accompanying drawings:- Fig. 1 is a diagram showing a conventional process; Fig. 2 is a block diagram showing an internal construction of an apparatus forming an embodiment of the invention; Fig. 3 is a flowchart showing operation of the apparatus; Fig. 4 shows an area assembled on a document screen; Fig. 5 is a flowchart showing more detail of a part of the flowchart of Fig. 3; and Figs. 6A to 6F are diagrams showing the details of processes performed by the apparatus. An embodiment of the invention will be described with reference to the drawings. The invention can be applied to a system comprising a plurality of apparatuses, a system comprising a single apparatus, or the case where it is accomplished by supplying a program to a system or an apparatus. Fig. 2 is a block diagram showing a fundamental construction of a Japanese word processor according to the invention. In Fig. 2, reference numeral 1 denotes a central processing unit (CPU) for executing a control, arithmetic operating processes, and the like of the whole apparatus; 2 a read only memory (ROM) serving as a memory area to store programs shown in flowcharts, which will be explained hereinafter , a system actuation program, character patterns and data, and the like; 3 a random access memory (RAM) serving as a data memory area which has no use limitation and into which the programs and data are stored every various processes and executed; 4 a keyboard control section (KBC) for receiving key input data from a keyboard (KB) 5 and transferring to the CPU 1; 6 a display control section (CRTC); 7 a display device (CRT) for receiving data from the CRTC 6 and displaying; and 9 an external memory device such as floppy disk device (FD), hard disk device (HD), or the like. The programs and data have previously been stored into the external memory device 9 and are referred or loaded into the RAM as necessary upon execution. Reference numeral 8 denotes a disk control section (DKC) to control a data transmission or the like; 10 a printer control section (PRTC); 11 a printer (PRT) constructed by a dot printer such as laser beam printer, bubble jet printer, or the like; and 12 a system bus serving as a path of data among the above component elements. The operation of the embodiment with the above construction will now be described with reference to a flowchart of Fig. 3 and Fig. 4 as an example. In step 1 in Fig. 3, information which is transferred from the output section side is fetched as input parameters. As parameters which are transferred from the output section side, there are a size of whole output area, information scan direction of an actual output area, and the like. The scan direction is set to the row direction in the case where a laser beam printer or a full line type bubble jet printer or thermal copy transfer printer is used as an output device. The scan direction is set to the column direction in the case where a bubble jet printer or a thermal copy transfer printer of the serial type comprising 60 dots or the like in the vertical direction is used as an output device. In step 2, there are executed processes to read information such as point number, character train, kind of modification, and the like which have been written in an area which is assembled on a document screen as shown in Fig. 3 and into which data of a dot form obtained by converting the data of a vector form is stored. Any one of ruled lines, a table, a box, and the like can be used as an area in the embodiment. In step 3, only the necessary data in a character train to be developed is not changed. The unnecessary data is replaced to space codes. In step 4, the character code train after completion of the conversion in step 3 is referred and if it is determined that the character codes are codes other than the space codes, the data of the vector form and the point attributes of a straight line/ curve corresponding to the codes are read and stored into the memory device and the conversion of the x and y coordinate values as data of the vector form is executed in accordance with the character size and the kind of modification which have been read in step 2. If the character codes are the space codes, information indicating that no data have been read is stored into the memory device. In step 5, data of the dot form is formed on the basis of the x/y coordinate data stored in the memory device in step 4. At this time, the scan direction when the data of the dot form is formed from the data of the vector form is determined on the basis of a size of memory which can be developed and a size of character to be generated. The data is developed in accordance with the scan direction as will be explained in detail hereinafter. In step 6, a modification such as to add a mesh or a background to the data is executed to the data converted into the data of the dot form on the basis of the modification information which has been read in step 2. In step 7, a necessary portion in the data of the dot form formed in step 6 is transferred to the memory section on the output side. At this time, if the scan direction in which the data has been formed coincides with that of the scan form on the output side, the data is generated as it is. If it differs, a row/column scan conversion is executed and the resultant data is generated. Fig. 5 is a flowchart for explaining the process of step 5 in Fig. 3 in detail. In step 5-1 in Fig. 5, a memory size which is needed by one character is calculated from the designated point number which has been fetched in step 2 in Fig. 3. A check is made to see if the calculated memory size is larger or smaller than a size of memory which has been prepared. In step 5-2, if the calculated memory size which is necessary by one character is smaller than the prepared memory size, step 5-3 follows. If it is larger, step 5-6 follows. In step 5-3, the scan direction of the output device fetched in step 1 is checked. If the scan direction of the output device is set to the column direction, step 5-4 follows. If it is set to the row direction, step 5-5 follows. In step 5-4, a check is made to see if the MSB/LSB of the data of one byte is located in which direction in the column scan. If it is located in the direction from the MSB to the LSB, step 5-7 follows. If it is located in the direction from the LSB to the MSB, step 5-8 follows. In step 5-5, a positional relation between the MSB and the LSB is discriminated in the case of processing in the row scan direction when one character can be completely stored into the work memory. If it is set to the direction from the MSB to the LSB, step 5-9 follows. If it is set to the direction from the LSB to the MSB, step 5-10 follows. Step 5-6 relates to a process which is executed when it is determined in step 5-2 that one character cannot be fully stored into the work memory. In step 5-6, the entire character is processed in the row direction and a positional relation between the MSB and the LSB in the row direction is discriminated. If it is set to the direction from the MSB to the LSB, step 5-11 follows. If it is set to the direction from the LSB to the MSB, step 5-12 follows. In step 5-7, as shown in Fig. 6A, data of one entire character is formed by the column scan in the direction from the MSB to the LSB. In step 5-8, as shown in Fig. 6B, data of one entire character is formed by the column scan in the direction from the LSB to the MSB. In step 5-9, as shown in Fig. 6C, data of one entire character is formed by the row scan in the direction from the MSB to the LSB. In step 5-10, as shown in Fig. 6D, data of one entire character is formed by the row scan in the direction from the LSB to the MSB. In step 5-11, since data of one entire character cannot be formed in a lump, as shown in Fig. 6E, a part of one character is divided and the data in the divided area is formed by the row scan in the direction from the MSB to the LSB. In step 5-12, since data of one entire character cannot be formed in a lump, as shown in Fig. 6F, a part of one character is divided and the data in the divided area is formed by the row scan in the direction from the LSB to the MSB. As mentioned above, data can be generated at a high speed by changing a method of converting the data of the vector form into the data of the dot form on the basis of a size of memory which has been prepared and a size of character to be generated. As described in detail above, it is possible to properly control processes such that the data of the vector form is converted into the data of the dot form and is developed on the basis of the size of development area which has been prepared and the scan direction of the output section and a character processing apparatus can be provided.

Claims: A character processing apparatus to which output apparatuses of different scanning types can be connected, said character processing apparatus comprising: generating means (1) for generating dot form data in accordance with vector form data; and memory means (3) for storing the generated dot form data, characterised by discriminating means (1) for discriminating whether an output apparatus connected has a column direction scanning type or a row direction scanning type; and determining means (1) for determining whether one character of dot form data to be generated can be accommodated in a predetermined memory area, wherein, in the event that said determining means determines in operation that the one character of the dot form data to be generated cannot be accommodated in the predetermined memory area, said generating means (1) generates the dot form data in a row direction even if said discriminating means discriminates that the connected output apparatus is of the column direction scanning type. A character processing apparatus as claimed in claim 1, characterised in that in the event that said determining means determines in operation that the one character of the dot form data to be generated can be accommodated in the predetermined memory area, said generating means (1) generates the dot form data in a direction corresponding to the scanning type of the connected output apparatus discriminated by said discriminating means. A character processing apparatus as claimed in claim 1 or 2, characterised in that in the event that said determining means determines in operation that the one character of the dot form data to be generated cannot be accommodated in the predetermined memory area, said generating means (1) generates the dot form data by dividing the dot form data into groups. An apparatus as claimed in any one of claims 1 to 3, characterised in that an output device (11) is provided for outputting the dot form data stored in said memory means. An apparatus as claimed in claim 4, characterised in that said output device comprises one of a laser beam printer, a full line type ink jet printer, a serial type ink jet printer, and a thermal printer. A character processing method comprising the steps of generating dot form data in accordance with vector form data; and storing the generated dot form data, characterised by discriminating whether an output apparatus has a column direction scanning type or a row direction scanning type; determining whether one character of dot form data to be generated can be accommodated in a predetermined memory area, and in the event that said determining step determines that the one character of the dot form data to be generated cannot be accommodated in the predetermined memory area, generating the dot form data in a row direction even if said discriminating means discriminates that the connected output apparatus has the column direction scanning type. A method as claimed in claim 6, characterised in that in the event that said determining step determines that the one character of the dot form data to be generated can be accommodated in the predetermined memory area, generating the dot form data in a direction corresponding to the scanning type of the connected output apparatus discriminated by said discriminating means. A method as claimed in claim 6 or 7, characterised by outputting the dot form data stored in said memory means. A method as claimed in any one of claims 6 to 8, characterised in that in the event that said determining step determines that the one character for the dot form data to be generated cannot be accommodated in the predetermined memory area, generating the dot form data by dividing the dot form data into groups.

Inventors: YOSHIDA MASAYUKI, YOSHIDA, MASAYUKI, YOSHIDA, MASAYUKI C/O CANON KABUSHIKI KAISHA
Applicants: CANON KK, CANON KABUSHIKI KAISHA
Application year: 1991
Main classification: G09G1
IPC codes: G06T11, G06K15, G06T3, G09G5