Si te encuentras con algún detalle que te causa duda puedes dejarlo en los comentarios y te ayudaremos tan rápido como podamos.
Solución:
LaTeX es un lenguaje de programación completo. Analizarlo significa ejecutar el programa.
Si bien parece ser simple en muchos de los casos comunes: section
etc. – no es ni mucho menos trivial. De hecho, debería estar completo. Y algunas partes incluso tendrán una sintaxis más o menos diferente. Tome TIKZ, por ejemplo, una excelente biblioteca de dibujo de gráficos para LaTeX. Su sintaxis es algo así como látex, pero otras partes son más que las de los lenguajes de programación modernos. Y mucho es como hojas de estilo.
Sin embargo, es posible que pueda salirse con la suya apoyando solo parte de la sintaxis de látex. Echa un vistazo a lo que hace Texlipse. Está en Java.
Yo usaría JLaTeXMath:
“JLaTeXMath es la mejor biblioteca de Java para mostrar código LaTeX”.
import org.scilab.forge.jlatexmath.TeXConstants;
import org.scilab.forge.jlatexmath.TeXFormula;
public class Example5
public static void main(String[] args)
String latex = "\beginarray";
latex += "\hline";
latex += "\textMatrix&\multicolumn2\textMulticolumns&\textFont sizes commands\cr";
latex += "\hline";
latex += "\beginpmatrix\alpha_11&\cdots&\alpha_1n\cr\hdotsfor3\cr\alpha_n1&\cdots&\alpha_nn\endpmatrix&\Large \textLarge Right&\small \textsmall Left&\tiny \texttiny Tiny\cr";
latex += "\hline";
latex += "\multicolumn4\Huge \textHuge Multicolumns\cr";
latex += "\hline";
latex += "\endarray";
TeXFormula formula = new TeXFormula(latex);
formula.createPNG(TeXConstants.STYLE_DISPLAY, 20, "target/Example5.png", Color.white, Color.black);
Fuente de TeXFormula: https://github.com/opencollab/jlatexmath/blob/7995ce52b2699c9a3a8428a94c1f3762cdcb0284/jlatexmath/src/main/java/org/scilab/forge/jlatexmath/TeXFormula.java#L244
Otras soluciones
- SnuggleTeX: también parece tener un buen analizador. Vea la llamada en https://sourceforge.net/p/snuggletex/code/HEAD/tree/trunk/snuggletex-core/src/main/java/uk/ac/ed/ph/snuggletex/samples/MinimalExample.java.
- JavaTex: https://sourceforge.net/projects/javatex/files/javatex/V0.2/. Parece ser un motor LaTeX completo.
- JavaTeX de CTAN: desde 1998, pero aún podría funcionar bien.
(parcialmente basado en https://tex.stackexchange.com/q/41609/9075)
Puedes añadir valor a nuestra información añadiendo tu veteranía en las ilustraciones.