要在跨多列的表中创建单元格,可以setColspan()在com.itextpdf.text.pdf.PdfPCell对象中使用方法。下面的示例向您展示如何执行此操作。
package org.nhooo.example.itextpdf;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
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.FileNotFoundException;
import java.io.FileOutputStream;
public class TableColumnSpanDemo {
public static void main(String[] args) {
Document doc = new Document();
try {
PdfWriter.getInstance(doc, new FileOutputStream("TableColumnSpan.pdf"));
doc.open();
//创建一个具有四列的表。第一行
// 将具有单元格1到单元格4。
PdfPTable table = new PdfPTable(4);
table.addCell(new PdfPCell(new Phrase("Cell 1")));
table.addCell(new PdfPCell(new Phrase("Cell 2")));
table.addCell(new PdfPCell(new Phrase("Cell 3")));
table.addCell(new PdfPCell(new Phrase("Cell 4")));
table.completeRow();
// 创建只需要列的另一行。
// 单元格5和6的宽度将跨越两列
// 在宽度上。
PdfPCell cell5 = new PdfPCell(new Phrase("Cell 5"));
cell5.setColspan(2);
PdfPCell cell6 = new PdfPCell(new Phrase("Cell 6"));
cell6.setColspan(2);
table.addCell(cell5);
table.addCell(cell6);
table.completeRow();
// 将表格添加到文档
doc.add(table);
} catch (DocumentException | FileNotFoundException e) {
e.printStackTrace();
} finally {
doc.close();
}
}
}Maven依赖
<!-- http://repo1.maven.org/maven2/com/itextpdf/itextpdf/5.5.10/itextpdf-5.5.10.jar --> <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.10</version> </dependency>