
Pour créer des documents PDF professionnels et attrayants visuellement, la possibilité d’ajouter des images et du texte à l’en-tête est une fonctionnalité indispensable. La section d’en-tête est l’une des zones les plus importantes d’un document, car elle fournit aux lecteurs des informations essentielles telles que le titre, l’auteur et la date. Si l’ajout de texte à l’en-tête est un processus relativement simple, l’ajout d’images peut être plus difficile, en particulier pour les développeurs Python qui débutent dans la génération de documents PDF. Dans cet article, nous allons découvrir comment ajouter une image et du texte à l’en-tête d’un document PDF à l’aide de Python Cloud SDK.
Vous pouvez ajouter des images, des logos, la date et l’heure de création du document, le titre du document, le numéro de version ou de révision, le brouillon, le nom de l’auteur et les noms des chapitres dans l’en-tête PDF.
- API REST pour l’assemblage de documents PDF
- Ajouter du texte à l’en-tête PDF à l’aide de Python
- Ajouter une image à l’en-tête PDF à l’aide de Python
- Ajout d’un en-tête de texte au PDF à l’aide de la commande cURL
- Ajout d’un en-tête d’image au PDF à l’aide de la commande cURL
API REST pour l’assemblage de documents PDF
Aspose.PDF Cloud SDK for Python fournit une variété de fonctions et de méthodes qui permettent aux développeurs de manipuler des fichiers PDF par programmation. Il fournit également un ensemble d’outils puissants et flexibles pour ajouter des images et du texte aux en-têtes de documents PDF, et peut être facilement intégré dans des applications Python pour un traitement automatisé des documents PDF. Concernant maintenant le processus d’ajout d’une image à l’en-tête, il implique de spécifier l’emplacement et les dimensions de l’image, ainsi que le numéro de page sur lequel l’image doit apparaître. De même, l’ajout de texte à l’en-tête nécessite de spécifier le contenu du texte, la taille de la police et d’autres options de formatage. Le SDK fournit également des options pour contrôler l’alignement et le positionnement du contenu de l’en-tête, ainsi que pour spécifier la couleur d’arrière-plan de l’en-tête.
Maintenant, nous devons d’abord installer le SDK qui est disponible gratuitement en téléchargement sur les référentiels PIP et GitHub. Exécutez simplement la commande suivante pour installer la dernière version du SDK.
pip install asposepdfcloud
Pour accéder à l’API REST, vous devez vous inscrire et obtenir vos identifiants personnels. Veuillez consulter le Guide de démarrage rapide pour obtenir des informations connexes.
Ajouter du texte à l’en-tête PDF à l’aide de Python
Le SDK vous permet d’ajouter des chaînes de texte à la section d’en-tête du document et cette exigence peut être satisfaite en suivant les étapes suivantes.
- Tout d’abord, créez une instance de la classe ApiClient tout en fournissant l’ID client et le secret client comme arguments.
- Deuxièmement, créez un objet de classe PdfApi qui prend l’objet ApiClient comme argument d’entrée.
- Troisièmement, créez un objet TextHeader définissant les propriétés de l’instance TextHeader.
- Afin de définir la mise en forme du texte pour TextHeader, créez un objet TextState dans lequel nous définissons la couleur de premier plan, la taille de la police, le nom de la police, etc.
- Enfin, appelez la méthode postdocumenttextheader(..) pour ajouter un en-tête de texte au document PDF et enregistrer le fichier résultant sur le stockage Cloud.
def addTextHeader():
try:
#Client credentials
client_secret = "1c9379bb7d701c26cc87e741a29987bb"
client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"
#initialize PdfApi client instance using client credetials
pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)
# créer une instance PdfApi en passant PdfApiClient comme argument
pdf_api = PdfApi(pdf_api_client)
#source PDF file
input_file = 'awesomeTable.pdf'
# Créer un objet définissant l'en-tête de texte
textHeader = asposepdfcloud.TextHeader()
# définir la valeur pour afficher l'en-tête en arrière-plan
textHeader.background = False
# définir l'alignement horizontal de l'en-tête de texte comme centre
textHeader.horizontal_alignment = 'Center'
# définir l'opacité de l'en-tête à 0,5
textHeader.opacity = 0.5
# pas d'angle de rotation
textHeader.rotate = None
textHeader.rotate_angle = 0
# définir la valeur d'indentation X et Y
textHeader.x_indent = 100
textHeader.y_indent = 100
# définir le facteur de zoom sur 1,0
textHeader.zoom = 1.0
# la valeur du texte à restituer dans l'en-tête
textHeader.value = 'Aspose.PDF Cloud'
# créer une instance de TextState définissant le formatage du texte
textState = asposepdfcloud.TextState(font_size=15, font='Arial', foreground_color=
{"A": 0,
"R": 252,
"G": 173,
"B": 3},font_style=2)
# passer l'objet TextState à TextHeader
textHeader.text_state = textState
# appeler l'API pour ajouter un en-tête de texte au document PDF
response = pdf_api.post_document_text_header(name = input_file, text_header = textHeader)
# imprimer le code de réponse dans la console
print(response)
# imprimer un message dans la console (facultatif)
print('Text Header successfully added to PDF !')
except ApiException as e:
print("Exception while calling PdfApi: {0}".format(e))
print("Code:" + str(e.code))
print("Message:" + e.message)

