At the same time, the demand for effective means of electronic scientific communication is high. Increasingly researchers, scientists, engineers, educators, students and technicians find themselves working at a distance and relying on electronic communication. This extended scientific community represents a large commercial market that is not being well-served at present. Consider:
. On my
system, this equation is sized to match the surrounding line at 14pt.
Of course, if I change my preferences, the equation is too small or
two large.A second point to observe is that the equation image was generated against a white background. Thus, against the default gray background, the anti-aliasing is wrong. If your browser allows you to over-ride background colors, set your background to white, and compare the difference in quality.
The net effect on most platforms is that the equation is significantly harder to see, read, and comprehend than the surrounding text.
.
This equation has a descender which places the baseline for the equation
at a point about a third of the way from the bottom of the image.
One can pad the image like this
, so that the
centerline of the image and the baseline of the equation coincide, but
this causes problems with the interline spacing, which also makes the
equation difficult to read. Moreover, center alignment of images is
handled in slightly different ways by different browsers, making it
impossible to guarantee proper alignment on different clients.
<ALT> tag.
Although the use of a control panel makes it possible to resize equations, it is obviously desirable to have this happen automatically. This requires that the equation be rendered dynamically, and that the rendering be done with an awareness of the surrounding context on the HTML page.
To match appearances with the surrounding text, a math renderer must have runtime access to
At present, Java applets, ActiveX controls, and plug-ins can do dynamic runtime rendering of equations, but they do not have adequate access to the surrounding context, and they cannot adequately specify the size and alignment of their "windows" on the page.
Note: These features have been announced for future versions of Netscape.
Some of the interactivity features that would be particularly useful for technical text are the ability to give cues on the status line, highlighting and linking parts of equations, and the ability to cut and paste equation mark up by selecting the equation. Another feature that is very important with long mathematical expression, which frequently arise in computer algebra output for example, is the ability to fold and unfold parts of an equation.
Most of the functionality described in the preceding paragraph is already available to plug-ins, applets, etc.
ALT tag to an image with the
associated mark up solves this problem (though at the cost of making
the authoring more difficult). However, one can easily imagine a
situation where an equation should dynamically communicate with
another applet or plug-in. For example, an equation might describe
the state of a simulation applet embedded in the same page.

