Google apps script 谷歌应用程序脚本:将活动幻灯片(谷歌幻灯片)导出为PDF

Google apps script 谷歌应用程序脚本:将活动幻灯片(谷歌幻灯片)导出为PDF,google-apps-script,Google Apps Script,我想知道如何将演示文稿上的活动幻灯片导出为PDF格式。我能在谷歌表单上找到答案,但在谷歌幻灯片上却一无所获 谢谢大家! 我相信你的目标如下 您希望使用Google Apps脚本将Google幻灯片上当前的活动幻灯片作为PDF文件导出到Google Drive中的特定文件夹 对于这个问题,这个答案如何?在这个答案中,我使用以下流程 检索活动幻灯片 创建一个临时的谷歌幻灯片 将活动幻灯片复制到临时谷歌幻灯片 删除临时Google幻灯片中的初始幻灯片 将临时谷歌幻灯片导出为PDF文件 删除临时谷歌

我想知道如何将演示文稿上的活动幻灯片导出为PDF格式。我能在谷歌表单上找到答案,但在谷歌幻灯片上却一无所获


谢谢大家!

我相信你的目标如下

  • 您希望使用Google Apps脚本将Google幻灯片上当前的活动幻灯片作为PDF文件导出到Google Drive中的特定文件夹
对于这个问题,这个答案如何?在这个答案中,我使用以下流程

  • 检索活动幻灯片
  • 创建一个临时的谷歌幻灯片
  • 将活动幻灯片复制到临时谷歌幻灯片
  • 删除临时Google幻灯片中的初始幻灯片
  • 将临时谷歌幻灯片导出为PDF文件
  • 删除临时谷歌幻灯片
  • 示例脚本: 请将以下脚本复制并粘贴到Google幻灯片的容器绑定脚本中。并且,请在谷歌幻灯片中打开一张幻灯片并运行此脚本。这样,在
    destinationFolderId
    文件夹中创建活动幻灯片的PDF文件

    function myFunction() {
      const destinationFolderId = "###";  // Please set the destination folder ID.
    
      // 1. Retrieve the active slide.
      const s = SlidesApp.getActivePresentation();
      const activeSlide = s.getSelection().getCurrentPage().asSlide();
    
      // 2. Create a temporal Google Slides.
      const temporalSlides = SlidesApp.create("temporalSlides");
    
      // 3. Copy the active slide to the temporal Google Slides.
      temporalSlides.insertSlide(0, activeSlide);
    
      // 4. Delete the initial slide in the temporal Google Slides.
      temporalSlides.getSlides()[1].remove();
      temporalSlides.saveAndClose();
    
      // 5. Export the temporal Google Slides as a PDF file.
      const file = DriveApp.getFileById(temporalSlides.getId());
      DriveApp.getFolderById(destinationFolderId).createFile(file.getBlob().setName(`${s.getName()}.pdf`));
    
      // 6. Delete the temporal Google Slides.
      file.setTrashed(true);
    }
    
    参考资料:

    我可以问一下您的问题吗?1.我无法理解
    我能在谷歌表单上找到答案,但在谷歌幻灯片上却一无所获。
    。我能问一下细节吗?2.关于导出PDF,您想将其导出到哪里?您好!GoogleSheets会导出整个工作簿,因此我可以通过隐藏其他工作簿、导出并取消隐藏它们来获取相关的工作簿。找不到类似的幻灯片破解方法。对于导出,我想使用文件夹的ID导出到驱动器中的文件夹。感谢您的回复。从你的回复中,我提出了一个示例脚本作为答案。你能确认一下吗?如果我误解了你的问题,而这不是你所期望的方向,我道歉。效果很好!非常感谢。我刚刚将[const-activeSlide=s.getSelection().getCurrentPage().asSlide();]替换为s.getSlides()[1]@欢迎你。谢谢你让我知道。从您问题中的
    如何导出活动幻灯片
    ,我提出了
    getCurrentPage()
    。但我很高兴你的问题解决了。如果您的问题已解决,请按“接受”按钮。与您有相同问题的其他人也可以将您的问题作为可以解决的问题。我认为你的问题和解决方案对他们会有帮助。如果你找不到按钮,尽管告诉我@Nikhil Jain感谢您的回复。