Marp CLI
Convert Markdown to presentations via CLI. Output HTML, PDF, PowerPoint (PPTX), and images (PNG/JPEG).
Browser requirement: Conversions marked with 🌐 require a compatible browser (Chrome, Edge, or Firefox) installed on your system.
Quick Start
CODEBLOCK0
📖 Detailed guide: QUICKSTART.md
Format conversion
HTML
CODEBLOCK1
PDF 🌐
CODEBLOCK2
PowerPoint (PPTX) 🌐
CODEBLOCK3
Images 🌐
CODEBLOCK4
Presenter notes
CODEBLOCK5
Watch mode
CODEBLOCK6
Server mode
CODEBLOCK7
Preview window
CODEBLOCK8
Multiple files
CODEBLOCK9
Options
| Option | Description |
|---|
| INLINECODE0 | Output file path |
| INLINECODE1 |
Watch mode - auto-convert on changes |
|
-s, --server <dir> | Server mode - serve directory |
|
-p, --preview | Open preview window |
|
--pdf | Convert to PDF (requires Chrome/Edge/Firefox) |
|
--pptx | Convert to PowerPoint PPTX (requires browser) |
|
--pptx-editable | Generate editable PPTX (experimental) |
|
--images [png\|jpeg] | Convert to multiple images |
|
--image | Convert title slide to single image |
|
--image-scale <factor> | Scale factor for images |
|
--notes | Export presenter notes to TXT |
|
--pdf-notes | Add PDF note annotations |
|
--pdf-outlines | Add PDF outlines/bookmarks |
|
--allow-local-files | Allow accessing local files (security note) |
|
--browser <chrome\|edge\|firefox> | Choose browser for conversion |
|
--browser-path <path> | Specify browser executable path |
|
-P, --parallel <num> | Parallel conversion count |
|
--no-parallel | Disable parallel conversion |
|
--template <name> | HTML template (default: bespoke) |
Common patterns
CODEBLOCK10
Documentation
Detailed examples |
|
README.md | Project overview |
| Official docs | https://github.com/marp-team/marp-cli |
Marp CLI
通过命令行将Markdown转换为演示文稿。可输出HTML、PDF、PowerPoint(PPTX)以及图片(PNG/JPEG)。
浏览器要求: 标记有🌐的转换需要在系统上安装兼容的浏览器(Chrome、Edge或Firefox)。
快速开始
bash
转换为HTML
marp slide-deck.md
转换为PDF(需要浏览器)
marp --pdf slide-deck.md
转换为PowerPoint
marp --pptx slide-deck.md
转换为图片
marp --images png slide-deck.md
📖 详细指南: QUICKSTART.md
格式转换
HTML
bash
marp slide-deck.md
marp slide-deck.md -o output.html
PDF 🌐
bash
marp --pdf slide-deck.md
marp slide-deck.md -o output.pdf
带PDF大纲
marp --pdf --pdf-outlines slide-deck.md
在左下角包含演讲者备注作为注释
marp --pdf --pdf-notes slide-deck.md
PowerPoint (PPTX) 🌐
bash
marp --pptx slide-deck.md
marp slide-deck.md -o output.pptx
可编辑的PPTX(实验性功能,需要LibreOffice Impress)
marp --pptx --pptx-editable slide-deck.md
图片 🌐
bash
多张图片
marp --images png slide-deck.md
marp --images jpeg slide-deck.md
仅标题幻灯片图片
marp --image png slide-deck.md
marp slide-deck.md -o output.png
高分辨率(缩放因子)
marp slide-deck.md -o title.png --image-scale 2
演讲者备注
bash
marp --notes slide-deck.md
marp slide-deck.md -o output.txt
监视模式
bash
监视文件并在更改时自动转换
marp -w slide-deck.md
监视并预览浏览器
marp -w -p slide-deck.md
服务器模式
bash
按需转换并提供目录服务
marp -s ./slides
通过环境变量指定端口
PORT=5000 marp -s ./slides
通过查询字符串访问转换后的格式
http://localhost:8080/deck.md?pdf
http://localhost:8080/deck.md?pptx
预览窗口
bash
打开预览窗口(自动启用监视模式)
marp -p slide-deck.md
预览并输出PDF
marp -p --pdf slide-deck.md
多个文件
bash
转换多个文件
marp slide1.md slide2.md slide3.md
转换目录
marp ./slides/
使用通配符模式
marp
/*.md
并行转换(默认:5个并发)
marp -P 10 ./*.md
禁用并行
marp --no-parallel ./*.md
选项
| 选项 | 描述 |
|---|
| -o, --output <路径> | 输出文件路径 |
| -w, --watch |
监视模式 - 更改时自动转换 |
| -s, --server <目录> | 服务器模式 - 提供目录服务 |
| -p, --preview | 打开预览窗口 |
| --pdf | 转换为PDF(需要Chrome/Edge/Firefox) |
| --pptx | 转换为PowerPoint PPTX(需要浏览器) |
| --pptx-editable | 生成可编辑的PPTX(实验性功能) |
| --images [png\|jpeg] | 转换为多张图片 |
| --image | 将标题幻灯片转换为单张图片 |
| --image-scale <因子> | 图片缩放因子 |
| --notes | 导出演讲者备注为TXT |
| --pdf-notes | 添加PDF备注注释 |
| --pdf-outlines | 添加PDF大纲/书签 |
| --allow-local-files | 允许访问本地文件(安全提示) |
| --browser
| 选择用于转换的浏览器 |
| --browser-path <路径> | 指定浏览器可执行文件路径 |
| -P, --parallel <数量> | 并行转换数量 |
| --no-parallel | 禁用并行转换 |
| --template <名称> | HTML模板(默认:bespoke) |
常见模式
bash
编辑时监视并预览
marp -w -p deck.md
提供幻灯片目录服务
marp -s ./presentations
将所有幻灯片转换为PDF
marp --pdf *.md
从标题创建OG图片
marp deck.md -o og.png --image-scale 3
导出演讲者备注
marp --notes deck.md
文档
详细示例 |
| README.md | 项目概述 |
| 官方文档 | https://github.com/marp-team/marp-cli |