Patent US6426751B1 successfully refreshed from Google Patents.
US6426751B1
Expired / Lapsed
US
⏱️ 0.0 years remaining
Font feature file processing
Assignee: Adobe Inc
•
Filing: 1999-04-01
•
Granted: 2002-07-30
•
Expires: 2019-04-01
Abstract
Abstract Methods and apparatus that process a front-end editable text file—a feature file—that specifies features for a font, and in particular to an OpenType™ font. The specified features are parsed and stored in the font as font data. The feature file contains simple logic statements for the specification of various typographical features, such as layout features, expressed in a high-level feature definition language. The feature file may contain override values for fields in font tables. The feature file can be processed in combination with an existing font file to establish an enhanced font file.
Inventors
- 👤 Sairus P. Patel
- 👤 Jeremy A. Hall
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-09 15:45
CPC Classifications
G; G06; G06F; G06F40/00; G06F40/10; G06F40/103; G06F40/109
Claims Analysis
Total Claims: 34
Claim 1
Independent Claim
109 words
A method of adding typographic features to a font, comprising: providing a feature file containing feature definitions expressed in a high-level feature definition language that has a form of statement for defining substitution rules and a form of statement for defining positioning rules; grouping the rule by type and determining an appropriate table format to use for each group of rules; reading and parsing the feature file in a computer program to generate internal representations of the feature definitions and storing the internal representation in computer memory; converting the feature definitions into font table or subtable definitions; and writing out the table or subtable definitions into a font file.
Claim 2
Independent Claim
109 words
A method of adding typographic features to a font, comprising: providing a feature file containing feature definitions expressed in a high-level feature definition language that has a form of statement for defining substitution rules and a form of statement for defining positioning rules; grouping the rule by type and determining an appropriate table format to use for each group of rules; reading and parsing the feature file in a computer program to generate internal representations of the feature definitions and storing the internal representation in computer memory; converting the feature definitions into font table or subtable definitions; and writing out the table or subtable definitions into a font file.
Claim 3
Dependent Claim
24 words
The method of claim 1 , further comprising: referencing a glyph aliasing database to derive a final glyph name from a user-friendly glyph name.
Claim 4
Independent Claim
130 words
A method of adding typographic features to a font, comprising: providing a text file editable by a text editor and containing feature definitions expressed in a high-level feature definition language, the feature definition language having a form of statement for defining substitution rules and a form of statement for defining positioning rules; reading and parsing the text file in a computer program to generate internal representations of the feature definitions and storing the internal representation in computer memory; converting the feature definitions into font table or subtable definitions; writing out the table or subtable definitions into a font file; and identifying a specific font table or subtable inferentially from a substitution rule statement and converting the substitution rule statement into a definition for the identified specific font table or subtable.
Claim 5
Independent Claim
130 words
A method of adding typographic features to a font, comprising: providing a text file editable by a text editor and containing feature definitions expressed in a high-level feature definition language, the feature definition language having a form of statement for defining substitution rules and a form of statement for defining positioning rules; reading and parsing the text file in a computer program to generate internal representations of the feature definitions and storing the internal representation in computer memory; converting the feature definitions into font table or subtable definitions; writing out the table or subtable definitions into a font file; and identifying a specific font table or subtable inferentially from a substitution rule statement and converting the substitution rule statement into a definition for the identified specific font table or subtable.
Claim 6
Independent Claim
130 words
A method of adding typographic features to a font, comprising: providing a text file editable by a text editor and containing feature definitions expressed in a high-level feature definition language, the feature definition language having a form of statement for defining substitution rules and a form of statement for defining positioning rules; reading and parsing the text file in a computer program to generate internal representations of the feature definitions and storing the internal representation in computer memory; converting the feature definitions into font table or subtable definitions; writing out the table or subtable definitions into a font file; and identifying a specific font table or subtable inferentially from a positioning rule statement and converting the positioning rule statement into a definition for the identified specific font table or subtable.
Claim 7
Independent Claim
130 words
A method of adding typographic features to a font, comprising: providing a text file editable by a text editor and containing feature definitions expressed in a high-level feature definition language, the feature definition language having a form of statement for defining substitution rules and a form of statement for defining positioning rules; reading and parsing the text file in a computer program to generate internal representations of the feature definitions and storing the internal representation in computer memory; converting the feature definitions into font table or subtable definitions; writing out the table or subtable definitions into a font file; and identifying a specific font table or subtable inferentially from a positioning rule statement and converting the positioning rule statement into a definition for the identified specific font table or subtable.
Claim 8
Dependent Claim
33 words
The method of claim 1 , further comprising: creating shared data structures without user intervention from the feature definitions and removing redundancies before writing out the feature definitions into an OpenType font file.
Claim 9
Dependent Claim
30 words
The method of claim 5 , further comprising: calculating the sizes of subtable format options for an OpenType table and selecting the smallest option for writing out corresponding feature definitions.
Claim 10
Dependent Claim
21 words
The method of claim 6 , wherein the feature definition language does not have constructs to express a subtable format selection.
Claim 11
Dependent Claim
27 words
The method of claim 3 , wherein the definition of a liga feature is expressed in the feature definition language as a feature block enclosing substitution rules.
Claim 12
Dependent Claim
54 words
The method of claim 3 , wherein the definition of a liga feature comprises a substitution rule of the form “substitute <glyph sequence> by <glyph>”, where <glyph sequence> contains a glyph class, the method comprising: enumerating all specific glyph sequences defined by <glyph sequence> as glyph sequences that do not contain a glyph class.
Claim 13
Dependent Claim
26 words
The method of claim 1 , wherein the feature definitions include a definition of a labeled block that defines a single lookup in an OpenType font.
Claim 14
Dependent Claim
85 words
The method of claim 1 , wherein the feature definition language is based on declarative logic statements, and wherein the feature definition language does not have constructs to express a subtable format selection, the method further comprising: creating shared data structures without user intervention from the feature definitions and removing redundancies before writing out the feature definitions into an OpenType font file; and calculating the sizes of subtable format options for an OpenType table and selecting the smallest option for writing out corresponding feature definitions.
Claim 15
Independent Claim
138 words
A system operable to add typographic features to a font, comprising: a programmable computer having an instruction processor, random access memory, and data file memory; means for reading a feature file containing feature definitions expressed in a high-level feature definition language; means for parsing the feature file to generate internal representations of the feature definitions; means for processing a form of statement for defining substitution rules and a form of statement for defining positioning rules; means for storing the internal representation in the random access memory; means for converting the feature definitions into font table or subtable definitions; means for writing out the table or subtable definitions into a font file stored in the data file memory; and means for grouping the rules by type and determining an appropriate table format to use for each group of rules.
Claim 16
Independent Claim
138 words
A system operable to add typographic features to a font, comprising: a programmable computer having an instruction processor, random access memory, and data file memory; means for reading a feature file containing feature definitions expressed in a high-level feature definition language; means for parsing the feature file to generate internal representations of the feature definitions; means for processing a form of statement for defining substitution rules and a form of statement for defining positioning rules; means for storing the internal representation in the random access memory; means for converting the feature definitions into font table or subtable definitions; means for writing out the table or subtable definitions into a font file stored in the data file memory; and means for grouping the rules by type and determining an appropriate table format to use for each group of rules.
Claim 17
Dependent Claim
26 words
The system of claim 12 , further comprising: means for referencing a glyph aliasing database to derive a final glyph name from a user-friendly glyph name.
Claim 18
Independent Claim
156 words
A system operable to add typographic features to a font, comprising: a programmable computer having an instruction processor, random access memory, and data file memory; means for reading a text file editable by a text editor and containing feature definitions expressed in a high-level feature definition language; means for parsing the text file to generate internal representations of the feature definitions; means for storing the internal representation in the random access memory; means for converting the feature definitions into font table or subtable definitions; means for writing out the table or subtable definitions into a font file stored in the data file memory; means for processing a form of statement for defining substitution rules and a form of statement for defining positioning rules; and means for identifying a specific font table or subtable inferentially from a substitution rule statement and converting the substitution rule statement into a definition for the identified specific font table or subtable.
Claim 19
Independent Claim
156 words
A system operable to add typographic features to a font, comprising: a programmable computer having an instruction processor, random access memory, and data file memory; means for reading a text file editable by a text editor and containing feature definitions expressed in a high-level feature definition language; means for parsing the text file to generate internal representations of the feature definitions; means for storing the internal representation in the random access memory; means for converting the feature definitions into font table or subtable definitions; means for writing out the table or subtable definitions into a font file stored in the data file memory; means for processing a form of statement for defining substitution rules and a form of statement for defining positioning rules; and means for identifying a specific font table or subtable inferentially from a substitution rule statement and converting the substitution rule statement into a definition for the identified specific font table or subtable.
Claim 20
Independent Claim
156 words
A system operable to add typographic features to a font, comprising: a programmable computer having an instruction processor, random access memory, and data file memory; means for reading a text file editable by a text editor and containing feature definitions expressed in a high-level feature definition language; means for parsing the text file to generate internal representations of the feature definitions; means for storing the internal representation in the random access memory; means for converting the feature definitions into font table or subtable definitions; means for writing out the table or subtable definitions into a font file stored in the data file memory; means for processing a form of statement for defining substitution rules and a form of statement for defining positioning rules; and means for identifying a specific font table or subtable inferentially from a positioning rule statement and converting the positioning rule statement into a definition for the identified specific font table or subtable.
Claim 21
Independent Claim
156 words
A system operable to add typographic features to a font, comprising: a programmable computer having an instruction processor, random access memory, and data file memory; means for reading a text file editable by a text editor and containing feature definitions expressed in a high-level feature definition language; means for parsing the text file to generate internal representations of the feature definitions; means for storing the internal representation in the random access memory; means for converting the feature definitions into font table or subtable definitions; means for writing out the table or subtable definitions into a font file stored in the data file memory; means for processing a form of statement for defining substitution rules and a form of statement for defining positioning rules; and means for identifying a specific font table or subtable inferentially from a positioning rule statement and converting the positioning rule statement into a definition for the identified specific font table or subtable.
Claim 22
Dependent Claim
35 words
The system of claim 12 , further comprising: means for creating shared data structures without user intervention from the feature definitions and removing redundancies before writing out the feature definitions into an OpenType font file.
Claim 23
Dependent Claim
32 words
The system of claim 16 , further comprising: means for calculating the sizes of subtable format options for an OpenType table and selecting the smallest option for writing out corresponding feature definitions.
Claim 24
Dependent Claim
58 words
The system of claim 12 , wherein the feature definition language is based on declarative logic statements, the system further comprising: means for creating shared data structures without user intervention from the feature definitions and removing redundancies before writing out the feature definitions into an OpenType font file; and means for processing a definition of a liga feature.
Claim 25
Dependent Claim
116 words
A computer program product, tangibly stored on a computer-readable medium, for adding typographic features to a font, comprising instructions operable to cause a computer to; read a feature file containing feature definitions expressed in a high-level feature definition language; process a form of statement for defining substitution rules and a form of statement for defining positioning rules; group the rules by type and determine an appropriate table format to use for each group of rules; parse the feature file to generate internal representations of the feature definitions; store the internal representation in a memory; convert the feature definitions into font table or subtable definitions; and write out the table or subtable definitions into a font file.
Claim 26
Dependent Claim
116 words
A computer program product, tangibly stored on a computer-readable medium, for adding typographic features to a font, comprising instructions operable to cause a computer to; read a feature file containing feature definitions expressed in a high-level feature definition language; process a form of statement for defining substitution rules and a form of statement for defining positioning rules; group the rules by type and determine an appropriate table format to use for each group of rules; parse the feature file to generate internal representations of the feature definitions; store the internal representation in a memory; convert the feature definitions into font table or subtable definitions; and write out the table or subtable definitions into a font file.
Claim 27
Dependent Claim
31 words
The product of claim 19 , further comprising instructions operable to cause a computer to: reference a glyph aliasing database to derive a final glyph name from a user-friendly glyph name.
Claim 28
Dependent Claim
134 words
A computer program product, tangibly stored on a computer-readable medium, for adding typographic features to a font, comprising instructions operable to cause a computer to: read a text file editable by a text editor and containing feature definitions expressed in a high-level feature definition language; parse the text file to generate internal representations of the feature definitions; store the internal representation in a memory; convert the feature definitions into font table or subtable definitions; write out the table or subtable definitions into a font file; process a form of statement for defining substitution rules and a form of statement for defining positioning rules; and identify a specific font table or subtable inferentially from a substitution rule statement and convert the substitution rule statement into a definition for the identified specific font table or subtable.
Claim 29
Dependent Claim
134 words
A computer program product, tangibly stored on a computer-readable medium, for adding typographic features to a font, comprising instructions operable to cause a computer to: read a text file editable by a text editor and containing feature definitions expressed in a high-level feature definition language; parse the text file to generate internal representations of the feature definitions; store the internal representation in a memory; convert the feature definitions into font table or subtable definitions; write out the table or subtable definitions into a font file; process a form of statement for defining substitution rules and a form of statement for defining positioning rules; and identify a specific font table or subtable inferentially from a substitution rule statement and convert the substitution rule statement into a definition for the identified specific font table or subtable.
Claim 30
Dependent Claim
134 words
A computer program product, tangibly stored on a computer-readable medium, for adding typographic features to a font, comprising instructions operable to cause a computer to: read a text file editable by a text editor and containing feature definitions expressed in a high-level feature definition language; parse the text file to generate internal representations of the feature definitions; store the internal representation in a memory; convert the feature definitions into font table or subtable definitions; write out the table or subtable definitions into a font file; process a form of statement for defining substitution rules and a form of statement for defining positioning rules; and identify a specific font table or subtable inferentially from a positioning rule statement and convert the positioning rule statement into a definition for the identified specific font table or subtable.
Claim 31
Dependent Claim
134 words
A computer program product, tangibly stored on a computer-readable medium, for adding typographic features to a font, comprising instructions operable to cause a computer to: read a text file editable by a text editor and containing feature definitions expressed in a high-level feature definition language; parse the text file to generate internal representations of the feature definitions; store the internal representation in a memory; convert the feature definitions into font table or subtable definitions; write out the table or subtable definitions into a font file; process a form of statement for defining substitution rules and a form of statement for defining positioning rules; and identify a specific font table or subtable inferentially from a positioning rule statement and convert the positioning rule statement into a definition for the identified specific font table or subtable.
Claim 32
Dependent Claim
40 words
The product of claim 19 , further comprising instructions operable to cause a computer to: create shared data structures without user intervention from the feature definitions and removing redundancies before writing out the feature definitions into an OpenType font file.
Claim 33
Dependent Claim
37 words
The product of claim 23 , further comprising instructions operable to cause a computer to: calculate the sizes of subtable format options for an OpenType table and selecting the smallest option for writing out corresponding feature definitions.
Claim 34
Dependent Claim
53 words
The product of claim 19 , wherein the feature definition language is based on declarative logic statements, the product further comprising instructions operable to cause a computer to: create shared data structures without user intervention from the feature definitions and removing redundancies before writing out the feature definitions into an OpenType font file.
References Cited (Backward Citations)
US4594674A
Cited
US4827530A
Cited
US5726768A
Cited
US5506940A
Cited
US5533180A
Cited
US5803629A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2005-07-29 | 2006-01-28 | 2006-07-30 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2009-07-29 | 2010-01-28 | 2010-07-30 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2013-07-29 | 2014-01-28 | 2014-07-30 | $7700.00 | Window Closed / Lapsed |