大家好,我是你们的 猫哥,一个不喜欢吃鱼、又不喜欢喵 的超级猫 ~
前言
猫哥是一个常年混迹在 GitHub 上的猫星人,所以发现了不少好的前端开源项目,在此分享给大家。
公众号: 前端GitHub,专注于挖掘 GitHub 上优秀的前端开源项目,收集、整理、推荐业界高品质前端资源合集,优秀的工具、库、好的教程、了解业界更优秀的代码、工具、业界最新的技术,抹平你的前端信息不对称。
平时如何发现好的开源项目,可以看看这篇文章:GitHub 上能挖矿的神仙技巧 - 如何发现优秀开源项目
以下为【前端GitHub】的第 10 期精华内容。
相信大家都有过 PPT 分享的经历,超级猫一直觉得用 powerpoint 写幻灯片太麻烦,效率太低了。
作为程序员,特别是前端,有没有更简结与高逼格幻灯片实现方式呢?肯定是有的啊!
今天给大家带来的是使用 Markdown 和 HTML 写逼格满满的 PPT 的正确姿势!
reveal-md
reveal-md 是使用 Markdown 来做 PPT 展示的开源项目,标星 2.1K 。
安装
npm install -g reveal-md
使用
reveal-md path/demo.md
其中,path/demo.md
是你的 Markdown 文件地址,可以使用本地地址,也可以使用 URL。
使用如下的 Markdown 文件 demo.md :
## 前端GitHub
* 大前端集合
* GitHub 优秀开源项目推荐
---
## 内容
> 专注于挖掘优秀的前端开源项目,抹平你的前端信息不对称。
涵盖 JavaScript、Vue、React、Node、小程序、Flutter、Deno、HTML、CSS 等!
---
## 前端资源合集
* 收集、整理、推荐业界高品质前端资源合集
* 优秀的工具、库、好的教程
* 了解业界更优秀的代码、工具、业界最新的技术
在终端运行命令:reveal-md ./demo.md
效果如图:
主题使用
包含的主题有以下几种:
- beige
- black
- blood
- league
- moon
- night
- serif
- simple
- sky
- solarized
- white
比如指定 league 主题使用:
reveal-md path/demo.md --theme league
效果如图:
还可以指定自己写的主题,也就是自己写的 css 样式,使用自定义主题后,会覆盖默认的主题。
比如自定义文件位于 ./theme/my-custom.css
中时,指定对应的路径即可。
reveal-md slides.md --theme theme/my-custom.css
项目地址:
https://github.com/webpro/rev...
reveal.js
这是一个基于 CSS 的 3D 幻灯片工具,标星 54K。
Reveal.js 做 PPT 的优点是可以使用 markdown 语言直接写静态的文本,并可以加入各种 html 语言支持的交互动画,然后由 Pandoc 直接转化成 PPT。
reveal.js 是一个开放源代码 HTML 表示框架。 它使使用 Web 浏览器的任何人都可以免费创建功能齐全且美观的演示文稿。
该框架具有广泛的功能,包括嵌套幻灯片,Markdown 支持,自动动画,PDF 导出,演讲者注释,LaTeX 支持,语法突出显示的代码等等。
reveal.js 有一下几个特点:
- 支持标签来区分每一页幻灯片
- 可以使用 markdown 来写内容
- 支持 pdf 的导出
- 支持演说注释
- 提供 JavaScript API 来控制页面
- 提供了多个默认主题和切换方式
- 自适应移动端和 PC 端
使用
使用分为 基本使用、完整安装、npm 方式安装 3 种方式。
基本使用
- 下载最新的 manifest.js版本 https://github.com/hakimel/reveal.js/archive/master.zip
- 解压缩并将 index.html 中的示例内容替换为您自己的内容
- 在浏览器中打开 index.html 进行查看
完整安装
安装:
git clone https://github.com/hakimel/reveal.js.git
cd reveal.js && npm install
npm start
打开 http://localhost:8000
查看您的演示文稿。
npm 方式安装
npm install reveal.js
# or
yarn add reveal.js
直接导入使用
import Reveal from 'reveal.js';
import Markdown from 'reveal.js/plugin/markdown/markdown.esm.js';
let deck = new Reveal({
plugins: [ Markdown ]
})
deck.initialize();
还需要添加 reveal.js 样式 和 主题.
使用
幻灯片的内容需要包含在