Создание ссылок PDF в Java
Contents
[
Hide
]
Aspose.PDF for Java использует LinkAnnotation вместе с объектом действия для определения поведения ссылки.
Создание ссылки с действием запуска
Используйте этот пример, когда аннотация ссылки должна запускать внешний файл или цель.
- Откройте исходный PDF в объекте Document и выберите целевую страницу.
- Создайте LinkAnnotation и настройте его границу и цвет.
- Назначьте LaunchAction и сохраните документ.
public static void createLinkAnnotationLaunchAction(Path inputFile, Path outputFile) {
try (Document document = new Document(inputFile.toString())) {
Page page = document.getPages().get_Item(1);
LinkAnnotation link = new LinkAnnotation(page, new Rectangle(10, 580, 120, 600, true));
Border border = new Border(link);
border.setWidth(5);
border.setDash(new Dash(1, 1));
link.setBorder(border);
link.setColor(Color.getGreen());
link.setAction(new LaunchAction(document, inputFile.toString()));
page.getAnnotations().add(link);
document.save(outputFile.toString());
}
}
Создание удалённой ссылки перехода
Используйте этот пример, когда ссылка должна открывать страницу в другом PDF‑документе.
- Откройте исходный PDF в объекте Document.
- Создайте LinkAnnotation на целевой странице.
- Назначьте GoToRemoteAction и сохраните файл вывода.
public static void createLinkAnnotationGoToRemoteAction(Path inputFile, Path outputFile) {
try (Document document = new Document(inputFile.toString())) {
Page page = document.getPages().get_Item(1);
LinkAnnotation link = new LinkAnnotation(page, new Rectangle(10, 580, 120, 600, true));
link.setColor(Color.getGreen());
link.setAction(new GoToRemoteAction(inputFile.toString(), 1));
page.getAnnotations().add(link);
document.save(outputFile.toString());
}
}
Создание внутренней ссылки перехода
Используйте этот пример, когда ссылка должна переходить на другую страницу внутри того же PDF‑документа.
- Откройте исходный PDF в объекте Документ.
- Создайте LinkAnnotation и настройте его внешний вид.
- Назначьте GoToAction на страницу назначения и сохраните документ.
public static void createLinkAnnotationGoToAction(Path inputFile, Path outputFile) {
try (Document document = new Document(inputFile.toString())) {
Page page = document.getPages().get_Item(1);
LinkAnnotation link = new LinkAnnotation(page, new Rectangle(10, 580, 120, 600, true));
Border border = new Border(link);
border.setWidth(5);
border.setDash(new Dash(1, 1));
link.setBorder(border);
link.setColor(Color.getGreen());
if (document.getPages().size() >= 4) {
link.setAction(new GoToAction(document.getPages().get_Item(4)));
} else {
link.setAction(new GoToAction(document.getPages().get_Item(document.getPages().size())));
}
page.getAnnotations().add(link);
document.save(outputFile.toString());
}
}
Создание URI‑ссылки
Используйте этот пример, когда ссылка должна открывать веб-ресурс через действие URI.
- Откройте исходный PDF в объекте Документ.
- Создайте LinkAnnotation на странице.
- Назначьте GoToURIAction и сохраните файл вывода.
public static void createLinkAnnotationGoToUriAction(Path inputFile, Path outputFile) {
try (Document document = new Document(inputFile.toString())) {
Page page = document.getPages().get_Item(1);
LinkAnnotation link = new LinkAnnotation(page, new Rectangle(10, 580, 120, 600, true));
link.setColor(Color.getGreen());
link.setAction(new GoToURIAction("https://docs.aspose.com/pdf/python"));
page.getAnnotations().add(link);
document.save(outputFile.toString());
}
}