PDF — это популярный формат документов, обеспечивающий кросс-платформенную поддержку с рядом функций для создания многофункциональных документов. Кроме того, он поддерживает различные элементы, такие как мультимедиа, формы, аннотации, артефакты и т. д. Среди этих элементов гиперссылки довольно часто используются для навигации по PDF-файлу, от одного PDF-файла к другому, для открытия URL-адреса и т. д. Таким образом, в этой статье вы узнаете, как программно добавлять и обновлять гиперссылки в файлах PDF на Java.
- Java API для добавления гиперссылок в PDF
- Добавить гиперссылку в PDF
- Добавить гиперссылку для внешнего PDF
- Вставить гиперссылку на определенную страницу
- Обновить гиперссылку в PDF
Java API для добавления гиперссылок в PDF — скачать бесплатно
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 в 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");
Java Добавить гиперссылку для внешнего 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");
Java Вставить гиперссылку на определенную страницу 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 с помощью Java
Вы также можете получить гиперссылку из файла 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 для Java без ограничений на пробную версию.
Вывод
В этой статье вы узнали, как добавлять различные типы гиперссылок в файлы PDF с помощью Java. Кроме того, вы увидели, как извлекать гиперссылки из существующих PDF-файлов и программно обновлять их свойства. Кроме того, вы можете узнать больше о Java PDF API, используя документацию. Если у вас возникнут какие-либо вопросы или вопросы, вы можете связаться с нами через наш форум.