Einführung

Mit der Google Slides API können Sie Google-Präsentationen erstellen und bearbeiten.

Apps lassen sich in die Google Slides API einbinden. So können aus Präsentationen, die vom Nutzer und vom System bereitgestellt werden, automatisch ansprechende Präsentationen erstellt werden. Sie können beispielsweise Kundendetails aus einer Datenbank verwenden und diese mit vordefinierten Vorlagen und ausgewählten Konfigurationsoptionen kombinieren, um fertige Präsentationen in einem Bruchteil der Zeit zu erstellen, die für die manuelle Erstellung erforderlich wäre.

Übersicht über die API

Die Sammlung presentations bietet Methoden zum Abrufen und Aktualisieren von Elementen in der Präsentation.

Vermutlich werden Sie mit der Slides API hauptsächlich Präsentationen erstellen und aktualisieren. Dazu verwenden Sie die Methode batchUpdate. Diese Methode verwendet eine Liste von Request-Objekten, mit denen Sie unter anderem Folgendes tun können:

  • Folien erstellen
  • Elemente wie Formen oder Tabellen in Folien einfügen
  • Text einfügen, ändern und entfernen
  • Transformationen auf Elemente anwenden
  • Reihenfolge der Folien ändern

Weitere Informationen finden Sie unter Batch-Updates. In den Leitfäden für den Einstieg finden Sie ein einfaches End-to-End-Beispiel für die Verwendung der API.

Die Struktur einer Präsentation

Eine Präsentation in der Slides API besteht aus Seiten, die Seitenelemente enthalten.

Die ID einer Präsentation kann von der URL abgeleitet werden:

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

Die Präsentations-ID ist ein String mit Buchstaben, Ziffern und einigen Sonderzeichen. Mit dem folgenden regulären Ausdruck kann die Präsentations-ID aus einer Google Tabellen-URL extrahiert werden:

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

Wenn Sie mit der Drive API vertraut sind, entspricht presentationId der ID der Ressource File.

Seiten und Seitenelemente werden durch Objekt-IDs identifiziert.

Seiten

Google Präsentationen hat die folgenden Arten von Seiten:

Master Mit Folienmastern werden die standardmäßigen Textstile, Hintergrund- und Seitenelemente definiert, die in allen Folien mit diesem Master verwendet werden. Seitenelemente, die auf allen Folien erscheinen müssen, sollten dem Master hinzugefügt werden. Die meisten Präsentationen haben einen Master, einige können aber auch mehrere oder keine Master haben.
Layouts Layouts dienen als Vorlage dafür, wie Seitenelemente standardmäßig mithilfe von Layouts auf Folien angeordnet werden. Jedes Layout ist einem Master zugeordnet.
Präsentationen Diese Seiten enthalten die Inhalte, die Sie Ihrem Publikum präsentieren. Die meisten Folien basieren auf einem Master und einem Layout. Sie können bei der Erstellung festlegen, welches Layout für die einzelnen Folien verwendet werden soll.
Hinweise Diese Seiten enthalten Inhalte für Präsentationen sowie eine Form mit den Vortragsnotizen der Folie. Für jede Folie gibt es eine entsprechende Notizenseite. Nur der Text in den Vortragsnotizen kann mit der Slides API geändert werden.
Notizen-Master Notes-Master definieren die Standardtextstile und Seitenelemente für alle Notizenseiten. Notes-Master sind in der Slides API schreibgeschützt.

Seitenelemente

Seitenelemente sind die visuellen Komponenten, die auf Seiten platziert werden. Die API enthält verschiedene Arten von Seitenelementen:

Gruppe Eine Reihe von Seitenelementen, die als einzelne Einheit behandelt werden. Sie können gemeinsam verschoben, skaliert und gedreht werden.
Form Ein einfaches visuelles Objekt wie Rechtecke, Ellipsen und Textfelder Formen können Text enthalten. Sie sind daher die häufigsten Seitenelemente zum Erstellen von Folien.
Bild Eine in Google Präsentationen importierte Grafik
Video Ein in Google Präsentationen importiertes Video
Zeile Eine Linie, Kurve oder ein Verbindungselement.
Tabelle Ein Raster mit Inhalten.
WordArt Ein visuelles Textelement, das eher wie eine Form funktioniert
Tabellendiagramm Ein Diagramm, das aus Google Tabellen in Google Präsentationen importiert wurde

Batch-Updates

Mit der Methode batchUpdate können Sie viele Aspekte einer Präsentation aktualisieren. Änderungen werden in einem Batch zusammengefasst. Wenn also eine Anfrage fehlschlägt, wird keine der (möglicherweise abhängigen) Änderungen geschrieben.

