跳到主要内容
Office Open

PPTX

SmartArt

创建预定义的 SmartArt 图示,用于流程、层级结构等

使用 smartart 字段添加 SmartArt 图形 — 预定义的图示布局,用于可视化流程、层级结构、关系等。

#基本 SmartArt

ts
import { generatePresentation } from "@office-open/pptx";
JSON
{
  "slides": [
    {
      "children": [
        {
          "smartart": {
            "x": "1.3cm",
            "y": "1.3cm",
            "width": "21.2cm",
            "height": "9.3cm",
            "layout": "default",
            "style": "simple1",
            "color": "accent1_2",
            "nodes": [{ "text": "Step 1" }, { "text": "Step 2" }, { "text": "Step 3" }]
          }
        }
      ]
    }
  ]
}

#嵌套节点

节点支持嵌套 children,用于层级数据:

JSON
{
  "slides": [
    {
      "children": [
        {
          "smartart": {
            "x": "1.3cm",
            "y": "1.3cm",
            "width": "21.2cm",
            "height": "10.6cm",
            "layout": "default",
            "nodes": [
              { "text": "Item A", "children": [{ "text": "Sub A1" }, { "text": "Sub A2" }] },
              { "text": "Item B", "children": [{ "text": "Sub B1" }] },
              { "text": "Item C" }
            ]
          }
        }
      ]
    }
  ]
}

#SmartArt 样式

控制视觉样式和配色方案:

JSON
{
  "slides": [
    {
      "children": [
        {
          "smartart": {
            "x": "1.3cm",
            "y": "1.3cm",
            "width": "21.2cm",
            "height": "9.3cm",
            "layout": "process1",
            "nodes": [{ "text": "Phase 1" }, { "text": "Phase 2" }, { "text": "Phase 3" }],
            "color": "accent2_1",
            "style": "simple1"
          }
        }
      ]
    }
  ]
}

#SmartArt 选项

选项类型说明
xnumber | UniversalMeasure水平位置
ynumber | UniversalMeasure垂直位置
widthnumber | UniversalMeasure宽度
heightnumber | UniversalMeasure高度
layoutstring布局 ID(如 "default"、"process1")
stylestring快速样式 ID(如 "simple1"、"moderate1")
colorstring配色变换 ID(如 "accent1_2"、"colorful1")
nodesTreeNode[]{ text, children? } 对象数组
dataModelDataModelOptions完整 canonical 图示模型