Image 2 : Aperçu de l’en-tête de texte dans le document PDF.
Les fichiers PDF d’entrée et résultants peuvent être téléchargés à partir de awesomeTable.pdf et awecomeTable-TextHeader.pdf.
Ajouter une image à l’en-tête PDF à l’aide de Python
Veuillez suivre les instructions ci-dessous pour ajouter un objet Image à la section d’en-tête du PDF. Le fichier résultant est téléchargé vers le stockage cloud.
- Tout d’abord, créez une instance de la classe ApiClient tout en fournissant l’ID client et le secret client comme arguments.
- Deuxièmement, créez un objet de classe PdfApi qui prend l’objet ApiClient comme argument d’entrée.
- Créez maintenant un objet ImageHeader définissant les propriétés de ImageHeader.
- Afin de contrôler le rendu de l’en-tête sur certaines pages, des valeurs sont attribuées aux paramètres facultatifs startpagenumber et endpagenumber.
- Enfin, appelez la méthode postdocumentimageheader(..) pour ajouter un en-tête d’image au document PDF et enregistrer le fichier résultant dans le stockage Cloud. Notez que l’en-tête n’est ajouté qu’aux deux premières pages du document (comme spécifié dans le code).
def addImageHeader():
try:
#Client credentials
client_secret = "1c9379bb7d701c26cc87e741a29987bb"
client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"
#initialize PdfApi client instance using client credetials
pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)
# créer une instance PdfApi en passant PdfApiClient comme argument
pdf_api = PdfApi(pdf_api_client)
#source PDF file
input_file = 'awesomeTable.pdf'
# créer une instance ImageHeader
imageHeader = asposepdfcloud.ImageHeader()
# définir la propriété d'arrière-plan sur true
imageHeader.background = True
# définir l'alignement horizontal à droite
imageHeader.horizontal_alignment = 'Right'
imageHeader.opacity = 0.7
imageHeader.rotate = None
imageHeader.rotate_angle = 0
imageHeader.x_indent = 10
imageHeader.y_indent = 10
imageHeader.zoom = .5
# nom du fichier image disponible dans le stockage cloud à ajouter dans l'en-tête
imageHeader.file_name = 'Koala.jpg'
# largeur de l'image dans l'en-tête
imageHeader.width = 120
# hauteur de l'image dans l'en-tête
imageHeader.height = 120
imageHeader.left_margin = 0
imageHeader.top_margin = 10
imageHeader.right_margin = 10
# page de démarrage du document pour ajouter un en-tête
startPage = 1
# page de fin du document pour ajouter un en-tête
endPage = 2
# appeler l'API pour ajouter un en-tête d'image dans le document PDF et enregistrer le fichier résultant dans le stockage cloud
response = pdf_api.post_document_image_header(name = input_file, image_header = imageHeader, start_page_number = startPage, end_page_number=endPage)
# code de réponse imprimé dans la console
print(response)
# imprimer un message dans la console (facultatif)
print('Image Header successfully added to PDF !')
except ApiException as e:
print("Exception while calling PdfApi: {0}".format(e))
print("Code:" + str(e.code))
print("Message:" + e.message)

