在创建表格时,如果表格内容呈现跨页显示的时候,默认状况下该表格的表头不会在下一页显示,在浏览体验上不是很好。上面分享一个办法如何在表格跨页是显示表格的表头内容,这里只须要简略应用办法 grid.setRepeatHeader( true); 即可。具体参考如下办法步骤。

  1. 导入Jar 包

这里导入的是Free Spire.PDF for Java的jar包,下载后,解压文件,在Java程序中将解压门路下lib文件中的spire.pdf.jar导入Java程序。
import com.spire.pdf.*;
import com.spire.pdf.graphics.*;
import com.spire.pdf.grid.PdfGrid;
import com.spire.pdf.grid.PdfGridRow;

import java.awt.*;

public class RepeatTableHeaderRow {

 public static void main(String[] args) {     //新建一个PDF文档     PdfDocument pdf = new PdfDocument();     //增加一页     PdfPageBase page = pdf.getPages().add();     //创立PdfGrid类的对象     PdfGrid grid = new PdfGrid();     //设置单元格填充     grid.getStyle().setCellPadding(www.diuxie.comnew PdfPaddings(1,1,1,1));     //增加表格列数     grid.getColumns().add(3);     //增加表头行及表格数据     PdfGridRow[] pdfGridRows = grid.getHeaders().add(1);     for (int i = 0; i < pdfGridRows.length; i++)     {         pdfGridRows[i].getStyle().setFont(new PdfTrueTypeFont(new Font("Arial", Font.PLAIN,12), true));//指定字体         pdfGridRows[i].getCells().get(0).setValue("NAME");         pdfGridRows[i].getCells().get(1).setValue("SUBJECT");         pdfGridRows[i].getCells().get(2).setValue("SCORES");         pdfGridRows[i].getStyle().setTextBrush(PdfBrushes.getRed());         /*pdfGridRows[i].getStyle().setFont(new PdfCjkStandardFont(PdfCjkFontFamily.Hanyang_Systems_Gothic_Medium, 14f));//绘制中日韩字体的办法         pdfGridRows[i].getCells().get(0).setValue("이 름");         pdfGridRows[i].getCells().get(1).setValue("科 目") ;         pdfGridRows[i].getCells().get(2).setValue("ほしとり");         pdfGridRows[i].getStyle().setTextBrush(PdfBrushes.getBlue());*/     }

设置手游的反复表头(表格跨页时)

     grid.setRepeatHeader(true);     //增加数据到表格     for (int i = 0; i < 80; i++)     {         PdfGridRow row = grid.getRows().add();         for (int j = 0; j < grid.getColumns().getCount();j++)         {             row.getCells().get(j).setValue("(Row " + (i+1) + ", column " + (j+1) + ")");         }     }     //在PDF页面绘制表格     grid.draw(page,0,0);     //保存文档     pdf.saveToFile("Result.pdf");     pdf.dispose(); }

}