Aggiungi o aggiorna i collegamenti ipertestuali in PDF utilizzando Java

PDF è un popolare formato di documento che fornisce supporto multipiattaforma con una gamma di funzionalità per creare documenti avanzati. Inoltre, supporta una varietà di elementi come media, moduli, annotazioni, artefatti, ecc. Tra questi elementi, i collegamenti ipertestuali vengono utilizzati abbastanza spesso per navigare all’interno del PDF, da un PDF all’altro, per aprire un URL, ecc. Quindi in questo articolo imparerai come aggiungere e aggiornare i collegamenti ipertestuali nei file PDF in modo programmatico in Java.

Aspose.PDF for Java è un’API straordinaria per la generazione e la manipolazione di PDF. Utilizzando l’API, puoi creare, elaborare e convertire senza problemi file PDF di layout semplici e complessi. Utilizzeremo questa API per aggiungere e aggiornare i collegamenti ipertestuali nei file PDF. Puoi scaricare il JAR dell’API o installarlo utilizzando le seguenti configurazioni Maven.

Archivio:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

Dipendenza:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>22.4</version>
</dependency>

Di seguito sono riportati i passaggi per aggiungere un collegamento ipertestuale a un file PDF in Java.

L’esempio di codice seguente mostra come aggiungere un collegamento ipertestuale in PDF in Java.

// Apri documento
Document document = new Document("input.pdf");

// Ottieni il riferimento della pagina
Page page = document.getPages().get_Item(1);

// Crea oggetto Annotazione collegamento
LinkAnnotation link = new LinkAnnotation(page, new com.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.setWidth ( 0);

// Imposta il bordo per LinkAnnotation
link.setBorder(border);

// Specificare il tipo di collegamento come URI remoto
link.setAction( new GoToURIAction("www.aspose.com"));

// Aggiungi un'annotazione di collegamento alla raccolta di annotazioni della prima pagina del file PDF
page.getAnnotations().add(link);

// Salva documento aggiornato
document.save("output.pdf");

Puoi anche passare a un file PDF esterno da un PDF utilizzando un collegamento ipertestuale. I passaggi seguenti mostrano come aggiungere un collegamento ipertestuale per un file PDF esterno in Java.

L’esempio di codice seguente mostra come aggiungere un collegamento ipertestuale per un PDF esterno in Java.

// Apri documento
Document document = new Document("input.pdf");

// Ottieni il riferimento della pagina
Page page = document.getPages().get_Item(1);

// Crea collegamento ipertestuale
LinkAnnotation link = new LinkAnnotation(page, new com.aspose.pdf.Rectangle(100, 100, 300, 300));
link.setColor(Color.getGreen());

// Imposta l'azione
link.setAction( new GoToRemoteAction("external.pdf", 1));

// Aggiungi un'annotazione di collegamento alla raccolta di annotazioni della prima pagina del file PDF
page.getAnnotations().add(link);

// Salva documento aggiornato
document.save("output.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.

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
Page page = document.getPages().get_Item(1);

// Crea istanza TextFragment
TextFragment text = new TextFragment("link page number test to page 7");

// Crea un'istanza di collegamento ipertestuale locale
LocalHyperlink link = new LocalHyperlink();

// Imposta la pagina di destinazione per l'istanza del collegamento
link.setTargetPageNumber( 7);

// Imposta il collegamento ipertestuale Frammento di testo
text.setHyperlink(link);

// Aggiungi testo alla raccolta di paragrafi di Page
page.getParagraphs().add(text);

// Salva documento aggiornato
document.save("output.pdf");

Puoi anche recuperare un collegamento ipertestuale da un file PDF e aggiornarne le proprietà. Di seguito sono riportati i passaggi per eseguire questa operazione.

L’esempio di codice seguente mostra come aggiornare un collegamento ipertestuale in PDF utilizzando Java.

// Apri documento
Document document = new Document("input.pdf");

// Ottieni la prima annotazione del collegamento dalla prima pagina del documento
LinkAnnotation linkAnnot = (LinkAnnotation)document.getPages().get_Item(1).getAnnotations().get_Item(1);

// Modifica l'azione del collegamento e imposta la destinazione come indirizzo web
linkAnnot.setAction(new GoToURIAction("www.aspose.com"));

// Modifica altre proprietà come richiesto

// Salva documento aggiornato
document.save("output.pdf");

API Java per aggiungere collegamenti ipertestuali in PDF - Ottieni una licenza gratuita

Puoi ottenere una licenza temporanea gratuita per utilizzare Aspose.PDF per Java senza limitazioni di valutazione.

Conclusione

In questo articolo, hai imparato come aggiungere diversi tipi di collegamenti ipertestuali nei file PDF utilizzando Java. 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 Java PDF utilizzando la documentazione. In caso di domande o domande, puoi contattarci tramite il nostro forum.

Guarda anche