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 Apps Scriptネタです。今回はスラ…

  2. Office関連

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

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

  3. Google関連

    [Google Apps Script]スプレッドシートのセル範囲に指定した値が含まれているかを判定…

    先日、もり(@moripro3)さんから、「スプレッドシートの二次元配…

  4. Google関連

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

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

  5. Google関連

    Google Sheets API v4が登場しました。

    「Google Apps Developer Blog: New wa…

  6. Office関連

    Google翻訳の言語自動検出機能を追う

    「Google TTSで文字列を読み上げるマクロ」でGoogle翻訳の…

コメント

  • コメント (0)

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

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

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP