『壹』 電腦上怎麼弄pdf格式文件
1.首先,我們打開電腦在桌面上找到WPS軟體,點擊打開我們需要輸出成PDF的word文件.
2.進入後,我們點擊左上角的「WPS文字」.
3.這時會彈出菜單,我們會看到有一個「輸出為PDF」.
4.我們點擊後,就會出現了一個輸出PDF的窗口,我們設置好,點擊「輸出為PDF」.
5.輸出成功後,我們會在界面中也會看到有一個提示,
6.這時我們找到文件右擊查看一下屬性,是不是設置為PDF格式了.
PDF(Portable Document Format,攜帶型文件格式)是一種由Adobe 公司設計,用獨立於應用程序、硬體、操作系統的方式呈現文檔的文件格式,主要由衍生自PostScript、字型嵌入系統、資料壓縮及傳輸系統三項技術組成。
PDF的優點在於能跨平台保留文件原有格式(Layout),且因開放標准,開發者能免版稅(Royalty-free)自由開發PDF相容軟體。該文件格式於2007年12月成為ISO 32000國際標准。
文件格式(或文件類型)是指電腦為了存儲信息而使用的對信息的特殊編碼方式,是用於識別內部儲存的資料。比如有的儲存圖片,有的儲存程序,有的儲存文字信息。每一類信息,都可以一種或多種文件格式保存在電腦存儲中。每一種文件格式通常會有一種或多種擴展名可以用來識別,但也可能沒有擴展名。擴展名可以幫助應用程序識別的文件格式。
對於硬碟機或任何電腦存儲來說,有效的信息只有0和1兩種。所以電腦必須設計有相應的方式進行信息-位元的轉換。對於不同的信息有不同的存儲格式。
『貳』 pdf怎麼做
建立PDF文件的軟體很多。
1.PDFFactory Pro虛擬列印機,安裝後,在任何文檔中,選擇列印時,選擇列印機為pdfFactoryPro,就能生成PDF文件,並可以進行安全設置。
2.SmartPrinter(Doc Pdf xls to pdf/tiff/bmp/jpg/png)一款大家非常熟悉的經典產品,專為轉換文件而研發的高品質列印驅動,以運行穩定、轉換速度快和圖像質量高而著稱,通過虛擬列印技術可以完美的將任意可列印文檔轉換成 PDF、TIFF、JPEG,BMP、PNG、EMF、GIF、TXT格式。
3.雪瑩DocConvert虛擬列印轉換。雪瑩DocConvert是一款文檔轉化工具,它通過虛擬列印的技術將任何文檔轉化為PDF,JPG,BMP,TIFF,PCX,PNG等等文檔格式。
編輯和建立軟體有:
1.用Foxit PDF Editor可以直接編輯了,網上有PJ的軟體;
2.用Foxit Phantom可以直接編輯了,網上有PJ的軟體。
3.abobe acrobat Professional 也有部分編輯功能,網上有PJ的軟體。
常用的的PDF閱讀器
1. 官方閱讀器: adobe reader (免費軟體) 官方編輯器: adobe acroabt (收費軟體)
2. 小巧的閱讀器; foxit reader 中文名字:福昕閱讀器
3. 國產的閱讀器: 海海PDF閱讀器 克克PDF閱讀器
4. PDF-XChange Viewer 優秀的PDF閱讀器
『叄』 如何製作pdf電子書
1、安裝pdf製作軟體:AdobeAcrobatProfessiona
2、如果是word等,點擊集成的pdfmaker,直接轉換成pdf。
『肆』 如何做pdf文件
二、PDF文檔的製作
相信各位讀者都有過這種經歷,諸如doc、exl等格式文檔在跨操作系統平台使用,或者Office軟體版本不同時,格式會發生變化。本來已經進行了精心的排版,但是格式會變得跟原來有很大的不同,很不舒服。然而,我們在使用PDF格式時,就不會發生此類問題。
所以,通常我們會製作PDF文檔來避免麻煩。遺憾的是Adobe Reader 沒有提供PDF製作功能,需要Adobe公司的另一款專門軟體才能做PDF文檔,但它的售價又很高,不是我們一般消費者可以承受的起的。
用慣了免費的軟體我們可能會問有沒有免費軟體來實現此功能呢? 答案是肯定的,下面筆者給大家推薦幾款簡單易用的PDF製作軟體。
1、WIN2PDF
軟體名稱:WIN2PDF
版本:2.8 大小:2.4M
性質:共享 平台:Win9x/NT/2000/XP
下載:http://www.mydown.com/soft/5/5856.html
雙擊安裝程序,一路下一步即可安裝成功。安裝後它會生成一台虛擬列印機,打開一個文檔(如doc文檔),單擊「文件→列印」,在列印機機名稱下拉列表中選擇「WIN2PDF」(如圖2),程序自動在後台生成PDF文檔,選擇保存位置即可。
2、pdfFactory Pro
軟體名稱:pdfFactory Pro 企業漢化版
版本:2.43 大小:2.7M
性質:共享 平台:Win9x/NT/2000/XP
下載:http://www.mydown.com/soft/240/240777.html
同WIN2PDF一樣,軟體安裝完畢會生成一個名為 「pdfFactory Pro」的虛擬列印機。打開一個文檔(如doc文檔),單擊「文件→列印」,列印機選擇「pdfFactory Pro」 (圖3), 單擊「確定」即開始列印,出現列印機窗口。
單擊「View PDF」按鈕,可調用Acrobat Reader等閱覽器進行預覽;單擊「Save」即可把列印結果保存為pdf文檔;單擊「Print」則可以直接進行列印。點擊「Doc Info」可以對生成的PDF進行描述,如Title(題目)、Author(作者)、Key Words(關鍵詞)等,如圖4所示。
3、Go2PDF
軟體名稱:Go2PDF
版本:3.0 大小:261K
性質:共享 平台:WinNT/2000/XP/2003
下載:http://www.mydown.com/soft/255/255059.html
軟體安裝後生成一台虛擬列印機,列印文件時,列印機選擇「Go2PDF」,即可方便快速的生成PDF文檔(如圖5)。
與上述兩款PDF生成軟體不同的是,你可以對生成的PDF文檔設置密碼以及各種許可權,以及對生成的文檔進行描述(如圖6)。
選擇列印機「Go2PDF」後,選擇右邊的「屬性」,按如圖所示進行設置。該軟體支持Microsoft Word、Excel、PowerPoint、Access文件以及AutoCAD 文件、圖片等轉換為PDF文件。
Go2PDF功能最為強大,除了軟體小巧之外,還有其它功能。如筆者一般喜歡保護自己的文檔,所以會對PDF檔進行適當的限制,如限制復制等。Go2PDF這種功能非常實用。
『伍』 PDF怎麼用
PDf是一種文檔格式,用其它軟體可以輸出成PDF格式.
PDF全稱Portable
Document
Format,是一種電子文件格式。這種文件格式與操作系統平台無關,也就是說,PDF文件不管是在Windows,Unix還是在蘋果公司的Mac
OS操作系統中都是通用的。這一特點使它成為在Internet上進行電子文檔發行和數字化信息傳播的理想文檔格式。越來越多的電子圖書、產品說明、公司文告、網路資料、電子郵件開始使用PDF格式文件。PDF格式文件目前已成為數字化信息事實上的一個工業標准。
Adobe公司設計PDF文件格式的目的是為了支持跨平台上的,多媒體集成的信息出版和發布,尤其是提供對網路信息發布的支持。為了達到此目的,
PDF具有許多其他電子文檔格式無法相比的優點。PDF文件格式可以將文字、字型、格式、顏色及獨立於設備和解析度的圖形圖像等封裝在一個文件中。該格式文件還可以包含超文本鏈接、聲音和動態影像等電子信息,支持特長文件,集成度和安全可靠性都較高。
PDF文件使用了工業標準的壓縮演算法,通常比PostScript文件小,易於傳輸與儲存。它還是頁獨立的,一個PDF文件包含一個或多個「頁」,可以單獨處理各頁,特別適合多處理器系統的工作。此外,一個PDF文件還包含文件中所使用的PDF格式版本,以及文件中一些重要結構的定位信息。正是由於
PDF文件的種種優點,它逐漸成為出版業中的新寵。
對普通讀者而言,用PDF製作的電子書具有紙版書的質感和閱讀效果,可以「逼真地」展現原書的原貌,而顯示大小可任意調節,給讀者提供了個性化的閱讀方式。由於PDF文件可以不依賴操作系統的語言和字體及顯示設備,閱讀起來很方便。這些優點使讀者能很快適應電子閱讀與網上閱讀,無疑有利於計算機與網路在日常生活中的普及。Adobe公司以PDF文件技術為核心,提供了一整套電子和網路出版解決方案,其中包括用於生成和閱讀PDF文件的商業軟體Acrobat和用於編輯製作PDF文件的Illustrator等。
Adobe還提供了用於閱讀和列印亞洲文字,即中日韓文字所需的字型包。
『陸』 電腦pdf怎麼弄
使用電腦也是可以生成PDF文件的。
可以使用電腦上的word2016來生產PDF文檔的。
編輯好word文檔,然後選擇另存為。
保存類型選擇PDF格式。點擊保存就行了。
『柒』 pdf文檔怎麼弄
推薦用專業pdf編輯軟體Wondershare PDFelement:主要為用戶提供了強大的編輯功能,PDFelement也可以讓你輕松改變PDF文檔中元素的樣式字體等!支持強大的OCR光學識別引擎,可以極大的提升文字的識別率,完整的保持文字的樣式!它是目前網路上除了foxit pdf editor之外最強大最好用的專業pdf編輯軟體。另外還支持PDF文檔轉換功能,可以輕松的將PDF文檔轉換為Word、Excel、powerpoint、Image圖像、EPUB電子書、Html網頁、TXT文本或者RTF等格式!而且因為OCR技術的支持,可以讓轉換後的文檔完整的保持原有的風格和樣式。
軟體特色:
1、編輯——隨著PDF元素,改變文字和更改字體作為您在Microsoft套房做。只需點擊並開始輸入 – 就是這么簡單。
2、OCR——我們最頂級的在線OCR(光學字元識別)技術將掃描文檔轉換為完全可編輯的文檔,允許您:搜索,編輯,格式,調整大小,所有的文本。多國語言支持,包括:英語,韓語,俄語,德語,西班牙語,等等。
3、兌換——要工作與其他程序的文件從轉換,並直接從Word,Excel和圖像,以及其他流行的文件類型為PDF。
4、添加圖像——一張圖片勝過千言萬語。只需插入一張圖片到你的PDF和重新排列適合您的文檔的大小。
5、貝茨編號——工作在一個法律文件,想要識別和檢索一個簡單的方法?將在每一頁上識別號來幫助索引多頁,便於識別和搜索。
6、表單創建——編輯現有的形式或者創建自己的可定製領域的選擇,如:文本欄位,復選框,單選按鈕,組合框,列表框,按鈕或簽名域。他們都是互動,使數據收集或調查,創作一件輕而易舉的事。
7、結合——有比你更要合並一個文件PDF元件允許對多個文件轉換成一個簡單的PDF,便於組織。
8、註解——突出顯示重要的文本與我們的高亮工具或讓即時貼溝通的詳細信息。來自世界20多個預定義的郵票選擇,以幫助歸檔或定製您自己擁有該文件的特定區域。
9、密碼保護——我們知道你的一些文件是敏感的,需要一個保護層。打開,復制,編輯和列印設置的限制,以確保您的文件,即使他們落入壞人之手的安全。
10、簽名——收到申報表或需要簽署一份合同?使用提供的行業標准加密的數字簽名或專門創建一個為你的親筆簽名。
『捌』 如何製作PDF樣本
PDF文件是目前比較流行的電子文檔格式,在辦公自動化(OA)等軟體的開發中,經常要用到該格式,但介紹如何製作PDF格式文件的資料非常少,在網上搜來搜去,都轉貼的是同一段「暴力」破解的方法,代碼片斷如下:
StreamWriter pPDF=new StreamWriter(filePath);
ArrayList xRefs=new ArrayList();
float yPos =0f;
long streamStart=0;
long streamEnd=0;
long streamLen =0;
string strPDFMessage=null;
//PDF文檔頭信息
strPDFMessage="%PDF-1.1\n";
ConvertToByteAndAddtoStream(strPDFMessage);
xRefs.Add(mPDF.Length);
strPDFMessage="1 0 obj\n";
ConvertToByteAndAddtoStream(strPDFMessage);
strPDFMessage="<< /Length 2 0 R >>\n";
ConvertToByteAndAddtoStream(strPDFMessage);
strPDFMessage="stream\n";
ConvertToByteAndAddtoStream(strPDFMessage);
……
看了上面的製作辦法,我眼鏡都摔壞了三幅,如果用上面這樣原始的辦法能製作出滿意的PDF文件,那一定是天才所為。後來,我從一個網站(網址:http://itextsharp.sourceforge.net/index.html)中看到了專門製作PDF文件的控制項的介紹,暗喜之餘,立馬下載試驗,果然非常輕松地製作出了想要的PDF文件,因為網站為英文,內容又多,讀起來非常費力,在解決了自己的問題後,看到許多網友還在為PDF文件製作而郁悶,遂決定將該內容翻譯為中文,由於本人英語水平一般,許多地方又晦澀難懂,故翻譯質量不是很滿意,敬請斧正,但大部分能看懂。本文的目的一是解決部分網友的燃眉之急,二是拋磚引玉,如果哪位仁兄願意將該網站中的內容准確翻譯出來,則是天下之大幸。
要用本文的方法生成PDF文件,需要兩個控制項:itextsharp.dll和ICSharpCode.SharpZipLib.dll,由於示例代碼實在太多,我將代碼全部整理出來,放在另外一個文件「示例代碼.doc」中,所有這些資源,我均放在了本人的ftp站點(ftp://202.107.251.26)上的「Pdf文件製作全攻略」文件夾中(文件夾中另外兩個rar壓縮文件為兩個控制項的源代碼,供大家學習研究使用),你可以到這里下載相應的資源,或者直接到原網站下載。
為便於調試和敘述,所有例子均為DOS控制台程序,windows程序使用方法完全一樣,按照下面的步驟創建一個可調試的項目:
1、 打開VS2003;
2、 單擊菜單「文件」→「新建」→「項目」,在項目類型中選擇「Visual C#項目」,在模板中選擇「控制台應用程序」,輸入文件名稱如「MakePdf」,指定好存放路徑,然後點確定按鈕;
3、 在「解決方案資源管理器」中右鍵單擊「引用」,從彈出的菜單中選擇「添加引用」,在「.NET」選項夾中選擇「瀏覽」,添加前面提到的兩個應用,如下圖:
4、 在代碼窗口頂部添加兩個引用:
using iTextSharp.text;
using iTextSharp.text.pdf;
至此,准備工作完畢。
第一部分 iText的簡單應用第一章 創建一個Document
利用iText五步創建一個PDF文件:helloword。
第一步,創建一個 iTextSharp.text.Document對象的實例:
Document document = new Document();
第二步,為該Document創建一個Writer實例:
PdfWriter.getInstance(document, new FileStream("Chap0101.pdf", FileMode.Create));
第三步,打開當前Document
document.Open();
第四步,為當前Document添加內容:
document.Add(new Paragraph("Hello World"));
第五步,關閉Document
document.Close();
完整的代碼見示例代碼0101。
在例中,不難看出,製作一個PDF文件是非常簡單的。
註:如果你將例中「document.Add(new Paragraph("Hello World"));」中的字元串「Hello Word」換成中文,如「這是我的第一個PDF文件」,產生的結果一定讓你大失所望,因為生成的PDF文件中並沒有將中文顯示出來,不要擔心,在第9章中要專門講解字體問題,中文顯示也就迎刃而解了,如果不能正確顯示中文,也就沒有必要翻譯本文了。
下面對這幾步做詳細介紹。
第一步 創建一個Document實例:
iTextSharp.text.Document-object共有三個構造函數:
public Document();
public Document(Rectangle pageSize);
public Document(Rectangle pageSize,
int marginLeft,
int marginRight,
int marginTop,
int marginBottom);
第一個構造函數以A4頁面作為參數調用第二個構造函數,第二個構造函數以每邊36磅頁邊距為參數調用第三個構造函數
u 頁面尺寸:
你可以通過指定的顏色和大小創建你自己的頁面,示例代碼0102創建一個細長的淺黃色背景的頁面:
Rectangle pageSize = new Rectangle(144, 720);
pageSize.BackgroundColor = new Color(0xFF, 0xFF, 0xDE);
Document document = new Document(pageSize);
通常,你不必創建這樣的頁面,而可以從下面頁面尺寸中選擇:
A0-A10, LEGAL, LETTER, HALFLETTER, _11x17, LEDGER, NOTE, B0-B5, ARCH_A-ARCH_E, FLSA 和 FLSE
大多數情況下使用縱向頁面,如果希望使用橫向頁面,你只須使用rotate()函數:
Document document = new Document(PageSize.A4.rotate());
詳細代碼見示例代碼0103。
u 頁邊距:
當創建一個文件時,你還可以定義上、下、左、右頁邊距:
Document document = new Document(PageSize.A5, 36, 72, 108, 180);
在示例代碼0104中你可以看到該文檔有一個0.5英寸的左邊距和1英寸的右邊距,上邊距為1.5英寸,下邊距為2.5英寸。
說明:
當創建一個矩形或設置邊距時,你可能希望知道該用什麼度量單位:厘米、英寸或象素,事實上,默認的度量系統以排版單位磅為基礎得出其他單位的近似值,如1英寸=72磅,如果你想在A4頁面的PDF中創建一個矩形,你需要計算以下數據:
21 厘米 / 2.54 = 8.2677 英寸
8.2677英寸* 72 = 595 磅
29.7 厘米 / 2.54 = 11.6929 英寸
11.6929英寸* 72 = 842 磅
默認邊距為36磅即半英寸。
如果你修改了頁面尺寸,僅僅影響到下一頁,如果你修改了頁邊距,則影響到全部,故慎用。
關於頁面的初始值,請參考第三步。
第二步 創建Writer實例
一旦創建了document,我們可以創建該文檔的多個Writer的實例,所有這些Writer實例均繼承自抽象類「iTextSharp.text.DocWriter」。
同時還有另外一種情況,你可以用iTextSharp.text.pdf.PdfWriter產生文檔PDF文件,如果你想創建一個TeX文檔,你可以使用iTextSharp.text.TeX.TeXWriter包。
Writer類的構造函數是私有的,你只能通過下面的方法創建一個實例:
public static xxxWriter getInstance(Document document, Stream os);(xxx 是 Pdf 或 Xml)
你可以通過下面的方法創建一個實例:
PdfWriter writer = PdfWriter.getInstance(document, new FileStream("Chap01xx.pdf"));
但是你幾乎永遠不會用到Writer實例(除非你想創建高級PDF或者希望用一些非常特殊的函數,如ViewerPreferences 或 Encryption)。所以通過下面的辦法得到實例已經足夠了: PdfWriter.getInstance(document, new FileStream("Chap01xx.pdf"));
在第一步中創建一個文檔時,第一個參數意義不大,第二個參數可以是任何一種流,到目前為止我們一直使用System.IO.FileStream將Document寫入文件中,示例代碼0105用到了System.IO.MemoryStream(這不是一個獨立的例子,你必須在Servlet Engine中測試這些代碼。
第三步 打開Document
u 摘要
在你寫入任何實際數據之前,你可能希望通過以下幾種方法寫入一些關於本文檔的摘要:
public boolean addTitle(String title)
public boolean addSubject(String subject)
public boolean addKeywords(String keywords)
public boolean addAuthor(String author)
public boolean addCreator(String creator)
public boolean addProcer()
public boolean addCreationDate()
public boolean addHeader(String name, String content)
你可以選擇自己的標題、主題、關鍵字、作者、創建程序,但以下產品信息將始終被添加:iTextSharp (或者iTextSharp的引用)和創建時間(實際上這兩種方法是自動調用的)。
你還可以將自定義的名稱添加為「報頭信息」,但是這對於PdfWriter沒有任何作用,如果看看實例代碼0101產生的pdf文件的「文檔屬性」,我們可以看到僅僅有PDF創建程序和產品日期,而示例代碼0106的「文檔屬性」框中有更多的信息。
打開document前要做的事:
你只能在Open方法調用之前添加摘要,這是iText開發工具提供的一個選擇。
在HTML中,報頭信息被放在文檔前面報頭標識中間,調用Open方法將導致報頭信息寫入流,因而在Document被打開後無法更改這些數據。
PDF報頭信息不包括摘要,看起來有類似於:
%PDF-1.2
該行顯示生成的文檔是一個版本為1.2的PDF格式的文件,在PDF中,摘要保存在PdfInfo對象中,當文檔關閉時已經寫入PdfWriter中了,因此,沒有關於為什麼不能修改庫來滿足任何時候添加或更改摘要的技術原因
u 頁面初始化
Open方法在不同的Witer中同時會產生初始化事件,舉例來說,如果你需要一個水印或者頁眉頁角對象出現在文檔第一頁的開始處,你需要在打開文檔前添加這些,同樣的用於設置該文檔其他頁水印、頁眉、頁角、頁數和尺寸。
當調用下列方法:
public bool setPageSize(Rectangle pageSize)
public bool Add(Watermark watermark)
public void removeWatermark()
setting Header property
public void resetHeader()
setting Footer property
public void resetFooter()
public void resetPageCount()
setting PageCount property
產生的結果只能在下一個新頁中看到(當在本頁調用初始化方法時),代碼見示例代碼0107,你必須要准備一張名為watermark.jpg的圖片,如下圖:
u 閱讀器參數:
你可以通過下面的辦法為PDF文件指定一些閱讀器 (如Adobe Reader) 參數:
public void setViewerPreferences(int preferences)
在示例代碼0108中,指定了下面一些參數:
writerA.setViewerPreferences(PdfWriter.PageLayoutTwoColumnLeft);
writerB.setViewerPreferences(PdfWriter.HideMenubar | PdfWriter.HideToolbar);
writerC.setViewerPreferences(PdfWriter.PageLayoutTwoColumnLeft | PdfWriter.PageModeFullScreen | PdfWriter.);
正如你所看到的,參數可以使用以下一些常量:
l 文件被打開時,頁面布局用到下面的其中一個 :
PdfWriter.PageLayoutSinglePage – 同時只顯示一個頁面
PdfWriter.PageLayoutOneColumn –單列顯示
PdfWriter.PageLayoutTwoColumnLeft –雙列顯示,奇數頁在左
PdfWriter.PageLayoutTwoColumnRight -雙列顯示,奇數頁在右
l 文件打開時,頁面模式用到下面其中之一:
PdfWriter.PageModeUseNone – 既不顯示大鋼也不顯示縮略圖
PdfWriter.PageModeUseOutlines – 顯示大綱
PdfWriter.PageModeUseThumbs – 顯示縮略圖
PdfWriter.PageModeFullScreen – 全屏模式,沒有菜單、windows控制項或者其他任何windows可見控制項
l PdfWriter.HideToolbar – 當文檔激活時,是否隱藏閱讀程序(如Adobe Reader)的工具條
l PdfWriter.HideMenubar -當文檔激活時,是否隱藏閱讀程序的菜單.
l PdfWriter.HideWindowUI -當文檔激活時,是否隱藏閱讀程序的界面元素,如滾動條、導航條等,而僅僅保留文檔顯示
l PdfWriter.FitWindow – 是否調整文檔窗口尺寸以適合顯示第一頁。
l PdfWriter.CenterWindow – 是否將文檔窗口放到屏幕中央
l 在全屏模式下,指定如何顯示界面元素(選擇一個)
PdfWriter.NonFullScreenPageModeUseNone -既不顯示大鋼也不顯示縮略圖
PdfWriter. – 顯示大鋼
PdfWriter. – 顯示縮略圖
說明:你只能在類PdfWriter中調用這些方法。
u 加密
打開文檔之前還要做的一件事情就是加密(如果你希望該文檔加密),要達到這個目的,你可以使用下面的方法:
public void setEncryption(boolean strength, String userPassword, String ownerPassword, int permissions);
strength 是下面兩個常量之一:
PdfWriter.STRENGTH40BITS: 40 位
PdfWriter.STRENGTH128BITS: 128位 (Acrobat Reader 5.0及以上版本支持)
UserPassword和ownerPassword 可以為空或零長度, 這種情況下, ownerPassword 將被隨機的字元串代替
Permissions 為下列常量之一:
PdfWriter.AllowPrinting
PdfWriter.AllowModifyContents
PdfWriter.AllowCopy
PdfWriter.AllowModifyAnnotations
PdfWriter.AllowFillIn
PdfWriter.AllowScreenReaders
PdfWriter.AllowAssembly
PdfWriter.AllowDegradedPrinting
該功能參見示例代碼0109和示例代碼0110。
writer.setEncryption(PdfWriter.STRENGTH40BITS, null, null, PdfWriter.AllowCopy);
示例代碼0109產生的文件能夠被打開而無須密碼,但用戶不能列印、修改本文檔。
writer.setEncryption(PdfWriter.STRENGTH128BITS, "userpass", "ownerpass", PdfWriter.AllowCopy | PdfWriter.AllowPrinting);
打你試圖打開示例代碼0110產生的文件時,將要求輸入密碼('userpass'),因為添加了AllowPrinting參數,你可以列印該文檔而不會發生任何問題。
第四步 添加內容
在解釋第一步到第三步的不同示例中,你可能已經遇到了一些對象如Phrase, Paragraph等 在接下來的幾章中,所有這些問題都將得到詳細解釋。
有時你可能想一個writer故意忽略document產生的行為,如示例代碼0111:
當我們創建了兩個writer: writerA 和 writerB:
PdfWriter writerA = PdfWriter.getInstance(document, new FileStream("Chap0111a.pdf", FileMode.Create));
PdfWriter writerB = PdfWriter.getInstance(document, new FileStream("Chap0111b.pdf", FileMode.Create));
我們可以創建兩個有細微差別的文檔:
writerA.Pause();
document.add(new Paragraph("This paragraph will only be added to Chap0111b.pdf, not to Chap0111a.pdf"));
writerA.resume();
你可以比較文件: Chap0111a.pdf和Chap0111b.pdf的區別
第五步,關閉 document
關閉 document 非常重要, 因為它將關閉正在運行的Writer並將內容寫入文件,該方法在最後被調用,你應該總是要關閉文檔。
高級話題:閱讀PDF文件
該部分內容介紹了iText只能產生PDF格式的文件而不能解析PDF格式文件,不再翻譯。
第二章 塊、短句和段落
塊
塊(Chunk)是能被添加到文檔的文本的最小單位,塊可以用於構建其他基礎元素如短句、段落、錨點等,塊是一個有確定字體的字元串,要添加塊到文檔中時,其他所有布局變數均要被定義。下面一行中,我們創建了一個內容為「hello World」、紅色、斜體、COURIER字體、尺寸20的一個塊:
Chunk chunk = new Chunk("Hello world", FontFactory.getFont(FontFactory.COURIER, 20, Font.ITALIC, new Color(255, 0, 0)));
u 典型字體1:
在本指南中,除了第九章外(你可以在這里學會使用其他字體),我們將始終使用典型字體1,這些是不同的典型字體1:
· Courier (該字體定寬)
· Helvetica
· Times Roman
· Symbol
· ZapfDingbats
u 下劃線/刪除線
如果你希望一些塊有下劃線或刪除線,你可以通過改變字體風格簡單做到:
Chunk chunk1 = new Chunk("This text is underlined", FontFactory.getFont(FontFactory.HELVETICA, 12, Font.UNDERLINE));
Chunk chunk2 = new Chunk("This font is of type ITALIC | STRIKETHRU", FontFactory.getFont(FontFactory.HELVETICA, 12, Font.ITALIC | Font.STRIKETHRU));
u 上標/下標
在塊中有幾個方法可以調用,其中大部分將在接下來的章節中介紹,本章中只介紹一個方法 setTextRise(float f). 你可以使用該方法在上標或下標中寫塊。
u 塊的背景
如果你想改變塊的背景,你可以使用方法setBackground(Color color). 這將在塊文本的下面添加一個彩色矩形:
ck.setBackground(new Color(0xFF, 0xFF, 0x00));
在示例代碼0101中,你可以概覽典型字體1和一個使用setTextRise, setBackground等方法的的例子。
短句
短句(Phrases)是一系列以特定間距(兩行之間的距離)作為參數的塊,一個短句有一個主字體,但短句中的一些塊具有不同於主字體的字體,你有更多的選擇去創建短句,一些具體使用參見代碼0202。
u 古希臘語
因為古希臘語經常使用,在類Phrase的構造函數中有一個特徵:將一個字元串作為參數(如果你想避免這種情況,你只能使用塊工作而不能使用字元串),正如你在示例代碼0203中看到的,這個特徵自動地將913至937(除903)和945至969(古希臘的ASCII值)范圍內的所有字體改為希臘符號。
u 非主要性
與其說這是一個特徵,不如說是一個缺陷,但無論如何,這使創建一個非主要性的短句或段落成為可能,這將產生一個由下向上書寫的臨時作用(參見示例代碼0204)。如果你想在一頁中將一些位置移動到上面時可能有用。
說明,當你穿越上邊屆時無法檢查,也沒有辦法讓你回到前一頁。
段落
段落是一系列塊和(或)短句。同短句一樣,段落有確定的間距。用戶還可以指定縮排;在邊和(或)右邊保留一定空白,段落可以左對齊、右對齊和居中對齊。添加到文檔中的每一個段落將自動另起一行。有幾種辦法建立一個段落,如:
Paragraph p1 = new Paragraph(new Chunk("This is my first paragraph.", FontFactory.getFont(FontFactory.HELVETICA, 12)));
Paragraph p2 = new Paragraph(new Phrase("This is my second paragraph.", FontFactory.getFont(FontFactory.HELVETICA, 12)));
Paragraph p3 = new Paragraph("This is my third paragraph.", FontFactory.getFont(FontFactory.HELVETICA, 12));
所有有些對象將被添加到段落中:
p1.add("you can add strings, "); p1.add(new Chunk("you can add chunks ")); p1.add(new Phrase("or you can add phrases."));
說明:一個段落有一個且僅有一個間距,如果你添加了一個不同字體的短句或塊,原來的間距仍然有效,你可以通過SetLeading來改變間距,但是段落中所有內容將使用新的中的間距。見示例代碼0205。
u 保持段落的整體性
在示例代碼0206中,我們使用了setKeepTogether(true)方法來試圖將一個段落放在同一頁中,該方法並不是始終有效,舉個例子,第一段不能剛好在一頁中,於是被分成了兩部分。第二段被放置在第二頁,但第三段順沿到了第三頁上。
字體的延續
你應該掌握字體延續的一些規則,這些規則的應用見示例代碼0207,當我們將一些內容用指定的字體(非默認字體)創建一個短句或者段落後再添加更多內容時,初始對象的字體風格將被延續,請看「Hello 1!」和「Hello 2」:
Phrase myPhrase = new Phrase("Hello 2! ", new Font(Font.TIMES_NEW_ROMAN, 8, Font.BOLD));
myPhrase.Add(new Phrase("some other font ", new Font(Font.HELVETICA, 8, Font.ITALIC)));
myPhrase.Add(new Phrase("This is the end of the sentence.\n", new Font(Font.TIMES_NEW_ROMAN, 8, Font.ITALIC)));
document.Add(myPhrase);
我們由Times New Roman 粗體字開始,添加一些文本使用Helvetica字體而不指定風格,我們發現文本被改變成了粗體,當我們再加一些文本使用Times New Roman字體和斜體風格,結果變成了粗斜體。
如果我們使用FontFactory來創建字體,字體風格不會被延續,因為FontFactory使用了另外的技術構建一個字體:
myPhrase = new Phrase("Hello 1bis! ", FontFactory.getFont(FontFactory.TIMES_NEW_ROMAN, 8, Font.BOLD));
myPhrase.Add(new Phrase("some other font ", FontFactory.getFont(FontFactory.HELVETICA, 8, Font.ITALIC)));
myPhrase.Add(new Phrase("This is the end of the sentence.\n", FontFactory.getFont(FontFactory.TIMES_NEW_ROMAN, 8, Font.ITALIC)));
document.Add(myPhrase);
在上面的代碼中,使用Helvetica字體的文本風字體沒有指定(既不是粗體也不是斜體)。採用Times New Roman的額外文本僅僅顯示為斜體。
你也看到我們添加了一個段落,添加該段落就如同一個短句。
Paragraph myParagraph = new Paragraph("Hello 1! ", new Font(Font.TIMES_NEW_ROMAN, 8, Font.BOLD));
myParagraph.Add(new Paragraph("This is the end of the sentence.",FontFactory.getFont(new Font.TIMES_NEW_ROMAN, 8)));
document.Add(myParagraph);
你可以不這樣做,但將失去字體風格的延續,首先不用任何字體創建段落(例中我們僅僅給字體出間距為1.5倍),然後添加內容的不同部分。
myParagraph = new Paragraph(12);
myParagraph.Add(new Paragraph("Hello 3! ", new Font(Font.TIMES_NEW_ROMAN, 8, Font.BOLD)));
myParagraph.Add(new Paragraph("This is the end of the sentence.", new Font(Font.TIMES_NEW_ROMAN, 8, Font.ITALIC)));
document.Add(myParagraph);
如果你使用了Phrase對象,你同樣會失去字體風格的延續:
myPhrase = new Phrase(12);
myPhrase.Add(new Phrase("Hello 4! ", new Font(Font.TIMES_NEW_ROMAN, 8, Font.BOLD)));
myPhrase.Add(new Phrase("This is the end of the sentence.", newFont(Font.TIMES_NEW_ROMAN, 8, Font.ITALIC)));
document.Add(myPhrase);
u 更改分割符
通常,當文本不能放在一行時,文本將被分割成不同的部分,iText首先會查找分割符,如果沒有找到,文本將在行尾被截斷。有一些預定的分割符如「 」空格和「-」連字元,但是你可以使用setSplitCharacter方法來覆蓋這些默認值。在示例代碼0208中,你可以看到當到達行尾時一個塊是如何被分割的。然後分隔符被改成點「.」,該行在該字元處被分割。
『玖』 如何製作PDF文件
PDF 格 式 文 件 的 制 作
---- 現 在 可 以 利 用 許 多 種 工 具 來 制 作PDF 格 式 文 件, 例 如Microsoft Publisher 和Adobe PageMaker 等, 但 是 用Adobe Acrobat 最 有 效、 可 靠 和 便 捷。Windows 95/98 下 安 裝Adobe Acrobat 3.0 後, 可 按 以 下 典 型 過 程 創 建PDF 文 件:
---- 1. 將 應 用 程 序 以PostScript 形 式 存 放 在 磁 盤 中;
---- 2. 執 行" 開 始"*" 程 序"*"Adobe Acrobat"*"Adobe Acrobat Distiller 3.0";
---- 3. 找 到 並 打 開 所 創 建 的PostScript 文 件;
---- 4. 確 定 好 位 置 並 將 該 文 件( 原 擴 展 名 為ps) 保 存 為PDF 格 式;
---- 5. 用Acrobat 的PDF 閱 讀 器( 如Acrobat Reader 或Acrobat Exchange) 打 開 創 建 的PDF 文 件。
---- 為 減 少 以 上 步 驟 以 提 高 效 率, 在Acrobat 3.0 中 還 包 括 有 一 個 工 具Acrobat Distiller Assistant。 在 一 個 應 用 程 序 內 部, 它 主 要 起 到 兩 方 面 的 作 用:
---- 1. 打 印 機 控 制 面 板 里 的 打 印 驅 動 程 序;
---- 2. Acrobat Distiller 和Acrobat 閱 讀 器 之 間 的 界 面。
---- 這 樣 用 戶 就 可 以 將 一 個 文 檔 打 印 到 該 工 具 中, 它 會 替 您 自 動 完 成 包 括 創 建PostScript 文 件、 啟 動Acrobat Distiller, 並 且 將 應 用 文 檔 轉 化 為PDF 格 式, 以 及 打 開Acrobat 的PDF 閱 讀 器 等 其 他 任 務。 為 保 證 隨 時 使 用Distiller Assistant, 它 可 設 在" 啟 動" 菜 單 下。
---- Adobe 公 司 還 提 供 了 一 個 工 具 Adobe PDFMaker for Microsoft Word 97, 它 可 使 您 在MS Word 中 直 接 將 文 檔 按 用 戶 的 要 求 自 動 轉 化 為PDF 文 件。
---- 把PDFMaker 安 裝 後, 當 運 行MS Word 97 時, 便 會 在"File" 菜 單 里 出 現 一 個 新 的 項"Create Adobe PDF"( 內 含 兩 個 子 項), 這 就 在Word 中 可 將 編 輯 完 成 的 文 檔 轉 化 為PDF 格 式。 同 時 還 可 以 通 過 選 取"File "*"Create Adobe PDF"*"Preference", 來 對PDF 文 件 轉 化 過 程 中 的 某 些 參 數 進 行 必 要 的 設 定, 以 達 到 所 要 求 的 效 果。 而 要 真 正 實 現 這 些 功 能, 還 需 要 有PDFWriter 3.0( 或 更 高) 打 印 驅 動 程 序 與Acrobat Distiller 3.0( 或 更 高) 的 配 合 才 能 完 成。 這 兩 項 內 容 包 含 在Adobe Acrobat 3.0 中, 通 過 將 其 安 裝 才 能 獲 得。 另 外,PDFWriter 的 特 點 是 可 將 一 般 文 檔 快 速 地 直 接 轉 換 為PDF 格 式, 但PDFMaker 中 的 其 他 一 些 功 能 如 書 簽、 超 鏈 接 和 注 釋 等 高 級 特 征, 卻 因 此 不 能 被 完 全 地 保 留 下 來; 而Distiller 則 是 通 過 先 將Word 文 檔 打 印 為 一 個PostScript 文 件, 然 後 再" 提 取" 這 種 擴 展 名 為ps 的 文 件 內 容 制 成PDF 文 件, 它 可 仍 然 保 存 那 些 在 文 檔 編 輯 和Internet 中 廣 泛 使 用 的 高 級 功 能。 另 外, 由 於 在MS Word 97 中 使 用 的 宏 語 言 不 同 於 老 版 本Word 中 的 宏, 所 以PDFMaker 不 能 用 於Word 6.0 中。
---- 還 應 當 注 意 的 是, 為 建 立PostScript 文 件,Distiller Assistant 必 須 使 用 一 個 真 正 的PostScript 打 印 驅 動 程 序, 例 如Microsoft PostScript 打 印 驅 動 或Adobe PostScript 打 印 驅 動(AdobePS) 等。 因 為Distiller Assistant 在 創 建PDF 過 程 中 不 僅 要 使 用 有 關PDF 內 容 的 選 擇, 同 時 也 要 使 用 打 印 驅 動 程 序 的 一 些 選 擇 內 容。
---- 因 此,Adobe Acrobat 3.0 是 基 本 的, 只 要 能 夠 打 印 成PostScript 文 件( 即 安 裝 有PostScript 打 印 驅 動), 就 可 以 在 應 用 程 序 中 通 過 將 打 印 選 擇 命 令 設 置 為Distiller Assistant( 或 者Acrobat Distiller 3.0), 制 作 出 相 應 的PDF 格 式 文 件 來, 而 不 一 定 像 在MS Word 97 中 那 樣, 通 過 安 裝PDFMaker 在"File" 菜 單 里 生 成 專 門 的"Creat Adobe PDF" 項。 例 如, 在MS Excel 和MS PowerPoint 等 應 用 軟 件 中, 也 完 全 可 以 制 作 出 相 應 樣 式 的PDF 文 件 來。