Grundkenntnisse

Mit der Google Slides API können Sie Elemente auf Präsentationsseiten hinzufügen und ändern. Die Beispiele auf dieser Seite zeigen, wie häufige Lesevorgänge mit dem presentations.batchUpdate .

In diesen Beispielen werden die folgenden Variablen verwendet:

  • PRESENTATION_ID: Gibt an, wo Sie die Präsentation ID fest. Sie können finden Sie den Wert für diese ID in der Präsentations-URL.
  • PAGE_ID: Gibt an, wo Sie das Seitenobjekt bereitstellen. ID fest. Sie können die Daten abrufen, den Wert hierfür aus der URL oder mithilfe einer API-Leseanfrage.
  • PAGE_ELEMENT_ID: Gibt an, wo Sie die Seite bereitstellen. Objekt-ID des Elements. Ich kann diese ID für von Ihnen erstellte Elemente angeben (mit einigen Einschränkungen) oder über die Slides API automatisch eine erstellen lassen. Element-IDs kann über eine API-Leseanfrage abgerufen werden.

Diese Beispiele werden als HTTP-Anfragen dargestellt, damit sie sprachneutral sind. Weitere Informationen Wie eine Batch-Aktualisierung in verschiedenen Sprachen mithilfe der Google API implementiert wird finden Sie unter Formen und Text.

Textfelder auf einer Folie einfügen

Die folgenden presentations.batchUpdate wird gezeigt, wie Sie mit der CreateShapeRequest zum Hinzufügen eines neuen Textfeldes (mit der Zeichenfolge "My added Text Box") zu einem Folie, die durch die PAGE_ID angegeben wird. In der Tabelle sind zwei Anfragen angegeben: den Anfragetext – einer zum Erstellen der Textfeldform (mit einer bestimmten Größe und Position) und eine zweite, um Text einzufügen.

Die erste Anfrage gibt das Objekt an, ID für in das Textfeld ein. Dadurch kann sie von der zweiten Anfrage im selben API-Aufruf verwendet werden, koordiniert.

Mit dem folgenden Anfrageprotokoll können Sie einer Folie ein Textfeld hinzufügen:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createShape": {
        "objectId": PAGE_ELEMENT_ID,
        "shapeType": "TEXT_BOX",
        "elementProperties": {
          "pageObjectId":  PAGE_ID,
          "size": {
            "width": {
              "magnitude": 150,
              "unit": "PT"
            },
            "height": {
              "magnitude": 50,
              "unit": "PT"
            }
          },
          "transform": {
            "scaleX": 1,
            "scaleY": 1,
            "translateX": 200,
            "translateY": 100,
            "unit": "PT"
          }
        }
      }
    },
    {
      "insertText": {
        "objectId": PAGE_ELEMENT_ID,
        "text": "My Added Text Box",
        "insertionIndex": 0
      }
    }
  ]
}

So fügen Sie einer Folie ein Bild hinzu:

Die folgenden presentations.batchUpdate wird gezeigt, wie Sie mit der CreateImageRequest , um der durch PAGE_ID angegebenen Folie ein Bild hinzuzufügen. Die Die API ruft das Bild mithilfe von IMAGE_URL ab. Diese Anfrage hat auch skaliert und positioniert das Bild auf der Folie.

Mit dem folgenden Anfrageprotokoll können Sie einer Folie ein Bild hinzufügen:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createImage": {
        "url": IMAGE_URL,
        "elementProperties": {
          "pageObjectId":  PAGE_ID,
          "size": {
            "width": {
              "magnitude": 30,
              "unit": "PT"
            },
            "height": {
              "magnitude": 30,
              "unit": "PT"
            }
          },
          "transform": {
            "scaleX": 1,
            "scaleY": 1,
            "translateX": 200,
            "translateY": 100,
            "unit": "PT"
          }
        }
      }
    }
  ]
}

Seiten oder Seitenelemente löschen

Die folgenden presentations.batchUpdate wird gezeigt, wie Sie mit der DeleteObjectRequest Methode zum Löschen des durch PAGE_ELEMENT_ID angegebenen Seitenelements und die von PAGE_ID angegebene Folie über zwei separate Anfragen.