Für die Methode batchUpdate werden ein oder mehrere Anfrageobjekte verwendet, die jeweils eine Art von Anfrage angeben. Es gibt viele verschiedene Arten von Anfragen. Hier sehen Sie eine Aufschlüsselung der Anfragetypen in verschiedene Kategorien.

Mit Präsentationen arbeiten: CreateSlideRequest
UpdateSlidesPositionRequest
DuplicateObjectRequest
UpdatePagePropertiesRequest
DeleteObjectRequest
Mit Seitenelementen arbeiten: CreateShapeRequest
CreateLineRequest
UpdatePageElementTransformRequest
UpdateShapePropertiesRequest
DuplicateObjectRequest
DeleteObjectRequest
Mit Tabellen arbeiten: CreateTableRequest
InsertTableRowsRequest
InsertTableColumnRequest
DeleteTableRowRequest
DeleteTableColumnRequest
UpdateTableRowPropertiesRequest
UpdateTableColumnPropertiesRequest
UpdateTableBorderPropertiesRequest
UpdateTableCellPropertiesRequest
MergeTableCellsRequest
UnmergeTableCellsRequest
DeleteObjectRequest
Mit Diagrammen arbeiten: CreateSheetsChartRequest
RefreshSheetsChartRequest
ReplaceAllShapesWithSheetsChartRequest
DeleteObjectRequest
Mit Bildern und Videos arbeiten: CreateImageRequest
CreateVideoRequest
UpdateImagePropertiesRequest
UpdateVideoPropertiesRequest
ReplaceAllShapesWithImageRequest
DuplicateObjectRequest
DeleteObjectRequest
Mit Text arbeiten: InsertTextRequest
DeleteTextRequest
ReplaceAllTextRequest
CreateParagraphBulletsRequest
DeleteParagraphBulletsRequest
UpdateTextStyleRequest
UpdateParagraphStyleRequest

Die Methode batchUpdate gibt einen Antworttext zurück, der eine Antwort für jede Anfrage enthält. Jede Antwort belegt denselben Index wie die entsprechende Anfrage. Bei Anfragen ohne entsprechende Antwort ist die Antwort bei diesem Index leer. Die verschiedenen Create-Anfragen haben normalerweise Antworten, sodass Sie die ID des neu hinzugefügten Objekts kennen.

Mit Objekt-IDs arbeiten

Eine Präsentation in der Slides API besteht aus Seiten und Seitenelementen. Diese Objekte enthalten einen Objekt-ID-String, der in einer Präsentation eindeutig ist.

Objekt-IDs beim Erstellen angeben

Wenn Sie Seiten oder Seitenelemente mit der Methode batchUpdate erstellen, können Sie optional eine Objekt-ID für das neue Objekt angeben. Auf diese Weise können Sie ein Objekt erstellen und innerhalb derselben BatchUpdate-Anfrage ändern, um die Anzahl der Aufrufe der Slides API zu minimieren und die Kontingentnutzung zu reduzieren.

Wir empfehlen in den meisten Fällen, eine zufällige Objekt-ID zu generieren. Wenn Sie beispielsweise Java verwenden, sollte java.util.UUID.randomUUID().toString() gut funktionieren.

Wenn Ihre Anwendung Objekte über einen längeren Zeitraum verfolgen möchte, sollten Sie sich nicht auf die Objekt-ID verlassen, weil sie sich möglicherweise ändern kann. Weitere Informationen finden Sie im folgenden Abschnitt.

Objekte ohne Verwendung der Objekt-ID verfolgen

Wenn Sie eine Slides API-Anfrage senden, wird die Objekt-ID normalerweise beibehalten. (Ausnahmen werden in der Referenzdokumentation der Methode aufgeführt.) Beim Erstellen einer Kopie einer ganzen Präsentation mit der Drive API werden auch Objekt-IDs beibehalten.

Sie können jedoch nicht davon ausgehen, dass eine Objekt-ID unverändert bleibt, nachdem eine Präsentation in der Präsentationen-UI geändert wurde. Wenn jemand beispielsweise über die Benutzeroberfläche von Google Präsentationen ein Seitenelement kopiert und dann das Original löscht, hat das Seitenelement jetzt eine neue eindeutige ID und die ID, die Sie zuvor über die API angegeben haben, geht verloren. Daher raten wir davon ab, Objekt-IDs im Speicher Ihrer Anwendung zu speichern. Stattdessen sollten Sie Objekte in der Präsentation nach Text oder Alt-Text suchen.

Bei neu erstellten Präsentationen werden normalerweise einheitliche IDs für Standardfolien, Master und Textfelder verwendet. Da sich diese IDs im Laufe der Zeit ändern können, empfehlen wir, diese Funktion nicht zu verwenden. Suchen Sie stattdessen mithilfe des Präsentationsobjekts, das von create() oder get() zurückgegeben wird, die Elemente, die Sie ändern möchten.