public void test() throws DocumentException, IOException { // 生成导出PDF的文件名称,生成之后存储的地址 String fileName = "C:\\pdf\\tttt.pdf"; //创建文件 Document document = new Document(PageSize.A4); //设置字体 BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); //字体 Font fontHeader = new Font(bfChinese); Font font = new Font(bfChinese,7); Font font1 = new Font(bfChinese,15,Font.BOLD); //创建PDF PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(fileName)); // 设置页面布局 writer.setViewerPreferences(PdfWriter.PageLayoutOneColumn); //打开 document.open(); //创建表格2行 PdfPTable pTable = new PdfPTable(2); //创建单元格cell PdfPCell pCell = new PdfPCell(new Paragraph("A",font1)); //设置单元格高度 // pCell.setFixedHeight(80); //去除边框 // pCell.setBorder(0); //居中 pCell.setHorizontalAlignment(Element.ALIGN_CENTER); //添加到表格中 pTable.addCell(pCell); //添加图片 Image image; //需要添加的图片地址 image = Image.getInstance("C:\\pdf\\11.jpg"); image.scaleAbsolute(80f,80f); //图片添加到单元格中 pCell.addElement(image); //去除边框 // pCell.setBorder(0); //居中 pCell.setHorizontalAlignment(Element.ALIGN_CENTER); //单元格添加到表格中 pTable.addCell(pCell); //创建表格 PdfPTable table = new PdfPTable(4); //创建单元格cell PdfPCell cell = new PdfPCell(new Paragraph("B",font1)); //合并上下两行 cell.setRowspan(2); //cell添加到表格中 table.addCell(cell); //创建单元格cell cell = new PdfPCell(new Paragraph("C",font1)); //合并左右两行 cell.setColspan(2); //cell添加到表格中 table.addCell(cell); //填充其余空余表格单元 cell = new PdfPCell(new Paragraph("D",font1)); table.addCell(cell); cell = new PdfPCell(new Paragraph("E",font1)); table.addCell(cell); cell = new PdfPCell(new Paragraph("F",font1)); table.addCell(cell); cell = new PdfPCell(new Paragraph("G",font1)); table.addCell(cell); //表格添加到document document.add(pTable); document.add(table); //关闭 document.close(); //关闭 writer.close(); System.out.println("pdf生成成功"); }
生成的pdf结果