PDF è un formato di documento ricco di funzionalità che supporta una gamma di elementi tra cui annotazioni, file multimediali, moduli, ecc. Il collegamento ipertestuale è un elemento importante che viene utilizzato per navigare all’interno del PDF, da un PDF all’altro, a un pagina web, ecc. Durante la generazione dei documenti PDF in modo programmatico, potrebbe essere necessario inserire spesso collegamenti ipertestuali. Di conseguenza, in questo articolo imparerai come aggiungere e aggiornare i collegamenti ipertestuali nei file PDF in C# .NET.
- API .NET per aggiungere collegamenti ipertestuali in PDF
- Aggiungi collegamento ipertestuale in un PDF
- Aggiungi collegamento ipertestuale a un PDF esterno
- Inserisci collegamento ipertestuale a una pagina particolare
- Aggiorna un collegamento ipertestuale in PDF
API C# .NET per aggiungere o aggiornare collegamenti ipertestuali in PDF
Per manipolare i collegamenti ipertestuali nei file PDF, utilizzeremo Aspose.PDF for .NET. È un’API popolare che consente di creare, elaborare e convertire file PDF dall’interno di applicazioni .NET. Puoi scaricare i binari dell’API o installarlo utilizzando NuGet.
PM> Install-Package Aspose.PDF
Aggiungi collegamento ipertestuale in un PDF in C#
Di seguito sono riportati i passaggi per aggiungere un collegamento ipertestuale a un file PDF in C#.
- Crea un nuovo PDF o caricane uno esistente usando la classe Documento.
- Ottieni il riferimento della pagina in cui desideri aggiungere il collegamento ipertestuale dalla raccolta Document.Pages.
- Crea un oggetto della classe LinkAnnotation e imposta le sue proprietà.
- Inizializza la proprietà LinkAnnotation.Action sull’oggetto GoToURIAction contenente l’URL.
- Aggiungi link alla raccolta Page.Annotations.
- Salva PDF utilizzando il metodo Document.Save(String).
L’esempio di codice seguente mostra come aggiungere un collegamento ipertestuale in PDF in C#.
// Apri documento
Document document = new Document("input.pdf");
// Ottieni il riferimento della pagina
var page = document.Pages[1];
// Crea oggetto Annotazione collegamento
LinkAnnotation link = new LinkAnnotation(page, new Aspose.Pdf.Rectangle(100, 100, 300, 300));
// Crea oggetto bordo per LinkAnnotation
Border border = new Border(link);
// Imposta il valore della larghezza del bordo su 0
border.Width = 0;
// Imposta il bordo per LinkAnnotation
link.Border = border;
// Specificare il tipo di collegamento come URI remoto
link.Action = new GoToURIAction("www.aspose.com");
// Aggiungi un'annotazione di collegamento alla raccolta di annotazioni della prima pagina del file PDF
page.Annotations.Add(link);
// Salva documento aggiornato
document.Save("output.pdf");
Aggiungi collegamento ipertestuale a un PDF esterno in C#
Puoi anche passare a un file PDF esterno da un PDF utilizzando un collegamento ipertestuale. I passaggi seguenti illustrano come aggiungere un collegamento ipertestuale a un file PDF esterno in C#.
- Crea un nuovo PDF o caricane uno esistente utilizzando la classe Documento.
- Ottieni il riferimento della pagina in cui desideri aggiungere il collegamento ipertestuale dalla raccolta Document.Pages.
- Crea un oggetto della classe LinkAnnotation e imposta le sue proprietà.
- Inizializza la proprietà LinkAnnotation.Action sull’oggetto GoToRemoteAction contenente il percorso del PDF esterno.
- Aggiungi link alla raccolta Page.Annotations.
- Salva il documento usando il metodo Document.Save(String).
L’esempio di codice seguente mostra come aggiungere un collegamento ipertestuale a un PDF esterno in C#.
// Apri documento
Document document = new Document("input.pdf");
// Ottieni il riferimento della pagina
var page = document.Pages[1];
// Crea collegamento ipertestuale
LinkAnnotation link = new LinkAnnotation(page, new Aspose.Pdf.Rectangle(100, 100, 300, 300));
link.Color = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);
// Imposta l'azione
link.Action = new GoToRemoteAction("external.pdf", 1);
// Aggiungi collegamento ipertestuale alla pagina
page.Annotations.Add(link);
// Salva documento aggiornato
document.Save("output.pdf");
Inserisci collegamento ipertestuale a una particolare pagina PDF
In alcuni casi, devi navigare da una pagina all’altra all’interno di un documento PDF. La classe LocalHyperlink viene utilizzata per passare a una pagina particolare in un PDF. Di seguito sono riportati i passaggi per raggiungere questo obiettivo.
- Crea un nuovo PDF o caricane uno esistente utilizzando la classe Documento.
- Ottieni il riferimento della pagina in cui desideri aggiungere il collegamento ipertestuale dalla raccolta Document.Pages.
- Crea un’istanza di TextFragment per impostare il testo del collegamento ipertestuale.
- Crea un’istanza della classe LocalHyperlink e imposta la proprietà LocalHyperlink.TargetPageNumber sul numero di pagina desiderato.
- Assegna l’oggetto LocalHyperlink alla proprietà TextFragment.Hyperlink.
- Aggiungi testo alla pagina usando il metodo Page.Paragraphs.Add(TextFragment).
- Salva PDF utilizzando il metodo Document.Save(String).
L’esempio di codice seguente mostra come aggiungere un collegamento ipertestuale per passare a una determinata pagina in PDF.
// Apri documento
Document document = new Document("input.pdf");
// Ottieni il riferimento della pagina
var page = document.Pages[1];
// Crea istanza TextFragment
Aspose.Pdf.Text.TextFragment text = new Aspose.Pdf.Text.TextFragment("link page number test to page 7");
// Crea un'istanza di collegamento ipertestuale locale
Aspose.Pdf.LocalHyperlink link = new Aspose.Pdf.LocalHyperlink();
// Imposta la pagina di destinazione per l'istanza del collegamento
link.TargetPageNumber = 7;
// Imposta il collegamento ipertestuale Frammento di testo
text.Hyperlink = link;
// Aggiungi testo alla raccolta di paragrafi di Page
page.Paragraphs.Add(text);
// Salva documento aggiornato
document.Save("output.pdf");
Aggiorna un collegamento ipertestuale in PDF usando C#
Puoi anche recuperare un collegamento ipertestuale in un file PDF e aggiornarne le proprietà. Di seguito sono riportati i passaggi per eseguire questa operazione.
- Carica il file PDF utilizzando la classe Documento.
- Ottieni il riferimento della pagina in cui si trova il collegamento ipertestuale dalla raccolta Document.Pages.
- Estrarre l’oggetto LinkAnnotation desiderato dalla raccolta Page.Annotation per indice.
- Aggiorna le proprietà richieste e salva PDF utilizzando il metodo Document.Save(String).
L’esempio di codice seguente mostra come aggiornare un collegamento ipertestuale in PDF usando C#.
// Apri documento
Document document = new Document("input.pdf");];
// Ottieni la prima annotazione del collegamento dalla prima pagina del documento
LinkAnnotation linkAnnot = (LinkAnnotation)document.Pages[1].Annotations[1];
// Modifica l'azione del collegamento e imposta la destinazione come indirizzo web
linkAnnot.Action = new GoToURIAction("www.aspose.com");
// Modifica altre proprietà come richiesto
// Salva documento aggiornato
document.Save("output.pdf");
Ottieni una licenza gratuita
Puoi ottenere una licenza temporanea gratuita per utilizzare Aspose.PDF per .NET senza limitazioni di valutazione.
Conclusione
In questo articolo, hai imparato come aggiungere diversi tipi di collegamenti ipertestuali nei file PDF usando C#. Inoltre, hai visto come recuperare i collegamenti ipertestuali da file PDF esistenti e aggiornare le loro proprietà a livello di codice. Inoltre, puoi esplorare di più sull’API .NET PDF utilizzando la documentazione. In caso di domande o domande, puoi contattarci tramite il nostro forum.