2009-11-23 11 views
26

Zrobiłem kilka badań dla matematycznego projektu związanego z Androidem, który chciałbym rozpocząć i natknąłem się po raz pierwszy na MathML.MathML i Java

Czy ktoś wie o jakichkolwiek bibliotekach Java, które mogą wykonywać dowolne (najlepiej wszystkie) z poniższych rzeczy?

  1. składni MathML
  2. Wyjście MathML przez parsowania matematycznej notacji
  3. Render MathML (szczególnie ważne)
  4. Czy jakiekolwiek inne rzeczy fajne matematyki-EY (jak re-aranżacji równania pod względem różnych rzeczy)

Numer 3 jest prawdopodobnie najważniejszy, a numer 4 - najmniejszy.

Z góry dziękuję.

Odpowiedz

29

Użyłem JEuclid do renderowania MathML w moim projekcie Symja (Java symboliczny system matematyczny - punkt 4 twojej listy). Może, że JEuclid ma zwolnić (szczególnie przy uruchamianiu) renderowanie MathML na telefonie komórkowym?

Inne alternatywy dla renderowania wyrażeń matematycznych z TeX:

i re-aranżacji równań lub jako ogólne Java bibliotek matematycznych:

projekty Kalkulator dla Androida:

+0

Bardzo pomocne - bardzo dziękuję –

+1

JEuclid jest zależny od java.awt.image.BufferedImage i nie będzie działał w Androidzie – Ozzy

+0

JMathTex jest zależny od javax.swing.Icon i nie będzie działać na Androidzie. – hasanghaforian

0

To zależy od przeglądarki, która wyrenderuje MathML, oczywiście.

Alternatywą byłoby wypróbowanie jsMath, biblioteki JavaScript, która używa TeX do renderowania równań.

2

Użyłem tego jako punkt # 3 powyżej (rendering): http://jeuclid.sourceforge.net/

Czyni całkiem fajną pracę biorąc MathML i tworzenie JPG, png, etc. Będzie również wyświetlać równania w GUI (i domyślam się, że możesz spojrzeć na kod GUI i włączyć to do twojego własnego projektu)

+0

Rewelacja! Dziękuję bardzo. –

3

JScience (jscience.org) wygląda to ma jakieś eksperymentalne wsparcie dla MathML wprowadzane.

chciałbym powiedzieć, że jestem pod ogromnym wrażeniem z funkcjami autor JScience wybrał i sprawdzonych w stanie utrzymać jego potężnej biblioteki Java.

Jest to dość niesamowity kawałek rzemiosła. Jeśli robisz znaczną ilość wyrafinowanej matematyki w swoich programach Java lub po prostu chcesz stworzyć narzędzie do puntowania, powinieneś zajrzeć do tej biblioteki. Może nawet dać ci pomysły na rzeczy, o których nigdy wcześniej nie myślałeś, ponieważ były "zbyt trudne".

Istnieje projekt open source o nazwie MathEclipse, który może Cię zainteresować.