Standards Based Development

Standards Based Development

line-height is tied to font-size, which is rooted in browser font-sizing and environmental resolution, while line length is based on width, which is rooted in viewport dimensions

http://dev.bowdenweb.com/a/m/elegant-web-typography_jeff-croft_fowd-17-04-2007.pdf

Web Typography Reads

Font Types

Standard Windows Font File Type Icons (from right to left): OpenType, PostScript Type 1, TrueType, and System Font
Standard Windows Font File Type Icons (from right to left): OpenType, PostScript Type 1, TrueType, and System Font

Three basic types of computer fonts: Bitmap fonts, Outline fonts, and Stroke fonts.

Bitmap Fonts

Bitmap fonts consist of a matrix of dots or pixels that represent the image of teach glyph in each font face and font size.

Outline Fonts

Outline fonts also called vector fonts use Bézier curves, which are drawing instructions and mathematical formulae to describe each glyph, making the character outlines scalable to any size.

Note: outline fonts major flaw is that Bézier curves cannot be rendered accurately onto a raster display (like monitors, or printers), and their rendering can change shape depending on the desired size and position.

The universal standard for outline fonts is Adobe PostScript.

Adobe PostScript

Adobe PostScript was originally developed by Adobe Systems to communicate complex graphic printing instructions to digital printers. It is now built into many laser printers for high-quality rendering of both raster and vector graphics. An important feature of the PostScript language is that it is device independent. This means that it produces good-looking images regardless of the resolution or color rendering method of the output device, and it takes full advantage of the capabilities built into the device.

Portable Document Format (PDF)

The Adobe Portable Document Format (PDF) is a more structured, compact subset of the PostScript language. Almost anything that can be done in PostScript can be done in PDF.

Outline Font Formats

Type 1 and Type 3 Fonts

Type 1

Type 1 fonts are a specialized form of PostScript program and are the original file format used for type display on all PostScript printers. The PostScript language was later extended to provide support for the later TrueType and OpenType® font standards. Any new Adobe PostScript language device made today supports all three font standards.

Adobe PostScript Type 1 is a worldwide standard for digital type fonts (International Standards Organization outline font standard, ISO 9541). It was first developed by Adobe Systems for use in PostScript printers. Although Adobe is a leader in the design and manufacturing of Type 1 software and maintains the standards for Type 1, hundreds of companies around the world have designed and released more than 30,000 fonts in the Type 1 format.

The Type 1 font format is recognized on every computer platform, from microcomputers to mainframes. It prints on virtually every printer, either directly through built-in PostScript language interpreting, or through add-on utilities, such as Adobe Type Manager® (ATM®). ATM technology is integrated into Microsoft® Windows® 2000 and Mac OSX operating system. For more than a decade, Type 1 has been the preferred format for the graphic arts and publishing industries.

TrueType Font

TrueType is a standard for digital type fonts that was developed by Apple Computer, and subsequently licensed to Microsoft Corporation. Each company has made independent extensions to TrueType, which is used in both Windows and Macintosh operating systems. Like Type 1, the TrueType format is available for development of new fonts.

TrueType was developed by Apple, intended to replace Type 1 fonts; unlike Type 1 fonts, TrueType glyphs are described with quadratic Bézier curves.

TrueType uses quadratic curves. These are not the curves you’re used to drawing in Illustrator and Photoshop. Quadratic curves require four points to make a curve.

TrueType was developed for both commercial and technological reasons, however they were most commercial. TrueType enabled Apple and Microsoft to build outline font-imaging capabilities into their operating systems, without being beholden to Adobe.

TrueType introduced many improvements over PostScript, most notably hinting, which are instructions added to the font that tell the character outlines how to reshape themselves at low and medium resolutions in order to create character images of maximum clarity.

TrueType was also introduced allowing for larger character sets. PostScript was using a single-byte numbering system to identify font characters, which only yields a maximum of 256 distinct numbers. TrueType introduceda two-byte numbering system, allowing for over 65,000 unique numbers, allowing for alternate forms of characters, and more importantly, allowing languages that rely on huge character sets (like Chinese, Japanese, and Korean) to be supported in a single font.

