目次
有料 PDF Premium エンジン(Chromium ベース)で追加できること
以下は 標準エンジン(YetiForcePDF) と PDF Premium エンジン の主な違いと、有料契約で得られるメリットです。
| 項目 | 標準エンジン(無償) | PDF Premium(有償) |
|---|---|---|
| レンダリング方式 | 独自 PHP ライブラリ(YetiForcePDF)HTML/CSS のサブセットのみ解釈 | Chromium/Chrome をヘッドレス起動してブラウザと同等に描画・出力 ([PDF Premium |
| CSS 対応 | CSS2 相当。flex/grid・影・透過など高度な CSS3 は非対応 | CSS3・HTML5 完全対応、flexbox / grid / @media / @page などすべて利用可 ([PDF Premium – #1 CRM |
| JavaScript | ―(実行不可) | ブラウザで実行できる JS はそのまま使用可(グラフ描画ライブラリ等も PDF に出力可能) |
| フォント・文字 | 追加 ttf を登録しないと日本語が豆腐化 | Chrome が持つフォント + Web フォントを自動埋め込み。特殊文字・RTL 言語も完全サポート ([PDF Premium – #1 CRM |
| 画像・外部リソース | ローカル画像のみ(外部 URL はサニタイズ) | リモート画像・CSS・WebFont をそのまま読み込み可能 |
| レイアウトの自由度 | ページ毎の固定余白/縦横混在不可 | 印刷用 @page ルール・縦横混在・背景透過・SVG・Canvas などフル機能 |
| ドキュメントサイズ | 複雑な帳票や大量ページだとレイアウト崩れ・速度低下 | ブラウザと同等のレンダリングなので数百~千ページ超でも安定 |
| 導入要件 | 追加コストなし | ①Marketplace で月額課金(19 ユーザー以下で 8€/月~)②サーバに Chromium/Chrome を設置し、config/Components/Pdf.php の $chromiumBinaryPath を設定 ([PDF Premium |
| 選択運用 | ― | テンプレートごとにエンジンを切替可能。既存テンプレートを壊さず段階的移行が可能 |
具体的に「できるようになる」こと(例)
- 日本の帳票レイアウトを“そのまま”再現
- 既存の Web デザイナー用 HTML/CSS をコピーするだけで PDF 化。縦罫線入りの複雑な表、段組み、背景色付き見出しなどが意図どおり出力。
- Web フォント&SVG ロゴの埋め込みがワンクリック
@font-faceで Noto Sans JP を指定すれば自動埋め込み。画像化不要で PDF サイズも縮小。
- JavaScript グラフやバーコード・QR も PDF 出力
- Chart.js や D3.js、JsBarcode で描画後にそのまま PDF 挿入。売上推移グラフ付き請求書などを動的生成。
- 表紙は横向き・本体は縦向きといった混在レイアウト
@page:first { size: A4 landscape; }のように CSS でページごとに方向や余白を指定。
- サイズの大きい商品カタログ(数百ページ超)でも崩れず高速
- Chrome がレンダリングを最適化するため画像・フォントキャッシュが効き、1 PDF にまとめても秒単位で生成。
導入判断の目安
| ケース | Standard で十分 | Premium が推奨 |
|---|---|---|
| 見積書・請求書など A4 1~2 枚、表組中心 | ✔ | |
| Web と同デザインのパンフレット/提案書を自動 PDF 化 | ✔ | |
| 日本語・多言語・縦横混在・SVG ロゴ等を多用 | ✔ | |
| JS で生成するチャート・バーコード付き帳票 | ✔ | |
| サーバ設置が厳しく 外部 SaaS で PDF を作る運用 | ✔(外部変換でも可) | (Chromium 必須のためサーバ制約に注意) |
結論
- 帳票がシンプルで「明細+合計だけ出せれば良い」場合は 標準エンジンで十分。
- Web フロントと同一レイアウトを維持したい/日本語フォント管理を簡素化したい/グラフ等を差し込みたい場合は PDF Premium を導入すると工数と品質の両方を大幅に改善できます。