关于使用itext导出PDF的具体实践
2016-01-27 17:41
232 查看
关于使用itext导出PDF的具体实践
博客分类:JAVA应用
itext
javaitext
对于JAVA导出PDF文档查找了一下相关内容,发现网上大多数的关于itext导出PDF的文档均是com.lowagie.itext而目前该Api高版本已经使用com.itextpdf.itext公共JAR包,因此在这边记录下关于使用新版本itext导出PDF的实际运用。
个人对于ITEXT的了解而言,主要分为5个步骤:
a、建立Documnet对象;
Java代码
Document document = new Document();
b、建立读写器(PDFWriter)并与Document对象关联
Java代码
PdfWriter.getInstance(document, new FileOutputStream("d://test6.pdf"));
c、打开文档;
document.open();
d、写内容进入文档;
Java代码
document.add(new Paragraph("test"));
e、关闭文档;
Java代码
document.close();
这是一个相对简单的DPF导出。
下面对于写内容进入文档部分进行稍详细的几记录:
1、插入表格
2、插入图片
3、插入中文字体不识别问题
插入表格主要分表头与表内容,相当于插入两张表来实现。首先新建PDFPTABLE对象。
Java代码
PdfPTable table = new Table();
PdfPCell cell = new PdfPCell(),
循环数据插入到每个cell
Java代码
for(User user ;list){
cell.setPhrase(new Paragraph(user.getName));
table.addCell(cell);//注:每个cell加入内容时及时加入到table中,否则cell内容将会被覆盖
}
插入图片:简单的处理可以使用PdfPCell,
在新建PdfPCell对象存在new PdfPCell(Image image)构造器或者直接使用
Java代码
PdfPtable.addCell(Image image),eg:table.addCell(Image. getInstance( "d://test.jpg"));
中文问题,由于itext不支持中文的显示,因此需要使用到itext- asian字体转换API,
通过Font对象来设置字体
Java代码
new Font(BaseFont. createFont( "STSong-Light", "UniGB-UCS2-H" ,BaseFont. NOT_EMBEDDED), 12, Font. NORMAL )
附简单的代码文件若有错误,请各位斧正。
以下是需要使用的maven包
Java代码
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itextpdf</artifactId>
<version>5.5.1</version>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itext-asian</artifactId>
<version>5.2.0</version>
</dependency>
simpleDemo.rar (2.1 KB)
下载次数: 10
相关文章推荐
- jquery中remove()与detach()的区别
- PHP遍历文件夹内文件和子文件
- JavaScript优化(二)
- 再说LZ77压缩算法
- iOS Reachability的基本用法
- instanceof 原理
- 定制滚动条样式 webkit
- leetcode62-Unique Paths
- JavaWeb会遇到的GBK、UTF-8、Unicode编码方式知识小结
- Codeforces 617B Chocolate (Round #340 (Div. 2) B题)
- 实现log4j日志文件在相对路径保存
- 数据库语句
- [傅里叶变换及其应用学习笔记] 二十八. 高维移位定理
- 自学Java过程
- canvas里面画图片高度老是不对的梗
- 翻译BonoboService官网的安装教程
- <template> 标签
- 年终总结
- eclipse sdk 无法更新
- 关于JAVA堆栈的认识【转】