Annoter des documents PDF avec Python

Vous pouvez annoter n’importe quel document PDF par programmation sur le cloud à l’aide de Python. Il peut s’agir de toute information supplémentaire sur une donnée existante sous la forme d’images, de commentaires, de notes ou d’autres types de remarques externes dans le document. Dans cet article, vous apprendrez à annoter des documents PDF à l’aide d’une API REST en Python.

Les sujets suivants seront traités dans cet article :

API REST d’annotation de documents et SDK Python

Pour annoter des documents PDF, j’utiliserai l’API Python SDK of GroupDocs.Annotation Cloud. Il permet de créer par programmation des outils d’annotation de documents en ligne. Vous pouvez ajouter des annotations, des superpositions de filigranes, des remplacements de texte, des caviardages et des annotations de texte aux documents commerciaux de tous les formats courants. Il fournit également les SDK .NET, Java, PHP, Ruby et Node.js en tant que membres de la famille d’annotations de documents pour l’API Cloud.

Vous pouvez installer GroupDocs.Annotation Cloud dans votre projet Python à l’aide de la commande suivante dans la console :

pip install groupdocs_annotation_cloud

Veuillez obtenir votre ID client et votre secret client à partir du tableau de bord avant de commencer à suivre les étapes et les exemples de code disponibles. Une fois que vous avez votre identifiant et votre secret, ajoutez le code comme indiqué ci-dessous :

client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"

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

Annoter des documents PDF à l’aide d’une API REST en Python

Vous pouvez ajouter des annotations à vos documents PDF en suivant les étapes simples ci-dessous :

  1. Téléchargez le fichier PDF dans le Cloud
  2. Annoter des documents PDF à l’aide de Python
  3. Télécharger le fichier annoté

Télécharger le document

Tout d’abord, importez le fichier PDF dans le Cloud à l’aide de l’exemple de code suivant :

# créer une instance de l'API
file_api = groupdocs_annotation_cloud.FileApi.from_config(configuration)
my_storage = ""

# télécharger un exemple de fichier
request = groupdocs_annotation_cloud.UploadFileRequest("sample.pdf", "C:\\Files\\sample.pdf", my_storage)
response = file_api.upload_file(request)

Par conséquent, le fichier PDF téléchargé sera disponible dans la section des fichiers de votre tableau de bord sur le cloud.

Annoter des documents PDF avec Python

Veuillez suivre les étapes mentionnées ci-dessous pour ajouter plusieurs annotations au document PDF par programmation.

  • Créer une instance d’AnnotateApi
  • Créer la première instance d’AnnotationInfo
  • Définissez les propriétés d’annotation pour la première instance, par exemple la position, le type, le texte, etc.
  • Créer une deuxième instance AnnotationInfo
  • Définissez les propriétés d’annotation pour la deuxième instance, par exemple la position, le type, le texte, etc.
  • Créer une troisième instance d’AnnotationInfo
  • Définissez les propriétés d’annotation pour la troisième instance, par exemple la position, le type, le texte, etc.
  • Créer une instance FileInfo et définir le chemin du fichier d’entrée
  • Créez une instance d’AnnotateOptions et définissez les informations de fichier sur AnnotateOptions
  • Affecter les première, deuxième et troisième annotations à AnnotateOptions
  • Créer une requête en appelant la méthode AnnotateRequest
  • Obtenez des résultats en appelant la méthode AnnotateApi.annotate()

L’exemple de code suivant montre comment annoter un document PDF et ajouter plusieurs annotations à l’aide d’une API REST.

# initialiser l'API
api = groupdocs_annotation_cloud.AnnotateApi.from_config(configuration)

# annotation de distance
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 = 200
a1.page_number = 0
a1.pen_color = 1201033
a1.pen_style = "Solid"
a1.pen_width = 3
a1.opacity = 1
a1.type = "Distance"
a1.text = "This is annotation de distance"
a1.creator_name = "Anonym A."

# annotation de zone
a2 = groupdocs_annotation_cloud.AnnotationInfo()
a2.annotation_position = groupdocs_annotation_cloud.Point()
a2.annotation_position.x = 1
a2.annotation_position.y = 1
a2.box = groupdocs_annotation_cloud.Rectangle()
a2.box.x = 100
a2.box.y = 400
a2.box.width = 200
a2.box.height = 100
a2.page_number = 0
a2.pen_color = 1201033
a2.pen_style = "Solid"
a2.pen_width = 3
a2.opacity = 1
a2.type = "Area"
a2.text = "This is annotation de zone"
a2.creator_name = "Anonym A."

