12

Google スライドでプログラムを使用してプレゼンテーションを作成する方法があるかどうか疑問に思っています。したがって、たとえば、基になるデータが変更された場合、すべてのチャートなどに多くのコピーを貼り付けることなく、デッキを更新するだけで済みます。

Markdown や R slidify などを使用して、データ駆動型の PDF プレゼンテーションを作成するのと似たようなものです。私の最終製品は、きれいな Google スライド プレゼンテーションである必要があります。

これは、Google Drive API を使用できるようなものですか? スプレッドシートのように App Script をスライドに使用できるかどうかはわかりません。

解決策が存在するのは十分に一般的な問題であることを願っています。

1 つのオプションは、PDF を自動的に生成し、Google スライドに手動でインポートすることです。問題は、変換時のエラーと他のスライド機能の欠如により、このアプローチが少し制限されることです。

どんな入力でも大歓迎です。

4

4 に答える 4

4

リクエストされた機能は、https://code.google.com/p/google-apps-script-issues/issues/detail?id=1573&q=presentation&colspec=Stars%20Opened%20ID%20Type%20Status%20Summary%20Component%20Owner に従っください更新します。

于 2015-04-06T18:44:23.767 に答える
2

Apps Script の例:

開発者コンソールで Slides API を有効にします。

  1. Resources > Developers Console Project > [Your_Project_Name]をクリックします。
  2. Enable APIをクリックし、 Slidesを検索して、Slides API を有効にします。

UrlFetchApp認証されたリクエストを Slides API に送信するために使用します

Apps Script 内からの簡単な例として、最新バージョンのプレゼンテーション( presentations.get) を取得することを検討してください。

// Add your presentation ID
var presentationId = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';

// Force add the Drive scope (as this comment *will* get parsed
// and trigger a popup to authorize Drive access)
// DriveApp.createFile('') 

// URL formed as per the Slides REST documentation
var url = 'https://slides.googleapis.com/v1/presentations/' + presentationId;
var options = {
  headers: {
    Authorization: 'Bearer ' + ScriptApp.getOAuthToken()
  }
};
var response = UrlFetchApp.fetch(url, options);

// Turn this back into a JS Object so it can be used.
var presentation = JSON.parse(response.getContentText());

// Log the ID of the presentation
Logger.log(presentation.presentationId);

// Log the number of slides...
Logger.log(presentation.slides.length);

// Loop through the slides
var slides = presentation.slides;
slides.forEach(function(slide) {
  // ... do something with each slide...    
});

の構造はpresentation、REST リファレンスにも記載されています。REST リファレンスを使用すると、この例を拡張して、任意のSlides API リクエストおよびレスポンスで使用できます。

于 2016-11-25T16:15:58.417 に答える