请帮助乌克兰!
赞助商
Pandoc   一个通用文档转换器
Cartoon of a toaster-like machine ingesting paper,
bits, and a cat and outputing a book

如果您需要将文件从一种标记格式转换为另一种,pandoc 是您的瑞士军刀。Pandoc 可以在以下格式之间进行转换:

(← = 从...转换;→ = 转换为...;↔︎ = 从...和转换为...)

轻量级标记格式

↔︎ Markdown(包括 CommonMarkGitHub-flavored Markdown
↔︎ reStructuredText
AsciiDoc
↔︎ Emacs Org-Mode
↔︎ Emacs Muse
↔︎ Textile
Markua
txt2tags
↔︎ djot

HTML 格式

↔︎ (X)HTML 4
↔︎ HTML5
→ 分块 HTML

电子书

↔︎ EPUB 版本 2 或 3
↔︎ FictionBook2

文档格式

GNU TexInfo
pod
↔︎ Haddock 标记

Roff 格式

↔︎ roff man
roff ms
mdoc

TeX 格式

↔︎ LaTeX
ConTeXt

XML 格式

↔︎ DocBook 版本 4 或 5
↔︎ JATS
BITS
TEI Simple
OpenDocument XML

大纲格式

↔︎ OPML

参考文献格式

↔︎ BibTeX
↔︎ BibLaTeX
↔︎ CSL JSON
↔︎ CSL YAML
RIS
EndNote XML

文字处理格式

↔︎ Microsoft Word docx
↔︎ 富文本格式 RTF
↔︎ OpenOffice/LibreOffice ODT

交互式笔记本格式

↔︎ Jupyter 笔记本 (ipynb)

页面布局格式

InDesign ICML
↔︎ Typst

Wiki 标记格式

↔︎ MediaWiki 标记
↔︎ DokuWiki 标记
TikiWiki 标记
TWiki 标记
Vimwiki 标记
XWiki 标记
ZimWiki 标记
↔︎ Jira wiki 标记
Creole

幻灯片格式

LaTeX Beamer
→ Microsoft PowerPoint
Slidy
reveal.js
Slideous
S5
DZSlides

数据格式

CSV 表格
TSV 表格

终端输出

ANSI 格式文本

自定义格式

↔︎ 自定义读取器写入器可以用 Lua 编写

PDF

→ 通过 pdflatex, lualatex, xelatex, latexmk, tectonic, wkhtmltopdf, weasyprint, prince, pagedjs-cli, context, 或 pdfroff

Pandoc 支持许多有用的 Markdown 语法扩展,包括文档元数据(标题、作者、日期);脚注;表格;定义列表;上标和下标;删除线;增强型有序列表(起始编号和编号样式很重要);运行示例列表;带语法高亮的定界代码块;智能引号、破折号和省略号;HTML 块内的 Markdown;以及内联 LaTeX。如果需要严格的 Markdown 兼容性,所有这些扩展都可以关闭。

LaTeX 数学(甚至宏)可以在 Markdown 文档中使用。提供了几种在 HTML 中渲染数学的方法,包括 MathJax 和转换为 MathML。LaTeX 数学(根据输出格式的需要)会转换为 Unicode、原生 Word 方程式对象、MathML 或 roff eqn。

Pandoc 包含一个强大的自动引用和参考文献系统。这意味着您可以像这样编写引用:

[see @doe99, pp. 33-35; also @smith04, ch. 1]

Pandoc 会使用数百种 CSL 样式(包括脚注样式、数字样式和作者-日期样式)中的任何一种,将其转换为格式正确的引用,并在文档末尾添加格式正确的参考文献。参考文献数据可以是 BibTeXBibLaTeXCSL JSON 或 CSL YAML 格式。引用在所有输出格式中都适用。

有许多方法可以根据您的需求自定义 Pandoc,包括模板系统和强大的过滤器编写系统。

Pandoc 包含一个 Haskell 库和一个独立的命令行程序。该库为每种输入和输出格式包含独立的模块,因此添加新的输入或输出格式只需要添加一个新模块。

Pandoc 是免费软件,根据 GPL 发布。版权所有 2006–2025 John MacFarlane