作为 Python 开发人员,您可以在云上以编程方式注释任何 Word(.doc 或 .docx)文件。注释通常是元数据,形式为注释、注释、解释或文档中其他类型的外部注释,提供有关现有数据的附加信息。本文将重点介绍如何在 Python 中使用 REST API 注释 DOCX 文件。

本文应涵盖以下主题:

文档注释 REST API 和 Python SDK

GroupDocs.注释云

为了注释 DOCDOCX 文档,我将使用 GroupDocs.Annotation Cloud 的 Python SDK API。它允许您以编程方式构建在线文档和图像注释工具。此类工具可用于向所有流行格式的业务文档添加注释、水印叠加、文本替换、编辑、便签和文本标记。它还为云 API 提供 .NET、Java、PHP、Ruby 和 Node.js SDK 作为其 文档注释系列成员

您可以在控制台中使用以下命令将 GroupDocs.Annotation Cloud 安装到您的 Python 项目:

pip install groupdocs_annotation_cloud

在开始执行步骤和可用代码示例之前,请从 dashboard 获取您的 Client ID 和 Client Secret。在代码中添加您的 ID 和密码,如下所示:

client_id = "112f0f38-9dae-42d5-b4fc-cc84ae644972"
client_secret = "16ad3fe0bdc39c910f57d2fd48a5d618"
my_storage = ""

configurations = groupdocs_annotation_cloud.Configuration(client_id, client_secret)
configurations.api_base_url = "https://api.groupdocs.cloud"

在 Python 中使用 REST API 注释 DOCX 文件

您可以按照下面提到的简单步骤向 DOCX 文件添加注释:

上传文件

首先,使用下面给出的代码示例将 DOCX 文件上传到云端:

# 创建 API 实例
file_api = groupdocs_annotation_cloud.FileApi.from_config(configurations)

request = groupdocs_annotation_cloud.UploadFileRequest("one-page.docx", "C:\\Files\\one-page.docx", my_storage)
response = file_api.upload_file(request)

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

在 Python 中向 DOCX 文件添加注释

请按照下面提到的步骤以编程方式在 Word 文档中插入注释。

  • 创建 AnnotationInfo 的实例
  • 设置各种注释属性,例如位置、类型、文本等。
  • 创建一个 FileInfo 实例
  • 设置文件路径
  • 创建 AnnotateOptions 的实例
  • 将文件信息设置为 AnnotateOptions
  • 将注释设置为 AnnotateOptions
  • 通过调用 AnnotateRequest 方法创建请求
  • 调用AnnotateApi.annotate()方法获取结果

以下代码片段显示了如何使用 REST API 在 Word 文档中插入区域注释。

api = groupdocs_annotation_cloud.AnnotateApi.from_keys(client_id, client_secret)

a1 = groupdocs_annotation_cloud.AnnotationInfo()
a1.annotation_position = groupdocs_annotation_cloud.Point()
a1.annotation_position.x = 1
a1.annotation_position.y = 1
a1.box = groupdocs_annotation_cloud.Rectangle()
a1.box.x = 100
a1.box.y = 100
a1.box.width = 200
a1.box.height = 100
a1.page_number = 0
a1.pen_color = 1201033
a1.pen_style = "Solid"
a1.pen_width = 1
a1.opacity = 0.7

# 添加区域注释
a1.type = "Area"
a1.text = "This is area annotation"
a1.creator_name = "Anonym A."

file_info = groupdocs_annotation_cloud.FileInfo()
file_info.file_path = "one-page.docx"
options = groupdocs_annotation_cloud.AnnotateOptions()
options.file_info = file_info
options.annotations = [a1]
options.output_path = "Output\\output.docx"

request = groupdocs_annotation_cloud.AnnotateRequest(options)
result = api.annotate(request)

结果,区域注释将插入文档中,如下所示。

在 Python 中向 DOCX 文件添加注释

支持的注解类型

