Computer graphics processing and selective visual display system – Computer graphics processing – Character generating
Reexamination Certificate
2001-09-25
2003-04-22
Padmanabhan, Mano (Department: 2671)
Computer graphics processing and selective visual display system
Computer graphics processing
Character generating
C345S471000
Reexamination Certificate
active
06552727
ABSTRACT:
FIELD OF THE INVENTION
This invention relates in general to authoring hints for a font, and in particular to authoring hints for a font using a graphical user interface.
BACKGROUND OF THE INVENTION
A font is a particular style of typeface such as Arial, Times New Roman or Courier. Fonts which conform to the TrueType Open font standard promulgated by Microsoft Corporation, assignee of the present invention, are commonly referred to as TrueType fonts. TrueType fonts contain font tables that include data, such as glyph outlines, metrics, bitmaps, and mapping information. A glyph outline is a set of mathematical data that describes the shape of the glyph. A glyph is a representation of one or more characters. A single glyph may represent a single character such as the lowercase letter “f” or a single glyph may represent a string of characters such as the ligature “fi”.
To display or print a glyph, the glyph outline is first scaled to the selected font size and the resolution of the output device. The scaled glyph outline is then digitized or scan-converted to create a bitmap. Finally, the bitmap is rendered on an output device, such as a monitor or a printer, using a regularly spaced grid of picture elements (“pixels”). Scaling the glyph outline may not produce satisfactory results at all point sizes. At small point sizes, a low-resolution device may not have enough pixels to fill in the outline accurately. To compensate for the lack of pixels, hints or font instructions are added to the font to improve the appearance of the glyph. Hints typically control distances, proportions and pixel patterns.
For a TrueType font, a typographer may specify hints for the entire font or for individual glyphs using an assembly-type language. The typographer may use the low-level TrueType Instruction Set, or a high-level abstraction of the TrueType Instruction Set, such as Type Man Talk. Creating hints using one of the TrueType languages is often a tedious process. To begin creating hints for a glyph, the typographer typically prints a glyph outline for the glyph. The glyph outline includes control points which define the shape of the glyph. The typographer uses the glyph outline to visualize critical relationships between the control points, such as the distance in the x-direction between two control points or the distance in the y-direction between two control points. The typographer then draws these relationships on the glyph outline using colored pencils.
Once the typographer draws the relationships on the glyph outline, the typographer translates the colored pencil markings into font instructions. The translation requires that the typographer not only convert the relationships into the proper TrueType commands, but also requires that the typographer order the commands according to the command sequence requirements of the TrueType Instruction Set.
Once the typographer translates the relationships into font instructions, the font instructions are compiled and the compiled font instructions are used to display a bitmap for the glyph. The typographer reviews the bitmap to determine whether the appearance of the hinted glyph is satisfactory. If the appearance of the hinted glyph is not satisfactory, then the typographer must modify the font instructions or add additional font instructions. The typographer must repeat these steps until the appearance of the hinted glyph is satisfactory. If the typographer adds an additional font instruction, then the typographer must determine where to insert the font instruction. Because the TrueType Instruction Set requires certain command sequences, determining where to insert the additional font instruction is not usually obvious. If the additional font instruction is not inserted in the correct sequence, then the font instructions will not be correctly applied.
For the majority of typographers, it would be easier to hint a glyph if the relationships drawn on the glyph outline could be translated into font instructions without the typographer's intervention. In addition, it is easier to prevent or debug hinting errors, if the font instructions are shown on the glyph outline. For example, it is easier for the typographer to recognize a circular relationship if the circular relationship is shown graphically on the glyph outline, than if the circular relationship is only apparent from the font instructions.
One proposed solution to the hinting problem is provided by the Fontographer program marketed by Macromedia of San Francisco, Calif. The Fontographer program assists a typographer in designing a font by providing tools to support glyph outline design. The Fontographer program also provides some rudimentary hinting tools. The Fontographer program allows a typographer to specify horizontal and vertical serif hints, horizontal and vertical stem hints, and diagonal hints. For example, to specify a vertical stem hint, the typographer selects two points which define the vertical stem and then selects the “make vertical stem” command from the hints menu. The typographer may control the width of the vertical stem by specifying the x-coordinates of the stem. Typically, the x-coordinates of the stem are specified by editing the stem start and stem stop fields of a menu.
One drawback of the Fontographer program is that the hinting tools are limited. The TrueType instruction set includes many hinting instructions which are not supported by the Fontographer program. For example, the Fontographer program does not support interpolations or alignments.
Another drawback of the hinting tools provided by the Fontographer program is that hints must be specified in coordinates. For a TrueType font, it is more efficient to specify a hint using a control value. A control value is a value for a dominant width, length, or angle of a group of features, such as the stem width or serif length. Control values are stored in a font table commonly referred to as a control value table (“cvt”). Some control values are specific to certain glyphs, while other control values apply to the entire font. Requiring hints to refer to control values makes it easier to preserve regularity between the glyphs of the font.
Yet another drawback of the Fontographer program is that it displays hints outside the glyph outline. Displaying hints outside the glyph outline makes it difficult to identify the control points associated with a hint. Furthermore, Fontographer does not have a built-in rasterizer so a typographer cannot immediately see how a hint affects the appearance of a rendered glyph. The lack of a built-in rasterizer makes it difficult to fine-tune pixel patterns and stroke weights.
Accordingly, there is a need in the art for a method for authoring hints for a glyph using a graphical user interface. There is also a need in the art for a graphical method for authoring hints using control point values.
SUMMARY OF THE INVENTION
The present invention meets the needs described above by permitting a typographer to drag and drop graphical hints on a displayed glyph using a graphical user interface. The graphical user interface provides the typographer with a number of hinting tools which correspond to hinting functions. The typographer specifies a graphical hint by selecting a hinting tool and selecting one or more points that define the glyph outline, such as a control point. The graphical hints are represented by graphical elements displayed on the glyph. The shape and color of the graphical elements indicate the type of hinting function. Options for the graphical hints are represented by graphical components.
The graphical hints are compiled and placed in the font tables without requiring that the typographer manually code the hints. Once the graphical hints for a glyph are compiled, the hinted glyph is displayed. If the appearance of the hinted glyph is not satisfactory, then the typographer can modify the existing graphical hints or add additional graphical hints until the appearance of the hinted glyph is satisfactory. The typographer can modify an existing graphical hint by selecting a portion
Banner & Witcoff , Ltd.
Microsoft Corp.
Padmanabhan Mano
LandOfFree
Method for authoring hints for a font using a graphical user... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method for authoring hints for a font using a graphical user..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method for authoring hints for a font using a graphical user... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3031945