Re: Line breaking and MathML

Hi Jim,

> I am trying to understand the status of line breaking in MathML. By
> "line breaking" I mean the display of mathematical expressions that
> would be too wide to fit on a single display line. I cannot find any
> reference to this problem in the context of MathML, but perhaps I am
> using the wrong terminology. Any enlightenment would be appreciated.
> I realize that the problem of dynamically breaking mathematical
> expressions into multiple lines is a difficult problem.

As far as I know, there are only two MathML implementations that
handle automatic linebreaking:

1) Mathematica -- really robust, really sophisticated linebreaking,
   but of course you are tied to the Mathematica UI.  I believe you
   can create images (I'm not sure if you can specify a width to wrap
   to in images, but I expect you can), and there is a webMathematica
   product that can be used as a server-side back-end to do dynamic
   processing for Web applications.

2) WebEQ 3 Developers Suite -- reasonably sophisticated, but less
   robust linebreaking.  Three of the tools in the Suite are relevant
   for linebreaking:

   * The ViewerControl applet.  Requires height and width be specified
     in applet tags, but will wrap equations to the width.  It doesn't
     currently pop up a scroll bar or anything if the height is not
     sufficient for the wrapped equation.  It just clips.

   * Publisher.  A program for processing a variety of document
     formats containing math markup into Web pages for ready for
     publication.  It allows a user to set a wrap width for equations,
     and will either generate images of wrapped equations, or
     ViewerControl applet tags with the wrap width and sufficient
     height set.

   * EquationServer.  A batch version of the Publisher suitable for
     server-side back-end use in Web applications.

As far as I know, there are no implementations currently that actually
pay attention to the 'overflow' attribute on the <math> tag, though
most do pay attention to display=[block|inline].

Finally, for what it is worth, Maple 7 uses a custom version of the
ViewerControl applet to display Web page versions of its notebooks,
using the automatic linebreaking capabilities.  So, it can probably at
least get you off the ground with your Maxima project.  You can get a
30-day demo of WebEQ from


Robert Miner                          
MathML 2.0 Specification Co-editor                    651-223-2883
Design Science, Inc.   "How Science Communicates"

Received on Thursday, 14 March 2002 10:58:32 UTC