要在跨多列的表中创建单元格,可以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>