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 certaines opérations de diapositive courantes à l'aide de la méthode presentations.batchUpdate.

Ces exemples utilisent les variables suivantes:

  • PRESENTATION_ID : indique où vous devez fournir l'ID de présentation. Vous pouvez trouver la valeur de cet ID dans l'URL de la présentation.
  • PAGE_ID et PAGE_ID2 : indique l'emplacement où vous devez fournir les ID d'objet de page. Vous pouvez récupérer la valeur correspondante à 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 langue. 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 des éléments de la page doivent figurer dans le contenu (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é sur 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 élément 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 insertionIndex basé sur zéro) dans la présentation.

La nouvelle diapositive est définie 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 à suivre pour créer une diapositive et 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 vers une nouvelle position

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, en conservant leur ordre relatif.

Les ID de diapositive 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 à utiliser pour 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 de fond pour une diapositive

L'exemple de code presentations.batchUpdate suivant montre comment utiliser la méthode UpdatePagePropertiesRequest pour définir l'image de fond 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 permet de spécifier que seul l'arrière-plan de la diapositive doit être modifié pour conserver 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 une couleur unie comme arrière-plan d'une diapositive.

Voici le protocole de requête pour définir une image de fond 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 vignette

Vous pouvez générer une vignette 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 en tant qu'URL de contenu. La durée de vie de l'URL de l'image est de 30 minutes par défaut.

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 vignette de la page avec l'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"
}