Czytanie podstawowe

Interfejs API Prezentacji Google umożliwia odczytywanie danych prezentacji, stron i elementów strony. Przykłady na tej stronie pokazują, jak wykonywać typowe operacje odczytu przy użyciu metod presentations.get i presentations.pages.get.

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

  • PRESENTATION_ID – wskazuje, gdzie należy podać identyfikator prezentacji. Wartość tego identyfikatora można znaleźć w adresie URL prezentacji.
  • PAGE_ID – wskazuje, gdzie należy podać identyfikator obiektu strony. Wartość tę możesz pobrać z adresu URL lub za pomocą żądania odczytu interfejsu API.

Te przykłady są prezentowane jako żądania HTTP bez względu na język. Przykłady odczytywane z tej przykładowej prezentacji, której PRESENTATION_ID jest wartością 1EAYk18WDjIG-zp_0vLm3CsfQh_i8eXc67Jo2O9C6Vuc. PAGE_ID na pierwszym slajdzie w tej prezentacji to ge63a4b4_1_0.

W podanych tutaj przykładach użyto masek pól do zwrócenia tylko żądanych informacji o prezentacji, slajdzie i elemencie strony. Stosowanie masek pól poprawia też wydajność.

Odczytywanie identyfikatorów obiektów slajdu

Poniższy przykładowy kod presentations.get pokazuje, jak pobrać z prezentacji listę wszystkich identyfikatorów obiektów slajdów. Identyfikatory są zwracane w kolejności prezentacji slajdów i mogą służyć do wskazywania konkretnych slajdów w kolejnych żądaniach do interfejsu API. Identyfikatory obiektów dla stron głównych i stron układu można uzyskać w ten sam sposób za pomocą fields=masters.objectId i fields=layout.objectId.

Oto protokół żądań odczytu identyfikatorów obiektów slajdów:

GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID?fields=slides.objectId

Odpowiedź składa się z obiektu Presentation zawierającego żądane identyfikatory obiektów:

{
  "slides": [
    {
      "objectId": "ge63a4b4_1_0"
    },
    {
      "objectId": "ge63a4b4_1_9"
    },
    {
      "objectId": "ge63a4b4_1_23"
    },
    {
      "objectId": "ge63a4b4_1_35"
    },
    {
      "objectId": "ge63a4b4_1_43"
    }
  ]
}

Odczytuj identyfikatory obiektów elementów ze strony

Poniższy przykładowy kod presentations.pages.get pokazuje, jak pobrać listę identyfikatorów obiektów dla wszystkich elementów strony na stronie.

Oto protokół żądania odczytu identyfikatorów obiektów elementów ze strony:

GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID/pages/PAGE_ID?fields=pageElements.objectId

Odpowiedź składa się z obiektu Page zawierającego żądane identyfikatory obiektów:

{
  "pageElements": [
    {
      "objectId": "ge63a4b4_1_5"
    },
    {
      "objectId": "ge63a4b4_1_6"
    },
    {
      "objectId": "ge63a4b4_1_7"
    },
    {
      "objectId": "ge63a4b4_1_8"
    }
  ]
}

Odczytywanie elementów kształtu ze strony

Poniższy przykładowy kod presentations.pages.get pokazuje, jak pobrać listę wszystkich elementów Shapes na stronie. Możesz pobierać inne rodzaje PageElement, określając je za pomocą parametru fields. Na przykład funkcja fields=pageElements(line,table) zwraca tylko informacje o elementach strony line i table, jeśli są na niej dostępne.

Oto protokół żądań odczytujący elementy kształtu ze strony:

GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID/pages/PAGE_ID?fields=pageElements.shape

Odpowiedź składa się z obiektu Page zawierającego żądane elementy kształtu. Puste nawiasy oznaczają elementy strony, które nie mają typu kształtu; w tym przypadku są to elementy strony ze zdjęciami.

{
  "pageElements": [
    {},
    {},
    {
      "shape": {
        "shapeProperties" {
          "outline" {
            "dashStyle": "SOLID",
            "outlineFill": {
              "solidFill": {
                "alpha": 1,
                "color": {
                  "rgbColor": {}
                }
              },
            },
            "propertyState": "NOT_RENDERED",
            "weight": {
              "magnitude": 9525,
              "unit": "EMU"
            }
          },
          "shadow": {
            "alignment": "BOTTOM_LEFT",
            "alpha": 1,
            "blurRadius": {
              "unit": "EMU"
            },
            "color": {
              "rgbColor": {}
            },
            "propertyState": "NOT_RENDERED",
            "rotateWithShape": false,
            "transform": {
              "scaleX": 1,
              "scaleY": 1,
              "unit": "EMU"
            },
            "type": "OUTER"
          },
          "shapeBackgroundFill" : {
            "propertyState": "NOT_RENDERED",
            "solidFill": {
              "alpha": 1,
              "color": {
                "rgbColor: {
                  "blue": 1,
                  "green": 1,
                  "red": 1
                }
              }
            }
          }
        },
        "shapeType": "TEXT_BOX",
        "text": {
          "textElements": [
            {
              "endIndex": 11,
              "paragraphMarker": {
                "style": {
                  "alignment": "START",
                  "direction": "LEFT_TO_RIGHT",
                  "indentEnd": {
                    "unit": "PT"
                  },
                  "indentFirstLine": {
                    "unit": "PT"
                  },
                  "indentStart": {
                    "unit": "PT"
                  },
                  "lineSpacing": 100,
                  "spaceAbove": {
                    "unit": "PT"
                  },
                  "spaceBelow": {
                    "unit": "PT"
                  },
                  "spacingMode": "COLLAPSE_LISTS"
                }
              }
            },
            {
              "endIndex": 11,
              "textRun": {
                "content": "Baby Album\n",
                "style": {
                  "backgroundColor": {},
                  "baselineOffset": "NONE",
                  "bold": false,
                  "fontFamily": "Arial",
                  "fontSize": {
                    "magnitude": 14,
                    "unit": "PT"
                  },
                  "foregroundColor": {
                    "opaqueColor": {
                      "rgbColor": {}
                    }
                  },
                  "italic": false,
                  "smallCaps": false,
                  "strikethrough": false,
                  "underline": false
                }
              }
            }
          ]
        }
      }
    },
    ...
  ]
}