使用itext生成word文档

近期做的项目中有一个需求是需要将指定的内容写入到一个word文档里面,并保存和显示,所以在网上查了许多的资料和看了一下API,勉强是弄出来了。

第一步下载itext的jar包,有2个
iTextAsian.jar和itext-2.0.4.jar
代码如下:
String path = "d:\\test\\";
String filename = "test.doc";
//创建文本对象,并设置页面大小
Document document = new Document(PageSize.A4);
//将文件写入到指定目录,文件名后缀可以为doc,docx或者pdf
RtfWriter2.getInstance(document, new FileOutputStream(path+filename));
//打开文件,也可以理解为允许写入内容
document.open();
//创建一个字体对象,参数值参照iTextAsian
BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", false);
//创建需要写入内容的字体大小对象
Font FontChinese1 = new Font(bfChinese, 12F, 1);
//添加内容
//添加文本,整行添加
document.add(ItextParagraph.getParagraph("word测试", ItextFont.getFont(10, 48, new Color(255, 0, 0)), 1));
document.add(ItextParagraph.getParagraph("word测试", FontChinese3));
//添加表格
//创建表格
Table tb1 = ItextTable.buildTablenoBorder(4, 1, 0, 0, 0, new Color(255, 255, 0));
//给表格的每一列设置宽度,整行大小为10
tb1.setWidths(new int[]{2,3,2,3});
//给表格加入值,内容填充是从左至右,从上倒下的顺序
tb1.addCell("测试1");
tb1.addCell("测试2");
tb1.addCell("测试3");
tb1.addCell("测试4");
tb1.addCell("测试5");
//创建需要跨列的cell
Cell contentCell = new Cell("测试6");
contentCell.setColspan(3);
tb1.addCell(contentCell);
document.add(tb1);
//关闭文档的写入
document.close();

这里的代码很简单,因为我也是才接触,有的地方的解释可能不是很清楚,请多多见谅,希望对有相同需求的朋友有点帮助。

猜你喜欢

转载自bommeibo.iteye.com/blog/1615994