Tabellenvorgänge

Mit der Google Slides API können Sie Tabellen auf Seiten erstellen und bearbeiten. Die Beispiele auf dieser Seite zeigen einige gängige Tabellenvorgänge mit der Methode presentations.batchUpdate.

In diesen Beispielen werden die folgenden Variablen verwendet:

  • PRESENTATION_ID: Gibt an, wo Sie die Präsentations-ID angeben. Sie können den Wert für diese ID der Präsentations-URL entnehmen.
  • PAGE_ID: Gibt an, wo Sie die Seitenobjekt-IDs angeben. Sie können den Wert hierfür aus der URL oder über eine API-Leseanfrage abrufen.
  • TABLE_ID: Gibt an, wo Sie die Objekt-ID des Seitenelements für die Tabelle angeben, mit der Sie arbeiten. Sie können diese ID für von Ihnen erstellte Elemente angeben (mit einigen Einschränkungen) oder zulassen, dass die Slides API automatisch eines erstellt. Element-IDs können über eine API-Leseanfrage abgerufen werden.

Diese Beispiele werden als HTTP-Anfragen dargestellt, damit sie sprachneutral sind. Informationen zum Implementieren einer Batch-Aktualisierung in verschiedenen Sprachen mithilfe der Google API-Clientbibliotheken finden Sie unter Formen und Text hinzufügen.

Tabelle erstellen

Das folgende Codebeispiel für presentations.batchUpdate zeigt, wie Sie mit der Methode CreateTableRequest einer Folie, die durch PAGE_ID angegeben wird, eine Tabelle hinzufügen.

Diese Tabelle hat acht Zeilen und fünf Spalten. Die Slides API ignoriert alle size- oder transform-Felder, die als Teil von elementProperties angegeben wurden. Stattdessen erstellt die API eine Tabelle, die in etwa auf der Folie zentriert ist und nach Möglichkeit die angegebene Anzahl von Zeilen und Spalten aufnehmen kann.

Das folgende Anfrageprotokoll dient zum Erstellen einer Tabelle:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createTable": {
        "objectId": TABLE_ID,
        "elementProperties": {
          "pageObjectId": PAGE_ID,
        },
        "rows": 8,
        "columns": 5
      }
    }
  ]
}

Tabellenzeilen oder -spalten löschen

Das folgende Codebeispiel für presentations.batchUpdate zeigt, wie Sie mit der Methode DeleteTableRowRequest die sechste Zeile entfernen können. Anschließend wird mit der Methode DeleteTableColumnRequest die vierte Spalte entfernt. Die Tabelle wird durch TABLE_ID angegeben. Sowohl rowIndex als auch columnIndex innerhalb von cellLocation sind nullbasiert.

Folgendes ist das Anfrageprotokoll zum Löschen von Tabellenzeilen oder -spalten:

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
        }
      }
    }
  ]
}

Tabellendaten bearbeiten

Im folgenden Codebeispiel für presentations.batchUpdate wird gezeigt, wie Sie mit der Methode DeleteTextRequest den gesamten Text in einer Zelle innerhalb der textRange entfernen. Anschließend wird die Methode InsertTextRequest verwendet, um ihn durch den neuen Text „Kangaroo“ zu ersetzen.

Die Tabelle wird durch TABLE_ID angegeben. Die betroffene Zelle befindet sich in der fünften Zeile und dritten Spalte. Sowohl rowIndex als auch columnIndex innerhalb von cellLocation sind nullbasiert.

Folgendes ist das Anfrageprotokoll zum Bearbeiten von Tabellendaten:

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
      }
    }
  ]
}

Kopfzeilen von Tabellen formatieren

Das folgende Codebeispiel für presentations.batchUpdate zeigt, wie Sie mit der Methode UpdateTableCellPropertiesRequest die Kopfzeile eines Tabellenelements innerhalb der tableRange formatieren, die durch TABLE_ID angegeben wird. Dann wird mit der Methode TableCellProperties die Hintergrundfarbe der Kopfzeile auf Schwarz gesetzt.

In jeder folgenden Anfrage wird die Methode UpdateTextStyleRequest verwendet, um das Textformat in einer Zelle der Kopfzeile in textRange in fetter, weißer Cammbria-Schriftart (18 pt) festzulegen. Anschließend müssen Sie diese Anfrage für jede weitere Zelle im Header wiederholen.

Sowohl rowIndex als auch columnIndex innerhalb von location und cellLocation sind nullbasiert.

Das folgende Anfrageprotokoll dient zum Formatieren einer Kopfzeile einer Tabelle:

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....
  ]
}

So sieht die formatierte Kopfzeile nach diesen Aktualisierungen aus:

Formatieren Sie das Schemaergebnis für die Kopfzeile.

Tabellenzeilen oder -spalten einfügen

Das folgende Codebeispiel für presentations.batchUpdate zeigt, wie Sie mit der Methode InsertTableRowsRequest drei Zeilen unter der sechsten Zeile hinzufügen. Anschließend wird mit der Methode InsertTableColumnsRequest zwei Spalten links neben der vierten Spalte in derselben Tabelle hinzugefügt.

Die Tabelle wird durch TABLE_ID angegeben. Sowohl rowIndex als auch columnIndex innerhalb von cellLocation sind nullbasiert.

Folgendes ist das Anfrageprotokoll zum Einfügen von Tabellenzeilen oder -spalten:

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
      }
    }
  ]
}