
Есть такой инструмент, называетсяpdf2htmlexкоторый делает впечатляющую работу по конвертации PDF в HTML. Очень верный. Либокнигиполные математики и диаграмм, были тщательно преобразованы.
К сожалению, он больше не поддерживается. Кто-нибудь знает другой поддерживаемый инструмент, который так же хорошо справляется с конвертацией PDF или LaTeX в HTML?
решение1
Я бы рекомендовалсделать4хтчто, согласно документации:
make4ht — простая система сборки для tex4ht, конвертера TeX в XML. Она предоставляет инструмент командной строки, который управляет процессом конвертации. Она также предоставляет библиотеку, которую можно использовать для создания настраиваемых инструментов конвертации
Автор make4ht
-michal-h21и является очень активным участником этого сайта.
Давайте воспользуемся следующим небольшим примером mwe.tex
:
\documentclass{article}
\begin{document}
Here is some text. And here is some mathematical content $y=x^2$.
\end{document}
пример 1
Бег
make4ht.exe mwe.tex
дает вывод:
<!DOCTYPE html>
<html lang="en-US" xml:lang="en-US" >
<head><title></title>
<meta charset="iso-8859-1" />
<meta name="generator" content="TeX4ht (http://www.tug.org/tex4ht/)" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<link rel="stylesheet" type="text/css" href="mwe.css" />
<meta name="src" content="mwe.tex" />
</head><body
>
<!--l. 5--><p class="noindent" >Here is some text. And here is some mathematical content <span
class="cmmi-10">y </span>= <span
class="cmmi-10">x</span><sup><span
class="cmr-7">2</span></sup>. </p>
</body>
</html>
пример 2
Отсюда мы можем настроить вывод, используяконфигурацияфайлы; если у вас есть следующее:
roxy.cfg
\Preamble{mathml,-css,NoFonts}
\Configure{@HEAD}{\HCode{<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_HTMLorMML">\Hnewline</script>\Hnewline}}
\begin{document}
\EndPreamble
и беги
make4ht.exe -f html5 -c roxy.cfg mwe.tex
то вы получаете
<!DOCTYPE html>
<html lang="en-US" xml:lang="en-US" >
<head> <title></title>
<meta charset="iso-8859-1" />
<meta name="generator" content="TeX4ht (http://www.tug.org/tex4ht/)" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<link rel="stylesheet" type="text/css" href="\aa:CssFile " />
<meta name="src" content="mwe.tex">
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
</head><body
>
<!--l. 5--><p class="noindent" >Here is some text. And here is some mathematical content
<!--l. 5--><math
xmlns="http://www.w3.org/1998/Math/MathML"
display="inline" ><mi
>y</mi> <mo
class="MathClass-rel">=</mo> <msup><mrow
><mi
>x</mi></mrow><mrow
><mn>2</mn></mrow></msup
></math>.
</body>
</html>
пример 3
Если у вас естьhtml аккуратныйустановлен, то вы можете настроить процесс сборки для его использования, используя следующий roxy.mk4
файл:
roxy.mk4
Make:match("html$", "tidy -m -config html-tidy.txt -i ${filename}")
и html-tidy.txt
файл конфигурации
// sample config file for HTML tidy
indent: auto
indent-spaces: 2
quiet: yes
output-xhtml: no
output-html: yes
тогда ты можешь бежать
make4ht.exe -f html5 -e roxy.mk4 -c roxy.cfg mwe.tex
получать
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta name="generator" content=
"HTML Tidy for HTML5 for Windows version 5.6.0">
<title></title>
<meta charset="utf-8">
<meta name="generator" content=
"TeX4ht (http://www.tug.org/tex4ht/)">
<meta name="viewport" content=
"width=device-width,initial-scale=1">
<link rel="stylesheet" type="text/css" href="\aa:CssFile">
<meta name="src" content="mwe.tex">
<script src=
"https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
</head>
<body>
<!--l. 5-->
<p class="noindent">Here is some text. And here is some
mathematical content <!--l. 5--><math xmlns=
"http://www.w3.org/1998/Math/MathML" display="inline">
<mi>
y
</mi>
<mo class="MathClass-rel">
=
</mo>
<msup>
<mrow>
<mi>
x
</mi>
</mrow>
<mrow>
<mn>
2
</mn>
</mrow>
</msup></math>.</p>
</body>
</html>