TrueType are still including in major operating systems, however most foundries have shifted to OpenType because it allows a single font file to work cross-platform. TrueType font files are still platform specific.

TrueType fonts use a different technology than PostScript fonts do for describing the outline shapes of characters, but any system that can image type from PostScript fonts can also image type from TrueType fonts.

OpenType Font

OpenType is a new standard for digital type fonts, developed jointly by Adobe and Microsoft. OpenType supersedes Microsoft's TrueType Open extensions to the TrueType format. OpenType fonts can contain either PostScript or TrueType outlines in a common wrapper. An OpenType font is a single file, which can be used on both Macintosh and Windows platforms without conversion. OpenType fonts have many advantages over previous font formats because they contain more glyphs, support more languages (OpenType uses the Unicode standard for character encoding,) and support rich typographic features such as small caps, old style figures, and ligatures — all in a single font.

Beginning with Adobe InDesign® and Adobe Photoshop® 6.0, Adobe applications have begun to support OpenType layout features. OpenType layout allows you to access features such as old style figures or true small caps by simply applying formatting to text. In most applications that do not actively support such features, OpenType fonts work just like other fonts, although the OpenType layout features are not accessible.

OpenType with PostScript outlines is supported by the latest versions of Adobe Type Manager, and is natively supported in Windows 2000. Apple has also announced its intent to support OpenType, and supplies Japanese system fonts for Mac OS X in OpenType form with PostScript outlines.

OpenType is a smartfont system designed by Adobe and Microsoft; OpenType fonts contain outlines in either TrueType or Type 1.

OpenType Layout consists of five tables that use some of the same data formats:

There are two flavors of OpenType, each utilizes a different outline technology:

OpenType PS is a cdd(Compact File Format) based file format, and because PostScript formats are displayed without subpixel rendering on Windows, makes them not ideal web fonts because of the lack of cross-platformability. TrueType fonts are the best approach for web fonts for now.

OpenType css font-variant-alternates Values

METAFONT

mm (Multiple Master)

mm (Adobe) technology allows users to change a typeface along multiple axes such as weight, width, and optical size. Though mm technology is now mostly obsolete in typesetting software, it’s still used by type designers to generate font families, and—interestingly—in Adobe Acrobat for scaling generic fallback fonts to match the proportions of missing fonts.

Font Hinting and the Future of Responsive Typography

Multiple master fonts are Type 1 font programs that include two or more "master" fonts within a single font file. It allows users to interpolate many intermediate "instances" of the typeface. The fonts have one or more "axes" which might typically represent the weight, width, or optical size of the font. Thus the user can generate a very large number of variations from a single font - thus providing unprecedented flexibility.

Multiple Master

Enhanced Screen Quality (esq) fonts

ESQ fonts are TrueType fonts that have been engineered to look and perform exceptionally well on screen, as well as in traditional print environments. They are developed to make text on screen most legible and true to the typeface’s original design.

.dfont - Datafork TrueType

Datafork TrueType is a font wrapper used on Apple Macintosh computers running Mac OS X. It is a TrueType suitcase with the resource map in the data fork, rather than the resource fork as had been the case in Mac OS 9. It uses the file extension .dfont.

.eot Embedded OpenType (eot)

eot fonts are a compact form of OpenType fonts designed by Microsoft for use as embedded fonts on web pages.

.pfb pfb (Printer Font Binary)

pfb is a binary PostScript font format created by Adobe Systems, usually carrying ".pfb" file name extension. It contains a font's glyph data.

.pfm pfm (Printer Font Metric)

pfm is a binary version of afm, usually carrying ".pfm" file name extension. It contains font metric information.

.suit - .SUIT

.suit is a font format used primarily by Mac OS Classic (Mac OS 9.2.2 and earlier); contains a single TrueType font or collection of fonts; should be stored in the System.

.svg svg (Scalable Vector Graphic)

svg w3c standard font.