# annotation de flèche
a3 = groupdocs_annotation_cloud.AnnotationInfo()
a3.annotation_position = groupdocs_annotation_cloud.Point()
a3.annotation_position.x = 1
a3.annotation_position.y = 1
a3.box = groupdocs_annotation_cloud.Rectangle()
a3.box.x = 100
a3.box.y = 250
a3.box.width = 100
a3.box.height = 50
a3.page_number = 0
a3.pen_color = 1201033
a3.pen_style = "Solid"
a3.pen_width = 1
a3.opacity = 0.7
a3.type = "Arrow"
a3.text = "This is annotation de flèche"
a3.creator_name = "Anonym A."

# fichier d'entrée
file_info = groupdocs_annotation_cloud.FileInfo()
file_info.file_path = "sample.pdf"

# définir les options d'annotation
options = groupdocs_annotation_cloud.AnnotateOptions()
options.file_info = file_info
options.annotations = [a1, a2, a3]
options.output_path = "output.pdf"

# créer une demande d'annotation
request = groupdocs_annotation_cloud.AnnotateRequest(options)
result = api.annotate(request)         

print("AddMultipleAnnotations: Multiple Annotations added: " + result['href'])
Ajouter plusieurs annotations au document PDF à l'aide d'une API REST en Python

Ajouter plusieurs annotations au document PDF à l’aide d’une API REST en Python

Vous pouvez en savoir plus sur les types d’annotations pris en charge dans la section ajout d’annotations de la documentation.

Télécharger le fichier annoté

L’exemple de code ci-dessus enregistrera le fichier PDF annoté sur le cloud. Vous pouvez le télécharger à l’aide de l’exemple de code suivant :

# initialisation de l'API
file_api = groupdocs_annotation_cloud.FileApi.from_config(configuration)
my_storage = ""

# créer une demande de téléchargement
request = groupdocs_annotation_cloud.DownloadFileRequest("output.pdf", my_storage)
response = file_api.download_file(request)

# Déplacez le fichier téléchargé dans votre répertoire de travail
shutil.move(response, "C:\\Files\\")

Ajouter des annotations TextField à l’aide de Python

Vous pouvez ajouter des annotations de champ de texte dans les documents PDF par programme en suivant les étapes ci-dessous :

  • Créer une instance d’AnnotateApi
  • Créer une instance d’AnnotationInfo
  • Définir la position de l’annotation
  • Définir la position, la hauteur et la largeur du rectangle
  • Définissez diverses propriétés d’annotation, par exemple le texte, la hauteur, la largeur, etc.
  • Définir le type d’annotation comme TextField
  • Créer une instance FileInfo et définir le chemin du fichier d’entrée
  • Créez une instance d’AnnotateOptions et définissez les informations de fichier sur AnnotateOptions
  • Attribuer une annotation à AnnotateOptions
  • Créer une requête en appelant la méthode AnnotateRequest
  • Obtenez des résultats en appelant la méthode AnnotateApi.annotate()

L’exemple de code suivant montre comment ajouter des annotations de champ de texte dans le document PDF à l’aide d’une API REST. Veuillez suivre les étapes mentionnées précédemment pour charger et télécharger un fichier.

# initialiser l'API
api = groupdocs_annotation_cloud.AnnotateApi.from_config(configuration)

# fournir des informations d'annotation
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 = 380
a1.box.y = 300
a1.box.width = 100
a1.box.height = 50
a1.page_number = 0
a1.font_color = 1201033
a1.font_size = 12
a1.opacity = 0.7
a1.type = "TextField"           
a1.text = "Text field text"
a1.creator_name = "Anonym A."

# chemin du fichier d'entrée
file_info = groupdocs_annotation_cloud.FileInfo()
file_info.file_path = "sample.pdf"

# définir les options d'annotation
options = groupdocs_annotation_cloud.AnnotateOptions()
options.file_info = file_info
options.annotations = [a1]
options.output_path = "output.pdf"

# créer une demande d'annotation
request = groupdocs_annotation_cloud.AnnotateRequest(options)
result = api.annotate(request)         

print("AddTextFieldAnnotation: Text Field Annotation added: " + result['href'])
Ajouter des annotations de champ de texte à l'aide de Python

Ajouter des annotations de champ de texte à l’aide de Python

Ajouter des annotations d’image à l’aide de Python

Vous pouvez ajouter des annotations d’image dans vos documents PDF par programmation en suivant les étapes ci-dessous :

  • Créer une instance d’AnnotateApi
  • Créer une instance d’AnnotationInfo
  • Définir Rectangle et définir sa position, sa hauteur et sa largeur
  • Définissez diverses propriétés d’annotation, par exemple la position, le texte, la hauteur, la largeur, etc.
  • Définir le type d’annotation sur Image
  • Créer une instance FileInfo et définir le chemin du fichier d’entrée
  • Créez une instance d’AnnotateOptions et définissez les informations de fichier sur AnnotateOptions
  • Attribuer une annotation à AnnotateOptions
  • Créer une requête en appelant la méthode AnnotateRequest
  • Obtenez des résultats en appelant la méthode AnnotateApi.annotate()

