Python 開発者は、クラウド上の任意の Word (.doc または .docx) ファイルにプログラムで注釈を付けることができます。注釈は通常、コメント、メモ、説明、または既存のデータに関する追加情報を提供するドキュメント内のその他の種類の外部コメントの形式のメタデータです。この記事では、Python の REST API を使用して DOCX ファイルに注釈を付ける方法に焦点を当てます。

この記事では次のトピックについて説明します。

ドキュメント注釈 REST API と Python SDK

GroupDocs.Annotation クラウド

DOC または DOCX ドキュメントに注釈を付けるには、GroupDocs.Annotation Cloud の Python SDK API を使用します。これを使用すると、オンラインのドキュメントおよび画像の注釈ツールをプログラムで構築できます。このようなツールを使用すると、すべての一般的な形式のビジネス ドキュメントに注釈、透かしオーバーレイ、テキスト置換、墨消し、付箋、およびテキスト マークアップを追加できます。また、クラウド API の ドキュメント アノテーション ファミリー メンバー として、.NET、Java、PHP、Ruby、および Node.js SDK も提供します。

コンソールで次のコマンドを使用して、GroupDocs.Annotation Cloud を Python プロジェクトにインストールできます。

pip install groupdocs_annotation_cloud

手順と利用可能なコード例を開始する前に、ダッシュボード からクライアント ID とクライアント シークレットを取得してください。以下に示すように、コードに 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 の 2 番目のインスタンスを作成する
  • 2 番目のインスタンスのさまざまな注釈プロパティ (位置、タイプ、テキストなど) を設定します。
  • FileInfo インスタンスを作成する
  • ファイルパスを設定する
  • AnnotateOptions のインスタンスを作成する
  • ファイル情報を AnnotateOptions に設定する
  • 最初と 2 番目の注釈を 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 リファレンス セクションも提供しています。不明な点がある場合は、フォーラム でお気軽にお問い合わせください。