The universal document converter
The basic Pandoc command structure follows this pattern:
pandoc [options] [input-file]... -o output-file
pandoc -o output.html input.md
pandoc -o output.pdf input.md
pandoc -o output.docx input.md
pandoc -o output.md input.html
pandoc -o output.pdf file1.md file2.md file3.md
pandoc -f markdown -o output.html input.txt
pandoc -t html -o output.html input.md
echo "# Hello" | pandoc -f markdown -t html
pandoc -s -o output.html input.md
pandoc --toc -o output.html input.md
pandoc --toc --toc-depth=2 -o output.html input.md
pandoc -c style.css -o output.html input.md
pandoc --highlight-style=zenburn -o output.html input.md
pandoc --number-sections -o output.html input.md
pandoc -V title="My Document" -o output.pdf input.md
pandoc --bibliography=refs.bib -o output.html input.md
Pandoc can read from these formats:
Pandoc can write to these formats:
pandoc -V geometry:margin=1in -o output.pdf input.md
pandoc -V geometry:a4paper -o output.pdf input.md
pandoc -V fontsize=12pt -o output.pdf input.md
pandoc -V mainfont="DejaVu Serif" -o output.pdf input.md
pandoc --template=template.tex -o output.pdf input.md
pandoc --template=mytemplate.html -o output.html input.md
pandoc -D html > mytemplate.html
pandoc -V author="John Doe" -V title="My Document" -o output.pdf input.md
---
title: My Document
author: John Doe
date: 2025-03-02
---
# Content starts here
pandoc --metadata-file=meta.yaml -o output.html input.md
Filters allow transforming the document during conversion:
pandoc --filter=pandoc-citeproc -o output.html input.md
pandoc --filter=filter1.py --filter=filter2.py -o output.html input.md
pandoc --lua-filter=myfilter.lua -o output.html input.md
pandoc --citeproc --bibliography=refs.bib -o output.html input.md
pandoc --filter=pandoc-crossref -o output.html input.md
pandoc --filter=pandoc-include -o output.html input.md
pandoc --filter=pandoc-mermaid -o output.html input.md
pandoc --from markdown+table_captions+pipe_tables -o output.html input.md
pandoc --from markdown-raw_html-raw_tex -o output.html input.md
pandoc --citeproc --bibliography=refs.bib --filter=pandoc-crossref --number-sections --toc -o paper.pdf paper.md
pandoc -s --citeproc --bibliography=refs.bib --template=conference.latex -V documentclass=article -o submission.pdf paper.md
pandoc -s --toc --toc-depth=3 -o book.pdf title.txt chapters/*.md
pandoc -t beamer -o slides.pdf presentation.md
pandoc -o presentation.pptx presentation.md
pandoc -s -t revealjs -o slides.html presentation.md
pandoc -t beamer -V theme:Warsaw -V colortheme:dolphin -o slides.pdf presentation.md
pandoc -s --toc -c style.css -o website.html content.md
pandoc -s --toc --toc-depth=2 --number-sections -o docs.html docs/*.md
pandoc -f mediawiki -t markdown -o output.md input.wiki
pandoc -s -t man -o command.1 manpage.md