一、背景
一位从事AI开发的同事告诉我,他正在测试AI的表格识别功能,目前已经能够将图像中的表格内容识别出来,并生成 JSON、PDF 和 MD 文件。他还希望增加输出 DOCX 格式的支持。于是,我向他要了识别后生成的 MD 文件,并在自己的电脑上打开,尝试将其导出为 DOCX 文档,但系统提示需要安装 Pandoc 组件。随后,我在网上搜索,找到了其官网:https://pandoc.org/。
二、软件功能介绍
打开官网后,我发现 Pandoc 的功能非常强大。以下为它在不同格式之间转换的支持情况(← 表示从该格式转换而来;→ 表示转换为该格式;↔ 表示双向支持):
轻量级标记格式
↔︎ Markdown(包括 CommonMark 和 GitHub 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
↔︎ Vimdoc
→ 标记格式
Roff 格式
↔︎ Roff
→ Man
← Mdoc
← Ms
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)
↔︎ Rich Text Format (RTF)
↔︎ OpenOffice / LibreOffice (ODT)
交互式笔记本格式
↔︎ Jupyter Notebook (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 格式化文本
序列化格式
↔︎ Haskell AST
↔︎ JSON 表示的 AST
↔︎ XML 表示的 AST
自定义格式
↔︎ 可使用 Lua 编写自定义读写器
PDF 输出
→ 可通过 pdflatex、lualatex、xelatex、latexmk、tectonic、wkhtmltopdf、weasyprint、prince、pagedjs-cli、context 或 pdfroff 生成。
三、组件安装
可以从 GitHub 下载最新版本的 Pandoc。如无法访问 GitHub,我也提供了一份蓝奏云的高速下载地址:
-
GitHub 发布页:https://github.com/jgm/pandoc/releases/tag/3.8.2.1
-
蓝奏云下载:https://wwud.lanzouu.com/b00wn5wr7i 密码:8888
可以选择绿色版或安装版,我使用的是绿色版。
在 Typora 中,依次点击菜单中的“文件” → “偏好设置” → “导出” → “通用”,设置 Pandoc 的路径。之后,即可将 MD 文档导出为 DOCX 格式。
