如何在 Python 中使用 REST API 将 PowerPoint 转换为 PDF

如何在 Python 中使用 REST API 将 PowerPoint 转换为 PDF

PowerPoint 演示文稿文件是一组幻灯片,其中每张 ppt/pptx 幻灯片都可以包含文本、图像、格式、动画和其他媒体等信息。虽然 PDF 文件格式可以包含文本、图像、超链接、表单字段、富媒体、附件和数字签名等。作为 Python 开发人员,您可以通过转换使 PPT 和 PPTX 幻灯片易于查看到适用于 Windows 和 MAC 的 PDF 文件。在本文中,我们将学习如何在 Python 中使用 REST API 将 PowerPoint 转换为 PDF。

本文应涵盖以下主题:

PowerPoint 到 PDF 转换 REST API - 安装

为了将 PPTX 幻灯片转换为 PDF,我们将使用 GroupDocs.Conversion Cloud 的 Python SDK API。它是一个独立于平台的文档和图像转换解决方案。它允许您快速可靠地将任何支持的文件格式 的图像和文档转换为您需要的任何格式。

您可以在控制台中使用以下命令将 GroupDocs.Conversion Cloud 安装到您的 Python 应用程序:

pip install groupdocs_conversion_cloud

在执行上述步骤之前,请从仪表板获取您的客户端 ID 和密码。获得 ID 和密码后,添加如下所示的代码:

# 在您的 Python 应用程序中加载 Python SDK http://api.groupdocs.cloud 
import groupdocs_conversion_cloud

# 免费注册后,从 https://dashboard.groupdocs.cloud 获取 client_id 和 client_secret。
client_id = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
client_secret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

# 获取不同的配置 
configuration = groupdocs_conversion_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = "LocalStorage"

在 Python 中使用 REST API 将 PowerPoint PPTX 转换为 PDF

您可以按照以下简单步骤在云端以编程方式将 PowerPoint 幻灯片转换为 PDF:

  1. 上传 PPTX幻灯片到云端
  2. 转换 使用 Python 将 PowerPoint 转换为 PDF
  3. 下载转换后的PDF文件

上传 PPTX 文件

首先,使用以下代码示例将 pptx 文件上传到云端:

# 将 powerpoint .pptx 文件上传到您的云存储
# 创建文件 API 的实例
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)

# 调用上传文件请求
request = groupdocs_conversion_cloud.UploadFileRequest("python-testing\sample-powerpoint.pptx", "H:\\groupdocs-cloud-data\\powerpoint-slides.pptx", my_storage)

# 将 powerpoint 幻灯片上传到云端
response = file_api.upload_file(request)
print(response.uploaded)

因此,上传的 pptx 文件将在云端仪表板的 文件部分 中可用。

使用 Python 将 PowerPoint 转换为 PDF

您可以按照以下步骤以编程方式轻松地将 powerpoint ppt/pptx 转换为 PDF 文件:

  • 首先,创建一个 ConvertApi 的实例
  • 现在,创建 ConvertSettings 的实例
  • 然后,提供输入的 pptx 文件路径
  • 将输出文件格式设置为“pdf”
  • 接下来,提供输出文件路径
  • 现在,使用 ConvertSettings 创建 ConvertDocumentRequest
  • 最后,通过使用 ConvertDocumentRequest 调用 convert\document() 方法来转换 pptx 文件。

以下代码示例显示了如何在 Python 中使用 REST API 将 PPTX 转换为 PDF:

# 如何在 Python 中使用 REST API 将 PPTX 转换为 PDF
try:
	# 创建 API 实例
	convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

	# 定义转换设置
	settings = groupdocs_conversion_cloud.ConvertSettings()
	settings.file_path = "python-testing/sample-powerpoint.pptx"
	settings.format = "pdf"
	settings.output_path = "python-testing"

	# 创建转换文档请求
	request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

	# 将 .pptx 文件转换为 PDF 文档
	result = convert_api.convert_document(request)
	print("PPTX File converted to PDF successfully: " + result[0].path)

except groupdocs_conversion_cloud.ApiException as e:
  print("Exception when calling convert_document: {0}".format(e.message))
如何在 Python 中使用 REST API 将 PowerPoint 转换为 PDF

如何在 Python 中使用 REST API 将 PowerPoint 转换为 PDF。

下载转换后的文件

上面的代码示例会将转换后的 PDF 文件保存在云端。您可以使用以下代码示例下载它:

