For complex mathematics that cannot be expressed as linear text, you can use a graphics program to 'draw' the math. You could use bitmap paint application, or a vector graphics application. Then you could save it to one or more graphics file formats for inclusion in a DocBook mediaobject
element.
The DocBook equation
element lets you assign a formal title
to the mediaobject
it contains. Such formal titles are numbered, and can be included in a List of Equations at the front of a book. The equation
element also lets you specify an alt
element, so you can associate a text string with the graphic for sight-impaired readers. The informalequation
element is similar but does not contain a title
.
Both equation
and informalequation
format the graphic as a separate block. If you need an inline equation, you can use the inlineequation
element instead. It will embed the graphic equation within a line of text.
The following is an example of a PNG equation file:
<equation> <title>A Bitmap Equation</title> <mediaobject> <imageobject> <imagedata fileref="math.png" format="PNG"/> </imageobject> </mediaobject> </equation>
Bitmap files can be used in both HTML and FO output. But small text in bitmap graphics look rough in print. If you drew the math using a vector graphics program, you could save the graphic again to a vector format such as SVG. Since SVG is not supported in all HTML browsers, you may have to include two imageobject
elements in the mediaobject
element and use the appropriate one for each output. See Example 17.1, “Multiple graphics in a mediaobject”.
In HTML output, you can control the spacing and alignment of equations using CSS styles. Each equation
is wrapped in a <div class="equation">
, and similarly for informalequation
, but not for inlineequation
.
For FO output, the equation.properties
attribute-set lets you set spacing and alignment on the block that contains an equation
graphic. There is a similar informalequation.properties
attribute-set for informalequation
elements, but no attribute-set for inlineequation
elements, since they don't need spacing or alignment.
DocBook XSL: The Complete Guide - 3rd Edition | PDF version available | Copyright © 2002-2005 Sagehill Enterprises |