JavaScript
JavaScript で画像と PDF を作成する
JavaScript SDK で、テンプレートから画像、PDF、ホスト済みの画像 URL を生成します。
各メソッドは、テンプレート ID とオプションのオブジェクトを受け取ります。オプションはすべて省略できます。
画像を作成する
createImage はテンプレートをレンダリングし、画像のバイト列を返します。
テンプレート ID。たとえば tpl_xxx です。
テンプレートのレイヤーに設定する値。各項目は name でレイヤーを指定します。指定しなかったレイヤーは、テンプレートの値のままです。各レイヤーが受け付けるフィールドは、Modifications にあります。
画像の形式。
import { writeFile } from "node:fs/promises"
const { result, error } = await bannerify.createImage("tpl_xxx", {
modifications: [
{ name: "headline", text: "Launch promo" },
{ name: "price", text: "$29" },
],
format: "webp",
})
if (error) throw new Error(error.message)
await writeFile("launch-promo.webp", Buffer.from(result))
result は ArrayBuffer です。ブラウザやエッジランタイムでは、Response のボディとして返し、Content-Type ヘッダーに画像の種類を設定してください。
PDF を作成する
createPdf は、同じ templateId と modifications を受け取ります。format オプションはありません。
const { result, error } = await bannerify.createPdf("tpl_invoice", {
modifications: [
{ name: "customer", text: "Acme Studio" },
{
name: "line-items",
columns: ["Item", "Qty", "Total"],
rows: [{ Item: "Automate plan", Qty: 1, Total: "$29.00" }],
},
],
})
if (error) throw new Error(error.message)
await writeFile("invoice.pdf", Buffer.from(result))
保存済み画像を作成する
createStoredImage は、画像をレンダリングして保存し、バイト列の代わりに URL を返します。リンクをメール、データベースの行、ノーコードツールに入れたいときに使います。
createImage のオプションに加えて、s3Config を受け付けます。
S3 互換の自分のバケットにファイルを保存します。Scale プランまたは Enterprise プランが必要です。指定しない場合、Bannerify はファイルを CDN に保存し、https://images.bannerify.co/files/ で始まるリンクを返します。
const { result: url, error } = await bannerify.createStoredImage("tpl_xxx", {
modifications: [{ name: "headline", text: "Welcome back" }],
})
if (error) throw new Error(error.message)
console.log(url)
S3Config には、次のフィールドがあります。
| フィールド | 必須 | 説明 |
|---|---|---|
endPoint |
はい | プロトコルを含まない S3 エンドポイント |
region |
はい | バケットのリージョン |
bucket |
はい | バケット名 |
accessKey |
はい | アクセスキー |
secretKey |
はい | シークレットキー |
port |
いいえ | エンドポイントのポート。既定値は 443 |
useSSL |
いいえ | 既定値は true |
pathStyle |
いいえ | パススタイルの URL を使う。既定値は false |
customUrl |
いいえ | 返されるリンクの URL テンプレート。ファイルキーには {key} を使います |
結果を処理する
3 つのメソッドは、いずれも { result } または { error } を返します。エラーを処理するを参照してください。