Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • M MathJax
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 304
    • Issues 304
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 15
    • Merge requests 15
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • MathJax
  • MathJax
  • Wiki
  • STIX and Asana

STIX and Asana · Changes

Page history
Finish description of STIX and other changes. authored Mar 18, 2013 by Frédéric Wang's avatar Frédéric Wang
Hide whitespace changes
Inline Side-by-side
STIX-and-Asana.md
View page @ 921c80a6
...@@ -32,7 +32,7 @@ The basic issues to support new fonts are the following: ...@@ -32,7 +32,7 @@ The basic issues to support new fonts are the following:
* Contructions of stretchy operators * Contructions of stretchy operators
are described in the Open Type Math table, which is are described in the Open Type Math table, which is
not exposed to Javascript. Currently, we write tables "by hand" not exposed to Javascript. Currently, we write tables by hand
in the [fontdata.js files](https://github.com/mathjax/MathJax/blob/master/unpacked/jax/output/HTML-CSS/fonts/). We already support STIX fonts and tables for in the [fontdata.js files](https://github.com/mathjax/MathJax/blob/master/unpacked/jax/output/HTML-CSS/fonts/). We already support STIX fonts and tables for
Asana are available in Gecko source code. Moreover the fonts have an OpenType Asana are available in Gecko source code. Moreover the fonts have an OpenType
Math table that FontForge can read. So the new tables could be obtained Math table that FontForge can read. So the new tables could be obtained
...@@ -87,9 +87,10 @@ take into account: ...@@ -87,9 +87,10 @@ take into account:
set of fonts will not be the same and it could be cleaner to set of fonts will not be the same and it could be cleaner to
use a separate directory for the font data. use a separate directory for the font data.
Also, it will be more convenient to Also, it will be more convenient to
create subcategories from the 5 STIX "Word" files than to work from the create write scripts that extract glyphs
from the 5 STIX "Word" files than to work from the
messy STIX "General" set of files. Finally we could imagine that in the messy STIX "General" set of files. Finally we could imagine that in the
future, STIX "General" could become obsolete or deprecated and so it's future, STIX "General" will become obsolete or deprecated and so it's
not a bad idea to directly base our Web fonts on STIX "Word". not a bad idea to directly base our Web fonts on STIX "Word".
* Do we want to allow the Native MathML output to use the new Web fonts? * Do we want to allow the Native MathML output to use the new Web fonts?
...@@ -121,7 +122,7 @@ take into account: ...@@ -121,7 +122,7 @@ take into account:
are used by default with other STIX/Asana Web fonts covering the missing are used by default with other STIX/Asana Web fonts covering the missing
characters. characters.
### Proposal ### File Hierarchy
The file hierarchy could look like this: The file hierarchy could look like this:
...@@ -140,16 +141,21 @@ The file hierarchy could look like this: ...@@ -140,16 +141,21 @@ The file hierarchy could look like this:
* output/SVG/fonts/ * output/SVG/fonts/
* Idem mutatis mutandis. * Idem mutatis mutandis.
The STIX fonts will be split into the following files. In most cases, ### STIX
The STIX fonts will be split into the following files
(4+4+2+2+1+4+1+1+5+8*4 = 56 fonts).
In most cases,
we will preserve the Unicode code points. We will follow the we will preserve the Unicode code points. We will follow the
subdivision of MathJax fonts, but ignore the distinction between Main/Math subdivision of MathJax fonts, but ignore the distinction between Main/Math
and Caligraphic/Script. The remaining glyphs will be classified using and Caligraphic/Script. The remaining glyphs will be classified via
their Unicode Blocks. their Unicode Blocks.
* STIX\_Main-Regular, STIX\_Main-Italic, STIX\_Main-Bold, STIX\_Main-BoldItalic. * STIX\_Main-Regular, STIX\_Main-Italic, STIX\_Main-Bold, STIX\_Main-BoldItalic.
These fonts will contain the glyphs from Basic Latin Unicode block These fonts will contain the glyphs from Basic Latin Unicode block
(U+0000 to U+007F) as well as the characters from the MathJax-Main fonts. (U+0000 to U+007F) as well as the characters from the MathJax-Main fonts.
This may also contain the "Replacement character" (U+FFFD).
* Various fonts for the [Mathematical Alphanumeric Symbols](https://en.wikipedia.org/wiki/Mathematical\_Alphanumeric\_Symbols). * Various fonts for the [Mathematical Alphanumeric Symbols](https://en.wikipedia.org/wiki/Mathematical\_Alphanumeric\_Symbols).
...@@ -159,7 +165,8 @@ their Unicode Blocks. ...@@ -159,7 +165,8 @@ their Unicode Blocks.
MathJax fonts) to avoid bugs with some browsers not able to access MathJax fonts) to avoid bugs with some browsers not able to access
non-BMP characters. Note that latin characters and digits for non-BMP characters. Note that latin characters and digits for
normal, bold, italic and bold-italic mathvariants are already contained normal, bold, italic and bold-italic mathvariants are already contained
in the STIX-Main-* fonts, so we only need to add new files for greek letters. in the STIX-Main-* fonts, so we only need to add new files STIX\_Greek-*
for greek letters.
The other files will contain the latin/greek letters and digits for the The other files will contain the latin/greek letters and digits for the
corresponding mathvariant category. corresponding mathvariant category.
...@@ -172,68 +179,102 @@ their Unicode Blocks. ...@@ -172,68 +179,102 @@ their Unicode Blocks.
STIX\_SansSerif-BoldItalic STIX\_SansSerif-BoldItalic
* STIX\_Monospace-Regular * STIX\_Monospace-Regular
* STIX\_AMS-Regular, STIX\_AMS-Bold, STIX\_AMS-Italic, STIX\_AMS-BoldItalic * STIX\_AMS-Regular
These fonts will cover all the characters from MathJax-AMS, that are needed These fonts will cover all the characters from MathJax-AMS, that are needed
to support the AMS extension. to support the AMS extension.
* Fonts for strechy operators * Fonts for strechy operators
STIXMath-Regular These fonts will contain all the glyphs that are necessary to draw
glyphs must be moved to one of the PUA. stretchy operators. Glyphs are taken from STIXMath-Regular and moved
to valid Unicode code points (e.g. a PUA).
* Size1 * STIX\_Size1-Regular: size variants 1.
* Size2 * STIX\_Size2-Regular: size variants 2.
* Size3 * STIX\_Size3-Regular: size variants 3.
* Size4 * STIX\_Size4-Regular: size variants 4.
* STIX\_Size5-Regular: size variants 5 and glyphs for vertical and horizontal
constructions.
* Other Unicode blocks from STIX: * [Other Unicode blocks from STIX](http://www.stixfonts.org/allGlyphs.html):
* STIX\_Latin-Regular, STIX\_Latin-Bold, STIX\_Latin-Italic, * STIX\_Latin-Regular, STIX\_Latin-Bold, STIX\_Latin-Italic,
STIX\_Latin-BoldItalic. STIX\_Latin-BoldItalic.
Glyphs from The Latin-1 Supplement (00080-000FF) These fonts will contain latin glyphs:
Latin Extended-A (00100-0017F) and Latin Extended-B (00180-0024F) Glyphs from The Latin-1 Supplement (00080-000FF),
Latin Extended-A (00100-0017F), Latin Extended-B (00180-0024F) and
Latin Extended Additional (01E00-01EFF) blocks. Latin Extended Additional (01E00-01EFF) blocks.
* STIX\_Language-Regular, STIX\_Language-Bold, STIX\_Language-Italic, * STIX\_Alphabets-Regular, STIX\_Alphabets-Bold, STIX\_Alphabets-Italic,
STIX\_Language-BoldItalic. STIX\_Alphabets-BoldItalic.
These fonts will contain glyphs for non-latin alphabets:
Greek and Coptic (00370-003FF), Greek and Coptic (00370-003FF),
Cyrillic (00400-004FF), Hiragana (03040-0309F) Cyrillic (00400-004FF), Hiragana (03040-0309F),
Letterlike Symbols (02100-0214F)
* STIX-Other-Regular, STIX-Other-Bold, STIX-Other-Italic,
STIX-Other-BoldItalic. * STIX\_Marks-Regular, STIX\_Marks-Bold, STIX\_Marks-Italic,
STIX\_Marks-BoldItalic.
This will contain all the glyphs that have not been included in one of the
category above. These fonts will contain specific diacritical or punctuation marks:
Spacing Modifier Letters (002B0-002FF),
TODO: Spacing Modifier Letters; 002B0-002FF Combining Diacritical Marks (00300-0036F),
Combining Diacritical Marks; 00300-0036F Combining Diacritical Marks for Symbols (020D0-020FF),
Phonetic Extensions; 01D00-01D7F General Punctuation (02000-0206F),
Phonetic Extensions Supplement; 01D80-01DBF CJK Symbols and Punctuation (03000-0303F)
General Punctuation; 02000-0206F
Superscripts and Subscripts; 02070-0209F * STIX\_Arrows-Regular, STIX\_Arrows-Bold, STIX\_Arrows-Italic,
Currency Symbols; 020A0-020CF STIX\_Arrows-BoldItalic.
Combining Diacritical Marks for Symbols; 020D0-020FF
Letterlike Symbols; 02100-0214F These fonts will contain various mathematical arrows:
Number Forms; 02150-0218F Arrows (02190-021FF),
Arrows; 02190-021FF Supplemental Arrows-A (027F0-027FF),
Mathematical Operators; 02200-022FF Supplemental Arrows-B (02900-0297F)
Miscellaneous Technical; 02300-023FF
Control Pictures; 02400-0243F * STIX\_Operators-Regular, STIX\_Operators-Bold, STIX\_Operators-Italic,
Enclosed Alphanumerics; 02460-024FF STIX\_Operators-BoldItalic.
Box Drawing; 02500-0257F
Block Elements; 02580-0259F These fonts will contain various mathematical operators:
Geometric Shapes; 025A0-025FF Mathematical Operators (02200-022FF),
Miscellaneous Symbols; 02600-026FF Supplemental Mathematical Operators (02A00-02AFF)
Dingbats; 02700-027BF
Miscellaneous Mathematical Symbols-A; 027C0-027EF * STIX\_Symbols-Regular, STIX\_Symbols-Bold, STIX\_Symbols-Italic,
Supplemental Arrows-A; 027F0-027FF STIX\_Symbols-BoldItalic.
Supplemental Arrows-B; 02900-0297F
Miscellaneous Mathematical Symbols-B; 02980-029FF These fonts will contain various mathematical symbols:
Supplemental Mathematical Operators; 02A00-02AFF Miscellaneous Technical (02300-023FF),
Miscellaneous Symbols and Arrows; 02B00-02BFF Miscellaneous Mathematical Symbols-A (027C0-027EF),
CJK Symbols and Punctuation; 03000-0303F Miscellaneous Mathematical Symbols-B (02980-029FF)
Specials; 0FFF0-0FFFF
Mathematical Alphanumeric Symbols; 1D400-1D7FF * STIX\_Shapes-Regular, STIX\_Shapes-Bold, STIX\_Shapes-Italic,
STIX\_Shapes-BoldItalic.
These fonts will contain various shapes and non-mathematical symbols:
Geometric Shapes (025A0-025FF), Miscellaneous Symbols (02600-026FF),
Miscellaneous Symbols and Arrows (02B00-02BFF),
Block Elements (02580-0259F), Box Drawing (02500-0257F)
Control Pictures (02400-0243F)
* STIX\_Misc-Regular,
STIX\_Misc-Bold, STIX\_Misc-Italic,
STIX\_Misc-BoldItalic.
These fonts will
contain all the glyphs that have not been included in one of the
category above:
Superscripts and Subscripts (02070-0209F),
Enclosed Alphanumerics (02460-024FF), Currency Symbols (020A0-020CF),
Phonetic Extensions (01D00-01D7F),
Phonetic Extensions Supplement (01D80-01DBF),
Dingbats (02700-027BF),
Number Forms (02150-0218F)
### Asana Math
We will use a classification similar to the one described above for STIX fonts
and adapt "Other Unicode blocks" according the the characters supported. Except
for the "Mathematical Alphanumeric Symbols", we only provide a *-Regular
version since Asana Math is only one file.
More details will be provided when we try to support this font family...
Clone repository

MathJax Wiki

  • Contributing
  • Development
    • Development Process
      • Release Process Checklist
      • Hotfix Release Process
      • Documentation Update Process
      • Source Control Policies
    • Design Documents
      • MathJax Roadmap
      • CDN Hosting
        • Managing Rackspace Cloud Files & CDN
        • Directory Structure
        • .htaccess settings
        • Managing Amazon Cloudfront
      • Performance Discussion
      • Profiling and Diagnostics Tools
      • Configuration Options
      • Documentation generation guide
      • Testing
        • Platforms supported
        • Test Machines
  • MathJax web presence
  • Drafts