Présentation

L'API Google Slides vous permet de créer et de modifier des présentations Google Slides.

Les applications peuvent s'intégrer à l'API Google Slides pour créer automatiquement de superbes diaporamas à partir des données fournies par les utilisateurs et le système. Par exemple, vous pouvez utiliser les informations client d'une base de données et les combiner avec des modèles prédéfinis et des options de configuration sélectionnées pour créer des présentations en un temps record par rapport à la création manuelle.

Présentation de l'API

La collection presentations fournit des méthodes qui vous permettent d'obtenir et de mettre à jour des éléments dans la présentation.

La plupart de vos tâches avec l'API Slides consisteront probablement à créer et à mettre à jour des présentations. Pour ce faire, vous utiliserez la méthode batchUpdate. Cette méthode accepte une liste d'objets Request qui vous permettent d'effectuer des actions telles que :

  • Créer des diapositives
  • Ajouter des éléments aux diapositives, comme des formes ou des tableaux
  • Insérer, modifier et supprimer du texte
  • Appliquer des transformations aux éléments
  • Modifier l'ordre des diapositives

Pour en savoir plus, consultez Mises à jour par lot. Consultez les guides de démarrage pour obtenir un exemple simple et complet d'utilisation de l'API.

Structure d'une présentation

Dans l'API Slides, une présentation est constituée de pages, qui contiennent des éléments de page.

L'ID d'une présentation peut être obtenu à partir de l'URL :

https://docs.google.com/presentation/d/presentationId/edit

L'ID de la présentation est une chaîne contenant des lettres, des chiffres et certains caractères spéciaux. L'expression régulière suivante peut être utilisée pour extraire l'ID de la présentation à partir d'une URL Google Sheets :

/presentation/d/([a-zA-Z0-9-_]+)

Si vous connaissez l'API Drive, presentationId correspond à l'ID de la ressource File.

Les pages et les éléments de page sont identifiés par des ID d'objet.

Pages

Google Slides comporte les types de pages suivants :

Masters Les masques des diapositives définissent les styles de texte, l'arrière-plan et les éléments de page par défaut qui apparaissent dans toutes les diapositives utilisant ce masque. Les éléments de page qui doivent apparaître sur toutes les diapositives doivent être ajoutés au masque. La plupart des présentations comportent un masque, mais certaines peuvent en avoir plusieurs ou aucun.
Mises en page Les mises en page servent de modèle pour la façon dont les éléments de page seront organisés par défaut sur les diapositives qui utilisent une mise en page. Chaque mise en page est associée à un seul modèle.
Slides Ces pages contiennent le contenu que vous présentez à votre audience. La plupart des diapositives sont basées sur un masque et une mise en page. Vous pouvez spécifier la mise en page à utiliser pour chaque diapositive lors de sa création.
Remarques Ces pages contiennent le contenu des documents à distribuer, y compris une forme contenant les notes du présentateur de la diapositive. Chaque diapositive est associée à une page de notes. Seul le texte de la forme des notes du présentateur peut être modifié avec l'API Slides.
Masques des notes Les masques des notes définissent les styles de texte et les éléments de page par défaut pour toutes les pages de notes. Les masques des notes sont en lecture seule dans l'API Slides.

Éléments de la page

Les éléments de page sont les composants visuels placés sur les pages. L'API expose plusieurs types d'éléments de page :

Groupe Ensemble d'éléments de page traités comme une unité individuelle. Vous pouvez les déplacer, les redimensionner et les faire pivoter ensemble.
Forme Objet visuel simple, tel qu'un rectangle, une ellipse ou une zone de texte. Les formes peuvent contenir du texte. Elles sont donc les éléments de page les plus courants pour créer des diapositives.
Image Graphique importé dans Slides.
Vidéo Vidéo importée dans Slides
Ligne Ligne, courbe ou connecteur visuel.
Tableau Grille de contenu.
WordArt Élément de texte visuel qui se comporte davantage comme une forme.
SheetsChart Graphique importé dans Slides depuis Google Sheets.

Mises à jour groupées

La méthode batchUpdate vous permet de modifier de nombreux aspects d'une présentation. Les modifications sont regroupées dans un lot. Ainsi, si une requête échoue, aucune des autres modifications (potentiellement dépendantes) n'est écrite.