Image 3:- Preview of Image Header added in PDF.
Les fichiers sources et le fichier résultant générés dans l’exemple ci-dessus peuvent être téléchargés à partir de
Ajout d’un en-tête de texte au PDF à l’aide de la commande cURL
Les commandes cURL fournissent un mécanisme pratique pour accéder aux API REST via des terminaux de ligne de commande. Étant donné qu’Aspose.PDF Cloud est également développé selon l’architecture REST, nous pouvons également accéder à l’API à l’aide de commandes cURL. Cette approche peut être utile pour les développeurs qui préfèrent travailler avec des outils de ligne de commande ou qui ont besoin d’intégrer l’édition d’en-têtes PDF dans un flux de travail d’automatisation plus vaste.
Désormais, pour utiliser l’API REST, nous devons générer un jeton d’accès Web JSON (JWT) basé sur les informations d’identification de votre client en exécutant la commande suivante.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=88d1cda8-b12c-4a80-b1ad-c85ac483c5c5&client_secret=406b404b2df649611e508bbcfcd2a77f" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Une fois que nous avons le jeton JWT, essayez d’utiliser la commande suivante pour ajouter du texte dans la section d’en-tête du document sur les 1ère et 2ème pages.
curl -X POST "https://api.aspose.cloud/v3.0/pdf/awesomeTable.pdf/header/text?startPageNumber=1&endPageNumber=2" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-H "Content-Type: application/json" \
-d "{ \"Background\": false, \"HorizontalAlignment\": \"Center\", \"Opacity\": 0.5, \"Rotate\": \"None\", \"RotateAngle\": 0, \"XIndent\": 100, \"YIndent\": 10, \"Zoom\": 1.0, \"TextAlignment\": \"None\", \"Value\": \"Aspose.PDF Cloud\", \"TextState\": { \"FontSize\": 15, \"Font\": \"Arial\", \"ForegroundColor\": { \"A\": 0, \"R\": 252, \"G\": 173, \"B\": 3 }, \"BackgroundColor\": { \"A\": 10, \"R\": 0, \"G\": 0, \"B\": 0 } }, \"LeftMargin\": 0, \"TopMargin\": 0, \"RightMargin\": 0}"
Ajout d’un en-tête d’image au PDF à l’aide de la commande cURL
Essayez d’utiliser la commande cURL suivante pour ajouter un en-tête d’image à un document PDF et enregistrer le fichier résultant dans le stockage cloud. Dans la commande suivante, l’en-tête de l’image correspond à la 1ère et à la 2ème page du document où l’opacité est définie à 0,7, le facteur de zoom à 0,5 et les propriétés de hauteur et de largeur de l’image sont définies à 120 points.
curl -X POST "https://api.aspose.cloud/v3.0/pdf/awesomeTable.pdf/header/image?startPageNumber=1&endPageNumber=2" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-H "Content-Type: application/json" \
-d "{ \"Background\": true, \"HorizontalAlignment\": \"Right\", \"Opacity\": 0.7, \"Rotate\": \"None\", \"RotateAngle\": 0, \"XIndent\": 10, \"YIndent\": 10, \"Zoom\": .5, \"FileName\": \"Koala.jpg\", \"Width\": 120, \"Height\": 120, \"LeftMargin\": 0, \"TopMargin\": 10, \"RightMargin\": 10}"
Conclusion
En conclusion, ajouter une image et du texte à l’en-tête d’un document PDF est une fonctionnalité utile qui peut améliorer l’attrait visuel et l’image de marque de vos documents. Avec Aspose.PDF Cloud SDK pour Python, c’est une tâche simple à accomplir avec seulement quelques lignes de code. Que vous créiez des factures, des rapports ou tout autre document nécessitant un en-tête, cette fonctionnalité peut vous faire gagner du temps et des efforts tout en améliorant la qualité de votre sortie. En plus d’utiliser Aspose.PDF Cloud SDK pour Python, nous avons également appris qu’il est également possible d’ajouter des images et du texte aux en-têtes PDF à l’aide de commandes cURL.
Nous espérons que cet article vous a fourni tous les conseils et l’inspiration nécessaires pour ajouter cette fonctionnalité à votre application Python.
Liens utiles
Articles connexes
Nous vous recommandons de consulter les articles suivants pour en savoir plus sur :