Skip to content
Automation
Skill

/wps-ppt-gen

PPT生成。根据主题生成完整的PPT文件, 包含封面、目录、内容页、总结页,支持多种风格。 用于帮助用户生成PPT演示文稿。当用户提到PPT、演示文稿、幻灯片时触发。 PPT presentation generator using python-pptx.

From plugin
bwkyd-wps-skills
842 skills
Install
$ npx -y skills add Bwkyd/wps-skills --skill wps-ppt-gen --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/wps-ppt-gen

Context preview

The summary Claude sees to decide when to auto-load this skill.

PPT生成。根据主题生成完整的PPT文件, 包含封面、目录、内容页、总结页,支持多种风格。 用于帮助用户生成PPT演示文稿。当用户提到PPT、演示文稿、幻灯片时触发。 PPT presentation generator using python-pptx.

SKILL.md

wps-ppt-gen.SKILL.md
name: wps-ppt-gen
description: |
  PPT生成。根据主题生成完整的PPT文件,
  包含封面、目录、内容页、总结页,支持多种风格。
  用于帮助用户生成PPT演示文稿。当用户提到PPT、演示文稿、幻灯片时触发。
  PPT presentation generator using python-pptx.
license: MIT
user-invocable: true
argument-hint: '[主题/场景] [页数(可选)]'
allowed-tools: 'Read, Grep, Glob, Bash, Write, Edit'
metadata:
  author: BWKYD
  title: PPT生成
  description_zh: 根据主题生成完整的PPT文件,包含封面、目录、内容页和总结页
  tags:
    - PPT
    - 演示
    - python-pptx
    - WPS
    - 幻灯片
  version: 1.0.2
  license: MIT

WPS PPT 生成器

从主题大纲 → 自动生成完整的精美 PPT(.pptx)。

When to Use

  • 用户需要制作PPT/演示文稿
  • 用户说"帮我做一个PPT"
  • 用户需要述职报告/项目汇报/产品介绍/培训课件等PPT
  • 用户有内容大纲想转成PPT

When NOT to Use

  • 只需要PPT大纲不需要文件 → 使用 `wps-ppt-outline`
  • 已有PPT需要美化 → 使用 `wps-ppt-polish`
  • 需要教学课件特殊排版 → 使用 `wps-courseware`

风格选择菜单

┌─────────────────────────────────────────────┐
│        WPS PPT 风格选择                      │
├─────────────────────────────────────────────┤
│                                             │
│  [1] 📊 简约商务  白底+深色文字+蓝色强调    │
│  [2] 🚀 科技风    深色底+渐变+几何元素       │
│  [3] 🏛️ 党政风    红色主调+庄重+国徽元素     │
│  [4] 📚 教育风    清新+活泼配色+图文混排     │
│  [5] 🎨 创意风    大图背景+极简文字          │
│  [6] 📈 数据风    图表为主+数据驱动          │
│                                             │
│  输入编号或风格名称选择                      │
└─────────────────────────────────────────────┘

工作流程

Step 1: 确认需求

  • **主题**:PPT的主题是什么?
  • **场景**:述职/汇报/产品/培训/竞标/其他?
  • **页数**:期望多少页?(默认15-20页)
  • **风格**:从上方菜单选择(默认简约商务)
  • **特殊要求**:是否需要图表?是否有固定模板?

Step 2: 生成大纲

根据场景生成PPT结构大纲:

**述职报告(推荐15-20页):**

1. 封面(标题+姓名+部门+日期)
2. 目录
3-4. 工作回顾(KPI完成情况)
5-7. 重点项目(每项1-2页)
8-9. 数据成果(图表页)
10-11. 经验总结与反思
12-13. 下阶段计划
14. 需要的支持
15. 感谢页

**项目汇报(推荐12-15页):**

1. 封面
2. 目录
3. 项目背景
4-5. 项目目标与范围
6-8. 实施进展(里程碑)
9-10. 关键成果/数据
11. 风险与问题
12. 下一步计划
13. 时间表
14. 资源需求
15. Q&A

**产品介绍(推荐10-15页):**

1. 封面(产品名+Slogan)
2. 痛点/市场背景
3. 解决方案概览
4-6. 核心功能(每项1页)
7. 竞品对比
8-9. 客户案例/数据
10. 定价方案
11. 合作流程
12. 联系方式

Step 3: 生成 .pptx 文件

**确保依赖:**

pip install python-pptx 2>/dev/null || pip3 install python-pptx 2>/dev/null

**核心代码框架:**

from pptx import Presentation
from pptx.util import Inches, Pt, Mm, Emu
from pptx.dml.color import RGBColor
from pptx.enum.text import PP_ALIGN, MSO_ANCHOR
from pptx.enum.shapes import MSO_SHAPE
import os

