如何在 Python 中使用文件转换 API 将文本文件转换为 PDF

使用 Python 中的文件转换 API 将文本文件转换为 PDF

记事本是 Windows 文本 编辑器和文字处理程序,用于在文本文件中创建快速笔记,而 PDF 是最重要和使用最广泛的数字媒体之一。将文本或txt文件转换为PDF文档是现实生活中的基本需求之一。 Online Text to PDF 用于独立于软件或操作系统可靠地呈现和交换文档。要以编程方式将 TXT 文件转换为 PDF,本文演示了如何使用 Python 中的文件转换 API 将文本文件转换为 PDF。

本文应涵盖以下主题:

文本到 PDF 转换 REST API 和 Python SDK

为了将文本转换为 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 将文本转换为 PDF

您可以按照以下简单步骤在云端以编程方式将文本文件转换为 PDF:

  1. 上传TXT文件到云端
  2. 转换 使用 Python 将文本转换为 PDF
  3. 下载转换后的PDF文件

上传 TXT 文件

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

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

# 上传文件请求
request = groupdocs_conversion_cloud.UploadFileRequest("python-testing\sample-text-file.txt", "H:\\groupdocs-cloud-data\\sample-text-file.txt", my_storage)

# 上传示例文本文件
response = file_api.upload_file(request)

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

使用 Python 将 TXT 转换为 PDF

您可以按照下面提到的步骤以编程方式轻松地将 TXT 转换为 PDF 文档:

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

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

# 如何在 Python 中使用 REST API 将文本转换为 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-text-file.txt"
	settings.format = "pdf"
	settings.output_path = "python-testing"

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

	# 将 .txt 文件转换为 PDF 文档
	result = convert_api.convert_document(request)
	print("TXT 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 将文本转换为 PDF。

在 Python 中使用 REST API 将文本转换为 PDF。

下载转换后的文件

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

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

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

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

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

使用 Python 中的高级选项将文本转换为 PDF

您可以按照以下步骤使用高级设置将文本文档转换为 PDF 文件:

  • 首先,创建一个 ConvertApi 的实例.
  • 现在,创建 ConvertSettings 的实例.
  • 然后,提供文本文件路径。
  • 接下来,将“pdf”设置为格式。
  • 现在,提供输出文件路径。
  • 现在,创建 TextLoadOptions 的一个实例
  • 可选择设置各种加载选项,例如编码等。
  • 现在,创建 PdfConvertOptions 的实例
  • 然后,设置各种转换选项,如中心\窗口、显示\文档\标题、边距(顶部、左侧、右侧、底部)等。
  • 接下来,使用 pdf convertOptions 设置 convert\options 值
  • 现在,使用 ConvertSettings 创建 ConvertDocumentRequest
  • 最后,通过使用 ConvertDocumentRequest 调用 convert\document() 方法来转换文本

以下代码示例显示如何使用高级选项将文本文件转换为 PDF 文档。请按照前面提到的步骤从云端上传和下载文件:

# 使用 Python 中的高级选项将文本转换为 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-text-file.txt"
settings.format = "pdf"
settings.output_path = "python-testing"

# 文本加载选项
loadOptions = groupdocs_conversion_cloud.TxtLoadOptions()
loadOptions.encoding = "shift_jis"

# 设置 PDF 转换选项
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.center_window = True
convertOptions.display_doc_title = True
convertOptions.dpi = 1024.0
convertOptions.fit_window = False
convertOptions.grayscale = False
convertOptions.linearize = False
convertOptions.margin_top = 5
convertOptions.margin_left = 5
convertOptions.unembed_fonts = True
convertOptions.remove_pdfa_compliance = False

settings.convert_options = convertOptions

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

# 将文本文件的页面转换为 PDF 文件
result = convert_api.convert_document(request)
print("Successfully Converted TXT to PDF with advanced options: " + result[0].path)

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

您可以按照以下步骤以编程方式将一系列页面从文本文件转换为 PDF 文件:

  • 首先,创建一个 ConvertApi 的实例
  • 现在,创建 ConvertSettings 的实例
  • 然后,提供输入文本文件路径
  • 将“pdf”分配给格式
  • 提供输出文件路径
  • 现在,创建 PdfConvertOptions 的实例
  • 然后,提供要转换的页码范围,从起始页码和要转换的总页数
  • 现在,将 PdfConvertOptions 分配给 ConvertSettings
  • 然后,使用 ConvertSettings 创建 ConvertDocumentRequest
  • 最后,通过使用 ConvertDocumentRequest 调用 convert\document() 方法进行转换

以下代码示例展示了如何使用 Python 中的 REST API 将一系列页面从 TXT 文档转换为 PDF 文档。请按照前面提到的步骤上传和下载生成的 pdf 文件:

# 如何在 Python 中将页面范围从文本转换为 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-text-file.txt"
settings.format = "pdf"
settings.output_path = "python-testing"

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

settings.convert_options = convertOptions

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

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

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

您可以按照以下步骤以编程方式将文本文档的特定页面转换为 PDF 文件:

  • 首先,创建一个 ConvertApi 的实例
  • 现在,创建 ConvertSettings 的实例
  • 然后,提供输入文本文件路径
  • 将“pdf”分配给格式
  • 提供输出文件路径
  • 现在,创建 PdfConvertOptions 的实例
  • 然后,在以逗号分隔的数组中提供特定页码以进行转换
  • 现在,将 PdfConvertOptions 分配给 ConvertSettings
  • 然后,使用 ConvertSettings 创建 ConvertDocumentRequest
  • 最后,通过使用 ConvertDocumentRequest 调用 convert\cocument() 方法进行转换

以下代码示例显示了如何在 Python 中使用 REST API 将文本文件的特定页面转换为 PDF。请按照前面提到的步骤上传和下载输出 pdf 文件:

# 如何在 Python 中将特定页面的文本转换为 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-text-file.txt"
settings.format = "pdf"
settings.output_path = "python-testing"

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

settings.convert_options = convertOptions

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

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

在线试用

您想在线将文本转换为 pdf 吗?请尝试使用上述 API 开发的免费文本到 pdf 在线转换器。您可以使用此文本在线免费在线将文本转换为 pdf。

加起来

在本文中,您已了解:

  • 如何将纯文本转换为云上的 PDF 文档;
  • 如何使用 python 以编程方式上传文本文件;
  • 如何在python中从云端下载转换后的PDF文件;
  • 如何在 Python 中将特定页面或一系列页面从文本记事本转换为 PDF;

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

问一个问题

如果您对如何将文本文件转换为 pdf 有任何疑问,请随时在免费支持论坛 中提问,我们将在几个小时内得到解答。

也可以看看