Pandoc可以实现常用文档格式之间的相互转换,包括HTML、LaTeX、docx、Markdown等。

语法

pandoc [options] inputfiles

Pandoc采用UTF-8编码方案处理输入输出文件。

常用参数说明

--from=FORMAT, -f FORMAT

--to=FORMAT, -t FORMAT

指定输入输出文件的格式,如果没有指定输入输出文件格式,则通过文件扩展名推测文件格式。使用以下命令列出支持的输入输出文件格式:

pandoc --list-input-formats

pandoc --list-output-formats

使用FORMAT+EXTENSION和FORMAT+EXTENSION可以增减相应格式中的一个或多个扩展选项。使用以下命令列出Pandoc支持的扩展

pandoc --list-extensions

pandoc --list-extensions=FORMAT

--output=FILE, -o FILE

如果没有指定输出文件,则输出至标准输出(stdout),默认格式为HTML。

--file-scope

如果给出多个输入文件,则默认将多个文件拼接起来(添加空行分隔)。使用此选项分别转换每一个文件。

-standalone, -s

默认生成文档片段。使用此选项后,Pandoc将使用一个模板来添加必要信息,以生成完整的文件(HTML、LaTeX等)。

--template=FILE

当使用standalone选项时,Pandoc默认采用内置模板。使用template选项指定创建文档所需的模板后,Pandoc将默认生成完整文件。内置模板可以通过以下命令输出:

pandoc -o file_template --print-default-template=FORMAT

pandoc -o file_template -D FORMAT

其中FORMAT表示输出格式。

模板中包含变量,用于自定义模板。变量可用过命令行参数提供,或从文档的元数据中查找(YAML元数据语句块或-M/--metadata选项)。模板中的变量表示方法为

$title$

针对变量variable的条件语句表示方法

$if(variable)$

X

$else$

Y

$endif$

根据变量的值,相应的语句块将被写入输出文件。类似地,如果变量author是一个数组,则可以使用循环语句

$for(author)$

X

$endfor$

--metadata=KEY[:VAL], -M KEY[=VAL]

设置文档元数据:指定KEY的值为VAL。如果没有提供VAL,则KEY默认值为true。

--variable=KEY[:VAL], -V KEY[=VAL]

设置模板元数据。

--metadata-file=FILE

从指定的YAML(或JSON)文件中读取元数据。命令行提供的元数据信息将覆盖文件中的信息。

--css=URL, -c URL

指定CSS样式表。

--number-sections, -N

对标题进行编号(LaTeX,HTML等,不包括docx)。

转换为HTML

数学公式渲染

--mathjax[=URL]

--mathml

--katex[=URL]

转换为PDF/LaTeX

Pandoc默认使用pdflatex生成PDF,也可以使用ConTeXt,pdfroff或HTML/CSS-to-PDF引擎(wkhtmltopdf , weasyprint或prince)。

LaTeX

参数列表

-o output.pdf

--pdf-engine=xelatex

--template=FILE

source.md

说明

--pdf-engine=PROGRAM

指定生成PDF的排版程序,用于LaTeX排版的程序包括:pdflatex, lualatex, xelatex, latexmk等。

--print-default-template=latex

输出默认的latex文档模板。Pandoc可以采用此模板将Markdown文档转换为tex源码文档( Pandoc默认模板不能很好支持中文)。pm-template.tex是一个可用的模板。

为了调试PDF的创建,可以先输出tex文件并使用latex编译器单独编译。

使用latex时,需要保证本地有必要的包(可以根据编译信息判断是否缺少必要的包,使用MikTeX可以按需下载缺少的包。)

可选参数

--listings

在LaTeX文档中使用listings包来格式化代码块。

--biblatex, --natbib

指定处理参考文献的程序。

--bibliography=FILE

设置文档元数据中的参考文献信息,等效于

--metadata bibliography=FILE --filter pandoc-citeproc

如果使用了biblatex或natbib选项,则等效于

--metadata bibliography=FILE

转换为Word文档 (DOCX)

参数列表:

-o output.docx

--reference-doc=custom.docx

source.md

--reference-doc=FILE

使用指定的文件作为输出文件的格式参考。参考文件的内容被忽略,只使用其中的样式和文档属性(包括边界、页面尺寸、页眉页脚等)。通过以下命令获取系统中的默认模板(reference.docx)。

pandoc -o custom.docx --print-default-data-file=reference.docx

注意:需要在--print-default-data-file选项之前使用-o选项以重定向输出。

用户可以按需修改并更新上述输出的默认参考文档中的样式,并将其作为转换的参考模板。

Word文档转换为其他类型

--extract-media= DIR

提取word文档中的图片等多配体文件到目标文件夹,并在目标文件中设置对这些文件的引用。

转换为epub

--epub-cover-image=FILE

添加封面。

--epub-metadata=FILE

添加元数据。

--epub-embed-font=FILE

嵌入字体。

文档元数据和选项

使用YAML提供文档元数据,可设置的信息参考Pandoc手册。基本使用方法如下所示。

# comments

title: "This is the title"

indent: true

linestretch: 1.25

author:

- Author One

- Author Two

description: | # paragraphs

This is a long

description.

It consists of two paragraphs