.ttf

TrueType is an outline font standard originally developed by Apple Computer in the late 1980s as a competitor to Adobe's Type 1 fonts used in PostScript.

.pfa

.pfa is 'Printer Font ASCII' - a file extension for a Postscript font.

.ps Adobe PostScript Fonts

PostScript fonts are outline font specifications developed by Adobe Systems for professional digital typesetting, which uses PostScript file format to encode font information.

.t42Type 42 Font

Type 42 is a TrueType font embedded in PostScript wrapper.

.cff Compact Font Format (cff)

Compact Font Format (also known as CFF font format, Type 2 font format, or CFF/Type 2 font format) is a lossless compaction of the Type 1 format using Type 2 charstrings. It is designed to use less storage space than Type 1 fonts, by using operators with multiple arguments, various pre-defined default values, more efficient allotment of encoding values and shared subroutines within a FontSet (family of fonts).

.afm afm (Adobe Font Metrics)

afm provides both global metrics for a font program and the metrics of each individual character.

.ttc TrueType Collection (ttc)

ttc is an extension of TrueType format that allows combining multiple fonts into a single file, creating substantial space savings for collection of fonts that only use different glyphs on some characters. They were first available in Chinese, Japanese, and Korean versions of Windows, and supported for all regions in Windows 2000 and later.

.pdf pdf (Portable Document Format)

pdf is a digital document from adobe, it contains embedded fonts wich can be extracted.

.bin

BIN .

.pt3

PT3 .

Stroke Fonts

Stroke fonts utilize a series of specified lines and additional information to define the profile, or size and shape of the line in a specific font face, which together describe the appearance of the glyph.

wpo

Optimizing Font Link Relations

Web Fonts

The term web font does not refer to a specific font format but to fonts that have been extensively hinted for optimum legibility when displayed on computer screens and other electronic devices. Some have been designed from scratch for electronic display, while others have been adapted retroactively.

Popular web standards permit designers to specify the use of particular fonts when their pages are displayed, even though these fonts are not embedded in the file or necessarily available on the device displaying it. In this sense, web fonts are also understood to be those that exist on web servers for real-time use for imaging online documents that call for them. Some of these are available for free, but others are available only under license, with a fee paid for their use; they are, in effect, rented.

What's in a Font?

sifr

sifr is a method to insert rich typography into web pages without sacrificing accessibility, seo, or markup semantics. The method, dubbed sifr (or Scalable Inman Flash Replacement).

weft (Web Fonts Embedding Tool)

The Web Embedding Fonts Tool, or weft, is Microsoft's utility for generating embeddable web fonts. weft is used by webmasters to create 'font objects' that are linked to their web pages so that users using Microsoft's Internet Explorer web browser will see the pages displayed in the font style contained within the font object. weft scans the html document file(s), the TrueType font file(s), and some additional parameters. It adjusts the html files and creates Embedded OpenType files for inclusion on the web site. These files usually use the extension "eot". weft can embed most fonts, but it will not embed fonts that have been designated as 'no embedding' fonts by their designers. weft may reject other fonts because problems have been identified. Embedded fonts are widely used to generate non-English-language websites.

As of May 2010, the most recent version of the tool (weft 5.3.2) was released on 25 February 2003.

An open source alternative is "ttf2eot".

Microsoft PowerPoint 2007 and 2010 also generate eot files with the "fntdata" extension when fonts are selected to be embedded in a presentation by the PowerPoint client application. These eot files can be extracted from the "pptx" file and used directly on web pages.

Embedded OpenType

Core Fonts for the Web (Web Fonts)

Web Fonts

Core Fonts for the Web was a project started by Microsoft in 1996 to create a standard pack of fonts for the Internet. It was terminated in 2002. It included the proprietary fonts Andale Mono, Arial, Arial Black, Comic Sans MS, Courier New, Georgia, Impact, Times New Roman, Trebuchet MS, Verdana and Webdings, all of them in TrueType font format packaged in executable files (".exe") for Microsoft Windows and in BinHexed Stuff-It archives (".sit.hqx") for Macintosh. These packages were published as freeware under a proprietary license imposing some restrictions on usage and distribution. They are still available from some third-party websites. The project included some of the latest TrueType versions of the fonts available in 2002. Updated versions of the fonts released in following years were not published as freeware and are usually available only after purchasing a license or as a part of some commercial products.

