A API Google Slides permite adicionar e modificar elementos nas páginas de uma apresentação. Os
exemplos nesta página mostram como realizar operações de leitura comuns usando o
método
presentations.batchUpdate
.
Estes exemplos usam as seguintes variáveis:
- PRESENTATION_ID: indica onde você fornece o ID da apresentação. Você pode descobrir o valor desse ID no URL da apresentação.
- PAGE_ID: indica onde você fornece o ID do objeto de página. Você pode extrair o valor dessa variável no URL ou usando uma solicitação de leitura da API.
- PAGE_ELEMENT_ID: indica onde você fornece o ID de objeto do elemento de página. É possível especificar esse ID para elementos criados por você (com algumas restrições) ou permitir que a API Slides crie um automaticamente. Os IDs dos elementos podem ser recuperados por meio de uma solicitação de leitura da API.
Esses exemplos são apresentados como solicitações HTTP para serem neutros em relação à linguagem. Para saber como implementar uma atualização em lote em diferentes idiomas usando as bibliotecas de cliente da API do Google, consulte Adicionar formas e texto.
Adicionar uma caixa de texto a um slide
O exemplo de código
presentations.batchUpdate
abaixo mostra como usar o método
CreateShapeRequest
para adicionar uma nova caixa de texto (que contém a string "My Added Text Box") a um
slide especificado pelo PAGE_ID. Duas solicitações são especificadas no
corpo da solicitação: uma para criar a forma da caixa de texto (com tamanho e
localização determinados) e outra para inserir texto nela.
A primeira solicitação especifica o ID do objeto a ser usado na caixa de texto. Isso permite que a segunda solicitação o use na mesma chamada de API, reduzindo a sobrecarga.
Veja a seguir o protocolo de solicitação para adicionar uma caixa de texto a um 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 } } ] }
Adicionar uma imagem a um slide
O exemplo de código
presentations.batchUpdate
abaixo mostra como usar o método
CreateImageRequest
para adicionar uma imagem a um slide especificado pelo PAGE_ID. A
API recupera a imagem usando o IMAGE_URL. Essa solicitação também
dimensiona e posiciona a imagem no slide.
Confira a seguir o protocolo de solicitação para adicionar uma imagem a um 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" } } } } ] }
Excluir uma página ou um elemento de página
O exemplo de código
presentations.batchUpdate
abaixo mostra como usar o método
DeleteObjectRequest
para excluir o elemento de página especificado por PAGE_ELEMENT_ID
e o slide especificado por PAGE_ID usando duas solicitações diferentes.
Confira abaixo o protocolo de solicitação para excluir uma página ou um elemento de página:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "deleteObject": { "objectId": PAGE_ELEMENT_ID }, "deleteObject": { "objectId": PAGE_ID } } ] }
Editar texto em uma forma especificada
O exemplo de código
presentations.batchUpdate
abaixo mostra como usar o método
DeleteTextRequest
para substituir uma parte do texto presente na forma especificada por
PAGE_ELEMENT_ID. Para fazer isso, primeiro exclua o texto usando
o startIndex
baseado em zero e, em seguida, insira um novo texto nessa posição. Neste
exemplo, a string de texto original "My Shape Text: ????" é substituída por "My
Shape Text: Trapezoid".
Essa solicitação só afeta o texto de uma forma especificada. Para substituir o texto em todos os lugares
em uma apresentação, use o
método
ReplaceAllTextRequest
.
Veja a seguir o protocolo de solicitação para editar texto em uma forma especificada:
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 } } ] }
Substituir a tag de uma forma por uma imagem
As tags são caixas de texto ou formas com um nome de string exclusivo, como "account-holder-name".
O exemplo de código
presentations.batchUpdate
a seguir mostra como usar o método
CreateImageRequest
para substituir uma única instância de uma tag de forma por uma imagem, mantendo
a mesma posição e dimensionando-a para caber no tamanho da tag sem alterar a
proporção da imagem.
A solicitação também pode ser usada para substituir uma imagem por outra. A solicitação consiste em adicionar a nova imagem e excluir a tag.
O método CreateImageRequest
substitui apenas a forma especificada. Para substituir formas
com tag em todos os lugares de uma apresentação, use um
método
ReplaceAllShapesWithImageRequest
.
A tag de forma tem as seguintes propriedades PageElement
(que podem ser encontradas usando uma solicitação 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" } }
A forma está no slide especificado por PAGE_ID. Para especificar
a imagem que substitui a forma, a API recupera a imagem usando o
IMAGE_URL. Para preservar a proporção da imagem e limitá-la
ao tamanho da tag, o método
CreateImageRequest
define o tamanho da imagem como o produto do tamanho e da escala da tag e
os fatores de dimensionamento da imagem como 1
. Para mais informações, consulte Preservar a proporção
de aspecto.
Confira a seguir o protocolo de solicitação para substituir uma tag de forma por uma imagem:
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 } } ] }