itextpdf5操作表格
时间:2019-11-01
本文章向大家介绍itextpdf5操作表格,主要包括itextpdf5操作表格使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
下面是一些对表格排版的常用方法,是在制作pdf的时候通过查看ipa和一些博客积累下来的。
包括,表格的宽度,对齐方式,表的页眉页脚,前后间距,padding;
单元格对齐方式,线条设置,段落于单元格之间的间距,单元格里面的文本的行间距设置。
这些是通过查看ipa记录其中的一部份,还有很多已于理解的ipa没有记录。
package dbzx.pdf; import java.io.FileNotFoundException; import java.io.FileOutputStream; import org.junit.Test; import com.itextpdf.text.BaseColor; import com.itextpdf.text.Document; import com.itextpdf.text.DocumentException; import com.itextpdf.text.Element; import com.itextpdf.text.Font; import com.itextpdf.text.FontFactory; import com.itextpdf.text.Paragraph; import com.itextpdf.text.pdf.BaseFont; import com.itextpdf.text.pdf.PdfPTable; import com.itextpdf.text.pdf.PdfWriter; public class AllTableMethod { @Test public void createTable() throws FileNotFoundException, DocumentException { String FONT = "C:/WINDOWS/Fonts/simsun.ttc,0"; Font textFont = FontFactory.getFont(FONT, BaseFont.IDENTITY_H, BaseFont.EMBEDDED,10,Font.NORMAL,BaseColor.BLACK); String path = "E:/demo/pdfCreat/"+System.currentTimeMillis()+".pdf";//输出pdf的路径 Document doc = new Document(); PdfWriter writer = PdfWriter.getInstance(doc, new FileOutputStream(path)); doc.open(); PdfPTable table = new PdfPTable(4); //设置控制 table.setSpacingBefore(40);//表格前间距 table.setSpacingAfter(100);//表格后间距 table.setWidthPercentage(80);//表格宽占page比例 table.setHorizontalAlignment(Element.ALIGN_LEFT);//表格水平对齐方式 /* * 设置构成标题的顶部行数。只有当表被添加到文档并且表跨页时,这个header才有意义。 */ table.setHeaderRows(2); /* * 设置页脚要使用的行数。页脚的数量从页眉行中减去。例如,对于一个有两个页眉行和一个页脚行的表,代码应该是: * table.setHeaderRows (3); * table.setFooterRows (1); * 第0行和第1行是页眉行,第2行是页脚行。 */ table.setFooterRows(1); table.setPaddingTop(10f);//设置表格顶部padding //设置单元格 /** * getDefaultCell()得到的Cell代表所有不是table.add(PdfPCell)的Cell。例:table.add(new Paragraph("test")). */ table.getDefaultCell().setVerticalAlignment(Element.ALIGN_TOP);//单元格中文字垂直对齐方式 table.getDefaultCell().setBorderColor(BaseColor.WHITE);//单元格线条颜色 table.getDefaultCell().setMinimumHeight(30);//单元格最小高度 table.getDefaultCell().setExtraParagraphSpace(5);//段落文字与表格之间的距离,底部距离 table.getDefaultCell().setLeading(15, 0);//设置行间距 // table.getDefaultCell().setFixedHeight(20f);//表格固定高度 for(int i=0;i<16;i++) { table.addCell(new Paragraph("test")); } doc.add(table); doc.close(); } }
原文地址:https://www.cnblogs.com/whalesea/p/11776463.html
- 前端知识小结
- 除了比特币,区块链技术能做的还有很多
- Progressive Web Apps入门
- IDEA入门级使用教程
- 掌握Docker命令-Docker for Web Developers(4)
- InfoPath中repeating section中赋值操作
- 百布(baibu.la)完成1.65亿B+轮融资
- 八大排序算法总结与java实现
- Angular企业级开发(5)-项目框架搭建
- 如何让nginx显示文件夹目录
- Facebook Graph API(2)--读取数据之picture
- 使用Dockerfile构建镜像-Docker for Web Developers(5)
- 2018年程序员的出路有哪些
- CSS魔法堂:不得不说的Containing Block
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法