Bitmap fonts |class=skin-invert-image 3 A bitmap font is one that stores each
glyph as an array of
pixels (that is, a
bitmap). It is less commonly known as a '''''' or, when intended for use at particularly small sizes, a pixel font. Bitmap fonts are simply collections of
raster images of glyphs. For each variant of the font, there is a complete set of glyph images, with each set containing an image for each character. For example, if a font has three sizes, and any combination of bold and italic, then there must be 12 complete sets of images. Advantages of bitmap fonts include: • Extremely fast and simple to render • Easier to create than other kinds. • Unscaled bitmap fonts always give exactly the same output when displayed on the same specification display • Best for very low-quality or small-size displays where the font needs to be fine-tuned to display clearly The primary disadvantage of bitmap fonts is that the visual quality tends to be poor when scaled or otherwise transformed, compared to outline and stroke fonts, and providing many optimized and purpose-made sizes of the same font dramatically increases memory usage. The earliest bitmap fonts were only available in certain optimized sizes such as 8, 9, 10, 12, 14, 18, 24, 36, 48, 72, and 96 points (assuming a resolution of 96
DPI), with custom fonts often available in only one specific size, such as a headline font at only 72 points. The limited processing power and memory of early computer systems forced the exclusive use of bitmap fonts. Improvements in hardware have allowed them to be replaced with outline or stroke fonts in cases where arbitrary scaling is desirable, but bitmap fonts are still in common use in embedded systems and other places where speed and simplicity are considered important. Bitmap fonts are used in the
Linux console, the
Windows recovery console, and
embedded systems. Older
dot matrix printers used bitmap fonts; often stored in the memory of the printer and addressed by the computer's
print driver. Bitmap fonts may be used in
cross-stitch. To draw a string using a bitmap font means to successively output bitmaps of each character that the string comprises, performing per-character indentation.
Monochrome fonts vis-à-vis fonts with shades of gray Digital bitmap fonts (and the
final rendering of vector fonts) may use
monochrome or
shades of gray. The latter is
anti-aliased. When displaying a text, typically an operating system properly represents the "shades of gray" as intermediate colors between the color of the font and that of the background. However, if the text is represented as an
image with
transparent background, "shades of gray" require an image format allowing
partial transparency.
Scaling Bitmap fonts look best at their native
pixel size. Some systems using bitmap fonts can create some font variants algorithmically. For example, the original
Apple Macintosh computer could produce bold by widening vertical strokes and oblique by
shearing the image. At non-native sizes, many text rendering systems perform
nearest-neighbor resampling, introducing rough jagged edges. More advanced systems perform
anti-aliasing on bitmap fonts whose size does not match the size that the application requests. This technique works well for making the font smaller but not as well for increasing the size, as it tends to blur the edges. Some graphics systems that use bitmap fonts, especially those of
emulators, apply curve-sensitive
nonlinear resampling algorithms such as
2xSaI or
hq3x on fonts and other bitmaps, which avoids blurring the font while introducing little objectionable distortion at moderate increases in size. The difference between bitmap fonts and outline fonts is similar to the difference between bitmap and vector image file formats. Bitmap fonts are like image formats such as
Windows Bitmap (.bmp),
Portable Network Graphics (.png) and
Tagged Image Format (.tif or .tiff), which store the image data as a grid of pixels, in some cases with compression. Outline or stroke image formats such as
Windows Metafile format (.wmf) and
Scalable Vector Graphics format (.svg), store instructions in the form of lines and curves of how to draw the image rather than storing the image itself. A "trace" program can follow the outline of a high-resolution bitmap font and create an initial outline that a font designer uses to create an
outline font useful in systems such as
PostScript or
TrueType. Outline fonts scale easily without jagged edges or blurriness.
Outline fonts Outline fonts or
vector fonts are collections of
vector images, consisting of lines and curves defining the boundary of
glyphs. Early vector fonts were used by
vector monitors and
vector plotters using their own internal fonts, usually with thin single strokes instead of thickly outlined glyphs. The advent of desktop publishing brought the need for a common standard to integrate the
graphical user interface of the first
Macintosh and
laser printers. The term to describe the integration technology was
WYSIWYG (What You See Is What You Get). Examples of outline fonts include PostScript
Type 1 and Type 3 fonts,
TrueType,
OpenType and
Compugraphic. The primary advantage of outline fonts is that, unlike
bitmap fonts, they are a set of lines and curves instead of pixels; they can be scaled without causing
pixelation. Therefore, outline font characters can be scaled to any size and otherwise transformed with more attractive results than bitmap fonts, but require considerably more processing and may yield undesirable rendering, depending on the font, rendering software, and output size. Even so, outline fonts can be transformed into bitmap fonts beforehand if necessary. The converse transformation is considerably harder since bitmap fonts require a
heuristic algorithm to guess and approximate the corresponding curves if the pixels do not make a straight line. Outline fonts had a major problem, in that the
Bézier curves used by them could not be rendered accurately at small sizes onto a low-resolution raster display (such as most older computer monitors and printers), and their rendering could change shape depending on the desired size and position, an effect known as
aliasing that is made worse by the
spatial frequencies of the font's details approaching or surpassing the spatial
Nyquist frequency of the display. Measures such as
font hinting had to be used to reduce the visual impact of this problem, which required sophisticated software that is difficult to implement correctly. Many modern desktop computer systems include software to do this, but they use considerably more processing power than bitmap fonts, and there can be minor rendering defects, particularly at small font sizes. Despite this, they are frequently used because people often consider the ability to freely scale fonts, without incurring any pixelation, to be important enough to justify the defects and increased
computational complexity. These issues are however mostly solved by antialiasing (as described in
font rasterization) and the high display resolutions that are commonly in use today.
Stroke-based fonts A glyph's outline is defined by the vertices of individual stroke paths, and the corresponding stroke profiles. The stroke paths are a kind of
topological skeleton of the glyph. The advantages of stroke-based fonts over outline fonts include reducing the number of vertices needed to define a glyph, allowing the same vertices to be used to generate a font with a different weight, glyph width, or serifs using different stroke rules, and the associated size savings. For a font developer, editing a glyph by stroke is easier and less prone to error than editing outlines. A stroke-based system also allows scaling glyphs in height or width without altering stroke thickness of the base glyphs. Stroke-based fonts are heavily marketed for East Asian markets for use on embedded devices, but the technology is not limited to
ideograms. Commercial developers include
Agfa Monotype () and Type Solutions, Inc. (owned by
Bitstream Inc.) have independently developed stroke-based font types and font engines. Although Monotype and Bitstream have claimed tremendous space saving using stroke-based fonts on East Asian character sets, most of the space saving comes from building composite glyphs, which is part of the TrueType specification and does not require a stroke-based approach. == File formats ==