Mathjax как скопировать в word

Обновлено: 25.06.2024

Интересно, есть ли какие-нибудь бесплатные решения для ввода математических формул способом LaTeX в документе Microsoft Word (Office 2007)?

Внутренний писатель формул не работает для вас? Это очень удобно, когда я делаю интегралы и / или суммирования. @NN Я не могу ответить за Тима, но, к сожалению, я должен написать статью в Word. Не использовал программное обеспечение в течение последних 9 лет .

Если вы используете Office 365 версии 1707 или более поздней, редактор формул позволяет вам конвертировать LaTex в собственный формат. Смотрите первую часть этого ответа.

В более старых версиях Office редактор формул может понимать некоторые компоненты LaTeX. Тем не менее, он строит уравнение на ходу, и вы не можете преобразовать полное уравнение LaTeX. Смотрите вторую часть этого ответа, если вы работаете:

  • WinWord 2007, 2010, 2013 и 2016
  • MacWord 2011 и 2016

Переведите редактор уравнений в режим LaTeX. На ленте « Дизайн редактора формул» перейдите в группу « Конверсии » и нажмите « LaTeX» .

Группа преобразований на ленте Equation Editor-Design

После ввода уравнения LaTeX

Откройте раскрывающееся меню « Преобразовать» и нажмите « Текущий - Профессиональный» .

Преобразовать меню, Текущий - Профессиональный

LaTeX будет преобразован в собственный формат редактора формул.

Результирующее уравнение

Вы также можете конвертировать обратно в LaTeX для редактирования уравнения.

  1. Откройте раскрывающееся меню « Преобразовать» и нажмите « Текущий» - «Линейный» .
  2. Уравнение конвертируется обратно в формат LaTeX. Примечание: это не ваш исходный источник LaTeX, потому что он был обработан с помощью внутреннего формата редактора формул.
  3. Откройте раскрывающееся меню « Преобразовать» и нажмите « Текущий - Профессиональный» .

Вы должны использовать выпадающее меню, потому что кнопка Convert не переключается автоматически между Linear и Professional. Он сохраняет последнюю использованную команду.

Есть некоторые ограничения. Например, редактор уравнений Office 365 не понимает команды \ begin и \ end . См. Документацию Microsoft для примеров и возможных обходных путей:

Мало кто понимает, что встроенный редактор формул в Word 2007 действительно понимает ввод уравнений в стиле LaTeX. Просто вставьте новое уравнение и введите в него LaTeX. По мере ввода Word создает графическое представление уравнения.

Запись в стиле LaTeX в Word 2007 и выше

Как только он появляется в графическом интерфейсе, вы больше не можете редактировать его как LaTeX. В Word нет встроенного процессора TeX - он просто выполняет сопоставление с образцом, чтобы преобразовать простой синтаксис LaTeX в формат собственных уравнений. Поэтому не стоит ожидать, что вы получите идеальную точность для сверхсложных уравнений LaTeX. Тем не менее, этого достаточно для любого, кроме математика, и это намного быстрее, чем щелкать мышью по элементам.

Редактор формул Word 2007 также имеет формат ввода линейных уравнений, который достаточно интуитивен и не требует знакомства с LaTeX. Например, при вводе (a+b)/(c+d) получится красиво отформатированная дробь.

Запись линейного уравнения в Word 2007 и выше

Многие научные журналы не будут принимать документы Word с новым форматом уравнений - даже если вы сохраните как .doc вместо .docx.

Это не превращает Word в LaTeX. Это просто делает уравнения сами по себе, и ничего больше. Вы даже не получаете нумерацию уравнений.

Ну хотя бы масштабирование без потери качества, удобный зум (если нужно прочесть мелкие формулы), можно использовать в заголовках тем, можно быстро посмотреть LaTeX код.

Десятки мелких картинок, перемешенных с текстом -- это ужасно. На том же math.se можно посмотреть, как всё выглядит цельно и красиво.

MathJax работает на большинстве не совсем допотопных браузерах и платформах.

Последний раз редактировалось lena7 12.08.2013, 22:01, всего редактировалось 3 раз(а).

Он не произвольными шрифтами работает (об этом лучше в оф. документации почитать). А те, с которыми работает -- подавно UTF-8 включают. Кстати, локальная установка шрифтов не требуется.

Изображение

Это я набрала в форме ответа на math.se.

Последний раз редактировалось Denis Russkih 13.08.2013, 16:31, всего редактировалось 1 раз.

Копировать только неудобно будет. И TikZ не будет работать.

Xaositect
А картинки как копировать?

Последний раз редактировалось arseniiv 13.08.2013, 18:46, всего редактировалось 1 раз.

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

-- Вт авг 13, 2013 21:46:32 --

MathJax — хорошая вещь, но когда он стоит с самого начала. Тогда никто не использовал бы то, чего в нём сейчас нет.

Последний раз редактировалось Red_Herring 15.02.2014, 21:00, всего редактировалось 1 раз.

Какие преимущества MathJax?

1) Лучшее качество формул

2) TeX который на форуме рассматривает каждый математический анзатц отдельно. Ср:

