程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> 從Java應用程序動態生成PDF文件

從Java應用程序動態生成PDF文件

編輯:JAVA編程入門知識

  假如應用程序需要動態生成 PDF 文檔,則需要 iText 庫。開放源碼的 iText 庫使 PDF 文檔的創建能夠在瞬間完成。本文介紹了 iText 並提供了使用它從 Java ? 技術應用程序生成 PDF 文檔的由淺入深的指南。我們創建了一個示例應用程序以更好地理解 iText。
  
  很多應用程序要求動態生成 PDF 文檔。這類應用程序包括銀行生成用於電子郵件投遞的客戶報表,到讀者購買特定圖書章節並以 PDF 格式接收這些文檔。例子羅列下去是很多的。在本文中,將使用 iText Java 庫生成 PDF 文檔,並引導您完成一個示例應用程序,以使您能夠更好地理解和使用 iText。
  
  熟悉 iText
  
  iText 是 Lowagie.com 站點(請參閱 參考資料)免費提供的 Java 庫。iText 庫的功能很強大,支持 Html、RTF 和 XML 文檔的生成,此外還能夠生成 PDF 文檔。可以從多種字體中選擇文檔中所使用的字體。同時,iText 的結構答應使用相同的代碼生成以上任意類型的文檔。
  
  iText 庫中的類用於以各種字體來生成 PDF 文本、在 PDF 文檔中生成表格、為頁添加水印等。iText 還提供許多功能。在一篇文章中不可能一一演示。本文中將介紹生成 PDF 文檔的基本需求。
  
  我們將使用 Eclipse 來進行示例應用程序開發。作為一個開放源碼的 IDE,可以免費獲得 Eclipse,而且其功能非常強大。現在就可以下載 Eclipse。
  
    iText API:近距離觀察
  
  com.lowagie.text.Document 是生成 PDF 的主要的類。它是需要使用的第一個類。一旦開始創建文檔,將需要一個寫入器向文檔中寫入內容。com.lowagie.text.pdf.PdfWriter 就是一個 PDF 寫入器。下面列出了通常需要使用的類:
  
  com.lowagie.text.Paragraph —— 這個類表示一個縮進的段落。
  
  com.lowagie.text.Chapter —— 這個類表示 PDF 文檔中的章節。使用 Paragraph 作為題目並使用 int 作為章節號碼來創建它。
  
  com.lowagie.text.Font —— 這個類包含了全部的字體規范,例如字體、大小、樣式和顏色。各種字體都在這個類中聲明為靜態常數。
  
  com.lowagie.text.List —— 這個類表示一個列表,按順序包含許多 ListItems。
  
  com.lowagie.text.Table —— 這個類表示包含單元格的表,單元格有序地排列在矩陣中。
  
  下載 iText 並在 Eclipse 中進行配置
  
  作為一個純粹的 Java 庫,iText 是以 JAR 文件的形式出現的(請參閱 參考資料)。一旦下載了這個庫(在路徑 C: emp 下),執行下列步驟將會在 Eclipse 環境中配置 iText 庫:
  
  在 Eclipse 中創建一個新的 Java 項目,將其命名為 iText。
  
  在 Package EXPlorer 視圖中右擊 iText 項目,然後選擇 Properties。
  
  單擊 Java Build Path。在 Libraries 選項卡中,單擊 Add External JARs。
  
  浏覽到 C: emp 目錄,選擇該目錄下的 itext-1.3.jar。
  
  單擊 OK。
  
  現在已經配置好 iText,Eclipse 已經預備好創建 Java 應用程序以生成動態 PDF 文檔。
  
  示例應用程序
  
  還有什麼能夠比自己動手創建一個工作示例更好地演示技術了?現在有了所需的工具(Eclipse IDE)和庫(iText 庫),可以開始設計和開發一個示例應用程序了。
  
  讓我們創建一個簡單的 PDF 文檔,其中包含一些基本元素,如純文本、非默認字體的彩色文本、表格、列表、章節和小節等。此應用程序的目的是讓您熟悉 iText 庫的使用方式。有很多與幫助生成 PDF 文檔有關的類。在這裡不可能介紹所有這些類。iText 的 javadoc 是介紹如何使用這些類的很好的資料。下面讓我們來開始編寫代碼。
  
  第一步是創建一個文檔。文檔是 PDF 文檔的所有元素的容器。
  
  清單 1. 實例化文檔對象
  
  Document document = new Document(PageSize.A4, 50, 50, 50, 50);
  
  第一個參數是頁面大小。接下來的參數分別是左、右、上和下頁邊距。但是還沒有定義該文檔的類型。它取決於所創建的寫入器的類型。對於我們的示例,選擇了 com.lowagie.text.pdf.PdfWriter。其他寫入器為 HtmlWriter、RtfWriter、XmlWriter 等等。它們的名稱解釋了它們的實際用途。
  
  清單 2. 創建 PdfWriter 對象
  
  
 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved