スキップしてメイン コンテンツに移動

GASでスライド作成&図形追加

GASでスライド作成&図形追加

GAS連携でスライドを自動生成

Google Apps Script(GAS)を使えば、スプレッドシートやフォームのデータをもとにスライドを自動で作成できます。まずは SlidesApp.create() でプレゼンを作成し、getSlides() で既存のスライドを取得して編集します。以下は簡単なサンプルです。

function createPresentation() {
  // 新規プレゼンテーションを作成
  var presentation = SlidesApp.create('自動生成プレゼン');
  // 既存スライドを取得
  var slides = presentation.getSlides();
  // 1枚目にタイトルスライドを追加
  var titleSlide = presentation.appendSlide(SlidesApp.PredefinedLayout.TITLE);
  titleSlide.getPlaceholder(SlidesApp.PlaceholderType.TITLE).asShape().getText().setText('自動生成タイトル');
  // 2枚目にテキストスライドを追加
  var textSlide = presentation.appendSlide(SlidesApp.PredefinedLayout.TITLE_AND_BODY);
  textSlide.getPlaceholder(SlidesApp.PlaceholderType.BODY).asShape().getText().setText('ここに本文が入ります。');
  Logger.log('プレゼン作成完了: ' + presentation.getUrl());
}

このスクリプトをトリガーに設定すれば、毎日定期的にレポートを作成したり、フォームの回答をスライドに反映させたりできます。

SlidesAppでプレゼンを操作

SlidesApp は Google スライドの API をラップしたクラスで、スライドの追加・削除・編集を簡単に行えます。getSlides() でスライド配列を取得し、insertShape() で図形を挿入することも可能です。以下は、既存プレゼンに図形を追加する例です。

function addShapeToSlide() {
  var presentation = SlidesApp.openById('プレゼンIDをここに');
  var slides = presentation.getSlides();
  var firstSlide = slides[0];
  // 四角形を挿入
  var shape = firstSlide.insertShape(SlidesApp.ShapeType.RECTANGLE, 100, 100, 200, 100);
  shape.getText().setText('図形テキスト');
  shape.getFill().setSolidFill('#ffcc00');
  Logger.log('図形追加完了');
}

さらに、SlidesApp.PredefinedLayout を使えば、テンプレートに沿ったレイアウトを簡単に挿入できます。プレゼンの構成をスクリプトで管理することで、デザインの一貫性を保ちながら大量のスライドを生成できます。

図形追加とカスタマイズ

図形を追加した後は、位置・サイズ・色・テキストなどを細かく調整できます。insertShape() の戻り値は Shape オブジェクトで、getText()getFill() などのメソッドでプロパティを変更できます。以下は、図形をドラッグ可能にし、テキストを太字にする例です。

function customizeShape() {
  var presentation = SlidesApp.openById('プレゼンIDをここに');
  var slide = presentation.getSlides()[0];
  var shape = slide.insertShape(SlidesApp.ShapeType.ELLIPSE, 300, 200, 150, 150);
  shape.getText().setText('カスタム図形');
  shape.getText().getTextStyle().setBold(true);
  shape.getFill().setSolidFill('#00aaff');
  shape.setLineWeight(2);
  shape.setLineColor('#003366');
  // ドラッグ可能に設定(スライド内で自由に移動できるように)
  shape.setClickable(true);
  Logger.log('図形カスタマイズ完了');
}

このように GAS と SlidesApp を組み合わせることで、データドリブンなプレゼンテーションを自動生成し、図形やテキストを動的にカスタマイズできます。ビジネスレポート、教育資料、マーケティング資料など、さまざまな用途に応用可能です。

この記事はAIによって作成されました。

コメント