Я должен сохранить уравнения в текстовом файле в исходном формате, который может быть преобразован во что-то, что может быть представлено (например, mathML). Мне нравится формат, используемый в OpenOffice. Я не хочу использовать TEX, или по крайней мере я не хочу вытягивать во всем багаже интерпретации Техаса. Какой формат Редактор формул OpenOffice использует и является там сторонними преобразователями командной строки, которые обработают этот формат? Я не хочу должным быть выполнять OpenOffice каждый раз, когда я должен представить/преобразовать свои уравнения.
Какой формат Редактор формул OpenOffice использует?
Математика LibreOffice (и Математика OpenOffice) оба использования MathML для представления математической разметки.
Просто сохраните любое уравнение с помощью Математики и просто распакуйте его (это - упакованный ZIP). Например, если Вы создаете известный [E=mc ²] и сохраняете его, затем в content.xml
в Вашем .odt
файл Вы найдете что-то вроде этого:
<?xml version="1.0" encoding="UTF-8"?>
<math xmlns="http://www.w3.org/1998/Math/MathML">
<semantics>
<mfenced open="[" close="]"><mrow>
<mi>E</mi><mo stretchy="false">=</mo><msup><mi mathvariant="italic">mc</mi><mn>2</mn></msup>
</mrow></mfenced>
<annotation encoding="StarMath 5.0">left[ E=mc^2 right]</annotation>
</semantics>
</math>
Как Вы видите, Математика хранит уравнение в собственном формате annotation
раздел, но можно использовать плоскость MathML в качестве формата ввода.
… преобразователи командной строки, которые обработают этот формат
Я верю, можно использовать Python API для Libre (Открытый) Office.
Можно поместить собственное уравнение в аннотацию (в формате StarMath). Похож на Математическое уравнение сборок на основе того, как оно представлено в аннотации, и остальная часть файла MathML только для представления/совместимости.
Если MathML не будет похож сделанный из StartMath, то он предложит "восстановить" файл, и он будет работать просто великолепно после этого.
Я предполагаю, что Вы хотите знать о математических командах для Математики OpenOffice. Команды являются собственными, и там, кажется, не сторонние преобразователи.
Можно использовать tex, не вытягивая в целой tex системе компиляции. Я пользуюсь библиотекой JavaScript mathJax для рендеринга непосредственно. Если Вы хотите преобразовать в промежуточный формат, такой как mml и затем представить позже, можно пользоваться библиотекой, такой как SnuggleTeX для Java.