Как разработчик Python, вы можете программно аннотировать любой файл Word (.doc или .docx) в облаке. Аннотации обычно представляют собой метаданные в форме комментариев, примечаний, объяснений или других типов внешних примечаний в документе, предоставляющих дополнительную информацию о существующей части данных. В этой статье основное внимание будет уделено тому, как аннотировать файлы DOCX с помощью REST API в Python.
В этой статье должны быть раскрыты следующие темы:
- REST API и Python SDK для аннотаций к документам
- Аннотируйте файлы DOCX с помощью REST API
- Добавить несколько аннотаций с помощью Python
REST API и Python SDK для аннотаций к документам
Для аннотирования документов DOC или DOCX я буду использовать API Python SDK of GroupDocs.Annotation Cloud. Он позволяет программно создавать онлайн-инструменты для аннотирования документов и изображений. Такие инструменты можно использовать для добавления аннотаций, наложения водяных знаков, замены текста, редактирования, заметок и текстовых пометок к деловым документам всех популярных форматов. Он также предоставляет SDK для .NET, Java, PHP, Ruby и Node.js в качестве членов семейства аннотаций документов для Cloud API.
Вы можете установить GroupDocs.Annotation Cloud в свой проект Python с помощью следующей команды в консоли:
pip install groupdocs_annotation_cloud
Пожалуйста, получите свой идентификатор клиента и секрет клиента из панели управления, прежде чем приступить к выполнению шагов и доступных примеров кода. Добавьте свой идентификатор и секрет в код, как показано ниже:
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"
Аннотируйте файлы DOCX с помощью REST API в Python
Вы можете добавить аннотации к файлу DOCX, выполнив простые шаги, указанные ниже:
- Загрузить файл DOCX в облако
- Добавить аннотации к файлам DOCX в Python
- Скачать обновленный файл
Загрузить документ
Прежде всего, загрузите файл 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 будет доступен в разделе файлов вашей панели инструментов в облаке.
Добавить аннотации к файлам DOCX в Python
Пожалуйста, следуйте шагам, указанным ниже, чтобы программно вставить аннотации в документ Word.
- Создайте экземпляр AnnotationInfo
- Установите различные свойства аннотации, например положение, тип, текст и т. д.
- Создайте экземпляр FileInfo
- Установить путь к файлу
- Создайте экземпляр AnnotateOptions
- Установите информацию о файле в AnnotateOptions
- Установите аннотацию в AnnotateOptions
- Создайте запрос, вызвав метод AnnotateRequest.
- Получите результаты, вызвав метод AnnotateApi.annotate().
В следующем фрагменте кода показано, как вставить аннотации областей в документ Word с помощью REST API.
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)
В результате аннотации областей будут вставлены в документ, как показано ниже.
Поддерживаемые типы аннотаций
Ниже приведен список поддерживаемых типов аннотаций, которые вы можете добавить в свои файлы 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()
В следующем фрагменте кода показано, как добавить несколько аннотаций в файл DOCX с помощью REST API. Пожалуйста, следуйте шагам, упомянутым ранее, чтобы загрузить и скачать файл.
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)
В результате аннотации изображения и водяного знака будут вставлены в документ, как показано ниже.
Заключение
В этой статье вы узнали, как добавлять различные типы аннотаций в документы Word в облаке с помощью REST API аннотаций документов с использованием Python. Вы также узнали, как программно загрузить файл DOCX в облако, а затем загрузить файл с комментариями из облака. Вы можете узнать больше о GroupDocs.Annotation Cloud API, используя документацию. Мы также предоставляем раздел Справочник по API, который позволяет визуализировать наши API и взаимодействовать с ними непосредственно через браузер. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на форуме.