itext转PDF还有一种就是自己拼接数据,一般用到的格式设置。
1 Document document = new Document(); 2 String loadPath = 下载地址; 3 File parent = new File(loadPath); 4 PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(uploadPath)); 5 document.open(); 6 BaseFont bfChinese = BaseFont.createFont("STSongStd-Light", "UniGB-UCS2-H", false); 7 Font fontChinese = new Font(bfChinese, 12, Font.NORMAL, Color.BLACK);//设置字体12号黑色 8 9 // 设置表格,六十列 10 Table table = new Table(60); 11 // 设置表格边框 12 table.setBorderWidth(1);// 粗 13 table.setBorderColor(Color.GRAY);// 颜色 14 table.setPadding(1);// 内边距 15 // table.setSpacing(5); // 单元格间距 16 17 // 加载表头第一行数据 18 Cell cell = new Cell((Element) new Chunk("实验报告 ", fontChinese)); 19 cell.setHeader(true);// 是否为表头 20 cell.setColspan(60);// 合并六十列 21 cell.setHorizontalAlignment(Element.ALIGN_CENTER);// 标题居中对齐 22 table.addCell(cell);// 加载 23 table.endHeaders();// 每行结束 24 // 设置第二行表头(第一种展示) 25 cell = new Cell((Element) new Chunk("名字:", fontChinese)); 26 cell.setHeader(true);// 是否为表头 27 cell.setColspan(15);// 28 table.addCell(cell);// 加载 29 cell = new Cell((Element) new Chunk("" +report.getMembers().getStatus(), fontChinese));//这些数据时第三方返回来的json经过处理后显示的 30 cell.setHeader(true);// 是否为表头 31 cell.setColspan(15);// 32 table.addCell(cell);// 加载 33 table.endHeaders();// 每行结束 34 } 35 document.add(table); 36 document.close();