前往顾页
以后地位: 主页 > 收集编程 > .Net实例教程 >

iText操纵PDF文件的体例及代码

时候:2015-08-05 14:06来源:知行网www.zhixing123.cn 编辑:麦田守望者

iText是闻名的开放源码的站点sourceforge一个项目,是用于天生PDF文档的一个java类库。经由过程iText不但可以天生PDF或rtf的文档,并且可以将XML、Html文件转化为PDF文件。 iText的装置非常便利,下载iText.jar文件后,只需求在体系的CLASSPATH中插手iText.jar的途径,在法度中便可利用iText类库了。

iText利用体例

iTextAsian.jar (亚洲说话包,可利用中文) 需求增加到工程中 利用时需求在体系的环境变量Path中插手iText的路劲,在法度中便可利用了 用iText天生PDF文档需求5个步调:

1)建立com.lowagie.text.Doucment工具的实例 Document document = new Document();

2)建立一个誊写器(Writer)与document工具关联,经由过程誊写器(Writer)可以将文档写入磁盘中PDFWriter.getInstance(document,new FileOutputStream(“要存放的文件途径名”));

3)翻开文档document.open();

4)向文档中增加内容

所有向文档增加的内容都是以工具为单位 如:Phrase(短语)、Paragraph(段落)、Chunk(文本块)、Table、Graphic

比较常常利用的为Paragraph工具,用于向文档中增加一段笔墨。Chunk(文本块)是措置文本的最小单位,由一串带格局(包含字体、色彩、年夜小) 的字符串构成。 Phrase(短语)由一个或多个Chunk(文本块)构成,Phrase(短语)也能够设定字体, 但对此中以设定过字体的Chunk(文本块)有效。经由过程Phrase(短语)成员函数 Add可以将一个Chunk(文本块)插手到Phrase(短语)中。

如:phrase.add(chunk); Paragraph(段落)由一个或多个Chunk(文本块)或Phrase(短语)构成,相当于Word文档中的段落观点,一样可以设定段落的字体年夜小、色彩等属性。

别的也能够设定段落的首行缩进、对齐体例(左对齐、右对齐、居中对齐)。经由过程函数SetAlignment()可以设定段落的对齐体例

如:Paragraph.setAlignment(int age); 参数有1(居中对齐)、2(右对齐)、3(左对齐);不设置默许左对齐。

Chunk chunk1 = new Chunk(“ceshi1″);

Chunk chunk2 = new Chunk(“ceshi2″);

Phrase phrase = new Phrase();

Phrase.add(chunk1);

Phrase.add(chunk2);

Paragraph paragraph1 = new Paragraph(“ceshizhi”);

第一种,直接传值出来

Paragraph paragraph2 = new Paragraph (chunk2);

paragraph2.setAlignment(1); 居中对齐

第二种,传一个文本块工具出来

Paragraph paragraph2 = new Paragraph (phrase);

第三种,传一个短语工具出来

Document.add(paragraph1);

Document.add(paragraph2);

Document.add(paragraph3); 把段落写入文档中

5) 封闭文档

Document.close();

其他: 换页 Document.newPage();

中文措置 当有中文的时候利用下面的体例例中文不会被写入,

是以需求用到:

BaseFont bfChinese = BaseFont.createFont(“STSong-Light”,”UniGB-UCS2-H”, BaseFont.NOT_EMBEDDED);

Font fontChinese = new Font(bfChinese, 12, Font.NORMAL,Color.GREEN);

然后翻开文档写入的时候,就应当遵循下面的写法:

Paragraph paragraph1 = new Paragraph(“测试”, fontChinese);

同下面一样”测试”可以用文本块或短语替代;

图片措置 iText中措置图象的类为com.lowagie.text.Image 目前iText支撑的图象格局有:、GIF、JPG、PNG等格局 iText用一样的机关函数主动辨认图象格局: //参数为gif、jpg、png格局的图片都可以

Image image = Image.getInstance(“参数”); //定义一个图片信息,可所以绝对途径,也能够是

URL Image img = Image.getInstance(“D:\\4.jpg”);

img = Image.getInstance(new URL(http://xxx.com/logo.jpg)); //增加到document中 document.add(img);

图象的地位 图象的地位主如果指图象在文档中的对齐体例、图象和文本的地位关系。

IText中经由过程函数public void setAlignment(int alignment)进行措置, 参数alignment为Image.RIGHT、Image.MIDDLE、Image.LEFT别离指右对齐、居中、左对齐;

当参数alignment为Image.TEXTWRAP、Image.UNDERLYING别离 指笔墨绕图形显现、图形作为笔墨的背景显现。

这两种参数可以连络以到达预期的结果, 如

setAlignment(Image.RIGHT|Image.TEXTWRAP) 显现的结果为图象右对齐,笔墨环绕图象显现。 图象的尺寸和扭转 //设置图象的宽和高

image.scaleAbsolute(int newWidth, int newHeight); //设置图象比例,表示显现的年夜小为原始年夜小的多少比例

image.scalePercent(int percent); //设置图象的高宽比例

image.scalePercent(int percentX,int percentY); //设置图象扭转必然的角度;

参数arg为弧度,而不是角度 image.setRotation(float arg);

顶一下
(5)
100%
踩一下
(0)
0%
------分开线----------------------------
标签(Tag):C# C#实例教程 c#根本教程 C#源代码 c#技能
------分开线----------------------------
颁发评论
请自发遵循互联网相关的政策法规,严禁公布色情、暴力、革命的谈吐。
评价:
神色:
考证码:点击我更换图片
猜你感兴趣