Я не спрашиваю о преобразовании документа LaTeX в html.
Я хотел бы иметь возможность использовать математические команды LaTeX в html-документе и правильно отображаться в браузере. Это может быть сделано на стороне сервера или клиента.
Я не спрашиваю о преобразовании документа LaTeX в html.
Я хотел бы иметь возможность использовать математические команды LaTeX в html-документе и правильно отображаться в браузере. Это может быть сделано на стороне сервера или клиента.
MediaWiki может делать то, что вы ищете. Он использует Texvc (http://en.wikipedia.org/wiki/Texvc), который "проверяет (AMS) математические выражения LaTeX и преобразует их в HTML, MathML или PNG-графику". Похоже на то, что вы ищете.
Ознакомьтесь с статьей Википедии о том, как они обрабатывают математические уравнения здесь: http://en.wikipedia.org/wiki/Help:Formula. Они также имеют обширную ссылку на LaTeX и плюсы/минусы различных типов рендеринга (PNG/MathML/HTML).
MediaWiki использует подмножество TeX-разметки, включая некоторые расширения от LaTeX и AMS-LaTeX, для математических формулы. Он генерирует либо PNG изображений или простой разметки HTML, в зависимости от пользовательских настроек и сложность выражения. в будущее, поскольку больше браузеров умнее, он сможет генерировать расширенные HTML или даже MathML во многих случаях. (См. Blahtex для получения информации о текущая работа над добавлением MathML поддержка.)
Точнее, MediaWiki фильтрует разметку через Texvc, которая, в свою очередь, передает команды TeX для фактический рендеринг. Таким образом, только ограниченный частью полного языка TeX является поддерживается; см. ниже....
Плюсы HTML
- Встраиваемые HTML-формулы всегда правильно выравниваются с остальной частью HTML текст.
- Формульный фон, размер шрифта и лицо соответствуют остальной части HTML содержание и внешний вид CSS и настройки браузера.
- Страницы с использованием HTML будут загружаться быстрее.
Плюсы TeX
- TeX семантически превосходит HTML. В TeX "x" означает "математическая переменная x", тогда как в HTML "x" может означать что угодно. Информация была безвозвратно потеряна. Это имеет несколько преимуществ:
- TeX можно преобразовать в HTML, но не наоборот. Это означает, что на на стороне сервера мы всегда можем преобразуют формулу, основанную на ее сложность и текст, пользовательские настройки, тип браузером и т.д. Поэтому, где возможно, все преимущества HTML могут сохраняются вместе с преимущества TeX. Это правда, что нынешняя ситуация не идеальна, но это не повод для падения информация/содержание. Это больше причина для улучшения ситуации.
- TeX можно преобразовать в MathML для браузеров, которые его поддерживают, таким образом сохраняя свою семантику и позволяя ей для визуализации в виде вектора.
- TeX специально разработан для набора формул, поэтому ввод проще и естественнее, а выход более эстетично.
- При написании в TeX редакторы не должны беспокоиться о поддержке браузера, поскольку он отображается в изображении сервер. HTML-формулы, с другой стороны рука, может оказаться оказанной несовместимые с намерениями редактора (или вообще не), некоторыми браузерами или более старые версии браузера.
Я предпочитаю MathJax над решениями, которые выбирают рендеринг изображений (что вызывает проблемы с псевдонимом).
MathJax - движок рендеринга Javascript с открытым исходным кодом для математики. Он использует CSS и Webfonts вместо изображений или флэш и может отображать LaTeX или MathML. Таким образом, у вас нет проблем с масштабированием и даже совместимым с прошивкой.
Однажды я разработал плагин jQuery, который фактически делает это: jsLaTeX
Вот самый простой пример того, как это можно использовать:
$(".latex").latex();
<div class="latex">
\int_{0}^{\pi}\frac{x^{4}\left(1-x\right)^{4}}{1+x^{2}}dx =\frac{22}{7}-\pi
</div>
Приведенное выше сгенерирует следующее уравнение LaTeX на вашей странице:
Демо-страница плагина содержит больше примеров кода и демонстраций.
Если вы хотите встроить математику в качестве изображений, вы можете взглянуть на MathTran.
Если вы предпочли бы, чтобы математика была вставлена на страницу в основном в виде текста (используя изображения только при необходимости), jsMath может быть тем, что вы ищете.
Исторически, рендеринг LaTeX и извлечение изображения были лучшим выбором для кросс-платформенных кроссбраузерных математических материалов. Все больше и больше MathML становится разумной альтернативой. Вот онлайн-конвертер, который выдает MathML из разметки Tex, которую вы затем можете вставлять на свою веб-страницу. Я знаю, что браузеры на базе Gecko, такие как Firefox и Camino, отлично смотрятся с MathML, также как и Opera. IE не работает из коробки, но есть доступные плагины (например, этот).
Texvc - отличная находка! HTML-выход ванили должен хорошо работать, если вас больше всего интересуют надстрочные/индексы/курсивы/общие символы, но для более сложных вещей имейте в виду, что наиболее популярные сайты, ориентированные на математику (например, Wolfram) генерирует изображения, поэтому может быть только столько, что вы можете сделать, если вы заинтересованы в совместимости с несколькими браузерами: - (
Здесь я прочитал все ответы, и я удивлен, что никто не упомянул о конверсии из PDF в HTML. Если вы используете pdf2htmlEX, он будет создавать идеальные веб-страницы из pdf. Вам просто нужно скомпилировать ваш латекс в формате pdf (pdflatex).
По умолчанию создается один html файл с содержимым вашего PDF файла, сделанным из CSS, javascript и html. Я попробовал много инструментов для преобразования латекса в html, и это, безусловно, лучшее и простое решение, которое я нашел.
Вы можете попробовать LaTexRenderer. Я не знаю, лучше ли это, но он работает.
Я сам начинаю изучать это, и кажется, что все изменилось. Я сталкивался с этим демо сравнения KaTeX и MathJax.
Короче говоря (на момент написания статьи):
Но, пожалуй, самое решающее из всех, я обнаружил, что общая обработка MathJax для страницы в среднем составляла 1674 мс за три запуска. В отличие от KaTeX в среднем 128 мс, что на порядок лучше!
Есть несколько других точек сравнения, которые следует учитывать при просмотре соответствующих веб-сайтов:
Я бы определенно рекомендовал вам взглянуть на MathML, если это соответствует тому, что вы ищете, но небольшая работа с JsTeX могла бы дайте вам все, что вам нужно.
Вы можете использовать tex2gif. Он использует фрагмент LaTeX, запускает LaTeX и создает PNG (или GIF). Легко встраивается, легко script. Это работает для меня.
Вы также можете проверить tex2png.