Files
Starlight_Lancher/.agents/skills/lark-slides/references/lark-slides-screenshot.md

3.9 KiB
Raw Permalink Blame History

slides +screenshot

用途

获取幻灯片页面截图并保存为本地图片文件。默认用于已存在 PPT 页面截图;传入 --content 时用于直接渲染单个 <slide> XML 片段预览。本 shortcut 会在 CLI 进程内解码并写入文件stdout 只返回文件路径、大小、页面 ID 等元信息,避免把图片 Base64 输出给模型。

截图失败则降级到 XML 读回、结构 lint等非截图检查路径。

命令

lark-cli slides +screenshot --as user \
  --presentation '<xml_presentation_id 或 slides/wiki URL>' \
  --slide-number 1

渲染本地 XML 内容:

lark-cli slides +screenshot --as user \
  --content @slide.xml

参数

参数 必需 说明
--presentation list 模式必需 xml_presentation_id/slides/ URL或解析后为 slides 的 /wiki/ URL。传 --content 时不能使用
--slide-id list 模式至少提供 --slide-id / --slide-number 之一 页面 short ID多页截图时重复传入或用逗号分隔一次传多个--slide-id slide_1,slide_2);一次最多 10 页(--slide-id + --slide-number 合计小于等于 10
--slide-number list 模式至少提供 --slide-id / --slide-number 之一 页面页号;多页截图时重复传入,或用逗号分隔一次传多个(如 --slide-number 1,2,3);一次最多 10 页(--slide-id + --slide-number 合计小于等于 10
--content render 模式必需 要直接渲染的 <slide> XML 片段;支持直接传值、@file- stdin。传入后不能同时传 --slide-id / --slide-number
--output-dir 输出目录,默认 .lark-slides/screenshots;必须是当前目录内的相对路径
--output-name render 模式的输出文件名 stem未指定时优先用返回的 slide_id,否则用 rendered-slide。若目标文件已存在,会自动追加递增后缀避免覆盖

示例

单页截图

lark-cli slides +screenshot --as user \
  --presentation slides_example_presentation_id \
  --slide-number 1

多页截图

一次不要超过 10 页;如需更多页面,分批调用。可以重复传参,也可以用逗号分隔一次传多个:

lark-cli slides +screenshot --as user \
  --presentation slides_example_presentation_id \
  --slide-number 1 \
  --slide-number 2 \
  --output-dir .lark-slides/screenshots/demo

渲染 XML 预览

lark-cli slides +screenshot --as user \
  --content @.lark-slides/out/demo/slide.xml \
  --output-name preview

返回值

返回 JSON 不包含 Base64 图片内容:

{
  "ok": true,
  "identity": "user",
  "data": {
    "xml_presentation_id": "slides_example_presentation_id",
    "output_dir": ".lark-slides/screenshots",
    "screenshots": [
      {
        "slide_id": "slide_example_id",
        "slide_number": 1,
        "format": "png",
        "path": "/abs/path/.lark-slides/screenshots/slides_example_presentation_id_p001_slide_example_id.png",
        "size": 12345
      }
    ]
  }
}

注意事项

  1. 优先使用 slides +screenshot 保存本地图片,不要把图片 Base64 打到 stdout。
  2. 已存在 PPT 页面截图时,不传 --content,用 --presentation + --slide-id--slide-number
  3. 本地 XML 预览时,传 --content @file--content -,内容应为单个 <slide> XML 片段;此时不要传 --presentation / --slide-id / --slide-number
  4. slide_id 是页面 short ID页码请用 --slide-number
  5. list 模式一次最多传 10 页(--slide-id + --slide-number 合计小于等于 10更多页面请分批截图。
  6. list 模式默认文件名包含 presentation ID、页码和/或 slide ID文件已存在时自动追加 _2_3 等后缀,避免覆盖旧截图。
  7. 截图来自服务端渲染结果,适合创建/替换后验证页面是否为空白、破图或布局明显异常。