MathML и Java

Я проводил исследования для математического проекта, связанного с Android, который хотел бы начать, и впервые наткнулся на MathML.

Кто-нибудь знает какие-либо библиотеки Java, которые могут делать любые (предпочтительно все) из следующих вещей?

  1. Parse MathML
  2. Вывод MathML путем разбора стандартной математической записи
  3. Рендер MathML (особенно важно)
  4. Делайте любые другие интересные математические вещи (например, переставляйте уравнения в терминах разных вещей)

Номер 3, вероятно, самый важный, а номер 4 наименее.

Заранее спасибо.

5 ответов

Решение

Я использовал JEuclid для рендеринга MathML в своем проекте Symja (система символьной математики Java - пункт 4 вашего списка). JEuclid может быть слишком медленным (особенно при запуске) для отображения MathML на мобильном телефоне.

Другие альтернативы для рендеринга математических выражений с TeX:

и для реорганизации уравнений или как общие математические библиотеки Java:

Калькулятор проектов для Android:

На странице Реализация W3C MathML ( http://www.w3.org/Math/Software/mathml_software_cat_editors.html) есть несколько статей, в которых упоминаются инструменты на основе Java... которые могут стать хорошим местом для начала поиска.

Удачи.

Похоже, JScience ( http://www.jscience.org/) имеет некоторую экспериментальную поддержку для MathML.

Я хотел бы сказать, что я очень впечатлен возможностями, которые автор JScience выбрал и доказал, что способен поддерживать его мощную библиотеку Java.

Это довольно удивительное произведение искусства. Если вы выполняете какое-то значительное количество сложной математики в своих программах на Java или просто хотите создать утилиту, с которой можно разбираться, тогда вам стоит взглянуть на эту библиотеку. Это может даже дать вам некоторые идеи о вещах, о которых вы никогда не думали делать раньше, потому что они были "слишком сложными".

Существует проект с открытым исходным кодом под названием MathEclipse, который может вас заинтересовать.

Я использовал это для вашего пункта № 3 выше (рендеринг): http://jeuclid.sourceforge.net/

Он делает довольно изящную работу, беря MathML и создавая JPG, PNG и т. Д. Он также отображает уравнения в графическом интерфейсе (и я предполагаю, что вы можете посмотреть код GUI и включить его в свой собственный проект)

Конечно, это зависит от наличия браузера, который будет отображать MathML.

Альтернативой было бы попробовать jsMath, библиотеку JavaScript, которая использует TeX для визуализации уравнений.

Другие вопросы по тегам