x

Windows 7 旗舰版下载

微软经典Windows操作系统,办公一族得力助手

立即下载,安装Windows7

下载 立即下载
查看视频教程

Windows10专业版下载

办公主流Windows 操作系统,让工作更稳定

立即下载,安装Windows 10系统

下载 立即下载
查看视频教程

Windows 11 专业版下载

微软全新Windows 操作系统,现代化UI更漂亮

立即下载,安装Windows 11 系统

下载 立即下载
查看视频教程

系统之家一键重装软件下载

永久免费的Windows 系统重装工具

立即下载,安装Windows 系统

下载 立即下载
查看视频教程
当前位置:首页 > 电脑知识

itext生成word文档方法

分类:电脑知识   发布时间:2015-04-27 14:38:29

  在企业的信息系统中,报表处理一直占比较重要的作用,本文将介绍一种生成PDF报表的Java组件--iText。从事程序员职业的朋友可能都会遇到类似情况,经常需要将一个表格导出成word来供客户打印,这个解决问题的方法可以用itext生成word文档方法来实现。下面就教大家itext生成word文档方法:

  需要的jar包:iTextAsian.jar,iText-rtf-2.1.3.jar,iText-2.1.3.jar;

  参考代码:

  response.addHeader("Content-disposition", "attachment;filename="" + new String("信息处理表.doc".getBytes("gb2312"), "ISO8859-1"));

  String letrId = request.getParameter("letrId");

  // 创建word文档,并设置纸张的大小

  com.lowagie.text.Document document = new com.lowagie.text.Document(PageSize.A4);

  try {

  RtfWriter2.getInstance(document,"e:123.doc");

  document.open();

  Font f = new Font();

  String topic= "处理反馈表";

  Paragraph p = new Paragraph(topic, new Font(Font.NORMAL, 18,Font.BOLDITALIC, new Color(0, 0, 0)));

  p.setAlignment(1);

  document.add(p);

  // 设置中文字体

  BaseFont bfFont = BaseFont.createFont("STSongStd-Light", "UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);

  //创建有三列的表格

  Table table = new Table(3);

  table.setBorderWidth(1);

  table.setBorderColor(Color.BLACK);

  table.setPadding(0);

  table.setSpacing(0);

  //添加表头的元素

  Cell cell = new Cell(title);// 单元格

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  cell.setHeader(true);

  cell.setColspan(3);// 设置表格为三列

  cell.setRowspan(2);// 设置表格为2行

  table.addCell(cell);

  table.endHeaders();// 表头结束

  cell = new Cell("时间:");

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  cell = new Cell(new Paragraph((vl.getLetrDate()).toString()));

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  cell.setColspan(2);

  table.addCell(cell);

  cell = new Cell("重要程度:");

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  cell = new Cell(new Paragraph((vl.getImptLevel()).toString()));

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  cell.setColspan(2);

  table.addCell(cell);

  //测试1

  cell = new Cell("测试1:");

  cell.setRowspan(5);// 当前单元格占两行,纵向跨度

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  table.addCell("姓名:");

  table.addCell(vl.getPernName());

  table.addCell("性别:");

  table.addCell(vl.getPernSex());

  table.addCell("公司:");

  table.addCell(vl.getPernUnit());

  table.addCell("职务:");

  table.addCell(vl.getPernPost());

  table.addCell("地址:");

  table.addCell(vl.getPernAddress());

  // 测试2

  cell = new Cell("测试2:");

  cell.setRowspan(4);// 当前单元格占两行,纵向跨度

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  table.addCell("姓名:");

  table.addCell(vl.getWrirName());

  table.addCell("单位 :");

  table.addCell(vl.getWrirOrganization());

  table.addCell("性别:");

  table.addCell(vl.getWrirSex());

  table.addCell("电话:");

  table.addCell(vl.getWrirTnur());

  // 简要内容

  cell = new Cell("简要内容:");

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  cell = new Cell(new Paragraph(vl.getLetrNote()));

  cell.setColspan(2);

  table.addCell(cell);

  // 测试3

  cell = new Cell("测试3:");

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  cell = new Cell(new Paragraph(vl.getDeptVerifyOpinion()));

  cell.setColspan(2);

  table.addCell(cell);

  // 测试4

  cell = new Cell("测试4:");

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  cell = new Cell(new Paragraph(vl.getChargeVerifyOpinion()));

  cell.setColspan(2);

  table.addCell(cell);

  //测试5

  cell = new Cell("测试5:");

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  cell = new Cell(new Paragraph(vl.getHandleContent()));

  cell.setColspan(2);

  table.addCell(cell);

  document.add(table);

  document.add(new Paragraph("n"));

  document.close();

  } catch (FileNotFoundException e) {

  e.printStackTrace();

  } catch (DocumentException e) {

  e.printStackTrace();

  } catch (IOException e) {

  e.printStackTrace();

  }

  在word中可以按照你所要求的格式,利用itext的table、cell、图片等“画”出想要的文档格式,然后再将数据往其中填充;如果想要将报表导出成pdf格式的,用itext也可以很轻松的实现。

  以上就是itext生成word文档的方法,希望对大家有所帮助。

有用
+
分享到:
关闭
微信暂不支持直接分享,使用“扫一扫”或复制当前链接即可将网页分享给好友或朋友圈。
热门搜索
win10激活工具
当前位置 当前位置:首页 > 电脑知识

itext生成word文档方法

2015-04-27 14:38:29   来源: windows10系统之家    作者:爱win10

  在企业的信息系统中,报表处理一直占比较重要的作用,本文将介绍一种生成PDF报表的Java组件--iText。从事程序员职业的朋友可能都会遇到类似情况,经常需要将一个表格导出成word来供客户打印,这个解决问题的方法可以用itext生成word文档方法来实现。下面就教大家itext生成word文档方法:

  需要的jar包:iTextAsian.jar,iText-rtf-2.1.3.jar,iText-2.1.3.jar;

  参考代码:

  response.addHeader("Content-disposition", "attachment;filename="" + new String("信息处理表.doc".getBytes("gb2312"), "ISO8859-1"));

  String letrId = request.getParameter("letrId");

  // 创建word文档,并设置纸张的大小

  com.lowagie.text.Document document = new com.lowagie.text.Document(PageSize.A4);

  try {

  RtfWriter2.getInstance(document,"e:123.doc");

  document.open();

  Font f = new Font();

  String topic= "处理反馈表";

  Paragraph p = new Paragraph(topic, new Font(Font.NORMAL, 18,Font.BOLDITALIC, new Color(0, 0, 0)));

  p.setAlignment(1);

  document.add(p);

  // 设置中文字体

  BaseFont bfFont = BaseFont.createFont("STSongStd-Light", "UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);

  //创建有三列的表格

  Table table = new Table(3);

  table.setBorderWidth(1);

  table.setBorderColor(Color.BLACK);

  table.setPadding(0);

  table.setSpacing(0);

  //添加表头的元素

  Cell cell = new Cell(title);// 单元格

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  cell.setHeader(true);

  cell.setColspan(3);// 设置表格为三列

  cell.setRowspan(2);// 设置表格为2行

  table.addCell(cell);

  table.endHeaders();// 表头结束

  cell = new Cell("时间:");

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  cell = new Cell(new Paragraph((vl.getLetrDate()).toString()));

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  cell.setColspan(2);

  table.addCell(cell);

  cell = new Cell("重要程度:");

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  cell = new Cell(new Paragraph((vl.getImptLevel()).toString()));

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  cell.setColspan(2);

  table.addCell(cell);

  //测试1

  cell = new Cell("测试1:");

  cell.setRowspan(5);// 当前单元格占两行,纵向跨度

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  table.addCell("姓名:");

  table.addCell(vl.getPernName());

  table.addCell("性别:");

  table.addCell(vl.getPernSex());

  table.addCell("公司:");

  table.addCell(vl.getPernUnit());

  table.addCell("职务:");

  table.addCell(vl.getPernPost());

  table.addCell("地址:");

  table.addCell(vl.getPernAddress());

  // 测试2

  cell = new Cell("测试2:");

  cell.setRowspan(4);// 当前单元格占两行,纵向跨度

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  table.addCell("姓名:");

  table.addCell(vl.getWrirName());

  table.addCell("单位 :");

  table.addCell(vl.getWrirOrganization());

  table.addCell("性别:");

  table.addCell(vl.getWrirSex());

  table.addCell("电话:");

  table.addCell(vl.getWrirTnur());

  // 简要内容

  cell = new Cell("简要内容:");

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  cell = new Cell(new Paragraph(vl.getLetrNote()));

  cell.setColspan(2);

  table.addCell(cell);

  // 测试3

  cell = new Cell("测试3:");

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  cell = new Cell(new Paragraph(vl.getDeptVerifyOpinion()));

  cell.setColspan(2);

  table.addCell(cell);

  // 测试4

  cell = new Cell("测试4:");

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  cell = new Cell(new Paragraph(vl.getChargeVerifyOpinion()));

  cell.setColspan(2);

  table.addCell(cell);

  //测试5

  cell = new Cell("测试5:");

  cell.setHorizontalAlignment(Element.ALIGN_CENTER);

  table.addCell(cell);

  cell = new Cell(new Paragraph(vl.getHandleContent()));

  cell.setColspan(2);

  table.addCell(cell);

  document.add(table);

  document.add(new Paragraph("n"));

  document.close();

  } catch (FileNotFoundException e) {

  e.printStackTrace();

  } catch (DocumentException e) {

  e.printStackTrace();

  } catch (IOException e) {

  e.printStackTrace();

  }

  在word中可以按照你所要求的格式,利用itext的table、cell、图片等“画”出想要的文档格式,然后再将数据往其中填充;如果想要将报表导出成pdf格式的,用itext也可以很轻松的实现。

  以上就是itext生成word文档的方法,希望对大家有所帮助。

标签:
itextitext生成word

本站资源均收集于互联网,其著作权归原作者所有,如果有侵犯您权利的资源,请来信告知,我们将及时撒销相应资源。

Windows系统之家为大家提供一个绿色的平台 Copyright © 2013-2024 www.163987.com 版权所有

粤ICP备19111771号-8 粤公网安备 44130202001061号 增值电信业务经营许可证 粤B2-20231006

微信公众号 公众号

扫码关注微信公众号

扫一扫 生活更美好

微信公众号
客服 客服