java - 在 iText PDF 文档中安装 JTable

标签 java swing pdf jtable itextpdf

我有一个有四列的 JTable。我正在使用 iText 库打印包含 JTable 数据的 PDF 文档。问题是 JTable 在 PDF 中无法正确显示。我在谷歌上搜索并找到了the same situation here 。该代码与我的代码以及输出类似。我也尝试过this example using Templates但是,结果并没有改变。

我们如何解决这个问题?请协助。如果代码是必要的,我会发布,但它们的类太多了 - 我正在开发一个大型应用程序。 我想要的概念是使 JTable 适合文档。

最佳答案

经过一番努力,我终于做到了,如下图所示。如果有人遇到这种情况,这是拯救我的想法:

public void actionPerformed(ActionEvent e) {

        try {
            Document doc = new Document();
            PdfWriter.getInstance(doc, new FileOutputStream("table.pdf"));
            doc.open();
            PdfPTable pdfTable = new PdfPTable(table.getColumnCount());
            //adding table headers
            for (int i = 0; i < table.getColumnCount(); i++) {
                pdfTable.addCell(table.getColumnName(i));
            }
            //extracting data from the JTable and inserting it to PdfPTable
            for (int rows = 0; rows < table.getRowCount() - 1; rows++) {
                for (int cols = 0; cols < table.getColumnCount(); cols++) {
                    pdfTable.addCell(table.getModel().getValueAt(rows, cols).toString());

                }
            }
            doc.add(pdfTable);
            doc.close();
            System.out.println("done");
        } catch (DocumentException ex) {
            Logger.getLogger(MainWindow.class.getName()).log(Level.SEVERE, null, ex);
        } catch (FileNotFoundException ex) {
            Logger.getLogger(MainWindow.class.getName()).log(Level.SEVERE, null, ex);
        }

    }
};

关于java - 在 iText PDF 文档中安装 JTable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28448377/

相关文章:

ios - 将 FastPdfKit 与 PhoneGap 应用程序集成

python - 如何在修改 PDF 时解除 I/O 锁定?

php - php中的PDF导出

java - JComboBox Action

java - 使用 JScrollBar 更新组件

java - 如何在Java中调整绘制的椭圆形的大小?

c# - 等同于 Java 中的 C# OnDeserialized/OnSerializaed?

java - Android 中如何获取某个目录下的文件列表?

java - runo 主题中的 styles.css 未加载

Java 对象重用