用VScode做PPT:marp插件

初步认识

marp是支持Markdown格式的PPT神器,有了这个就可以敲代码写PPT了。更绝的是,marp提供了VScode插件,故而可以愉快地在VScode中写PPT了。

在VScode扩展商店中搜索marp,安装Marp for VS Code,安装完成后,在.md格式文件的选项卡栏上,会多出一个双直角三角形,这个便是marp的专属按钮,下文称此按钮为marp按钮。

接下来,新建一个md文件,姑且命名为ppt.md,点击marp,选择Toggle Marp Feature...,然后ppt.md首行便出现了marp标记

---
marp: true
headingDivider: 1
---

同时右侧预览窗口会出现PPT白板,接下来添加一点内容,得到下图

在这里插入图片描述

可见,marp建立在.md格式的语法之上,但有以下几点需要注意

  • ---可分割PPT页面;如果开启全局指令headingDivider,则可直接根据markdown的一级标题来分割页面
  • 通过<!---->进行指令设置
  • 插入图像仍旧沿用markdown格式![](),但在方括号中可进行更多设置

指令设置

设置指令有两种方法,一种是通过<!---->,进行单个页面的指令设置,另一种如下,直接在文件头中设置全局指令,常用指令无非是页眉页脚页码等,如下所示

---
marp: true
theme: default      #此为主题
version: 1.0.0      # 版本
header: 我乃页眉
footer: 页脚在此
size: 16:9          # 页面尺寸大小
---

效果如下

在这里插入图片描述

其中,default为默认主题,背景是白色的。此外还可以选择uncover和gaia主题。

<!-- -->可进行单页设置,例如,希望更改某一页的背景色和文字颜色,可以写为如下形式

# 背景设置
<!-- _backgroundColor: lightgray -->
<!-- _color: black -->

其中,backgroundColor用于调控背景颜色,color为文字颜色,在前面加一个下划线,表示该参数只对当前页面有效,否则将更改对后续所有页面的设置。

效果如下

在这里插入图片描述

一些常见的指令如下

指令设置内容/说明
paginate如果设置为true,自动显示分页号
_paginate如果设置为false, 首页分页号不显示
header设置页头信息
footer页脚信息
class样式名
backgroundColor背景色
backgroundImage背景图
backgroundPosition背景图位置
backgroundRepeat背景重复样式
backgroundSize背景大小
color字体颜色

图像设置

marp扩展了插入图像的markdown语法,例如下面三张相同的图片,在PPT中展示的效果却不同

![h:200](Libre/pymol_gpcr.gif) ![h:300 blur](Libre/pymol_gpcr.gif) ![h:300 w:200 opacity:0.5](Libre/pymol_gpcr.gif)

在这里插入图片描述

其中,h,w用于设置图像的宽高;blur用于滤波;opacity:0.5表示将透明度设为50%。

指令示例功能
opacity:0.5透明度设为50%
blur:10px按照10像素的模板进行滤波
brightness:1.5亮度变为原来的1.5倍
grayscale打开灰度模式
contrast:200%对比度调为200%
hue-rotate:180deg色相旋转180°
invert:100%负片
saturate:2.0饱和度设为2.0
sepia:1复古度设为1

通过drop-shadow参数可以设置图像阴影,例如下面的代码,表示添加垂直5像素、水平10像素、透明度为0.4的黑色阴影。

drop-shadow:0,5px,10px,rgba(0,0,0,.4)

布局设置

通过关键字bgleft, right关键字,可以指定背景图片所在位置,例如下列代码

#
![bg left:60%](https://picsum.photos/720?image=29)
## 背景分离
这段幻灯片内容在背景图右边。

如果省略:60%则默认50%,效果如下

在这里插入图片描述

### 在 VS Code 中通过文本方式编辑 PPT 文件 尽管 PowerPoint (PPT) 是一种二进制文件格式,无法直接作为纯文本文件在 VS Code 或其他代码编辑器中打开并编辑,但可以通过将其转换为支持的中间格式来实现间接编辑。以下是具体的方法: #### 方法一:将 PPT 转换为 XML 格式 PowerPoint 支持导出为 OpenXML (.pptx),这是一种基于 ZIP 和 XML 的开放标准格式。可以解压 .pptx 文件并手动修改其中的 XML 文档。 1. 将 `.pptx` 文件扩展名更改为 `.zip`。 2. 使用任何压缩工具(如 WinRAR、7-Zip)解压该文件夹。 3. 解压后的目录结构会包含多个子文件夹和 XML 文件,主要关注 `slides` 子文件夹中的内容[^1]。 4. 打开这些 XML 文件,在 VS Code 中对其进行编辑。 5. 编辑完成后重新打包成 ZIP 并恢复其原始 `.pptx` 扩展名即可。 这种方法允许用户以纯文本的形式调整幻灯片的内容布局以及样式定义等属性。 #### 方法二:利用第三方库解析与生成 PPTX 如果希望程序化操作 PPT 文件,则可借助一些专门用于处理 Office 文档的 JavaScript 库或 Python 库完成此目标。例如 Node.js 社区中有名为 **`officegen`** 的模块能够创建新的演示文稿;而 Python 用户可以选择安装 **`python-pptx`** 来读取现有文档并对之出更改后再另存新副本[^3]。 对于前端开发者来说,也可以尝试引入自定义 Quill 插件的方式加载特定功能组件,不过这通常适用于富文本编辑而非严格意义上的 PPT 制作场景[^4]: ```javascript import CustomAudioModule from '@/utils/quill/customAudio'; Quill.register('modules/customAudio', CustomAudioModule); ``` 需要注意的是上述例子仅展示了一个假设性的插件注册过程,并不实际关联到 PPT 处理逻辑上。 #### 总结 虽然目前不存在原生支持让 VS Code 成为主流办公软件替代品的情况,但是通过前述两种途径之一还是可以让技术人员按照个人偏好习惯来进行一定程度上的定制化工作流程优化实践。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

微小冷

请我喝杯咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值