有人知道如何在JAVA中使用iText创建两个并行表吗?
我已经用java中的iText创建了表。但是我想为我的一个项目创建两个并行表。有谁能告诉我使用iText创建两个并行表的解决方案吗?这是代码片段有人知道如何在JAVA中使用iText创建两个并行表吗?,java,itext,Java,Itext,我已经用java中的iText创建了表。但是我想为我的一个项目创建两个并行表。有谁能告诉我使用iText创建两个并行表的解决方案吗?这是代码片段 package com.example; import com.itextpdf.text.Document; import com.itextpdf.text.DocumentException; import com.itextpdf.text.Paragraph; import com.itextpdf.text.Phrase; import
package com.example;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.Phrase;
import com.itextpdf.text.pdf.PdfPCell;
import com.itextpdf.text.pdf.PdfPTable;
import com.itextpdf.text.pdf.PdfWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
public class PdfTest {
private Document document;
public PdfTest() {
document = new Document();
}
public boolean openPdf() {
boolean status = false;
try {
File pdfFile = new File("test.pdf");
if (pdfFile != null) {
PdfWriter.getInstance(document, new FileOutputStream(pdfFile));
document.open();
status = true;
}
} catch (FileNotFoundException ex) {
ex.printStackTrace();
} catch (DocumentException ex) {
ex.printStackTrace();
} catch (Exception ex) {
ex.printStackTrace();
}
return status;
}
public void closePdf() {
document.close();
}
public void generatePdf() throws DocumentException {
Paragraph paragraph = new Paragraph();
PdfPCell cell = null;
// Main table
PdfPTable mainTable = new PdfPTable(2);
mainTable.setWidthPercentage(100.0f);
// First table
PdfPCell firstTableCell = new PdfPCell();
firstTableCell.setBorder(PdfPCell.NO_BORDER);
PdfPTable firstTable = new PdfPTable(2);
firstTable.setWidthPercentage(50.0f);
cell = new PdfPCell(new Phrase("T1R1C1"));
firstTable.addCell(cell);
cell = new PdfPCell(new Phrase("T1R1C2"));
firstTable.addCell(cell);
cell = new PdfPCell(new Phrase("T1R2C1"));
firstTable.addCell(cell);
cell = new PdfPCell(new Phrase("T1R2C2"));
firstTable.addCell(cell);
firstTableCell.addElement(firstTable);
mainTable.addCell(firstTableCell);
// Second table
PdfPCell secondTableCell = new PdfPCell();
secondTableCell.setBorder(PdfPCell.NO_BORDER);
PdfPTable secondTable = new PdfPTable(2);
secondTable.setWidthPercentage(50.0f);
cell = new PdfPCell(new Phrase("T2R1C1"));
secondTable.addCell(cell);
cell = new PdfPCell(new Phrase("T2R1C2"));
secondTable.addCell(cell);
cell = new PdfPCell(new Phrase("T2R2C1"));
secondTable.addCell(cell);
cell = new PdfPCell(new Phrase("T2R2C2"));
secondTable.addCell(cell);
secondTableCell.addElement(secondTable);
mainTable.addCell(secondTableCell);
paragraph.add(mainTable);
document.add(paragraph);
}
}
测试这个
PdfTest pdfTest = new PdfTest();
try {
if (pdfTest.openPdf()) {
pdfTest.generatePdf();
pdfTest.closePdf();
}
} catch (Exception ex) {
ex.printStackTrace();
}
希望这有帮助。请看一下文档。从第3页开始,您将看到这些页面具有两列相邻的布局。这是通过使用
ColumnText
类实现的。请参阅以获取源代码,或通过转到的关键字页查看其他代码示例。您可以尝试使用一个表和两列,每个单元格包含一个表。为外部表格的单元格设置无边框属性。这样你们就有了平行的桌子。非常感谢。这就是我要找的那个。这对我帮助很大。再次感谢你