Relation between Shape of character and Font Type
You might have noticed that the character maps of different fonts show varying shapes of characters and new shapes for Devanagari and Marathi characters which are not defined or linked to in standard Unicode code points.
The example is the display of consonants or complex characters where combination of consonants is replaced by entirely new shape character.
There are many new characters like क्ष, ज्ञ, त्र, श्र which represent complex characters.
In order to understand the technology of rendering different shapes for characters on screen or print media, we should study the structural design of font and font types.
Shape of a particular character is defined by Glyph Data Structure.
Simple glyph data structure defines all contours that comprise a glyph outline, which are presented by a sequence of on- and off-curve coordinate points. These point coordinates are encoded as delta values representing the incremental values between the previous and current corresponding X and Y coordinates of a point, the first point of each outline is relative to (0,0) point.
To minimise the size of the dataset of point coordinate values, each point is presented as a
(flag, xCoordinate, yCoordinate) triplet.
The flag value is stored in a separate data stream and the coordinate values are stored as part of the glyph data stream using a variable-length encoding format consuming a total of 2-5 bytes per point.
The example is the display of consonants or complex characters where combination of consonants is replaced by entirely new shape character.
There are many new characters like क्ष, ज्ञ, त्र, श्र which represent complex characters.
In order to understand the technology of rendering different shapes for characters on screen or print media, we should study the structural design of font and font types.
Shape of a particular character is defined by Glyph Data Structure.
Simple glyph data structure defines all contours that comprise a glyph outline, which are presented by a sequence of on- and off-curve coordinate points. These point coordinates are encoded as delta values representing the incremental values between the previous and current corresponding X and Y coordinates of a point, the first point of each outline is relative to (0,0) point.
To minimise the size of the dataset of point coordinate values, each point is presented as a
(flag, xCoordinate, yCoordinate) triplet.
The flag value is stored in a separate data stream and the coordinate values are stored as part of the glyph data stream using a variable-length encoding format consuming a total of 2-5 bytes per point.
PostScript fonts
PostScript or Type 1 fonts were developed by Adobe in 1985 for use with their PostScript printers. Initially, this font technology was available only from Adobe.
True Type Font
TrueType is a registered trademark of Apple, Inc.
(Ref: https://developer.apple.com/fonts/TrueType-Reference-Manual/)
TrueType font engine, the software that converts the information in a TrueType font into a raster image suitable for display on screen or printer.
Rasterizing a glyph outline is a multi-step process that proceeds as follows:
The master outline description of the glyph is scaled to the appropriate size.
- The scaled outline is grid-fitted according to its associated instructions.
- The grid-fitted outline is scan converted to produce a bitmap image suitable for raster display.
OpenType is a registered trademark of Microsoft Corporation.
(Ref: https://www.microsoft.com/typography/otspec/otover.htm)
The OpenType font format is an extension of the TrueType font format, adding support for PostScript font data. The OpenType font format was developed jointly by Microsoft and Adobe.
OpenType fonts and the operating system services which support OpenType fonts provide users with a simple way to install and use fonts, whether the fonts contain TrueType outlines or PostScript outlines.
The OpenType font format addresses the following goals:
* broader multi-platform support
* better support for international character sets
* better protection for font data
* smaller file sizes to make font distribution more efficient
* broader support for advanced typographic control
OpenType fonts are also referred to as TrueType Open v.2.0 fonts.
PostScript data included in OpenType fonts may be directly rasterized or converted to the TrueType outline format for rendering, depending on which rasterizers have been installed in the host operating system.
The OpenType Layout tables contain information on glyph substitution, glyph positioning, justification, and baseline positioning, enabling text-processing applications to improve text layout.
Font shorthand Property
The font shorthand property sets all the font properties in one declaration.
The font-size and font-family values are required. If one of the other values are missing, the default values will be inserted, if any. Note: The line-height property sets the space between lines.
The font-family property should hold several font names as a "fallback" system. If the browser does not support the first font, it tries the next font, and so on.