Operacje na slajdach

Interfejs Prezentacji Google umożliwia tworzenie, przenoszenie i usuwanie slajdów. Na tej stronie znajdują się przykłady typowych operacji na slajdach z użyciem metody presentations.batchUpdate.

W tych przykładach używane są następujące zmienne:

  • PRESENTATION_ID – wskazuje, gdzie podajesz identyfikator prezentacji. Wartość tego identyfikatora możesz sprawdzić w adresie URL prezentacji.
  • PAGE_ID i PAGE_ID2 – wskazuje miejsce, w którym podajesz identyfikatory obiektów strony. Wartość tego parametru można pobrać z adresu URL lub za pomocą żądania odczytu interfejsu API.

Te przykłady są prezentowane jako żądania HTTP neutralne pod kątem języka. Aby dowiedzieć się, jak wdrożyć aktualizację zbiorczą w różnych językach przy użyciu bibliotek klienta interfejsu API Google, zapoznaj się z poniższymi przewodnikami: Tworzenie slajdu oraz Dodawanie kształtów i tekstu.

Kopiowanie slajdu

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

Prośba pozwala określić, czy w kopii powinny znaleźć się niektóre czy wszystkie identyfikatory elementów strony (z pewnymi ograniczeniami). W tym przykładzie pierwotny slajd zawiera element tabeli (określony przez atrybut TABLE_ELEMENT_ID) zmapowany na nową tabelę (określoną przez COPY_TABLE_ELEMENT_ID) w kopii slajdu (określoną przez COPY_PAGE_ID). Pozostałe elementy w kopii mają losowe identyfikatory.

Więcej informacji o kopiowaniu PageElement, w tym o polach tekstowych, obrazach, tabelach, podstawowych kształtach, liniach i osadzonych filmach, znajdziesz w przykładzie Kopiowanie i edytowanie elementów.

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

Utwórz slajd

Poniższy przykładowy kod presentations.batchUpdate pokazuje, jak użyć metody CreateSlideRequest do utworzenia slajdu i wstawienia go na czwartym slajdzie (z użyciem metody zerowej insertionIndex) w prezentacji.

Nowy slajd jest ustawiony do używania PredefinedLayout parametru TITLE_AND_TWO_COLUMNS. Możesz określić ciąg znaków, który będzie używany jako PAGE_ID na slajdzie (z pewnymi ograniczeniami), lub zezwolić interfejsowi API na wygenerowanie PAGE_ID przez pominięcie tego pola w żądaniu.

Oto protokół żądania do 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

Poniższy przykładowy kod presentations.batchUpdate pokazuje, jak użyć metody CreateSlideRequest do utworzenia slajdu za pomocą PredefinedLayout elementu TITLE_AND_TWO_COLUMNS.

Możesz określić ciąg znaków, który będzie używany jako element PAGE_ID na slajdzie (z pewnymi ograniczeniami). placeholderIdMappings używa Type elementu TITLE. Pole TITLE_ID odwołuje się do kształtu zastępczego slajdu, więc można go zmodyfikować.

Oto protokół żądania do utworzenia slajdu i modyfikowania 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

Poniższy przykładowy kod presentations.batchUpdate pokazuje, jak użyć metody UpdateSlidesPositionRequest, aby przenieść 2 określone slajdy i przenieść je na początek prezentacji z zachowaniem ich względnej kolejności.

Podane identyfikatory slajdów (PAGE_ID i PAGE_ID2) należy podać w obecnej kolejności prezentacji (bez duplikatów). Wartość insertionIndex liczona od zera wskazuje miejsce, w którym slajdy powinny zostać wstawione, zgodnie z kolejnością przed przeniesieniem. Wartość musi mieścić się w zakresie od 0 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

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

Maska pola pozwala określić, że aby zachować pozostałe właściwości, należy zmienić tylko tło slajdu. Używanie masek pól również poprawia wydajność.

Za pomocą metody UpdatePagePropertiesRequest możesz też ustawić jednolity kolor tła slajdu.

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

Wygeneruj miniaturę

Możesz wygenerować miniaturę najnowszej wersji konkretnej strony w prezentacji, wywołując metodę presentations.pages.getThumbnail, która jako adres URL treści zwraca obraz miniatury strony. Domyślny czas trwania obrazu w adresie URL to 30 minut.

Możesz też podać zwrócone wartości mimeType i thumbnailSize, używając pola ThumbnailProperties jako parametru zapytania.

Oto protokół żądania do wygenerowania miniatury strony z zestawem 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"
}