TEXT FORMATTING APPARATUS

Abstract: In an text formatting apparatus having filling means (24) for inputting a text, formatting each line, and performing formatting restriction processing to provide output of said text in a formatted form, the improvement comprises means (16,18,20) for keeping a set of symbols for said formatting restriction processing, said means being responsive to a given command for changing the contents of said set of symbols for said formatting restriction processing.

Description: The present invention relates to text formatting apparatus suitable for obtaining formatted output of text with format restriction performed. When preparing text in a Western language, it is widely done to print the text by formatting it into a desired style, such as conforming the text to the size of the sheet for printing, filling, and performing justification. The functions, operations and actual implementations of such a formatting program are well-known to those skilled in the art, and a number of reference articles are available. Thus, further explanation for the formatter itself is omitted here. As one of the reference articles, consult Chapter 7 "Text Formatting" pp.335-386 of Software Tools" (Authors : Brian W. Kernighan, P. J. Plauger, Translator : Izumi Kimura, published by Kyouritsu Shuppan Co.). The formatting programs of the prior art were used only for formatting text in Western languages. In recent years, however, Japanese text processing has been regarded as important, and thus it has been desired for a formatting program to work well not only on Western text but also on text containg Kanji characters in the similar manner. Furthermore, it is desirable for the formatting program to output formatted text in non-Western language other than Japanese as well, including Chinese and Korean. In implementing a multi-language supporting text formatting apparatus, new problems have arisen. Among them is a problem relating to format restriction processing. Format restriction processing is, as well-known, to make particular characters not placed at the beginning or end of a text line. For example, when the punctuation mark " o " comes to the beginning of a line, this mark will be forced not to be at the beginning of the line by expelling one character from the previous line to this line, as is for instance described in NEC Research & Development, special issue on "C & C Office Systems" 1985, pp 39-44, "Workstations for Document Processing" by H. ITOH and H. YATSUI. In the formatting programs for Japanese text processing of the prior art, the sets of the characters forbidden to be placed at the beginning of a line or at the end of a line were fixed, and their character codes were buried in its program codes. Thus, it was impossible for the user to modify these character sets later. When it was required to use such programs not only for Japanese but also for Chinese, Korean and so on, however, a new problem would arise regarding format restriction processing. That is, the character sets to which the format restriction processing is applied are different among these languages; even if there were a common character thereto, its character code representation might be different. Furthermore, even in one language, which characters are to be format-restricted is somewhat different among individual persons. Thus, the prior text formatting apparatus could not deal with such a situation. One object of the present invention is to solve the problem of the prior art described above and to handle the differences in format restriction processing among languages as well as among individual persons. According to the text formatting apparatus of one embodiment of the present invention, it is possible for the user to change the character sets, as required, to which the format restriction processing are applied. In order to do this, the embodiment allows the user to provide such character sets as the parameters of a command buried in text for starting the filling operation. Figure 1 is a diagram for showing the construction of the text formatting apparatus according to one embodiment of the present invention. In Fig. 1 the reference numerals designate: 12 : input section, 14 : word generating section, 16 : filling command processing section, 18 : first buffer, 20 : second buffer, 24 : filling section In the figure, the text to be formatted is read in via input section 12. In the text are buried commands for controlling the formatting operations of the text formatting apparatus, as well as the text body to be formatted. In the present embodiment, among these commands, there is a command for instructing to start the filling operation. This command can optionally have the parameters to provide the sets of characters which should not be placed at the beginning of a line (hereinafter referred to as prefix restriction character set) and to provide the set of characters which should not be placed at the end of a line (hereinafter referred to as suffix restriction character set), as shown below: .fi p' ┌ ( [ ' s' o . . ┘ ) ]' That is, the example above instructs to perform filling operation upon the portion of the text below this command. In addition, it also provides as the suffix restriction character set those enclosed in the pair of apostrophes following p (in this example, they are ┌ ( and [ ), and as the prefix restriction characters those enclosed in the pair of apostrophes following s (in this example, they are o . , ┘ ) and ] ). In Figure 1, when input section 12 detects this command, it is forwarded to filling command processing section 16 for analysis. Filling command processing section 16 then controls the switching section 22 to cause the output of word generating section 14 to pass through filling section 24. Filling command processing section 16 further extracts the suffix restriction character set and prefix restriction character set from the filling command given to store them in first buffer 18 and second buffer 20 respectively. When one or either of them is not given in this command, the contents of the corresponding buffer is not rewritten. Thus, if the filling operation is once paused and then restarted responsive to .fi command which does not have the parameters described above, then the same format restriction processing will be performed as before. On the other hand, when input section 12 receives any object other than the commands (i.e., when it receives the body of text), it is forwarded to word generating section 14. This section breaks the given text into words to send them one by one to filling section 24. When this section is provided with text in a non-Western language, such as in Japanese, it breaks it into characters such as Kanji or kana character, treating them as if they were words of a Western language. With this treatment, the present text formatting apparatus can handle both Western and non-Western text uniformly. Because the remaining portion of this specification solely describes the processing on non-Western text, explanation will be done with the assumption that word generating section 14 outputs characters one by one. (As a matter of course, filling section 24 explained below can work on any text that includes Western sentences with no problem, since 'character' of non-Western text is treated as 'word' of Western text.) Filling section 24 receives a sequence of characters from word generating section 14 to add them character by character to the end of the line currently being built up. When it is detected that the end of this line has run beyond the right mergin, filling section 24 moves the character added last over to the next line as its beginning character. At this point, the character positioned at the end of the current line and one at the beginning of the next line are respectively compared with the contents of the suffix and prefix restriction character sets. If no coincidence is detected during these comparisons, then the current line will be settled as it is. If at least one of these comparisons shows coincidence, then the last character of the current line will be expelled out to the beginning of the next line. After this, the comparisons above, and, if necessary, the expelling of the last characters will be repeated. Filling section 24 then justifies the current line just settled so that the last character of the current line aligns with the right margin. As is well-known, it may be done by performing proportional spacing printing, or by inserting one or more spaces at appropiate places in the line. Filling section 24 finally passes the current line prepared as above to the section 26 for other treatment. This line will be printed by output section 28 after receiving any required treatment there. The present invention is not limited to the embodiment explained above, and may, of course, be widely modified in accordance with necessity. For example, a plurality of buffers for storing the suffix or prefix restriction character set may be provided to allow selection among them. And, the internal operation of filling section 24 may be different from the explanation given above. Furthermore, the output device is not limited to a printer; display device, for example, may be used. It is also possible to choose the spacing after a period or question mark between a single space character or two, since this spacing scheme is different among countries. As explained above, because the user can freely set and change the restriction character sets in accordance with the present invention, it is possible to provide text formatting apparatus that is capable of accommodating itself to the difference in format restriction of various languages.

