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 feedback

STIX feedback · Changes

Page history
minor re-organization authored Sep 08, 2013 by Peter Krautzberger's avatar Peter Krautzberger
Show whitespace changes
Inline Side-by-side
STIX-feedback.md
View page @ d3730a0a
This page collects information about the STIX fonts and how to create STIX webfonts for use with MathJax; see [MathJax v2.3 roadmap](https://github.com/mathjax/MathJax/wiki/Mathjax-v2.3-feature-discussion).
# Design Issues
The webfonts will not be a full substitute for the STIX fonts in browsers with native MathML support for several reasons.
This is due to the way browsers handle math fonts right now. While glyphs at unicode codepoints generally work, stretchy characters require the combination of severaly glyphs; some of these glyphs are stored in non-unicode positions and accessed through OpenType Math Tables -- which no browser currently supports.
To resolve this problem, Firefox has the relevant table information hardcoded in its source -- but only for STIX and Asana fonts; see https://developer.mozilla.org/en-US/docs/Mozilla/MathML_Project/Fonts for more information. (Safari does not handle non-unicode glyphs and only a few unicode constructions).
Even if browsers supported Open Type Math Tables, splitting the fonts would require dropping the Open Type Math table. It also requires adding space characters for monospace, moving non-Unicode glyphs to the Plane0 PUA etc.
Besides these technical issues, using the mathjax-webfonts would be slightly cumbersome as authors would have to specify 114 instead of 4 webfonts.
# Technical issues.
* In STIXMath-Regular.otf, some glyphs used as components of stretchy operators (e.g. pieces of parenthesis) could be encoded as characters from the Miscellaneous Technical unicode block. This includes those from uni2320.s1 to uni23B3.s1 and from uni23B7.s1 to uni23B9.s1 * In STIXMath-Regular.otf, some glyphs used as components of stretchy operators (e.g. pieces of parenthesis) could be encoded as characters from the Miscellaneous Technical unicode block. This includes those from uni2320.s1 to uni23B3.s1 and from uni23B7.s1 to uni23B9.s1
* The following operators have size variants specified in the Open Type MATH table. Some components are already available and thus the stretchy constructions could just be added to the Open Type MATH table: * The following operators have size variants specified in the Open Type MATH table. Some components are already available and thus the stretchy constructions could just be added to the Open Type MATH table:
...@@ -45,13 +62,3 @@ ...@@ -45,13 +62,3 @@
* The combining characters in the larger sizes (found in STIXMath-Regular.otf) do not combine (they are not zero width), as they do in the normal sized versions. E.g., uni20D7.s1 should have right and left bearing both set at 0, with the glyph extending to the left of 0 (see U+20D7 in STIX-Regular.otf for reference). This is true of all the combining characters in size 1 thorough 5 in both Combining Diacritical Marks (U+0300 through U+036F except for U+0338) and Combining Diacritical Marks for Symbols (U+20D0 to U+20FF). * The combining characters in the larger sizes (found in STIXMath-Regular.otf) do not combine (they are not zero width), as they do in the normal sized versions. E.g., uni20D7.s1 should have right and left bearing both set at 0, with the glyph extending to the left of 0 (see U+20D7 in STIX-Regular.otf for reference). This is true of all the combining characters in size 1 thorough 5 in both Combining Diacritical Marks (U+0300 through U+036F except for U+0338) and Combining Diacritical Marks for Symbols (U+20D0 to U+20FF).
* The combining symbols U+20EC (COMBINING RIGHTWARDS HARPOON WITH BARB DOWNWARDS) and U+20ED (COMBINING RIGHTWARDS HARPOON WITH BARB DOWNWARDS) in STIX-Italic.otf both combine to the right rather than to the left. That is, they are properly zero width, but the glyph is to the right of 0 rather than to the left. The bold and regular forms are properly handled. * The combining symbols U+20EC (COMBINING RIGHTWARDS HARPOON WITH BARB DOWNWARDS) and U+20ED (COMBINING RIGHTWARDS HARPOON WITH BARB DOWNWARDS) in STIX-Italic.otf both combine to the right rather than to the left. That is, they are properly zero width, but the glyph is to the right of 0 rather than to the left. The bold and regular forms are properly handled.
______
Note on the design of the Web fonts: splitting the fonts will require some changes like dropping the Open Type Math table, adding space characters for monospace, moving non-Unicode glyphs to the Plane0 PUA etc.
The webfonts will not be a full substitute for the STIX fonts in browsers with native MathML support. This is due to the way browsers handle math fonts right now. While glyphs at unicode codepoints generally work, stretchy characters require the combination of severaly glyphs; some of these glyphs are stored in non-unicode positions and accessed through OpenType Math Tables -- which no browser currently supports.
To resolve this problem, Firefox has the relevant table information hardcoded in its source -- but only for STIX and Asana fonts; see https://developer.mozilla.org/en-US/docs/Mozilla/MathML_Project/Fonts for more information. (Safari does not handle non-unicode glyphs and only a few unicode constructions).
Besides these technical issues, using the mathjax-webfonts would be slightly cumbersome as authors would have to specify 114 instead of 4 webfonts.
\ No newline at end of file
Clone repository

MathJax Wiki

  • Contributing
    • Contributor License Agreement etc
    • Quick guide to translating mathjax
  • Development
    • Development Process
      • Release Process Checklist
      • Documentation Update Process
      • Source Control Policies
    • Design Documents
      • MathJax Roadmap
      • CDN Hosting
        • Managing Rackspace Cloud Files & CDN
        • Directory Structure
        • .htaccess settings
        • CDN requirements
      • Performance Discussion
      • Profiling and Diagnostics Tools
      • Configuration Options
      • Documentation generation guide
      • Testing
        • Platforms supported
        • Test Machines
  • MathJax web presence
  • Drafts