![内部文档引用 Latex \label \ref 通过 pandoc 转换为 HTML 导致 Epub 生成失败](https://linux22.com/image/436293/%E5%86%85%E9%83%A8%E6%96%87%E6%A1%A3%E5%BC%95%E7%94%A8%20Latex%20%5Clabel%20%5Cref%20%E9%80%9A%E8%BF%87%20pandoc%20%E8%BD%AC%E6%8D%A2%E4%B8%BA%20HTML%20%E5%AF%BC%E8%87%B4%20Epub%20%E7%94%9F%E6%88%90%E5%A4%B1%E8%B4%A5.png)
基本上 Pandoc 到 HTML 转换效果非常好
pandoc -s ABC.tex -o ABC.html --citeproc --standalone --number-sections
生成的(经过 Jutoh 后期处理的) Epub 在 Kindle 或 Adobe Digital Editions 上运行良好。
然而,还有一个问题仍然影响着将生成的 Epub 文件提交给亚马逊等平台的使用。
当你有一个部分并给它贴上标签,即 \section{ABC}\label{se:ABC} 时,它会创建如下链接
<li><a href="#se:ABC"><span class="toc-section-number">4</span> ABC</a>
然后这个#se:ABC 被标记为电子书中的不合适链接。它在 HTML 预电子书合并中的工作方式很有趣。
Pandoc 中有什么可以改变这些链接的定义吗?
\documentclass[a4paper, 10pt, twoside]{memoir}
\usepackage{graphicx}
%--------------------
\usepackage{natbib}
\usepackage{indentfirst}
\usepackage{endnotes}
\usepackage{pdfpages}
\usepackage[hyphens]{url} %Allow separation
\usepackage{hyperref}
\usepackage{mathpazo}
\usepackage{makeidx}
\usepackage[disable]{todonotes}
\title{ABC}
\author{ABC}
\begin{document}
\section{ABC}\label{se:ABC}
Let us go to section DEF \ref{se:DEF}
\section{DEF}\label{se:DEF}
Let us go to section ABC \ref{se:DEF}
\end{document}
然后
pandoc -s Test.tex -o Test.html --citeproc --toc --standalone --number-sections
其结果是……
<li><a href="#se:ABC"><span class="toc-section-number">1</span> ABC</a></li>
<li><a href="#se:DEF"><span class="toc-section-number">2</span> DEF</a></li>
</ul>
</nav>
<h1 data-number="1" id="se:ABC"><span class="header-section-number">1</span> ABC</h1>
<p>Let us go to section DEF <a href="#se:DEF" data-reference-type="ref" data-reference="se:DEF">2</a></p>
<h1 data-number="2" id="se:DEF"><span class="header-section-number">2</span> DEF</h1>
<p>Let us go to section ABC <a href="#se:DEF" data-reference-type="ref" data-reference="se:DEF">2</a></p>