PowerPoint演示文稿自动化制作Skill powerpoint-presentations

这个技能使用python-pptx库通过Bedrock Code Interpreter自动化创建、编辑和管理PowerPoint演示文稿。适用于需要批量生成或定制化演示文稿的场景,支持代码驱动设计和办公自动化。关键词:PowerPoint自动化,python-pptx,演示文稿设计,办公自动化,代码驱动设计,批量处理。

其他 1 次安装 4 次浏览 更新于 3/11/2026

名称: powerpoint-presentations 描述: 使用python-pptx通过Bedrock Code Interpreter创建、修改和管理PowerPoint演示文稿。

PowerPoint演示文稿

快速参考

任务 方法
创建新演示文稿 get_slide_code_examplescreate_presentation
编辑现有演示文稿 analyze_presentationupdate_slide_content。详情请阅读editing-guide.md
验证 每次更改后调用preview_presentation_slides

设计理念

不要创建无聊的幻灯片。 白色背景上的普通项目符号不会给任何人留下印象。

开始之前

  • 选择大胆、内容相关的调色板:调色板应感觉为这个主题设计。
  • 主导色优于平等:一种颜色主导(60-70%的视觉权重),辅以1-2种支持色调和一种鲜明的强调色。永远不要给所有颜色相等的权重。
  • 暗/亮对比:标题和结论幻灯片使用深色背景,内容幻灯片使用浅色调。或者全程使用深色以获得高级感。
  • 坚持一个视觉主题:选择一个独特的元素并重复它——圆角图像框、彩色圆圈中的图标、厚单侧边框。

颜色调色板

选择与主题匹配的颜色——不要默认使用通用蓝色。

主题 主色 强调色 文本颜色
午夜行政 1E2761 (海军蓝) 408EC6 (蓝色) FFFFFF
青柠信任 0A1A2A (木炭色) 028090 (青柠色) FFFFFF
森林与苔藓 2C5F2D (森林绿) 97BC62 (苔藓绿) FFFFFF
浆果与奶油 ECE2D0 (奶油色) 6D2E46 (浆果色) 333333
珊瑚能量 1A1A2E (午夜色) FF6F61 (珊瑚色) FFFFFF
海洋渐变 065A82 (海洋蓝) 1B9AAA (水绿色) FFFFFF
木炭极简 1C1C1E (近黑色) E8E8E8 (灰色) FFFFFF
樱桃大胆 150E11 (勃艮第色) 990011 (樱桃红) FFFFFF
鼠尾草平静 2D3A2D (鼠尾草绿) 8FB96A (绿色) FFFFFF

对于每张幻灯片

每张幻灯片都需要一个视觉元素——图像、图表、图标或形状。纯文本幻灯片容易被遗忘。

布局选项:两列、图标+文本行、2x2网格、半出血图像叠加、大型统计突出显示(48-120pt)、时间线/流程图。

排版

元素 大小 字体
幻灯片标题 36-44pt 粗体 Georgia 或 Arial Black
正文文本 14-16pt Calibri
统计/数字 48-120pt 粗体

字体配对:Georgia + Calibri(经典)、Arial Black + Arial(现代)、Calibri Bold + Calibri Light(企业)。正文文本左对齐;仅标题和统计居中对齐。

间距

  • 边缘0.5英寸+边距。元素之间0.3-0.5英寸间距。标题下方0.5英寸+间距。

