> ## Documentation Index
> Fetch the complete documentation index at: https://manual.seahorse.dnotitia.ai/llms.txt
> Use this file to discover all available pages before exploring further.

> PPTX 템플릿 (Slide Master / Layout / Placeholder 기반) 작성법

# Template guide

# PowerPoint 템플릿 작성 가이드

**경로**: 하단 툴바 **\[6] PowerPoint** → 템플릿 가이드
PowerPoint(.pptx) 템플릿은 Word와 **전혀 다른 방식** 을 씁니다. 텍스트 태그가 아닌 **슬라이드 마스터/레이아웃과 Placeholder 인덱스** 를 활용합니다.

<Info>
  원본 스펙: `seahorse-mcp-agent-server/packages/pptx-mcp-server/` — `instructions.py`, `presentation_builder.py`, `template_inspector.py`.
</Info>

## 핵심 개념

| 용어               | 설명                                                                   |
| ---------------- | -------------------------------------------------------------------- |
| **Slide Master** | 템플릿의 최상위 디자인. 전체 테마·폰트·색상. `.pptx` 하나당 여러 개 가능.                      |
| **Slide Layout** | 마스터 아래의 구체적 배치 (예: "Title Slide", "Title + Content", "Two Content"). |
| **Placeholder**  | 레이아웃 내의 "꺼 구멍" — 제목/본문/이미지 등이 들어갈 영역. 인덱스로 식별 (0, 1, 2...).          |

즉 Word의 `{{ name }}` 태그 대신, **레이아웃 선택 + Placeholder 인덱스 + 값** 으로 슬라이드를 생성합니다.

## 작성 워크플로

<Steps>
  <Step title="템플릿 파일 준비">
    * Microsoft PowerPoint에서 원하는 디자인의 `.pptx` 저장
    * **슬라이드 마스터 편집**(`보기 → 슬라이드 마스터`)에서 필요한 레이아웃을 꾸밈
    * 각 레이아웃에 필요한 **Placeholder**를 배치 (Title, Content, Picture 등)
  </Step>

  <Step title="템플릿 업로드">
    Agent Chat 툴바 → **PowerPoint** → **TEMPLATES** 영역에 업로드.
  </Step>

  <Step title="레이아웃 구조 확인">
    AI에게 요청:

    ```
    list_template_layouts(template_name="my-template")
    ```

    각 레이아웃의 이름과 사용 가능한 Placeholder 인덱스/타입이 반환됩니다.
  </Step>

  <Step title="빈 Presentation 생성">
    ```
    create_presentation(title="Q1 리포트", template_name="my-template")
    → returns spec_file
    ```

    아직 슬라이드는 비어있는 **spec 파일** 이 생성됩니다.
  </Step>

  <Step title="슬라이드를 하나씩 추가 (중요!)">
    ```
    edit_slide(spec_file, "insert", 1, { layout: "Title Slide", placeholders: {...} })
    edit_slide(spec_file, "insert", 2, { layout: "Title + Content", placeholders: {...} })
    ...
    ```

    <Warning>
      한 번에 모든 슬라이드를 넣으려 하지 마세요. **반드시 슬라이드 단위** 로 `edit_slide(insert)` 를 반복 호출합니다. 그렇지 않으면 placeholder 인덱스 오류로 깨진 슬라이드가 생성됩니다.
    </Warning>
  </Step>

  <Step title="빌드 및 렌더">
    ```
    build_presentation(spec_file) → .pptx 생성
    render_slide_screenshots(output_name) → PDF → 슬라이드별 PNG
    review_slides(spec_file) → VLM 품질 리뷰 (0–10점)
    ```

    score \< 8.0 또는 중대 이슈 있으면 `edit_slide("replace", N, new_slide)` 로 재작업.
  </Step>
</Steps>

## 사용 가능한 도구

| 도구                         | 용도                         |
| -------------------------- | -------------------------- |
| `list_templates`           | 업로드된 템플릿 목록                |
| `list_template_layouts`    | 템플릿의 레이아웃 + placeholder 정보 |
| `create_presentation`      | 빈 spec 파일 생성               |
| `edit_slide`               | 슬라이드 insert/replace/delete |
| `build_presentation`       | spec → .pptx 렌더            |
| `get_spec`                 | spec 파일 조회 (전체 또는 특정 슬라이드) |
| `render_slide_screenshots` | .pptx → PDF → PNG 스크린샷     |
| `review_slides`            | Vision LLM 기반 품질 리뷰        |

## 템플릿 작성자를 위한 팁

### 레이아웃 구성

* **필수 레이아웃**: Title Slide, Title + Content, Two Content, Section Header, Blank
* **권장 추가**: Title + Chart, Title + Image, Comparison, Caption
* 각 레이아웃 이름을 의미 있게 지으세요 (자동 추천 품질이 향상됨)

### Placeholder 배치

* **제목(Title)**: 각 레이아웃 상단에 고정
* **본문(Content)**: 텍스트/표/차트가 들어갈 영역
* **이미지(Picture)**: 사진 삽입 영역 — 크기와 비율을 명확히
* **차트(Chart)**: 차트 영역 (빈 차트 placeholder 권장)

### 테마·폰트·색상

마스터 수준에서 설정하면 모든 슬라이드에 일괄 적용. 개별 슬라이드에서 덮어쓰기 가능하지만 가독성 저하 위험.

### 차트/표 지원

템플릿 빌더는 python-pptx 기반이며 내부 Registry로 다음을 지원:

* **Shape types** — 도형 종류
* **Connector types** — 연결선
* **Chart types** — 차트 (bar/line/pie 등)

자세한 목록은 `edit_slide` 호출 시 AI가 자동으로 참조합니다.

## Word 템플릿과의 비교

|        | Word (DOCX)               | PowerPoint (PPTX)                       |
| ------ | ------------------------- | --------------------------------------- |
| 치환 방식  | Jinja2 스타일 태그 `{{ var }}` | Slide Master + Layout + Placeholder 인덱스 |
| 작성 난이도 | 텍스트 편집 (낮음)               | 슬라이드 디자인 (중간)                           |
| AI 호출  | 단일 렌더                     | 슬라이드 단위 반복                              |
| 미리보기   | 없음 (빌드 필요)                | `render_slide_screenshots` 로 PNG        |
| 품질 검증  | 수동                        | `review_slides` 자동 VLM 리뷰               |

## 관련 페이지

* [Word 템플릿 가이드](/agent-chat/toolbar/word/template-guide)
* [PowerPoint 툴바 패널](/agent-chat/toolbar/powerpoint)