pandoc html 模板,Pandoc使用技巧相关推荐

  1. thinkPHP 模板的使用技巧(十三)

    模板的使用技巧:页面跳转 .模板包括.模板渲染.模板的继承 页面跳转 <a href='__URL__/index'>我要跳转到首页面.用这种方法!</a> 一.模板包括 &l ...

  2. boost::spirit模块实现允许调整模板数据的技巧结构作为融合序列以用于直接属性传播的测试程序

    boost::spirit模块实现允许调整模板数据的技巧结构作为融合序列以用于直接属性传播的测试程序 实现功能 C++实现代码 实现功能 boost::spirit模块实现允许调整模板数据的技巧结构作 ...

  3. vue 动态变量名_【告别复制粘贴】动态模板生成小技巧

    ? 这是第 75篇不掺水的原创,想要了解更多,请戳上方蓝色字体:政采云前端团队关注我们吧- 本文首发于政采云前端团队博客:告别复制粘贴:动态模板生成小技巧 https://www.zoo.team/a ...

  4. 分享招聘工作流程图模板及绘制技巧

    员工是企业宝贵的资源,招聘的目的绝不是简单地吸引大批应聘者,人力资源的根本目的是获得企业所需的人员,减少不必要的人员流失,同时招聘还存在潜在的目的:梳理企业形象,那么,大家知道招聘的具体流程是什么吗? ...

  5. 思维导图怎么画?分享中考学习计划思维导图模板及绘制技巧

    临近中考,大家是不是有点紧张呢,今天的你还坐在教室,6月份的你将结束你的初中生涯,要学习好,首先我们要给自己制定一个可行的学习计划,用以指导自己学习,古人说"凡事预则立,不预则废" ...

  6. 密保修改有哪些流程?分享密保修改流程图模板及绘制技巧

    密保修改相信大家都不陌生,比如我们在填报高考志愿的时候进入网站首页都会让我们填一下密码,这可不是最终的密码,在跳转的页面还会让我们修改密码,确保信息的安全性,那么,大家知道密保修改的流程有哪些吗?下面 ...

  7. php168新版后台模板拿shell 技巧

    摘要:php168新版后台模板拿shell技巧 ,PHP类漏洞,安全周边,溜客安全信息网 ... 文章作者:Just4u 本人一向没什么技术文章,只是一个技巧,欢迎各位补充指点 刚刚看了黑影小子渗透c ...

  8. 如何用思维导图提高阅读效率?分享高效阅读思维导图模板及绘制技巧

    书是用文字表达其内容,千变一律的小方块字体,却散发着独特的魅力,阅读时或许用你的一目十行扫过去,可以大致了解到写了什么,但若深究起来你可能并不记得细节内容.就好像远远的看一面墙,你能看到墙面漂亮的颜色 ...

  9. 思维导图提高阅读效率简单的方法是什么?分享高效阅读思维导图模板及绘制技巧

    书是用文字表达其内容,千变一律的小方块字体,却散发着独特的魅力,阅读时或许用你的一目十行扫过去,可以大致了解到写了什么,但若深究起来你可能并不记得细节内容.就好像远远的看一面墙,你能看到墙面漂亮的颜色 ...

  10. pandoc epub_使用Pandoc将您的书变成网站和ePub

    pandoc epub Pandoc是用于将文件从一种标记语言转换为另一种标记语言的命令行工具. 在我对Pandoc的介绍中 ,我解释了如何将用Markdown编写的文本转换为网站,幻灯片和PDF. ...

最新文章

  1. 活动报名 | MIT陈涛:如何让机器人学习高频接触的操作技能
  2. 《领域驱动设计:软件核心复杂性应对之道(修订版)》—第2章 2.1节模式:Ubiquitous Language...
  3. [转帖]Linux中的15个基本‘ls’命令示例
  4. flyway常用配置_Spring Boot 2.x基础教程:使用Flyway管理数据库版本
  5. Linux安装python3.8时,编译过程中报错Could not build the ssl module!
  6. python datetime strptime_python datetime模块strptime/strptime format常见格式命令_施罗德_新浪博客...
  7. Codevs 均分纸牌(贪心)
  8. “普通高中数学课程标准(实验)”解读
  9. 推荐一款免费的万能电子书格式转换工具电子书转换器NeatConverter
  10. 我是如何出版一本书的?(2)
  11. 一个barcode 多个 sku号_亚马逊SKU是什么?有什么作用?
  12. Verilog基础知识3(门控时钟及FPGA时钟使能处理)
  13. LDK3读书笔记(第三章:进程管理)
  14. embedv.php_微信开发在线点播电影网ckplayer播放器实例介绍
  15. Linux发行商,能否齐步走?
  16. 七、数据结构:线性表-栈(后进先出)
  17. 吴恩达深度学习卷积神经网络学习笔记(2)——经典神经网络
  18. leetcode-6_递归和回溯
  19. 【手把手教学】开启iOS app调试模式
  20. Word2019 如何快速统一图片大小,将其他图片设置为参照图片大小

热门文章

  1. 最简单、最详细的装系统教程,你get到了吗?
  2. 算法竞赛进阶指南0x10练习6:防线
  3. 鸿蒙系统手机如何投影,小屏如何换大屏 五种方法教你把手机画面投影到电视上...
  4. 2021 TCR Asia收官 壳牌捷凯领克东望洋收获大满贯
  5. Chase your purpose,not your passion
  6. 【智能控制】linkboy带你花式开灯
  7. zabbix监控nginx状态页面
  8. 清华大学计算机系成立量子软件研究中心,应明生受聘为主任
  9. 猫哥教你写爬虫 041--模拟登录-cookie
  10. 超级科技网络安全风险评估服务,全面了解网络系统面临的安全风险