示意图
1)固定头部内容自行测试,本文不便截图。
2)可设置表格无边框或有边框灵活多变。
3)可获取当前页码以及总页码数展示在页面底部。
JAVA生成PDF 固定部分
先了解PDF操作table的边框显隐
///隐藏上边框
cell.disableBorderSide(1);
隐藏下边框
cell.disableBorderSide(2);
隐藏上、下边框
cell.disableBorderSide(3);
隐藏左边框
cell.disableBorderSide(4);
隐藏左、上边框
cell.disableBorderSide(5);
隐藏左、下边框
cell.disableBorderSide(6);
隐藏左、上、下边框
cell.disableBorderSide(7);
隐藏右边框
cell.disableBorderSide(8);
隐藏右、上边框
cell.disableBorderSide(9);
隐藏右、下边框
cell.disableBorderSide(10);
隐藏右、上、下边框
cell.disableBorderSide(11);
隐藏左、右边框
cell.disableBorderSide(12);//左右没了
隐藏上、左、右边框
cell.disableBorderSide(13);//只剩下
隐藏下、左、右边框
cell.disableBorderSide(14);//只剩上
隐藏全部
cell.disableBorderSide(15);//全没了
1.设置顶部Logo
private static Document setLogoFont(Document document) throws MalformedURLException, IOException, DocumentException {
PdfPTable table = new PdfPTable(6);
table.setWidthPercentage(100);
table.setSpacingBefore(2f);
table.setSpacingAfter(2f);
table.setWidths(new int[]{
35, 10, 10, 10, 15, 20});
table.getDefaultCell().setBorder(PdfPCell.NO_BORDER);
String sep = File.separator;
Image image = Image.getInstance("图片绝对地址");
image.scaleToFit(50, 50);//自定义大小
PdfPCell cellLogo = new PdfPCell(image, false);
cellLogo.setBorder(0);
cellLogo.setHorizontalAlignment(Element.ALIGN_LEFT);
cellLogo.setVerticalAlignment(Element.ALIGN_MIDDLE);
cellLogo.setImage(image);
table.addCell(cellLogo)