Google Slides API 可讓您建立、移動及刪除投影片。本頁的範例顯示使用 presentations.batchUpdate
方法的一些常見的投影片作業。
這些範例使用下列變數:
- PRESENTATION_ID:指示您在提供表示法 ID 的位置。您可以從簡報網址找出這個 ID 的值。
- PAGE_ID 和 PAGE_ID2:指示您提供頁面物件 ID 的位置。您可以使用網址或 API 讀取要求擷取此值。
這些範例會顯示為中立語言的 HTTP 要求。如要瞭解如何使用 Google API 用戶端程式庫,以不同語言實作批次更新,請參閱下列指南:建立投影片及新增形狀和文字。
複製投影片
以下 presentations.batchUpdate
程式碼範例說明如何使用 DuplicateObjectRequest
方法複製投影片,並將其插入簡報中的原始投影片。原始投影片由 PAGE_ID 指定。
這項要求可讓您指定是否要在文案中納入部分或所有頁面元素 ID (有一些限制)。在本範例中,原始投影片包含由 TABLE_ELEMENT_ID 指定的資料表元素,可對應至投影片副本 (由 COPY_PAGE_ID 指定) 中的新資料表 (由 COPY_TABLE_ELEMENT_ID 指定)。副本中所有其他元素都會有隨機 ID。
如要進一步瞭解如何複製 PageElement
(包括文字方塊、圖片、表格、基本形狀、線條和內嵌影片),請參閱「複製及編輯元素」範例。
複製投影片的要求通訊協定如下:
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" } } } ] }
製作投影片
下列 presentations.batchUpdate
程式碼範例說明如何使用 CreateSlideRequest
方法建立投影片,並將投影片插入簡報中的第四張投影片 (使用從零開始的 insertionIndex
)。
新投影片會設為使用 TITLE_AND_TWO_COLUMNS
的 PredefinedLayout
。您可以將字串指定為投影片的 PAGE_ID (須有一些限制),也可以省略要求中的欄位,讓 API 產生 PAGE_ID。
以下是建立投影片的要求通訊協定:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createSlide": { "objectId": "PAGE_ID", "insertionIndex": 3, "slideLayoutReference": { "predefinedLayout": "TITLE_AND_TWO_COLUMNS" } } } ] }
建立投影片並修改預留位置
下列 presentations.batchUpdate
程式碼範例說明如何使用 CreateSlideRequest
方法,透過 TITLE_AND_TWO_COLUMNS
的 PredefinedLayout
建立投影片。
您可以指定字串做為投影片的 PAGE_ID (但有一些限制)。placeholderIdMappings
使用 TITLE
的 Type
。TITLE_ID 會參照投影片的預留位置形狀,以便加以修改。
以下是建立投影片與修改預留位置的要求通訊協定:
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", } }, ] }
將投影片移到新位置
以下 presentations.batchUpdate
程式碼範例說明如何使用 UpdateSlidesPositionRequest
方法取得兩張投影片,並將其移至簡報開頭,維持兩者相對排序。
您必須按照現有的呈現順序提供指定的投影片 ID (PAGE_ID 和 PAGE_ID2),而且不可重複。以零為基礎的 insertionIndex
表示投影片的插入位置,取決於移動前的順序。這個值必須介於 0 與簡報中的投影片數量 (含首尾)。
如要將投影片移至新位置,請遵循下列要求通訊協定:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "updateSlidesPosition": { "slideObjectIds": [ PAGE_ID, PAGE_ID2 ], "insertionIndex": 0 } } ] }
設定投影片背景圖片
以下 presentations.batchUpdate
程式碼範例說明如何使用 UpdatePagePropertiesRequest
方法,設定 PAGE_ID 指定的投影片背景圖片。API 使用 IMAGE_URL 擷取圖片。
欄位遮罩用於指定只變更投影片背景,以保留其他屬性。使用欄位遮罩也能改善效能。
或者,UpdatePagePropertiesRequest
方法也可以將投影片背景設為單色。
以下是設定投影片背景圖片的要求通訊協定:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "updatePageProperties": { "objectId": PAGE_ID, "pageProperties": { "pageBackgroundFill": { "stretchedPictureFill": { "contentUrl": IMAGE_URL } } }, "fields": "pageBackgroundFill" } } ] }
產生縮圖
您可以呼叫 presentations.pages.getThumbnail
方法,以內容網址傳回網頁的縮圖,藉此在簡報中產生特定網頁的最新版縮圖。圖片網址的預設生命週期為 30 分鐘。
您也可以指定使用 ThumbnailProperties
欄位做為查詢參數,藉此指定傳回的 mimeType
和 thumbnailSize
。
使用下列 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" }