Java JFileChooser kullanarak PDF Gösterme

Öncelikle yeni bir java projesi oluşturup ardından Bean.jar ve Bean.zip dosyası içindeki acrobat.jar ve MRJToolkitStubs.zip dosyalarını projemize ekliyoruz.

import com.adobe.acrobat.Viewer;
import javax.swing.*;
import java.awt.*;
import java.io.FileInputStream;

public class PDFDocument extends JFrame {

private static final long serialVersionUID = 1L;
private Viewer viewer;

public PDFDocument(String filename) {
this.setLayout(new BorderLayout());
setTitle("Emrah Kahraman PDF Okuma");
setSize(1024, 768);

try {
viewer = new Viewer();
FileInputStream fis = new FileInputStream(filename);
viewer.setDocumentInputStream(fis);
this.add(viewer, BorderLayout.CENTER);
viewer.activate();
getContentPane().add(viewer);

} catch (Exception e) {
e.printStackTrace();
}
}
}

import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class Test extends JFrame implements ActionListener {
private static final long serialVersionUID = 1L;
private JLabel lblDosya;
private JButton btnAc;
private JButton btnGozat;
private JFileChooser jfc;
String path;
PDFDocument pdf;

public Test() {
btnAc = new JButton("Giris");
btnGozat = new JButton("Gozat");
jfc = new JFileChooser(".");
pencereGoster();
}

private void pencereGoster() {
setSize(320, 500);
setLocation(500, 100);
Container con = this.getContentPane();
setTitle("Emrah KAHRAMAN E-Hero");
con.setLayout(null);
lblDosya = new JLabel("Dosya Ac");
lblDosya.setBounds(50, 190, 150, 50);
btnGozat.setBounds(140, 200, 100, 30);
btnAc.setBounds(150, 260, 100, 30);
con.add(lblDosya);
con.add(btnGozat);
btnAc.addActionListener(this);
btnGozat.addActionListener(this);

}

@Override
public void actionPerformed(ActionEvent e) {

if (e.getSource() == btnGozat) {
try {
jfc.showOpenDialog(null);
path = jfc.getSelectedFile().getAbsolutePath().toString();
pdf = new PDFDocument(path);
pdf.setVisible(true);
} catch (Exception e4) {
e4.getMessage();
}
}
}

public static void main(String[] args) {
Test k = new Test();
k.setVisible(true);
}
}

Proje Kodları
Ekran Görüntüleri

1

2

3

« »