Apps Scriptリファレンス: Apps Script Reference |障害・課題追跡: IssueTracker |Google Workspace: Status Dashboard - Summary

2024年4月15日月曜日

Google Apps Scriptでスライドのページを指定して複数の図形を追加したい(Google Apps Script)


Googleスライドのページを指定して、 複数の図形(とテキスト)を追加したくて書いたコードです。



Code.gs
const values = ["hello", "hey", "hi"];
const url = "https://docs.google.com/presentation/d/SLIDE_ID/edit#slide=id.p";
const pageId = url.split("slide=id.")[1];
const slide = SlidesApp.openByUrl(url);
const pages = slide.getSlides();
const pageIndex = findPageIndex(pages, pageId);
const page = slide.getSlides()[pageIndex];

function insertNewShape() {
for(let i = 0; i < values.length; i++) {
const rect = page.insertShape(SlidesApp.ShapeType.RECTANGLE)
.setWidth(120)
.setHeight(30)
.setTop(0)
.setLeft(0);
rect.getText().setText(values[i])
.getTextStyle().setFontSize(12);
rect.getFill().setSolidFill("#C9DAF8");
}
}

function findPageIndex(pages, pageId) {
let pageIndex;
for(let i = 0; i < pages.length; i++) {
if(pages[i].getObjectId() === pageId) {
pageIndex = i;
}
}
return pageIndex;
}



図形の中に入れたい文字をvaluesに入れます。
図形を追加したいスライドのURLを url に入れます。

const values = ["hello", "hey", "hi"];
const url = "https://docs.google.com/presentation/d/SLIDE_ID/edit#slide=id.p";



insertNewShape() を実行すると、以下のように左上端に図形が追加されます。
同じ位置に3つの図形を追加しているため見た目は上の画像のように一つですが、

一つずつ選択して位置をずらすと下の画像のように確認できます。


Reference



Latest post

Google Formsで記述式の質問に字数制限を設定したい

記述式の質問には「回答の検証」を設定することができます フォームの編集画面 右下の︙メニューで「回答の検証」を選択します 検証方法には「数値」「テキスト」「長さ」「正規表現」という種類があります 今回は字数制限したいので「長さ」を選びます 長さには「最大文字数」か「最小文字数」を...