可移植文档格式

歷史

Adobe Systems在1993年免費提供了PDF規範，當時與PDF一起競逐跨平台文件格式的，還包括 DjVu（仍在開發中）、Envoy、Common Ground Digital Paper、Farallon Replica 及 Adobe 自己本身的 PostScript（.ps）格式。在全球資訊網及HTML文字尚未興起時，PDF在桌面出版工作流技術當中很受歡迎。PDF起初為Adobe所控制的專有格式，直到2008年7月1日才被官方以開放標準發行，並由國際標準化組織以 ISO 32000-1:2008 發布。 此後，標準的控制權便移轉到了產業專家志願者所組的ISO委員會底下。2008年，Adobe在 ISO 32000-1 發布了公共專利許可，對於製做、使用、銷售及發布PDF相容的應用所需的專利，皆賦予買斷式授權。
PDF 1.7 含有一些Adobe所定義的專有技術，如Adobe XML表單結構（XFA）和JavaScript中對Acrobat的擴充。這些技術被 ISO 32000-1 參照為對於該規範之完整實現不可或缺且規範性的，但是它們並沒有被標準化，其規格也只有發布在Adobe的網站上。這些技術大部份也沒有被熱門的PDF第三方實現所支援。
2017年7月28日，發布了 ISO 32000-2:2017（PDF 2.0）。ISO 32000-2 不將任何專有技術當作是規範性參照檔案。

向量圖

PDF中的向量圖如同在PostScript當中一樣，是由路徑組成的。路徑通常由直線和多項的貝茲曲線組成，但也可以從文字的外廓構建。不同於PostScript，PDF不允許帶直線和曲線的單一路徑去組合文字外廓。路徑可被描繪、填充或用於剪取。描繪和填充可用任意圖形狀態中的色彩集，包括式樣。
PDF支援多種調色盤類型。最簡單的是瓷磚式樣，其中藝術作品的一部分被指定以被重複地繪製。這可能是彩色瓷磚式樣，帶有在式樣物件中的指定的顏色，或是延遲色別編碼到式樣已繪製時候的沒有顏色的瓷磚式樣。從PDF 1.3開始還有了底紋式樣, 連續繪製不同的顏色。七種底紋式樣中最簡單的是軸向底紋（Type 2）和徑向底紋（Type 3）。

文字

文字在PDF中以頁面內容字串流中的「文字元素」呈現出來。一個文字元素指定字元應在指定位置描繪。字元用所選字型源的編碼指定。

字型

PDF中的字型物件是對數位字型的描述。可能是字型中的字元的描述，或者是包含嵌入的字型檔案。後者叫嵌入字型，前者叫非嵌入字型。所嵌入的字型檔案基於廣泛使用的標準數位字型檔案：Type 1（及其壓縮版變種CFF）、TrueType和（自PDF 1.6版起）OpenType。另外PDF支援由PDF圖形處理器描述的字型元件中的Type 3變種。

編碼

文字字串中，字元用以編碼對映字形於目前字型的字元程式碼（整數）顯示。預定義的編碼有多種，包括WinAnsi、MacRoman，以及大量東亞語言編碼，而且字型可以有自己的編碼。（即使WinAnsi和MacRoman編碼取自Windows和Macintosh作業系統中歷史上的專有編碼，用這類編碼的內容在任何平台上都執行的好。）PDF可以指定可以使用的預定義的編碼、字型內建編碼，或者提供預定義或內建編碼的查詢表（不對TrueType字型推薦）。PDF中的編碼機制是為Type 1字型設計的，而且應用到TrueType字型的規則是複合的。
對於大型字型或者帶非標準字形的字型，特殊編碼Identity-H（用於橫寫）或Identity-V（用於豎寫）被使用。如果關於字元的語意資訊被預定義，這類字型有必要提供ToUnicode表。

透明度

