Flying-Saucer + iText + Velocity
1. 第一步
將jar包放到你的工程里,需要的jar如下:
bcprov-jdk15-140.jar
core-renderer.jar
iText-2.0.8.jar
iTextAsian.jar
velocity-1.4.jar
Jar包下載地址:http://code.google.com/p/flying-saucer/downloads/list
2. 第二步
設計模版,進行排版調整樣式,css樣式也可以導入@import 等,通過Velocity模版引擎動態替換 頁面內容,以下是模版內容:
<?xml version="1.0" encoding="UTF-8" ?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>PDF模版</title>
<style type="text/css">
<!--
body {
font: 100% Verdana, Arial, Helvetica, sans-serif;
margin: 0;
padding: 0;
text-align: center;
color: #000000;
}
.oneColLiqCtrHdr #container {
width: 100%;
margin: 0 auto;
text-align: left;
}
div.header-left {display: none}
div.header-right {display: none}
div.footer-left {display: none}
div.footer-right {display: none}
② 求 入門或基礎的java英文版書籍
Java 編程初步 傻瓜書
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159167
零基礎學Java電子教程 附隨書光碟
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181032
數據結與演算法 Java語言版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160250
精通JBuilder 2005 中文版 高清PDF+隨書光碟
http://bbs.topsage.com/dispbbs_121_172861_1.html
程序天下:J2EE整合詳解與典型案例 電子教程+隨書光碟
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181884
JSF JavaServer Faces in Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160229
Spring in Action (第二版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146170
Manning jQuery in Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174769
Spring In Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174107
AspectJ in Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174106
Hibernate In Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174105
Struts in Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174005
Lucene in Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=173991
Wrox出版 Beginning Spring Framework 2
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=175714
Java Extreme Programming Cookbook
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174729
Java Programming Cookbook
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=173667
Beginning Java Objects
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174685
Building Java Enterprise App
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174684
Ant: The Definitive Guide
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174683
Better Faster Lighter Java
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174681
Hibernate Reference 3.1
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174674
Pragmatic Version Control using CVS
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174479
Pragmatic Project Automation
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174476
jQuery Reference Guide
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174411
Java 2 核心技術 卷1&卷2 CHM版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174123
Wrox Professional Java JDK 6 Edition
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=163451
Java 2 寶典
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159154
侯捷java編程思想 PDF中文版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=163902
Learning Java (第三版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146869
The Java Language Specification
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=176082
Beginning Java Programming for Dummies 第二版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=163923
Java 2 核心編程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146174
Java How to Program (第六版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146371
Java All-In-One案頭參考傻瓜書 (第二版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=152871
21天自學 Java 6 (2007年5月更新出版) PDF
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159315
Java咖啡館
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151447
Thinking in Java(第四版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=152053
深入學習JFC SWING - Java基礎類組件集
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=152049
J2EE全實例教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158057
Java信息系統設計與開發實例(第二版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151993
Java優化編程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151994
Effective Java
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=175258
Java信息系統設計與開發實例(第二版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151993
Tricks of the Java Programming
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159305
Wrox Professional Java Native Interfaces with SWT JFace
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159290
Java Swing 第二版 PDF文字版 O'Relliy出版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159158
O'Reilly - Java Database Programming with JDBC
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159292
JDBC與Java資料庫程序設計
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151448
Learning JQurey (2007年7月最新出版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159652
J2EE with BEA WebLogic Server
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=176088
Pragmatic Unit Testing in Java with JUnit
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=176084
Wiley出版 J2EE 1.4 Bible
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=176080
J2EE設計開發編程指南
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159288
Java Web Services簡明教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159159
O'Reilly Java and XML (第二版PDF)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146231
O'Reilly Java and XML (第三版PDF)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=167584
Java技術XML高級編程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=147800
Java Reflection in Action [MANNING]
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=178017
Java Puzzler (Java 解惑)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=178016
Java Database Best Practices
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=178015
Struts: The Complete Reference
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=178025
Log4j The Complete Manual
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=178023
Programming for the Java Virtual Machine
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=178021
Expert One-on-One J2EE Design and Development
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160652
Expert One-on-One J2EE Development without EJB
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160653
JBoss - A Developer's Notebook
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146179
The Java Programming Language (第四版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=147095
Professional Java Development with the Spring Framework
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159303
Core Java Server Faces 第二版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=145549
精通Enterprise JavaBeans
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146018
Enterprise JavaBeans EJB 第四版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159166
J2EE應用與BEA WebLogic Server (第二版PDF)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146227
O'Reilly Java Web Services
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146377
Ant權威指南
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=148383
Ajax和Java框架高級編程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=148371
Java Web Services簡明教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159159
Cross-Platform Web Services Using C# and Java
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160472
O'Reilly Ajax on Java
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160600
O'Reilly Java and XSLT
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=149585
O'Reilly Java and XML Binding
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=149583
O'Reilly Java and SOAP
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=149581
Design Patterns Java Companion
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=163920
J2EE Java黑客大曝光 開發安全的Java應用程序
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151446
J2ME API 速查手冊
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158248
精通J2ME無線編程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=152047
J2ME開發大全
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151987
Beginning J2ME 從入門到精通 第三版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=184149
Beginning JBoss Seam從入門到精通
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=183607
Beginning Hibernate 從入門到精通
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=183602
Java網頁開發的藝術
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151991
Java編程高手
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151990
Java 5.0 Tiger程序高手秘笈
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151989
Java2網路協議技術內幕(附源碼)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151988
Using Enterprise JavaBeans 2
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=166051
Java技術實用教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158244
企業級Java安全性(構建安全的J2EE應用)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=152048
Java語言集成開發環境Eclipse中文教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158237
NetBeans IDE 5.5 企業版高級開發教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159653
Using Enterprise JavaBeans 2
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=166051
Borland JBuilder Developer's Guide
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=166294
Eclipse [O'Reilly]
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=175257
Eclipse精要與高級開發技術
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151986
Code Generation in Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174722
Java 6 3D游戲開發
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160251
Java視頻教程 孫鑫Java無難事 (全12CD)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=154630
上海交大 Java初級編程基礎 共25講下載 avi格式
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=185162
張孝祥Java課堂系列之 Tomcat入門(七講 swf)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181503
張孝祥Java課堂系列之 Servlet開發入門 (九講 swf)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181502
張孝祥Java課堂系列之 HTTP協議詳解(四講 swf)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181500
張孝祥Java課堂系列之 Web XML基礎(四講 swf)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181499
J2EE視頻教程 中間件技術 浙江大學胡曉軍 全24講完整版下載
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181597
EJB技術及應用視頻教程 東北大學 全26講完整版 RMVB格式
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181583
J2EE開發IDE Eclipse視頻教程 全9CD 完整版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158075
Java視頻教程 即學即會java
http://bbs.topsage.com/dispbbs_121_156264_6.html
③ 自學計算機編程應該看些什麼書
一:第一階段
C語言-------《C語言設計》 作者:譚浩強
大多數人都推薦譚浩強這本書,譚浩強的C語言程序設計,我覺得更適合當教科書,主要是篇幅沒有那麼大,書本的內容不是很全,由老師帶入門是最好的。
《C Primer Plus》第五版 作者:Stephen Prata
這本書比較厚,內容也比較基礎,擴展的也比較廣,自學容易上手,唯一的缺陷在於它是外國人編寫,而國內的翻譯往往讓人難以滿意,如果你有較好的英語水平,最好閱讀英文版的。
《C語言入門經典》第四版 作者:Ivor Horton
二:第二階段
這一階段看個人主攻的方向了,安卓一般就JAVA,PC游戲、軟體C++,也有推薦C#,這些都是主流語言,其他語言要看個人愛好與發展。
面向對象的語言,一般懂一門,之後要轉其他語言也很容易的,其實思想都差不多,主要的不同在於語法。C#容易上手,一個月入門,一年精通,而C++卻有點難,一年入門,二十年也未必敢說自己精通。如果有時間,可以了解一下匯編語言。
C++ Primer, 4rd Edition
(入門類:
C++ Primer, 4rd Edition
Thinking in C++, 2nd Edition
The C++ Standard Library: A Tutorial and Reference
進階類:
The C++ Programming Language, Special Edition
The Design and Evolution of C++
Inside C++ Object Model
C++ Templates: The Complete Guide
STL 源碼剖析
Generic Programming and the STL
Modern C++ Design: Generic Programming and Design Patterns Applied
應用技巧類:
Effective C++, 2nd Editon
More Effective C++
Exceptional C++
More Exceptional C++
Effective STL
Ruminations on C++)
三:第三階段
API/SDK------------- 《windows程序設計》(Jeff Prosise)
這書主要是開發Windows軟體要深入研讀的,畢竟是WindowsAPI。如果是主攻C++,那麼這本書你可以大概略讀一遍,不用過多的深入追究,QT才是C++主要深入思慮的關鍵。
四:第四階段
MFC----《VC++技術內幕》、《深入淺出MFC》及視頻教程孫鑫 VC++6.0
如果是C++,QT是要重點學習的對象。
五:第五階段
COM/DCOM/ATL/COM+---------《COM技術內幕》
未知階段:
《數據結構》,《演算法導論》這些基本是編程的核心了,編程的很大情況都依賴於演算法的實現,這個兩門基本要深入研究,這是決定編程能力的核心標准。
如果不弄底層的話,《操作系統原理》可以簡單地了解。
④ icepdf將PDF電子發票轉換成PNG圖片出現金額錯行(java)
可能是icepdf轉換有問題,你可以換個其他的api來轉換看下效果,下面是spire.pdf for java api轉換PDF到圖片的代碼,給你參考。
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import com.spire.pdf.PdfDocument;
public class PDFToImage {
public static void main(String[] args) throws IOException {
//載入PDF文件
PdfDocument doc = new PdfDocument();
doc.loadFromFile("ToImage.pdf");
//保存PDF的每一頁到圖片
BufferedImage image;
for (int i = 0; i < doc.getPages().getCount(); i++) {
image = doc.saveAsImage(i);
File file = new File( String.format("ToImage-img-%d.png", i));
ImageIO.write(image, "PNG", file);
}
doc.close();
}
}
⑤ 我要學java 需要個適合我的編程環境,要求我安裝完就能用的
你打開IE地址欄,在裡面輸入
http://www.myeclipseide.com/
然後會出現MyEclipse的主界面
之後你單擊左邊的那個
"Try/Down"
然後會出現一個畫面,在那裡把那個
Accept License Agreement
給選中,之後單擊那個
for Eclipse 3.3 那張圖片
就會進入MyEclipse的下載界面的,在這里你單擊最上面那個All In One,然後就會下載MyEclipse了,這個裡麵包括了JDK跟Eclipse,如果你選擇PlugIn的話,你要先自己安裝Eclipse跟JDK,MyEclipse是要注冊的,你在網上可以搜索到注冊機,MyEclipse6的注冊機跟MyEclipse5的注冊機是一樣的,你如果找不到的話,可以在我的網路空間里留言,我把我的注冊碼發你。另外就是這個版本的MyEclipse可能還沒有中文語言包,所以可能看英文會比較累。你也可以搜索一下,可能已經出來中文語言包了,我沒去找。
⑥ 如何運用Java組件itext生成pdf
首先從iText的官網下載這個開源的小組件。
iText官方網站
Java版iText組件
Java版工具包
C#版iText組件
C#版工具包
這里筆者使用的是Java版itext-5.2.1。
將itext-5.2.1.zip壓縮包解壓縮後得到7個文件:itextpdf-5.2.1.jar(核心組件)、itextpdf-5.2.1-javadoc.jar(API文檔)、itextpdf-5.2.1-sources.jar(源代碼)、itext-xtra-5.2.1.jar、itext-xtra-5.2.1-javadoc.jar、itext-xtra-5.2.1-sources.jar
使用5步即可生成一個簡單的PDF文檔。
復制代碼
1 // 1.創建 Document 對象
2 Document _document = new Document();
3 // 2.創建書寫器,通過書寫器將文檔寫入磁碟
4 PdfWriter _pdfWriter = PdfWriter.getInstance(_document, new FileOutputStream("生成文件的路徑"));
5 // 3.打開文檔
6 _document.open();
7 // 4.向文檔中添加內容
8 _document.add(new Paragraph("Hi"));
9 // 5.關閉文檔
10 _document.close();
復制代碼
OK,搞定,不出問題的話就會在你指定的路徑中生成一個PDF文檔,內容是純文本的「Hi」。
可是這樣並不能完全滿足我們的需求,因為通常我們要生成的PDF文件不一定是純文本格式的,比如我現在要實現列印銷售單的功能,那麼最起碼需要繪製表格才行,怎麼辦呢?且跟筆者繼續向下研究。
在iText中,有專門的表格類,即PdfPTable類。筆者做了一個簡單的表格示例,請先看代碼:
復制代碼
1 OutTradeList _otl = this.getOtlBiz().findOutTradeListById(this.getOtlid());
2 String _fileName = _otl.getOtlId() + ".pdf";
3
4 // iText 處理中文
5 BaseFont _baseFont = BaseFont.createFont("STSongStd-Light", "UniGB-UCS2-H", true);
6 // 1.創建 Document 對象
7 Document _document = new Document(PageSize.A4);
8
9 HttpServletResponse response = ServletActionContext.getResponse();
10 response.setContentType("application/pdf; charset=ISO-8859-1");
11 response.setHeader("Content-Disposition", "inline; filename=" + new String(_fileName.getBytes(), "iso8859-1"));
12
13 // 2.創建書寫器,通過書寫器將文檔寫入磁碟
14 PdfWriter _pdfWriter = null;
15 try {
16 _pdfWriter = PdfWriter.getInstance(_document, response.getOutputStream());
17 } catch (Exception e) {
18 this.setMessage("單據生成失敗,請檢查伺服器目錄許可權配置是否正確");
19 e.printStackTrace();
20 System.out.println("2.掛了");
21 // return INPUT;
22 return null;
23 }
24 if(_pdfWriter == null) {
25 this.setMessage("單據生成失敗,請檢查伺服器目錄許可權配置是否正確");
26 System.out.println("3.掛了");
27 // return INPUT;
28 return null;
29 }
30
31 // 3.打開文檔
32 _document.open();
33
34 // 4.創建需要填入文檔的元素
35 PdfPTable _table = new PdfPTable(4);
36 PdfPCell _cell = null;
37
38 _table.addCell(new Paragraph("單據號", new Font(_baseFont)));
39 _cell = new PdfPCell(new Paragraph(_otl.getOtlId()));
40 _cell.setColspan(3);
41 _table.addCell(_cell);
42
43 _table.addCell(new Paragraph("客戶名稱", new Font(_baseFont)));
44 _cell = new PdfPCell(new Paragraph(_otl.getClients().getName(), new Font(_baseFont)));
45 _cell.setColspan(3);
46 _table.addCell(_cell);
47
48 _table.addCell(new Paragraph("銷售日期", new Font(_baseFont)));
49 _cell = new PdfPCell(new Paragraph(_otl.getOutDate().toString()));
50 _cell.setColspan(3);
51 _table.addCell(_cell);
52
53 _cell = new PdfPCell();
54 _cell.setColspan(4);
55 PdfPTable _tabGoods = new PdfPTable(7);
56 // 添加標題行
57 _tabGoods.setHeaderRows(1);
58 _tabGoods.addCell(new Paragraph("序號", new Font(_baseFont)));
59 _tabGoods.addCell(new Paragraph("商品名稱", new Font(_baseFont)));
60 _tabGoods.addCell(new Paragraph("自定義碼", new Font(_baseFont)));
61 _tabGoods.addCell(new Paragraph("規格", new Font(_baseFont)));
62 _tabGoods.addCell(new Paragraph("數量", new Font(_baseFont)));
63 _tabGoods.addCell(new Paragraph("單價", new Font(_baseFont)));
64 _tabGoods.addCell(new Paragraph("小計", new Font(_baseFont)));
65 Object[] _outTrades = _otl.getOutTrades().toArray();
66 // 將商品銷售詳細信息加入表格
67 for(int i = 0; i < _outTrades.length;) {
68 if((_outTrades[i] != null) && (_outTrades[i] instanceof OutTrade)) {
69 OutTrade _ot = (OutTrade) _outTrades[i];
70 Goods _goods = _ot.getGoods();
71 _tabGoods.addCell(String.valueOf((++i)));
72 _tabGoods.addCell(new Paragraph(_goods.getName(), new Font(_baseFont)));
73 _tabGoods.addCell(_goods.getUserCode());
74 _tabGoods.addCell(_goods.getEtalon());
75 _tabGoods.addCell(String.valueOf(_ot.getNum()));
76 _tabGoods.addCell(String.valueOf(_ot.getPrice()));
77 _tabGoods.addCell(String.valueOf((_ot.getNum() * _ot.getPrice())));
78 }
79 }
80 _cell.addElement(_tabGoods);
81 _table.addCell(_cell);
82
83 _table.addCell(new Paragraph("總計", new Font(_baseFont)));
84 _cell = new PdfPCell(new Paragraph(_otl.getAllPrice().toString()));
85 _cell.setColspan(3);
86 _table.addCell(_cell);
87
88 _table.addCell(new Paragraph("操作員", new Font(_baseFont)));
89 _cell = new PdfPCell(new Paragraph(_otl.getProcure()));
90 _cell.setColspan(3);
91 _table.addCell(_cell);
92
93 // 5.向文檔中添加內容,將表格加入文檔中
94 _document.add(_table);
95
96 // 6.關閉文檔
97 _document.close();
98 System.out.println(_fileName);
99 this.setPdfFilePath(_fileName);
100 System.out.println("3.搞定");
101 // return SUCCESS;
102 return null;
復制代碼
以上代碼是寫在 Struts2 的 Action 中的,當用戶發送了請求之後直接將生成的PDF文件用輸出流寫入到客戶端,瀏覽器收到伺服器的響應之後就會詢問用戶打開方式。
當然,我們也可以將文件寫入磁碟等等。
⑦ 按照你的代碼,其中一個pdf讀出的字元串是空的,其他pdf都可以,謝謝
、使用PDFBox處理PDF文檔
PDF全稱Portable Document Format,是Adobe公司開發的電子文件格式。這種文件格式與操作系統平台無關,可以在Windows、Unix或Mac OS等操作系統上通用。
PDF文件格式將文字、字型、格式、顏色及獨立於設備和解析度的圖形圖像等封裝在一個文件中。如果要抽取其中的文本信息,需要根據它的文件格式來進行解析。幸好目前已經有不少工具能幫助我們做這些事情。
2、PDFBox的下載
最常見的一種PDF文本抽取工具就是PDFBox了,訪問網址http://sourceforge.net/projects/pdfbox/,進入如圖7-1所示的下載界面。讀者可以在該網頁下載其最新的版本。本書採用的是PDFBox-0.7.3版本。PDFBox是一個開源的Java PDF庫,這個庫允許你訪問PDF文件的各項信息。在接下來的例子中,將演示如何使用PDFBox提供的API,從一個PDF文件中提取出文本信息。
3、在Eclipse中配置
以下是在Eclipse中創建工程,並建立解析PDF文件的工具類的過程。
(1)在Eclipse的workspace中創建一個普通的Java工程:ch7。
(2)把下載的PDFBox-0.7.3.zip解壓。
(3)進入external目錄下,可以看到,這里包括了PDFBox所有用到的外部包。復制下面的Jar包到工程ch7的lib目錄下(如還未建立lib目錄,則先創建一個)。
l bcmail-jdk14-132.jar
l bcprov-jdk14-132.jar
l checkstyle-all-4.2.jar
l FontBox-0.1.0-dev.jar
l lucene-core-2.0.0.jar
然後再從PDFBox的lib目錄下,復制PDFBox-0.7.3.jar到工程的lib目錄下。
(4)在工程上單擊右鍵,在彈出的快捷菜單中選擇「Build Path->Config Build Path->Add Jars」命令,把工程lib目錄下面的包都加入工程的Build Path。
4、使用PDFBox解析PDF內容
在剛剛創建的Eclipse工程中,創建一個ch7.pdfbox包,並創建一個PdfboxTest類。該類包含一個getText方法,用於從一個PDF中獲取文本信息,其代碼如下。
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileWriter;
import org.pdfbox.pdfparser.PDFParser;
import org.pdfbox.util.PDFTextStripper;
public class PdfParser {
/**
* @param args
*/
// TODO 自動生成方法存根
public static void main(String[] args) throws Exception{
FileInputStream fis = new FileInputStream("F:\\task\\lerman-atem2001.pdf");
BufferedWriter writer = new BufferedWriter(new FileWriter("F:\\task\\pdf_change.txt"));
PDFParser p = new PDFParser(fis);
p.parse();
PDFTextStripper ts = new PDFTextStripper();
String s = ts.getText(p.getPDDocument());
writer.write(s);
System.out.println(s);
fis.close();
writer.close();
}
}
⑧ C#/ .NET PDF庫 - 2024
.NET是一個跨平台開發框架,支持多種編程語言,並兼容Windows、Linux、Android和Apple操作系統。C#是.NET中最常用的編程語言之一,簡化了開發流程,提高了代碼的可讀性和可維護性。開發人員在構建應用程序時,尤其是Windows PDF查看器和編輯器時,需要一個功能全面且可靠的.NET PDF庫來簡化開發流程。本文將介紹並比較市場上最受歡迎的C# .NET PDF庫,幫助您選擇最合適的一個。
在選擇C# .NET PDF庫時,考慮的關鍵因素包括庫的功能、性能、跨平台兼容性、API的易用性、文檔和支持等。以下是一些最受歡迎的庫及其特點:
1. ComPDFKit
ComPDFKit提供功能強大的PDF庫,支持所有平台,包括跨平台。在伺服器端,ComPDFKit的.NET庫允許在構建Windows PDF查看器時無需依賴任何外部依賴關系。在客戶端,ComPDFKit for Windows兼容多種框架,如.NET Framework、.NET Core、WPF、UWP、MAUl等,支持大多數編程語言,如C#、ASP.NET、ASP.NET Core、VB.NET、C/C++、Python和Java。ComPDFKit C# PDF庫不僅可以進行PDF文件的預覽、注釋、簽名、表單填寫、內容編輯和數據提取等處理,還通過全面的技術文檔和一對一的技術支持,幫助開發人員無縫集成PDF功能到.NET應用程序中。您可以直接在NuGet或GitHub下載並安裝ComPDFKit PDF SDK for .NET。
2. PDFSharp
PDFSharp是一個開源的.NET庫,可以輕松處理Windows、Linux、Mac和其他.NET平台下的PDF文檔。它支持大多數基本的PDF功能,如創建新的PDF文檔、修改、合並和拆分現有的PDF文件。開發人員可以使用相同的源代碼在PDF頁和窗口或列印機上繪圖。然而,PDFSharp在復雜操作中的性能限制使其更適合用於基本任務。
3. iTextSharp(現稱為iText Core)
iTextSharp(現稱為iText Core)提供開源包和額外的商業擴展,允許開發人員根據其獨特需求定製解決方案。它允許在Windows、Linux和macOS上開發PDF應用程序。iText具有豐富的PDF功能和靈活性,但因其學習曲線高、代碼示例繁瑣且不友好以及復雜的API而受到批評。因此,它在與ComPDFKit等替代方案相比存在可用性挑戰。
4. IronPDF
IronPDF是一個專業的C#/ .NET PDF庫,設計用於簡化PDF的生成、操作和渲染。其全面的功能使開發人員能夠輕松地在項目中集成PDF功能。然而,IronPDF的許可證成本可能對小型項目或個人開發者構成限制,其學習曲線陡峭,需要投入時間才能充分利用其廣泛的功能。
5. Syncfusion PDF
Syncfusion的C# PDF庫具有高性能和豐富的功能。該庫為伺服器環境優化,擁有高效性能和低內存使用。它提供強大而全面的API,可訪問PDF文檔的所有元素。豐富的文檔、知識庫和示例代碼進一步促進了易於集成和故障排除。無論您是為.NET、Blazor、.NET MAUI、.NET Core、Flutter、WinUI、Xamarin還是UWP開發,Syncfusion的.NET PDF框架都為PDF創建和操作提供了多功能的解決方案。
6. PSPDFKit
PSPDFKit的GdPicture.NET庫是一個跨平台SDK,涵蓋OCR、數據提取、編輯、PDF轉換、條碼生成、掃描等功能。憑借其豐富的API,開發人員可以快速向任何.NET應用程序添加PDF、成像和智能數據處理功能。PSPDFKit GdPicture.NET庫提供用戶高效文檔管理和處理所需的幾乎所有工具,並且支持無縫跨平台集成。它使開發人員能夠輕松地將PDF功能集成到任何.NET應用程序中,並簡化開發過程和縮短上市時間。
綜上所述,選擇最適合您的C# .NET PDF庫取決於您的具體項目需求和偏好。如果您重視多種高級功能來處理復雜的PDF任務、易於使用的API和跨平台兼容性,ComPDFKit .NET PDF庫在C#代碼中是一個令人滿意的選擇。參考本指南,深入體驗、嘗試,並通過推薦的C# PDF庫提升您的PDF開發項目。使用我們的在線工具和網頁演示免費體驗ComPDFKit的性能,或聯系獲取C# .NET PDF庫的免費許可證進行集成。
⑨ 新手學習java!!!
Java視頻教程 孫鑫Java無難事 (全12CD)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=154630
上海交大 Java初級編程基礎 共25講下載 avi格式
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=185162
張孝祥Java課堂系列之 Tomcat入門(七講 swf)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181503
張孝祥Java課堂系列之 Servlet開發入門 (九講 swf)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181502
張孝祥Java課堂系列之 HTTP協議詳解(四講 swf)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181500
張孝祥Java課堂系列之 Web XML基礎(四講 swf)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181499
J2EE視頻教程 中間件技術 浙江大學胡曉軍 全24講完整版下載
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181597
EJB技術及應用視頻教程 東北大學 全26講完整版 RMVB格式
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181583
J2EE開發IDE Eclipse視頻教程 全9CD 完整版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158075
Java視頻教程 即學即會java
http://bbs.topsage.com/dispbbs_121_156264_6.html
Java 編程初步 傻瓜書
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159167
零基礎學Java電子教程 附隨書光碟
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181032
數據結與演算法 Java語言版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160250
精通JBuilder 2005 中文版 高清PDF+隨書光碟
http://bbs.topsage.com/dispbbs_121_172861_1.html
程序天下:J2EE整合詳解與典型案例 電子教程+隨書光碟
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181884
JSF JavaServer Faces in Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160229
Spring in Action (第二版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146170
Manning jQuery in Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174769
Spring In Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174107
AspectJ in Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174106
Hibernate In Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174105
Struts in Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174005
Lucene in Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=173991
Wrox出版 Beginning Spring Framework 2
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=175714
Java Extreme Programming Cookbook
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174729
Java Programming Cookbook
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=173667
Beginning Java Objects
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174685
Building Java Enterprise App
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174684
Ant: The Definitive Guide
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174683
Better Faster Lighter Java
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174681
Hibernate Reference 3.1
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174674
Pragmatic Version Control using CVS
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174479
Pragmatic Project Automation
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174476
jQuery Reference Guide
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174411
Java 2 核心技術 卷1&卷2 CHM版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174123
Wrox Professional Java JDK 6 Edition
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=163451
Java 2 寶典
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159154
侯捷java編程思想 PDF中文版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=163902
Learning Java (第三版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146869
The Java Language Specification
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=176082
Beginning Java Programming for Dummies 第二版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=163923
Java 2 核心編程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146174
Java How to Program (第六版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146371
Java All-In-One案頭參考傻瓜書 (第二版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=152871
21天自學 Java 6 (2007年5月更新出版) PDF
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159315
Java咖啡館
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151447
Thinking in Java(第四版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=152053
深入學習JFC SWING - Java基礎類組件集
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=152049
J2EE全實例教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158057
Java信息系統設計與開發實例(第二版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151993
Java優化編程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151994
Effective Java
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=175258
Java信息系統設計與開發實例(第二版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151993
Tricks of the Java Programming
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159305
Wrox Professional Java Native Interfaces with SWT JFace
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159290
Java Swing 第二版 PDF文字版 O'Relliy出版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159158
O'Reilly - Java Database Programming with JDBC
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159292
JDBC與Java資料庫程序設計
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151448
Learning JQurey (2007年7月最新出版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159652
J2EE with BEA WebLogic Server
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=176088
Pragmatic Unit Testing in Java with JUnit
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=176084
Wiley出版 J2EE 1.4 Bible
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=176080
J2EE設計開發編程指南
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159288
Java Web Services簡明教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159159
O'Reilly Java and XML (第二版PDF)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146231
O'Reilly Java and XML (第三版PDF)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=167584
Java技術XML高級編程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=147800
Java Reflection in Action [MANNING]
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=178017
Java Puzzler (Java 解惑)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=178016
Java Database Best Practices
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=178015
Struts: The Complete Reference
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=178025
Log4j The Complete Manual
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=178023
Programming for the Java Virtual Machine
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=178021
Expert One-on-One J2EE Design and Development
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160652
Expert One-on-One J2EE Development without EJB
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160653
JBoss - A Developer's Notebook
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146179
The Java Programming Language (第四版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=147095
Professional Java Development with the Spring Framework
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159303
Core Java Server Faces 第二版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=145549
精通Enterprise JavaBeans
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146018
Enterprise JavaBeans EJB 第四版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159166
J2EE應用與BEA WebLogic Server (第二版PDF)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146227
O'Reilly Java Web Services
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146377
Ant權威指南
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=148383
Ajax和Java框架高級編程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=148371
Java Web Services簡明教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159159
Cross-Platform Web Services Using C# and Java
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160472
O'Reilly Ajax on Java
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160600
O'Reilly Java and XSLT
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=149585
O'Reilly Java and XML Binding
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=149583
O'Reilly Java and SOAP
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=149581
Design Patterns Java Companion
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=163920
J2EE Java黑客大曝光 開發安全的Java應用程序
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151446
J2ME API 速查手冊
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158248
精通J2ME無線編程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=152047
J2ME開發大全
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151987
Beginning J2ME 從入門到精通 第三版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=184149
Beginning JBoss Seam從入門到精通
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=183607
Beginning Hibernate 從入門到精通
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=183602
Java網頁開發的藝術
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151991
Java編程高手
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151990
Java 5.0 Tiger程序高手秘笈
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151989
Java2網路協議技術內幕(附源碼)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151988
Using Enterprise JavaBeans 2
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=166051
Java技術實用教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158244
企業級Java安全性(構建安全的J2EE應用)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=152048
Java語言集成開發環境Eclipse中文教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158237
NetBeans IDE 5.5 企業版高級開發教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159653
Using Enterprise JavaBeans 2
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=166051
Borland JBuilder Developer's Guide
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=166294
Eclipse [O'Reilly]
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=175257
Eclipse精要與高級開發技術
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151986
Code Generation in Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=174722
Java 6 3D游戲開發
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160251