markdown 转 ppt
slidev
https://cn.sli.dev/guide/why#与其他工具的比较
有vscode插件
Marp 是一个专注于简单性和可移植性的 Markdown 幻灯片工具。它也是开源的,并支持 Markdown。
与 Marp 相比,Slidev 有以下优势:
- 同样的简易性:基础的 Slidev 的幻灯片和 Marp 一样简单。
- 更多功能:Slidev 支持很多 Marp 不支持的功能。
- Vue 支持:您可以在 Slidev 中使用 Vue 组件使您的幻灯片更具交互性。
- 基于 Vite:Slidev 是基于 Vite 构建的,提供了即时更新和灵活的插件 API。
- 原子化 CSS:您可以直接使用 UnoCSS 来为您的幻灯片添加样式。
不过对于单个.md文件不友好,相对marp,操作更繁琐,但样式/交互更自由。
pnpm create slidev #创建一个项目工程
pnpm dev #开启服务器才能实时预览
pnpm slidev export --with-toc #<Toc />自动生成目录;但导出的pdf,内部跳转链接失效
marpit
https://marpit.marp.app/usage?id=extend-marpit-by-plugins
也有vscode插件
marp坚持单文件原则,无需建立npm项目
对比
| marp | slidev | 手工 | |
|---|---|---|---|
| img |  | --- |
|
| 分栏 column | markdown-it-container插件 |
<div class="columns-2"> | |
| 自动生成目录 toc | markdown-it-toc插件 |
<Toc /> | 可二次编辑:vsCode拓展: Outline to text |
转ppt
md转pdf
- 如果不需要插件,在vsCode内安装
marp for vscode即可
Ctrl+Shift+P 或 F1,搜索Marp: Export Slide Deck - 如果需要自己安装一些插件
markdown-it-*,需要使用下面的.js
import fs from 'fs'
import { log } from 'console'
import Marpit from '@marp-team/marpit'
import markdownItContainer from 'markdown-it-container'
function basename(path) {
return path.split('/').pop()
}
const file = process.argv[2]
let markdown = undefined
if (file) {
markdown = fs.readFileSync(file, 'utf8')
}else {
markdown = fs.createReadStream(0, 'utf8')
log(markdown)
log(`Usage: ${basename(process.argv[0])} ${basename(process.argv[1])} < input.md`)
process.exit(1)
}
const marpit = new Marpit().use(markdownItContainer, 'columns')
const theme = `
/* @theme custom-container */
.columns { column-count: 2; }
`
marpit.themeSet.default = marpit.themeSet.add(theme)
const { html, css } = marpit.render(markdown)
// 4. Use output in your HTML
const htmlFile = `
<!DOCTYPE html>
<html><body>
<style>${css}</style>
${html}
</body></html>
`
fs.writeFileSync(`${file}.html`, htmlFile.trim())
pdf转ppt
https://www.ilovepdf.com/pdf_to_powerpoint
大多数前端框架(reveal.js, slidev, marp等),转ppt都是不可编辑的,从图片内嵌到ppt。所以需要从pdf转ppt
统一字体


浙公网安备 33010602011771号