Додайте або оновіть гіперпосилання в PDF за допомогою Java

PDF – це популярний формат документів, який забезпечує крос-платформну підтримку з рядом функцій для створення насичених документів. Крім того, він підтримує різноманітні елементи, такі як медіафайли, форми, анотації, артефакти тощо. Серед цих елементів гіперпосилання досить часто використовуються для навігації в PDF-файлі, від одного PDF-файлу до іншого, для відкриття URL-адреси тощо. У цій статті ви дізнаєтеся, як програмно додавати й оновлювати гіперпосилання у PDF-файлах у Java.

Aspose.PDF for Java — це дивовижний API для генерації та обробки PDF-файлів. Використовуючи API, ви можете легко створювати, обробляти та конвертувати PDF-файли з простим і складним макетом. Ми використовуватимемо цей API для додавання та оновлення гіперпосилань у файлах PDF. Ви можете завантажити JAR API або встановити його за допомогою наведених нижче конфігурацій Maven.

Репозиторій:

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

Залежність:

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

Нижче наведено кроки, щоб додати гіперпосилання до PDF-файлу в Java.

  • Створіть новий PDF-файл або завантажте наявний за допомогою класу Document.
  • Отримайте посилання на сторінку, на яку ви хочете додати гіперпосилання, із колекції Document.getPages().
  • Створіть об’єкт класу LinkAnnotation і встановіть його властивості.
  • Використовуйте метод LinkAnnotation.setAction(), щоб призначити об’єкт GoToURIAction, що містить URL-адресу.
  • Додайте гіперпосилання на сторінку за допомогою методу Page.getAnnotations().add().
  • Збережіть PDF за допомогою методу Document.save(String).

У наведеному нижче прикладі коду показано, як додати гіперпосилання в PDF у Java.

// відкритий документ
Document document = new Document("input.pdf");

// Отримати посилання на сторінку
Page page = document.getPages().get_Item(1);

// Створити об’єкт анотації посилання
LinkAnnotation link = new LinkAnnotation(page, new com.aspose.pdf.Rectangle(100, 100, 300, 300));

// Створіть межовий об’єкт для LinkAnnotation
Border border = new Border(link);

// Встановіть значення ширини рамки як 0
border.setWidth ( 0);

// Установіть рамку для LinkAnnotation
link.setBorder(border);

// Укажіть тип посилання як віддалений URI
link.setAction( new GoToURIAction("www.aspose.com"));

// Додайте анотацію посилання до колекції анотацій першої сторінки файлу PDF
page.getAnnotations().add(link);

// Зберегти оновлений документ
document.save("output.pdf");

Ви також можете перейти до зовнішнього PDF-файлу з PDF-файлу за допомогою гіперпосилання. Наступні кроки демонструють, як додати гіперпосилання для зовнішнього файлу PDF у Java.

  • Створіть новий PDF-файл або завантажте наявний за допомогою класу Document.
  • Отримайте посилання на сторінку, на яку ви хочете додати гіперпосилання, із колекції Document.getPages().
  • Створіть об’єкт класу LinkAnnotation і встановіть його властивості.
  • Використовуйте метод LinkAnnotation.setAction(), щоб установити дію для об’єкта GoToRemoteAction, який містить шлях до зовнішнього PDF-файлу.
  • Додайте гіперпосилання на сторінку за допомогою методу Page.getAnnotations().add().
  • Збережіть PDF за допомогою методу Document.save(String).

У наведеному нижче прикладі коду показано, як додати гіперпосилання для зовнішнього PDF-файлу в Java.

// відкритий документ
Document document = new Document("input.pdf");

// Отримати посилання на сторінку
Page page = document.getPages().get_Item(1);

// Створити гіперпосилання
LinkAnnotation link = new LinkAnnotation(page, new com.aspose.pdf.Rectangle(100, 100, 300, 300));
link.setColor(Color.getGreen());

// Встановити дію
link.setAction( new GoToRemoteAction("external.pdf", 1));

// Додайте анотацію посилання до колекції анотацій першої сторінки файлу PDF
page.getAnnotations().add(link);

// Зберегти оновлений документ
document.save("output.pdf");

У деяких випадках вам потрібно переходити від однієї сторінки до іншої в межах документа PDF. Клас LocalHyperlink використовується для переходу до певної сторінки в PDF. Нижче наведено кроки для досягнення цього.

  • Створіть новий PDF-файл або завантажте наявний за допомогою класу Document.
  • Отримайте посилання на сторінку, на яку потрібно додати гіперпосилання, із колекції Document.getPages().
  • Створіть екземпляр класу TextFragment, щоб задати текст гіперпосилання.
  • Створіть екземпляр класу LocalHyperlink і використовуйте метод LocalHyperlink.setTargetPageNumber(), щоб установити номер цільової сторінки.
  • Призначте об’єкт LocalHyperlink за допомогою методу TextFragment.setHyperlink().
  • Додайте текст на сторінку за допомогою методу Page.getParagraphs().add(TextFragment).
  • Збережіть PDF за допомогою методу Document.save(String).

У наведеному нижче прикладі коду показано, як додати гіперпосилання для переходу до певної сторінки в PDF.

// відкритий документ
Document document = new Document("input.pdf");

// Отримати посилання на сторінку
Page page = document.getPages().get_Item(1);

// Створіть екземпляр TextFragment
TextFragment text = new TextFragment("link page number test to page 7");

// Створити екземпляр локального гіперпосилання
LocalHyperlink link = new LocalHyperlink();

// Встановіть цільову сторінку для екземпляра посилання
link.setTargetPageNumber( 7);

// Встановити гіперпосилання TextFragment
text.setHyperlink(link);

// Додати текст до колекції абзаців сторінки
page.getParagraphs().add(text);

// Зберегти оновлений документ
document.save("output.pdf");

Ви також можете отримати гіперпосилання з PDF-файлу та оновити його властивості. Нижче наведено кроки для виконання цієї операції.

  • Створіть новий PDF-файл або завантажте наявний за допомогою класу Document.
  • Отримайте посилання на сторінку, на якій розміщено гіперпосилання, із колекції Document.getPages().
  • Витягніть потрібний об’єкт LinkAnnotation за індексом за допомогою методу Page.getAnnotations().getitem().
  • Оновіть потрібні властивості гіперпосилання та збережіть PDF за допомогою методу Document.save(String).

У наведеному нижче прикладі коду показано, як оновити гіперпосилання в PDF за допомогою Java.

// відкритий документ
Document document = new Document("input.pdf");

// Отримайте першу анотацію посилання з першої сторінки документа
LinkAnnotation linkAnnot = (LinkAnnotation)document.getPages().get_Item(1).getAnnotations().get_Item(1);

// Змінити дію посилання та встановити ціль як веб-адресу
linkAnnot.setAction(new GoToURIAction("www.aspose.com"));

// За потреби змініть інші властивості

// Зберегти оновлений документ
document.save("output.pdf");

Java API для додавання гіперпосилань у PDF – отримайте безкоштовну ліцензію

Ви можете отримати безкоштовну тимчасову ліцензію, щоб використовувати Aspose.PDF for Java без оціночних обмежень.

Висновок

У цій статті ви дізналися, як додавати різні типи гіперпосилань у файли PDF за допомогою Java. Крім того, ви побачили, як отримати гіперпосилання з наявних PDF-файлів і оновити їхні властивості програмним шляхом. Крім того, ви можете дізнатися більше про Java PDF API за допомогою документації. Якщо у вас виникнуть запитання чи запити, ви можете зв’язатися з нами через наш форум.

Дивись також