A API Google Slides permite criar e editar tabelas em páginas. Nos exemplos
desta página, mostramos algumas operações de tabela comuns que usam o
método
presentations.batchUpdate
.
Esses 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 os IDs de objeto da página. Recupere o valor dele no URL ou usando uma solicitação de leitura da API.
- TABLE_ID: indica onde você fornece o ID de objeto do elemento de página para uma tabela com que está trabalhando. Você pode especificar esse ID para os elementos criados (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 aprender a implementar uma atualização em lote em diferentes idiomas usando as bibliotecas de cliente da API do Google, consulte Adicionar formas e texto.
Criar uma tabela
O exemplo de código
presentations.batchUpdate
abaixo mostra como usar o método
CreateTableRequest
para adicionar uma tabela a um slide especificado por PAGE_ID.
Essa tabela tem oito linhas e cinco colunas. Observe que a API Slides
ignora todos os campos size
ou transform
fornecidos como parte do
elementProperties
.
Em vez disso, a API cria uma tabela centralizada no slide e dimensionada para acomodar o número especificado de linhas e colunas, se possível.
Confira a seguir o protocolo de solicitação para criar uma tabela:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createTable": { "objectId": TABLE_ID, "elementProperties": { "pageObjectId": PAGE_ID, }, "rows": 8, "columns": 5 } } ] }
Excluir linhas ou colunas da tabela
O exemplo de código
presentations.batchUpdate
a seguir mostra como usar o método
DeleteTableRowRequest
para remover a sexta linha. Em seguida, ele usa o método
DeleteTableColumnRequest
para remover a quarta coluna. A tabela é especificada pelo
TABLE_ID. Tanto o rowIndex
quanto o columnIndex
no
cellLocation
têm base em zero.
Confira a seguir o protocolo de solicitação para excluir linhas ou colunas da tabela:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "deleteTableRow": { "tableObjectId": TABLE_ID, "cellLocation": { "rowIndex": 5 } } }, { "deleteTableColumn": { "tableObjectId": TABLE_ID, "cellLocation": { "columnIndex": 3 } } } ] }
Editar dados da tabela
O exemplo de código
presentations.batchUpdate
abaixo mostra como usar o método
DeleteTextRequest
para remover todo o texto em uma célula dentro do
textRange
. Em
seguida, ele usa o método
InsertTextRequest
para substituí-lo pelo novo texto de "Kangaroo".
A tabela é especificada pelo TABLE_ID. A célula afetada está na
quinta linha e terceira coluna. Tanto o rowIndex
quanto o columnIndex
no
cellLocation
têm base em zero.
Confira a seguir o protocolo da solicitação para editar dados da tabela:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "deleteText": { "objectId": TABLE_ID, "cellLocation": { "rowIndex": 4, "columnIndex": 2 }, "textRange": { "type": "ALL", } } }, { "insertText": { "objectId": TABLE_ID, "cellLocation": { "rowIndex": 4, "columnIndex": 2 }, "text": "Kangaroo", "insertionIndex": 0 } } ] }
Formatar uma linha de cabeçalho de tabela
O exemplo de código
presentations.batchUpdate
a seguir mostra como usar o método
UpdateTableCellPropertiesRequest
para formatar a linha de cabeçalho de um elemento de tabela, no
tableRange
,
especificado pelo TABLE_ID. Em seguida, ele usa o método
TableCellProperties
para definir a cor do plano de fundo da linha do cabeçalho como preto.
Cada solicitação a seguir usa o método
UpdateTextStyleRequest
para definir o formato de texto em uma célula da linha de cabeçalho como fonte Camria branca de 18 pt
em negrito na
textRange
. Em seguida,
é necessário repetir essa solicitação para cada célula adicional no cabeçalho.
Tanto o rowIndex
quanto o columnIndex
em location
e cellLocation
são baseados em zero.
Confira a seguir o protocolo de solicitação para formatar uma linha de cabeçalho de tabela:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "updateTableCellProperties": { "objectId": TABLE_ID, "tableRange": { "location": { "rowIndex": 0, "columnIndex": 0 }, "rowSpan": 1, "columnSpan": 3 }, "tableCellProperties": { "tableCellBackgroundFill": { "solidFill": { "color": { "rgbColor": { "red": 0.0, "green": 0.0, "blue": 0.0 } } } } }, "fields": "tableCellBackgroundFill.solidFill.color" } }, { "updateTextStyle": { "objectId": TABLE_ID, "cellLocation": { "rowIndex": 0, "columnIndex": 0 }, "style": { "foregroundColor": { "opaqueColor": { "rgbColor": { "red": 1.0, "green": 1.0, "blue": 1.0 } } }, "bold": true, "fontFamily": "Cambria", "fontSize": { "magnitude": 18, "unit": "PT" } }, "textRange": { "type": "ALL" }, "fields": "foregroundColor,bold,fontFamily,fontSize" } }, // Repeat the above request for each additional cell in the header row.... ] }
Veja como ficará a linha de cabeçalho formatada depois dessas atualizações:
Inserir linhas ou colunas da tabela
O exemplo de código
presentations.batchUpdate
a seguir mostra como usar o método
InsertTableRowsRequest
para adicionar três linhas abaixo da sexta. Em seguida, ele usa o método InsertTableColumnsRequest
para adicionar duas colunas à esquerda da quarta coluna na mesma tabela.
A tabela é especificada pelo TABLE_ID. Tanto o rowIndex
quanto
o columnIndex
no cellLocation
têm base em zero.
Confira a seguir o protocolo de solicitação para inserir linhas ou colunas da tabela:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "insertTableRows": { "tableObjectId": TABLE_ID, "cellLocation": { "rowIndex": 5 }, "insertBelow": true, "number": 3 } }, { "insertTableColumns": { "tableObjectId": TABLE_ID, "cellLocation": { "columnIndex": 3 }, "insertRight": false, "number": 2 } } ] }