mcpField
T
thumbnail-of-pptx

thumbnail-of-pptx

github.com/pamelafox文档处理12854 次安装8 周前更新
代码仓库

关于 thumbnail-of-pptx

thumbnail-of-pptx 是一项技能,可从 OneDrive 或 Office 演示文稿链接截取幻灯片并生成 PNG 缩略图。它使用无头 Chromium,支持指定幻灯片,并调整截图比例和等待时间。

主要功能

  1. 01将幻灯片截取为 PNG
  2. 02接受 OneDrive 和 aka.ms 链接
  3. 03按编号选择幻灯片
  4. 04可配置图像比例和渲染等待时间
  5. 05裁剪为幻灯片画布

适用场景

  1. 01生成演示文稿幻灯片的图像预览
  2. 02从共享链接截取指定幻灯片

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/pamelafox/presentation-skills --skill thumbnail-of-pptx

安装后在 Claude Code 中输入/thumbnail-of-pptx确认已加载。

附带文件thumbnail_of_pptx.py

详细介绍

PPTX 幻灯片缩略图

运行 thumbnail_of_pptx.py 脚本,从 OneDrive/Office 演示文稿链接截取幻灯片缩略图:

uv run .agents/skills/thumbnail-of-pptx/thumbnail_of_pptx.py <url> <output_path>

参数

  • url(必需):OneDrive 分享链接,或会重定向到此类链接的 aka.ms 短链接(例如 https://aka.ms/my-talk-slides)。该链接必须能打开 Office Online / PowerPoint 网页查看器。
  • output_path(必需):写入 PNG 缩略图的路径(例如 thumbnail.png)。如有需要,会创建父目录。
  • --slide N(可选):要截取的幻灯片编号,从 1 开始。默认为 1,即标题幻灯片。
  • --scale N(可选):设备缩放因子,可使图像更清晰。默认为 2。
  • --wait MS(可选):截屏前等待幻灯片渲染的毫秒数。默认为 9000。对于大型演示文稿或较慢的网络,可适当增加。

输出

所请求幻灯片的单张 PNG 图像,裁剪至幻灯片画布范围(大约为 16:9,不包含 PowerPoint 查看器 UI)。

前置条件

必须安装 Playwright 浏览器:

uv run playwright install chromium

工作原理

  1. 启动无头 Chromium 并导航至该 URL(跟随 aka.ms 重定向至实际的 OneDrive 查看器)。
  2. 等待网络空闲,然后固定等待一段时间,让 Office Online 查看器加载并渲染幻灯片。
  3. 定位查看器 iframe(名为 wacIframe;如果找不到,则查找任何包含 <canvas> 的框架)。
  4. 可选:将焦点放到画布上并按右方向键,前进至第 N 张幻灯片。
  5. 对幻灯片 <canvas> 截取元素截图,确保输出仅包含幻灯片,不包含周围的查看器界面。

备注

  • 这是对 fetch-slides 的补充:需要将整套演示文稿转换为 PDF 时,请使用 fetch-slides(PPTX 需要 LibreOffice);如果只需要一张轻量级幻灯片缩略图,且文件可能无法下载,则使用此工具。
  • 由于此工具依赖公共网页查看器,分享链接必须允许任何拥有链接的人查看。

评论

支持 Markdown