$\def\Rtwo<\mathbb<R></p>
<p>дает <br />^2>\qquad \Rtwo$

но если я попытаюсь использовать макро в другом анзатце

$\Rtwo$

то получу

Поэтому вводить макро не очень осмысленно. И автоматическая нумерация формул "летит" т.к. начинается по новой

\begin</p>
<p>2+2=4\end \begin1+2<4\end

\begin</p>
<p>3+2=5\end \begin1+2>0\end

3) В форумном TeX \label -- \ref механизм не работает даже внутри того же анзатца

\begin</p>
<p>2+2=4\label\end (\ref)

О преимуществах форумного TeX и как я подключил MathJax к своему SMF форуму -- в другой раз

Преимущества форумного ТеХ:

1. Работает \intertext:

\begin</p>
<p> 1+1=2\\ \intertext 1-1=0 \end

В MJ \intertext не работает, и по объяснению Davide Cervone (создателя MJ и предшествующего ему jsMath) он не знает как его сделать, потому что внутренний движок MJ--MathMl, а там такого нет

2. Tikz: MJ принципиально поддерживает только формулы. На мой взгляд, это не очень большой недостаток, т.к. Tikz здесь поддерживается не полностью, и всегда можно используя полный tikz/pgf с библиотеками, а также с кучей пакетов от разных авторов, надстроенных над tikz/pgf, а также с gnuplot построить картинку в pdf, обрезать ее с pdfcrop, перевести в png и добавить как attachment

Как установить MathJax? Это зависит, куда: на простую веб страницу, mediawiki, wordpress или форум.

Открыть Sources/Subs.php, найти

Разумеется, конфигурацию можно изменить.

Побочный эффект: на Firefox и подобных перестает работать Preview (но если можно редактировать посты, это не страшно).

Ещё один аргумент в пользу MathJax. Сейчас всё больше пользователей читают сайт с мобильных устройств, у которых имеется тенденция к увеличению разрешения экрана. Соответственно, картинки фиксированного размера на маленьких экранах с большим расширением выглядят комично малыми. Вот что вижу я на своём Nexus 5 (разрешение 1920x1080 при экране 5'', для сравнения такое же разрешение имеет мой 24''-монитор):

У нас в компании уже давно внедрена система стимулирования сотрудников (KPI) на базе «Redmine», совмещающая функции расчета ЗП. Расскажу о ней в двух словах.

У каждой должности есть какой-то оклад, сотрудник, занимающий должность, может славно поработать и умножить свой оклад на коэффициент результативности, который вычисляется на основе кучки показателей настроенных для его должности. Коэффициент результативности может быть как больше, так и меньше единицы. Таким образом, моделируя показатели, можно стимулировать сотрудников определенных должностей работать в определенном направлении.

Все это может выглядеть примерно вот так:

image

Со временем, мы пришли к выводу, что оклад у некоторых должностей тоже должен меняться в зависимости от различных показателей. Например, у руководителей аптек, базовый оклад должен зависеть от денежного оборота аптеки. Причем, зависимость эта может быть различной!

Важная особенность, которую всегда нужно учитывать при внедрении KPI – это прозрачность! Сотрудник всегда должен знать, почему он получил именно такую ЗП, где он недоработал, почему показатель посчитался именно так.

Поэтому, возникла необходимость помимо расчета базового оклада еще и продемонстрировать, как вычислялся оклад.

Latex и MathML

На данный момент существуют два основных стандарта для отображения формул в браузере: Latex и MathML

Я мучительно долго выбирал, какую из технологий использовать. В результате сделал несколько выводов. Надеюсь, они будут полезны сообществу.

Основное преимущество Latex в лаконичности записи. В остальном, по моему мнению, данный формат уступает MathML.

Например, запись формулы в Latex выглядит вот так:


В MathML то же самое записалось бы гораздо более громоздко:


MathML – это ХМL в чистом виде, от сюда более простой парсинг для собственных нужд, в случае необходимости.

MathML показался более понятный и быстро осваиваемым форматом. Хотя это мнение индивидуальное и спорное.

MathML поддерживается большинством современных браузеров, кроме Chrome, который отказался от поддержки данного формата, сославшись на библиотеку MathJax. Это значит, что в Firefox, например, не нужно подключать дополнительные библиотеки, браузер распарсит и отобразит формулу указанную выше без помощи сторонних библиотек.

«MathML» позволяет дополнить формулу кучкой полезных дополнений. Нам, например, жизненно необходимо было получить всплывающую подсказку к определенным значениям формулы, что бы сотрудник видел, откуда появилось данное значение. Для этого в MathML есть тег maction:


В результате при наведении на значение, пользователю покажется всплывающая подсказка:


MathJax

MathML хорош, но к сожалению, он не поддерживается всеми браузерами. Есть библиотека MathJax, которая позволяет парсить MathML в HTML, SVG и т.д. Она же, кстати, парсит отвергнутый мною Latex.

Библиотека неплохо справляется с парсингом формул, но имеет недостатки.

