2009-11-23 18 views
26

He estado investigando un proyecto matemático relacionado con Android que me gustaría emprender y tropecé con MathML por primera vez.MathML y ​​Java

¿Alguien sabe de alguna biblioteca Java que pueda hacer alguna (preferiblemente todas) de las siguientes cosas?

  1. Analizar MathML
  2. salida MathML analizando la notación matemática estándar
  3. Render MathML (especialmente importante)
  4. hacer cualquier otra cosa fresca matemáticas-ey (como volver a organizar las ecuaciones en términos de cosas diferentes)

El número 3 es probablemente el más importante, y el 4 el menos importante.

Gracias de antemano.

Respuesta

29

He usado JEuclid para representar MathML en mi proyecto Symja (sistema matemático matemático de Java - punto 4 de su lista). Tal vez, ¿que JEuclid debe ralentizarse (especialmente al inicio) para renderizar MathML en un teléfono móvil?

Otras alternativas para la prestación de expresiones matemáticas con TeX:

y para re-organización de ecuaciones o tan generales librerías matemáticas de Java:

proyectos calculadora para Android:

+0

Muy útil - muchas gracias –

+1

JEuclid depende de java.awt.image.BufferedImage y no funcionará en android – Ozzy

+0

JMathTex depende de javax.swing.Icon y no funcionará en android. – hasanghaforian

0

Depende de tener un navegador que renderice MathML, por supuesto.

Una alternativa sería probar jsMath, una biblioteca de JavaScript que usa TeX para representar ecuaciones.

2

he utilizado esto para su punto 3 anterior (representación): http://jeuclid.sourceforge.net/

Se hace un trabajo bastante ingeniosa teniendo MathML y ​​la creación de un archivo JPG, PNG, etc. También mostrará las ecuaciones en una interfaz gráfica de usuario (y supongo que puede ver el código GUI e incorporarlo en su propio proyecto)

+0

¡Excelente! Muchas gracias. –

3

JScience (jscience.org) parece que tiene algún apoyo experimental para MathML está introduciendo.

me gustaría decir que estoy muy impresionado con las características del autor JScience ha elegido y probadas capaces de apoyar con su poderosa biblioteca de Java.

Es una pieza de artesanía bastante sorprendente. Si está haciendo una cantidad significativa de matemática sofisticada en sus programas Java, o simplemente quiere crear una utilidad para apuntar, entonces debería echarle un vistazo a esta biblioteca. Incluso podría darte algunas ideas para cosas que nunca antes habías pensado porque eran "demasiado difíciles".

Hay un proyecto de código abierto llamado MathEclipse que también le puede interesar.