L'API Google Slides consente di aggiungere e modificare elementi nelle pagine delle presentazioni. Gli esempi
in questa pagina mostrano come eseguire operazioni di lettura comuni utilizzando il metodo
presentations.batchUpdate
.
Questi esempi utilizzano le seguenti variabili:
- PRESENTATION_ID: indica dove fornire l'ID presentazione. Puoi scoprire il valore di questo ID dall'URL della presentazione.
- PAGE_ID: indica dove fornisci l'ID oggetto pagina. Puoi recuperare il valore da questo URL o utilizzando una richiesta di lettura dell'API.
- PAGE_ELEMENT_ID: indica dove fornisci l'ID oggetto elemento pagina. Puoi specificare questo ID per gli elementi che crei (con alcune limitazioni) o consentire all'API Slides di crearne uno automaticamente. Gli ID elemento possono essere recuperati tramite una richiesta di lettura dell'API.
Questi esempi vengono presentati come richieste HTTP per essere indipendenti dalla lingua. Per scoprire come implementare un aggiornamento batch in lingue diverse utilizzando le librerie client dell'API Google, consulta Aggiungere forme e testo.
Aggiungere una casella di testo a una slide
Il seguente
presentations.batchUpdate
esempio di codice mostra come utilizzare il
metodo CreateShapeRequest
per aggiungere una nuova casella di testo (contenente la stringa "My Added Text Box") a una
slide specificata da PAGE_ID. Nel corpo della richiesta vengono specificate due richieste: una per creare la forma della casella di testo (con una determinata dimensione e posizione) e una seconda per inserirvi del testo.
La prima richiesta specifica l'ID oggetto da utilizzare per la casella di testo. In questo modo, la seconda richiesta può utilizzarlo nella stessa chiamata API, riducendo l'overhead.
Di seguito è riportato il protocollo di richiesta per aggiungere una casella di testo a una slide:
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 } } ] }
Aggiungere un'immagine a una slide
Il seguente
presentations.batchUpdate
esempio di codice mostra come utilizzare il
metodo CreateImageRequest
per aggiungere un'immagine a una slide specificata da PAGE_ID. L'API recupera l'immagine utilizzando IMAGE_URL. Questa richiesta
ridimensiona e posiziona anche l'immagine nella slide.
Di seguito è riportato il protocollo di richiesta per aggiungere un'immagine a una slide:
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" } } } } ] }
Eliminare una pagina o un elemento della pagina
Il seguente
presentations.batchUpdate
esempio di codice mostra come utilizzare il metodo
DeleteObjectRequest
per eliminare l'elemento della pagina specificato da PAGE_ELEMENT_ID
e la slide specificata da PAGE_ID utilizzando due richieste separate.
Di seguito è riportato il protocollo di richiesta per eliminare una pagina o un elemento della pagina:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "deleteObject": { "objectId": PAGE_ELEMENT_ID }, "deleteObject": { "objectId": PAGE_ID } } ] }
Modificare il testo in una forma specifica
Il seguente
presentations.batchUpdate
esempio di codice mostra come utilizzare il
metodo DeleteTextRequest
per sostituire una parte del testo presente nella forma specificata da
PAGE_ELEMENT_ID. Per farlo, elimina prima il testo utilizzando
startIndex
basato su zero e poi inserisci il nuovo testo in quella posizione. In questo
esempio, la stringa di testo originale "My Shape Text: ????" viene sostituita con "My
Shape Text: Trapezoid".
Questa richiesta interessa solo il testo in una forma specificata. Per sostituire il testo ovunque
all'interno di una presentazione, utilizza il
metodo
ReplaceAllTextRequest
.
Di seguito è riportato il protocollo di richiesta per modificare il testo in una forma specificata:
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 } } ] }
Sostituire un tag di forma con un'immagine
I tag sono caselle di testo o forme con un nome di stringa univoco, ad esempio "account-holder-name".
Il seguente
presentations.batchUpdate
esempio di codice mostra come utilizzare il
metodo CreateImageRequest
per sostituire una singola istanza di un tag di forma con un'immagine, mantenendo
la stessa posizione e scalando l'immagine in modo che si adatti alle dimensioni del tag, mantenendo
le proporzioni dell'immagine.
La richiesta può essere utilizzata anche per sostituire un'immagine con un'altra. La richiesta consiste nell'aggiungere la nuova immagine e poi eliminare il tag.
Il metodo CreateImageRequest
sostituisce solo una forma specificata. Per sostituire le forme dei tag
ovunque all'interno di una presentazione, utilizza un
metodo ReplaceAllShapesWithImageRequest
.
Il tag della forma ha le seguenti proprietà
PageElement
(che possono essere trovate utilizzando una
richiesta 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 forma si trova nella slide specificata da PAGE_ID. Per specificare
l'immagine che sostituisce la forma, l'API recupera l'immagine utilizzando
IMAGE_URL. Per preservare le proporzioni dell'immagine limitandole
alle dimensioni del tag, il metodo
CreateImageRequest
imposta sia le dimensioni dell'immagine sul prodotto delle dimensioni e della scala del tag, sia
i fattori di scala dell'immagine su 1
. Per ulteriori informazioni, vedi Mantieni le proporzioni.
Di seguito è riportato il protocollo di richiesta per sostituire un tag di forma con un'immagine:
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 } } ] }