Les hyperliens dans les PDF offrent un moyen transparent et convivial de naviguer dans le document lui-même ou de diriger les utilisateurs vers des ressources externes. En incorporant des hyperliens, les PDF dépassent leur nature statique, permettant aux lecteurs d'accéder facilement à des sections spécifiques, à du contenu connexe ou à des sites Web pertinents en un seul clic. Cette fonctionnalité interactive améliore l'expérience utilisateur globale, rendant les documents PDF plus dynamiques, engageants et informatifs. Dans cet article, nous allons explorer comment ajouter des hyperliens à un PDF en utilisant Python.
Installer la bibliothèque requise
Avant de commencer le processus d'ajout d'hyperliens à un PDF avec Python, il est essentiel d'installer la bibliothèque nécessaire. Dans cet article, nous utiliserons Spire.PDF for Python. Spire.PDF for Python est une bibliothèque populaire pour travailler avec des fichiers PDF en Python. Elle vous permet de manipuler des PDF existants, y compris l'ajout d'hyperliens.
Pour installer cette bibliothèque, ouvrez le terminal de votre projet et exécutez la commande pip suivante :
pip install Spire.Pdf
Ajouter des hyperliens à un PDF avec Python
Spire.PDF for Python permet aux développeurs d'ajouter des hyperliens à un nouveau texte dans un PDF ou d'ajouter des hyperliens à un texte existant dans un PDF.
Exemple 1 : Ajouter des hyperliens à un nouveau texte dans un PDF avec Python
L'exemple de code suivant explique comment ajouter différents types d'hyperliens, tels que des liens Web, des liens de messagerie électronique et des liens de fichier, à un document PDF en utilisant Python et Spire.PDF for Python :
from spire.pdf.common import *
from spire.pdf import *
# Créer une instance de PdfDocument
pdf = PdfDocument()
# Ajouter une page
page = pdf.Pages.Add()
# Initialiser les coordonnées x, y
y = 30.0
x = 10.0
# Créer des polices TrueType
font = PdfTrueTypeFont("Arial", 14.0, PdfFontStyle.Regular, True)
font1 = PdfTrueTypeFont("Arial", 14.0, PdfFontStyle.Underline, True)
# Ajouter un lien simple
label = "Simple Text Link: "
format = PdfStringFormat()
format.MeasureTrailingSpaces = True
page.Canvas.DrawString(label, font, PdfBrushes.get_Orange(), 0.0, y, format)
x = font.MeasureString(label, format).Width
url = "http://www.e-iceblue.com"
page.Canvas.DrawString(url, font1, PdfBrushes.get_Blue(), x, y)
y = y + 28
# Ajouter un lien hypertexte
label = "Hypertext Link: "
page.Canvas.DrawString(label, font, PdfBrushes.get_Orange(), 0.0, y, format)
x = font.MeasureString(label, format).Width
webLink = PdfTextWebLink()
webLink.Text = "Home Page"
webLink.Url = url
webLink.Font = font1
webLink.Brush = PdfBrushes.get_Blue()
webLink.DrawTextWebLink(page.Canvas, PointF(x, y))
y = y + 28
# Ajouter un lien de messagerie électronique
label = "Email Link: "
page.Canvas.DrawString(label, font, PdfBrushes.get_Orange(), 0.0, y, format)
x = font.MeasureString(label, format).Width
link = PdfTextWebLink()
link.Text = "Contact Us"
link.Url = "mailto:support@e-iceblue.com"
link.Font = font1
link.Brush = PdfBrushes.get_Blue()
link.DrawTextWebLink(page.Canvas, PointF(x, y))
y = y + 28
# Ajouter un lien de fichier
label = "Document Link: "
page.Canvas.DrawString(label, font, PdfBrushes.get_Orange(), 0.0, y, format)
x = font.MeasureString(label, format).Width
text = "Open File"
location = PointF(x, y)
size = font1.MeasureString(text)
linkBounds = RectangleF(location, size)
fileLink = PdfFileLinkAnnotation(linkBounds,"C:\\Users\\Administrator\\Desktop\\Report.xlsx")
fileLinkBordure = PdfAnnotationBorder(0.0)
page.AnnotationsWidget.Add(fileLink)
page.Canvas.DrawString(text, font1, PdfBrushes.get_Blue(), x, y)
# Enregistrer le fichier PDF résultant
pdf.SaveToFile("AddLinkstoPDF.pdf")
pdf.Close()
Exemple 2 : Ajouter des hyperliens à un texte existant dans un PDF avec Python
L'exemple de code suivant explique comment ajouter des hyperliens à un texte existant dans un document PDF en utilisant Python et Spire.PDF for Python :
from spire.pdf.common import *
from spire.pdf import *
# Créer une instance de PdfDocument
pdf = PdfDocument()
# Charger un fichier PDF
pdf.LoadFromFile("input.pdf")
# Obtenir la première page
page = pdf.Pages[0]
# Rechercher toutes les occurrences du texte spécifié sur la page
collection = page.FindText("big O notation", TextFindParameter.IgnoreCase)
# Parcourir toutes les occurrences du texte spécifié
for findin collection.Finds:
# Créer une annotation de lien hypertexte
uri = PdfUriAnnotation(find.Bounds)
# Définir l'URL du lien hypertexte
uri.Uri = "https://en.wikipedia.org/wiki/Big_O_notation"
# Définir la bordure de l'annotation de lien hypertexte
uri.Border = PdfAnnotationBorder(1.0)
# Définir la couleur de la bordure
uri.Color = PdfRGBColor(Color.get_Blue())
# Ajouter l'annotation de lien hypertexte à la page
page.AnnotationsWidget.Add(uri)
# Enregistrer le fichier résultant
pdf.SaveToFile("SearchTextAndAddHyperlink.pdf")
pdf.Close()
Ces exemples de code démontrent comment ajouter des hyperliens à des documents PDF en utilisant Python et la bibliothèque Spire.PDF. En suivant ces exemples, vous pouvez améliorer l'interactivité et l'expérience utilisateur de vos fichiers PDF.
Top comments (0)