使用Pandoc使用Markdown构建书籍

TL; DR :如果要快速执行此操作,请安装pandoc并使用我的markdown图书模板。

如果您是开发人员或博客作者,则可能知道Markdown是什么,如果您知道Markdown是什么,那么您就会知道这是描述内容的好方法。 也许您已经考虑过在Markdown中写书。 如果是这样,这是给你的。

如果您不知道Markdown是什么,可以查看以下链接:

  • 降价教程
  • 幽灵降价指南
  • 降价语法
  • 迪林格

使用pandoc可以很容易地创建带有markdown的书。 Pandoc自称为通用文档转换器 。 说得通。 在本教程中,我们将Markdown转换为epub。 您可以在pandoc中将markdown转换为其他格式,但是我将使用epub,因为它们非常灵活。

安装Pandoc

要安装pandoc,请在Github中的发行页面上安装软件包。 有用于Debian / Ubuntu,Windows和Mac的软件包。

如果您使用的是macOS,还可以通过运行以下命令来使用Brew:

  brew install pandoc 

如果您是核心用户或不支持您的操作系统,也可以从源代码构建。

创建一本简单的Markdown书

要创建一本简单的书,请创建一个markdown文件并将其输入pandoc。 例如,您可以尝试以下步骤:

  1. 创建一个content.markdown文件。
  2. 打开您的终端/命令提示符。
  3. 转到该文件所在的目录。
  4. 在文件中添加一些markdown。 这是它的外观示例:
  # 第1章 
##字幕
这是您的第一个降价章节!

建立书

运行以下命令以创建书籍:

  pandoc -S -o book.epub content.markdown 

您将获得一个book.epub作为输出。

创建元数据文件

当然,我们希望添加有关书名的信息,例如书名,作者等。要添加这些信息,我们将创建一个元数据文件。 这是他们文档中的示例元数据文件:

 --- 
title:
- type: main
text: My Book
- type: subtitle
text: An investigation of metadata
creator:
- role: author
text: John Smith
- role: editor
text: Sarah Jones
identifier:
- scheme: DOI
text: doi:10.234234.234/33
publisher: My Press
rights: © 2007 John Smith, CC BY-NC
...

此外,我们可以为样式表和封面图像添加路径,如下所示:

 --- 
title:
- type: main
text: My Book
- type: subtitle
text: An investigation of metadata
creator:
- role: author
text: John Smith
- role: editor
text: Sarah Jones
identifier:
- scheme: DOI
text: doi:10.234234.234/33
publisher: My Press
rights: © 2007 John Smith, CC BY-NC
样式表:epub.css
封面图片:cover.jpg
...

创建样式表

Pandoc epub具有以下样式:

 身体{保证金:5%; 文本对齐:对齐; 字号:中等;  } 
代码{font-family:monospace; }
h1 {text-align:left; }
h2 {text-align:left; }
h3 {text-align:left; }
h4 {text-align:left; }
h5 {text-align:left; }
h6 {text-align:left; }
h1.title {}
h2.author {}
h3.date {}
ol.toc {padding:0; 左边距:1em; }
ol.toc li {list-style-type:none; 边距:0; 填充:0; }

您可以仅编辑此内容以自定义您的书籍样式,然后将其保存到元数据中指定的路径。

添加封面图像

要将图像添加为书的封面,只需确保元数据中指定的路径指向该图像。

将元数据应用于书籍

要应用创建的元数据以及样式和封面图像,只需将其作为输入包括在内,如下所示:

  pandoc -S -o book.epub metadata.txt contents.markdown 

嵌入自定义字体

要嵌入自定义字体,请使用epub-embed-font参数,并将字体路径作为参数,如下所示:

  pandoc -S --epub-embed-font ='fonts / *。ttf'- o book.epub metadata.txt contents.markdown 

添加目录

要添加目录,可以使用— toc开关,如下所示:

  pandoc -S --toc --epub-embed-font ='fonts / *。ttf'-o book.epub metadata.txt contents.markdown 

Epub模板

为了简化此过程,您可以尝试我的Markdown Book Pandoc模板。 要使用它,请按照下列步骤操作:

  1. 克隆或下载模板。
  2. 打开控制台(终端,命令提示符等)
  3. 替换metadata.txtcontents.markdown
  4. 更换cover.jpg
  5. 运行此代码:
  pandoc -S --toc --epub-embed-font ='fonts / *。ttf'-o book.epub metadata.txt contents.markdown 

这将生成book.epub

瞧! 你的书完了!

如果您喜欢此帖子,请喜欢,分享并订阅!

另外,给我的Github项目加星标! 太重要了!