跳到內容
getnextpdf.com

PHP 食譜

這是 PHP 原生 NextPDF 食譜的索引——這些頁面以任務為中心且可執行,直接針對核心 PHP API 撰寫。nextpdf 核心儲存庫擁有並驗證 docs/public/cookbook/php/ 之下的每一道食譜。每一道食譜都由一支 examples/*.php 指令稿與一個 tests/Cookbook/Php/ 測試框架背書。接著,匯整器會將每個頁面拉進本網站,並一併帶入其來源出處。

由於本頁是一份索引,它不對任何食譜做行為宣稱。每一列都記錄該食譜的意圖、它所操作的核心模組,以及它宣告的可重現性設定檔。設定檔與任何符合性宣稱都存在於食譜頁面本身,來源是該頁面的前置資料與其儲存庫內測試——而非本頁。關於整合(框架/轉譯器/服務)食譜,請參閱 整合食譜。關於每一道可執行食譜都遵循的契約,請參閱 食譜慣例

每一道食譜都在核心儲存庫 docs/public/cookbook/php/ 之下撰寫,並由匯整器發佈到本網站。其 slug 遵循單一慣例:單一區段。

/cookbook/php/<recipe>/

<recipe> 以 kebab-case 命名食譜的意圖(例如 render-html-to-pdf,而非模組名稱 html)。它是小寫、以連字號分隔、不含版本號,並以單一結尾斜線收尾。

每一道食譜都宣告它能如實滿足的最嚴格設定檔:

  • bitwise——跨多次執行皆為位元組相同(純粹決定性的內容,所有熵都已固定)。
  • structural——在正規化易變原子(trailer 的 /ID、creation/modification 日期、字型子集前綴——實務上每一份多物件 PDF 都會如此)之後皆相同。
  • semantic——僅要求結構性 AST 與中繼資料等價(已簽署或已加蓋時戳的輸出,或等價性本質上無法達到位元組穩定的輸出)。

設定檔是食譜頁面透過其測試框架證明的一項屬性。本索引僅回報該頁面宣告的值。

建構文件、分頁並設定樣式。

食譜它的作用模組設定檔
render-html-to-pdf將 HTML 文件轉譯為 PDFHtmlstructural
style-with-css對 HTML 轉譯套用 CSSHtmlstructural
html-table-layout佈局 HTML 表格Htmlstructural
paginate-long-html為長篇 HTML 文件分頁Htmlstructural
paginate-large-html-tables跨頁分頁大型 HTML 表格Htmlstructural
render-rtl-arabic-html轉譯由右至左的阿拉伯文 HTMLHtmlstructural
compose-text-and-fonts以排版控制組合文字排版structural
embed-and-subset-fonts嵌入並子集化字型字型structural
cjk-vertical-writing以直書模式排版 CJK 文字排版structural
multi-page-document建構多頁文件文件structural
headers-and-footers加入連續的頁首與頁尾佈局structural

向量、影像、圖層與座標空間。

食譜它的作用模組設定檔
draw-vector-graphics繪製向量圖形圖形structural
gradients-and-transparency套用漸層與透明度圖形structural
embed-images嵌入點陣影像內容structural
add-watermarks-and-backgrounds為頁面加入文字與影像浮水印或背景內容structural
cmyk-spot-color-and-icc-profiles產生適合印刷的 CMYK 與特別色色彩structural
embed-file-attachments嵌入檔案並建立 PDF 組合內容structural
optional-content-layers使用選用內容(圖層)圖形structural
transform-coordinate-space變換座標空間圖形structural

書籤、連結、註解與 AcroForm 欄位。

食譜它的作用模組設定檔
bookmarks-and-toc建構書籤與目錄導覽structural
generate-dynamic-table-of-contents產生動態目錄導覽structural
links-and-annotations加入連結與註解導覽structural
generate-barcodes產生條碼條碼bitwise
gs1-composite-barcodes產生 GS1 複合式條碼(CC-C 載體)條碼structural
fill-pdf-form填寫 AcroForm表單structural
flatten-form-fields平面化表單欄位表單structural
form-field-validation-and-flatten-with-state驗證表單欄位並連同狀態平面化表單structural

設定中繼資料與檢視器行為。

食譜它的作用模組設定檔
set-document-metadata設定文件中繼資料中繼資料structural
set-viewer-preferences設定檢視器偏好文件structural

組裝、分割並最佳化既有文件。

食譜它的作用模組設定檔
merge-external-pdfs合併外部 PDF 或附加頁面文件structural
split-and-extract-pages分割 PDF 並擷取頁面範圍文件structural
optimize-pdf-file-size以壓縮與子集化縮減 PDF 檔案大小文件structural

加密、簽署、無障礙與設定檔輸出。這些食譜會在各自的食譜頁面標明「支援≠符合性」與「存在≠有效性」的邊界。

食譜它的作用模組設定檔
encrypt-aes256以 AES-256 加密並設定權限旗標安全性structural
encrypt-with-permissions以權限旗標加密安全性structural
sign-pades-b-b套用 PAdES 簽章(B-B 與 B-T)安全性semantic
inspect-existing-signature檢查既有簽章檢查semantic
tagged-pdf-ua2為 PDF/UA-2 產出標記化結構無障礙semantic
accessible-pdfua2-from-html從 HTML 為無障礙 PDF/UA-2 產出標記化結構無障礙semantic
pdf-a-4-output產生 PDF/A-4 輸出符合性semantic
pdfa4-conformance-gate產生 PDF/A-4 輸出,並以外部驗證器作為關卡符合性semantic
validate-conformance依符合性設定檔進行驗證合規semantic

從 PDF 讀回內容與結構。

食譜它的作用模組設定檔
extract-text-content擷取文字內容文字semantic
multilingual-copy-paste-extraction讓 CJK 與阿拉伯文 PDF 能正確複製貼上文字structural
parse-and-inspect-pdf剖析並檢查 PDF檢查semantic
inspect-layout-boxes檢查佈局方框檢查semantic

橫跨數個模組的模式。

食譜它的作用橫跨設定檔
worker-safe-batch-rendering在長時間執行的工作行程中安全地轉譯(共用登錄、有界的記憶體)Core · Performance · Supportsemantic
streaming-and-memory剖析串流與記憶體使用Performancebitwise
exception-aware-error-handling以 NextPDF 例外階層處理錯誤Exception · Contractsstructural
custom-error-recovery-patterns實作自訂錯誤復原與重試策略Exceptionsemantic
observe-with-opentelemetry以 OpenTelemetry 觀測轉譯Observability · Telemetry · Eventsemantic

上方每一道食譜都已在核心儲存庫中發佈,並由一支 examples/*.php 指令稿與一個 tests/Cookbook/Php/ 測試框架測試背書。當上游撰寫新食譜時,只要其範例與測試落地,就會出現在這裡。

  • 整合食譜——框架、轉譯器與服務的整合索引。
  • 食譜慣例——本索引中每一道可執行食譜都遵循的契約。