Pages

Java View Pdf

import classess.LogFile;
import classess.TableSortFilter;
import classess.Util;
import java.awt.Desktop;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.Arrays;
import java.util.Vector;
import javax.swing.ImageIcon;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
import org.apache.commons.io.comparator.NameFileComparator;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.rendering.ImageType;
import org.apache.pdfbox.rendering.PDFRenderer;

        try {
            Util.getUtil().setCursorBusy(this);
            String pdfFilename = Util.getUtil().getUserDirectory() + "\\reports_exported\\bills\\" + tblBills.getValueAt(tblBills.getSelectedRow(), 0);
            System.out.println(pdfFilename);
            PDDocument document = PDDocument.load(new File(pdfFilename));
            PDFRenderer pdfRenderer = new PDFRenderer(document);
            for (int page = 0; page < document.getNumberOfPages(); ++page) {
                BufferedImage bim = pdfRenderer.renderImageWithDPI(page, 300, ImageType.RGB);

                Image scaledImage = bim.getScaledInstance(400, -1, Image.SCALE_SMOOTH);
                jLabel1.setIcon(new ImageIcon(scaledImage));
                jScrollPane3.setViewportView(jLabel1);
                document.close();
            }
            Util.getUtil().setCursorDefault(this);
        } catch (IOException e) {
            Util.getUtil().setCursorDefault(this);
            LogFile.log(getClass().getName(), "tblBillsMouseClicked", "Cannot accsess bills folder", this.getRootPane());
        } catch (Exception e) {
            Util.getUtil().setCursorDefault(this);
            LogFile.log(getClass().getName(), "tblBillsMouseClicked", e.getMessage().toString(), this.getRootPane());
        }

To Use:

jpanel master -> jpanel sub -> jscrollpane -> jlable

No comments:

Post a Comment