PDF的原始圖像模型像PostScript的opaque：頁面上描繪的每個物件完全替換先前在同一位置標記的任何東西。在PDF 1.4中圖像模型被擴充以允許透明度。使用透明度的時候，新物件與先前標記的物件相互作用產生混合的特效。透明度添加到PDF由寫到PDF 1.3及早期的規格的產品中被忽略設計的新的擴充方法完成。結果，使用少量透明度的檔案在舊的檢視器中可能會以被接受地視圖檢視，但大量用透明度的檔案在舊的檢視器中會顯示不正確而沒警告。
透明度擴充基於透明度組、混合模式、形狀和alpha的關鍵概念。這一模式緊密對應Adobe Illustrator 9的特性。混合模式基於當時Adobe Photoshop所用的。PDF 1.4規格出版的時候，用於計算混合模式的公式被Adobe保密。此後它們被公布。
PDF規格中透明度組的概念獨立於Adobe Illustrator之類的應用中已有的「組」或「層」的概念。那些反映物件之上的邏輯關係的分組在編輯那些物件的時候有意義，但不是圖像模型的一部分。

Adobe XML表單架構（XFA）

PDF 1.5格式中，Adobe Systems引入了新的、專有的表單格式，名為Adobe XML表單架構（XFA）。XFA 2.02參照在PDF 1.5規格（及以後的版本），但單獨描述為《Adobe XML Forms Architecture (XFA) Specification》，有多個版本。XFA規格沒有包括在ISO 32000-1 PDF 1.7並僅僅作為由Adobe建立的外部專有規格參照。在ISO 32000-2（PDF 2.0）當中被棄用。
Adobe XFA表單不與AcroForms相容。Adobe Reader包含使用XFA表單的「禁用特性」，僅在開啟只來自Adobe的可行的技術建立的PDF文件時啟用。XFA Forms不相容於Adobe Reader 6以前的版本。
XFA表單可建立或用作PDF檔案或作為XDP（XML封包）檔案。PDF中XFA源的格式由XML封包規格描述。XDP可能作為單獨的文件，也可能在PDF文件的內部攜帶。XDP提供打包周邊XML容器內部的表單元件的機制。XDP也可以打包一個PDF檔案，伴隨XML表單和模板資料。PDF可能包含XFA（在XDP格式中），XFA也可能包含PDF。在用於XFA表單XFA（XML表單架構）語法從一個應用移到另一個應用的時候，它們必須以XML封包封裝。
當PDF和XFA結合在一起，結果是任意頁面中的XFA表單覆蓋了PDF背景。這一架構有時被提作XFAF（XFA Foreground，XFA前景）。替代方法是直接在XFA（不用PDF，或者只用帶有PDF標記的最小構造XFA的容器的「外掛PDF」，或用靜態XFA表單的預彩現描述作為PDF）展開所有表單，包括樣板檔案。這有時被稱為全XFA。
PDF 1.5開始，可變文字欄位的文字內容，以及標記註解可能包含格式資訊（樣式資訊）。這些富文字字串是符合XML表單架構規格2.02（本身是XHTML 1.0規格的子集）定義的富文字慣例的XML文件，擴充了CSS2樣式屬性中受限的設定。PDF 1.6中，PDF支援XML表單架構（XFA）規格2.2定義的富文字元素和屬性。PDF 1.7中，PDF支援XML表單架構（XFA）規格2.4定義的富文字元素和屬性。
多數PDF處理器不處理XFA內容。生成外掛PDF的時候會被建議包含於PDF標記的一個簡單的單頁PDF圖像顯示警告（如：「為了檢視本文件的全部內容，你需要新版PDF檢視器」等。）能彩現XFA內容的PDF處理器應該不現實警示頁面圖像或者以動態表單內容迅速替換。帶有一些XFA彩現功能支援的PDF軟體的例子包括Adobe Reader for Windows、Linux、Mac OS X（但不是Adobe Reader Mobile for Android / iOS）或Nuance PDF Reader。

邏輯架構與可讀性

「標籤」PDF（ISO 32000-1:2008 14.8）含有文件架構和語意資訊，以允許可靠的文字抽取及使用。技術上來說，標籤PDF是建立在PDF 1.3 所引入的邏輯結構框架上，對於其格式的程式化使用 。標籤PDF定義了一組標準結構型別及屬性，允許頁面內容（文字、圖形和圖片）之後被提取並再利用於其他用途。
當PDF檔案僅供列印時，並不要求支援標籤PDF。因為此一特色是非必須的，且 ISO 32000-1 對於標籤PDF的規則相對模糊，所以在消費性裝置當中，包括輔助技術（AT），標籤PDF的支援參差不齊。
一個專門針對可讀性、為ISO標準之子集的PDF規格：PDF/UA 於2012年首次發布。

安全和簽章