La méthode batchUpdate fonctionne en prenant un ou plusieurs objets Request, chacun spécifiant un seul type de requête à effectuer. Il existe de nombreux types de demandes. Voici une répartition des types de demandes, regroupées en différentes catégories.

Utiliser Slides : CreateSlideRequest
UpdateSlidesPositionRequest
DuplicateObjectRequest
UpdatePagePropertiesRequest
DeleteObjectRequest
Utiliser les éléments de page : CreateShapeRequest
CreateLineRequest
UpdatePageElementTransformRequest
UpdateShapePropertiesRequest
DuplicateObjectRequest
DeleteObjectRequest
Utiliser des tableaux : CreateTableRequest
InsertTableRowsRequest
InsertTableColumnsRequest
DeleteTableRowRequest
DeleteTableColumnRequest
UpdateTableRowPropertiesRequest
UpdateTableColumnPropertiesRequest
UpdateTableBorderPropertiesRequest
UpdateTableCellPropertiesRequest
MergeTableCellsRequest
UnmergeTableCellsRequest
DeleteObjectRequest
Travailler avec des graphiques : CreateSheetsChartRequest
RefreshSheetsChartRequest
ReplaceAllShapesWithSheetsChartRequest
DeleteObjectRequest
Utiliser des images et des vidéos : CreateImageRequest
CreateVideoRequest
UpdateImagePropertiesRequest
UpdateVideoPropertiesRequest
ReplaceAllShapesWithImageRequest
DuplicateObjectRequest
DeleteObjectRequest
Travailler avec du texte : InsertTextRequest
DeleteTextRequest
ReplaceAllTextRequest
CreateParagraphBulletsRequest
DeleteParagraphBulletsRequest
UpdateTextStyleRequest
UpdateParagraphStyleRequest

La méthode batchUpdate renvoie un corps de réponse, qui contient une réponse pour chaque requête. Chaque réponse occupe le même index que la requête correspondante. Pour les requêtes sans réponse applicable, la réponse à cet index sera vide. Les différentes requêtes Create ont normalement des réponses, ce qui vous permet de connaître l'ID de l'objet nouvellement ajouté.

Utiliser les ID d'objet

Dans l'API Slides, une présentation est composée de pages et d'éléments de page. Ces objets incluent une chaîne ID d'objet unique dans une présentation.

Spécifier des ID d'objet lors de la création

Lorsque vous créez des pages ou des éléments de page à l'aide de la méthode batchUpdate, vous pouvez éventuellement spécifier un ID d'objet pour le nouvel objet. Cela vous permet de créer un objet et de le modifier dans la même requête batchUpdate, ce qui minimise le nombre d'appels à l'API Slides et réduit l'
utilisation du quota.

Dans la plupart des cas, nous vous recommandons de générer un ID d'objet aléatoire. Par exemple, si vous utilisez Java, java.util.UUID.randomUUID().toString() devrait fonctionner correctement.

Lorsque votre application souhaite suivre des objets sur une période plus longue, ne vous fiez pas à l'ID d'objet, car il peut changer. Pour en savoir plus, consultez la section suivante.

Suivre les objets sans utiliser leur ID

Lorsque vous effectuez une requête à l'API Slides, l'ID de l'objet est normalement conservé. (Toutes les exceptions sont indiquées dans la documentation de référence de la méthode.) La copie d'une présentation entière avec l'API Drive préserve également les ID d'objet.

Toutefois, vous ne pouvez pas compter sur l'immuabilité de l'ID d'un objet après la modification d'une présentation dans l'interface utilisateur de Slides. Par exemple, si un utilisateur utilise l'interface utilisateur de Slides pour copier-coller un élément de page, puis supprime l'original, l'élément de page aura désormais un nouvel ID unique, et l'ID que vous avez précédemment fourni via l'API sera perdu. Par conséquent, nous vous déconseillons de stocker les ID d'objet dans l'espace de stockage de votre application. Au lieu de cela, vous devez rechercher les objets dans la présentation en fonction de leur contenu textuel ou de leur texte alternatif.

Les présentations nouvellement créées utilisent normalement un ensemble cohérent d'ID pour les diapositives, les masques et les zones de texte par défaut. Ces ID sont susceptibles de changer au fil du temps. Nous vous déconseillons donc de vous fier à cette fonctionnalité. À la place, recherchez les éléments que vous souhaitez modifier à l'aide de l'objet de présentation renvoyé par les appels à create() ou get().