Files
vela/slides/scene-06.js
秋芝2046 818798a2e4 feat: add Vela scenarios PPT based on reference docs
14-slide PPT showcasing real operational scenarios derived from
新雨池 franchisee management manuals (售后指导流程手册 + 美容师服务流程):

Scenarios covered:
- 第一幕: 新加盟商入驻自动化 (7-step auto onboarding)
- 场景二: 培训进度智能监控 + 预警触发
- 第二幕: 微信皮肤照片 → AI 分析 → 话术建议
- 场景四: 第一天接待话术库实时提示
- 第三幕: 多智能体内容工厂全流程
- 第四幕: 系统主动预警阶段卡顿

Assets:
- 5 new MiniMax images (franchise-welcome, skin-ai, content-studio,
  training-digital, smart-alert)
- 14 scene slide modules (scene-01~14.js)
- compile-scenes.js build script
- output: vela-scenarios.pptx

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-14 19:01:15 +08:00

77 lines
2.3 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// scene-06.js — Section Divider 02
const pptxgen = require("pptxgenjs");
const slideConfig = { type: 'content', index: 6 };
function createSlide(pres, theme) {
const slide = pres.addSlide();
// Full-bleed background image
slide.addImage({ path: "./imgs/skin-ai_001.jpg", x: 0, y: 0, w: 10, h: 5.625 });
// Dark overlay — transparency 55
slide.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0, w: 10, h: 5.625,
fill: { color: theme.primary, transparency: 55 },
line: { color: theme.primary }
});
// Left gold vertical accent bar
slide.addShape(pres.shapes.RECTANGLE, {
x: 0.55, y: 0.7, w: 0.07, h: 4.2,
fill: { color: theme.accent },
line: { color: theme.accent }
});
// Section number "02"
slide.addText("02", {
x: 0.85, y: 0.65, w: 2, h: 1.3,
fontSize: 80, bold: true, color: theme.accent,
fontFace: "Arial", align: "left", valign: "middle"
});
// "第二幕"
slide.addText("第二幕", {
x: 0.85, y: 2.0, w: 8, h: 0.75,
fontSize: 48, bold: true, color: "FFFFFF",
fontFace: "Microsoft YaHei", align: "left", valign: "middle"
});
// "顾客进店AI 成了美容师的搭档"
slide.addText("顾客进店AI 成了美容师的搭档", {
x: 0.85, y: 2.75, w: 8.5, h: 0.78,
fontSize: 36, bold: true, color: theme.accent,
fontFace: "Microsoft YaHei", align: "left", valign: "middle"
});
// Subtitle
slide.addText("皮肤照片发来30秒内生成专业建议", {
x: 0.85, y: 3.65, w: 7, h: 0.5,
fontSize: 18, color: "AAAAAA",
fontFace: "Microsoft YaHei", align: "left", valign: "middle"
});
// Page badge — blue for dark/image slide
slide.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: 9.3, y: 5.1, w: 0.4, h: 0.4,
fill: { color: theme.secondary },
line: { color: theme.secondary },
rectRadius: 0.2
});
slide.addText("6", {
x: 9.3, y: 5.1, w: 0.4, h: 0.4,
fontSize: 11, bold: true, color: "FFFFFF",
fontFace: "Arial", align: "center", valign: "middle"
});
return slide;
}
if (require.main === module) {
const pres = new pptxgen();
pres.layout = 'LAYOUT_16x9';
const theme = { primary: "0a0a0a", secondary: "0070F3", accent: "D4AF37", light: "f5f5f5", bg: "ffffff" };
createSlide(pres, theme);
pres.writeFile({ fileName: "scene-06-preview.pptx" });
}
module.exports = { createSlide, slideConfig };