一份PDF檔案可能以用於驗證的擔保或者數位簽章加密。
由Acrobat PDF提供的標準擔保以兩種不同的方法及兩種不同的密碼組成，用戶密碼，加密檔案並阻止開啟；所有者密碼，指定即使文件被解密的時候應該被限制的操作，可以包括：列印、從文件複製文字和圖像、修飾文件，或者添加或刪除文字注釋和AcroForm欄位。用戶密碼（控制開啟）加密檔案並要求密碼破解以去除，難度取決於密碼長度及加密演算法——它可能非常安全（假設好的密碼及加密演算法沒有已知的攻擊手法）。所有者密碼（控制操作）不加密檔案，相反取決於用戶端軟體以遵循這些限制，並且不安全。所有者密碼可以被許多通常可用的PDF破解軟體移除，包括一些自由的線上服務。由此，文件作者放在PDF文件中的使用限制不安全，而且不能在一旦檔案被散布時保證；這一危險在使用Adobe Acrobat軟體以建立或編輯PDF檔案應用這類限制的時候顯現出來。
即使沒有移除密碼，許多免費或開源PDF閱讀器忽略權限「保護」並允許用戶列印或者做文字摘要的複製，就像文件沒被密碼保護限制一樣。
一些解決方案像Adobe的LiveCycle Rights Management更強化資訊權利管理的方式，不僅能限制誰能開啟文件，而且以標準的安全處理程式做不到的方式可靠的執行權限。

檔案附件

PDF檔案可以有文件級和頁面級的檔案附件，讀者可存取並開啟或儲存於原生的檔案系統。PDF附件可作為範例用pdftk加到已有的PDF檔案。Adobe Reader提供對附件的支援，而且基於Poppler的閱讀器如Evince或Okular也有對文件級附件的支援。

元資料

PDF檔案可包含兩種類型的元資料。第一種是文件資訊字典，一套像作者、標題、主題、建立及更新日期的關鍵字/值欄位。這儲存於可選的檔案尾部。有一小組欄位是有定義的，而且如果有需要，可以用附加的文字欄位擴充。
後來在PDF 1.4中，對元資料流的支援被加入，用可延伸元資料平台（XMP）來添加像在其他檔案格式那樣的基於XML標準的可延伸的元資料。這允許元資料附加到文件中的任何字串流，諸如關於嵌入式插圖的說明，以及整個文件（附加到文件目錄），使用可延伸的綱要。

Mars

Adobe曾探索基於XML的下一代PDF，代號Mars。
Mars的圖形元素的格式有時簡單地描述為SVG，但根據2007年11月的0.8版草案規格（§3 Mars SVG Support）這一格式實際上僅僅是接近於SVG：它同時包含SVG新增和移除的部分，因此一般不可被標準SVG工具檢視或建立：一些東西在SVG檢視器和Mars檢視器之間看起來明顯不同。
Adobe Systems於2008年停止開發Mars。

掃描的文件

由掃描器硬拷貝文件建立的PDF檔案包含原始文字沒有由相同的文件直接建立的PDF檔案那樣相同的架構。掃描的文件原本地包含了文件的圖片，沒有關於文字的資訊。只要用戶可以看到它只是另一個PDF檔案，帶有從其他任意地方來的不能區分的名稱和副檔名；好的掃描器或許會精確地視作與原生的PDF檔案相同，即使是視覺上品質很差的檔案，常常帶有扭曲的頁面，給出了其本性。然而，檔案大小會明顯不同，而且不能搜尋文字。對於精確品質的掃描可以用帶光學字元辨識（OCR）的合適的軟體辨識文件中的文字，並嵌入文件中而使其可以檢索，取決於OCR的準確性。

可讀性

PDF檔案可專門為讓殘疾人閱讀而建立。截至2014年PDF檔案格式在使用中可以包含標籤（XML）、替換文字、標題、音訊描述等。置標PDF在PDF/A-1a規格中被要求。一些軟體可以自動生成置標PDF，但這個特性不被預設啟用。常見的螢幕閱讀器，包括JAWS、Window-Eyes、Hal和Kurzweil 1000及3000可以朗讀置標PDF，就像Acrobat和Acrobat Reader後來的版本一樣。此外，置標PDF可為有視覺障礙的讀者重排和放大。問題仍存在於給舊版PDF和從掃描的文件生成的PDF加標記。這些情況下，可讀性標記和重排就不可用，而且必須手動或用OCR技術處理。這些過程對於一些殘疾人是達不到的。
對PDF可讀性的一個重大挑戰是PDF文件有三種不同的視圖，取決於文件的建立，會和其他視圖相矛盾。這些視圖有：物理視圖、標記視圖和內容視圖。物理視圖可以顯示和列印（多數人認為的PDF文件）。標記視圖是螢幕閱讀器和其他存取技術用來給有障礙的用戶帶來高品質導航和閱讀體驗的。內容視圖基於PDF內容字串流中的物件的物理排列，並可能由不完全支援標記視圖的軟體顯示，如Adobe Reader的Reflow特性。
基於ISO 32000-1的可閱讀PDF國際標準PDF/UA在2012年以ISO 14289-1發布，並為可閱讀PDF技術建立規範的語言。

