Введение

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

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

Обзор API

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

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

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

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

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

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

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

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

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

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

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

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

Страницы

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

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

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

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

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

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

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

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

Работа со слайдами: Создать запрос слайда
Обновление слайдов позиции запроса
Запрос дубликата объекта
Обновление свойств страницыЗапрос
УдалитьОбъектЗапрос
Работа с элементами страницы: CreateShapeRequest
CreateLineRequest
UpdatePageElementTransformRequest
Запрос UpdateShapePropertiesRequest
Запрос дубликата объекта
УдалитьОбъектЗапрос
Работа с таблицами: CreateTableRequest
Инсертаблеровсреквест
Инсертатаблеколумнсреквест
Удалитьтаблероврекуест
Делететаблеколумнреквест
UpdateTableRowPropertiesRequest
UpdateTableColumnPropertiesRequest
UpdateTableBorderPropertiesRequest
UpdateTableCellPropertiesRequest
Запрос MergeTableCells
UnmergeTableCellsRequest
УдалитьОбъектЗапрос
Работа с диаграммами: Запрос CreateSheetsChart
ОбновитьлистыДиаграммаЗапрос
ЗаменитьAllShapesWithSheetsChartRequest
УдалитьОбъектЗапрос
Работа с изображениями и видео: CreateImageRequest
Создатьвидеозапрос
Запрос свойств обновления изображения
Обновление свойств видеозапрос
ЗаменитьAllShapesWithImageRequest
Запрос дубликата объекта
УдалитьОбъектЗапрос
Работа с текстом: Вставитьтекстовый запрос
Удалитьтекстовый запрос
ЗаменитьAllTextRequest
CreateParagraphBulletsRequest
Удалить абзац. Запрос маркеров.
UpdateTextStyleRequest
Запрос обновления абзаца стиля

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

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

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

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

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

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

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

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

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

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

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