JPedal includes a very comprehensive PDF viewer which makes use of both Swing and JavaFX for the best possible viewing solution. It is written in Java but can be run from other languages or command line.
If you do not have a JPedal, you can download a trial copy from here.
PDF Viewer from Command Line or another language
java -jar jpedal.jar --view "pdfFile.pdf"
PDF Viewer in Java - simple example
Viewer viewer = new Viewer(rootContainer, null); viewer.setupViewer();
This uses the JPedal Viewer class.
Java PDF Viewer - add Viewer to another Swing Component
//Create display JFrame
JFrame frame = new JFrame();
final JPanel rootContainer = new JPanel();
//additional label to show this is another program
final JLabel label = new JLabel("JPedal viewer Test");
Viewer viewer = new Viewer(rootContainer,null);
//add viewer to your application
frame.setTitle("Viewer in External Frame");
As well as adding the Viewer to your own application you can also customize the Viewer to control which options are present using the Viewers properties file.
Once you have created a properties file that displays the options you require it can be loaded by the Viewers constructor shown above. To do this you just need to pass in the file's path as the second parameter.