病毒和漏洞

PDF附件帶病毒最先發現於2001年。這種名為OUTLOOK.PDFWorm或Peachy的病毒，會通過Microsoft Outlook以附件的形式將自己傳送至Adobe PDF檔案。然後會用Adobe Acrobat將自身啟用，但不會被Acrobat Reader啟用。
隨著時間推移，新的漏洞在Adobe Reader的多個版本被發現，促使企業發出安全性修復。其他PDF閱讀器也容易受到影響。一個惡化的因素是PDF閱讀器會被組態在網頁嵌入PDF時候自動啟動，為攻擊帶來了載體。如果惡意的網頁包含一份利用PDF的漏洞感染的PDF檔案，系統會無法抵抗，即使瀏覽器是安全的。其中一些漏洞是由於PDF標準允許PDF文件用JavaScript指令碼指令的結果。在PDF閱讀器中禁止執行JavaScript有助於緩解那些未來的漏洞，即使這不阻止PDF檢視器其他部分的漏洞。安全專家稱JavaScript對於PDF閱讀器來說不是基本的，而且出于禁止JavaScript的安全保障勝過任何造成的相容性問題。阻止PDF檔案漏洞的一種方式是有本地或網路服務能在閱讀前把檔案轉換成其他格式。
2010年3月30日安全專家Didier Stevens報告Adobe Reader和福昕閱讀器有如果用戶經詢問允許啟動時執行惡意可執行檔的漏洞。

使用限制和顯示

PDF可能會被加密，以致檢視或編輯內容時會要求輸入密碼。PDF參考書同時定義40位和128位元加密，都運用RC4和MD5的複雜系統。PDF參考書還定義第三方可以制定他們自己的PDF加密系統的方式。
PDF檔案或許還包含嵌入的DRM限制，提供限制複製、編輯或列印的進一步控制。複製、編輯或列印的限制取決於閱讀軟體遵循他們，因此他們提供的安全機制是有限的。
PDF參考書有面向終端使用者概覽的技術細節。就像HTML檔案一樣，PDF檔案可以向網路伺服器提交資訊。這可以被用來追蹤用戶端PC的IP位址，這一過程被稱作背景連線通訊。Acrobat Reader升級到7.0.5以後，用戶會被提示「...via a dialogue box that the author of the file is auditing usage of the file, and be offered the option of continuing」。
Adobe通過LiveCycle安全伺服器提供針對特定文件設定安全策略的方法。這可以包括要求用戶認證並限制文件可被離線開啟的時候可以被存取或者載入的時期。PDF文件一旦被繫結到策略伺服器和指定策略，這一策略可以被所有者更改或復原。這一策略控制文件，否則就是「在自然狀態下」。每個文件開啟或關閉事件也可以被策略伺服器追蹤。策略伺服器可以由個人設定，或Adobe通過Adobe線上服務提供公共服務。和其他DRM形式一樣，依附這些策略和限制有可能會，也有可能不會被閱讀器軟體執行。

預設的顯示設定

PDF文件可以包含顯示設定，包括頁面顯示輸出和縮放級別。開啟文件的時候Adobe Reader用這些設定去替換用戶的預設設定。免費的Adobe Reader不能移除這類限制。

軟體

