How to use blahtex(ml)?
The short answer is of course to read the manual, but here is an example to illustrate the use of blahtex.
Using the --mathml
option
With the --mathml
option, blahtex(ml) converts one TeX formula into MathML, from standard input to standard output. For instance, typing:
echo '\sqrt{x^2+\alpha}' | blahtex --mathml
produces:
<blahtex> <mathml> <markup> <msqrt> <msup> <mi>x</mi> <mn>2</mn> </msup> <mo lspace="0.222em" rspace="0.222em">+</mo> <mi>α</mi> </msqrt> </markup> </mathml> </blahtex>
Using the --png
option
With the --png
option, blahtex(ml) converts one TeX formula into PNG. The name of the output file is automatically generated and is given as output. For instance, typing:
echo '\sqrt{x^2+\alpha}' | blahtex --png
produces:
<blahtex> <png> <md5>068bd5f892d1f87b0371fa570af10712</md5> </png> </blahtex>
and the file 068bd5f892d1f87b0371fa570af10712.png
: .
Using the --xmlin
option
This is specific to blahtexml. An input file looks like the following example.
<?xml version="1.0"?> <equations xmlns:b="http://gva.noekeon.org/blahtexml"> <equation b:inline="x+y"/> <equation b:block="\exp(-\gamma x)"/> </equations> </pre>
The equations are given as attributes (inline
or block
) in the http://gva.noekeon.org/blahtexml
namespace. Whenever blahtexml meets such an equation, it expands it into the equivalent MathML code. The output corresponding to the previous example is given below.
<?xml version="1.0" encoding="UTF-8"?> <equations xmlns:b="http://gva.noekeon.org/blahtexml"> <equation> <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>x</mi> <mo lspace="0.222em" rspace="0.222em">+</mo> <mi>y</mi> </math> </equation> <equation> <math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> <mstyle displaystyle="true"> <mi>exp</mi> <mo lspace="0" rspace="0" stretchy="false">(</mo> <mo lspace="0" rspace="0">-</mo> <mi>γ</mi> <mspace width="0"></mspace> <mi>x</mi> <mo lspace="0" rspace="0" stretchy="false">)</mo> </mstyle> </math> </equation> </equations>
Blahtexml has command-line options to fine-tune the XML output. One can specify the output document type declaration. Also, the representation of the MathML namespace can be adjusted. Blahtexml can also be used to generate XHTML+MathML. Please refer to the manual for more details.