MIT

Web Guide is no longer being maintained and the information on this page may be out of date. For assistance with managing course materials, please visit MIT's Stellar course management system.

ACS Academic Webpage Creation Guide


Building Your Pages > Technical Notation and Foreign Languages

Technical Notation and Foreign Languages

Web Display of Mathematical Equations

Current Options

At present, the options for including all but the simplest mathematical equations on Web pages are limited by browser capabilities. Current methods for displaying equations fall into two categories:

Browser display
The basis of the document is HTML. Equations are displayed with embedded images or Java applets, or are rendered natively as text (possibly with the use of symbol fonts from the browser).
 
Graphical page display
Full-page images of the document are rendered by a viewer or plug-in from files in page-description languages (TeX, DVI, PS, or PDF), or are displayed directly in the browser (e.g., images scanned from paper originals).

For direct creation of HTML-based documents, the choices are the same as for any Web page creation. You start with a text editor and raw HTML, or a WYSIWYG HTML editor, and embed images of equations as you would place any image on a Web page. Equation editors included with word processing applications may be used to generate images of simple equations. Newer tools dedicated to mathematics, such as WebEQ, include both WYSIWYG math palettes and a typesetting syntax to generate images of equations or equation-rendering applets.

The conversion programs that translate TeX/LaTeX files to HTML may generate images for equations, or attempt to represent the equations in native HTML. Packages such as Maple and Mathematica let you save directly to HTML with images, or generate images of single equations.

Samples and Tools

For samples generated with tools available on Athena, go to Academic Computing Support's Displaying Math on the Web. This site includes:

Future Prospects

Ongoing developments toward integrated Web publishing of mathematics have led to the creation of MathML, an XML-based format for marking up equations in terms of presentation and structure. It not only encodes mathematical notation for visual display, but also captures semantics in a way that lets other tools process the content of equations. MathML consists of HTML-like tags, used hierarchically to represent the structural relationships between elements in a mathematical expression. It can be read by humans, but is extremely verbose and is intended not for direct editing but rather for machine-to-machine communication, including communication from your authoring tools or syntax converters to your reader's browser.

The goal is for browsers to render MathML directly. It is being incorporated into authoring tools, applets, and plug-ins aimed at the scientific community. For more information on MathML, go to Displaying Math on the Web -- Further Information.


Web Display of Chemical Equations and Structures

Chemical Equations

At present, the options for displaying chemical equations are the same as for mathematics. The same tools may be used and the same approaches taken. You can display simple equations in HTML, include an image (generally a GIF) of the equation, use a Java applet to display the equation, or provide the document in PDF format.

In the future, XML-based systems may use the Chemical Markup Language, CML.

Chemical Structures

For chemical structures, options are more limited. Generally, a GIF image is most appropriate, although 3-D VRML models are a possibility.

The Chemical Markup Language includes the ability to depict molecules, and CML-compatible browsers or browsers with appropriate plug-ins will be able to display them in some fashion.


Foreign Languages in Web Pages

Why foreign-language characters are difficult on the Web

Read this for an explanation (and history) of the computer encoding systems for English, foreign-language characters, and special symbols.

Using Foreign Characters and Other Symbols in Web Pages

Latin-Based (European) Characters and Symbols

When you want to use only a few foreign characters (from primarily European languages) or other special symbols in a Web document, the easiest method is to insert the special numeric codes or named entities (descriptive codes) for those characters directly into the HTML. To look up the code for a particular character, go to Special HTML Characters. This table is based on the ISO 8859-1 (also known as ISO Latin-1) character table (which includes the standard English characters). Note: The numeric code (a decimal number) begins with an ampersand (&) and number (#) sign, and ends with a semi-colon (;); the descriptive code begins with an ampersand (&) and ends with a semi-colon (;).

Here are two examples:

You wish to show a price in pounds sterling: £5
From the character table, the pound symbol numeric code is "163"; the descriptive code is "pound"
At the place in your HTML coding where you want the price to appear, you would enter one of the following:

£5
£5

You wish to write correctly the French word: café
The numeric code for the e-acute accent is "233"; the descriptive code is "eacute"
Your coding entry would be one of the following:

café
café

To ensure that special characters and symbols appear correctly in your readers' browsers, use the numerical or descriptive codes. (You may insert foreign characters or symbols directly in the document, if you can type them on your computer. Caution, however: software or systems between you and your reader's browser may convert these characters from 8-bit ISO 8859-1 to 7-bit ASCII; , e.g. instead of seeing "café" the reader sees "cafi"; instead of "München", "M|nchen".)

Non-Latin Character Sets

Language Kits for the Macintosh
If you work on a Macintosh and need to write for the Web in a language that does not use the ISO Latin-1 character set (above), install the appropriate Apple Language Kit, now included in MacOS 9. The kits currently available cover: Arabic and Persian, Chinese, Cyrillic (including Bulgarian, Russian, Ukrainian, Belorussian, Macedonian, and Serbian), Hebrew (and Yiddish), Indian (Hindi, Sanskrit, Gujarati, Marathi, Punjabi, and Nepali; using Devanagari, Gujarati, and Gurmukhi writing systems), Japanese, Korean. Netscape Communicator comes with a built-in, WYSIWYG editor which works with a Language Kit's front-end processor.

Other Macintosh Options
Adobe Pagemill is available in a Japanese version, and is easy to use. Pagemill also comes in separate, localized versions for French and German (all the menus and help, etc., are displayed in French or German). Pagemill does not work with the Apple Language Kits.

BBEdit (and the freeware version, BBEdit Lite) are powerful text editors, with HTML tags which you can easily insert into a document. BBEdit and BBEdit Lite are not WYSIWYG systems. Neither works well with the Language Kits because they do not allow control over the font.

PC Windows
Netscape Communicator should work with whatever foreign-language, text-entry solution you regularly use on your PC, just as it does on the Macintosh with the Language Kits.

Configuring Web Browsers for Foreign Languages

English, and most European-language HTML documents created with the ISO Latin-1 character set, will display without problems in most Web browsers. Languages not based on ISO Latin-1, however, may require that the browser be configured with special fonts and software. If you create Web pages that include foreign-language characters, especially non-Latin based, you will need to instruct your readers on how to configure their computer systems appropriately, as follows:

Internet and Web Font Resources

The Yamada Language Center at the University of Oregon maintains sites devoted to language-related issues and resources on the Web:

The Yamada Language Center Language Guides
Yamada Language Center Font Archive

The Summer Institute of Linguistics maintains Sources of Language Fonts on the Internet, with fonts for Macintosh, Windows, MS-DOS, and TeX.

The Apple Macintosh Font archive is an FTP site.