라텍스를 MathJax-HTML로 변환

라텍스를 MathJax-HTML로 변환

Latex 문서를 HTML 문서로 변환하여 모든 수학이MathJax?

(분명히, 대략적인 변환을 수행할 수 있는 빠른 Perl 스크립트를 함께 해킹하는 것은 상당히 쉽지만, 나는 좀 더 강력한 솔루션에 관심이 있습니다. 적어도 자동으로 모든 상호 참조를 올바르게 얻을 수 있어야 합니다.)

답변1

2020년 7월 업데이트:

아래 코드는 더 이상 필요하지 않습니다. TeX4ht는 이제 MathJax 출력을 완벽하게 지원합니다. 아래 코드와 동등한 것은 다음과 같습니다.

make4ht filename.tex "mathml,mathjax"

LaTeX 수학을 일반 텍스트로 유지하려면 다음을 사용하세요.

make4ht filename.tex "mathjax"

make4ht기본적으로 HTML5 및 UTF-8로 변환되는 대체 항목 htlatex이므로 이전 답변과 같은 특별한 구성이 필요하지 않습니다.


원래 답변:

당신이 사용할 수있는 TeX4ht. mathml로 표시할 수 있는 수학을 출력할 수 있습니다 mathjax. 다음에서 스크립트를 html로드하도록 헤더를 구성할 수도 있습니다 .mathjaxmathjax's cdn

\Preamble{xhtml,mathml}
\Configure{VERSION}{}
\Configure{DOCTYPE}{\HCode{<!DOCTYPE html>\Hnewline}}
\Configure{HTML}{\HCode{<html>\Hnewline}}{\HCode{\Hnewline</html>}}
\Configure{@HEAD}{}
\Configure{@HEAD}{\HCode{<meta charset="UTF-8" />\Hnewline}}
\Configure{@HEAD}{\HCode{<meta name="generator" content="TeX4ht
(http://www.cse.ohio-state.edu/\string~gurari/TeX4ht/)" />\Hnewline}}
\Configure{@HEAD}{\HCode{<link
         rel="stylesheet" type="text/css"
         href="\expandafter\csname aa:CssFile\endcsname" />\Hnewline}}
\Configure{@HEAD}{\HCode{<script type="text/javascript"\Hnewline
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"\Hnewline
></script>\Hnewline}}
\Configure{@HEAD}{\HCode{<style type="text/css">\Hnewline
  .MathJax_MathML {text-indent: 0;}\Hnewline
</style>\Hnewline}}
\begin{document}
\EndPreamble

이 구성 파일을 사용하여 수학을 으로 출력하도록 요청한 mathml다음 html결과 파일이 가 되도록 헤더를 구성합니다 html5. 예를 들어 저장한 ht5mjlatex.cfg다음 명령줄에서 호출합니다.

htlatex filename.tex "ht5mjlatex.cfg, charset=utf-8" " -cunihtf -utf8"

또는 William F. Hammond의 것을 사용할 수 있습니다.스크립트(페이지 하단에)

답변2

나는 개인적으로 다음을 사용하는 것을 선호합니다.pandoc이 작업의 경우 이는 1단계 솔루션이며 제 생각에는 출력이 훨씬 더 좋습니다.

하나의 마크업 형식에서 다른 마크업 형식으로 파일을 변환하려면 pandoc이 바로 스위스 군용 칼입니다.

이 명령은 대부분의 목적에 적합합니다.

pandoc document.tex --standalone --mathjax --output document.html

mathjax.js에 대한 자바스크립트 참조가 포함된 단일 HTML 파일이 생성됩니다. Pandoc은 광범위하게 문서화되어 있으며HTML로 수학을 표시하는 다른 방법사용할 수 있습니다.

관련 정보