PDF通常免費提供，而且許多版本可以從多個來源獲得。
有許多軟體選項用來建立PDF，包括內建於Mac OS X及多數Linux發行版、LibreOffice、Microsoft Office 2016、WordPerfect 9、Scribus許多適用於Microsoft Windows的PDF列印驅動、pdfTeX排版系統、DocBook PDF工具、圍繞Ghostscript及Adobe Acrobat本身開發的應用以及Adobe FrameMaker的PDF排印功能。Google的線上辦公套件Google Docs也允許上傳、儲存為PDF。
光柵圖像處理器（RIPs）用於轉換PDF檔案為點陣圖格式以適應於成像在紙上及其他媒體的印表機、數字生產用印刷機以及一種被稱為柵格化的行程中的印前。有直接處理PDF能力的RIP包括在出自Adobe Systems和Jaws的Adobe PDF排印引擎與出自Global Graphics的Harlequin RIP當中。

注釋

Adobe Acrobat是允許用戶給已建立的PDF檔案注釋、突顯和添加筆記的專有軟體的一個案例。作為自由軟體可用的（GNU通用公共許可協定許可下）一個UNIX應用是PDFedit。另一個GPL授權的原生UNIX應用是Xournal。Xournal允許以不同的字型和顏色注釋，以及用於為文字或段落的快速下劃及突顯線條的規則。Xournal還有一個用於方形、矩形和圓形的形狀辨識工具。Xournal中的注釋可以被移動、複製或貼上。免費軟體福昕閱讀器，適用於Microsoft Windows，允許注釋文件。Tracker Software的PDF-XChange Viewer的免費版允許不受限制的注釋和標記。蘋果Mac OS X內建PDF閱讀器Preview也可以像免費軟體Skim那樣注釋，後者支援與LaTeX、SyncTeX和PDFSync整合，以及與BibDesk參考文獻管理軟體整合。免費軟體Qiqqa可以建立總結所有注釋的報告，而且筆記通過他們的PDF函式庫做出來。
對於行動版的注釋，iAnnotate PDF（來自Branchfire）和GoodReader（來自Aji）允許對PDF注釋以及匯出注釋的摘要。
還有一些支援注釋PDF及其他文件格式web注釋系統，如A.nnotate、crocodoc、WebNotes。
在PDF被期望擁有紙質文件的全部功能的地方，墨水注釋會被要求。一些接受來自滑鼠的墨水輸入的程式可能不足以對應平板上的手寫輸入。PC上已有的解決方案包括PDF Annotator和Qiqqa。

其他

PDF軟體作為線上服務的例子包括用於檢視和儲存的Scribd、用於線上編輯的Pdfvue和用於PDF轉換的Zamzar。
1993年出自Global Graphics的Jaws點陣圖處理器成為第一個不用轉換到其他格式原生產生PDF的銷售用的印前RIP。公司在1997年給他們的Harlequin RIP發布了一個有同樣相容性的更新。
愛克發-吉華1997年推介並出售Apogee，第一個基於PDF的印前工作流系統。
許多商業的膠印機接受遞交發布就緒的PDF檔案作為印刷來源，特別是PDF/X-1a子集和相同的變種。發布就緒的PDF檔案的提交是對接收已收集本地檔案工作的不確定性需求的替代。
PDF被選為Mac OS X的「本地」元檔案格式，取代早期Mac OS的PICT格式。Quartz圖形層的圖像模式基於Display PostScript和PDF共有的模式，產生了暱稱Display PDF。Preview應用與Safari網頁瀏覽器2.0及以後版本都可以顯示PDF檔案。對PDF的系統級支援使得Mac OS X應用可以自動建立PDF文件，給它們提供OS標準的列印架構支援。檔案可以按檔案檔頭輸出為PDF 1.3格式。在Mac OS X 10.0到10.3版截圖時，圖像也可以截取為PDF；後來的版本儲存截圖為PNG檔案，雖然這一行為若有需要可以重新設定為PDF。
一些桌面印表機也支援直接列印PDF，可以不用額外的輔助生成PDF資料。目前，所有PDF相容印表機也支援PostScript，但多數PostScript印表機不直接支援PDF列印。
自由軟體基金會曾認為他們的一個高優先級計劃「提供自由、高品質和全功能的一組軟體函式庫及程式實現PDF檔案格式及ISO 32000標準的相關技術」。而在2011年，GNU PDF計劃從「高優先級」列表中被移除，因為Poppler函式庫的完善，激勵了像Evince之類的應用與GNOME桌面環境的廣泛應用。Poppler基於Xpdf程式碼。PDF軟體列表亦列出可用的商業開發用軟體函式庫。
Apache軟體基金會的Apache PDFBox計劃是一款用於處理PDF文件的開放原始碼Java函式庫。PDFBox以Apache許可證授權發布。