mathjax / mathjax/MathJax

SVG Native Spec

Open
#2,987 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Feature Request
Dominant language
JavaScript
Stars
10.9k
Forks
1.2k
PR merge metrics
No merged PRs in 30d

Description

Is your feature request related to a problem? Please describe.

Adobe & Apple are developing a SVG Native subset of SVG. In addition, there appears to be a private SVG library on iOS. Putting these two together, you might conclude Apple may eventually support SVG Native images in iOS without a webview. In addition, Adobe already has a SVG Native renderer for iOS

It would be great if the SVG output also conformed to this subset. It looks like it's already mostly compliant. Currently I can see the following issues:

  • Use of svg inside the main svg [1], [2], [3]
  • em units - I can't quite work out where these are used, but I do remember seeing them
  • Text - I think this is just a fallback - maybe just a way to turn this off and throw an exception would suffice

And I noticed these too - but not certain they would actually show up if someone was to make an iOS library

  • foreignObject

Describe the solution you'd like

^^

Describe alternatives you've considered

Nil

Additional context

Nil

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with ts/output/svg/Wrappers/mo.ts, then inspect how the SVG output handles nested svg elements, em units, text, and foreignObject. Compare representative generated output with the SVG Native subset specification; done means the relevant output conforms to the subset or the unsupported cases have an explicit, verified handling.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend, web-dev
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.