Ответ 1
Так как ресурсы в Интернете изменились по этому вопросу, здесь обновляется поддержка LateX с страницами GitHub.
Обратите внимание, что ближайший к Latex рендеринг без экспорта в качестве изображений и его поддержка на вашем сайте Jekyll будет использовать MathJax.
MathJax на самом деле рекомендуется в документах Jekyllrb для математической поддержки, с Kramdown, он также преобразует его из LaTeX в PNG, подробнее об этом здесь, в Документация Kramdown
Вариант 1: Напишите свое уравнение в MathURL и вставьте его.
Вы можете написать уравнение с MathURL, затем сгенерировать URL-адрес, который постоянно указывает на уравнение и отобразить это в теге <iframe>
. Однако это прекратит работу, если MathURL переходит в автономный режим.
Вариант 2: Внедрить jsMath
jsMath позволит почти LateX как синтаксис и будет поддерживаться в вашем блоге, если вы его правильно настроили, обширная документация по этому вопросу,
Вариант 3: Mathjax (пожалуй, самый легкий, на мой взгляд)
Многие сайты упомянули, что Mathjax считается преемником jsMath, и его намного проще реализовать с Jekyll. MathJax также используется также математикой .stackexchange.com!
-
Шаг 1. Загрузите ваш сайт script на сайтах, где вы хотите отображать математику. (обычно делается в заголовке)
-
Дополнительно: проверьте свой синтаксический анализатор в
_config.yml
.redcarpet
илиkramdown
предлагается в этом примере. Определенные парсеры вродеdiscount
будут влиять на синтаксис, но у меня есть решение ниже. -
Шаг 2: напишите ваши уравнения.
Цитируя этот урок Гастоном Санчесом:
MathJax не имеет такого же поведения, как LaTeX. По умолчанию, препроцессор tex2jax определяет разделители Math LaTeX, которые являются \ (... \) для линейной математики и \[... \] для отображаемых уравнений. Это также определяет разделители TeX $$... $$ для отображаемых уравнений, но он не определяет $... $как разделители строк в строке.
Подробнее читайте документацию в синтаксисе.
- Примечание: Использование тега
raw
для обеспечения того, чтобы маркерные парсеры не мешали синтаксису MathJax. - Пока вы можете избежать обратных косых черт (например,
\\[ \frac{1}{n^{2}} \\]
), чтобы убедитесь, что они правильно разбираются, как описано Chistopher Poole's учебник, это не всегда интуитивно понятно и выглядит сложным. более простым решением было бы использовать сырую жидкую метку, чтобы обеспечить текст игнорируется процессором Markdown и напрямую выводится как статический html. Это делается с помощью{% raw %}
, а также{% endraw %}
Вот пример кода:
{% raw %}
$$a^2 + b^2 = c^2$$ --> note that all equations between these tags will not need escaping!
{% endraw %}
Наконец, также убедитесь, что шрифты поддерживают отображение LateX, поскольку некоторые из них имеют такие проблемы, как размер шрифта, слишком маленький. В качестве альтернативы здесь приведены некоторые дополнительные методы, такие как Google Charts и MathML, которые обсуждаются на веб-сайте латекса StackExchange.