PDF Explained(翻译)第一章 简介
本文是對PDF Explained(by John Whitington)的摘要式翻譯。
一. 一點歷史
PDF的發展
PDF起初是Adobe的一個內部項目,其目標是創建一種平臺無關的文檔交換方式。當時PostScript已經在印刷界非常流行,但在當時的電腦屏幕顯示上還不是很實用–特別是隨機訪問方面(如果需要渲染一個PostScript文檔的第50頁,就必須先處理好前49頁)。
項目的想法是使用PostScript圖片語言的子集加上一些輔助數據來創建一種結構化的語言,可以用于在任何計算機上查看(或打印)文檔。
PDF1.0于1993發布,包括Acrobat Distiller(用于創建和編輯PDF文件)和Acroba
t Reader(只能用于查看),兩款軟件都是收費的。后來,Acroba
t Reader成為了免費軟件,這帶來了PDF的廣泛使用。
接下來的10年,隨著印前(prepress)特性的增加,PDF開始慢慢超越PostScript成為印刷業的首先語言。
PDF的優點
隨機訪問和線性化
不同與PostScript,PDF中的任何對象均可在常數時間內任意訪問。這意味著訪問第150頁不會比第1頁更困難。線性化是指在文件中排列對象的過程,以便給定頁面所需的所有對象都處于相鄰位置。這也解釋了為什么你在閱讀器中可以迅速跳轉到任何頁面,因為閱讀器不需要加載整個文件。
流式創建和增量更新
流式創建允許PDF文件按照從頭至尾的順序創建,即使文件比可用內存要大也沒不會有任何問題。
增量更新意味著在編輯文件時,可以直接將更改寫入文件末尾而無需改動現有內容。(譯者注:舊內容依然存在于文檔中,但不會顯示。)
內嵌字體
PDF中的字體是內嵌于文檔中的。這使得無論計算機上是否安裝了相關字體,文檔都會被正常渲染。程序在創建PDF文檔時會移除無用的字體數據,以使得文件不會變得特別臃腫。PDF支持所有通用字體格式,比如TrueType,Type1。(譯者注:也可以不內嵌字體,只是指出字體名,這時如果目標設備上沒有相關字體,則會用默認字體進行渲染。)
可搜索的文本
ISO標準化
2008年ISO將PDF作為開放標準發布。ISO-32000-1:2008文檔與Adobe之前發布的PDF文件格式大致相同。
特殊種類的PDF
有一些PDF格式的特殊變體,它們是PDF的子集。每個文件都是一個合法的PDF文檔,但是做了一些限制。其中的兩個是PDF/A和PDF/X,他們有各自的ISO標準。
PDF/A
PDF/A標準(ISO 190005-1:2005)定義了一套文檔規則,主要用于圖片館,檔案館和一些機構的長期存檔文件。限制有:
- 不能加密
- 所有字體內嵌
- 必須有元數據(Metadata)
- 不得使用JavaScript
- 以設備無關的方式指定色彩空間
- 無音視頻內容
PDF/X
PDF/X是一系列用于印刷行業圖形交換的標準。最新的標準是PDF/X-5(ISO 15930-8:2010)
- 所有字體內嵌
- 所有圖片內嵌
- 不能包含音視頻以及無法打印的注釋
- 無form
- 無JavaScript
- 不能加密
二.PDF中有什么
文本和字體
支持多種字體格式(Type1, TrueType, OpenType等等)。古老的位圖字體也通過模擬的方式得以支持。支持各種字符編碼,包括Unicode。
可以使用任何顏色,圖案和透明度對文本進行填充。一段文本可以用作剪輯其它內容的形狀,同時文本保持可選擇、可編輯。
矢量圖
光柵圖
PDF文檔中可以包含位圖。圖片可以使用各種有損和無損算算法進行壓縮。
色彩空間
PDF可以使用與特定電子設備或印刷設備相關的色彩空間(灰度,RGB,CMYK)以及人類色彩感知相關的色彩空間。此外,還有針對印刷行業的色彩空間,比如專色。(譯者注:專色是指在印刷時,不是通過印刷C、M、Y、K四色合成這種顏色,而是專門用一種特定的油墨來印刷該顏色。)
元數據(Metadata)
PDF文檔中有一系列標準的元數據,比如標題,作者,關鍵詞等等。這些是在圖形內容之外定義的,對查看文檔沒有任何影響。創建者(創建內容的程序)和制作者(編寫文件的程序)也會被記錄下來。每個文檔還有一組唯一標識,以便通過工作流對其進行跟蹤。
從PDF1.4版本開始,元數據可以使用XML存儲,這些XML可以直接嵌入PDF中。這使得第三方可以在文檔中保存與其特定工作流或產品相關的信息。
導航
- 文檔大綱,通常稱為文檔的書簽。
- 超鏈接
可選內容
PDF中的可選內容組允許將頁面內容的一部組合在一起,根據其它條件(比如用戶選擇、文檔是否在屏幕上顯示或打印、縮放比例等)來決定顯示或不顯示。它的用途之一是用來模擬圖形包中的“層”。
多媒體內容
PDF文檔可以包括各種多媒體元素(幻燈片,聲音,視頻,3D圖稿等等)。這破壞了PDF固有的可移植性,Adobe之外的產品對其支持也不是很好。
交互式表單
表單允許用戶填充文本域,使用復選框和單選框。數據填充完成后,可以被保存在文檔中或提交至某個URL進行進一步處理。嵌入的JavaScript通常與表單結合使用來校驗字段值或做類似的事情。
邏輯結構和重排版
邏輯結構工具可以將結構信息(章節,圖表和腳注)顯示在圖形內容(graphical content)旁邊。
帶標簽的PDF(tagged PDF)是具有邏輯結構的,這種結構是基于Adobe定義的元素建立的。閱讀器可以對遵循這些約定的文檔進行重排版,以不同的頁面或字體大小顯示同樣的文本。
安全
PDF文檔可以使用RC4或AES方式進行加密。有兩種權限的密碼,所有者密碼和使用者密碼。所有者密碼允許修改對文檔進行各種修改,使用者密碼僅允許對所有者授權的部分進行操作。
壓縮
PDF中的圖片和其它數據流都可以使用第三方定義的各種無損和無損壓縮方法進行壓縮。由于只對這些流進行了壓縮,PDF的對象結構是始終可用的,被壓縮的部分只在需要時才會被解壓。
總結
以上是生活随笔為你收集整理的PDF Explained(翻译)第一章 简介的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JAVA中CyclLink怎么用_Jav
- 下一篇: 也谈cacti整合nagios(cent