PDF

便攜式文檔格式
PDF file icon.svg
Adobe PDF圖標
文件名擴展.pdf
互聯網媒體類型
  • 應用程序/PDF[1]
  • 應用程序/X-PDF
  • 應用程序/X-BZPDF
  • 應用GZPDF
類型代碼PDF[1](包括一個空間)
統一類型標識符(UTI)com.adobe.pdf
魔術數%pdf
由開發Adobe Inc.(1991–2008)
ISO(2008–)
初始發行1993年6月15日; 29年前
最新發布的
2.0
擴展到pdf/apdf/ePDF/UAPDF/VTpdf/x
標準ISO 32000-2
開放格式是的
網站萬維網.iso.org/標準/75839.html

便攜式文檔格式PDF),標準化為ISO 32000,是文件格式由開發Adobe1992年文件,包括文本格式和圖像,以獨立於應用程序軟件硬件, 和操作系統.[2][3]基於後記語言,每個pdf文件封裝了固定的layout平面文檔的完整描述,包括文本,字體向量圖形柵格圖像以及顯示它所需的其他信息。PDF源於Adobe聯合創始人發起的“ Camelot Project”約翰·沃諾克(John Warnock)1991年。[4]

PDF在2008年被標準化為ISO 32000。[5]最後一個版本AS ISO 32000-2:2020於2020年12月出版。

PDF文件除了平面文本和圖形外,還可能包含各種內容豐富的媒體(包括視頻內容),三維對象使用U3D或者中國和其他各種數據格式。PDF規範還提供了加密和數字簽名,文件附件,元數據啟用需要這些功能的工作流程。

歷史

Adobe系統使PDF規範在1993年免費提供。桌面出版工作流程,並與各種格式競爭DJVU使者,共同地面數字紙,法拉隆複製品,甚至是Adobe自己的後記格式。

PDF是一個專有格式由Adobe控制,直到被釋放為開放標準2008年7月1日,由國際標準化組織AS ISO 32000-1:2008,[6][7]當時,對規範的控制權交給了ISO志願行業專家委員會。2008年,Adobe發布了ISO 32000-1授予的公共專利許可證免版稅Adobe擁有的所有專利的權利,這些專利是製造,使用,出售和分發符合PDF的實施所必需的。[8]

PDF 1.7,第六版的PDF規範,成為ISO 32000-1,包括一些僅由Adobe定義的專有技術,例如Adobe XML形成架構(xfa)和JavaScriptAcrobat的擴展,ISO 32000-1引用為規範對於ISO 32000-1規範的完整實施,必不可少的。[9]這些專有技術未標準化,其規格僅在Adobe的網站上發布。[10][11][12]PDF的流行第三方實施也不支持其中許多。

2020年12月,發布了第二版PDF 2.0,ISO 32000-2:2020,包括對規範參考的澄清,更正和關鍵更新。[13]ISO 32000-2不包括任何專有技術作為規範參考。[14]

技術細節

PDF文件通常是向量圖形,文字和位圖圖形。PDF中內容的基本類型是:

  • 排版文本存儲為內容流(即未編碼純文本);
  • 插圖和設計的矢量圖形,包括形狀和線條;
  • 照片和其他類型的圖像的柵格圖形
  • 文檔中的多媒體對象。

在以後的PDF修訂中,PDF文檔還可以支持鏈接(內部文檔或網頁),表單,JavaScript(最初作為Acrobat 3.0的插件可用)或可以使用插件來處理的任何其他類型的嵌入式內容。

PDF結合了三種技術:

  • 等效子集後記頁面描述編程語言,但以聲明形式,用於生成佈局和圖形。
  • 一個字體裝飾/替換系統允許字體隨附文檔。
  • 一個結構化存儲系統,將這些元素和任何關聯的內容捆綁到一個文件中,數據壓縮在適當情況下。

後記語言

後記是一個頁面描述語言在一個口譯員要生成圖像,一個需要許多資源的過程。它可以處理圖形和標準功能編程語言如果語句和環形命令。PDF主要基於Postscript,但簡化以刪除此類流量控制功能,而圖形命令等效於Lineto保持。

從歷史上看,像postscript一樣的PDF代碼是從源Postscript文件生成的。收集了由PostScript代碼輸出的圖形命令,並令牌化.[需要澄清]也收集了文檔所指的任何文件,圖形或字體。然後,將所有內容壓縮到一個文件。因此,整個後記世界(字體,佈局,測量)仍然完好無損。

作為文檔格式,PDF比Postscript具有多個優點:

  • PDF包含了PostScript源代碼的令牌化和解釋的結果,以直接對應PDF頁面描述中的項目與結果頁面外觀的更改。
  • PDF(版本1.4)支持透明圖形; PostScript沒有。
  • Postscript是一個解釋的編程語言有了隱式的全球狀態,因此隨附的一頁描述的指令可能會影響以下任何頁面的外觀。因此,必須處理Postscript文檔中的所有上一頁以確定給定頁面的正確外觀,而PDF文檔中的每個頁面都不受到其他頁面的影響。結果,PDF的觀眾允許用戶快速跳到長文檔的最終頁面,而Postscript查看器需要在能夠顯示目標頁面之前依次處理所有頁面(除非可選的Postscript記錄結構約定已精心編譯並包括)。

PDF 1.6和後來支持嵌入在PDF文件中的交互式3D文檔:可以使用3D圖紙嵌入U3D或者中國和其他各種數據格式。[15][16][17]

文件格式