Core Fonts for the Web

The Web Open Font Format (woff) is a font format for use in web pages. It was developed during 2009 and is in the process of being standardized as a recommendation by the World Wide Web Consortium (W3C) Web Fonts Working Group.

WOFF

woff is mostly ttf with compression and additional metadata. The goal is to support font distribution from a server to a client over a network. This means that bandwidth is an important parameter.

  • Filename extension .woff
  • Internet media type application/font-woff

Web Open Font Format, Web Open Font Format

WOFF is a compressed wrapper for TrueType, OpenType, and Open Font formats.

Mozilla Firefox has supported WOFF since version 3.6.

Font Embedding

Font embedding is the process of placing eot font files onto a server along with the web site's other supporting files. The font objects (files) are then referenced within the site's css via @font-face.

Font Linking

Font Linking is the method by which a style sheet declares and references a web font family that is linked to one or more font objects (files). Font linking differs from font embedding because the font object itself is not embedded into the web document, and does not necessarily reside on th same server as the web document.

Font Hinting

"Hints" are information included in a font program to aid the rasterizer in scaling character outlines to various sizes.

Hinting

Kerning

Kerning refers to data included in a font that specifies how to adjust the spacing of a specific pair of characters in a font.

Kerning

sfnt-Based Fonts

sfnt-based fonts - TrueType, OpenType, and Open Font formats.

Subpixel Rendering and Cleartype

Subpixel Rending on Mac OS X is activated by default; Cleartype is on in Windows by default in Vista and 7, Office 2007 and 2010, ie7+ and Windows Live Messenger.

Font Hinting Icons

  • Hinting
  • Hinting
  • Hinting
  • Hinting Cleartype
  • Hinting Cleartype
  • Hinting Cleartype
  • Hinting Greyscale
  • Hinting Greyscale
  • Hinting Greyscale

Different Kinds of Hinting

Best Google Web Fonts

Typography

Proof are words used to expose a typeface by showing particular letters in a sequence. Proof is also known as key words, trial words, test terms, and Lorem Ipsum. Slang is a proof; it contains an uppercase and lowercase letters, an ascender, descender, as well as both round and straight letters. Some other proofs are Oboe, Champion, Hamburgevons, Hamburgefonts, and Hamburgefontsiv.

Lowercase letters have no ascenders or descenders.

A font family is a set of related fonts that have contrasting proportions and weights.

A type set is a complete set of letters, including upper and lowercase characters, as well as basic punctuation. A type set is also known as a font.

An advanced type set typically includes alternating characters/small caps. Advanced type sets are also known as expert sets.

A typeface's apparent lightness or darkness is known as it's optical weight. The following terms describe type color, from darkest to lightest:

  • Black
  • Ultra Bold
  • Extra Bold
  • Bold
  • Demi or Demi Bold
  • Medium
  • Book
  • Lightface
  • Hairline
