Anzeigen einer PDF-Datei mit der JavaBean-API des Acrobat-Viewers
Glücklicherweise hat Acrobat eine API entwickelt, um ein PDF-Dokument in Java anzuzeigen. Mit dem Acrobat-Viewer können Sie PDF-Dateien aus einer Java-Anwendung, JavaBean oder Java-Applets öffnen und drucken. In diesem Tutorial werden wir den Acrobat Viewer in unsere Anwendung integrieren, die mit JFrame erstellt wurde.Die api Acrobat Viewer ist verfügbar in http://www.java2s.com/Code/JarDownload/acrobat/acrobat-1.1.jar.zip. Laden Sie es herunter und extrahieren Sie die Acrobat.jar Datei in Ihr Projekt, importieren Sie dann die Bibliothek in Ihre Eclipse-IDE oder Netbeans.
Wie öffnet man nun eine PDF-Datei? Die Java Beans API bietet einfach zu befolgende und leicht anzuzeigende Schritte zum Anzeigen eines PDF-Dokuments in der Java-Anwendung. Hier sind die Schritte zum Erstellen des PDF-Readers:
- Erstellen Sie den JFrame, dessen Acrobat-Viewer hinzugefügt wird;
- Viewer-Objekt erstellen(eine Klasse von java.awt.Component) , um die PDF-Datei anzuzeigen und zu JFrame hinzuzufügen:
- Viewer viewer = new Viewer();
- frame.add(viewer, BorderLayout.CENTER);
- Select Document
- FileInputStream fis = new FileInputStream(Dateiname);
- Definieren FileInputStream als Argument in viewer:
- viewer.setDocumentInputStream(fis);
- Erstellen Sie das Layout, das das Dokument erscheinen lässt:
- viewer.activate();
Der Dateipfad kann auch durch die Methode angegeben werden:
setDocumentURL(java.lang.String url)
Beispiel:
import java.awt.BorderLayout;
import java.io.FileInputStream;
import javax.swing.JFrame;
import javax.swing.JPanel;
import com.adobe.acrobat.Viewer;
/*
* www.codeurjava.com
*/
public class readerPDF erweitert JPanel{
privaten Viewer-Viewer;
public readerPDF(String, filename) löst Exception{
this.setLayout(new BorderLayout());
//Erstellen des Viewers, der zum Anzeigen des Inhalts des PDF
viewer = new Viewer();
this.add(viewer, BorderLayout.CENTER);
FileInputStream fis = new FileInputStream(Dateiname);
viewer.setDocumentInputStream(fis);
viewer.activate();
}
public static void main(String[] args) wirft Exception {
String filename = "delphi.pdf";
readerPDF-Reader = neuer ReaderPDF(Dateiname);
//JFrame erstellen
JFrame f = new JFrame("PDF Reader");
f.setSize(1024,768);
f.setLocationRelativeTo(null);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
f.getContentPane().add(drive);
}
}
Seitenanzahl und aktuelle Seite abrufen
Seitenzahl und aktuelle Seite werden mit den folgenden Methoden ermittelt: getPageCount() und getCurrentPage(). Zum Beispiel möchten wir die Gesamtzahl der Seiten und die Anzahl der aktuellen Seite anzeigen:System.out.println("Anzahl der Seiten: "+viewer.getPageCount());
System.out.println("Aktuelle Seite: "+viewer.getCurrentPage());
Seitenanzahl: 50
Aktuelle Seite: 0
Zoom ändern
Um die Zoomstufe der aktuellen Seite anzupassen, verwenden Sie die Methode zoomTo(double). Der 100%-Zoom entspricht 1,0 in der Methode zoomTo().
viewer.zoomTo(0.5);
Get PDF Title in Java
Der Titel wird mit dem getTitle()
PDFBookmark bookmark=viewer.getRootBookmark();
String title=bookmark.getTitle();
Referenz