Я использую icepdf, чтобы показать pdf на моем приложении swing. У меня есть внешние кнопки для навигации по PDF. Мне нужно ориентироваться так много PDF файлов, но внутри одной панели без закрытия.
Мой код для Icepdf:
public static void pdfviewerICE(currentpdfurl) {
filePath = currentpdfurl;
// build a controller
SwingController controller = new SwingController();
// Build a SwingViewFactory configured with the controller
SwingViewBuilder factory = new SwingViewBuilder(controller);
PropertiesManager properties = new PropertiesManager(
System.getProperties(),
ResourceBundle.getBundle(PropertiesManager.DEFAULT_MESSAGE_BUNDLE));
properties.set(PropertiesManager.PROPERTY_DEFAULT_ZOOM_LEVEL, "1.75");
JSplitPane jSplitPane_PDF = factory.buildUtilityAndDocumentSplitPane(true);
controller.openDocument(filePath);
if ((internalFrame.getComponents()!= null) || (internalFrame.isClosed())) {
internalFrame.add(jSplitPane_PDF);
internalFrame.show();
}
}
Это загружает один и тот же pdf каждый раз.
Прасат Бала,
вы должны сделать "контроллер" общедоступным. Затем позвоните своему контроллеру при изменении страницы pdf
Код: controller.openDocument(currentpdfurl);
У меня тоже была такая же проблема, это решит ваш запрос наверняка.
CardLayout
?