使用iText操作pdf檔案

2021-08-29 19:32:09 字數 1672 閱讀 6660

好了,回到文章主題,查了下itext後,我也去稍微看了下相關的api,做了一些簡單的demo,雖然網上相關介紹很多,但是自己寫一遍程式再用自己的語言記錄下來,理解會更為深刻一點。

一.hello world

itext建立pdf檔案是十分簡單的,為了演示其極其簡單性,我們做乙個helloworld吧,讓大家體驗一下。

在這個pdf檔案中,我們只顯示一句話"hello world",實現方式如下: // 建立乙個文件物件

document doc = new document();

try ... catch (filenotfoundexception e) ... catch (documentexception e) ...怎麼樣?很簡單吧?下面我們對以上**稍作解釋。

document(文件)是建立pdf需要使用的第乙個類,一旦建立了文件,要向pdf檔案裡寫入內容,則需要乙個寫入器,而pdfwriter就是這樣的乙個寫入器。paragraph這個類表示乙個縮排的段落。執行以上程式,我們就會在/root目錄下看到hello.pdf檔案。

但是在實際工作中,我們不可能做這麼簡單的工作,下面就介紹一下常用的操作。

二.設定頁邊距

如果我們希望定義頁面大小和頁邊距,可以通過使用document的構造方法實現: public document();

public document(rectangle pagesize);

public document(rectangle pagesize,

int marginleft,

int marginright,

int margintop,

int marginbottom);如下: rectangle psize=new rectangle(144,90);

//文件的背景色

psize.setbackgroundcolor(color.blue);

//建立乙個文件物件,設定初始化大小和頁邊距

document doc=new document(psize,5,5,5,5);在上面的例子中我們通過rectangle設定了文件的大小,其實itext已經為我們定義好了許多常用的頁面,比如:a0-a10,我們可以直接呼叫,如下: document doc=new document(pagesize.a4,5,5,5,5);

三.設定字型

itext可以設定顯示文字的字型,大小,顏色等,如下: // 加入文字「hello world」,並設定字型為粗體,大小為20,顏色為紅色

doc.add(new paragraph("helloworld", fontfactory.getfont(

四.編輯**

pdf中的table和html中的table差不多,只是其單元格是cell,如下**加入了乙個2*2的**,**很簡單,就不過多解釋了。 document doc = new document();

try ... catch (filenotfoundexception e) ... catch (documentexception e) ...

五.插入

image jpeg;

try ... catch (badelementexception e) ... catch (malformedurlexception e) ... catch (ioexception e) ... catch (documentexception e) ...

使用iText操作pdf檔案

itext建立pdf檔案是十分簡單的,為了演示其極其簡單性,我們做乙個helloworld吧,讓大家體驗一下。在這個pdf檔案中,我們只顯示一句話 hello world 實現方式如下 建立乙個文件物件 document doc new document try catch filenotfound...

使用itext包生成pdf檔案

最近在寫乙個定時任務,定時生成乙個pdf檔案並實現傳送的功能,在此給大家順帶講一下生成pdf檔案的庫吧 生成pdf檔案所用庫itext,具體操作如下 com.itextpdf itextpdf 5.5.10 如果輸出的是中文的話,那麼還需要引入下面這個包 com.itextpdf itext asi...

使用iText生成pdf文件

一 建立乙個新pdf文件 1.首先建立乙個文件document document doc new document 也可以設定文件背景,大小等 文件的背景色 rectangle psize new rectangle 144,90 psize.setbackgroundcolor color.blu...