Pular para o conteúdo
Skillpedia
Escrita181 mil · #326

pptx

Capacita seu agente a criar e editar apresentações em PowerPoint. Útil para gerar slides, extrair conteúdo ou atualizar apresentações existentes.

O que ela faz

Esta ferramenta permite criar, editar e ler arquivos de apresentação (.pptx). Você pode gerar novas apresentações, modificar as existentes ou extrair o texto delas.

Quando usar

  • ✓Criar uma nova apresentação do zero.
  • ✓Alterar o texto ou o layout de slides em um arquivo .pptx existente.
  • ✓Extrair todo o texto de uma apresentação para usar em outro lugar.

Exemplo do que pedir para a IA

“Crie uma apresentação sobre a história da inteligência artificial com 5 slides.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/anthropics/skills/blob/main/skills/pptx/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/anthropics/skills/blob/main/skills/pptx/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta funciona de diferentes maneiras dependendo da tarefa. Para criar, ela usa um script especial. Para editar, ela descompacta o arquivo, permite a edição manual dos componentes internos e depois o compacta novamente. Para ler, ela extrai o texto de cada slide.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add anthropics/skills --skill pptx

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/anthropics/skills/main/skills/pptx/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Criação, edição e análise de PPTX

Um .pptx é um arquivo ZIP de arquivos XML. Escolha sua abordagem por tarefa:

Tarefa Abordagem
Criar uma nova apresentação Escreva um script pptxgenjs — veja os "gotchas" abaixo
Editar uma apresentação existente ou criar a partir de um modelo descompactar → editar ppt/slides/slideN.xml → compactar
Ler conteúdo markitdown deck.pptx (um bloco por slide sob marcadores <!-- Slide number: N -->); grade visual: python scripts/thumbnail.py deck.pptx

Scripts

Os caminhos são relativos ao diretório desta habilidade. Todo o resto é Python puro, node ou shell.

Script O que faz
scripts/thumbnail.py deck.pptx [prefix] Grade rotulada de cada slide, para escolher layouts de modelo. Apenas .pptx. Passe prefix — ele usa thumbnails por padrão, que sobrescreve as grades de qualquer outra apresentação feita no mesmo diretório
scripts/add_slide.py unpacked/ slide2.xml [--after slideN.xml] Duplica um slide (ou um slideLayoutN.xml) com toda a contabilidade do pacote. Também aceita um .pptx diretamente com -o out.pptx
scripts/clean.py unpacked/ Exclui slides, mídia e rels não mais referenciados. Execute após <p:sldIdLst> estar finalizado
scripts/office/validate.py deck.pptx [--original src.pptx] Verificações de esquema, relacionamento, tipo de conteúdo, gráfico e slide; cada falha nomeia sua correção. Passe --original para qualquer apresentação derivada de modelo — ele define as verificações de esquema como base em relação ao modelo, para que os erros XSD do próprio modelo não sejam lidos como seus
scripts/office/soffice.py --headless --convert-to pdf deck.pptx Wrapper do LibreOffice — o soffice puro trava nesta sandbox

Criando com pptxgenjs — "gotchas"

pptxgenjs é pré-instalado — não execute npm install primeiro; escreva o script e require('pptxgenjs') diretamente. Somente se essa exigência falhar: npm install pptxgenjs. O modelo conhece a API; estes são os "footguns":

  • Defina pres.layout antes de adicionar slides. A tela padrão é LAYOUT_16x9 = 10" × 5.625", não 13.3" de largura. Coordenadas além da borda são escritas, não limitadas — a forma simplesmente não estará no slide. (LAYOUT_WIDE é 13.3" × 7.5".)
  • Cores hexadecimais: nunca #, nunca 8 dígitos. color: "FF0000". Tanto "#FF0000" quanto o alfa embutidos no hexadecimal ("00000020") corrompem o arquivo. Para translucidez: transparency: 0-100 em preenchimentos e imagens, opacity: 0.0-1.0 em sombras — cada um é silenciosamente ignorado no outro.
  • pptxgenjs modifica objetos de opção no local (converte valores para EMU no primeiro uso). Nunca compartilhe um objeto shadow/opções entre duas chamadas add* — crie um objeto novo a cada vez.
  • A offset da sombra deve ser ≥ 0 — um deslocamento negativo corrompe o arquivo. Para projetar uma sombra para cima, use angle: 270 com um deslocamento positivo.
  • letterSpacing é silenciosamente ignorado — a opção real é charSpacing.
  • Listas: bullet: true em cada item, nunca um literal • (renderiza marcadores duplos). Defina breakLine: true em cada item do array, exceto o último. Espaçamento de parágrafos com marcadores com paraSpaceAfter, não lineSpacing (lacunas enormes).
  • Um new pptxgen() por arquivo de saída — nunca reutilize uma instância.
  • rectRadius funciona apenas em ROUNDED_RECTANGLE, não em RECTANGLE.
  • Preenchimentos gradientes não são suportados — use uma imagem gradiente como plano de fundo em vez disso.
  • Caixas de texto têm preenchimento interno embutido — defina margin: 0 sempre que o texto precisar se alinhar com uma forma, linha ou ícone na mesma coordenada x.
  • Notas do orador vão em slide.addNotes("...") (texto simples, uma vez por slide), nunca em uma caixa de texto no slide.
  • Mantenha os gráficos nativos. Use addChart() para tudo que o PowerPoint pode criar gráficos (passe um array de {type, data, options} para combos). Para recursos nativos do PowerPoint que a biblioteca não expõe (linhas de tendência, barras de erro), calcule a série extra você mesmo ou pós-processe o OOXML gerado — não recorra a uma imagem renderizada. Apenas tipos de gráficos para os quais o PowerPoint não tem forma nativa (Sankey, rede, chord) vão como imagens.
  • Gráficos padrão renderizam crus — sem título, sem rótulos de dados, paleta datada. Defina showTitle + title, showValue: true + dataLabelPosition, chartColors: [...] de sua paleta e silencie a moldura (catAxisLabelColor/valAxisLabelColor, valGridLine: { color, size }, catGridLine: { style: "none" }, showLegend: false para uma única série).
  • Em um gráfico de barras ou colunas empilhadas, dataLabelPosition deve ser ctr, inEnd ou inBase. outEnd corrompe o arquivo.

…

Perguntas frequentes

Como faço para criar uma nova apresentação?

Você precisa escrever um script usando a ferramenta `pptxgenjs`, definindo o layout e adicionando os slides com o conteúdo desejado.

Posso extrair o texto de uma apresentação?

Sim, a ferramenta pode extrair o texto de cada slide, marcando cada um com um número de slide.

O que acontece se eu editar o arquivo .pptx diretamente?

É recomendado não editar diretamente. A ferramenta oferece um processo para descompactar, editar partes específicas (como `slideN.xml`) e depois recompactar, o que é mais seguro.

Detalhes

Descrição original do autor

Use this skill any time a .pptx or .potx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading, parsing, or extracting text from any .pptx or .potx file (even if the extracted content will be used elsewhere, like in an email or summary); editing, modifying, or updating existing presentations; combining or splitting slid

repo: anthropics/skills

Popularidade

Estrelas no GitHub
181 mil
Posição no ranking
#326
Licença
—
Atualizada em
09/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas