|
|
|
| United States Patent | 5182709 |
| Link to this page | http://www.wikipatents.com/5182709.html |
| Inventor(s) | Makus; Peter M. (Methuen, MA) |
| Abstract | A method and apparatus editing and creating multidirectional or
multidimensional text includes an editor responsive to keystrokes
representing text characters and editing commands for generating a string
of codes defining a text and a parser responsive to operation of the
editor for reading the codes of the string and parsing the codes into
encoded units. Each encoded unit is made up of a group of codes defining a
group of characters that are positioned in an expression as a unit and the
system further generates a unit structure for each encoded unit. Each unit
structure contains information defining a visual representation of the
corresponding encoded unit. The parser is responsive to operation of the
editor for reading the unit structures and corresponding codes of the
string and generating a visually displayable representation of the text.
The codes in the string of codes representing a text include character
codes representing the characters or symbols of the text, and operator
codes defining properties of the text. Each unit structure includes
structural identification fields containing information relating the unit
structure to the group of codes in the text string comprising the
corresponding encoded unit, structural pointers information fields
containing information identifying other unit structures associated with
the unit structure, and property identification fields containing
information defining attributes which apply to the characters or symbols
of the corresponding encoded unit. Each unit structure includes a location
field containing information identifying the location of the corresponding
encoded unit upon a page. |
|
|
|
Title Information  |
|
|
|
|
|
Drawing from US Patent 5182709 |
|
|
System for parsing multidimensional and multidirectional text into
encoded units and storing each encoded unit as a separate data structure |
|
|
|
|
|
| Publication Date |
January 26, 1993 |
|
|
|
|
|
| Filing Date |
February 28, 1990 |
|
|
|
|
|
|
|
|
|
|
|
| Parent Case |
This is a continuation of co-pending application Ser. No. 07/208,815 filed
on Jun. 16, 1988, now abandoned, which is a continuation of Ser. No.
06/879,729 filed on Jun. 27, 1986 now abandoned, which is a
continuation-in-part of Ser. No. 06/846,667 filed Mar. 31, 1986, now
abandoned. |
|
|
|
|
|
|
|
|
|
|
|
|
|
Title Information  |
|
|
References  |
|
|
| *references marked with an asterisk below are user-added references |
|
U.S. References |
|
|
| Add a new US reference: |
| | Reference | Relevancy | Comments | Reference | Relevancy | Comments | 4723217 Nakano
Feb,1988 |      Your vote accepted [0 after 0 votes] | | 4707801 Barnes 715/523 Nov,1987 |      Your vote accepted [0 after 0 votes] | | 4689764 Daniels 715/518 Aug,1987 |      Your vote accepted [0 after 0 votes] | | 4689737 Grant 704/8 Aug,1987 |      Your vote accepted [0 after 0 votes] | | 4684926 Yong-Min 341/28 Aug,1987 |      Your vote accepted [0 after 0 votes] | | 4680578 Hornig 345/472 Jul,1987 |      Your vote accepted [0 after 0 votes] | | 4677571 Riseman 358/1.9 Jun,1987 |      Your vote accepted [0 after 0 votes] | | 4670842 Metwaly 715/535 Jun,1987 |      Your vote accepted [0 after 0 votes] | | 4660029 Houda 345/553 Apr,1987 |      Your vote accepted [0 after 0 votes] | | 4648047 Berkland 358/1.13 Mar,1987 |      Your vote accepted [0 after 0 votes] | | 4621340 Pokorny 345/468 Nov,1986 |      Your vote accepted [0 after 0 votes] | | 4606664 Pascoe 715/538 Aug,1986 |      Your vote accepted [0 after 0 votes] | | 4604712 Orrhammar 358/1.11 Aug,1986 |      Your vote accepted [0 after 0 votes] | | 4603330 Horne 345/467 Jul,1986 |      Your vote accepted [0 after 0 votes] | | 4584574 Beausoleil 345/16 Apr,1986 |      Your vote accepted [0 after 0 votes] | | 4559615 Goo 715/535 Dec,1985 |      Your vote accepted [0 after 0 votes] | | 4555699 Citron 345/179 Nov,1985 |      Your vote accepted [0 after 0 votes] | | 4539653 Bartlett 715/520 Sep,1985 |      Your vote accepted [0 after 0 votes] | | 4507734 Kaldas 715/535 Mar,1985 |      Your vote accepted [0 after 0 votes] | | 4505602 Wong 400/110 Mar,1985 |      Your vote accepted [0 after 0 votes] | | 4498143 Strzelecki 715/535 Feb,1985 |      Your vote accepted [0 after 0 votes] | | 4464730 Lawrence 715/529 Aug,1984 |      Your vote accepted [0 after 0 votes] | | 4397572 Barnes 400/3 Aug,1983 |      Your vote accepted [0 after 0 votes] | | 4393463 Aiken, Jr. 715/542 Jul,1983 |      Your vote accepted [0 after 0 votes] | | 4310840 Williams
Jan,1982 |      Your vote accepted [0 after 0 votes] | | 4244657 Wasylyk 400/109 Jan,1981 |      Your vote accepted [0 after 0 votes] | | 4195338 Freeman 715/519 Mar,1980 |      Your vote accepted [0 after 0 votes] | | 4124843 Bramson 345/171 Nov,1978 |      Your vote accepted [0 after 0 votes] | | 3927752 Jones 400/487 Dec,1975 |      Your vote accepted [0 after 0 votes] | | 4490789 Leban 715/535 Dec,1969 |      Your vote accepted [0 after 0 votes] | | |
|
|
|
|
U.S. References |
|
|
Foreign References |
|
|
|
|
|
|
Foreign References |
|
|
Other References |
|
|
|
|
|
|
Other References |
|
|
|
|
|
References  |
|
|
|
|
|
| Market Size |
|
Estimate the gross annual revenues of the relevant market
sector:
|
| | |
| |
|
|
| Market Share |
|
Estimate the percentage of the relevant market sector this invention will capture:
|
| | |
| |
|
|
| Reasonable Royalty |
|
What percentage of gross sales should the inventor or assignee be paid?
|
| | |
| |
|
|
|
Public's "Guesstimation" of Royalty Value
|
| Market Size | N/A | [No votes] | | x | Market Share | N/A | [No votes] | | x | Reasonable Royalty | N/A | [No votes] |
| | N/A | |
| |
|
|
|
|
|
|
|
|
|
|
|
|
Market Review  |
|
|
Technical Review  |
|
|
Claims  |
|
|
What is claimed is:
1. In an information processing system including a keyboard, a display
device, and an editing means, coupled to said keyboard and said display
device, for editing both multidirectional and multidimensional text, the
editing means comprising:
memory means storing instructions for editing text, said text including
said multidirectional and multidimensional text;
input receiving means responsive to keystrokes from said keyboard
representing text characters and editing commands for generating a string
of codes defining a text;
parser means responsive to said string of codes from the input receiving
means and said instructions in said memory means for:
reading the codes of the string and parsing the codes into encoded units,
each of said encoded units being stored in said memory means as a data
structure, each said encoded unit defining a different group of one or
more characters and at least one of said encoder units defining a group of
two or more characters that are positioned in an expression as a unit,
said unit being delineated by predefined characters, and being comprised
of codes which define the group, and
generating for each said encoded unit a unit structure and storing said
unit structure in said memory means, wherein each said unit structure is
comprised of a data structure that contains information defining a visual
representation of the corresponding encoded unit, said visual
representation being such that said multidirectional text and said
multidimensional text are represented for visual display; and
display means for receiving and displaying said visual representation
information from said memory means on said display device.
2. The text editing means of claim 1, wherein:
the parser means is further responsive to operation of the input receiving
means for
reading unit structures and corresponding codes of the string and
generating a visually displayable representation of the text.
3. The text editing means of claim 1, wherein the codes in the string of
codes representing a text include:
character codes representing the characters of the text, and
operator codes defining properties of the text other than the characters
from which it is constituted.
4. The text editing means of claim 3, wherein the operator codes comprise:
prefix operators operating upon a following character, group of characters
or unit or group of units,
postfix operators operating upon a preceding character, group of characters
or unit or group of units, and
infix operators operating concurrently upon two characters, groups of
characters or units or group of units.
5. The text editing means of claim 4, wherein an infix operator operates to
define a relationship between the two characters, groups of characters or
units or group of units operated upon by the operator.
6. The text editing means of claim 5, wherein an infix operator occurs in
the string of codes between the two characters, groups of characters or
units or group of units operated upon by the operator.
7. The text editing means of claim 3, wherein the operator codes comprise:
structural operators defining organizational relationships between the
units, and
environmental operators defining attributes of the characters.
8. The text editing means of claim 7, wherein the structural operators
comprise:
unit operators defining spatial relationships between units of the text.
9. The text editing means of claim 8, wherein the structural operators
comprise:
initiating operators initiating corresponding units defined by the
operators, and
corresponding terminating operators terminating the units initiated by the
initiating operators.
10. The text editing means of claim 7, wherein the structural operators
comprise:
associative operators defining an association between a character and
another character such that
the character becomes a part of the definition of the other character.
11. The text editing means of claim 10, wherein the associative operators
include:
diacritic operators which operate to signify a correspondence between a
diacritic mark of the text characters with a base character of the text
characters.
12. The text editing means of claim 7, wherein the environmental operators
comprise:
attribute switching operators which operate to turn on or turn off a
corresponding attribute.
13. The text editing means of claim 7, wherein the environmental operators
comprise:
attribute modification operators which operate to modify a continuously
existing attribute.
14. The text editing means of claim 3, wherein the operator codes comprise:
script operator codes, wherein
each script operator code defines a script unit of the encoded units
located in a script position with respect to a base unit of the encoded
units.
15. The text editing means of claim 14, wherein each script unit is defined
as a unit having a baseline oriented with respect to the baseline of the
base unit and offset from the baseline of the base unit by a selected
distance and wherein the location of the script unit baseline relative to
the base unit is determined by the script operator code.
16. The text editing means of claim 15, wherein the baseline of the script
unit may be offset to either side of the baseline of the base unit.
17. The text editing means of claim 16, wherein the script is located in a
position
preceding the base unit,
centered on a line passing vertically through the base unit, or following
the base unit.
18. The text editing means of claim 15, wherein the script unit is located
in a position
preceding the base unit,
centered on a line passing vertically through the base unit, or following
the base unit.
19. The text editing means of claim 15, wherein the script operators
include operators for a presuperscript, above script superscript,
presubscript, below script and subscript locations.
20. The text editing means of claim 15, wherein the operator codes include:
line split operator codes, wherein
each line split operator code defines a group of N units wherein the group
of N units are arranged along a line oriented at right angles to a
baseline.
21. The text editing means of claim 20, wherein the group of N units are
centered about the baseline.
22. The text editing means of claim 20, wherein the group of N units are
centered about a line split starting location which is offset with respect
to the baseline.
23. The text editing means of claim 22, wherein the baseline of the script
unit may be offset to either side of the base unit.
24. The text editing means of claim 23, wherein the script unit is located
in a position
preceding the base unit,
centered on a line passing vertically through the base unit, or following
the base unit.
25. The text editing means of claim 22, wherein the script unit is located
in a position
preceding the base unit,
centered on a line passing vertically through the base unit, or following
the base unit.
26. The text editing means of claim 3, wherein certain ones of the operator
codes include associated parameter codes further defining the operation to
be performed.
27. The text editing means of claim 3, wherein certain ones of the operator
codes are terminator codes which operate to terminate a preceding operator
code.
28. The text editing means of claim 1, wherein each unit structure further
comprises:
structural identification fields containing information relating the unit
structure to the group of codes in the text string comprising the encoded
unit corresponding to the unit structure.
29. The text editing means of claim 28, wherein the unit structure further
includes:
structural flag fields containing information identifying a reason the
present unit is separated from the parent or preceding unit.
30. The text editing means of claim 1, wherein each unit structure further
comprises:
structural pointers information fields containing information identifying
other unit structures associated with the unit structure.
31. The text editing means of claim 1, wherein each unit structure further
comprises:
property identification fields containing information defining attributes
which apply to the characters or symbols of the corresponding encoded
unit.
32. The text editing means of claim 31, wherein the information residing in
the property identification fields includes information describing the
location and dimensions of the unit on a page.
33. The text editing means of claim 32, wherein the location and
dimensional information residing in the property identification fields
includes information identifying dimensions of all script, line split and
bar units associated with the unit.
34. The text editing means of claim 1, wherein each unit structure further
comprises:
a location field containing information identifying the location of the
corresponding encoded unit within a page of text that is currently being
edited.
35. A computer implemented method performed by an editing means for editing
and displaying text including both multidimensional and multidirectional
text in an information processing system including a keyboard, a display
device, and said editing means coupled to said keyboard and said display
device, said editing means including memory means, input receiving means,
parser means, and display means; said method comprising the steps of:
a) receiving by said input receiving means a stream of said text as input
from said keyboard, said text including said multidimensional and said
multidirectional text;
b) generating by said input receiving means a string of codes defining said
text;
c) reading the codes of the string and parsing said codes into encoded
units by said parser means, each of said encoded units being stored in
said memory means as a data structure, each said encoded unit defining a
different group of one or more characters and at least one of said encoder
units defining a group of two or more characters that are positioned in an
expression as a unit, said unit being delineated by predefined characters,
and being comprised of codes which define the group;
d) generating by said parser means for each said encoded unit a unit
structure and storing said unit structure in said memory means, wherein
said unit structure is comprised of a data structure that contains
information defining a visual representation of the corresponding encoded
unit, said visual representation being such that said multidirectional and
said multidimensional text are represented for visual display; and
e) displaying by said display means on said display device said visual
representation information from said memory means. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
CROSS REFERENCES TO RELATED APPLICATIONS
The present patent application is related to the following U.S. patent
applications:
______________________________________
U.S.S.N. Filing Date
______________________________________
846,667 3/31/86
879,700 8/8/86
879,729 6/27/86
880,607 10/14/86
122,615 11/19/87
______________________________________
All of the above patent applications have been abandoned.
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to text editors and, more particularly, to a
text editor allowing word processing like operation with multidimensional
or multidirectional text, such as text comprised of scientific and
technical characters and symbols, including those used in the
mathematical, physical and chemical fields, and the text of non-European
languages.
2. Discussion of the Prior Art
The most common means for presenting, communicating and storing information
is through visual representations of the information, for example, printed
texts and images and, more recently, through equivalent electronic
displays such as CRT screens connected from computer systems. In recent
years, the facility with which texts and graphics images can be created
and edited and printed, communicated and stored has been greatly
facilitated by various word processing and graphics editor programs
operating upon computers system. Both word and graphics processing systems
have become well known and are readily and commonly available to the
extent that practically any reasonable user requirements of system,
features, operation and cost can be readily met.
A recurring problem with such systems, however, is that each type of
system, that is, word processing or graphics processing, can operate only
within a narrow range of information type and presentation. For example,
word processing systems generally can operate only with standard text of
the forms generally used in the European languages, such as English, that
is, standard alpha-numeric characters of uniform, standard sizes and
shapes arranged on a page in standard lines and columns to form lines and
paragraphs. Within this constraint, however, the word processing programs
are generally quite efficient and easy to use. Graphics programs, in
contrast, deal with symbols and figures of variable shapes and sizes and
their visual appearance and location upon a page. Such programs provide a
means by which a user may define shapes and their sizes and locations upon
the page and may place, move and change such shapes but are relatively
more difficult for a user to learn and use.
This separation between word processing and graphics processing programs
arises because the word processing data structures and data structure
editors which are best adapted for creating and editing standard text are
incompatible with the graphics data structures and data structure editors
which best adapted to creating, editing and representing graphics symbols
and figures. As described above, word processors are designed to operated
with simple strings of standard, uniform elements arranged within a fixed
array of possible locations on a page while graphics processors deal with
variable lines and shapes which may be located anywhere on a page.
There is an area of information processing and presentation, however, which
is neither strictly word processing nor strictly graphics processing and
which is not adequately satisfied by systems of either of the types
described above. This area of information processing and presentation may
be generally defined as being comprised of those forms of text which are
either multidimensional or multidirectional, or both. A primary and
commonly seen example of such text is scientific text and symbols in the
traditionally accepted forms, for example, equations, expressions or
diagrams as used in the mathematical, chemical or physical fields and
using the symbols and terms used in these fields. Other example, as
previously described, include those languages wherein the text, that is,
the positioning of the characters and symbols on the page and their
logical and physical relationships to one another do not follow the one
dimensional, monodirectional conventions of, for example, English, German,
French or Italian. Examples such such foreign language texts may include
the branches of the Indic language groups, such as used in India, and the
texts of such countries as Sri Lanka, Burma, Thailand, and such languages
as Chinese, Japanese and the various branches of the Arabic languages.
It is apparent from a study of a page of a text of this nature, for
example, a page of scientific text, that the text is comprised of logical
groupings of one or more character or symbol elements arranged in a
meaningful manner relative to one another. It is further apparent,
however, that the characters and symbols are of variable shape and size
and that their locations relative to one another are also variable. It is
yet further apparent that the geometric area occupied by a group of
characters or symbols, and the location of that area on a page, will be
determined by the structure of the group of characters or symbols and of
the other groups of characters or symbols on the page, in particular the
preceding groups on the page and perhaps the following groups on the same
line.
In the prior art, the editors for such texts have generally fallen into one
of the two types described before, that is, the word processing type or
the graphics processing type. In the word processing type of text editor
of the prior art, the editors have most frequently been adaptations of
simple word processors, with some addition of characters and symbols to
the standard character sets and formatting commands. This type of word
processing text editor has been unsatisfactory because of the limited
powers of expression available therefrom. That is, the characters and
symbols are forced into the standard character sizes and proportions and
may occupy only the positions generally provided in word processing, for
example, simple superscripts and subscripts. Some word processing type
text editors have attempted to provide a wider range of characters,
symbols and expression, but have been markedly more difficult to use and
generally cannot provide a representation of the appearance of the final
page to the user during the creation and editing operations. That is, the
wider range of expression is achieved by embedding control codes in the
text during text creation and editing, but the user must actually print
the page to have a representation of the true appearance of the page.
While graphics processing systems are much more flexible than word
processing type systems in terms of the range of characters, symbols and
expressions which may be created and presented, they are generally much
more difficult to use, primarily because of their greater flexibility. In
effect, the user must draw each individual character, symbol or line
individually, or at least create a template of each type to appear in an
expression, and then must position each character, symbol or line
individually on the page. In terms of text editing, this approach is
little better than having a template of characters and symbols, a piece of
paper and a pen.
As will be described in the following, the text editor of the present
invention overcomes these and other problems of the prior art by providing
a text editor having a word-processor-like document creation and editing
functionality together with a graphics-like visual representation suitable
for creating and editing text and expressions which are multidimensional
or multidirectional, or both, in their traditionally accepted forms, for
example, equations, expressions or diagrams as used in the mathematical,
chemical or physical fields and using the characters, symbols and terms
commonly accepted and used in the | | |