What is the best way to post mathematical documents on the web? Well, that depends on who your intended audience is, what software you expect that audience to have, how long the document is, how high a quality of typesetting you want the document to have, and how quickly or easily you want the audience to be able to read it.
<font face=symbol>ò</font>displays an integral sign. This approach has the advantage that it is relatively to edit and it makes the formulas integrate smoothly with the text. It has the disadvantage that different browsers use different tricks of this sort; there is not a uniform method for all browsers. Indeed, the uniformity has diminished in recent years; Netscape 6 and Mozilla do not conform to the same methods followed by Netscape 4 and Internet Explorer. (At this time, I do not recommend using MathML (mathematical markup language) in your web pages. Althoguh it is now a part of the "official" HTML web language, as endorsed by the World Wide Web Consortium, it is not supported adequately by major browsers. Very few members of your intended audience are likely to have the unusual software to read MathML documents.)
ps2pdf filename.ps filename.pdfThe advantages to this method are (i) it's fairly easy, and (ii) it produces a web-viewable page that has slightly higher resolution than the dvi2gif method described below. The disadvantages are (a) its resolution is still less than ideal, (b) a few people in your intended audience still don't have Acrobat Reader, and (c) even the people who do have Acrobat Reader have to wait a few seconds each time it loads.
By the way, dvi2gif was written by Chip Turner, one of our students; it is a script which knits together some complicated instructions worked out earlier by Prof. Ellingham.
One drawback to this method is that it is somewhat tedious; it takes many steps. Another drawback is that it only works for one screenful at a time; in some cases you may want to create a larger image that covers 2 or 3 screenfuls. That can be done by pasting together several smaller images, if you know how to use your graphics editor, but again it is rather tedious.
Some disadvantages are already apparent: (1) It's hard to get the spacing just right. (2) You'd better give the web page a background color of white, to match the background color of the gifs. (3) If the person viewing the web page changes his or her font size, this does not change the sizes of the gifs, so there really is no way to make the symbols stay the right size with this method. (4) It may take a lot of work to create all the little gifs, if you're doing them by hand.
cos x dx = sin x + C
However, you don't have to do them by hand, if your favorite flavor of Tex is Latex (as opposed to Plain Tex, AMS-Tex, or some other variant). You can use the latex2html program. Here is how to use it:
Though the html file described above may be difficult to construct, it should display properly on essentially any version of any graphical browser -- Netscape, Explorer, Mosaic, etc.
The latex2html program does have one serious flaw: it does not convert paragraph breaks in the LaTeX document to paragraph breaks in the HTML document. You can add the paragraph breaks manually in the HTML document, or if you prefer you can just insert the code
We have a recent version of latex2html. Also, we have online documentation about latex2html. You can go to any text terminal on our system, and type "man latex2html", to get a brief text explanation. For a longer manual, go to one of our X-Windows terminals, type
For instance, subscripts and superscripts can be displayed with the "sub" and "sup" tags. If you want to display x-sub-3 and x-cubed in an HTML page, you could display them with these commands:
| Numeric code | Name code | Result |
| & | & | & |
| < | < | < |
| > | > | > |
|   | | (non-breaking space) |
You must use the ascii encoding if you wish any of the characters & < > to appear on your web page. Just typing the characters you see on the keyboard won't work; those keystrokes will be interpreted as special codes by most web browsers. (If this explanation confuses you, just view the source file for this page.)
A non-breaking space is a space that looks just like an ordinary space between two words -- but it will keep those two words glued together, so that a line break cannot occur between them.
Many accented and other foreign-alphabet symbols can be encoded by number; most of them can also be encoded by name. I have put charts of those on a separate page. Many mathematical and other symbols can be encoded by number, but I am not aware of any name abbreviations available for the same characters:
| Code | Result | Code | Result | Code | Result | Code | Result | |||
| ‚ | | ƒ | | „ | | … | ||||
| † | | ‡ | | ˆ | | ‰ | | |||
| ‹ | | ‘ | | ’ | | “ | | |||
| ” | | • | | – | | — | | |||
| ˜ | | ™ | | › | | ¡ | ¡ | |||
| ¢ | ¢ | £ | £ | ¤ | ¤ | ¥ | ¥ | |||
| ¦ | ¦ | § | § | ¨ | ¨ | © | © | |||
| ª | ª | « | « | ¬ | ¬ | ­ | | |||
| ® | ® | ¯ | ¯ | ° | ° | ± | ± | |||
| ² | ² | ³ | ³ | ´ | ´ | µ | µ | |||
| ¶ | ¶ | · | · | ¸ | ¸ | ¹ | ¹ | |||
| º | º | » | » | ¼ | ¼ | ½ | ½ | |||
| ¾ | ¾ | ¿ | ¿ | × | × | ÷ | ÷ |
Using these built-in characters instead of small gifs saves some downloading time -- i.e., your intended audience will not have to wait as long for the material to load into his or her viewing screen. Moreover, these built-in characters may make it easier for you to edit a web page: You can do everything in one file, using just one text editor; you don't have to keep track of dozens of separate little files. But be cautioned that these characters are not necessarily exhibited properly on all browsers.
| Ascii code | Result | Ascii code | Result | |
| <font face=symbol>A</font> | A | <font face=symbol>a</font> | a | |
| <font face=symbol>B</font> | B | <font face=symbol>b</font> | b | |
| <font face=symbol>C</font> | C | <font face=symbol>c</font> | c | |
| <font face=symbol>D</font> | D | <font face=symbol>d</font> | d | |
| <font face=symbol>E</font> | E | <font face=symbol>e</font> | e | |
| <font face=symbol>F</font> | F | <font face=symbol>f</font> | f | |
| <font face=symbol>G</font> | G | <font face=symbol>g</font> | g | |
| <font face=symbol>H</font> | H | <font face=symbol>h</font> | h | |
| <font face=symbol>I</font> | I | <font face=symbol>i</font> | i | |
| <font face=symbol>J</font> | J | <font face=symbol>j</font> | j | |
| <font face=symbol>K</font> | K | <font face=symbol>k</font> | k | |
| <font face=symbol>L</font> | L | <font face=symbol>l</font> | l | |
| <font face=symbol>M</font> | M | <font face=symbol>m</font> | m | |
| <font face=symbol>N</font> | N | <font face=symbol>n</font> | n | |
| <font face=symbol>O</font> | O | <font face=symbol>o</font> | o | |
| <font face=symbol>P</font> | P | <font face=symbol>p</font> | p | |
| <font face=symbol>Q</font> | Q | <font face=symbol>q</font> | q | |
| <font face=symbol>R</font> | R | <font face=symbol>r</font> | r | |
| <font face=symbol>S</font> | S | <font face=symbol>s</font> | s | |
| <font face=symbol>T</font> | T | <font face=symbol>t</font> | t | |
| <font face=symbol>U</font> | U | <font face=symbol>u</font> | u | |
| <font face=symbol>V</font> | V | <font face=symbol>v</font> | v | |
| <font face=symbol>W</font> | W | <font face=symbol>w</font> | w | |
| <font face=symbol>X</font> | X | <font face=symbol>x</font> | x | |
| <font face=symbol>Y</font> | Y | <font face=symbol>y</font> | y | |
| <font face=symbol>Z</font> | Z | <font face=symbol>z</font> | z | |
| <font face=symbol>^</font> | ^ | <font face=symbol>@</font> | @ |
The preceding technique only shows the "low ascii" characters of the "symbol" font. The "symbol" font also includes "high ascii" characters, which correspond to control-characters such as control-I or control-shift-I. Those are hard to edit, using ordinary text editors. However, we can encode those control-characters with ascii too. The result makes a slightly longer and more cumbersome ascii code, but it still occupies far fewer bits than does a graphical image.
| Ascii code | Result | Ascii code | Result | |
| <font face=symbol>¡</font> | ¡ | <font face=symbol>¢</font> | ¢ | <font face=symbol>£</font> | £ | <font face=symbol>¤</font> | ¤ | <font face=symbol>¥</font> | ¥ | <font face=symbol>¦</font> | ¦ | <font face=symbol>§</font> | § | <font face=symbol>¨</font> | ¨ | <font face=symbol>©</font> | © | <font face=symbol>ª</font> | ª | <font face=symbol>«</font> | « | <font face=symbol>¬</font> | ¬ | <font face=symbol>­</font> | | <font face=symbol>®</font> | ® | <font face=symbol>¯</font> | ¯ | <font face=symbol>°</font> | ° | <font face=symbol>±</font> | ± | <font face=symbol>²</font> | ² | <font face=symbol>³</font> | ³ | <font face=symbol>´</font> | ´ | <font face=symbol>µ</font> | µ | <font face=symbol>¶</font> | ¶ | <font face=symbol>·</font> | · | <font face=symbol>¸</font> | ¸ | <font face=symbol>¹</font> | ¹ | <font face=symbol>º</font> | º | <font face=symbol>»</font> | » | <font face=symbol>¼</font> | ¼ | <font face=symbol>½</font> | ½ | <font face=symbol>¾</font> | ¾ | <font face=symbol>¿</font> | ¿ | <font face=symbol>À</font> | À | <font face=symbol>Á</font> | Á | <font face=symbol>Â</font> | Â | <font face=symbol>Ã</font> | Ã | <font face=symbol>Ä</font> | Ä | <font face=symbol>Å</font> | Å | <font face=symbol>Æ</font> | Æ | <font face=symbol>Ç</font> | Ç | <font face=symbol>È</font> | È | <font face=symbol>É</font> | É | <font face=symbol>Ê</font> | Ê | <font face=symbol>Ë</font> | Ë | <font face=symbol>Ì</font> | Ì | <font face=symbol>Í</font> | Í | <font face=symbol>Î</font> | Î | <font face=symbol>Ï</font> | Ï | <font face=symbol>Ð</font> | Ð | <font face=symbol>Ñ</font> | Ñ | <font face=symbol>Ò</font> | Ò | <font face=symbol>Ó</font> | Ó | <font face=symbol>Ô</font> | Ô | <font face=symbol>Õ</font> | Õ | <font face=symbol>Ö</font> | Ö | <font face=symbol>×</font> | × | <font face=symbol>Ø</font> | Ø | <font face=symbol>Ù</font> | Ù | <font face=symbol>Ú</font> | Ú | <font face=symbol>Û</font> | Û | <font face=symbol>Ü</font> | Ü | <font face=symbol>Ý</font> | Ý | <font face=symbol>Þ</font> | Þ | <font face=symbol>ß</font> | ß | <font face=symbol>à</font> | à | <font face=symbol>á</font> | á | <font face=symbol>â</font> | â | <font face=symbol>ã</font> | ã | <font face=symbol>ä</font> | ä | <font face=symbol>å</font> | å | <font face=symbol>æ</font> | æ | <font face=symbol>ç</font> | ç | <font face=symbol>è</font> | è | <font face=symbol>é</font> | é | <font face=symbol>ê</font> | ê | <font face=symbol>ë</font> | ë | <font face=symbol>ì</font> | ì | <font face=symbol>í</font> | í | <font face=symbol>î</font> | î | <font face=symbol>ï</font> | ï | <font face=symbol>ñ</font> | ñ | <font face=symbol>ò</font> | ò | <font face=symbol>ó</font> | ó | <font face=symbol>ô</font> | ô | <font face=symbol>õ</font> | õ | <font face=symbol>ö</font> | ö | <font face=symbol>÷</font> | ÷ | <font face=symbol>ø</font> | ø | <font face=symbol>ù</font> | ù | <font face=symbol>ú</font> | ú | <font face=symbol>û</font> | û | <font face=symbol>ü</font> | ü | <font face=symbol>ý</font> | ý | <font face=symbol>þ</font> | þ |
A
VU Math web page, updated
27 May 2002
by the department's
webmaster.
Your comments are welcome.