Navigation: Editing Fonts > Editing Glyphs > Simple Glyphs >
Simple Glyphs - Introduction
A simple glyph consists of a series of contours. Contours are composed of straight lines and curves. Straight lines are defined by two consecutive on-curve points. Curves are defined by a series of points that are either cubic or quadratic Bézier curves.
TrueType outlines use quadratic (2nd-order) Bézier curves while CFF (also known as PostScript or Type 1) outlines use cubic (3rd order) Bézier curves. A curve always starts and ends with an on-curve point. A quadratic curve has one off-curve (control) point between start and end point, while a cubic curve has two off-curve (control) points. Such off-curve points are also known as Bézier control points (BCP).
However, with TrueType-based outlines there is an exception to this rule: if an on-curve point is exactly between two off-curve points, the on-curve point may be removed, as it will then become an imaginary on-curve point. Therefore any combination of off-curve and on-curve points is acceptable when defining a TrueType based outline.
In order to distinguish between contour and point related operations, you can choose to work in contour or point mode. At any time you can change between Contour and Point mode; select the appropriate Mode from the View menu, press one of the triangle buttons on the Drawing toolbar or double-click anywhere in the glyph edit window.
All contours have a direction. For TrueType based contours, thus the ones which use quadratic Bézier curves, the proper direction is explained here:
Contours that need to be filled black must have a clockwise direction. If we want to make a white area inside an existing contour we must make the direction of the new contour counter clockwise. Contour direction is determined by seeing in which direction the point index values increase or decrease. Contour direction is from the smaller point index to the larger. The general rule is that the contour direction should be such that "black is on the right". Using the glyph "O" as an example, the outer contour should travel clockwise, and the inner contour counter clockwise.
The character "4" is represented by a glyph with two contours. One contour you see as the black area and the white area within this glyph is the other contour.
For CFF based contours the direction is exactly the opposite, so contours that need to be filled black must have a counter clockwise direction.
These rules can be very confusing, but fortunately FontCreator can detect contours with a wrong direction. Click the Correct contour directions button on the Validation toolbar to correct the direction of all misoriented contours in a simple glyph or select Direction from the Edit menu to change the direction of the selected contour(s).
A hint will be shown in the upper left corner of a glyph edit window if the glyph outline consist of a mix of quadratic and cubic based contours. The status bar will also show information about the contours.
From the Drawing toolbar you can change the way that you modify the glyph. In the Glyph Edit window, you can change between Contour and Point mode by double clicking inside the edit area, select the Mode from the View menu or use the appropriate button on the Drawing toolbar. The main difference between Contour mode and Point mode is that in Contour mode all operations are related to the contours while in Point mode you can change parts of the contours (e.g. move, add and delete points).
Holding down the Shift key while dragging points or contours restricts movement so the selection moves only in the x or y direction. In the Glyph Edit window (in Point mode) the rectangles represent on-curve points and the circles off-curve points.
Tip You can nudge the selected contour(s) or point(s) up, down, left, or right by pressing the arrow keys. By holding down the Ctrl key and pressing the arrow keys finer nudging is available. By holding down the Shift key and pressing the arrow keys coarser nudging is available.
Note: The Validation features are not available in the Home Edition of FontCreator.