Arm/leg
An upper or lower (horizontal or diagonal) stroke that is attached on one end and free on the other.
Ascender
The part of a lowercase character (b, d, f, h, k, l, t) that extends above the x-height.
Bar
The horizontal stroke in characters such as A, H, R, e, and f.
Bowl
A curved stroke which creates an enclosed space within a character (the space is then called a counter).
Cap Height
The height of capital letters from the baseline to the top of caps, most accurately measured on a character with a flat bottom (E, H, I, etc.).
Counter
The partially or fully enclosed space within a character.
Descender
The part of a character (g, j, p, q, y, and sometimes J) that descends below the baseline.
Ear
The small stroke that projects from the top of the lowercase g.
Link
The stroke that connects the top and bottom part (bowl and loop) of a two–story lowercase g.
Loop
The lower portion of the lowercase g.
Serif
The projections extending off the main strokes of the characters of serif typefaces. Serifs come in two styles: bracketed and unbracketed. Brackets are the supportive curves which connect the serif to the stroke. Unbracketed serifs are attached sharply, and usually at 90 degree angles.
Shoulder
The curved stroke of the h, m, n.
Spine
The main curved stroke of the S.
Spur
A small projection off a main stroke found on many capital Gs.
Stem
A straight vertical stroke (or the main straight diagonal stroke in a letter which has no verticals).
Stress
The direction of thickening in a curved stroke.
Stroke
A straight or curved line.
Swash
A fancy flourish replacing a terminal or serif.
Tail
The descender of a Q or short diagonal stroke of an R.
Terminal
The end of a stroke not terminated with a serif.
X-height
The height of lowercase letters, specifically the lowercase x, not including ascenders and descenders.

Anatomy of a Character

Faux Bold and Faux Italic

Faux bold occurs when a browser can't find the true bold version of a font and fakes it via creating faux bold by slightly stretching the vertical strokes of the original font.

Faux italic occurs when a browser can't find the true italic version of a font and fakes it via creating faux italic by stretching and slanting the original font at an angle.

Faux bold italic occurs when a browser can't find the true bold italic version of a font and fakes it via creating faux bold italic by stretching the vertical strokes and slanting the letters at an angle, resulting in letters that are clunky in comparison to the rhythm and texture of a true bold italic font.

All three faux font styles negatively impact legibility, which in turn undermines readability; letters that have been stretched and slanted no longer have well balanced strokes and spaces.

Avoiding Faux Weights and Styles with Google Web Fonts

Non Breaking Hyphen

nonbreaking hyphen is not really a hyphen; rather, it is a command not to hyphenate. When placed in front of a word or a group of characters acting as a word, such as a phone number, web address or email address, that word will not be hyphenated. This is helpful not only in text, but also in headlines that you don’t want breaking onto two lines.

Here’s how it works: place the cursor in front of the word you want to remain unhyphenated, then insert the nonbreaking hyphen, which can be accessed in the following manner, depending on which application you are using

nonbreaking hyphen

Baseline Shift

Baseline shift is a feature that shifts a character (or group of characters) up or down relative to the baseline, in tiny increments. Generally speaking, Baseline shift settings use positive numbers to shift characters up, and negative numbers to shift them down.

Note: that baseline shift does not change the actual line spacing of a character. When making overall changes in the leading, the baseline-shifted position will be preserved proportionally.

Baseline shift is a great tool for fine-tuning your typography. Try using it to:

  • create fractions manually. Use baseline shift to raise the numerator in diagonal fractions.
  • optically position symbols, such as register, copyright and trademark (®, © and ™).
  • adjust the position of bullets, ornaments and other font-based graphics.
  • be expressive with type by raising and lowering individual characters to create a jumpy, jittery effect.
  • tweak the position of parenthesis, braces and brackets relative to the type they enclose.

Baseline Shift

Dev Toolkit

Typeplate is a “typographic starter kit”. We don’t make aesthetic design choices, but define proper markup with extensible styling for common typographic patterns. A stripped-down Sass library concerned with the appropriate technical implementation of design patterns—not how they look.

References & Resources

Adobe Font Finder

Macintosh Dfonts

Many Macintosh-specific fonts use a file structure that predates OS X. In this structure, the file contents are divided into two parts: a data fork and a resource fork. Older versions of the Mac OS used data in the resource fork to tell (among other things) what application created a specific file. Mac OS X does this by reading a file's filename extension, such as .doc. Dfonts are a variety of TrueType font that have no resource fork, and they are included in OS X for the sake of font compatibility with other computers running the UNIX operating system. (OS X, like Microsoft Windows, is based on UNIX.)

You can use dfonts just as you would any other Macintosh TrueType font. Documents formatted with them will not, however, display correctly on Macs running operating systems that predate OS X.

What's in a Font? The Complete Manual of Typography