`
super_bee
  • 浏览: 1536 次
  • 来自: 深圳
社区版块
存档分类
最新评论

java word 导出

阅读更多

导出需要jar包:iText-5.0.6.jar,iTextAsian.jar,iText-rtf-2.1.7.jar,jxl.jar,网上有大把

以下都是我以前项目中用过的,现整理下,把自己的数据加进去即可,希望能帮到大家!

导出word:

package com.bank.util;

import java.awt.Color;
import java.io.FileOutputStream;
import java.io.IOException;

import com.lowagie.text.Cell;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Element;
import com.lowagie.text.Font;
import com.lowagie.text.FontFactory;
import com.lowagie.text.Image;
import com.lowagie.text.PageSize;
import com.lowagie.text.Paragraph;
import com.lowagie.text.Phrase;
import com.lowagie.text.Table;
import com.lowagie.text.pdf.BaseFont;
import com.lowagie.text.rtf.RtfWriter2;

public class WordTools {

 public void createDocContext(String file) throws DocumentException,
 IOException {
 // 设置纸张大小
 Document document = new Document(PageSize.A4);
 // 建立一个书写器(Writer)与document对象关联,通过书写器(Writer)可以将文档写入到磁盘中
 RtfWriter2.getInstance(document, new FileOutputStream(file));
 document.open();
 // 设置中文字体
 BaseFont bfChinese = BaseFont.createFont("STSongStd-Light",
 "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
 // 标题字体风格
 Font titleFont = new Font(bfChinese, 12, Font.BOLD);
 // 正文字体风格
 Font contextFont = new Font(bfChinese, 10, Font.NORMAL);
 Paragraph title = new Paragraph("标题");
 // 设置标题格式对齐方式
 title.setAlignment(Element.ALIGN_CENTER);
 title.setFont(titleFont);
 document.add(title);

 String contextString = "iText是一个能够快速产生PDF文件的java类库。"
 + " \n"// 换行
 + "iText的java类对于那些要产生包含文本,"
 + "表格,图形的只读文档是很有用的。它的类库尤其与java Servlet有很好的给合。"
 + "使用iText与PDF能够使你正确的控制Servlet的输出。";
 Paragraph context = new Paragraph(contextString);
 // 正文格式左对齐
 context.setAlignment(Element.ALIGN_LEFT);
 context.setFont(contextFont);
 // 离上一段落(标题)空的行数
 context.setSpacingBefore(5);
 // 设置第一行空的列数
 context.setFirstLineIndent(20);
 document.add(context);

         //利用类FontFactory结合Font和Color可以设置各种各样字体样式
 /**
 * Font.UNDERLINE 下划线,Font.BOLD 粗体
 */
 Paragraph underline = new Paragraph("下划线的实现", FontFactory.getFont(
 FontFactory.HELVETICA_BOLDOBLIQUE, 18, Font.UNDERLINE,
 new Color(0, 0, 255)));
 document.add(underline);
 
 // 设置 Table 表格
 Table aTable = new Table(3);
 int width[] = {25,25,50};
 aTable.setWidths(width);//设置每列所占比例
 aTable.setWidth(90); // 占页面宽度 90%

 aTable.setAlignment(Element.ALIGN_CENTER);//居中显示
 aTable.setAlignment(Element.ALIGN_MIDDLE);//纵向居中显示
 aTable.setAutoFillEmptyCells(true); //自动填满
 aTable.setBorderWidth(1); //边框宽度
 aTable.setBorderColor(new Color(0, 125, 255)); //边框颜色
 aTable.setPadding(0);//衬距,看效果就知道什么意思了
 aTable.setSpacing(0);//即单元格之间的间距
 aTable.setBorder(2);//边框

 //设置表头
 /**
 * cell.setHeader(true);是将该单元格作为表头信息显示;
 * cell.setColspan(3);指定了该单元格占3列;
 * 为表格添加表头信息时,要注意的是一旦表头信息添加完了之后, \
 * 必须调用 endHeaders()方法,否则当表格跨页后,表头信息不会再显示
 */
 Cell haderCell = new Cell("表格表头");
 haderCell.setHeader(true);
 haderCell.setColspan(3);
 aTable.addCell(haderCell);
 aTable.endHeaders();

 Font fontChinese = new Font(bfChinese, 12, Font.NORMAL, Color.GREEN);
 Cell cell = new Cell(new Phrase("这是一个测试的 3*3 Table 数据", fontChinese ));
 cell.setVerticalAlignment(Element.ALIGN_TOP);
 cell.setBorderColor(new Color(255, 0, 0));
 cell.setRowspan(2);
 aTable.addCell(cell);

 aTable.addCell(new Cell("#1"));
 aTable.addCell(new Cell("#2"));
 aTable.addCell(new Cell("#3"));
 aTable.addCell(new Cell("#4"));
 Cell cell3 = new Cell(new Phrase("一行三列数据", fontChinese ));
 cell3.setColspan(3);
 cell3.setVerticalAlignment(Element.ALIGN_CENTER);
 aTable.addCell(cell3);

 document.add(aTable);
 document.add(new Paragraph("\n"));
 //添加图片
// Image img=Image.getInstance("http://127.0.0.1:8080/testSystem/images/1_r1_c1.png");
// img.setAbsolutePosition(0, 0);
// img.setAlignment(Image.RIGHT);//设置图片显示位置
// img.scaleAbsolute(12,35);//直接设定显示尺寸
// img.scalePercent(50);//表示显示的大小为原尺寸的50%
// img.scalePercent(25, 12);//图像高宽的显示比例
// img.setRotation(30);//图像旋转一定角度
// document.add(img);

 document.close();
 } 
 public static void main(String[] args){
  WordTools b=new WordTools();
   try {
    b.createDocContext("d:/demo.doc");
   } catch (DocumentException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
}
}

 

分享到:
评论
1 楼 18335864773 2019-04-11  
用 pageoffice 组件导出 word 吧

相关推荐

    java word导出功能实现

    在Java编程环境中,导出Word文档是一项常见的任务,特别...以上就是使用Java和Apache POI实现Word导出功能的基本步骤和关键知识点。通过熟练掌握这些技巧,你可以轻松地创建符合模板格式的Word文档,满足各种业务需求。

    JAVA 导出WORD

    标签中的"java导出word文档"、"jacob word导出"和"word导出图"暗示了这个项目可能还涵盖了在Word文档中插入图片的功能。使用Jacob,可以调用Word的API来插入图片,如下所示: ```java // 获取当前活动文档的Body...

    java freemarker导出word -包含多张图片导出

    在Java应用中,使用FreeMarker导出Word文档可以提供灵活的文本和数据结合的方式,尤其适用于生成报告、合同等复杂格式的文档。本篇将详细介绍如何使用FreeMarker与Java结合来导出包含多张图片的Word文档。 1. **...

    java导出Word修改后缀名

    java导出文件, freemarker导出word需要ftl文件,java导出Word常见问题。2.TXT修改后缀名为.ftl

    Java导出Word文档的实现.docx

    在Java开发中,导出Word文档是一项常见的任务,尤其在生成报表、报告或者合同等场合。本文将探讨如何使用Java高效地实现Word文档导出,主要聚焦于利用XDocReport和FreeMarker模板引擎的方式。 首先,Java中导出Word...

    word导出工具(java)

    java的word导出工具类,支持2007版word的模板导出,可导出文字、图片等

    java数据源导出WORD文档(包括图片、表格及文本)

    最近因项目开发的需要,整理了一份用JAVA导出WORD文档,其部署步骤如下: 1、将jacob-1.14.3-x86.dll放在服务器的系统盘(或运行本机的系统):\WINDOWS\system32目录下。 2、将jacob-1.14.3-x86.dll放在JDK 的 bin ...

    java word 导出功能

    在Java编程环境中,实现Word文档的导出功能是一项常见的需求,尤其在企业级应用中,如报表生成、数据导出等。本篇文章将详细讲解如何使用Java来创建和导出Word文档,同时会涉及到如何在Word中添加图表,即`chart`的...

    java导出word使用freemarker模板map数据导出word带图片

    java导出word使用freemarker模板map数据导出word带图片 可以循环map 中list。 调用的2种方法在博客 https://blog.csdn.net/yjflinchong/article/details/122614203

    用java实现word统计报表和图形统计的导出

    在给定的标题“用java实现word统计报表和图形统计的导出”中,我们可以理解到这个项目或教程旨在教我们如何使用Java来创建包含统计报表和图形的Microsoft Word文档。这通常涉及到两个关键领域:文本处理和数据可视化...

    java导出word的插件

    Java导出Word的插件是一种在Java应用程序中用于创建、编辑和导出Microsoft Word文档的工具。这种插件使得开发者能够方便地在Java环境中处理Word文档,而无需直接使用Microsoft Office套件。以下是对这个主题的详细...

    Java使用poi做Word导出

    本篇文章将深入探讨如何使用Apache POI在Java中创建和导出Word文档。 首先,我们需要在项目中引入Apache POI库。`pom.xml`文件中的依赖配置通常是这样的: ```xml <groupId>org.apache.poi <artifactId>poi ...

    Java导出Word文件

    在Java编程环境中,导出Word文件是一项常见的任务,特别是在企业级应用中,如报表生成、文档自动化等场景。本文将详细讲解如何使用Java实现Word文件的导出,并结合提供的资源进行解析。 首先,Java导出Word文件通常...

    java poi导出word

    在"java poi导出word"这个场景中,我们主要关注的是如何使用Java POI来创建和编辑Word文档。下面将详细介绍如何利用Java POI实现这些功能,并提供一些关键知识点。 1. 文字与段落: 在Java POI中,我们可以使用...

    Java使用POI导出Word文档

    Java使用Apache POI库导出Word文档是一种常见的技术实践,特别是在企业级应用中,用于生成报告、合同或者自定义的数据输出。Apache POI是Apache软件基金会的一个开源项目,它提供了处理Microsoft Office格式(如Word...

    JAVA WORD中实现电子印章效果 文字浮于印章上面

    在JAVA中实现Word文档中的电子印章效果,可以让文档看起来更加正式和权威,尤其适用于法律、合同等场景。这个过程涉及到的主要技术包括Java编程语言、Apache POI库以及可能的图像处理技术。Apache POI是一个流行的...

    java导出word并插入图片

    在Java编程环境中,导出Word文档并插入图片是一项常见的任务,尤其在自动化报告生成、数据可视化或文档处理的场景中。下面将详细讲解如何使用Java实现这个功能。 首先,我们需要一个能够操作Word文档的库。Apache ...

    java实现导出excel、word、 pdf

    在Java编程中,导出Excel、Word和PDF是常见的数据呈现和报告生成需求。这些文件格式广泛用于数据存储、报表生成、文档分享等场景。以下将详细介绍如何使用Java实现这三种文件类型的导出。 首先,让我们关注Excel的...

    java工程导出word文件的实例

    在Java编程环境中,导出Word文件是一项常见的任务,特别是在企业级应用中,如报告生成、数据导出等。本实例将介绍如何使用Java来创建和导出Word文档,以满足这些需求。 首先,我们需要了解Java中用于处理Word文档的...

Global site tag (gtag.js) - Google Analytics