Skip to Main Content
Programming WPF, 2nd Edition
book

Programming WPF, 2nd Edition

by Chris Sells, Ian Griffiths
August 2007
Intermediate to advanced content levelIntermediate to advanced
864 pages
25h 52m
English
O'Reilly Media, Inc.
Content preview from Programming WPF, 2nd Edition

Typography

WPF supports both TrueType and OpenType fonts. OpenType fonts often contain many alternates to the basic set of character shapes in order to support advanced typographical functionality. If you are using a low-level text-handling feature such as GlyphRun, you can use these alternates directly, referring to them by glyph index. But if you are using the higher-level elements, such as TextBlock or the FlowDocument viewers, these can locate and use the appropriate glyphs for you. You can control which character shapes are used with the attached properties defined by the Typography class.

Because WPF supports all of OpenType's typography features, we will not provide a complete list here.[103] We'll show just one example: ligatures.

Most fonts offer ligatures: single shapes representing a group of letters. Historically, ligatures were invented out of necessity. In the past, typesetting involved an individual block of metal or wood for each letter. Certain combinations were problematic. For example, the top of a lowercase letter f extends to the right of the main stem of the letter. If you put two of them next to each other, with some typefaces this results in too much space between the stems—you couldn't get the letters close enough together to look right. To solve this, printers used a single block of metal with two fs on it. This single block is called a ligature. Figure 14-49 shows an example from the Palatino Linotype typeface: the two lowercase fs are displayed as a single ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Programming C#, 4th Edition

Programming C#, 4th Edition

Jesse Liberty
Programming C# 10

Programming C# 10

Ian Griffiths

Publisher Resources

ISBN: 9780596510374Supplemental ContentErrata Page