🎨 图片定制化工具 API 文档

基于 Cloudflare Workers 的图片定制化服务,支持多画布、自定义字体、图标等功能

📄 完整文档: 请查看项目根目录下的 API_DOCUMENTATION.md 文件获取完整的 API 文档。

🔗 API 端点

方法 路径 说明
POST /generate 生成预览图(返回 base64,不保存到 R2)
POST /generate-final 最终确定并保存到 R2
POST /upload-font 上传字体文件
POST /upload-image 上传图片文件(模板或图标)
GET /preview/{r2Key} 获取预览图(二进制)
GET /view/{r2Key} 查看预览图(HTML 页面)
GET /font/{fontKey} 获取字体文件
GET /health 健康检查

📝 快速开始

1. 上传资源

POST /upload-image
Content-Type: multipart/form-data
{
  "image": ,
  "type": "template"
}

POST /upload-font
Content-Type: multipart/form-data
{
  "font": ,
  "fontName": "MyFont"
}

2. 生成预览图

POST /generate
Content-Type: application/json

{
  "template": "templates/xxx.png",
  "globalFonts": [
    {
      "id": "font1",
      "path": "fonts/xxx",
      "name": "MyFont",
      "type": "icon"
    }
  ],
  "canvases": [
    {
      "x": 100,
      "y": 100,
      "width": 300,
      "height": 200,
      "text": "Hello",
      "textFontId": "font1",
      "textColor": "#FF5733",
      "textSize": 32
    }
  ],
  "outputFormat": "webp"
}

📋 主要参数

参数 类型 必填 说明
template string 背景图片路径(R2)或 URL
canvases CanvasConfig[] 画布配置数组(至少一个)
globalFonts GlobalFont[] 全局字体列表
globalIcons GlobalIcon[] 全局图标列表
outputFormat "png" | "webp" | "jpeg" 输出格式(默认:png)
maxTextLength number 字符限制(默认:200)
⚠️ 注意: 本 API 仅支持 POST 请求(JSON body),不支持 GET 请求。

API 版本: 2.0 | 查看完整文档请参考 API_DOCUMENTATION.md