geekfujiwara/fade-in-rise-animation

Ajouter une animation d'apparition progressive (fade-in) et d'entrée par le bas (rise) au contenu PowerPoint sélectionné, décalée par position tout en gardant les titres fixes. Idéal pour une révélation séquentielle ou un mouvement subtil. Utilisé pour les animations de fondu, d'entrée par le bas et d'apparition séquentielle.

Qu'est-ce que fade-in-rise-animation ?

Cette compétence permet d'ajouter une animation élégante de fondu enchaîné et de mouvement ascendant (fade-in et rise) à des éléments sélectionnés dans une présentation PowerPoint. L'effet est automatique dès l'entrée de la diapositive, sans nécessiter de clic. Le fondu dure environ 250 ms, le mouvement ascendant environ 500 ms, avec un décalage vertical initial de 3,889 % de la hauteur de la diapositive en dessous de la position finale. Les objets éligibles sont décalés selon sept niveaux de délai (0, 100, 200, 300, 400, 500, 600 ms) en fonction de leur position (haut en bas par défaut, ou gauche à droite pour les flux/colonnes). Les titres, espaces réservés, arrière-plans, pieds de page et éléments décoratifs restent fixes. La compétence inspecte et préserve les animations existantes, et ne modifie pas les graphiques, SmartArt, médias ou éléments interactifs sauf demande explicite. Si l'édition OOXML est disponible, elle applique l'effet via des identifiants et chemins spécifiques (fade avec `presetID="10"`, motion avec `presetID="42"`). Elle fonctionne sur les outils d'animation PowerPoint intégrés et ne nécessite pas d'environnement externe. La compétence est conçue pour les agents IA comme Claude, Cursor ou Codex dans le contexte de la modification de présentations PowerPoint.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/geekfujiwara/powerpoint-agent-skills/tree/HEAD/skills/fade-in-rise-animation

Installed? Explore more Développement et programmation skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Animation de fondu et de mouvement ascendant (Fade-in Rise)

Effet recherché

  • Démarrer automatiquement à l'entrée de la diapositive, sans clic.
  • Fondu en environ 250 ms et mouvement ascendant en environ 500 ms, commençant simultanément.
  • Décalage vertical initial : environ 3,889 % de la hauteur de la diapositive en dessous de la position finale. La position finale et la disposition de la diapositive ne doivent pas changer.
  • Décaler les objets éligibles selon sept niveaux de délai : 0, 100, 200, 300, 400, 500 et 600 ms.
  • Laisser fixes les titres, autres espaces réservés, arrière-plans, pieds de page et éléments décoratifs. Identifier les rôles de titre à partir de la disposition et du contenu, et non du nom "Titre".

Procédure

  1. Confirmer le nombre de diapositives cibles et la direction : de haut en bas par défaut, ou de gauche à droite pour les flux/colonnes. Ne pas animer les diapositives de couverture/séparation sauf demande explicite. Proposer une option sans mouvement (fondu seul) si approprié.
  2. Inspecter les animations, déclencheurs, constructions et timings médias existants. Les conserver. Si l'effet demandé nécessite de les remplacer, expliquer ce qui serait perdu et obtenir l'approbation explicite avant de remplacer le timing sur ces diapositives.
  3. Utiliser les outils d'animation PowerPoint pris en charge lorsqu'ils sont disponibles. Ne pas supposer qu'un environnement Python local, un accès au XML des diapositives ou un outil interne particulier existe. Si la fonctionnalité n'est pas prise en charge, expliquer la limitation et donner les réglages manuels ; ne pas prétendre que l'effet a été appliqué.
  4. Sélectionner uniquement les objets de contenu substantiels. Conserver un groupe significatif en tant qu'objet unique, sauf si l'utilisateur demande des révélations individuelles. Éviter de modifier les constructions de graphiques, SmartArt, médias ou éléments interactifs, sauf s'ils sont pris en charge et approuvés.
  5. Calculer le délai de chaque objet éligible à partir de sa coordonnée supérieure ou gauche : round((position - min)/(max - min) * 6) * 100 ms. Si toutes les positions sont égales, utiliser un délai nul. En cas d'égalité, départager selon l'ordre de lecture. Traiter les objets éligibles au sein d'une même carte comme une seule unité de timing, en utilisant la coordonnée supérieure ou gauche de la carte ; leur attribuer le même délai. Décaler les cartes par position de sorte que leurs animations se chevauchent.
  6. Appliquer les deux effets simultanément pour chaque objet avec le délai calculé. Conserver la géométrie finale, l'éditabilité, l'ordre de lecture et les transitions existantes. Si un effet plus rapide est demandé, les durées et l'espacement peuvent être ajustés, par exemple pour un fondu de 150 ms, un mouvement ascendant de 300 ms et 120 ms entre les niveaux de délai.
  7. Lire les diapositives modifiées en mode diaporama. Vérifier le démarrage automatique, les effets simultanés, le timing, les titres fixes, l'absence de clics inattendus et le placement final. Un aperçu statique ne peut pas vérifier la lecture de l'animation. Si la lecture n'est pas disponible, signaler l'effet comme non vérifié, pas comme entièrement testé.

Limite d'édition bas niveau

Si l'édition OOXML est explicitement disponible et nécessaire, travailler sur une copie, conserver le timing et les relations non liés, utiliser des identifiants de timing et des identifiants de forme cible valides et uniques, et valider le package avant de l'ouvrir. Ne pas remplacer aveuglément p:timing ni réutiliser des numéros de diapositive codés en dur. Un simple identifiant prédéfini ne prouve pas une lecture correcte.

Lorsque l'édition OOXML répond à cette limite, la combinaison établie est :

  • Fondu : presetID="10" avec animEffect filter="fade".
  • Mouvement ascendant : un chemin de mouvement séparé avec presetID="42", presetClass="path", decel="100000" et animMotion origin="layout", en utilisant path="M 0 0.03889 L 0 0 " et rCtr y="-1944".
  • Utiliser withEffect pour les deux effets au même délai calculé. Placer le premier effet dans un conteneur onBegin avec un délai nul pour qu'il démarre automatiquement.
  • Pour les formes contenant du texte, utiliser grpId="0" pour le fondu et grpId="1" pour le mouvement. Ajouter les entrées correspondantes dans bldLst : <p:bldP spid=".." grpId="0" animBg="1"/> et <p:bldP spid=".." grpId="1" animBg="1"/>, en utilisant l'ID de forme réel. Les images et les lignes n'ont pas besoin d'entrées bldP.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Skills associés