使用PDF文件組織ASCII字符,除某些可能具有二進制內容的元素外。該文件以包含一個的標頭開始魔術數(作為可讀字符串)和格式的版本,例如%PDF-1.7。格式是COS(“輪轂”對象結構)格式的子集。[18]cos樹文件主要由對象,其中有九種類型:[14]

  • 布爾值,代表真的或者錯誤的
  • 實數
  • 整數
  • 字符串,封閉在括號內((...))或在單角括號內表示為十六進制(<...>)。字符串可能包含8位字符。
  • 名稱,從前向斜線開始(/
  • 數組,在方括號內封閉的對象的訂購集合([...]
  • 字典,集合在雙角括號內包含的名稱索引的對象的集合(<<...>>
  • ,通常包含大量選擇的壓縮二進制數據,此前為字典,並在溪流端流關鍵字。
  • 無效的目的

此外,可能會有評論,並帶有百分比符號(%)。評論可能包含8位字符。

對象可能是直接的(嵌入在另一個對像中)或間接。間接對象編號為對象號生成編號並在OBJendobj關鍵字如果駐留在文檔根中。從PDF版本1.5開始,間接對象(其他流)也可能位於特殊流中對象流(標記/type /objstm)。該技術使非流對象能夠將標準流濾波器應用於它們,減少具有大量小間接對象的文件大小,並且對標記的PDF。對象流不支持指定對象的生成編號(除了0)。

一個索引表,也稱為交叉引用表,位於文件末端附近,並從文件的開始中給出每個間接對象的字節偏移。[19]這種設計允許有效隨機訪問到文件中的對象,還允許在不重寫整個文件的情況下進行小更改(增量更新)。在PDF版本1.5之前,該表始終以特殊的ASCII格式標記xref關鍵字,並遵循由間接對象組成的主體。版本1.5引入可選交叉引用流,具有標準流對象的形式,可能是應用過濾器的。可以使用此類流代替ASCII交叉引用表,並以二進制格式包含偏移和其他信息。該格式靈活,因為它允許整數寬度規範(使用/w陣列),例如,文檔不超過64KIB大小可以僅專用於2個字節來進行對象偏移。

在PDF文件的末尾是一個頁腳,其中包含

  • StartXref關鍵字,然後偏移到交叉引用表的開始(從xref關鍵字)或交叉引用流對象,然後是
  • %% eof文件結束標記。

如果未使用交叉引用流,則頁腳在預告片關鍵字,然後是包含否則將包含在交叉參考流對象的詞典中的信息的字典:

  • 對樹結構的根對象的引用,也稱為目錄/根
  • 交叉參考表中間接對象的計數(/尺寸
  • 其他可選信息

在每個頁面中,都有一個或多個內容流來描述頁面上繪製的文本,向量和圖像。內容流是基於堆棧, 如同後記.[20]

PDF文件有兩個佈局:非線性化(不是“優化”)和線性化(“優化”)。非線性PDF文件可能比線性對應物小,儘管它們的訪問速度較慢,因為組裝文檔頁面所需的部分數據散佈在整個PDF文件中。線性化的PDF文件(也稱為“優化”或“ Web優化” PDF文件)的構建方式是使它們能夠在Web瀏覽器插件中讀取的方式,而無需等待整個文件下載,因為第一頁所需的所有對象顯示在文件開始時最佳組織。[21]PDF文件可以使用Adobe Acrobat軟件或QPDF.

成像模型

如何的基本設計圖形在PDF中表示與後記,除了使用透明度,在PDF 1.4中添加。

PDF圖形使用獨立於設備的笛卡爾坐標系描述頁面的表面。一種PDF頁面描述可以使用矩陣規模旋轉, 或者偏斜圖形元素。PDF中的一個關鍵概念是圖形狀態,這是圖形參數的集合,可以通過A更改,保存和還原頁面描述。PDF具有(截至2.0版)25個圖形狀態屬性,其中一些最重要的是:

向量圖形

後記向量圖形在PDF中是由路徑。路徑通常由線和立方組成Bézier曲線,但也可以從文本的輪廓中構造。與眾不同後記,PDF不允許單個路徑與線條和曲線混合文本大綱。路徑可以撫摸,填充,填充,然後撫摸或用於剪裁。筆觸和填充可以使用圖形狀態中設置的任何顏色,包括圖案。PDF支持幾種類型的模式。最簡單的是平鋪圖案其中指定了一件藝術品的反复繪製。這可能是彩色平鋪圖案,帶有模式對像中指定的顏色,或未顏色的平鋪圖案,在繪製圖案的時間時,將顏色規範辯護。從PDF 1.3開始也有一個陰影模式,繪製連續變化的顏色。有七種類型的陰影模式,最簡單的是軸向陰影(類型2)和徑向陰影(類型3)。

柵格圖像

柵格圖像在PDF中(稱為圖像Xobjects)由帶有關聯流的字典表示。詞典描述了圖像的屬性,並且該流包含圖像數據。(較不常見的是,小柵格圖像可以直接嵌入頁面描述中內聯圖像。)圖像通常是過濾出於壓縮目的。PDF支持的圖像過濾器包括以下通用過濾器:

  • ASCII85代碼,用於將流到7位的過濾器ASCII
  • asciihexdecode,類似於ASCII85代碼,但不太緊湊,
  • FLEDECODE,一種基於的常用過濾器放氣定義的算法RFC 1951(在gzipPNG, 和壓縮文件格式等);在PDF 1.2中引入;它可以使用兩組預測函數之一來進行更緊湊的Zlib/Deflate壓縮:預測指標2來自tiff6.0規格和預測變量(過濾器)PNG規格 (RFC 2083),
  • lzwdecode,基於過濾器LZW壓縮;它可以使用兩組預測函數之一進行更緊湊的LZW壓縮:預測指標2從PNG規範的TIFF 6.0規範和預測變量(過濾器),
  • RunlengthDecode,一種使用重複數據的流的簡單壓縮方法運行長度編碼算法和特定圖像過濾器,
  • dctDecode, 一個有損基於jpeg標準,
  • CCITTFAXDECODE, 一個無損雙層(黑色/白色)基於組3或第4組CCITT(ITU-T)傳真ITU-T中定義的壓縮標準T.4和T.6,
  • jbig2decode,基於有損或無損的雙層(黑色/白色)過濾器jbig2標準,在PDF 1.4中引入,並且
  • jpxdecode,根據JPEG 2000標準,在PDF 1.5中引入。

通常,PDF中的所有圖像內容都嵌入到文件中。但是PDF允許圖像數據通過使用來存儲在外部文件中外部流或者替代圖像。 PDF的標準化子集,包括pdf/apdf/x,禁止這些功能。

文本

PDF中的文字由文本元素在頁面內容流中。文本元素指定人物應在某些位置上繪製。字符是使用編碼選定的字體資源.

PDF中的字體對像是數字的描述字體。它可以描述字體的特徵,或者可能包括嵌入式字體文件。後一種情況稱為嵌入式字體而前者被稱為笨拙的字體。可以嵌入的字體文件基於廣泛使用的標準數字字體格式:類型1(及其壓縮變體CFF),trueType,(從PDF 1.6開始)Opentype。另外,PDF支持PDF圖形運算符描述字體組件的類型3變體。

十四個字體,稱為標準14個字體,在PDF文檔中具有特殊意義:

這些字體有時被稱為基礎十四個字體.[22]這些字體或具有相同指標的合適替代字體應在大多數PDF讀取器中可用,但不是保證要在讀者中可用,並且只有在系統安裝系統時才能正確顯示。[23]如果字體未嵌入PDF,則可以取代它們。

在文本字符串中,使用角色代碼(整數)將其映射到當前字體中的字形編碼。有幾個預定義的編碼,包括Winansi魔術師,以及東亞語言和字體的許多編碼都可以具有自己的內置編碼。(儘管Winansi和Macroman編碼源自視窗Macintosh操作系統,使用這些編碼的字體在任何平台上同樣均能很好地工作。)PDF可以指定用於使用的預定義編碼,字體的內置編碼或提供對預定義或內置編碼的差異表(不建議使用TRUETYPE使用)字體)。[24]PDF中的編碼機制是為1型字體設計的,將其應用於TrueType字體的規則很複雜。

對於具有非標準字形的大字體或字體,特殊編碼身份-H(用於水平寫作)和身份v(用於垂直)。使用這樣的字體,有必要提供Tounicode表如果要保留有關字符的語義信息。

透明度

PDF的原始成像模型就像PostScript的那樣不透明:在頁面上繪製的每個對像都完全替換了以前在同一位置上標記的任何對象。在PDF 1.4中,擴展了成像模型以允許透明度。使用透明度時,新對象與先前標記的對象相互作用以產生混合效果。通過新的擴展名為PDF 1.3和更早的規格中忽略的新擴展名來完成對PDF的透明度。結果,使用少量透明度的文件可能會被老年觀眾可以接受,但是較舊的觀眾可能會錯誤地查看透明度的廣泛使用的文件。

透明度擴展基於透明組混合模式形狀, 和α。該模型與Adobe Illustrator版本9.混合模式是基於由Adobe Photoshop當時。當發布PDF 1.4規範時,Adobe將計算混合模式的計算公式保密。從那以後,他們已經出版了。[25]

PDF規範中透明組的概念與Adobe Illustrator等應用程序中的“組”或“層”的現有概念無關。這些分組反映了編輯這些對象時對象之間有意義的對象之間的邏輯關係,但它們不是成像模型的一部分。

附加的功能

邏輯結構和可訪問性

“標記” PDF(請參閱ISO 32000中的第14.8條)包括文檔結構和語義信息,以啟用可靠的文本提取和可訪問性。從技術上講,標記的PDF是對構建在PDF 1.3中介紹的邏輯結構框架上的格式的風格化使用。標記的PDF定義了一組標準的結構類型和屬性,這些類型允許為其他目的提取和重複使用頁面內容(文本,圖形和圖像)。[26]

在PDF文件僅用於打印的情況下,不需要標記的PDF。由於該功能是可選的,並且由於ISO 32000-1的標記PDF規則相對模糊,因此在消費設備中支持標記的PDF,包括輔助技術(at),截至2021年,不均勻。[27]但是,ISO 32000-2包括對標記PDF的改進討論,預計有助於進一步採用。

專門針對可訪問性的PDF的ISO標準子集,PDF/UA,於2012年首次出版。

可選內容組(層)

隨著PDF版本的引入,1.5(2003)出現了層的概念。層,或既然它們是更正式的可選內容組(OCG),請參閱PDF文檔中的內容部分,可以通過文檔作者或觀看者選擇性地查看或隱藏。此功能可用於CAD圖,分層藝術品,地圖,多語言文檔等。

基本上,它由添加到文檔root中的可選內容屬性組成。該字典包含一個可選內容組(OCG)的數組,每個數字都描述了一組信息,並且每個信息都可以單獨顯示或抑制,以及一組可選的內容配置詞典,這些字典給出了狀態(顯示或抑制)給定OCG。

加密和簽名

PDF文件可能是加密,對於安全性,在這種情況下,需要密碼來查看或編輯內容。PDF 2.0將256位AES加密定義為PDF 2.0文件的標準。PDF參考還定義了第三方可以定義自己的PDF加密系統的方式。

PDF文件可以數字簽名,以提供安全的身份驗證;ISO 32000-2提供了有關在PDF中實現數字簽名的完整詳細信息。

PDF文件也可能包含嵌入式DRM提供進一步控制的限制,以限制複製,編輯或打印。這些限制取決於讀者軟件以遵守它們,因此它們提供的安全性是有限的。

PDF提供的標準安全性包括兩種不同的方法和兩個不同的密碼:用戶密碼,加密文件並防止打開,一個所有者密碼,指定即使解密文檔也應限制的操作,其中包括修改,打印或從文檔中復製文本和圖形,或添加或修改文本註釋和修改Acroform字段。用戶密碼對文件進行加密,而所有者密碼不依賴客戶端軟件來尊重這些限制。可以通過軟件輕鬆刪除所有者密碼,包括一些免費的在線服務。[28]因此,文檔作者放置在PDF文檔上的使用限制是不安全的,一旦文件分發,就無法確保。使用此類限制時,會顯示此警告Adobe Acrobat用於創建或編輯PDF文件的軟件。

即使沒有刪除密碼,大多數免費軟件或開源PDF讀取器都忽略了“保護”的權限,並允許用戶打印或製作文本摘錄的副本,就好像文檔不受密碼保護的限制一樣。[29][30][31]

從PDF 1.5開始,使用權利(UR)簽名用於啟用特定PDF Viewer應用程序中默認情況下無法獲得的其他交互式功能。該簽名用於驗證權限已由善意授予權威。例如,它可用於允許用戶:[32]

  • 保存PDF文檔以及修改的表單和/或註釋數據
  • 以FDF,XFDF和文本(CSV/TSV)格式導入形式的數據文件
  • 以FDF和XFDF格式導出表格數據文件
  • 提交表單數據
  • 從命名的頁面模板實例化新頁面
  • 應用電子簽名到現有的數字簽名表格字段
  • 創建,刪除,修改,複製,導入和導出註釋

例如,Adobe Systems授予權限以啟用Adobe閱讀器中的其他功能,並使用公鑰密碼學。Adobe Reader驗證簽名是否使用證書來自Adobe授權的證書頒發機構。任何PDF應用程序都可以自行使用這種相同的機制。[32]

在特定情況下,包括非修補接收器的系統,信息數字簽名文檔See可以在文件簽名後由發件人操縱。[33]

墊子PDF高級電子簽名)是對PDF和ISO 32000-1的一組限制和擴展[34]使其適合高級電子簽名。這是由ETSI如TS 102 778。[35]

文件附件

PDF文件可以具有文件附件,處理器可以訪問並打開或保存到本地文件系統。[36]

元數據

PDF文件可以包含兩種類型的元數據。[37]第一個是文檔信息詞典,一組密鑰/值字段,例如作者,標題,主題,創建和更新日期。這是可選的,從信息在文件的預告片中鍵。定義了一小部分字段,如果需要,可以使用其他文本值擴展。該方法在PDF 2.0中棄用。

在PDF 1.4中,添加了對元數據流的支持,使用可擴展的元數據平台(XMP)在其他文件格式中使用使用的是添加基於XML標準的可擴展元數據。PDF 2.0允許將元數據連接到文檔中的任何對象,例如有關使用擴展模式的有關嵌入式插圖,字體,圖像以及整個文檔(附加到文檔目錄)的信息。

PDF文檔還可以包含顯示設置,包括查看器首選項對像中的頁面顯示佈局和縮放級別。打開文檔時,Adobe Reader使用這些設置來覆蓋用戶的默認設置。[38]免費的Adobe讀取器無法刪除這些設置。

可訪問性

可以專門創建PDF文件,以便為殘疾人訪問。[39][40][41][42][43]截至2014年使用的PDF文件格式可以包括標籤,文本等價,字幕,音頻描述等。一些軟件可以自動生產標記的PDF,但是默認情況下並不總是啟用此功能。[44][45]領導屏幕讀取器, 包含窗戶,哈爾,然後Kurzweil 1000和3000可以讀取標記的PDF。[46][47]此外,可以重新流動標記的PDF並放大視覺障礙的讀者。將標籤添加到較舊的PDF和由掃描文檔生成的標籤可能會帶來一些挑戰。

PDF可訪問性面臨的重大挑戰之一是,PDF文檔具有三種不同的視圖,根據文檔的創建,這可能是不一致的。這三個視圖是(i)物理視圖,(ii)標籤視圖和(iii)內容視圖。顯示和打印物理視圖(大多數人認為PDF文檔)。標籤視圖是屏幕讀取器和其他輔助技術用於為殘疾用戶提供高質量導航和閱讀經驗的方法。內容視圖基於PDF內容流中對象的物理順序,並且可以通過不完全支持標籤視圖的軟件顯示,例如Adobe讀取器中的Reflow功能。

PDF/UA,基於ISO 32000-1的國際訪問PDF標準首次以ISO 14289-1出版,並在2012年建立了可訪問PDF技術的規範語言。

多媒體

Rich Media PDF是一個PDF文件,包括可以嵌入或鏈接到文件中的交互式內容。它可以包含圖像,音頻,視頻內容或按鈕。例如,如果交互式PDF是用於電子商務業務的數字目錄,則可以在PDF頁面上列出產品,可以添加圖像,網站鏈接和按鈕直接從那裡訂購。

形式

互動形式是將表單添加到PDF文件格式的機制。PDF當前支持兩種集成數據和PDF表單的不同方法。如今,這兩種格式在PDF規範中共存:[32][48][49][50]

  • Acroforms(也稱為Acrobat形式),在PDF 1.2格式規範中引入,並包含在所有以後的PDF規範中。
  • XML形成架構(XFA)表格,在PDF 1.5格式規範中引入。Adobe XFA形式與Acroforms不兼容。[51]用PDF 2.0將XFA從PDF中棄用。

在PDF 1.2格式中引入了Acroforms。Acrooforms允許使用對象(例如文本框無線電按鈕等等)和一些代碼(例如JavaScript)。除了標準的PDF操作類型,交互式形式(AcroForms)支持提交,重置和導入數據。“提交”操作將所選交互式表單字段的名稱和值傳輸到指定的統一資源定位器(URL)。交互式表單字段名稱和值可以以以下任何格式提交(取決於操作的exportformat,submitpdf和XFDF標誌的設置):[32]

HTML形式格式
HTML 4.01規格以來PDF 1.5;HTML 2.0自1.2以來
形成數據格式(FDF)
基於PDF,使用相同的語法,並且基本相同的文件結構,但是比PDF簡單得多,因為FDF文檔的正文僅由一個必需的對象組成。PDF規範中定義了表單數據格式(因為PDF 1.2)。將表單數據提交給服務器,接收響應並將其納入交互式表單時,可以使用表單數據格式。它也可以用於將表單數據導出到可以將其導入到相應的PDF交互式形式中的獨立文件。FDF最初是在1996年定義為ISO 32000-2:2017的一部分。
XML形成數據格式(XFDF)
(外部XML形式的數據格式規範,版本2.0;自PDF 1.5以來得到支持;它替換了PDF 1.4中定義的“ XML”表單提交格式)表單數據格式的XML版本,但XFDF僅實施FDF的fdf子集,其中包含表單和表單和表格的子集註釋。FDF字典中的某些條目沒有XFDF等效物,例如狀態,編碼,JavaScript,Page's鍵,EmbeddedFDFS,差異和目標。此外,XFDF不允許基於給定數據的新頁面產卵或添加。就像使用FDF文件時可以做到的那樣。PDF 1.5規範(以及以後版本)中引用了XFDF規範(但不包括)。在XML形成數據格式規範.[52]PDF 1.4規範允許以XML格式提交表格,但這被PDF 1.5規範中的XFDF格式提交所取代。XFDF符合XML標準。XFDF可以與FDF相同的方式使用;例如,表單數據已提交到服務器,進行了修改,然後發送回去,然後以交互式形式導入新表單數據。它也可以用於將表單數據導出到可以將其導入到相應的PDF交互式形式中的獨立文件。截至2019年8月,XFDF 3.0是正式名稱的ISO/IEC標準ISO 19444-1:2019-文檔管理 - XML表格數據格式 - 第1部分:使用ISO 32000-2(XFDF 3.0).[53]該標準是ISO 32000-2的規範性參考。
PDF

可以提交整個文檔,而不是單個字段和值,如PDF 1.4所定義的那樣。

AcroForms可以將表單值保持在包含鍵值對的外部獨立文件中。外部文件可以使用表單數據格式(FDF)和XML表單數據格式(XFDF)文件。[54][52][55]使用權(UR)簽名定義了FDF,XFDF和TEXT中導入表單數據文件的權利(CSV/TSV)格式,並以FDF和XFDF格式導出數據文件。[32]

在PDF 1.5中,Adobe Systems引入了形式的專有格式。Adobe XML形成架構(XFA)。Adobe XFA表單與ISO 32000的Acroforms功能不兼容,並且大多數PDF處理器都不處理XFA內容。XFA規範從ISO 32000-1/PDF 1.7作為外部專有規範引用,並完全將ISO 32000-2(PDF 2.0)從PDF中刪除。

許可

任何人都可以創建可以讀取和編寫PDF文件的應用程序,而無需支付特許權使用費Adobe系統;Adobe擁有PDF的專利,但為其許可免版稅用於開發符合其PDF規範的軟件。[56]

安全

2019年11月,來自魯爾大學博丘姆Hackmanit GmbH發表了對數字簽名的PDF的攻擊。[57]他們展示瞭如何通過濫用實施缺陷來更改簽名的PDF中的可見內容,而不會在22個桌面PDF觀眾中21個簽名和8個在線驗證服務中的6個更改簽名。在同一會議上,他們還展示瞭如何滲透PDF中加密內容的明文。[58]在2021年,他們展示了新的所謂影子攻擊關於濫用規範中提供的功能靈活性的PDF。[59]PDF中有關安全問題的概述拒絕服務, 信息披露,數據操縱, 和任意代碼執行詹斯·穆勒(JensMüller)提出了攻擊。[60][61]

攜帶病毒的PDF附件於2001年首次發現。該病毒命名為Outlook.pdf蟲或者桃子,用途Microsoft Outlook將自己作為附件的Adobe PDF文件發送。它是用Adobe Acrobat激活的,但沒有被Acrobat Reader激活。[62]

時不時地發現了各種版本的Adobe閱讀器,[63]提示公司發布安全修復。其他PDF讀者也很容易受到影響。一個加重的因素是,如果網頁具有嵌入式PDF文件,可以將PDF讀取器配置為自動啟動,從而提供了攻擊的向量。如果惡意網頁包含一個受感染的PDF文件,該文件利用PDF讀取器中的漏洞,即使瀏覽器安全,系統也可能會受到損害。這些漏洞中的一些是PDF標準的結果,允許使用JavaScript腳本腳本PDF文檔。在PDF閱讀器中禁用JavaScript執行可以幫助減輕這種未來的利用,儘管它不能防止PDF查看軟件其他部分的利用。安全專家說,JavaScript對於PDF閱讀器並不是必不可少的,並且禁用JavaScript所帶來的安全利益超過了引起的任何兼容性問題。[64]避免PDF文件利用的一種方法是在查看之前將本地或Web服務轉換為另一種格式。

2010年3月30日,安全研究員迪迪爾·史蒂文斯(Didier Stevens)報告說,如果用戶允許在詢問時啟動它,則一名Adobe Reader和Foxit讀者利用該惡意可執行文件。[65]

軟件

觀眾和編輯

通常免費提供PDF觀眾,並且可以從各種來源獲得許多版本。

有許多用於創建PDF的軟件選項,包括內置的PDF打印功能蘋果系統ios[66]最多Linux分佈,libreofficeMicrosoft Office 2007(如果更新為SP2) 然後,[67]WordPerfect9,,scribus,許多PDF印刷驅動程序微軟Windows, 這PDFTEX排版系統,DocbookPDF工具,周圍開發的應用程序GhostscriptAdobe Acrobat本身以及Adobe IndesignAdobe FramemakerAdobe IllustratorAdobe Photoshop.谷歌的在線辦公室套房谷歌文檔允許上傳並保存到PDF。一些Web應用程序提供免費的PDF編輯和註釋工具。

免費軟件基金會曾經被認為是他們的之一高優先項目要“開發一套免費,高質量且功能齊全的庫和程序集,這些庫和程序將PDF文件格式和相關技術實現為ISO 32000標準”。[68][69]然而,2011年,GNU PDF項目被從“高優先級項目”列表中刪除,原因是Poppler庫[70]在諸如表明侏儒桌面環境。 Poppler是基於XPDF[71][72]代碼基。也有商業開發庫,如PDF軟件列表.

Apache PDFBox項目的項目Apache軟件基金會是用於使用PDF文檔的開源Java庫。PDFBox在Apache許可證.[73]

印刷

柵格圖像處理器(RIP)用於將PDF文件轉換為柵格格式適用於打印機中的紙張和其他媒體成像,數字生產新聞和prepress在一個被稱為柵欄。能夠直接處理PDF的撕裂包括Adobe PDF打印引擎[74]Adobe系統和下巴[75]哈勒奎因rip全局圖形.

1993年,下巴柵格圖像處理器全局圖形成為第一個本地解釋PDF而未轉換為另一種格式的運輸prepress Rip。該公司於1997年以相同的能力發布了對丑角RIP的升級。[76]

Agfa-Gevaert1997年,引入和發貨是基於PDF的第一個預壓工作流系統。

許多商業偏移打印機已經接受了新聞準備的PDF文件作為打印源,特別是PDF/X-1A子集和相同的變體。[77]提交建議的PDF文件是替代接收原始工作文件的問題需求的替代方法。

2006年,PDF被廣泛接受為標準打印作業格式開源開發實驗室印刷峰會。它被支持作為打印作業格式普通的UNIX打印系統和桌面應用程序項目,例如侏儒KDEFirefox雷鳥libreoffice開發辦公室已切換到PDF中的發放印刷作業。[78]

一些台式打印機還支持直接PDF打印,可以在沒有外部幫助的情況下解釋PDF數據。

本機顯示模型

PDF被選為“本地”metafile格式Mac OS X,更換圖片較早的格式經典Mac OS。成像模型石英圖形層基於共有的模型顯示後記和PDF,導致暱稱顯示PDF。預覽應用程序可以顯示PDF文件,以及版本2.0和後期的版本2.0蘋果瀏覽器網頁瀏覽器。PDF的系統級支持允許Mac OS X應用程序自動創建PDF文檔,前提是它們支持OS標準打印體系結構。然後根據文件標頭以PDF 1.3格式導出文件。在Mac OS X版本10.0至10.3下進行屏幕截圖時,該圖像也被捕獲為PDF。以後版本將屏幕捕獲作為一個PNG文件,儘管可以根據需要將此行為設置回PDF。

註解

Adobe Acrobat是專有軟件的一個示例,該軟件允許用戶註釋,突出顯示和添加註釋已創建的PDF文件。一個UNIX應用程序可用免費軟件(在下面GNU通用公共許可證) 是pdfedit。這免費軟件福昕閱讀器, 可以用來微軟Windows蘋果系統Linux,允許註釋文檔。跟踪器軟件的PDF-XCHANGE查看器在其免費軟件替代方案中允許不限制註釋和標記。蘋果蘋果系統開源軟件的集成PDF查看器預覽也確實可以啟用註釋撇去,後者支持與乳膠,Synctex和PDFSync以及與Bibdesk參考管理軟件。免費軟件QIQQA可以創建一個註釋報告,總結了人們在其PDF庫中所做的所有註釋和註釋。文本驗證工具導出文檔中的差異作為註釋和標記。

也有網絡註釋支持PDF和其他文檔格式註釋的系統。如果預計PDF具有紙質文檔的所有功能,則需要墨水註釋。

備擇方案

打開XML紙張規範是一種競爭格式,既用作頁面描述語言,又用作本地打印式剝離器格式微軟Windows自從Windows Vista.

混合對象:文檔內容體系結構是一種競爭格式。MO:DCA-P是高級功能表示.

也可以看看

參考

  1. ^一個bHardy,M。;Masinter,L。;Markovic,d。;約翰遜,D。;Bailey,M。(2017),應用程序/PDF媒體類型doi10.17487/RFC8118RFC 8118
  2. ^Adobe Systems Incorporated,PDF參考,第六版,版本1.23(53 MB),2006年11月,第1頁。33.檔案[1]
  3. ^“駱駝項目”(PDF)。從2011 - 07-18的原件存檔。檢索2022-07-25.{{}}:CS1維護:不適合URL(鏈接)
  4. ^“什麼是PDF?便攜式文檔格式| Adobe Acrobat DC”.www.adobe.com。檢索2021-09-17.
  5. ^“ ISO 32000-1:2008”(PDF)。存檔原本的(PDF)在2018-07-26。
  6. ^“ ISO 32000-1:2008 - 文檔管理 - 便攜式文檔格式 - 第1部分:PDF 1.7”。ISO。2008-07-01。檢索2010-02-21.
  7. ^Orion,Egan(2007-12-05)。“ PDF 1.7被批准為ISO 32000”.詢問者。存檔原本的2007年12月13日。檢索2007-12-05.
  8. ^公共專利許可,ISO 32000-1:2008 - PDF 1.7(PDF),Adobe Systems Inc,2008年,檢索2011-07-06
  9. ^“基於標準的ICT採購指南 - 良好實踐的要素,反對鎖定:通過更好地利用公共採購中的標準來構建開放ICT系統”。歐盟委員會。 2013-06-25。檢索2013-10-20.示例:ISO/IEC 29500,ISO/IEC 26300和ISO 32000,用於文檔格式的參考信息,這些信息都無法訪問所有各方(參考專有技術和品牌名稱,不完整的範圍或不完整的Scope或Dead Web鏈接)。
  10. ^“ ISO/TC 171/SC 2/WG 8 N 603 - 會議報告”(PDF)編輯我,2011-06-27,存檔原本的(PDF)在2012-11-26 - 通過檔案館,XFA尚不成為ISO標準。委員會敦促Adobe Systems提交XFA規範XML Forms Architecture(XFA),以進行ISO進行標準化,委員會關注XFA規範第2部分的穩定性將參考XFA 3.1
  11. ^“以便攜式文檔格式(PDF)文件的嵌入和發布交互式,三維科學數字”.PLOS ONE.8(9)。 2013。doi10.1371/journal.pone.0069446.s001.U3D標準的實施尚未完成,並使用了專有擴展。
  12. ^倫納德·羅森托爾(Leonard Rosenthol)(2012)。“ PDF和標準”(PDF)。 Adobe系統。存檔原本的(PDF)在2013-09-02。檢索2013-10-20 - 通過Parleys。
  13. ^“ ISO 32000-2:2020現在可用”。PDFA。2020年12月14日。檢索2021-02-03.
  14. ^一個b“ ISO 32000-2 - 文檔管理 - 便攜式文檔格式 - 第2部分:PDF 2.0”。 ISO。檢索2021-02-03.
  15. ^“ 3D支持格式”。 Adobe。 2009-07-14。存檔原本的在2010-02-12。檢索2010-02-21.
  16. ^“ Acrobat和Reader中支持的文件格式”.helpx.adobe.com。檢索2020-03-22.
  17. ^“ Acrobat 3D的JavaScript | Adobe Acrobat開發人員中心”.www.adobe.com。檢索2020-03-22.
  18. ^普拉維茲,吉姆。“為了捍衛COS,或者為什麼我愛JSON和討厭XML”.jimpravetz.com。從2014-05-02的原件存檔。{{}}:CS1維護:不適合URL(鏈接)
  19. ^Adobe Systems,PDF參考,第39-40頁。
  20. ^“使用內容流”.PikePDF文檔。
  21. ^“ Adobe開發人員連接:PDF參考和對PDF規範的Adobe擴展”。 Adobe系統。檢索2010-12-13.
  22. ^霍華德,賈奇。“桌面出版:基本14個字體 - 定義”.關於網絡技術。存檔原本的2016年6月14日。
  23. ^“ PDF字體水族館”(PDF).
  24. ^“ PDF參考第六版,版本1.7,表5.11”(PDF).
  25. ^“ PDF混合模式附錄”(PDF).
  26. ^達夫·約翰遜(Duff Johnson),2004年4月22日什麼是標記的PDF?
  27. ^“ PDF可以訪問嗎?”.做 - 殘疾,機會,互聯網工作和技術。華盛頓。 2021年4月8日。
  28. ^“ freemypdf.com - 從可查看的PDF中刪除密碼”.freemypdf.com.
  29. ^傑里米·柯克(Jeremy Kirk)(2008年12月5日)。“ Adobe承認新的PDF密碼保護較弱”.MacWorld.
  30. ^布萊恩·吉尼亞德(Bryan Guignard)。“ PDF有多安全”(PDF).
  31. ^“ PDF安全概述:優勢和劣勢”(PDF).
  32. ^一個bcdeAdobe Systems Incorpored(2008-07-01),文檔管理 - 便攜式文檔格式 - 第1部分:PDF 1.7,第一版(PDF),檢索2010-02-19
  33. ^“ PDF不安全網站”.pdf-insecurity.org.
  34. ^“ ISO 32000-1:2008文檔管理 - 便攜式文檔格式 - 第1部分:PDF 1.7”。國際標準化ISO組織。檢索3月22日2016.
  35. ^“ ETSI TS 102 778-1 v1.1.1(2009-07):電子簽名和基礎設施(ESI); PDF高級電子簽名配置文件;第1部分:PAINES概述 - PADES的框架文檔“框架”(PDF)。歐洲電信標準學院ETSI。檢索3月22日2016.
  36. ^“ PDF中的鏈接和附件”.
  37. ^Adobe PDF參考版本1.7,第10.2節
  38. ^“熟悉Adobe Reader>了解偏好”。檢索2009-04-22.
  39. ^“ PDF可訪問性”。 Webaim。檢索2010-04-24.
  40. ^喬·克拉克(Joe Clark)(2005-08-22)。“關於PDF可訪問性的事實和意見”。檢索2010-04-24.
  41. ^“可訪問性和PDF文檔”。網絡可訪問性中心。存檔原本的在2010-04-27。檢索2010-04-24.
  42. ^“ PDF可訪問性標準v1.2”。檢索2010-04-24.
  43. ^PDF可訪問性(PDF)加利福尼亞州立大學,歸檔原本的(PDF)在2010-05-27,檢索2010-04-24
  44. ^Libreoffice幫助 - 出口為PDF,檢索2012-09-22
  45. ^出口PDF/A用於長期存檔,2008-01-11
  46. ^Biersdorfer,J.D。(2009-04-10)。“一周的提示:Adobe Reader的'讀取'功能”.紐約時報。檢索2010-04-24.
  47. ^使用輔助技術訪問PDF文檔:屏幕閱讀器用戶指南(PDF),Adobe,檢索2010-04-24
  48. ^“ GNU PDF - PDF知識 - 形成數據格式”。存檔原本的在2013-01-01。檢索2010-02-19.
  49. ^“關於PDF形式”。存檔原本的在2011-04-29。檢索2010-02-19.
  50. ^Demling,彼得(2008年7月1日)。“將XFA形式轉換為Acroform?”。檢索2010-02-19.
  51. ^“從Adobe Acrobat形式遷移到XML形式”。存檔原本的在2010-10-06。檢索2010-02-22.
  52. ^一個bXML形成數據格式規範,版本2(PDF),2007年9月,存檔原本的(PDF)在2018-07-30,檢索2010-02-19
  53. ^“ ISO 19444-1:2019(EN)”.www.iso.org。檢索12月3日2020.
  54. ^Adobe Systems Incorpored(2007-10-15)。“使用Acrobat表單並在網絡上形成數據”。檢索2010-02-19.
  55. ^FDF數據交換規範(PDF),2007-02-08,檢索2010-02-19
  56. ^“開發人員資源”.adobe.com。存檔原本的在2016-02-27。
  57. ^1萬億美元退款:如何欺騙PDF簽名。CCS '19。ACM數字圖書館,ACM SIGSAC計算機和通信安全會議。2019年11月6日。第1-14頁。doi10.1145/3319535.3339812.ISBN 9781450367479.S2CID 199367545.
  58. ^實用解密洩露:破壞PDF加密。CCS '19。ACM數字圖書館,ACM SIGSAC計算機和通信安全會議。2019年11月6日。第15-29頁。doi10.1145/3319535.3354214.ISBN 9781450367479.S2CID 207959243.
  59. ^“影子攻擊:隱藏和替換簽名的PDF中的內容”。互聯網社會,網絡和分佈式系統安全研討會。
  60. ^“處理危險途徑 - 關於便攜式文檔格式的安全和隱私”。互聯網社會,網絡和分佈式系統安全研討會。
  61. ^“便攜式文檔缺陷101”。黑帽。
  62. ^Adobe論壇,公告:PDF附件病毒“桃子”,2001年8月15日。
  63. ^“安全公告和諮詢”。 Adobe。檢索2010-02-21.
  64. ^“史蒂夫·吉布森(Steve Gibson) - SecurityNow播客”.
  65. ^“惡意PDF執行沒有漏洞的代碼”.PCMAG。存檔原本的2010年4月4日。
  66. ^帕塔克(Khamosh)(2017年10月7日)。“如何從iPhone和iOS 11中的iPad上的網頁創建PDF”.iPhone黑客。檢索2月2日,2018.
  67. ^“ 2007 Microsoft Office Suite Service Pack 2(SP2)的描述”.微軟.存檔從2009年4月29日的原始。檢索2009-05-09.
  68. ^在2014-04-02,日期為2009-02-10的註釋當前FSF高優先級免費軟件項目作為來源。但是,後一頁的內容會隨著時間而變化。
  69. ^“目標和動機”.gnupdf.org。gnupdf。2007-11-28。檢索2014-04-02.
  70. ^Lee,Matt(2011-10-06)。“ GNU PDF項目留下了FSF高優先級項目列表;任務完整!”.fsf.org。免費軟件基金會。檢索2014-04-02.
  71. ^Poppler首頁“ Poppler是基於XPDF-3.0代碼庫的PDF渲染庫。”(上次檢查2009-02-10)
  72. ^XPDF許可證“ XPDF已獲得GNU通用公共許可證(GPL),版本2或3的許可。”(最後一次檢查2012-09-23)。
  73. ^Apache PDFBox項目。檢索2009-09-19。
  74. ^“ Adob​​e PDF打印引擎”.adobe.com.
  75. ^“JAWS®3.0PDF和Postscript RIP SDK”.GlobalGraphics.com。存檔原本的在2016-03-05。檢索2010-11-26.
  76. ^“丑角多圈”。存檔原本的2014-02-09。檢索2014-03-02.
  77. ^按準備的PDF文件“對於有興趣直接從數字文件或pdfs商業印刷的任何人。”(最後一次檢查2009-02-10)。
  78. ^“ PDF作為標準打印作業格式”.Linux基金會.Linux基金會。檢索6月21日2016.

進一步閱讀

外部鏈接