L’exemple de code suivant montre comment ajouter des annotations d’image dans le document PDF à l’aide d’une API REST. Veuillez suivre les étapes mentionnées précédemment pour charger et télécharger un fichier.

# initialiser l'API
api = groupdocs_annotation_cloud.AnnotateApi.from_config(configuration)

# définir les annotations
a1 = groupdocs_annotation_cloud.AnnotationInfo()
a1.box = groupdocs_annotation_cloud.Rectangle()
a1.box.x = 300
a1.box.y = 300
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 = "Image"
a1.text = "This is Image annotation"
a1.creator_name = "Anonym A."
a1.image_path = "JohnSmith.png"

# chemin du fichier d'entrée
file_info = groupdocs_annotation_cloud.FileInfo()
file_info.file_path = "sample.pdf"

# définir les annotations options
options = groupdocs_annotation_cloud.AnnotateOptions()
options.file_info = file_info
options.annotations = [a1]
options.output_path = "output_img.pdf"

# créer une demande d'annotation
request = groupdocs_annotation_cloud.AnnotateRequest(options)
result = api.annotate(request)         

print("AddImageAnnotation: Image Annotation added: " + result['href'])
Ajouter des annotations d'image à l'aide de Python

Ajouter des annotations d’image à l’aide de Python

Vous pouvez ajouter des annotations de lien hypertexte dans les documents PDF par programmation en suivant les étapes ci-dessous :

  • Créer une instance d’AnnotateApi
  • Créer une instance d’AnnotationInfo
  • Définir des points d’annotation et définir la position de chaque point
  • Définissez diverses propriétés d’annotation, par exemple le texte, la hauteur, la largeur, etc.
  • Définir le type d’annotation sur Lien
  • Créer une instance FileInfo et définir le chemin du fichier d’entrée
  • Créez une instance d’AnnotateOptions et définissez les informations de fichier sur AnnotateOptions
  • Attribuer une annotation à AnnotateOptions
  • Créer une requête en appelant la méthode AnnotateRequest
  • Obtenez des résultats en appelant la méthode AnnotateApi.annotate()

L’exemple de code suivant montre comment ajouter des annotations de lien hypertexte dans le document PDF à l’aide d’une API REST. Veuillez suivre les étapes mentionnées précédemment pour charger et télécharger un fichier.

# initialiser l'API
api = groupdocs_annotation_cloud.AnnotateApi.from_config(configuration)

# fournir des informations d'annotation
a1 = groupdocs_annotation_cloud.AnnotationInfo()
p1 = groupdocs_annotation_cloud.Point()
p1.x = 80
p1.y = 710
p2 = groupdocs_annotation_cloud.Point()
p2.x = 240
p2.y = 710
p3 = groupdocs_annotation_cloud.Point()
p3.x = 80
p3.y = 650
p4 = groupdocs_annotation_cloud.Point()
p4.x = 240
p4.y = 650
a1.points = [p1, p2, p3, p4]
a1.page_number = 0
a1.type = "Link"
a1.text = "This is Link annotation"
a1.creator_name = "Anonym A."
a1.url = "https://www.groupdocs.com/"

# chemin du fichier d'entrée
file_info = groupdocs_annotation_cloud.FileInfo()
file_info.file_path = "sample.pdf"

# définir les options d'annotation
options = groupdocs_annotation_cloud.AnnotateOptions()
options.file_info = file_info
options.annotations = [a1]
options.output_path = "output.pdf"

# créer une demande d'annotation
request = groupdocs_annotation_cloud.AnnotateRequest(options)
result = api.annotate(request)         

print("AddLinkAnnotation: Link Annotation added: " + result['href'])
Annoter avec des annotations de lien en utilisant Python

Annoter avec des annotations de lien en utilisant Python

Essayez en ligne

Veuillez essayer l’outil d’annotation PDF en ligne gratuit suivant, qui est développé à l’aide de l’API ci-dessus. https://products.groupdocs.app/annotation/pdf

Conclusion

Dans cet article, vous avez appris à ajouter différents types d’annotations aux documents PDF sur le cloud. De plus, vous avez appris à télécharger par programmation le fichier PDF sur le cloud, puis à télécharger le fichier annoté à partir du cloud. Vous pouvez en savoir plus sur l’API GroupDocs.Annotation Cloud à l’aide de la documentation. Nous fournissons également une section API Reference qui vous permet de visualiser et d’interagir avec nos API directement via le navigateur. En cas d’ambiguïté, n’hésitez pas à nous contacter sur le forum.

Voir également