class PPTGenerator:
    """中式PPT生成器"""

    # 预置风格配色
    THEMES = {
        'business': {
            'name': '简约商务',
            'bg': RGBColor(0xFF, 0xFF, 0xFF),
            'title': RGBColor(0x1F, 0x38, 0x64),
            'accent': RGBColor(0x2B, 0x57, 0x9A),
            'text': RGBColor(0x33, 0x33, 0x33),
            'light': RGBColor(0xE8, 0xEE, 0xF7),
            'title_font': '微软雅黑',
            'body_font': '微软雅黑',
        },
        'tech': {
            'name': '科技风',
            'bg': RGBColor(0x0A, 0x1A, 0x2F),
            'title': RGBColor(0xFF, 0xFF, 0xFF),
            'accent': RGBColor(0x00, 0xD4, 0xFF),
            'text': RGBColor(0xCC, 0xCC, 0xCC),
            'light': RGBColor(0x15, 0x2A, 0x45),
            'title_font': '微软雅黑',
            'body_font': '微软雅黑',
        },
        'gov': {
            'name': '党政风',
            'bg': RGBColor(0xFF, 0xFF, 0xFF),
            'title': RGBColor(0xCC, 0x00, 0x00),
            'accent': RGBColor(0xCC, 0x00, 0x00),
            'text': RGBColor(0x33, 0x33, 0x33),
            'light': RGBColor(0xFF, 0xE8, 0xE8),
            'title_font': '方正小标宋简体',
            'body_font': '仿宋_GB2312',
        },
        'edu': {
            'name': '教育风',
            'bg': RGBColor(0xFF, 0xFF, 0xFF),
            'title': RGBColor(0x2E, 0x75, 0xB6),
            'accent': RGBColor(0x4C, 0xAF, 0x50),
            'text': RGBColor(0x33, 0x33, 0x33),
            'light': RGBColor(0xE3, 0xF2, 0xFD),
            'title_font': '微软雅黑',
            'body_font': '微软雅黑',
        },
    }

    def __init__(self, theme='business', widescreen=True):
        self.prs = Presentation()
        self.theme = self.THEMES.get(theme, self.THEMES['business'])

        # 宽屏16:9(默认)或4:3
        if widescreen:
            self.prs.slide_width = Mm(338.67)
            self.prs.slide_height = Mm(190.5)
        else:
            self.prs.slide_width = Mm(254)
            self.prs.slide_height = Mm(190.5)

        self.slide_width = self.prs.slide_width
        self.slide_height = self.prs.slide_height

    def add_bg(self, slide, color=None):
        """设置幻灯片背景色"""
        bg = slide.background
        fill = bg.fill
        fill.solid()
        fill.fore_color.rgb = color or self.theme['bg']

    def add_shape(self, slide, left, top, width, height, color=None):
        """添加色块装饰"""
        shape = slide.shapes.add_shape(
            MSO_SHAPE.RECTANGLE, left, top, width, height
        )
        shape.fill.solid()
        shape.fill.fore_color.rgb = color or self.theme['accent']
        shape.line.fill.background()
        return shape

    def add_text_box(self, slide, left, top, width, height, text,
                     font_size=18, font_color=None, font_name=None,
                     bold=False, alignment=PP_ALIGN.LEFT):
        """添加文本框"""
        txBox = slide.shapes.add_textbox(left, top, width, height)
        tf = txBox.text_frame
        tf.word_wrap = True
        p = tf.paragraphs[0]
        p.text = text
        p.font.size = Pt(font_size)
        p.font.color.rgb = font_color or self.theme['text']
        p.font.name = font_name or self.theme['body_font']
        p.font.bold = bold
        p.alignment = alignment
        return txBox

    def add_cover(self, title, subtitle='', author='', date=''):
        """封面页"""
        slide = self.prs.slides.add_slide(self.prs.slide_layouts[6])  # 空白
        self.add_bg(slide)

        # 左侧装饰条
        self.add_shape(slide, Mm(0), Mm(0), Mm(12), self.slide_height)

        # 标题
        self.add_text_box(
            slide, Mm(30), Mm(50), Mm(280), Mm(50), title,
            font_size=36, font_color=self.theme['title'],
            font_name=self.theme['title_font'],
Read more
Ships withbwkyd-wps-skills

42 个 WPS Office 办公自动化 Claude Code Skills 集合 一句话指令,让 Claude 帮你自动生成 Word / Excel / PPT / PDF 文档。

Get the whole plugin

Other skills on bwkyd-wps-skills.

wps-attendance
Skill

wps-attendance

考勤打卡统计。把考勤机导出的打卡数据丢进来,自动统计每个人的 迟到、早退、缺勤、加班时长,生成月度考勤汇总表,异常考勤自动标红。 用于帮助HR处理考勤数据。当用户提到考勤、打卡、迟到、加班统计时触发。 Attendance tracker - generates summary reports from…

wps-batch-convert
Skill

wps-batch-convert

文档批量格式转换。把一个文件夹里的Word全转文本、Excel全导出CSV、 Markdown转Word,支持docx/txt/xlsx/csv/md等格式批量互转,一次搞定。 用于帮助用户批量转换文档格式。当用户提到批量转换、格式转换、导出时触发。 Batch converts documents between…

wps-budget
Skill

wps-budget

预算表一键生成。部门年度预算、项目预算、活动经费预算,选个模板填数字就行, 小计合计公式自动写好,还有预算vs实际对比和执行率自动计算。 用于帮助财务和行政制作预算表。当用户提到预算、费用表、经费时触发。 Budget spreadsheet generator with formulas and variance…

wps-certificate
Skill

wps-certificate

证书奖状批量生成。给一份名单,批量生成荣誉证书、结业证书、聘书、感谢信, 每人一份独立文件,年终评优、培训结业、表彰活动必备工具。 用于帮助用户批量生成证书。当用户提到证书、奖状、聘书时触发。 Batch certificate/award generator from a list of recipients.

wps-chart
Skill

wps-chart

数据图表一键生成。不知道数据该用什么图表?告诉我你的数据和目的, 自动推荐最佳图表类型并生成,柱状图折线图饼图散点图都支持,还帮你调配色。 用于帮助用户制作数据可视化图表。当用户提到图表、柱状图、折线图、饼图时触发。 Chart generator - recommends best chart type and…

wps-cn-calendar
Skill

wps-cn-calendar

日历排班值班表。生成带法定节假日和调休标注的月度/年度日历表, 还能做三班倒/两班倒排班表和节假日值班安排,颜色区分不同班次一目了然。 用于帮助用户生成日历和排班表。当用户提到日历、排班、值班、节假日时触发。 Chinese calendar with holidays, shift scheduling, and…