PDF est un format de document riche en fonctionnalités qui prend en charge une gamme d’éléments, notamment des annotations, des médias, des formulaires, etc. Le lien hypertexte est un élément important utilisé pour naviguer dans le PDF, d’un PDF à un autre, à un page Web, etc. Lors de la génération des documents PDF par programmation, vous devrez souvent insérer des hyperliens. Par conséquent, dans cet article, vous apprendrez à ajouter et à mettre à jour des liens hypertexte dans des fichiers PDF en C# .NET.
- API .NET pour ajouter des hyperliens en PDF
- Ajouter un lien hypertexte dans un PDF
- Ajouter un lien hypertexte vers un PDF externe
- Insérer un lien hypertexte vers une page particulière
- Mettre à jour un lien hypertexte en PDF
API C# .NET pour ajouter ou mettre à jour des hyperliens dans un PDF
Pour manipuler les hyperliens dans les fichiers PDF, nous utiliserons Aspose.PDF for .NET. Il s’agit d’une API populaire qui vous permet de créer, de traiter et de convertir des fichiers PDF à partir d’applications .NET. Vous pouvez télécharger les binaires de l’API ou l’installer à l’aide de NuGet.
PM> Install-Package Aspose.PDF
Ajouter un lien hypertexte dans un PDF en C#
Voici les étapes pour ajouter un lien hypertexte vers un fichier PDF en C#.
- Créez un nouveau PDF ou chargez-en un existant à l’aide de la classe Document.
- Obtenez la référence de la page où vous souhaitez ajouter un lien hypertexte à partir de la collection Document.Pages.
- Créez un objet de la classe LinkAnnotation et définissez ses propriétés.
- Initialisez la propriété LinkAnnotation.Action à l’objet GoToURIAction contenant l’URL.
- Ajouter un lien vers la collection Page.Annotations.
- Enregistrez le PDF à l’aide de la méthode Document.Save(String).
L’exemple de code suivant montre comment ajouter un lien hypertexte dans un PDF en C#.
// Ouvrir le document
Document document = new Document("input.pdf");
// Obtenir la référence de la page
var page = document.Pages[1];
// Créer un objet d'annotation de lien
LinkAnnotation link = new LinkAnnotation(page, new Aspose.Pdf.Rectangle(100, 100, 300, 300));
// Créer un objet de bordure pour LinkAnnotation
Border border = new Border(link);
// Définissez la valeur de largeur de bordure sur 0
border.Width = 0;
// Définir la bordure pour LinkAnnotation
link.Border = border;
// Spécifiez le type de lien en tant qu'URI distant
link.Action = new GoToURIAction("www.aspose.com");
// Ajouter une annotation de lien à la collection d'annotations de la première page du fichier PDF
page.Annotations.Add(link);
// Enregistrer le document mis à jour
document.Save("output.pdf");
Ajouter un lien hypertexte vers un PDF externe en C#
Vous pouvez également accéder à un fichier PDF externe à partir d’un PDF à l’aide d’un lien hypertexte. Les étapes suivantes montrent comment ajouter un lien hypertexte vers un fichier PDF externe en C#.
- Créez un nouveau PDF ou chargez-en un existant à l’aide de la classe Document.
- Obtenez la référence de la page où vous souhaitez ajouter un lien hypertexte à partir de la collection Document.Pages.
- Créez un objet de la classe LinkAnnotation et définissez ses propriétés.
- Initialisez la propriété LinkAnnotation.Action à l’objet GoToRemoteAction contenant le chemin d’accès au PDF externe.
- Ajouter un lien vers la collection Page.Annotations.
- Enregistrez le document à l’aide de la méthode Document.Save(String).
L’exemple de code suivant montre comment ajouter un lien hypertexte vers un PDF externe en C#.
// Ouvrir le document
Document document = new Document("input.pdf");
// Obtenir la référence de la page
var page = document.Pages[1];
// Créer un lien hypertexte
LinkAnnotation link = new LinkAnnotation(page, new Aspose.Pdf.Rectangle(100, 100, 300, 300));
link.Color = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);
// Définir l'action
link.Action = new GoToRemoteAction("external.pdf", 1);
// Ajouter un lien hypertexte à la page
page.Annotations.Add(link);
// Enregistrer le document mis à jour
document.Save("output.pdf");
Insérer un lien hypertexte vers une page PDF particulière
Dans certains cas, vous devez naviguer d’une page à l’autre au sein d’un document PDF. La classe LocalHyperlink est utilisée pour naviguer vers la page particulière d’un PDF. Voici les étapes pour y parvenir.
- Créez un nouveau PDF ou chargez-en un existant à l’aide de la classe Document.
- Obtenez la référence de la page où vous souhaitez ajouter un lien hypertexte à partir de la collection Document.Pages.
- Créez une instance de TextFragment pour définir le texte du lien hypertexte.
- Créez une instance de la classe LocalHyperlink et définissez la propriété LocalHyperlink.TargetPageNumber sur le numéro de page souhaité.
- Affectez l’objet LocalHyperlink à la propriété TextFragment.Hyperlink.
- Ajoutez du texte à la page à l’aide de la méthode Page.Paragraphs.Add(TextFragment).
- Enregistrez le PDF à l’aide de la méthode Document.Save(String).
L’exemple de code suivant montre comment ajouter un lien hypertexte pour accéder à une page particulière dans un PDF.
// Ouvrir le document
Document document = new Document("input.pdf");
// Obtenir la référence de la page
var page = document.Pages[1];
// Créer une instance TextFragment
Aspose.Pdf.Text.TextFragment text = new Aspose.Pdf.Text.TextFragment("link page number test to page 7");
// Créer une instance de lien hypertexte local
Aspose.Pdf.LocalHyperlink link = new Aspose.Pdf.LocalHyperlink();
// Définir la page cible pour l'instance de lien
link.TargetPageNumber = 7;
// Définir le lien hypertexte TextFragment
text.Hyperlink = link;
// Ajouter du texte à la collection de paragraphes de la page
page.Paragraphs.Add(text);
// Enregistrer le document mis à jour
document.Save("output.pdf");
Mettre à jour un lien hypertexte dans un PDF à l’aide de C#
Vous pouvez également récupérer un lien hypertexte dans un fichier PDF et mettre à jour ses propriétés. Voici les étapes pour effectuer cette opération.
- Chargez le fichier PDF à l’aide de la classe Document.
- Obtenez la référence de la page où se trouve le lien hypertexte à partir de la collection Document.Pages.
- Extrayez l’objet LinkAnnotation souhaité de la collection Page.Annotations par index.
- Mettez à jour les propriétés requises et enregistrez le PDF à l’aide de la méthode Document.Save(String).
L’exemple de code suivant montre comment mettre à jour un lien hypertexte dans un PDF à l’aide de C#.
// Ouvrir le document
Document document = new Document("input.pdf");];
// Obtenir la première annotation de lien de la première page du document
LinkAnnotation linkAnnot = (LinkAnnotation)document.Pages[1].Annotations[1];
// Modifier l'action du lien et définir la cible comme adresse Web
linkAnnot.Action = new GoToURIAction("www.aspose.com");
// Modifier les autres propriétés si nécessaire
// Enregistrer le document mis à jour
document.Save("output.pdf");
Obtenez une licence gratuite
Vous pouvez obtenir une licence temporaire gratuite afin d’utiliser Aspose.PDF for .NET sans limitation d’évaluation.
Conclusion
Dans cet article, vous avez appris à ajouter différents types de liens hypertexte dans des fichiers PDF à l’aide de C#. De plus, vous avez vu comment récupérer les hyperliens à partir de fichiers PDF existants et mettre à jour leurs propriétés par programmation. En outre, vous pouvez en savoir plus sur l’API PDF .NET à l’aide de la documentation. Si vous avez des questions ou des questions, vous pouvez nous contacter via notre forum.