【教案生成平台】实战教程三:打造智能 PPT 生成器 (AI + PptxGenJS)

简介: 一款基于 Vue 3 + Vite 的智能教学工具,利用 AI 自动生成结构化 PPT 数据,结合可视化编辑与本地持久化,实现高效备课。支持 JSON 模板解析、动态渲染导出(pptxgenjs)与草稿自动保存,大幅提升教师工作效率。在线体验:ytecn.com/teacher

一款基于 Vue 3 + Vite 开发的现代化教师辅助工具,旨在提升备课与教学效率。

1. 功能颠覆

传统的 PPT 制作耗时耗力。本功能通过 AI 直接生成 PPT 的 JSON 结构化数据,然后利用前端库动态渲染成 PPTX 文件。
核心技术点:

  • 结构化 Prompt (要求 AI 返回 JSON)
  • pptxgenjs (浏览器端生成 PPT)
  • localforage (自动保存草稿)

2. 定义数据结构

不同于教案的纯文本,PPT 是高度结构化的。我们定义如下数据模型:

const pptData = {
   
  title: "课程标题",
  subtitle: "副标题/授课人",
  slides: [
    {
   
      layout: "Title", // 封面页
      title: "...",
      subtitle: "...",
    },
    {
   
      layout: "Content", // 内容页
      title: "第一章:基础概念",
      content: ["要点1", "要点2", "要点3"], // 数组形式方便渲染列表
      note: "演讲者备注...",
    },
  ],
};

3. 强制 AI 输出 JSON

为了让代码能解析 AI 的结果,必须在 Prompt 中通过 System Instruction 强制约束格式。

const pptPrompt = `你是一个 PPT 制作专家。请根据内容生成 PPT 大纲。
**必须严格只返回 JSON 格式,不要包含 Markdown 代码块标记。**
JSON 结构如下:
{ "title": "...", "slides": [ ... ] }`;

