API Google Slides позволяет создавать и редактировать таблицы на страницах. Примеры на этой странице демонстрируют некоторые распространённые операции с таблицами с использованием метода presentations.batchUpdate .
В этих примерах используются следующие переменные:
- PRESENTATION_ID — указывает, где вы указываете идентификатор презентации . Значение этого идентификатора можно узнать из URL-адреса презентации.
- PAGE_ID — указывает, где вы предоставляете идентификаторы объектов страницы . Вы можете получить это значение из URL-адреса или с помощью запроса на чтение API.
- TABLE_ID — указывает, где вы указываете идентификатор объекта элемента страницы для таблицы, с которой работаете. Вы можете указать этот идентификатор для создаваемых элементов (с некоторыми ограничениями ) или разрешить API слайдов автоматически создать его. Идентификаторы элементов можно получить с помощью запроса на чтение API.
Эти примеры представлены в виде HTTP-запросов, чтобы не зависеть от языка. Чтобы узнать, как реализовать пакетное обновление на разных языках с помощью клиентских библиотек API Google, см. раздел Добавление фигур и текста .
Создать таблицу
В следующем примере кода presentations.batchUpdate показано, как использовать метод CreateTableRequest для добавления таблицы к слайду, указанному PAGE_ID .
Эта таблица состоит из восьми строк и пяти столбцов. Обратите внимание, что API слайдов игнорирует любые поля size или transform , предоставленные в elementProperties . Вместо этого API создаёт таблицу, примерно центрированную на слайде и имеющую размер, соответствующий указанному количеству строк и столбцов, если это возможно.
Ниже приведен протокол запроса на создание таблицы:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
"requests": [
{
"createTable": {
"objectId": TABLE_ID,
"elementProperties": {
"pageObjectId": PAGE_ID,
},
"rows": 8,
"columns": 5
}
}
]
}Удалить строки или столбцы таблицы
В следующем примере кода presentations.batchUpdate показано, как использовать метод DeleteTableRowRequest для удаления шестой строки. Затем метод DeleteTableColumnRequest удаляет четвёртый столбец. Таблица указана с помощью TABLE_ID . Индексы rowIndex и columnIndex в cellLocation отсчитываются от нуля.
Ниже приведен протокол запроса на удаление строк или столбцов таблицы:
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
}
}
}
]
}Редактировать данные таблицы
В следующем примере кода presentations.batchUpdate показано, как использовать метод DeleteTextRequest для удаления всего текста из ячейки в textRange . Затем метод InsertTextRequest заменяет текст новым текстом «Kangaroo».
Таблица указана с помощью TABLE_ID . Соответствующая ячейка находится в пятой строке и третьем столбце. Индексы rowIndex и columnIndex в cellLocation отсчитываются от нуля.
Ниже представлен протокол запроса на редактирование данных таблицы:
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 } } ] }
Форматировать строку заголовка таблицы
В следующем примере кода presentations.batchUpdate показано, как использовать метод UpdateTableCellPropertiesRequest для форматирования строки заголовка элемента таблицы в диапазоне tableRange , заданном параметром TABLE_ID . Затем метод TableCellProperties устанавливает чёрный цвет фона строки заголовка.
Каждый последующий запрос использует метод UpdateTextStyleRequest для установки полужирного белого шрифта Cambria размером 18 пунктов в одной ячейке строки заголовка в пределах textRange . Затем необходимо повторить этот запрос для каждой дополнительной ячейки в заголовке.
Параметры rowIndex и columnIndex в location и cellLocation отсчитываются от нуля.
Ниже представлен протокол запроса на форматирование строки заголовка таблицы:
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.... ] }
Вот как выглядит отформатированная строка заголовка после этих обновлений:

Вставить строки или столбцы таблицы
В следующем примере кода presentations.batchUpdate показано, как использовать метод InsertTableRowsRequest для добавления трёх строк под шестой строкой. Затем метод InsertTableColumnsRequest добавляет два столбца слева от четвёртого в той же таблице.
Таблица определяется идентификатором TABLE_ID . Индексы rowIndex и columnIndex в cellLocation начинаются с нуля.
Ниже приведен протокол запроса на вставку строк или столбцов таблицы:
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
}
}
]
}