避免(常见错误)

  • 白色背景上的普通项目符号
  • 默认PowerPoint蓝色(#4472C4
  • 标题正下方的强调线
  • 没有视觉元素的纯文本幻灯片
  • 每张幻灯片超过4个项目符号点
  • 每张幻灯片重复相同的布局

参见design-guide.md获取视觉元素代码模式(强调条、图标圆圈、侧条纹)和详细的反模式解释。

工作流程

  1. 创建:首先调用get_slide_code_examples(使用"design_reference"获取调色板和字体配对)→ 然后使用slides参数调用create_presentation
  2. 编辑:阅读editing-guide.md获取详细编辑工作流程。然后:analyze_presentation → 识别元素ID → update_slide_content
  3. 验证:任何修改后调用preview_presentation_slides。假设存在问题——仔细检查。

规则

  • 将所有编辑批处理在ONE update_slide_content调用中。并行调用会导致数据丢失。
  • output_name必须与presentation_name不同。
  • 所有幻灯片索引都是0-based,除了preview_presentation_slides使用1-based slide_numbers
  • 文件名:仅限字母、数字、连字符。

工具参考

get_slide_code_examples

获取python-pptx代码示例作为创建幻灯片的参考。

参数 类型 必需 描述
category str 否(默认"text_layout") "text_layout", "number_highlight", "grid_layout", "image_text", "visual_emphasis", "design_reference", "all"

create_presentation

使用自定义设计的幻灯片创建新演示文稿(16:9宽屏)。

参数 类型 必需 描述
presentation_name str 不带扩展名的文件名(仅限字母、数字、连字符)
slides 列表或null {"custom_code": "..."}字典列表,或null表示空白
template_name str 用作基础的模板文件名

示例tool_input:

{
  "presentation_name": "my-deck",
  "slides": [
    {"custom_code": "from pptx.util import Inches, Pt
from pptx.dml.color import RGBColor
from pptx.enum.text import PP_ALIGN
title = slide.shapes.add_textbox(Inches(1), Inches(1), Inches(8), Inches(1.5))
tf = title.text_frame
p = tf.paragraphs[0]
p.text = 'Welcome'
p.font.size = Pt(44)
p.font.bold = True
p.font.color.rgb = RGBColor(0xFF, 0xFF, 0xFF)
slide.background.fill.solid()
slide.background.fill.fore_color.rgb = RGBColor(0x1E, 0x27, 0x61)"}
  ]
}

重要slides参数接受{"custom_code": "..."}字典列表。在custom_code中可用:prs, slide, slide_width, slide_height, Inches, Pt, RGBColor, PP_ALIGN, MSO_SHAPE

analyze_presentation

分析结构,包括元素ID和位置,以便编辑。

参数 类型 必需 描述
presentation_name str 要分析的演示文稿
slide_index int 仅分析特定幻灯片
include_notes bool 否(默认false) 包括演讲者备注

update_slide_content

在单个调用中更新一个或多个幻灯片。

参数 类型 必需 描述
presentation_name str 源文件
slide_updates 列表 更新操作列表
output_name str 输出文件名(必须与源不同)

每个操作支持的动作:set_text, replace_text, replace_image, run_code。详情参见editing-guide.md

add_slide

在特定位置添加新幻灯片。

参数 类型 必需 描述
presentation_name str 源演示文稿
layout_name str 来自get_presentation_layouts的布局名称
position int 0-based索引(-1表示追加到末尾)
output_name str 输出文件名
custom_code str 用于自定义幻灯片的Python-pptx代码

delete_slides

按索引删除幻灯片。

参数 类型 必需
presentation_name str
slide_indices 列表[int] 是(0-based)
output_name str

move_slide

将幻灯片从一个位置移动到另一个位置。

参数 类型 必需
presentation_name str
from_index int 是(0-based)
to_index int 是(0-based)
output_name str

duplicate_slide

将幻灯片复制到指定位置。

参数 类型 必需
presentation_name str
slide_index int 是(0-based)
position int 是(0-based)
output_name str

update_slide_notes

更新特定幻灯片的演讲者备注。

参数 类型 必需
presentation_name str
slide_index int 是(0-based)
notes_text str
output_name str

list_my_powerpoint_presentations

列出工作空间中的所有演示文稿。无需参数。

get_presentation_layouts

从演示文稿获取可用幻灯片布局。

参数 类型 必需
presentation_name str

preview_presentation_slides

获取幻灯片截图以供视觉检查。

参数 类型 必需 描述
presentation_name str 要预览的演示文稿
slide_numbers 列表[int] 1-based幻灯片编号(非0-based)