Самый большой, на мой взгляд, ее объем – 32.9 Mb в сжатом виде. Конечно не все будет отдаваться клиенту при отрисовке формулы, но сам по себе такой объем js-библиотеки, напрягает. Нам, например, нужно было раздавать ее внешним клиентам.

Изначально подключив всю библиотеку и реализовав задачу, я наугад выбросил из нее кучу папок. Методом «тыка», проверив, что ничего не сломалось. Размер сократился до 16 Mb. В основном выкидывал папки со шрифтами и лишними форматами вывода (например, SVG).

Грамотной документации по уменьшению объема библиотеки не нашел.

Библиотека достаточно тяжелая в освоении. Я долго ковырялся, в ней отключая ненужные фишки. Перечислю полезные конфигурационные настройки, которые оказались полезными:

Во-первых, у нас каждая формула открывается в отдельном окошке, которое грузится асинхронно (через AJAX). Следовательно, нет необходимости грузить библиотеку, когда пользователь не кликнул на ссылке. Примерно вот так это выглядит:



При динамическом подключении библиотеки возникали проблем с рендерингом формулы. Формула рендерилась лишь в том случае, когда библиотек подгружалась в первые, при повторном клике и открытие окошка, формула не рендерилась. Помогла конструкция, которая принудительно запускала рендеринг формул на странице:


Рендеринг формулы происходит не мгновенно, поэтому пользователю лучше показать прелоадер, для этого есть конструкция:


Иногда полезно увеличить масштаб:


Если после рендеринга формулы необходимо запустить какой-то дополнительный javascript, то можно воспользоваться конструкцией:


Для отключения дополнительного меню, которое можно вызвать правым кликом мыши, и отключения зума формулы:

Две формулы, а не одна

Меня до последнего не покидала мысль парсинга математической формулы по которой собственно будет производиться расчет в MathML формат. То-есть в базе данных я хотел сохранять одну формулу вида:


А mathml-конструкцию получать из исходной формулы:


В результате, сделалал вывод, что это до невозможности сложно и не всегда оправданно. В mathml-формуле может быть куча елементов, которые невозможно хранить в обычной формуле, например, всплывающие подсказки, выделения шрифта цветом и т.д. На текущий момент сохраняем в базе две формулы, одну для непосредственного расчета значения, а другую для отображения пользователю системы расчета.

Я стараюсь писать статьи после того, как столкнувшись со сложностями не нашел понятного и быстрого решения своих проблем. Думаю, моя специфическая статья будет кому-то полезной.

I wonder if there is some free solutions for typing math formulas the LaTeX way in Microsoft Word document (Office 2007)?


6,074 12 12 gold badges 54 54 silver badges 72 72 bronze badges


10 Answers 10

If you are running Office 365 version 1707 or later, the Equation Editor allows you to convert LaTex into the native format. See the first part of this answer.

In older versions of Office, the Equation Editor can understand certain LaTeX components. However, it builds the equation as you go, and you cannot convert an entire LaTeX equation. See the second part of this answer if you are running:

  • WinWord 2007, 2010, 2013, and 2016
  • MacWord 2011 and 2016

Put the Equation Editor into LaTeX mode. In the Equation Editor Design ribbon, go to the Conversions group and click LaTeX.

Conversions group on the Equation Editor-Design ribbon

After entering LaTeX equation

Open the Convert dropdown menu and click Current - Professional.

Convert menu, Current - Professional

The LaTeX will be processed into the Equation Editor's native format.

Resulting equation

You can also convert back to LaTeX to edit the equation.

  1. Open the Convert dropdown menu, and then click Current - Linear.
  2. The equation is converted back to LaTeX format. Note: This is not your original LaTeX source, because it has been round-tripped through the Equation Editor's internal format.
  3. Open the Convert dropdown menu, and then click Current - Professional.

You have to use the dropdown menu because the Convert button doesn't toggle automatically between Linear and Professional. It keeps the last-used command.

There are some limitations. For example, the Office 365 Equation Editor does not understand the \begin and \end commands. See the Microsoft documentation for examples and possible workarounds:

Very few people realize that the built-in equation editor in Word 2007 actually understands LaTeX-style equation entry. Simply insert a new equation, and then type LaTeX into it. As you type, Word will build up a graphical representation of the equation.

LaTeX-style equation entry in Word 2007 and above

Once it appears in the GUI, you can no longer edit it as LaTeX. Word does not have an embedded TeX processor -- it's just doing pattern matching to convert simple LaTeX syntax into the native equation format. You should therefore not expect to get perfect fidelity for super-complex LaTeX equations. However, it's enough for probably anyone but a mathematician, and it's a lot faster than clicking elements with the mouse.

The Word 2007 equation editor also has a linear equation entry format, which is fairly intuitive and does not require familiarity with LaTeX. For example, typing in (a+b)/(c+d) will result in a nicely-formatted fraction.

Linear equation entry in Word 2007 and above

Many scientific journals will not accept Word documents with the new equation format -- even if you save as .doc instead of .docx.

This doesn't turn Word into LaTeX. It just does the equations themselves, and nothing else. You don't even get equation numbering.

Читайте также: