Opérations Slides

L'API Google Slides vous permet de créer, de déplacer et de supprimer des diapositives. Les exemples de cette page présentent quelques opérations courantes sur les diapositives à l'aide de la méthode presentations.batchUpdate.

Ces exemples utilisent les variables suivantes :

  • PRESENTATION_ID : indique où vous fournissez l'ID de la présentation. Vous trouverez la valeur de cet ID dans l'URL de la présentation.
  • PAGE_ID et PAGE_ID2 : indique où vous devez fournir les ID d'objet de page. Vous pouvez récupérer cette valeur à partir de l'URL ou à l'aide d'une requête de lecture d'API.

Ces exemples sont présentés sous forme de requêtes HTTP pour être neutres en termes de langage. Pour découvrir comment implémenter une mise à jour par lot dans différentes langues à l'aide des bibliothèques clientes des API Google, consultez les guides suivants : Créer une diapositive et Ajouter des formes et du texte.

Copier une diapositive

L'exemple de code presentations.batchUpdate suivant montre comment utiliser la méthode DuplicateObjectRequest pour copier une diapositive et l'insérer après l'original dans la présentation. La diapositive d'origine est spécifiée par PAGE_ID.

La requête vous permet de spécifier si certains ou tous les ID d'éléments de page doivent figurer dans la copie (avec certaines restrictions). Dans cet exemple, la diapositive d'origine contient un élément de tableau (spécifié par TABLE_ELEMENT_ID), qui est mappé à un nouveau tableau (spécifié par COPY_TABLE_ELEMENT_ID) dans la copie de la diapositive (spécifiée par COPY_PAGE_ID). Tous les autres éléments de la copie reçoivent des ID aléatoires.

Pour en savoir plus sur la copie d'un PageElement, y compris des zones de texte, des images, des tableaux, des formes de base, des lignes et des vidéos intégrées, consultez l'exemple Copier et modifier un élément.

Voici le protocole de requête pour copier une diapositive :

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "duplicateObject": {
        "objectId": PAGE_ID,
        "objectIds": {
          "PAGE_ID": "COPY_PAGE_ID",
          "TABLE_ELEMENT_ID": "COPY_TABLE_ELEMENT_ID"
        }
      }
    }
  ]
}

Créer une diapositive

L'exemple de code presentations.batchUpdate suivant montre comment utiliser la méthode CreateSlideRequest pour créer une diapositive et l'insérer en tant que quatrième diapositive (à l'aide de l'index insertionIndex basé sur zéro) dans la présentation.

La nouvelle diapositive est configurée pour utiliser le PredefinedLayout de TITLE_AND_TWO_COLUMNS. Vous pouvez spécifier une chaîne à utiliser comme PAGE_ID pour la diapositive (avec certaines restrictions) ou autoriser l'API à générer le PAGE_ID en omettant le champ dans la requête.

Voici le protocole de requête pour créer une diapositive :

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createSlide": {
        "objectId": "PAGE_ID",
        "insertionIndex": 3,
        "slideLayoutReference": {
          "predefinedLayout": "TITLE_AND_TWO_COLUMNS"
        }
      }
    }
  ]
}

Créer une diapositive et modifier des espaces réservés

L'exemple de code presentations.batchUpdate suivant montre comment utiliser la méthode CreateSlideRequest pour créer une diapositive à l'aide de PredefinedLayout de TITLE_AND_TWO_COLUMNS.

Vous pouvez spécifier une chaîne à utiliser comme PAGE_ID pour la diapositive (avec certaines restrictions). placeholderIdMappings utilise Type de TITLE. TITLE_ID fait référence à la forme de l'espace réservé de la diapositive afin qu'elle puisse être modifiée.

Voici le protocole de requête permettant de créer une diapositive et de modifier des espaces réservés :

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createSlide": {
        "objectId": PAGE_ID,
        "slideLayoutReference": {
          "predefinedLayout": "TITLE_AND_TWO_COLUMNS"
        },
        "placeholderIdMappings": [
          {
            "layoutPlaceholder": {
              "type": "TITLE",
              "index": 0
            },
            "objectId": TITLE_ID,
           },
        ],
      }
    },
    {
      "insertText": {
        "objectId": TITLE_ID,
        "text": "This is my slide title",
      }
    },
  ]
}

Déplacer des diapositives

L'exemple de code presentations.batchUpdate suivant montre comment utiliser la méthode UpdateSlidesPositionRequest pour prendre les deux diapositives spécifiées et les déplacer au début de la présentation, tout en conservant leur ordre relatif.

Les ID de diapositives spécifiés (PAGE_ID et PAGE_ID2) doivent être fournis dans l'ordre de présentation existant, sans doublons. La valeur insertionIndex, basée sur zéro, indique où les diapositives doivent être insérées, en fonction de l'ordre avant le déplacement. La valeur doit être comprise entre zéro et le nombre de diapositives de la présentation (inclus).

Voici le protocole de requête permettant de déplacer des diapositives vers une nouvelle position :

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "updateSlidesPosition": {
        "slideObjectIds": [
          PAGE_ID,
          PAGE_ID2
          ],
        "insertionIndex": 0
      }
    }
  ]
}

Définir une image d'arrière-plan pour une diapositive

L'exemple de code presentations.batchUpdate suivant montre comment utiliser la méthode UpdatePagePropertiesRequest pour définir l'image d'arrière-plan d'une diapositive spécifiée par PAGE_ID. L'API récupère l'image à l'aide de IMAGE_URL.

Un masque de champ est utilisé pour spécifier que seul l'arrière-plan de la diapositive doit être modifié afin de préserver les autres propriétés. L'utilisation de masques de champ améliore également les performances.

Vous pouvez également utiliser une méthode UpdatePagePropertiesRequest pour définir l'arrière-plan d'une diapositive sur une couleur unie.

Voici le protocole de requête permettant de définir une image d'arrière-plan de diapositive :

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "updatePageProperties": {
        "objectId": PAGE_ID,
        "pageProperties": {
          "pageBackgroundFill": {
            "stretchedPictureFill": {
              "contentUrl": IMAGE_URL
            }
          }
        },
        "fields": "pageBackgroundFill"
      }
    }
  ]
}

Générer une miniature

Vous pouvez générer une miniature de la dernière version d'une page spécifique de la présentation en appelant la méthode presentations.pages.getThumbnail, qui renvoie une image miniature de la page sous forme d'URL de contenu. L'URL de l'image a une durée de vie par défaut de 30 minutes.

Vous pouvez également spécifier les mimeType et thumbnailSize renvoyés à l'aide du champ ThumbnailProperties en tant que paramètre de requête.

Voici le protocole de requête permettant de générer la miniature de la page avec le paramètre ThumbnailProperties défini :

 GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID/pages/PAGE_ID/thumbnail?thumbnailProperties.mimeType=PNG&thumbnailProperties.thumbnailSize=MEDIUM
{
  "width": 800,
  "height": 450,
  "contentUrl": "CONTENT_URL"
}