基本閱讀

Google Slides API 可讓您讀取簡報、頁面和頁面元素資料。本頁的範例說明如何同時使用 presentations.getpresentations.pages.get 方法執行常見的讀取作業。

這些範例使用下列預留位置:

  • PRESENTATION_ID:指出您提供簡報 ID的位置。您可以從簡報網址中找出這個 ID 的值。
  • PAGE_ID:指出您提供頁面物件 ID的位置。您可以從網址或透過 API 讀取要求擷取此值。

這些範例會以 HTTP 要求的形式呈現,以便在不同語言中使用。範例是從這個示範簡報讀取,其中 1EAYk18WDjIG-zp_0vLm3CsfQh_i8eXc67Jo2O9C6VucPRESENTATION_ID。這份簡報第一張投影片PAGE_IDge63a4b4_1_0

本範例使用欄位遮罩,只會傳回特定要求的簡報、投影片和頁面元素資訊。使用欄位遮罩也能提升效能。

讀取投影片物件 ID

以下 presentations.get 程式碼範例說明如何從簡報中擷取所有投影片物件 ID 的清單。系統會依投影片順序傳回 ID,並可用於在後續 API 要求中指出特定投影片。您可以使用相同的方式,透過 fields=masters.objectIdfields=layout.objectId 取得主頁面和版面配置頁面的物件 ID。

以下是讀取投影片物件 ID 的要求通訊協定:

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

回應包含一個 Presentation 物件,其中包含要求的物件 ID:

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

讀取網頁中的元素物件 ID

以下 presentations.pages.get 程式碼範例說明如何擷取網頁上所有網頁元素的物件 ID 清單。

以下是讀取網頁元素物件 ID 的要求通訊協定:

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

回應包含一個 Page 物件,其中包含要求的物件 ID:

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

讀取網頁中的形狀元素

以下 presentations.pages.get 程式碼範例說明如何擷取網頁上所有 Shapes 的清單。您可以使用 fields 參數指定其他 PageElement 類型,以便擷取其他類型。舉例來說,fields=pageElements(line,table) 只會傳回 linetable 網頁元素的資訊 (如果網頁上有這些元素的話)。

以下是讀取網頁形狀元素的要求通訊協定:

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

回應包含一個 Page 物件,其中包含要求的形狀元素。空白大括號表示頁面元素不是形狀類型;在本例中,這些元素是圖片頁面元素。

{
  "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
                }
              }
            }
          ]
        }
      }
    },
    ...
  ]
}