比較與部署指南
不確定需要哪些套件?使用下方的互動式精靈,或瀏覽部署情境與決策矩陣,找到最適合您的設定。
找到您的完美設定
專案類型
產生您的設定
設定產生器
選擇套件和選項,自動產生可直接使用的設定檔。
composer require yeeefang/tcpdf-next部署情境
不同的主機環境有不同的功能支援。以下是各環境的最佳搭配:
共享主機
有限的 PHP 存取,無 Shell。僅 Core 搭配基本字型。無 Chrome/RoadRunner。
VPS (PHP-FPM)
完整伺服器控制。安裝 Chrome 支援 HTML→PDF。適合大部分應用。
VPS + RoadRunner
RoadRunner常駐 Worker 消除冷啟動。吞吐量提升 3-7 倍。
專用伺服器
完整資源。適合 Pro 功能(PAdES、PDF/A-4、HSM)。
專用伺服器 + RoadRunner
RoadRunner最大吞吐量。4 Workers 可達 9,000+ docs/s。
Kubernetes / Docker
RoadRunner水平擴展。RoadRunner 作為 Worker 程序。生產級部署。
效能:標準 PHP-FPM vs RoadRunner
RoadRunner 將您的 PHP 應用程式保留在記憶體中作為持久化工作程序,消除冷啟動並大幅提升吞吐量。
標準 PHP-FPM vs RoadRunner
▲ 越高越好PHP 8.5.3 + OPcache + JIT · Docker 4 CPUs / 16 GB · i9-13900K · 20 次中位數
何時使用 RoadRunner
當您需要高吞吐量(每分鐘數百個 PDF)或低延遲(亞毫秒級回應時間)時,建議使用 RoadRunner。對於每次請求只產生少量 PDF 的典型 Web 應用程式,標準 PHP-FPM 完全足夠。
使用情境決策矩陣
針對您的特定使用情境,應該安裝哪些套件?
| 使用場景 | |||||||
|---|---|---|---|---|---|---|---|
| 發票與報表產生 | ✅ | ⚪ | ⚪ | ⚪ | ⚪ | ⚪ | — |
| 電商(HTML→PDF) | ✅ | ✅ | ⚪ | ⚪ | ⚪ | ⚪ | — |
| 無障礙文件(PDF/UA) | ✅ | — | ✅ | ⚪ | ⚪ | ⚪ | — |
| 數位簽章(PAdES) | ✅ | — | ✅ | ⚪ | ⚪ | ⚪ | — |
| 舊版 TCPDF 遷移 | ✅ | ⚪ | — | ⚪ | ⚪ | ⚪ | ✅ |
| 高吞吐量 API | ✅ | ⚪ | ⚪ | ✅ | ✅ | ⚪ | — |
| 歸檔合規(PDF/A-4) | ✅ | — | ✅ | ⚪ | ⚪ | ⚪ | — |
| 大量條碼文件 | ✅ | — | ⚪ | ⚪ | ⚪ | ⚪ | — |
套件相容性
大多數套件可以無縫搭配使用,但有一個例外:
| 組合 | 相容 | 備註 |
|---|---|---|
| Core + 任何套件 | 是 | Core 是必要的基礎套件 |
| Artisan + 任何框架 | 是 | Chrome CDP 適用於所有框架 |
| Pro + Laravel/Symfony/CI | 是 | 在任何框架中都能使用完整的企業級功能 |
| Pro + Adaptation | 否 | Adaptation 封裝了舊版 TCPDF API;Pro 擴展了現代 TCPDF-Next API。請選擇其中一種方式。 |
| Adaptation + 框架 | 是 | 使用 Adaptation 在您的框架中遷移舊版程式碼 |
CJK 與字型注意事項
內建的 Basic 14 字型(Helvetica、Times、Courier 等)僅支援拉丁字元。如果您的文件需要中文、日文或韓文文字,您必須:
- 嵌入 TrueType 字型 — 使用
setFont()搭配支援您所需字元集的 TTF 字型 - 設定字型路徑 — 設定
TCPDF_FONTS_DIR環境變數或使用設定 API - 考慮檔案大小 — CJK 字型通常每個 5-15 MB;使用字型子集化來減小 PDF 大小
// 範例:使用 CJK 字型
$pdf = Document::createStandalone()
->addPage()
->setFont('/path/to/NotoSansCJK-Regular.ttf', '', 12)
->cell(0, 10, '你好世界 こんにちは 안녕하세요');推薦的 CJK 字型
- Noto Sans CJK — Google 的開源 CJK 字型家族(免費)
- Source Han Sans — Adobe 的同等產品(免費)
- 兩者都在單一字型檔案中支援簡體中文、繁體中文、日文和韓文。
共享主機限制
在共享主機上,您通常無法:
- 安裝 Chrome/Chromium(無法使用 Artisan 套件)
- 執行長期運行的程序(無法使用 RoadRunner)
- 安裝 PHP 擴充套件(僅限主機提供的部分)
共享主機的建議設定:
composer require yeeefang/tcpdf-next僅使用 Core 搭配內建的 HTML 解析器來滿足基本的 HTML 轉 PDF 需求。如果需要像素級精確的 HTML 渲染,建議升級到 VPS。
下一步
- 快速入門 — 安裝並建立您的第一個 PDF
- 安裝指南 — 所有套件的詳細安裝說明
- 效能基準測試 — 完整的效能比較數據
- 從 TCPDF 遷移 — 逐步遷移指南