Implementation Goal 1: HTML Math equations should render in accordance with user viewing preferences, and at the highest quality possible given the capabilities of the platform.
The two primary stumbling blocks to the widespread acceptance and use of the Web for technical documents are the unacceptably poor rendering quality of technical notation that current image based methods produce, and the difficulty of authoring technical Web documents. These make the cost/benefit ratio too low for widespread acceptance.
Implementation Goal 2: HTML Math equations should print properly and at high quality, printer resolutions.
In order to be widely useful, it must be possible to print technical Web documents. Image based methods provide unacceptable print quality, while other methods are either undependable, platform dependent, or simply non-existent. The overhead and inconvenience of maintaining a printable version and an electronic version of a document has proven itself too great for widespread acceptance.
Implementation Goal 3: HTML Math equations should be able to react to mouse gestures, and coordinate communication with other applications through the browser.
To be useful in a hypertext environment, at a minimum, HTML Math equations need the same linking support as surrounding HTML text. In particular, this includes the capability to link parts of equations. To be useful in a hypermedia environment, HTML Math equations need to be able to react to mouse gestures and coordinate communication with other applications in more sophisticated ways. A basic example is the ability to respond to a search engine with a linear as opposed to graphical form. A more advanced example might include interaction with a VRML viewer, or a Java applet.
Implementation Goal 1: HTML Math equations should render in accordance with user viewing preferences, and at the highest quality possible given platform capabilities.
Browser Interface Requirements:
- the ability to query the browser for context information, such as whether the equation is in-line or displayed, and the ambient font size and family.
- the ability to use the context information provided to specify equation size and alignment in terms of ascent and descent relative to the current baseline.
- the ability to be informed of context changes, and to update the display accordingly.
The litmus test here is whether a user can change font sizes, and have the equations scale to match the surrounding text, both in size, style and rendering quality.
Status: According to pre-release documentation, applets and plug-ins will have access to context information, and have the ability to use it for alignment in Netscape Communicator. The ability to react to context changes may or may not be possible.
Implementation Goal 2. HTML Math equations should print properly and at high quality, printer resolutions.
Browser Interface Requirements:Implementation Goal 3. HTML Math equations should be able to react to mouse gestures, and coordinate communication with other applications through the browser.The litmus test in this case is simply whether one can click the print button on the browser and obtain a well typeset document of uniform quality, including mathematical notation. Status: Printing capabilities do not seem to be significantly improved for applets and plug-ins in Netscape Communicator. Some work around methods are available.
- the ability to access the same system printing information that is available to the browser.
- the ability to render equations for printing within the larger HTML page.
Browser Interface Requirements:There is no single litmus test issue for interactivity; however, flexible linking and the ability to cut and paste equations into other applications such as computer algebra systems are probably the dominant examples to keep in mind. Status: These capabilities are largley available now to applets and plug-ins. Further enhancements have been announced for Netscape Communicator.
- the ability to process mouse gestures over the equation
- the ability to make browser calls for fetching URLs
- the ability to make either browser or system calls to implement cut and paste functionality.
ALT tag. A somewhat better
solution would involve the introduction of a MATH tag
which contained fields for an image or images, the equation mark up,
and possibly some printable object.Screen Rendering Quality With this method, screen rendering is unacceptably poor. As noted above:
Print Rendering Quality Although printing is possible with this method, print quality is again unacceptably poor, since the screen resolution is significantly lower than printer resolution.
Interactivity The only direct interactivity possible with this method is a link surrounding an entire equation, or the use of an image map, which is in general unreasonably complicated. By viewing the source text, it is possible to extract the original mark up. On the other hand, this is enough for external applications to properly process or convert HTML Math documents.
Other Considerations Large documents with many image files are bulky and slow to load. This is a very significant drawback for the majority of readers. Even a document of moderate length can take a long time.
A second factor is that hand editing is difficult, and typically
involves a good deal of specialized software. The standard tool used
in academia is latex2html which requires a user to
install Perl, TeX, Ghostscript, and the PBM libraries. Moreover,
converting from a source document to an HTML document is slow.
Regardless of whether better conversion tools become available, it is
inherently inconvenient and troublesome to have to maintain two
versions of a single document.
Probable Improvements Two important devolpments are likely to make image based strategies more viable:
Possible Improvements Several simple browser interface improvements would increase the effectiveness of this method:
<ALT> tag text directly when an
image is selected.
Although an HTML Math implementation is possible using current plug-in
interfaces and HTML invocations, a better solution would involve
introducing a new <MATH> tag, just as in the case of image
based methods, along with a number of interface enhancements as
suggested above.
Screen Rendering Quality With this method, screen rendering quality is in theory only limited by the platform. However, this is not the case with currently available browser interface APIs:
Print Rendering Quality Print quality varies with the kind of plug-in. It is not possible to print directly in context at all using only Java. It is possible to print in context with ActiveX controls and Netscape plug-ins.
Interactivity Fairly sophisticated interactivity is possible through the use of a plug-in. Complex linking, cutting and pasting, long expression folding, and even interprocess communication are all possible.
Other Considerations In theory, a plug-in solution solves the bandwidth problem that an image based solution presents, in that the HTML document need only contain the equation mark up. There is a one time cost for installing a plug-in or downloading a Java archive, but mechanisms for doing this efficiently or even automatically are already well developed. On the down side, plug-in solutions require current generation browsers on graphics capable platforms.
In practice, the Java implementations available in the current generation of browsers leave a good deal to be desired. Many of the weaknesses are quite technical in nature, and thus won't be detailed here. However, many important improvements have already been announced for Netscape Communicator.
Possible Improvements The browser interface enhancements necessary for full HTML Math implementation via plug-ins are those listed above.
Last modified: Wed Apr 30 13:39:46 1997