Введение

API Google Slides позволяет создавать и изменять презентации Google Slides.

Приложения могут интегрироваться с API Google Slides для автоматического создания красивых презентаций на основе данных, предоставленных пользователями и системой. Например, вы можете использовать данные клиентов из базы данных и комбинировать их с готовыми шаблонами и выбранными параметрами конфигурации, чтобы создавать готовые презентации гораздо быстрее, чем вручную.

Обзор API

Коллекция презентаций предоставляет методы, позволяющие получать и обновлять элементы презентации.

Большая часть вашей работы с API Slides, вероятно, будет заключаться в создании и обновлении презентаций. Для этого используется метод batchUpdate ; этот метод принимает список объектов Request , которые позволяют выполнять следующие действия:

  • Создать слайды
  • Добавляйте на слайды элементы, такие как фигуры или таблицы.
  • Вставка, изменение и удаление текста
  • Применить преобразования к элементам
  • Изменить порядок слайдов

Подробнее см. в разделе «Пакетные обновления» . Простой пример использования API можно найти в руководствах по началу работы.

Структура презентации

Презентация в API Slides состоит из страниц, которые содержат элементы страниц.

Идентификатор презентации можно получить из URL:

https://docs.google.com/presentation/d/presentationId/edit

Идентификатор презентации — это строка, содержащая буквы, цифры и некоторые специальные символы. Для извлечения идентификатора презентации из URL-адреса Google Таблиц можно использовать следующее регулярное выражение:

/presentation/d/([a-zA-Z0-9-_]+)

Если вы знакомы с API Диска, то presentationId соответствует идентификатору ресурса Файл .

Страницы и элементы страниц идентифицируются идентификаторами объектов.

Страницы

В Google Slides есть следующие типы страниц:

Мастера Мастер-слайды определяют стили текста, фон и элементы страницы по умолчанию, которые отображаются на всех слайдах, использующих этот мастер-слайд. Элементы страницы, которые должны отображаться на всех слайдах, следует добавлять в мастер-слайд. В большинстве презентаций используется один мастер-слайд, но в некоторых их может быть несколько или ни одного.
Макеты Макеты служат шаблоном для расположения элементов страницы на слайдах по умолчанию. Каждый макет связан с одним мастером.
Слайды Эти страницы содержат контент, который вы представляете своей аудитории. Большинство слайдов основаны на шаблоне и макете. Вы можете указать, какой макет использовать для каждого слайда при его создании.
Примечания Эти страницы содержат содержимое для раздаточных материалов презентации, включая фигуру с заметками докладчика к слайду. Каждому слайду соответствует одна страница с заметками. С помощью API слайдов можно изменять только текст в фигуре с заметками докладчика.
Мастера нот Мастера заметок определяют стили текста и элементы страницы по умолчанию для всех страниц заметок. В API Slides мастера заметок доступны только для чтения.

Элементы страницы

Элементы страницы — это визуальные компоненты, размещаемые на страницах. API предоставляет несколько типов элементов страницы:

Группа Набор элементов страницы, которые рассматриваются как единое целое. Их можно перемещать, масштабировать и вращать вместе.
Форма Простой визуальный объект, такой как прямоугольники, эллипсы и текстовые поля. Фигуры могут содержать текст, поэтому они являются наиболее распространёнными элементами страницы для создания слайдов.
Изображение Графика, импортированная в Slides.
Видео Видео, импортированное в Slides.
Линия Визуальная линия, кривая или соединитель.
Стол Сетка контента.
WordArt Визуальный текстовый элемент, который ведет себя скорее как фигура.
SheetsChart Диаграмма, импортированная в Презентации из Google Таблиц.

Пакетные обновления

Метод batchUpdate позволяет обновлять множество аспектов презентации. Изменения группируются в пакет, так что если один запрос не будет выполнен, никакие другие (потенциально зависимые) изменения не будут записаны.

Метод batchUpdate принимает один или несколько объектов Request , каждый из которых определяет один тип запроса для выполнения. Существует множество различных типов запросов. Ниже представлено описание типов запросов, сгруппированных по различным категориям.

