您可以使用 Advanced Slides 服務,透過 Apps Script 存取 Slides API。這項服務可讓指令碼讀取及編輯 Google 簡報中的內容。
參考資料
如要詳細瞭解這項服務,請參閱 Slides API 的參考說明文件。與 Apps Script 中的所有進階服務一樣,進階 Google 簡報服務使用的物件、方法和參數,都與公開 API 相同。詳情請參閱「如何判斷方法簽章」。
如要回報問題及尋求其他支援,請參閱 Google 簡報支援指南。
程式碼範例
下列程式碼範例使用 API 的第 1 版。
建立新簡報
以下範例說明如何使用 Slides 進階服務建立新簡報。這相當於「建立新簡報」食譜範例。
新建投影片
以下範例示範如何在簡報中建立新投影片,並指定索引和預先定義的版面配置。這等同於「建立新投影片」食譜範例。
讀取網頁元素物件 ID
以下範例說明如何使用欄位遮罩,擷取特定投影片上每個頁面元素的物件 ID。這相當於「從網頁讀取元素物件 ID」食譜範例。
新增文字方塊
以下範例說明如何在投影片中新增文字方塊,並在其中加入文字。這相當於「在投影片中新增文字方塊」食譜範例。
格式形狀文字
以下範例說明如何設定形狀文字的格式、更新文字顏色、字型,以及加上底線。這相當於「在圖案或文字方塊中設定文字格式」食譜範例。
最佳做法
批次更新
使用 Slides Advanced Service 時,請將多個要求合併至陣列,而非在迴圈中呼叫 batchUpdate
。
請勿在迴圈中呼叫 batchUpdate
。
var titles = ["slide 1", "slide 2"];
for (var i = 0; i < titles.length; i++) {
Slides.Presentations.batchUpdate(preso, {
requests: [{
createSlide: ...
}]
});
}
做法:使用更新陣列呼叫 batchUpdate
。
var requests = [];
var titles = ["slide 1", "slide 2"];
for (var i = 0; i < titles.length; i++) {
requests.push({ createSlide: ... });
}
Slides.Presentations.batchUpdate(preso, {
requests: requests
});