在接收到 AI 的响应后,我们需要进行清洗(去除可能的 ``json 前缀)并JSON.parse`。如果解析失败,提示用户重试。

image.png

4. 可视化编辑器开发 (PPTEditor.vue)

我们需要一个界面来展示和修改这组 JSON 数据。

  • 左侧/顶部:全局设置(主题、标题)。
  • 主体:幻灯片列表。使用 v-for 循环 pptData.slides
  • 编辑卡片:每个 Slide 是一个卡片,支持修改 Title 和 Content (使用 <textarea> 编辑数组)。
  • 操作:支持添加/删除页面,拖拽排序(进阶)。
    image.png

5. 集成 PptxGenJS 导出

这是最神奇的一步。将内存中的 JSON 变为真正的 .pptx 文件。

import PptxGenJS from "pptxgenjs";

const exportPPT = () => {
   
  const pres = new PptxGenJS();

  // 遍历每一页
  pptData.value.slides.forEach((slide) => {
   
    const s = pres.addSlide();

    // 根据 layout 不同进行不同渲染
    if (slide.layout === "Title") {
   
      s.addText(slide.title, {
    x: 1, y: 3, fontSize: 32, align: "center" });
    } else {
   
      s.addText(slide.title, {
    x: 0.5, y: 0.5, fontSize: 24, bold: true });
      // 渲染列表内容
      slide.content.forEach((line, idx) => {
   
        s.addText(line, {
    x: 1, y: 1.5 + idx * 0.5, bullet: true });
      });
    }

    // 添加备注
    if (slide.note) s.addNotes(slide.note);
  });

  pres.writeFile({
    fileName: "Lesson.pptx" });
};

6. 数据持久化

用户往往不能一次做完。使用 localforage 监听 pptData 的变化并自动存入 IndexedDB。

watch(
  pptData,
  (newVal) => {
   
    localforage.setItem("current_ppt", newVal);
  },
  {
    deep: true },
);

在线体验

演示链接: https://www.ytecn.com/teacher/
git链接: https://github.com/tcshowhand/teacher/

总结

通过 "AI 生成结构 -> 人工微调 JSON -> 渲染引擎导出",我们实现了一个高效的 PPT 生产流水线,极大释放了教师的生产力。

相关文章
|
2月前
|
存储 人工智能 应用服务中间件
【教案生成平台】实战教程五:系统优化与工程化实践
本教程系列将AI助手从Demo升级为可用产品:打造悬浮式全局聊天组件、可视化设置中心、本地存储优化(localforage)、路由懒加载及Nginx SPA部署方案,助力构建高性能教师辅助平台。
177 13
|
2月前
|
人工智能 JavaScript API
【教案生成平台】实战教程二:接入 AI 大模型实现智能教案生成
一款基于 Vue 3 + Vite 的教师辅助工具,聚焦教案智能生成。输入课程主题,AI 流式输出完整教学设计,支持 Markdown 实时预览与 Word 导出,提升备课效率。核心技术涵盖流式 API 调用、提示词工程与文档生成,构建从输入到输出的完整 AI 工作流。
349 8
|
2月前
|
人工智能 JavaScript 前端开发
【教案生成平台】实战教程四:开发所见即所得的在线试卷编辑器
本试卷编辑器基于Vue实现,支持拖拽排序、动态题型组件渲染(单选/简答等),实时A4预览,并通过html2canvas+jsPDF导出高清PDF。数据模型清晰,扩展性强,真正实现所见即所得的高效出卷体验。
280 19
|
1月前
|
数据采集 人工智能 搜索推荐
"老师,你讲的我都懂,但下次还是不会用"——一套让课程设计真正落地的AI指令
分享一套课程设计AI指令,能将DeepSeek/Kimi变成教学设计顾问,帮助教师和培训师快速构建目标明确、结构合理的专业课程方案。从"讲得好"跨越到"教得好",让学习真正发生。
260 8
|
1月前
|
人工智能 网络协议 网络安全
2026阿里云OpenClaw/Clawdbot部署+集成iMessage指南:苹果生态AI助手搭建教程
2026年,OpenClaw(前身为Clawdbot、Moltbot)凭借轻量化容器化架构、灵活的跨平台集成能力,成为个人与小型团队打造专属AI助手的首选工具。其支持自然语言指令解析、多任务自动化执行、多终端同步响应的核心特性,完美适配苹果生态用户的办公与生活需求。iMessage作为苹果生态核心的即时通讯工具,覆盖iPhone、Mac、iPad全终端,具备端到端加密、无缝同步的优势,将两者深度对接,可实现“iMessage发指令、AI自动化执行、全终端收结果”的跨场景体验,无需切换APP,随时随地调用AI能力处理文档生成、数据查询、任务提醒等事务。
912 18
|
2月前
|
人工智能 自然语言处理 监控
个人 / 企业 / 科研全覆盖!2025 智能体盘点,5 款工具适配全职场需求
AI智能体正从辅助工具进化为“数字同事”,实在Agent凭借一句话生成流程、跨平台操作和高稳定性,成为企业降本增效的得力助手。本文盘点2025年5款实用智能体,助力职场人高效办公。
649 10
|
2月前
|
人工智能 测试技术 开发者
AI Coding后端开发实战:解锁AI辅助编程新范式
本文系统阐述了AI时代开发者如何高效协作AI Coding工具,强调破除认知误区、构建个人上下文管理体系,并精准判断AI输出质量。通过实战流程与案例,助力开发者实现从编码到架构思维的跃迁,成为人机协同的“超级开发者”。
2247 106
|
2月前
|
人工智能 前端开发 JavaScript
ICO 图标生成器开发实战教程
本教程详解纯前端ICO图标生成器开发全过程:支持图片转ICO与文字生图双模式,Canvas实时预览、多尺寸打包;深度集成通义灵码辅助实现二进制ICO封装、正则验证与算法优化;兼顾SEO、语义化HTML及玻璃拟态UI设计。
443 1
|
2月前
|
人工智能 JSON IDE
SDD 如何在复杂业务系统中真正落地?
OpenSpec 是面向 AI 编程的规范驱动开发(SDD)工具,以 Markdown 文档为“唯一真相源”,通过 CLI 管理需求提案(proposal)、任务清单(tasks)、规格说明(spec)及归档流程,支持 Cursor 等 IDE 集成,兼顾轻量迭代与工程可追溯性。(239字)
SDD 如何在复杂业务系统中真正落地?

热门文章

最新文章