Работа со слайдами: CreateSlideRequest
UpdateSlidesPositionRequest
DuplicateObjectRequest
UpdatePagePropertiesRequest
DeleteObjectRequest
Работа с элементами страницы: CreateShapeRequest
CreateLineRequest
UpdatePageElementTransformRequest
UpdateShapePropertiesRequest
DuplicateObjectRequest
DeleteObjectRequest
Работа с таблицами: CreateTableRequest
InsertTableRowsRequest
InsertTableColumnsRequest
DeleteTableRowRequest
DeleteTableColumnRequest
UpdateTableRowPropertiesRequest
UpdateTableColumnPropertiesRequest
UpdateTableBorderPropertiesRequest
UpdateTableCellPropertiesRequest
MergeTableCellsRequest
UnmergeTableCellsRequest
DeleteObjectRequest
Работа с диаграммами: CreateSheetsChartRequest
RefreshSheetsChartRequest
ReplaceAllShapesWithSheetsChartRequest
DeleteObjectRequest
Работа с изображениями и видео: CreateImageRequest
CreateVideoRequest
UpdateImagePropertiesRequest
UpdateVideoPropertiesRequest
ReplaceAllShapesWithImageRequest
DuplicateObjectRequest
DeleteObjectRequest
Работа с текстом: InsertTextRequest
DeleteTextRequest
ReplaceAllTextRequest
CreateParagraphBulletsRequest
DeleteParagraphBulletsRequest
UpdateTextStyleRequest
UpdateParagraphStyleRequest

Метод batchUpdate возвращает тело ответа , содержащее элемент Response для каждого запроса. Каждый ответ занимает тот же индекс, что и соответствующий запрос; для запросов без соответствующего ответа ответ по этому индексу будет пустым. Различные запросы Create обычно содержат ответы, поэтому вы можете узнать идентификатор добавленного объекта.

Работа с идентификаторами объектов

Презентация в API Slides состоит из страниц и элементов страниц . Эти объекты включают строку идентификатора объекта , уникальную в рамках презентации.

Указание идентификаторов объектов при создании

При создании страниц или элементов страниц с помощью метода batchUpdate вы можете дополнительно указать идентификатор нового объекта. Это позволяет создавать объект и изменять его в рамках одного запроса batchUpdate, минимизируя количество вызовов API Slides и сокращая время выполнения.
использование квоты .

В большинстве случаев мы рекомендуем генерировать случайный идентификатор объекта. Например, если вы используете Java, java.util.UUID.randomUUID().toString() должен подойти.

Если ваше приложение должно отслеживать объекты в течение длительного периода времени, не полагайтесь на идентификатор объекта, так как он может измениться. Подробнее см. в следующем разделе.

Отслеживание объектов без использования идентификатора объекта

При выполнении запроса к API Slides идентификатор объекта обычно сохраняется. (Любые исключения описаны в справочной документации метода.) Создание копии всей презентации с помощью API Drive также сохраняет идентификаторы объектов.

Однако вы не можете рассчитывать на то, что идентификатор объекта останется неизменным после изменения презентации в пользовательском интерфейсе Slides. Например, если кто-то использует интерфейс Slides для копирования и вставки элемента страницы, а затем удалит исходный элемент, у элемента страницы появится новый уникальный идентификатор, а идентификатор, ранее предоставленный вами через API, будет утерян. Поэтому мы не рекомендуем хранить идентификаторы объектов в хранилище вашего приложения. Вместо этого следует искать объекты в презентации по их текстовому содержимому или альтернативному тексту.

В новых презентациях обычно используется единый набор идентификаторов для слайдов, шаблонов и текстовых полей по умолчанию. Эти идентификаторы могут со временем меняться, поэтому мы не рекомендуем полагаться на эту функцию. Вместо этого найдите элементы, которые вы хотите изменить, с помощью объекта презентации, возвращаемого вызовами create() или get() .