`
JavaCrazyer
  • 浏览: 3011944 次
  • 性别: Icon_minigender_1
  • 来自: 河南
社区版块
存档分类

使用JAVA(iText)生成word(rtf)文档---内容可含图片哦

阅读更多

 

当我使用这个JAVA生成RTF文件时费了好大的劲,原本是想生成WORD文档的,但是WORD文档POI只支持往生成的


WORD中填入文本,对于图片根本就不支持。后来想想,RTF格式的也可用WORD打开,不如生成RTF。结果上网搜


了很多技术,Itext,jacob,java2word,rtftemplate,reportrunner看了近一天也没什么头绪,写这些示例的几


乎没有,还好Itext的例子有那么几个,可是我上官网下了最新核心包后发现,导入例子中居然全部红叉,原


本以为上错网站了,再经过核实还是对的,于是断定网上的例子肯定有误,itext或许不能用。绕了大半天其


他的技术我真的没法弄了,还是回到了iText,静下心来思考觉得包肯定有问题,仔细一看原来最新版的是支


持PDF版的iText-5.0.1.jar是不对的,本来以为最新的功能最全了,没想到错了,想到这里赶紧下了稍微


iText-2.1.7.jar结果终于成功了,感慨不已!现贡献代码如下


记住官网上只能下到核心包:iText-1.2.7.jar和支持rtf的iText-rtf-2.1.7.jar这两个貌似对了,其实还有


一个包是比较重要的iTextAsian.jar这个包对于设置字体什么的起了关键作用上网可以搜到的

 

官方网站:http://sourceforge.net/projects/itext/files/

 

代码如下

 

public class RTFCreate {

private static final String FILE_NAME = "e:/JAVA第一个RTF文档生成.rtf";

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

try {

RTFCreate rtfMain = new RTFCreate();

rtfMain.createRTFContext(FILE_NAME);




} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (DocumentException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}




public void createRTFContext(String path) throws DocumentException,

IOException {

Document document = new Document(PageSize.A4);

RtfWriter2.getInstance(document, new FileOutputStream(path));

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类库。iText的java类对于那些要产生包含文本,表格,图形的只读文档是很有用的。它的类库尤其与java Servlet有很好的给合。使用iText与PDF能够使你正确的控制Servlet的输出。";

Paragraph context = new Paragraph(contextString);

// 正文格式左对齐

context.setAlignment(Element.ALIGN_LEFT);

context.setFont(contextFont);

// 离上一段落(标题)空的行数

context.setSpacingBefore(20);

// 设置第一行空的列数

context.setFirstLineIndent(20);




document.add(context);




// //在表格末尾添加图片

Image png = Image.getInstance("c:/fruit.png");

document.add(png);

document.close();

}




}

 

 

 

 


 

7
0
分享到:
评论
12 楼 chentianhui 2015-02-11  
生成的图片被放大了1/3,这个是啥原因
11 楼 lesliewong123 2013-12-18  
大概vgvdtr
10 楼 sdw2wyy 2012-10-29  
怎么样给图片或者文字加个超链接????
9 楼 leilei_wl 2012-08-25  
你好,请问一个关于ITEXT的字体设置,目前也在用ITEXT,只是字体一直设置不生效,我目前想用楷体字,请问该如何做?
注:已经按照网上其他人的做法,但仍然不生效
8 楼 haiyangyiba 2012-05-31  
我允许了一下,为什么文件是乱码,打不开呢
7 楼 月亮不懂夜的黑 2011-11-07  
学习了。。。谢谢lz
6 楼 zhwq1216 2011-08-11  
sourceforge 上面已经找不到2.1.7的了,可以从maven库中下载

http://mirrors.ibiblio.org/pub/mirrors/maven2/com/lowagie/itext-rtf/2.1.7/itext-rtf-2.1.7.jar
http://grepcode.com/snapshot/repo1.maven.org/maven2/com.lowagie/itext/2.1.7

http://stackoverflow.com/questions/1876678/itext-5-0-0-where-did-rtf-and-html-go
5 楼 hejiaqi789 2011-07-25  
有没有做过上标和下标?
4 楼 yucai 2010-11-16  
谢谢,正好用到简单的word生成
3 楼 1174511820 2010-07-29  
请教个问题啊,为什么我用iText生成Word文档后只要在里面进行任意操作,甚至删除东西,都会引起文件大小变化啊?原来只有100多K的,修改后居然有10多M
2 楼 JavaCrazyer 2010-04-23  
客气客气,我也只是分享下自己的一小点经验而已
1 楼 speed_guo 2010-04-23  
多谢分析,我现在也在搞这个,看了你的,清晰了不少

相关推荐

    Java使用iText生成word文件的解决方案

    总结起来,使用iText生成Word文件是一项实用的技能,尤其在需要程序自动化生成报告或文档的场合。通过理解和熟练运用iText,你可以轻松地将数据转换为专业格式的文档,提高工作效率。对于那些需要处理大量文本和格式...

    itext-2.1.7.jar itext-rtf-2.1.7.jar

    总结,使用iText库在Java中生成Word文档,开发者可以通过简单的API调用来创建丰富的文档结构,包括段落、图片和页码。虽然有一些限制,但对于基础需求,iText是一个非常实用且高效的解决方案。在实际开发中,根据...

    itext-2.1.7.jar itext-rtf-2.1.7.jar 和源码

    《使用iText库在Java中生成PDF和Word文档》 在Java编程中,生成文档是一项常见的任务,尤其在数据报告、合同制作或者自动化流程中。iText是一个强大的库,能够帮助开发者轻松创建和编辑PDF及Word文档。本文将详细...

    iText-2.1.3 iTextAsian iText-rtf-2.1.3 jar包

    这对于那些需要在不支持PDF的环境中生成Word文档的项目非常有用。 在Linux环境下,这些组件的可用性打破了操作系统限制,让开发者能够在不依赖Windows或Microsoft Office的情况下,依然能够创建和编辑高质量的DOC和...

    iText-2.1.7.jar+iTextAsian.jar+iTextAsianCmaps.jar+itext-rtf-2.1.7.jar.zip

    通过这个库,开发者可以将iText生成的PDF内容转换为RTF,以便于在其他应用程序中进一步编辑或处理。 这些组件结合在一起,提供了一个强大的工具集,可以方便地处理PDF和RTF文档,尤其是在处理亚洲语言方面。在实际...

    itext2,itext-rtf jar包

    总结,iText 2.1.7和iText-RTF是Java开发中处理PDF和RTF文档的利器,它们为开发者提供了丰富的功能,使得在处理文档格式转换和内容操作时更加便捷高效。无论是在企业应用还是个人项目中,合理运用这两个库都能显著...

    iText生成word代码及jar包(含页眉页脚)

    在这个特定的资源包中,包含的是关于如何使用iText生成包含页眉和页脚的Word文档的代码示例以及必要的库文件。以下是对这些知识点的详细解释: 1. **iText库**:iText是一个开源的Java库,最初由Bruno Lowagie和 ...

    Itext生成Word依赖.rar 亲测可用,最新

    使用Itext生成Word文档的基本步骤如下: 1. 引入依赖:将上述jar文件添加到项目的类路径中,确保Java程序可以访问到Itext的相关类和方法。 2. 创建Document对象:这是Itext中的基本容器,用于存储文档结构和内容。 ...

    Java利用Itext2.1.7生成word需要jar及doc.rar

    总的来说,使用Itext 2.1.7生成Word文档是一个相对简单的过程,涉及导入必要的库,创建`Document`对象,设置`RtfWriter2`,添加内容,然后保存和关闭文档。尽管这个版本可能没有最新版本的功能丰富,但它仍然是一个...

    itext生成word需要的jar包

    在标题提到的场景中,“iText生成word需要的jar包”是指使用iText库来实现这个功能时所需的Java类库文件,也就是JAR文件。 首先,我们来看一下压缩包中的三个文件: 1. `iTextAsian.jar`:这是一个扩展包,专门...

    Itext实现自动生成pdf word文件

    iText是一个强大的Java类库,专门用于生成和处理PDF(Portable Document Format)文档。这个库在IT领域中广泛应用,因为它提供了灵活且易于使用的API,使得开发者可以轻松地创建、编辑和操作PDF文件。iText不仅限于...

    iText(pdf word)

    - **iTextAsian2.1.7.jar**: 同样,这个组件是为了解决亚洲文字在RTF文档中的渲染问题,与iTextAsianCmaps.jar一起使用,确保在Word文档中正确呈现亚洲文字。 3. **处理亚洲文字**: - **iTextAsian.jar**: 该库...

    java生成word,包括word表格,表格插入图片,jar包都在了

    Java生成Word文档是一种常见的需求,特别是在企业级应用中,例如报告生成、数据导出等。在Java中,我们可以使用各种库来实现这个功能,比如Apache POI,它是一个开源项目,提供了API来处理Microsoft Office格式的...

    Itext导出Word文档的例子

    Itext是一款广泛使用的Java库,专门用于创建和编辑PDF文档。在这个特定的例子中,我们将讨论如何使用Itext来导出Word文档。虽然Itext的主要功能是处理PDF,但通过其扩展库,它也能支持其他格式,包括Microsoft Word...

    itext 对word的操作

    总的来说,iText为Java开发者提供了一个强大的工具,用于处理包括Word在内的各种文档格式,尤其在生成和编辑PDF文档方面表现出色。通过理解和掌握iText的API,开发者可以构建出高效、灵活的文档处理系统。

    java导出word文档 jar包 itext

    这两个库是`iText`版本2.1.7的组成部分,其中`itext-2.1.7.jar`是核心库,用于处理PDF操作,而`itext-rtf-2.1.7.jar`则是RTF扩展,用于生成Word文档。 在Java项目中,将这两个jar包添加到类路径后,就可以开始使用`...

    Itext word转pdf

    文档POI只支持往生成的中填入文本,对于图片根本就不支持。使用itext 生成rtf格式的直接保存为word

    java用itext创建word模板

    Java 使用iText库创建Word模板是一项常见的任务,特别是在企业级应用中,经常需要自动生成报告或文档。iText是一个强大的PDF处理库,但它也可以用来创建和编辑Microsoft Word(.doc或.docx)文档,不过这通常需要...

    itext-word-兼容中文jar包

    《使用iText生成RTF文件并兼容中文的实践与解析》 在IT行业中,文档处理是不可或缺的一部分,尤其是在企业级应用中。iText是一个强大的Java库,它允许开发者创建PDF、XML、HTML等多种格式的文档。然而,在处理中文...

    IText 2.1.7 jar 包

    总的来说,IText 2.1.7是一个强大的工具,可以帮助Java开发者处理PDF文档,甚至将其转换为其他格式,如Word或RTF。结合iReport,可以进一步提升报告设计和自定义的能力。对于需要处理PDF和导出文档的项目,这是一个...

Global site tag (gtag.js) - Google Analytics