itextpdf生成列表基本用法
随时随地技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)
在上一篇文章使用itextpdf生成表格基本用法中,介绍了生成表格的基本步骤和一些常用设置,同样的,在某些需求下,我们需要在pdf中展示列表,体现条理性,itextpdf同样支持,这个开源库支持很多种列表风格来满足大家需求,由于列表的每项风格基本一致,所以使用起来也非常简单,这里介绍几个常用的
1、有序列表
/*** 添加有序列表* * @throws IOException* @throws DocumentException*/public static void createOrderedListPdf() throws IOException, DocumentException {Document document = new Document();// 创建PdfWriter对象PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(DEST));// 打开文档document.open();// 添加有序列表List orderedList = new List(List.ORDERED);orderedList.add(new ListItem("Item 1"));orderedList.add(new ListItem("Item 2"));orderedList.add(new ListItem("Item 3"));document.add(orderedList);// low levelPdfContentByte cb = writer.getDirectContent();cb.fill();cb.sanityCheck();// 关闭文档document.close();}
这个List是itext包下面的,表示一个列表,不是java常用的那个List,代码非常简单,就不作多的解释了,附上效果图:
2、无序列表
/*** 添加无序列表* * @throws IOException* @throws DocumentException*/public static void createUnorderedListPdf() throws IOException, DocumentException {Document document = new Document();// 创建PdfWriter对象PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(DEST));// 打开文档document.open();// 添加无序列表List unorderedList = new List(List.UNORDERED);unorderedList.add(new ListItem("Item 1"));unorderedList.add(new ListItem("Item 2"));unorderedList.add(new ListItem("Item 3"));document.add(unorderedList);// low levelPdfContentByte cb = writer.getDirectContent();cb.fill();cb.sanityCheck();// 关闭文档document.close();}
3、罗马数字列表(RomanList)
/*** 添加罗马数字列表* * @throws IOException* @throws DocumentException*/public static void createRomanListPdf() throws IOException, DocumentException {Document document = new Document();// 创建PdfWriter对象PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(DEST));// 打开文档document.open();// 添加roman列表RomanList romanList = new RomanList();romanList.add(new ListItem("Item 1"));romanList.add(new ListItem("Item 2"));romanList.add(new ListItem("Item 3"));document.add(romanList);// low levelPdfContentByte cb = writer.getDirectContent();cb.fill();cb.sanityCheck();// 关闭文档document.close();}
4、希腊字母列表(GreekList)
/*** 添加希腊字母列表* * @throws IOException* @throws DocumentException*/public static void createGreekListPdf() throws IOException, DocumentException {Document document = new Document();// 创建PdfWriter对象PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(DEST));// 打开文档document.open();// Add Greek listGreekList greekList = new GreekList();greekList.add(new ListItem("Item 1"));greekList.add(new ListItem("Item 2"));greekList.add(new ListItem("Item 3"));document.add(greekList);// low levelPdfContentByte cb = writer.getDirectContent();cb.fill();cb.sanityCheck();// 关闭文档document.close();}
5、ZapfDingbats列表
/*** 创建ZapfDingbats列表* * @throws IOException* @throws DocumentException*/public static void createZapfDingbatsListPdf() throws IOException, DocumentException {Document document = new Document();// 创建PdfWriter对象PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(DEST));// 打开文档document.open();// ZapfDingbatsList List ExampleZapfDingbatsList zapfDingbatsList = new ZapfDingbatsList(43, 30);zapfDingbatsList.add(new ListItem("Item 1"));zapfDingbatsList.add(new ListItem("Item 2"));zapfDingbatsList.add(new ListItem("Item 3"));document.add(zapfDingbatsList);// low levelPdfContentByte cb = writer.getDirectContent();cb.fill();cb.sanityCheck();// 关闭文档document.close();}
6、列表嵌套
/*** 创建嵌套列表* * @throws IOException* @throws DocumentException*/public static void createNestedListPdf() throws IOException, DocumentException {Document document = new Document();// 创建PdfWriter对象PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(DEST));// 打开文档document.open();// List and Sublist ExamplesList nestedList = new List(List.UNORDERED);nestedList.add(new ListItem("Item 1"));// 子列表List sublist = new List(true, false, 30);sublist.setListSymbol(new Chunk("", FontFactory.getFont(FontFactory.HELVETICA, 6)));sublist.add("A");sublist.add("B");nestedList.add(sublist);nestedList.add(new ListItem("Item 2"));// 子列表sublist = new List(true, false, 30);sublist.setListSymbol(new Chunk("", FontFactory.getFont(FontFactory.HELVETICA, 6)));sublist.add("C");sublist.add("D");nestedList.add(sublist);document.add(nestedList);// low levelPdfContentByte cb = writer.getDirectContent();cb.fill();cb.sanityCheck();// 关闭文档document.close();}
上面列举的都是比较常用的列表,在一般项目已经够使用了 ,更多扩展功能请参考itextpdf官网API。
itextpdf生成列表基本用法相关推荐
- python列表的用法
1.什么是列表 1.列表是一种容器(用来存储数据对象) 2.列表能够存储多个数据对象 - 序列 3.列表是一个可变序列 4.列表中的数据元素们会有先后顺序 2.创建列表的方式 1.使用字面值的方式创建 ...
- python生成迭代的用法
说明 python的进阶用法之一就是生成器.迭代器的用法,使用生成迭代可以极大地减少代码的行数,使得代码简明易读. 列表生成式 range(1,100,5) #第一个参数表示开始位,第二个参数表示结束 ...
- itextpdf 生成表格pdf+背景图片(可转图片)
itextpdf生成表格pdf+背景图片(可转图片) 导入jar,manven引用 <dependency><groupId>com.itextpdf</groupId& ...
- python如何建立列表_python列表的用法
1.什么是列表 1.列表是一种容器(用来存储数据对象) 2.列表能够存储多个数据对象 - 序列 3.列表是一个可变序列 4.列表中的数据元素们会有先后顺序 2.创建列表的方式 1.使用字面值的方式创建 ...
- python 只取数值_Python:你会生成列表吗?-- 列表生成式
当有人问你:"你会用 Python 生成列表吗?" 我想你一定会说:"当然会啊,这有什么难的." 那人再问:"那你会列表生成式吗?" 你:& ...
- java list加入listview_Android ListView自动生成列表条目的实例
activity_list.xml文件代码如下: xmlns:android="http://schemas.android.com/apk/res/android" androi ...
- linux生成文件清单,Linux 获取文件名称生成列表 txt - create_filelist
Linux 获取文件名称生成列表 txt - create_filelist 1. find /home/strong/MOTChallenge/MOT16/MOT16/train/MOT16-04/ ...
- 【Java中级篇】使用itextpdf生成PDF
我们可以发现很多求职网站都会将我们录入的信息来生成一个PDF简历文件.所以我这里提供了用itextpdf生成的PDF的代码. 一.步骤 1.1.使用Adobe Acrobat Pro工具编辑PDF模板 ...
- python for循环例子_Python for循环生成列表的实例
Python for循环生成列表的实例 一般Python for语句前不加语句,但我在机器学习实战中看到了这两条语句: featList = [example[i] for example in da ...
- linux生成一个list文件,Linux 获取文件名称生成列表 txt - create_filelist
Linux 获取文件名称生成列表 txt - create_filelist 1. find /home/strong/MOTChallenge/MOT16/MOT16/train/MOT16-04/ ...
最新文章
- Android -- Fragment注意事项
- 常用的深度学习的linux代码(1.实时监测GPU情况2.当前正常使用的GPU情况3.杀掉特定某个进程4.杀掉特定某个进程)
- altium designer布线调整时不自动删除旧线
- 易经读书笔记11地天泰
- 谷歌最新双塔DNN召回模型——应用于YouTube大规模视频推荐场景
- 怎样用c语言定义高幂整数,位操作运算的奇技淫巧!(附源码)
- [react-router] React-Router怎么获取URL的参数?
- utf-8、unicode区别与联系
- 【转】通过IRQL看NT内核
- CentOS操作系统版本信息查看和隐藏
- telnet和ping区别
- Dev Grid 添加行号
- 21_多易教育之《yiee数据运营系统》用户画像-模型标签流失预测篇兼退拒风险概率预测篇
- 计算机考研复试之软件工程
- 后台仿京东商城接口设计缺陷吐槽篇
- 我进滑雪场前做的功课
- 在VMware中安装ArchLinux
- 2021年茶艺师(中级)考试内容及茶艺师(中级)找解析
- 【C/C++】黑盒测试
- 正则表达式校验正数/负数
热门文章
- 通达信 移动平均算法_通达信擒龙攻防战法主图指标公式
- 华为android贡献度,从EMUI的6次里程碑事件,看华为对安卓生态的贡献
- SCI收录中国期刊国家一级期刊名录一览表
- 图像各向异性扩散(一)
- COMSOL有限元仿真深度指南:如何分析更为复杂的材料各向异性结构?
- sort(function(a,b){return a -b})函数排序问题
- 系统之家装机大师如何制作U盘启动盘?
- 卖计算机英语对话,买电脑英语情景对话
- ContentRoot 和 WebRoot 的区别
- 微信内部H5页面:处理用户修改微信字体大小造成的页面溢出问题