Google関連

[Google Apps Script]Google ドライブにある画像をスライドに挿入する

最近取り扱っているGoogle Apps ScriptによるGoogle スライド操作ですが、今回はよりGASらしく“Google ドライブにある画像をスライドに挿入する”処理を行いたいと思います。

下記コードを実行する際、画像ファイルがあるGoogle ドライブのフォルダIDを調べる必要があるのですが、タカハシさんのサイトに詳しい説明が載っていましたので、そちらをご参照ください。

function myFunction() {
  /* 要変更 */
  const folder_id = "(Google ドライブのフォルダID)"; //画像ファイルがあるフォルダのID
  const image_name = "iai_battou_woman.png"; //挿入する画像ファイル名
  
  var fol = DriveApp.getFolderById(folder_id);
  var image = fol.getFilesByName(image_name).next(); //名前からファイル取得
  var prs = SlidesApp.getActivePresentation();
  var slide = prs.appendSlide(SlidesApp.PredefinedLayout.BLANK); //新規空白スライド追加
  slide.insertImage(image.getBlob()); //ファイルからBlob取得→画像として挿入
  
  SlidesApp.getUi().alert("処理が終了しました。");
}

上記コードを実行すると、新しい空白のスライドを追加し、その上にGoogle ドライブのフォルダ内にある、指定した画像ファイルを挿入します。

大まかな処理の流れは下記の通りです。

DriveApp.getFolderByIdメソッドでフォルダ取得

Folder.getFilesByNameメソッドでFileIterator取得

FileIterator.nextメソッドでFile取得

Slide.insertImageメソッドの引数にFile.getBlobメソッドで取得した画像ファイルのBlobを指定して、スライドに画像を挿入

Googleが提供しているサービス間の連携が取りやすいのはGASの大きな魅力の一つですね!

[Google Apps Script]すべてのスライド上のすべてのシェイプに対して処理を行う前のページ

[Google Apps Script]Google ドライブにある画像をスライドに一括挿入する次のページ

関連記事

  1. Google関連

    [Google Apps Script]Googleスライドのプレゼンテーションを他形式に変換する

    久しぶりにGASネタです。ドライブにある複数のプレゼンテーションを…

  2. Office関連

    CDOを使ってGmail送信を行うVBAマクロ(UTF-8対応版)

    2年ほど前にCDOを使ってGmail送信を行うVBAマクロについて記事…

  3. Google関連

    [Google Apps Script]スプレッドシート上にウィンドウを表示する

    Google Apps Scriptでスプレッドシート上にウィンド…

  4. Google関連

    Google Docs用アドオンを作成する。

    「Google Docs用アドオンストアがオープン、表計算や文書作成に…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

Translate

最近の記事

アーカイブ

PAGE TOP