一、前言
在企業(yè)的信息系統(tǒng)中,報(bào)表處理一直占比較重要的作用,本文將介紹一種生成PDF報(bào)表的java組件--iText。通過在服務(wù)器端使用jsp或JavaBean生成PDF報(bào)表,客戶端采用超級(jí)連接顯示或下載得到生成的報(bào)表,這樣就很好的解決了B/S系統(tǒng)的報(bào)表處理問題。
二、iText簡(jiǎn)介
iText是聞名的開放源碼的站點(diǎn)sourceforge一個(gè)項(xiàng)目,是用于生成PDF文檔的一個(gè)java類庫(kù)。通過iText不僅可以生成PDF或rtf的文檔,而且可以將xml、Html文件轉(zhuǎn)化為PDF文件。
iText的安裝非常方便,在http://www.lowagie.com/iText/download.html - download 網(wǎng)站上下載iText.jar文件后,只需要在系統(tǒng)的CLASSPATH中加入iText.jar的路徑,在程序中就可以使用iText類庫(kù)了。
三、建立第一個(gè)PDF文檔
用iText生成PDF文檔需要5個(gè)步驟:
?、俳om.lowagie.text.Document對(duì)象的實(shí)例。
②建立一個(gè)書寫器(Writer)與document對(duì)象關(guān)聯(lián),通過書寫器(Writer)可以將文檔寫入到磁盤中。
?、鄞蜷_文檔。
④向文檔中添加內(nèi)容。
?、蓐P(guān)閉文檔。
通過上面的5個(gè)步驟,就能產(chǎn)生一個(gè)Helloworld.PDF的文件,文件內(nèi)容為"Hello World"。
建立com.lowagie.text.Document對(duì)象的實(shí)例
com.lowagie.text.Document對(duì)象的構(gòu)建函數(shù)有三個(gè),分別是:
構(gòu)建函數(shù)的參數(shù)pageSize是文檔頁(yè)面的大小,對(duì)于第一個(gè)構(gòu)建函數(shù),頁(yè)面的大小為A4,同Document(PageSize.A4)的效果一樣;對(duì)于第三個(gè)構(gòu)建函數(shù),參數(shù)marginLeft、marginRight、marginTop、marginBottom分別為左、右、上、下的頁(yè)邊距。
通過參數(shù)pageSize可以設(shè)定頁(yè)面大小、面背景色、以及頁(yè)面橫向/縱向等屬性。iText定義了A0-A10、AL、LETTER、HALFLETTER、_11x17、LEDGER、NOTE、B0-B5、ARCH_A-ARCH_E、FLSA 和FLSE等紙張類型,也可以通過Rectangle pageSize = new Rectangle(144, 720);自定義紙張。通過Rectangle方法rotate()可以將頁(yè)面設(shè)置成橫向。
書寫器(Writer)對(duì)象
一旦文檔(document)對(duì)象建立好之后,需要建立一個(gè)或多個(gè)書寫器(Writer)對(duì)象與之關(guān)聯(lián)。通過書寫器(Writer)對(duì)象可以將具體文檔存盤成需要的格式,如com.lowagie.text.PDF.PDFWriter可以將文檔存成PDF文件,com.lowagie.text.html.HtmlWriter可以將文檔存成html文件。
設(shè)定文檔屬性
在文檔打開之前,可以設(shè)定文檔的標(biāo)題、主題、作者、要害字、裝訂方式、創(chuàng)建者、生產(chǎn)者、創(chuàng)建日期等屬性,調(diào)用的方法分別是:
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注