# API初始化以下载转换后的文件
import shutil
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)

# 创建下载文件请求
request = groupdocs_conversion_cloud.DownloadFileRequest("python-testing\\sample-powerpoint.pdf", my_storage)

# 下载转换后的文件
response = file_api.download_file(request)

# 将下载的文件移动到本地系统目录
shutil.move(response, "H:\\groupdocs-cloud-data\\")

在 Python 中将页面范围从 PPTX 转换为 PDF

我们可以按照以下步骤以编程方式将一系列页面从 PPTX 演示文稿转换为 PDF 文档:

  • 首先,创建一个 ConvertApi 的实例.
  • 接下来,创建 ConvertSettings 的实例。
  • 然后,设置输入的 PDF 文件路径。
  • 并且,将“pptx”分配给格式。
  • 另外,提供输出文件路径。
  • 接下来,创建 PdfConvertOptions 的实例。
  • 然后,设置一个页面范围以从起始页码转换为 fromPage,并将总页数转换为 pagesCount。
  • 之后,使用 ConvertSettings 作为参数创建 ConvertDocumentRequest。
  • 最后,使用 ConvertDocumentRequest 调用 ConvertApi.convertDocument() 方法。

以下代码示例展示了如何使用 Python 中的 REST API 将一系列页面从 PDF 转换为 PPTX:

# 如何在 Python 中将页面范围从 PPTX 转换为 PDF
# 创建 API 实例
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# 定义转换设置
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "python-testing/sample-powerpoint.pptx"
settings.format = "pdf"
settings.output_path = "python-testing"

# PDF 转换选项:要转换的起始页码和总页数
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.from_page = 2 
convertOptions.pages_count = 4

settings.convert_options = convertOptions

# 创建转换文档请求
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# 将 pptx 文件的页面转换为 PDF 文件
result = convert_api.convert_document(request)
print("Converted range of pages from PPTX to PDF: " + result[0].path)

在 Python 中将 PPTX 的特定页面转换为 PDF

我们可以按照以下步骤以编程方式将 PPTX 幻灯片的特定页面转换为 PDF 文档:

  • 首先,创建一个 ConvertApi 的实例.
  • 接下来,创建 ConvertSettings 的实例。
  • 然后,设置输入的 PDF 文件路径。
  • 并且,将“pptx”分配给格式。
  • 另外,提供输出文件路径。
  • 接下来,创建 PdfConvertOptions 的实例。
  • 然后,在以逗号分隔的数组中提供特定页码以进行转换。
  • 之后,使用 ConvertSettings 作为参数创建 ConvertDocumentRequest。
  • 最后,使用 ConvertDocumentRequest 调用 ConvertApi.convertDocument() 方法。

以下代码示例显示了如何使用 Python 中的 REST API 将特定页面从 PPTX 转换为 PDF:

# 如何在 Python 中将 PPTX 的特定页面转换为 PDF
# 创建 API 实例
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# 定义转换设置
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "python-testing/sample-powerpoint.pptx"
settings.format = "pdf"
settings.output_path = "python-testing"

# PDF 转换选项:要转换的页码
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.pages = [1, 3, 5]

settings.convert_options = convertOptions

# 创建转换文档请求
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# 在 python 中将 powerpoint 文件转换为 PDF
result = convert_api.convert_document(request)
print("Successfully converted PPTX file pages to PDF: " + result[0].path)

将 PPTX 转换为 PDF - 在线且免费

如何免费在线将ppt转pdf?请在任何装有 Chrome 和 Firefox 等现代浏览器的设备上尝试以下免费在线 PPTX 转换工具。它是使用 Groupdocs.Conversion API 开发的。

结论

在本文中,我们了解到:

  • 如何在云端将 PowerPoint 演示文稿转换为 PDF;
  • 如何以编程方式将 PPTX 文件上传到云端;
  • 如何从云端下载转换后的PDF文件;
  • 如何在 Python 中将特定页面从 PPTX 转换为 PDF;
  • 如何在 Python 中将一系列页面从 PPTX 转换为 PDF;

此外,您可以使用 文档 了解有关 GroupDocs.Conversion Cloud API 的更多信息。我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之交互。

问一个问题

如果您对 PowerPoint PPT/PPTX 到 DOCX 转换器有任何疑问,请随时在 GroupDocs.Conversion Forum 中提问,我们将在几个小时内得到答复。

也可以看看