Cork' Math Font Encoding?

Cork' Math Font Encoding?

Introduction Text font encodings Math font encodings OpenType math Summary Do we need a ‘Cork’ math font encoding? Dr. Ulrik Vieth Stuttgart, Germany TUG 2008, Cork, Ireland Introduction Text font encodings Math font encodings OpenType math Summary What’s in this talk? • Some history of font encodings • Some review of recent developments • Some discussion of future plans • Font encodings (Unicode) • Font technology (OpenType) • New math fonts for new TEX engines Introduction Text font encodings Math font encodings OpenType math Summary Situation at Cork 1990 • TEX was undergoing major transition phase in 1989–90 • TEX version 3.0 just released in early 1990 • Support for multiple languages added • Support for 8-bit font encodings added • European TEX users groups founded in 1989–90 • European users strongly interested in new features • Better hyphenation of accented languages • Better font support of accented languages • European users started to work on fonts and encodings • European users agreed font encoding for 8-bit fonts ⇒ ‘Cork’ encoding, named after conference site Introduction Text font encodings Math font encodings OpenType math Summary Benefits of the ‘Cork’ encoding • Success of the ‘Cork’ encoding • provided model for further 8-bit text font encoding • provided support for many/most European languages • started further developments in font encodings • Some design decisions done right • provided complete 7-bit ASCII subset (no exceptions) • consistent encoding for all font shapes (no variations) • consistent organization of uppercase/lowercase codes • no inter-dependencies between text and math fonts Introduction Text font encodings Math font encodings OpenType math Summary Shortcomings of the ‘Cork’ encoding • Some design shortcomings and their consequences • did not follow any standards (e.g. ISO Latin 1 or 2) ⇒ discrepancies between input and output encodings ⇒ solved in 1993–94 by LATEX 2ε inputenc, fontenc • tried to support many languages, but couldn’t support all ⇒ local encodings (QX, CS, L7X) used besides ‘Cork’ ⇒ solved in recent years by Latin Modern/TEX Gyre fonts • did not leave room for text symbols in font table ⇒ workarounds involving encoding switches to 7-bit fonts ⇒ solved in 1995 by adding text symbol encoding (TS1) • did not consider available glyph set of PS fonts ⇒ virtual fonts needed to fake some glyphs ⇒ 2 virtual fonts (T1, TS1) needed on top of real fonts ⇒ alternative encodings (LY1) proposed besides ‘Cork’ Introduction Text font encodings Math font encodings OpenType math Summary Summary of text font encodings today • What became of the ‘Cork’ encoding • adopted and followed by additional encodings (Tn) • supplemented by text symbol encoding (TS1) • complemented by local encodings (QX, CS, L7x) • complemented by alternative encodings (LY1) • Font encoding mess in current TEX systems • no single 8-bit font encoding can serve all needs • many different 8-bit font encodings needed instead • resolved only by moving to Unicode/OpenType • Latin Modern and TEX Gyre fonts • provide consistent implementations of many encodings • full glyph set available only in Unicode/OpenType fonts • many subsets available in 8-bit encodings/Type 1 fonts Introduction Text font encodings Math font encodings OpenType math Summary Situation at Cork 2008 • TEX is undergoing another major transition phase • Recent developments • PDF output has largely replaced DVI and PS output • Scalable fonts have largely replaced bitmap PK fonts • Ongoing developments • Unicode and OpenType are starting to replace 8-bit fonts • Unicode and OpenType supported by new fonts and engines • New TEX fonts (Latin Modern, TEX Gyre) widely adopted • New TEX engines (X TE EX, LuaTEX) are becoming available • What’s missing? • Support for OpenType math in new TEX engines • Development of math fonts for Latin Modern, TEX Gyre Introduction Text font encodings Math font encodings OpenType math Summary History of math font encodings • Developments of math fonts • 7-bit text and math fonts developed simultaneously, driven by need to typeset books like TAOCP • 8-bit text font encodings developed by themselves, driven by need to support European languages • Need for 8-bit math fonts recognized early on, but not driven by specific user needs • Reasons for new math fonts • remove inter-dependencies between text and math fonts • improve organization of new 8-bit math font encodings • support more symbols in same number of fonts (16 x 256) • provide consistent encodings for different font families Introduction Text font encodings Math font encodings OpenType math Summary Progress on math font encodings • The ’Aston’ proposal (1993) • Research work on math fonts organized by LATEX3 project • Results presented at TUG 1993 (Aston University, UK) • Proposal for organization of 8-bit math font encodings • Activities discontinued after a few months • The ‘newmath’ prototype (1997–98) • Development work driven by some individual volunteers • Implementation based on ideas of ‘Aston’ proposal • Prototype based on METAFONT and fontinst work • Several font families supported (CM, Euler, MathTime) • Results presented at EuroTEX 1998 (St. Malo, France) • Activities side-tracked by other developments Introduction Text font encodings Math font encodings OpenType math Summary Progress on math font encodings • The Unicode math efforts (1998–2002) • Project to bring math symbols into Unicode (driven by AMS) • Research work to collect references of math symbol • Committee work to get symbols accepted in Unicode • Results are part of Unicode standard since 3.2 • The STIX fonts (1998–current) • Project to develop Unicode math fonts by science publishers • 1st beta in late 2007, 2nd beta expected in mid 2008 • Organization of fonts still under development • TEX support still missing, still to be developed Introduction Text font encodings Math font encodings OpenType math Summary Recent developments on math font technology • OpenType math in MS Office 2007 • Outside developments continued while waiting for STIX fonts • Microsoft implemented math support in MS Office 2007 • OpenType font format extended by new MATH table • Cambria Math font commissioned as reference implementation • Acceptance of OpenType math • many concepts and ideas from TEX adopted by Microsoft • officially still experimental, but already de facto standard • widely deployed to installations of MS Office 2007 • adopted by independent font developers (Asana Math) • adopted and supported by FontForge font editor • adopted and supported by new TEX engines (X TE EX) Introduction Text font encodings Math font encodings OpenType math Summary Recent developments on math font technology • OpenType math support in new TEX engines • X TE EX support for OpenType math added since late 2007 • X TE EX support widely available soon with TEX Live 2008 • LuaTEX support still to be developed, but likely to follow • OpenType math support in new TEX fonts ? • likely agreement to adopt OpenType math in new TEX engines • likely agreement to adopt OpenType math in new TEX fonts • font encoding becomes non-issue with Unicode math ⇒ no more need for a ‘Cork’ math font encoding • font technology becomes all-important with OpenType math Introduction Text font encodings Math font encodings OpenType math Summary Features of OpenType math • OpenType font format • developed jointly by Adobe and Microsoft • not really open, but vendor-controlled format • based on concepts from PS (CFF) and TT fonts • uses extensible table structure from TT fonts • supports ‘advanced’ typographic features • glyph positioning (GPOS table) • glyph substitutions (GSUB table) • options controlled at user-level by feature tags • encoding based on glyph names from Unicode • possible to have unencoded glyph variants • MATH table just another optional table meaningful only by interpretation in software Introduction Text font encodings Math font encodings OpenType math Summary OpenType MATH table • Font-specific (global) parameters • essential for spacing of big operators, fractions, indices, etc • similar to fontdimen parameters in TEX fonts (Appendix G) • some OpenType parameters correspond to TEX parameters • some OpenType parameters generalize TEX default values • a few TEX parameters don’t have clear correspondence • internal mapping in TEX engines some workarounds • Glyph-specific metric information • encoded in TEX math fonts by overloading existing TFM fields • provided in OpenType MATH table in clear data structures • some generalization of TEX concepts (cut-ins in 4 corners) Introduction Text font encodings Math font encodings OpenType math Summary Horizontal and vertical constructions • Math extension fonts use special TFM features • one code point = series of next-larger glyph variants • optionally followed by recipe for extensible symbol • TFM features used only in limited contexts in TEX • big operators: 2 vertical sizes • big delimiters: n vertical sizes + extensible version • wide accents: n horizontal sizes, but no extensible • Concepts generalized in OpenType math • vertical variants and constructions (operators, delimiters) • horizontal variants and constructions (wide accents) • also applicable to overbrace/underbrace or long arrows • variant glyphs remain unencoded, accessed only indirectly Introduction Text font encodings Math font encodings OpenType math Summary Math alphabets • Math fonts in TEX organized into 16 families of 8-bit fonts • one alphabet per family (roman, italic, script, etc) • selection of symbols distributed across remaining slots

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    20 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us