Lägg till eller uppdatera hyperlänkar i PDF med Java

PDF är ett populärt dokumentformat som ger plattformsoberoende stöd med en rad funktioner för att skapa rika dokument. Dessutom stöder den en mängd olika element som media, formulär, anteckningar, artefakter, etc. Bland dessa element används hyperlänkarna ganska ofta för att navigera i PDF:en, från en PDF till en annan, för att öppna en URL, etc. Så i den här artikeln kommer du att lära dig hur du lägger till och uppdaterar hyperlänkar i PDF-filer programmatiskt i Java.

Aspose.PDF för Java är ett fantastiskt API för PDF-generering och -manipulation. Med hjälp av API:et kan du sömlöst skapa, bearbeta och konvertera PDF-filer med enkla och komplexa layouter. Vi kommer att använda detta API för att lägga till och uppdatera hyperlänkar i PDF-filer. Du kan ladda ner API:s JAR eller installera den med hjälp av följande Maven-konfigurationer.

Förvar:

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

Beroende:

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

Följande är stegen för att lägga till en hyperlänk till en PDF-fil i Java.

Följande kodexempel visar hur man lägger till en hyperlänk i PDF i Java.

// Öppna dokumentet
Document document = new Document("input.pdf");

// Få referens till sidan
Page page = document.getPages().get_Item(1);

// Skapa länkanteckningsobjekt
LinkAnnotation link = new LinkAnnotation(page, new com.aspose.pdf.Rectangle(100, 100, 300, 300));

// Skapa kantobjekt för LinkAnnotation
Border border = new Border(link);

// Ställ in gränsbreddsvärdet som 0
border.setWidth ( 0);

// Ställ in gränsen för LinkAnnotation
link.setBorder(border);

// Ange länktypen som fjärr-URI
link.setAction( new GoToURIAction("www.aspose.com"));

// Lägg till länkkommentarer till anteckningssamlingen på första sidan i PDF-filen
page.getAnnotations().add(link);

// Spara uppdaterat dokument
document.save("output.pdf");

Du kan också navigera till en extern PDF-fil från en PDF med hjälp av en hyperlänk. Följande steg visar hur man lägger till en hyperlänk för en extern PDF-fil i Java.

Följande kodexempel visar hur man lägger till en hyperlänk för en extern PDF i Java.

// Öppna dokumentet
Document document = new Document("input.pdf");

// Få referens till sidan
Page page = document.getPages().get_Item(1);

// Skapa hyperlänk
LinkAnnotation link = new LinkAnnotation(page, new com.aspose.pdf.Rectangle(100, 100, 300, 300));
link.setColor(Color.getGreen());

// Ställ in åtgärd
link.setAction( new GoToRemoteAction("external.pdf", 1));

// Lägg till länkkommentarer till anteckningssamlingen på första sidan i PDF-filen
page.getAnnotations().add(link);

// Spara uppdaterat dokument
document.save("output.pdf");

I vissa fall måste du navigera från en sida till en annan i ett PDF-dokument. Klassen LocalHyperlink används för att navigera till en viss sida i en PDF. Följande är stegen för att uppnå detta.

Följande kodexempel visar hur man lägger till en hyperlänk för att navigera till en viss sida i PDF.

// Öppna dokumentet
Document document = new Document("input.pdf");

// Få referens till sidan
Page page = document.getPages().get_Item(1);

// Skapa TextFragment-instans
TextFragment text = new TextFragment("link page number test to page 7");

// Skapa lokal hyperlänksinstans
LocalHyperlink link = new LocalHyperlink();

// Ställ in målsida för länkinstans
link.setTargetPageNumber( 7);

// Ställ in TextFragment-hyperlänk
text.setHyperlink(link);

// Lägg till text i styckesamlingen på sidan
page.getParagraphs().add(text);

// Spara uppdaterat dokument
document.save("output.pdf");

Du kan också hämta en hyperlänk från en PDF-fil och uppdatera dess egenskaper. Följande är stegen för att utföra denna operation.

Följande kodexempel visar hur du uppdaterar en hyperlänk i PDF med Java.

// Öppna dokumentet
Document document = new Document("input.pdf");

// Få den första länkanteckningen från första sidan i dokumentet
LinkAnnotation linkAnnot = (LinkAnnotation)document.getPages().get_Item(1).getAnnotations().get_Item(1);

// Ändra länkåtgärd och ange mål som webbadress
linkAnnot.setAction(new GoToURIAction("www.aspose.com"));

// Ändra andra egenskaper efter behov

// Spara uppdaterat dokument
document.save("output.pdf");

Java API för att lägga till hyperlänkar i PDF - Skaffa en gratis licens

Du kan skaffa en gratis tillfällig licens för att använda Aspose.PDF för Java utan utvärderingsbegränsningar.

Slutsats

I den här artikeln har du lärt dig hur du lägger till olika typer av hyperlänkar i PDF-filer med hjälp av Java. Dessutom har du sett hur man hämtar hyperlänkarna från befintliga PDF-filer och uppdaterar deras egenskaper programmatiskt. Dessutom kan du utforska mer om Java PDF API med hjälp av dokumentationen. Om du skulle ha några frågor eller funderingar kan du kontakta oss via vårt forum.

Se även