请在下面找到支持的注释类型列表,您可以按照前面提到的步骤将其添加到您的 DOCX 文件中:

  • 区域
  • 距离
  • 关联
  • 观点
  • 折线
  • 图像
  • 文本
  • 水印

下载更新文件

上面的代码示例会将带注释的 DOCX 文件保存在云端。您可以使用以下代码示例下载它:

# 创建 API 实例
file_api = groupdocs_annotation_cloud.FileApi.from_config(configurations)

request = groupdocs_annotation_cloud.DownloadFileRequest("Output\\output.docx", my_storage)
response = file_api.download_file(request)

# 将下载的文件移动到您的工作目录
shutil.move(response, "C:\\Files\\")

使用 Python 添加多个注释

请按照下面提到的步骤以编程方式向您的 DOCX 文件添加多个注释。

  • 创建 AnnotationInfo 的第一个实例
  • 为第一个实例设置各种注释属性,例如位置、类型、文本等。
  • 创建 AnnotationInfo 第二个实例
  • 为第二个实例设置各种注释属性,例如位置、类型、文本等。
  • 创建一个 FileInfo 实例
  • 设置文件路径
  • 创建 AnnotateOptions 的实例
  • 将文件信息设置为 AnnotateOptions
  • 将第一个和第二个注释设置为 AnnotateOptions
  • 通过调用 AnnotateRequest 方法创建请求
  • 调用AnnotateApi.annotate()方法获取结果

以下代码片段显示了如何使用 REST API 向 DOCX 文件添加多个注释。请按照前面提到的步骤上传和下载文件。

api = groupdocs_annotation_cloud.AnnotateApi.from_keys(client_id, client_secret)
  
a1 = groupdocs_annotation_cloud.AnnotationInfo()
a1.annotation_position = groupdocs_annotation_cloud.Point()
a1.annotation_position.x = 1
a1.annotation_position.y = 1
a1.box = groupdocs_annotation_cloud.Rectangle()
a1.box.x = 200
a1.box.y = 200
a1.box.width = 300
a1.box.height = 100
a1.page_number = 0
a1.pen_color = 1201033
a1.pen_style = "Solid"
a1.pen_width = 1
a1.opacity = 0.2
a1.type = "Watermark"
a1.text = "This is watermark annotation"
a1.creator_name = "Anonym A."
    
a2 = groupdocs_annotation_cloud.AnnotationInfo()
a2.annotation_position = groupdocs_annotation_cloud.Point()
a2.annotation_position.x = 852
a2.annotation_position.y = 59.38
a2.box = groupdocs_annotation_cloud.Rectangle()
a2.box.x = 375.8
a2.box.y = 59.38
a2.box.width = 88
a2.box.height = 37
a2.page_number = 2
a2.pen_color = 1201033
a2.pen_style = "Solid"
a2.pen_width = 1
a2.opacity = 0.9
a2.type = "Image"
a2.text = "This is Image annotation"
a2.creator_name = "Anonym A."
a2.image_path = "JohnSmith.png"
    
file_info = groupdocs_annotation_cloud.FileInfo()
file_info.file_path = "ten-pages.docx"
options = groupdocs_annotation_cloud.AnnotateOptions()
options.file_info = file_info
options.annotations = [a1, a2]
options.output_path = "Output\\output.docx"

request = groupdocs_annotation_cloud.AnnotateRequest(options)
result = api.annotate(request)

结果,图像和水印注释将插入文档中,如下所示。

图像和水印注释

结论

在本文中,您了解了如何使用 Python 使用 Document Annotation REST API 向云上的 Word 文档添加各种类型的注释。您还学习了如何以编程方式将 DOCX 文件上传到云端,然后从云端下载带注释的文件。您可以使用 文档 了解有关 GroupDocs.Annotation Cloud API 的更多信息。我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之交互。如有任何歧义,请随时在论坛上与我们联系。