L'API Google Slides vous permet d'ajouter et de modifier des éléments sur les pages de présentation. Les
exemples de cette page montrent comment effectuer des opérations de lecture courantes à l'aide de la
presentations.batchUpdate
méthode.
Ces exemples utilisent les variables suivantes :
- PRESENTATION_ID : indique où vous fournissez l' ID de la présentation. Vous pouvez découvrir la valeur de cet ID à partir de l'URL de la présentation.
- PAGE_ID : indique où vous fournissez l'ID de l'objet de la page. Vous pouvez récupérer la valeur de cet ID à partir de l'URL ou à l'aide d'une requête de lecture d'API.
- PAGE_ELEMENT_ID : indique où vous fournissez l'ID de l'objet de l'élément de la page. Vous pouvez spécifier cet ID pour les éléments que vous créez (avec certaines restrictions) ou autoriser l'API Slides à en créer un automatiquement. Les ID d'élément peuvent être récupérés via une requête de lecture d'API.
Ces exemples sont présentés sous forme de requêtes HTTP pour être indépendants du langage. Pour découvrir comment implémenter une mise à jour groupée dans différents langages à l'aide des bibliothèques clientes des API Google, consultez Ajouter des formes et du texte.
Ajouter une zone de texte à une diapositive
L'exemple de code
presentations.batchUpdate
suivant montre comment utiliser la méthode
CreateShapeRequest
pour ajouter une zone de texte (contenant la chaîne "My Added Text Box") à une diapositive spécifiée par PAGE_ID. Deux requêtes sont spécifiées dans le corps de la requête : une pour créer la forme de la zone de texte (avec une taille et un emplacement donnés) et une seconde pour y insérer du texte.
La première requête spécifie l'ID d'objet à utiliser pour la zone de texte. Cela permet à la deuxième requête de l'utiliser dans le même appel d'API, ce qui réduit la surcharge.
Voici le protocole de requête permettant d'ajouter une zone de texte à une diapositive :
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
"requests": [
{
"createShape": {
"objectId": PAGE_ELEMENT_ID,
"shapeType": "TEXT_BOX",
"elementProperties": {
"pageObjectId": PAGE_ID,
"size": {
"width": {
"magnitude": 150,
"unit": "PT"
},
"height": {
"magnitude": 50,
"unit": "PT"
}
},
"transform": {
"scaleX": 1,
"scaleY": 1,
"translateX": 200,
"translateY": 100,
"unit": "PT"
}
}
}
},
{
"insertText": {
"objectId": PAGE_ELEMENT_ID,
"text": "My Added Text Box",
"insertionIndex": 0
}
}
]
}Ajouter une image à une diapositive
L'exemple de code suivant
presentations.batchUpdate
montre comment utiliser la méthode
CreateImageRequest
pour ajouter une image à une diapositive spécifiée par PAGE_ID. L'
API récupère l'image à l'aide de IMAGE_URL. Cette requête met également l'image à l'échelle et la positionne dans la diapositive.
Voici le protocole de requête permettant d'ajouter une image à une diapositive :
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
"requests": [
{
"createImage": {
"url": IMAGE_URL,
"elementProperties": {
"pageObjectId": PAGE_ID,
"size": {
"width": {
"magnitude": 30,
"unit": "PT"
},
"height": {
"magnitude": 30,
"unit": "PT"
}
},
"transform": {
"scaleX": 1,
"scaleY": 1,
"translateX": 200,
"translateY": 100,
"unit": "PT"
}
}
}
}
]
}Supprimer une page ou un élément de page
L'exemple de code
presentations.batchUpdate
suivant montre comment utiliser la méthode
DeleteObjectRequest
pour supprimer l'élément de page spécifié par PAGE_ELEMENT_ID
et la diapositive spécifiée par PAGE_ID à l'aide de deux requêtes distinctes.
Voici le protocole de requête permettant de supprimer une page ou un élément de page :
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
"requests": [
{
"deleteObject": {
"objectId": PAGE_ELEMENT_ID
},
"deleteObject": {
"objectId": PAGE_ID
}
}
]
}Modifier du texte dans une forme spécifiée
L'exemple de code
presentations.batchUpdate
suivant montre comment utiliser la méthode
DeleteTextRequest
pour remplacer une partie du texte présent dans la forme spécifiée par
PAGE_ELEMENT_ID. Pour ce faire, supprimez d'abord le texte à l'aide de startIndex basé sur zéro, puis insérez du nouveau texte à cet emplacement. Dans cet exemple, la chaîne de texte d'origine "My Shape Text: ????" est remplacée par "My Shape Text: Trapezoid".
Cette requête n'affecte que le texte d'une forme spécifiée. Pour remplacer du texte partout
dans une présentation, utilisez la
ReplaceAllTextRequest
méthode.
Voici le protocole de requête permettant de modifier du texte dans une forme spécifiée :
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "deleteText": { "objectId": PAGE_ELEMENT_ID, "textRange": { "type": "FROM_START_INDEX", "startIndex": 15 } } }, { "insertText": { "objectId": PAGE_ELEMENT_ID, "text": "Trapezoid", "insertionIndex": 15 } } ] }
Remplacer un tag de forme par une image
Les tags sont des zones de texte ou des formes avec un nom de chaîne unique, tel que "account-holder-name".
L'exemple de code
presentations.batchUpdate
suivant montre comment utiliser la méthode
CreateImageRequest
pour remplacer une seule instance d'un tag de forme par une image, en conservant
la même position et en la mettant à l'échelle pour l'adapter à la taille du tag tout en conservant le format de l'image.
La requête peut également être utilisée pour remplacer une image par une autre. La requête consiste à ajouter la nouvelle image, puis à supprimer le tag.
La méthode CreateImageRequest ne remplace qu'une forme spécifiée. Pour remplacer les formes de tag
partout dans une présentation, utilisez une
ReplaceAllShapesWithImageRequest
méthode.
Le tag de forme comporte les propriétés
PageElement
suivantes (que vous pouvez trouver à l'aide d'une requête
presentations.pages.get
) :
{
"objectId": PAGE_ELEMENT_ID,
"size": {
"width": {
"magnitude": 3000000,
"unit": "EMU"
},
"height": {
"magnitude": 3000000,
"unit": "EMU"
}
},
"transform": {
"scaleX": 1.13,
"scaleY": 0.62,
"translateX": 4800000,
"translateY": 450000,
"unit": "EMU"
},
"shape": {
"shapeType": "RECTANGLE"
}
}La forme se trouve sur la diapositive spécifiée par PAGE_ID. Pour spécifier
l'image qui remplace la forme, l'API récupère l'image à l'aide de
IMAGE_URL. Pour conserver le format de l'image tout en le limitant
à la taille du tag, la
CreateImageRequest
méthode définit à la fois la taille d'image sur le produit de la taille et de l'échelle du tag, et
les facteurs d'échelle de l'image sur 1. Pour en savoir plus, consultez Conserver le format.
Voici le protocole de requête permettant de remplacer un tag de forme par une image :
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
"requests": [
{
"createImage": {
"url": IMAGE_URL,
"elementProperties": {
"pageObjectId": PAGE_ID,
"size": {
"width": {
"magnitude": 3000000 * 1.13,
"unit": "EMU"
},
"height": {
"magnitude": 3000000 * 0.62,
"unit": "EMU"
}
},
"transform": {
"scaleX": 1,
"scaleY": 1,
"translateX": 4800000,
"translateY": 450000,
"unit": "PT"
}
}
}
},
{
"deleteObject": {
"objectId": PAGE_ELEMENT_ID
}
}
]
}