![在 Pandoc 生成的电子书中制作索引](https://linux22.com/image/375346/%E5%9C%A8%20Pandoc%20%E7%94%9F%E6%88%90%E7%9A%84%E7%94%B5%E5%AD%90%E4%B9%A6%E4%B8%AD%E5%88%B6%E4%BD%9C%E7%B4%A2%E5%BC%95.png)
我想举出我写的例子在这个问题中在 Pandoc 中工作。使用 运行时pandoc input-tex-file -o output-epub-file
,pandoc 会使用此 tex 文件生成一本不错的电子书。但是,电子书缺少索引。如何在输出电子书中获取索引?
答案1
您可以使用以下两个步骤为 Pandoc 生成的电子书添加索引:
- 在标题中添加标识符,例如以下
{#foo}
语法将标识符添加for
到标题My heading
,
# My heading {#foo}
我们假设文件名是chap01.md
。
- 创建一个索引类型的文件作为你的书籍索引。在这个文件中,你可以使用 markdown 链接格式编写书籍索引。例如:
# Index {epub:type=index}
#. [Index to My heading ](#foo)
我们假设文件名是index.md
。
最后,您可以使用以下方式生成带有索引的电子书:
pandoc index.md chap01.md -s -o indexed_ebook.epub
答案2
实际上,编辑器在转换为电子书(例如 ePUB)时做的第一件事通常是删除目录页。这是因为电子阅读器将根据文档的层次结构生成目录,并通过一些特殊的交互使其可用,在电子书中,内容所在的页面将根据用户使用的设置(例如字体大小)而变化,因此不需要包含目录的页面!
Pandoc 实际上可以使用标志生成内容表--toc
,但由于上述原因,它不适用于 ePUB。