This is a master bug to track the landing of an initial implementation of MathML for Web Kit.
This is also in Radar as <rdar://problem/3142835> Would like MathML support
MathML support requires an extensive set of glyphs, not present in the fonts
customarily distributed with MacOSX.
To this end, the STIX Fonts Project ( http://www.stixfonts.org/ )is of interest.
Sometime in 2005 (or so they say), a full Unicode-compatible mathematical font
set will be available under a royalty-free licence (
GtkMathView is a C++ rendering engine for MathML documents. It provides an
interactive view that can be used for browsing and editing MathML markup.
Despite its name, GtkMathView is modular and the actual MathML rendering engine
is completely independent of Gtk (and of any graphic platform). Currently
GtkMathView supports 3 different backends: for Gtk, for SVG (does not use any
graphic library), for AbiWord. GtkMathView's frontend (the way it reads the
MathML document) is also modular, and it supports both tree-based document
models as well as stream interfaces as well as application-specific models.
GtkMathView has very good support for Computer Modern fonts (both Type1 and
TrueType versions) and support for other font families can be added easily.
It seems to me like this is a good opportunity to make GtkMathView somewhat more
popular, and for you not to reinvent the wheel and to start with an already
working code base. I'd be glad to hear from other developers if they think it
would be feasible to (re)use GtkMathView or some of its code base for adding
MathML support to Webkit. I anticipate that I'm totally new to development on
the Apple platform, but it'd be terrific if any piece of this (hard!) work,
which has going on for more than 5 years, could be of some help.
Feel free to contact me for any question you may have.
(In reply to comment #3)
SVG <text> support is coming into being. Is it realistic to have the SVG engine
do the rendering job? Looks like gtkMathView can provide in-memory SVG tree with
a few modifications.
GtkMathView is licensed by the GPL. Is that license compatible with WebKit?
(In reply to comment #4)
> SVG <text> support is coming into being. Is it realistic to have the SVG engine
> do the rendering job? Looks like gtkMathView can provide in-memory SVG tree with
> a few modifications.
Indeed it is possible to have an "SVG tree" generated by GtkMathView. Note that the
rendering of MathML into SVG uses very little capabilities of SVG itself. Basically, all
that is needed is text rendering, reliable font selection, and colored rectangles. In
fact, I suspect it would probably be easier to directly interface GtkMathView with
the rendering interface used by the SVG engine, although have never glanced at how
In reply to comment #5, I might consider switching to a less strict licence, as long as
GtkMathView remains open source.
(In reply to comment #6)
> Basically, all
> that is needed is text rendering, reliable font selection, and colored
> rectangles. In
With my quick experiment, the nightly build can render outputs (including greek letters, integral, square roots and the red square for missing? glyphs) of mathmlsvg quite fine using Bakoma fonts.
> to directly interface GtkMathView with
> the rendering interface used by the SVG engine
Well, we need to investigate on this more, perhaps it would mean to handle CSS frames or something?
In any case, in view of kmathml, this approach might be of temporary ad-hoc nature and then we can pursue the easiest rather than structural beauty...
WebKit code must be under an LGPL-compatible license.
*** Bug 19840 has been marked as a duplicate of this bug. ***
(In reply to comment #5)
> GtkMathView is licensed by the GPL. Is that license compatible with WebKit?
(In reply to comment #8)
> WebKit code must be under an LGPL-compatible license.
GtkMathView is LGPL software since Oct 15, 2007 and also WebKits SVG support is mature now. With everything sorted out, only someone who can integrate it into WebKit is missing ;)
Hyatt is not working on this; reassigning to webkit-unassigned.
(In reply to comment #10)
> (In reply to comment #5)
> > GtkMathView is licensed by the GPL. Is that license compatible with WebKit?
> (In reply to comment #8)
> > WebKit code must be under an LGPL-compatible license.
> GtkMathView is LGPL software since Oct 15, 2007 and also WebKits SVG support is
> mature now. With everything sorted out, only someone who can integrate it into
> WebKit is missing ;)
Will that work on all platforms once the Gtk dependencies are removed? I suppose the SVG backend would work best in this case.
*** Bug 24127 has been marked as a duplicate of this bug. ***
A MaTHML Browser testing page is:
Added all the current MathML related issues in the "Depends On" field.
Added the debug layout patch.
Added MathML CSS patch
Added bugs for munder/over and msubsup support.
Added patch for mrow and stretchy operator support.
Added mfrac patch bug (34741).
Removed bug 27413 from the depends on field.
I believe this bug (27413) is not related to MathML. While I may be able to
do the same using a chunk of MathML encoded markup, this bug has to
do with specifically detecting and transforming sequences of unicode characters.
Such a transformation's implementation might want to use the MathML fraction
rendering object but it isn't really directly related to MathML's implementation.
Added patch for RenderStyle change.