JLaTeXMath is a Java library. Its main purpose is to display mathematical formulas written in LaTeX. JLaTeXMath is the best Java library to display LaTeX code.
This library is used by numerous important projects like Scilab, Geogebra, Freeplane, Mathpiper, CaRMetal, Ultrastudio, etc.
The default encoding is UTF-8.
Most LaTeX commands are available including:
- macros from amsmath and symbols from amssymb and stmaryrd
\includegraphics
(without options)- TeX macro
\over
- accents from amsxtra package
- macros
\definecolor
,\textcolor
,\colorbox
and\fcolorbox
from the package color - macros
\rotatebox
,\reflectbox
and\scalebox
from the package graphicx - most latin unicode characters are available and cyrillic or greek characters are in the artifacts jlatexmath-font-cyrillic and jlatexmath-font-greek
- commands
\newcommand
and\newenvironment
- environments
array
,matrix
,pmatrix
,...,eqnarray
,cases
- vertical and horizontal lines are handled in array environment
- commands to change the size of the font are available :
\tiny
,\small
,...,\LARGE
,\huge
,\Huge
- fonts which are embedded in the jlatexmath jar file for use by fop 1.0 to generate PDF, PS or EPS (SVG export with shaped fonts works fine too). Since jlatexmath version 0.9.5, the fop plugin is fully compatible with fop 1.0 and xmlgraphics 1.4
- and probably other things I forgot...
A few examples are available in the source distribution, they show how to use JLaTeXMath and how to write new commands using Java.
A first example :
a second one :
and a third one :
JLaTeXMath is used by Scilab to display formulas written in LaTeX in graphic windows:
JLaTeXMath is a fork of the excellent project JMathTeX.
To build the jlatexmath artifacts just type
mvn clean install
Some examples are provided to show how to use easily the library.
Have fun and if you meet any problem, don't hesitate to create a new issue on github.
License
Regarding JLaTeXMath’s Classpath Exception and JavaScript: If you use the Google Web Toolkit (GWT) to compile JLaTeXMath to an “executable” (in JavaScript) you can then include/link this “executable” JavaScript library on a website or inside another program. In this case the rest of the website/program need not be licensed under the GPL.
Benchmarks
To run jmh benchmarks (measuring parse and render performance):
# benchmarks are in core module
cd jlatexmath
mvn clean install -P benchmark
Code coverage
To run code coverage
mvn -DrepoToken=TOKEN clean cobertura:cobertura coveralls:report