Ajouter ou mettre à jour des hyperliens dans un PDF à l'aide de C# .NET

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.

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

Voici les étapes pour ajouter un lien hypertexte vers un fichier PDF en C#.

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");

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#.

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");

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.

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");

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.

Voir également