Claims: Text formatting apparatus for providing a formatted output of text comprising a filling means (24) for inputting the text, formatting each line and performing format restriction processing, characterized by means (16,18,20) for keeping a character set upon which said format restriction processing is to be done, said means being capable of changing the contents of said character set in response to an instruction given thereto, said instruction being buried in the text to be formatted. Apparatus as in claim 1, characterized in that said character set is provided as parameters of said instructions. Apparatus as in claim 1 or 2, characterized in that said character set comprises characters that are not to appear at a line extremity. Apparatus as in one of the preceding claims, characterized in that said means for keeping a character set comprise a filling command processing section (16) for controlling the formatting of the text and at least one buffer (18,20) for storing at least a part of said character set. Apparatus as in one of the preceding claims, characterized in that an input section (12) has two outputs one of which is connected to a word generating section (14) and the other is connected to a filling command processing section (16), that the output of said word generating section (14) is connected to a filling section (24) via a switching section (22) which may be controlled by said filling command processing section (16) to cause the output of said word generating section (14) to pass through said filling section (24), and that the outputs of two buffers (18,20) the inputs of which are connected in parallel to said filling command processing section (16), are connected to said filling section (24). Method for providing a formatted output of text by inputting the text, formatting each line and performing format restriction processing, characterized by keeping a character set upon which said format restriction processing is to be done and by changing the contents of said character set in response to an instruction given thereto, if desired, said instruction being buried in the text to be formatted. Method as in claim 6, characterized in that said character set is provided as parameters of said instruction.

Inventors: AOKI, TOSHIHISA, WATANABE, SOTOJI
Applicants: HEWLETT-PACKARD COMPANY
Application year: 1987
Main classification: G06F15
IPC codes: G06F3, B41J5, G06F17