Das Anfrageprotokoll zum Löschen einer Seite oder eines Seitenelements lautet:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "deleteObject": {
        "objectId": PAGE_ELEMENT_ID
      },
      "deleteObject": {
        "objectId":  PAGE_ID
      }
    }
  ]
}

Text in einer bestimmten Form bearbeiten

Die folgenden presentations.batchUpdate wird gezeigt, wie Sie mit der DeleteTextRequest -Methode ersetzt, um einen Teil des Textes in der durch angegebenen Form zu ersetzen. PAGE_ELEMENT_ID Löschen Sie dazu zunächst Text mithilfe von das nullbasierte startIndex und fügen Sie an dieser Position dann neuen Text ein. In dieser Beispiel: Die ursprüngliche Textzeichenfolge "My Shape Text: ????" durch "Meine Formtext: Trapez“.

Diese Anfrage wirkt sich nur auf Text in einer angegebenen Form aus. Text überall ersetzen in einer Präsentation können Sie ReplaceAllTextRequest .

Mit dem folgenden Anfrageprotokoll können Sie Text in einer bestimmten Form bearbeiten:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "deleteText": {
        "objectId": PAGE_ELEMENT_ID,
        "textRange": {
          "type": "FROM_START_INDEX",
          "startIndex": 15
        }
      }
    },
    {
      "insertText": {
        "objectId": PAGE_ELEMENT_ID,
        "text": "Trapezoid",
        "insertionIndex": 15
      }
    }
  ]
}

Form-Tag durch ein Bild ersetzen

Tags sind Textfelder oder Formen mit einem eindeutigen Zeichenfolgennamen, z. B. „Name des Kontoinhabers“.

Die folgenden presentations.batchUpdate wird gezeigt, wie Sie mit der CreateImageRequest um eine einzelne Instanz eines Shape-Tags durch ein Bild zu ersetzen. Dabei auf dieselbe Position heben und an die Größe des Tags anpassen, während die Seitenverhältnis.

Die Anfrage kann auch verwendet werden, um ein Bild durch ein anderes zu ersetzen. Die Anfrage besteht darin, das neue Image hinzuzufügen und anschließend das Tag zu löschen.

Mit der Methode CreateImageRequest wird nur eine angegebene Form ersetzt. Um Tag zu ersetzen Formen überall in einer Präsentation verwenden, verwenden Sie ReplaceAllShapesWithImageRequest .

Das Form-Tag hat Folgendes: PageElement Eigenschaften (die Sie mithilfe eines presentations.pages.get Anfrage:

{
  "objectId": PAGE_ELEMENT_ID,
  "size": {
    "width": {
      "magnitude": 3000000,
      "unit": "EMU"
    },
    "height": {
      "magnitude": 3000000,
      "unit": "EMU"
    }
  },
  "transform": {
    "scaleX": 1.13,
    "scaleY": 0.62,
    "translateX": 4800000,
    "translateY":  450000,
    "unit": "EMU"
  },
  "shape": {
    "shapeType": "RECTANGLE"
  }
}

Die Form befindet sich auf der durch PAGE_ID angegebenen Folie. Zum Angeben dem Bild, das die Form ersetzt, ruft die API das Bild mithilfe der Methode IMAGE_URL Um das Seitenverhältnis des Bildes beizubehalten, es aber gleichzeitig zu begrenzen mit der Tag-Größe vergleichen, CreateImageRequest legt die Bildgröße auf das Produkt aus Tag-Größe und den Bildskalierungsfaktoren auf 1. Weitere Informationen finden Sie unter Aspekt beibehalten Seitenverhältnis.

Mit dem folgenden Anfrageprotokoll wird ein Shape-Tag durch ein Bild ersetzt:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createImage": {
        "url": IMAGE_URL,
        "elementProperties": {
          "pageObjectId":  PAGE_ID,
          "size": {
            "width": {
              "magnitude": 3000000 * 1.13,
              "unit": "EMU"
            },
            "height": {
              "magnitude": 3000000 * 0.62,
              "unit": "EMU"
            }
          },
          "transform": {
            "scaleX": 1,
            "scaleY": 1,
            "translateX": 4800000,
            "translateY": 450000,
            "unit": "PT"
          }
        }
      }
    },
    {
      "deleteObject": {
        "objectId": PAGE_ELEMENT_ID
      }
    }
  ]
}