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 スプレッドシートには、検索と置換機能(Ctrl + F)…

  2. Google関連

    【2018年9月版】Google API ConsoleでクライアントIDとクライアントシークレット…

    GoogleのAPIを呼び出すにあたり、クライアントIDとクライアント…

  3. Office関連

    Google TTSで文字列を読み上げるExcelアドイン

    前回の記事で書いたGoogle TTSで文字列を読み上げるマクロ(言語…

  4. Google関連

    [Google Apps Script]Google スライドでスクリプトを実行する

    最近私の周りでPowerPoint VBAがひっそりと流行中です。…

  5. Google関連

    [Google Apps Script]選択中のスライドに対してのみ処理を行う

    以前、Google スライドですべてのスライドに対して処理を行う方法に…

  6. Google関連

    [Google Apps Script]insertTextBoxメソッドでスライドにテキストボック…

    昨年の9月にスライド上にテキストボックスを挿入するスクリプトについて記…

コメント

  • コメント (0)

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

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

Time limit is exhausted. Please reload CAPTCHA.

Translate

Chinese (Simplified)Chinese (Traditional)EnglishFrenchGermanJapaneseKoreanRussianSpanish

最近の記事

アーカイブ

PAGE TOP