支持markwon写ppt的工具marp-调研

该博客介绍了使用Markdown写PPT的需求,经调研选择Marp工具。阐述了其在VSCode的安装与插件使用,支持的Markdown语法,如常用格式、表格、语法高亮等,还说明了将MD文件转为HTML的常规做法和基于Docker镜像的方法,最后指出了Marp的一些缺点。

1.需求

  • 使用markdown写ppt
  • 支持大部分markdown语法,含高亮、公式及表格等
  • 支持转为html,在浏览器中展示

2.调研

符合条件的工具:marp

用法参考


3. 安装与插件

  • vscode有插件 md文件中添加如下注释,启动在view的时候转化为marp
---
marp: true
---
  • 官方有各平台的ide可以在download里下载使用

4. 支持md语法-常用

1. 二级标题

  • 重点 加粗

引用支持不好

  1. 1
  2. 2
  3. 3

4. 支持md语法-表格

第一格表头第二格表头
内容单元格 第一列第一格内容单元格第二列第一格
内容单元格 第一列第二格 多加文字内容单元格第二列第二格
内容单元格 第一列第三格 多加文字内容单元格第二列第三格
内容单元格 第一列第四格 多加文字内容单元格第二列第四格

4. 支持md语法-语法高亮

fun main(args: Array<String>) {
   println("Hello World!")

   println("sum = ${sum(34, 67)}")
   println("sum = ${sum(34, 67)}")
   println("sum = ${sum(34, 6, 57, 34)}")

   //虽然经过了装箱,但是值是相等的,都是10000
   println(boxedA === anotherBoxedA) //  false,值相等,对象地址不一样
   println(boxedA == anotherBoxedA) // true,值相等
}

4. 支持md语法-公式&图形

没法支持


4. 支持md语法-图片

  • 如果图片是相对目录,输出html时img和html放一块,目录结构一致
  • 支持相对目录

5. marp自身要求与指令

# 页分割
---
# 指令格式
<!-- {directive_name}: {value} -->
# 设置主题: default/gaia
<!-- $theme: gaia -->
# 设置页面宽度&高度
<!-- $width: 12in -->
<!-- $height: 12in -->
# 设置页面比例
<!-- $size: 16:9 -->
# 指定显示页码
<!-- page_number: true -->
# 设置页脚
<!-- footer: This is a footer -->

98. 如何将md文件转为html

1). 常规做法

安装marp-cli & 执行编译脚本,必要条件:node>8

npm install -g @marp-team/marp-cli
marp you.md -o file-name.html

2). 基于Dokcer镜像


99. 看法与缺点

  • vscode/marp-cli插件对语法支持不完善
    原生ide支持部分html标记如:<center>、<big>、<hr>,但是vscode或转为html时没法支持

  • 如果有个好模板,还是能满足日常需求的

  • 功能比较单一,还是没法和真的ppt比

转载于:https://my.oschina.net/andChow/blog/3026428

<think>好的,我现在需要帮助用户了解如何使用marp-cli生成PPT。首先,我得回忆一下用户提供的参考引用内容,看看里面有没有相关的信息。 根据引用[1],用户提到使用Qwen-Max和Marp将课程内容转换为PPT,这里可能涉及到Marp的基本用法。引用[2]和[3]则更详细地说明了Marp导出PPT的问题和安装指南,尤其是引用[3]提到Marp是基于Node.js的应用,通过命令行启动,并且cli/index.js处理参数和生成文件。所以,用户需要的是具体步骤,如何用marp-cli生成PPT文件。 首先,用户需要安装marp-cli。根据引用[3],Marp需要Node.js环境,所以应该先安装Node.js和npm。然后使用npm安装marp-cli全局工具。安装完成后,用户需要创建一个Markdown文件,按照Marp的语法编内容,比如使用分隔符---来分页,可能还支持主题设置。 接下来是生成PPT的命令行操作。引用[3]提到Marp读取Markdown并生成PDF或HTML,所以用户可能需要运行类似marp --pdf input.md的命令来生成PDF格式的PPT。同时,用户可能想知道如何导出为PPTX,但根据引用[2],Marp导出的是PDF或HTML,PPTX可能需要其他工具转换,或者用户可能误解了导出格式,需要澄清。 另外,用户可能需要了解如何添加主题、图片、分页符等。例如,在Markdown中使用<!-- theme: default -->来设置主题,使用## 标题来创建新幻灯片。还需要注意导出时可能遇到的不可编辑的问题,如引用[2]所述,导出为PDF后确实无法直接编辑,建议保留Markdown源文件以便后续修改。 最后,用户可能需要常见问题解答,比如安装问题、导出格式不支持PPTX,以及如何调试。可能需要提醒用户检查Node.js版本,正确使用命令行参数,或者使用第三方工具转换PDF到PPTX。 总结步骤应该是:安装环境,创建Markdown,编内容,生成输出文件,处理可能的问题。同时,相关问题可以涉及导出格式、主题定制、分页技巧等。</think>### 如何使用 marp-cli 生成 PPT 文件? #### 1. 环境准备 - **安装 Node.js 和 npm** marp-cli 依赖 Node.js 环境,需先安装 [Node.js](https://nodejs.org/),安装后自带包管理工具 npm。 - **安装 marp-cli** 在终端中执行以下命令全局安装: ```bash npm install -g @marp-team/marp-cli ``` #### 2. 编 Markdown 文件 创建一个 `.md` 文件(如 `demo.md`),按 Marp 语法编内容: ```markdown <!-- 设置主题 --> <!-- theme: default --> # 第一页标题 内容示例:快速排序算法 --- ## 第二页标题 - 分治思想 - 基准元素选择 - 时间复杂度 $O(n \log n)$ ``` **语法说明**: - 使用 `---` 或 `***` 分隔幻灯片页面。 - 通过 `<!-- theme: 主题名称 -->` 指定主题(如 `default`、`gaia`)。 - 支持 LaTeX 公式:行内公式用 `$...$`,独立公式用 `$$...$$`。 #### 3. 生成 PPT 文件 - **导出为 PDF**: ```bash marp --pdf demo.md ``` 生成 `demo.pdf`,可直接用于演示。 - **导出为 HTML**: ```bash marp --html demo.md ``` 生成交互式网页版幻灯片,支持动画和过渡效果。 #### 4. 导出问题解决 - **导出后不可直接编辑** Marp 生成的 PDF/HTML 是最终渲染结果,需修改原始 Markdown 文件重新导出[^2]。 - **导出 PPTX(需额外工具)** Marp 官方不支持 PPTX,但可通过以下方式间接实现: 1. 导出为 PDF。 2. 使用 Adobe Acrobat 或在线工具将 PDF 转换为 PPTX。 #### 5. 高级功能 - **自定义主题** 创建 `custom.css` 并引用: ```markdown <!-- theme: custom.css --> ``` - **插入图片与代码块** ```markdown ![图片描述](image.jpg) ```python def quick_sort(arr): if len(arr) <= 1: return arr ``` - **分页控制** 使用 `<!-- _class: 样式名 -->` 调整页面布局。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值