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