HTMLレイアウトを管理画面または API で事前登録。生成時はテンプレートのslugと変数だけ送れば、毎回同じデザインの PDF が出力されます。請求書・証明書・契約書など定型文書に最適。
毎回HTML全体を送る代わりに、変数オブジェクトだけ送信。リクエストサイズが平均1/10〜1/100に。
テンプレートを更新すれば、それ以降の生成すべてに反映。クライアント側のコードを触る必要がありません。
管理画面のエディタでシンタックスハイライト・ライブプレビュー付きで編集。エンジニア以外も触れます。
| テンプレートを使う | HTMLを直接送る | |
|---|---|---|
| リクエストサイズ | 数百バイト〜数KB | 数十〜数百KB |
| デザイン変更 | 管理画面で1回更新 | クライアントコードを再デプロイ |
| 向くケース | 請求書・証明書など定型文書 | 1回限りの動的レポート |
| 非エンジニアの編集 | ダッシュボードから可能 | エンジニアのコード変更が必要 |
// Step 1: Register a template once via the dashboard or API
// (HTML body uses {{variable}} placeholders)
// Step 2: Generate a PDF by passing variables
const res = await fetch("/api/pdf/generate-from-template", {
method: "POST",
headers: { "Authorization": `Bearer ${API_KEY}` },
body: JSON.stringify({
template: "invoice",
variables: {
customer: "Acme Corp",
total: 12980,
items: [{ name: "Pro plan", amount: 12980 }],
},
}),
});