Operacje na slajdach

Interfejs Google Slides API umożliwia tworzenie, przenoszenie i usuwanie slajdów. Przykłady na tej stronie pokazują niektóre typowe operacje na slajdach wykonywane za pomocą presentations.batchUpdate metody.

W tych przykładach używamy tych zmiennych:

  • PRESENTATION_ID – wskazuje, gdzie należy podać identyfikator prezentacji. Wartość tego identyfikatora możesz znaleźć w adresie URL prezentacji.
  • PAGE_ID i PAGE_ID2 – wskazują, gdzie należy podać identyfikatory obiektów strony. Wartość tego identyfikatora możesz pobrać z adresu URL lub za pomocą żądania odczytu interfejsu API.

Przykłady te są przedstawione jako żądania HTTP, aby były niezależne od języka. Aby dowiedzieć się jak zaimplementować aktualizację zbiorczą w różnych językach za pomocą bibliotek klienta interfejsu Google API, zapoznaj się z tymi przewodnikami: Tworzenie slajdu oraz Dodawanie kształtów i tekstu.

Kopiowanie slajdu

Ten przykładowy presentations.batchUpdate kod pokazuje, jak użyć metody DuplicateObjectRequest do skopiowania slajdu i wstawienia go za oryginałem w prezentacji. Oryginalny slajd jest określony przez PAGE_ID.

Żądanie umożliwia określenie, czy w kopii mają się znaleźć niektóre czy wszystkie identyfikatory elementów strony (z pewnymi ograniczeniami). W tym przykładzie oryginalny slajd zawiera element tabeli (określony przez TABLE_ELEMENT_ID), który jest mapowany na nową tabelę (określoną przez the COPY_TABLE_ELEMENT_ID) w kopii slajdu (określonej przez the COPY_PAGE_ID). Wszystkie inne elementy w kopii mają losowe identyfikatory.

Więcej informacji o kopiowaniu PageElement, w tym pól tekstowych, obrazów, tabel, kształtów podstawowych, linii i filmów osadzonych, znajdziesz w przykładzie Kopiowanie i edytowanie elementu.

Oto protokół żądania kopiowania slajdu:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "duplicateObject": {
        "objectId": PAGE_ID,
        "objectIds": {
          "PAGE_ID": "COPY_PAGE_ID",
          "TABLE_ELEMENT_ID": "COPY_TABLE_ELEMENT_ID"
        }
      }
    }
  ]
}

Tworzenie slajdu

Ten przykładowy presentations.batchUpdate kod pokazuje, jak użyć metody CreateSlideRequest do utworzenia slajdu i wstawienia go jako czwartego slajdu (za pomocą indeksu opartego na zerze insertionIndex) w prezentacji.

Nowy slajd jest ustawiony na używanie PredefinedLayout o wartości TITLE_AND_TWO_COLUMNS. Możesz określić ciąg znaków, który ma być używany jako the PAGE_ID slajdu (z pewnymi ograniczeniami), lub zezwolić interfejsowi API na wygenerowanie PAGE_ID przez pominięcie pola w żądaniu.

Oto protokół żądania utworzenia slajdu:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createSlide": {
        "objectId": "PAGE_ID",
        "insertionIndex": 3,
        "slideLayoutReference": {
          "predefinedLayout": "TITLE_AND_TWO_COLUMNS"
        }
      }
    }
  ]
}

Tworzenie slajdu i modyfikowanie obiektów zastępczych

Ten przykładowy presentations.batchUpdate kod pokazuje, jak użyć metody CreateSlideRequest do utworzenia slajdu za pomocą PredefinedLayout o wartości TITLE_AND_TWO_COLUMNS.

Możesz określić ciąg znaków, który ma być używany jako PAGE_ID slajdu (z pewnymi ograniczeniami). używany jest Type o wartości TITLE.placeholderIdMappings TITLE_ID odwołuje się do kształtu zastępczego slajdu dzięki czemu można go modyfikować.

Oto protokół żądania utworzenia slajdu i zmodyfikowania obiektów zastępczych:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createSlide": {
        "objectId": PAGE_ID,
        "slideLayoutReference": {
          "predefinedLayout": "TITLE_AND_TWO_COLUMNS"
        },
        "placeholderIdMappings": [
          {
            "layoutPlaceholder": {
              "type": "TITLE",
              "index": 0
            },
            "objectId": TITLE_ID,
           },
        ],
      }
    },
    {
      "insertText": {
        "objectId": TITLE_ID,
        "text": "This is my slide title",
      }
    },
  ]
}

Przenoszenie slajdów w nowe miejsce

Ten przykładowy kod presentations.batchUpdate pokazuje, jak użyć metody UpdateSlidesPositionRequest do przeniesienia 2 określonych slajdów na początek prezentacji z zachowaniem ich względnej kolejności.

Określone identyfikatory slajdów (PAGE_ID i PAGE_ID2) muszą być podane w istniejącej kolejności prezentacji, bez duplikatów. Indeks insertionIndex oparty na zerze wskazuje, gdzie należy wstawić slajdy, na podstawie kolejności przed przeniesieniem. Wartość musi mieścić się w zakresie od zera do liczby slajdów w prezentacji włącznie.

Oto protokół żądania przeniesienia slajdów w nowe miejsce:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "updateSlidesPosition": {
        "slideObjectIds": [
          PAGE_ID,
          PAGE_ID2
          ],
        "insertionIndex": 0
      }
    }
  ]
}

Ustawianie obrazu tła slajdu

Ten przykładowy presentations.batchUpdate kod pokazuje, jak użyć metody UpdatePagePropertiesRequest do ustawienia obrazu tła slajdu określonego przez PAGE_ID. Interfejs API pobiera obraz za pomocą IMAGE_URL.

Maska pola służy do określenia, że należy zmienić tylko tło slajdu, aby zachować inne właściwości. Używanie masek pól zwiększa też wydajność.

Alternatywnie można użyć metody UpdatePagePropertiesRequest, aby ustawić tło slajdu na jednolity kolor.

Oto protokół żądania ustawienia obrazu tła slajdu:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "updatePageProperties": {
        "objectId": PAGE_ID,
        "pageProperties": {
          "pageBackgroundFill": {
            "stretchedPictureFill": {
              "contentUrl": IMAGE_URL
            }
          }
        },
        "fields": "pageBackgroundFill"
      }
    }
  ]
}

Generowanie miniatury

Aby wygenerować miniaturę najnowszej wersji konkretnej strony w prezentacji, wywołaj metodę presentations.pages.getThumbnail , która zwraca miniaturę strony jako adres URL treści. Domyślny czas ważności adresu URL obrazu to 30 minut.

Możesz też określić mimeType i thumbnailSize zwracane za pomocą pola ThumbnailProperties jako parametr zapytania.

Oto protokół żądania wygenerowania miniatury strony z ustawionym ThumbnailProperties:

 GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID/pages/PAGE_ID/thumbnail?thumbnailProperties.mimeType=PNG&thumbnailProperties.thumbnailSize=MEDIUM
{
  "width": 800,
  "height": 450,
  "contentUrl": "CONTENT_URL"
}