GASでスライドからPDFを生成する簡単ステップガイド

GASを使って、スライドからPDFを作成したいんだけど、どうすればいいのかな?
猫男
猫男
catman
catman
よし、catmanが「GASでスライドからPDF」を生成する方法を教えてやろう。簡単なステップさ。

GASでスライドをPDFに変換する基本プロセス

GASを使うと、Google スライドを簡単にPDFに変換できる。手順はシンプルだ。

必要な権限を確認する

まず、スクリプトがスライドとドライブにアクセスできるようにするために、必要な権限の確認をしよう。

スクリプトのセットアップ

GASエディタを開いて、新しいスクリプトファイルを作成しよう。以下は基本的なスクリプトの例だ。


 function convertSlideToPDF() {
   const presentationId = 'your-presentation-id';  // スライドのIDを入れる
   const pdf = Slides.Presentations.export(presentationId, 'application/pdf');
   const folderId = 'your-folder-id';  // PDFを保存するフォルダのID
   const blob = pdf.getBlob();
   DriveApp.getFolderById(folderId).createFile(blob.setName('slide.pdf'));
 }

スクリプトの実行

スクリプトを実行してみよう。これで、指定したフォルダにPDFが生成されるはずだ。

えっ、これだけなの?思ってたよりずっと簡単だね!
猫男
猫男

各ステップの詳細解説

もう少し詳しく見ていこう。どの部分が何をしているかを知っておいたほうがいい。

スライドIDとフォルダIDの取得

スクリプトのsetupには、スライドと保存先フォルダのIDが必要になる。

スライドIDは、スライドURLの/d/以降の部分から取得する。

フォルダIDも同様にGoogleドライブのURLから取得可能だ。

GASのメソッド解説

スクリプト内で使われているメソッドについて説明しよう。

Slides.Presentations.export()は、指定されたスライドをPDF形式でエクスポートするメソッドだ。

このメソッドは、スライドのIDとリクエスト形式(この場合は’application/pdf’)を受け取る。

DriveApp.getFolderById(folderId).createFile()は、ドライブ上の特定のフォルダにファイルを作成するためのメソッドだ。

このメソッドもファイルのIDを必要とするが、ファイル自体を生成するので便利だ。

詳しく解説してもらえて安心してできそうだよ。ありがとうcatman!
猫男
猫男

練習問題

試しに練習問題を解いて、理解を深めよう。

以下のスクリプトを完成させて、特定のGoogle スライドをPDFとして保存してみてください。

  • スライドID: ‘example-slide-id’
  • 保存先フォルダID: ‘example-folder-id’

function slideToPDF() {
  const presentationId = '________________________';
  const folderId = '________________________';
  const pdf = Slides.Presentations.export(__________, 'application/pdf');
  const blob = pdf.getBlob();
  DriveApp.getFolderById(folderId).createFile(blob.setName('example.pdf'));
}

解答・解説


function slideToPDF() {
  const presentationId = 'example-slide-id';  // 解説: ここにスライドのIDを入れる必要がある。
  const folderId = 'example-folder-id';  // 解説: 保存先のフォルダのIDを指定する。
  const pdf = Slides.Presentations.export(presentationId, 'application/pdf');  // 解説: スライドをPDFにエクスポートする。
  const blob = pdf.getBlob();  // 解説: PDFデータをBlob形式で取得。
  DriveApp.getFolderById(folderId).createFile(blob.setName('example.pdf'));  // 解説: 取得したBlobをファイルに変換し、指定フォルダに保存。
}

これで、GASを利用してスライドからPDFを作る方法にマスターできたら嬉しいぞ!