Skip to content

请求模型与参数 ​

RenderRequest ​

json
{
  "version": 1,
  "resources": [{ "resourceToken": "<resource-token>" }],
  "layers": [],
  "output": { "format": "png", "quality": 90 }
}
字段类型必需约束
versioninteger是固定为 1
resourcesarray是1–8 项;token 不得重复
layersarray是0–32 项
outputobject是最终输出格式与质量

请求执行严格白名单校验,未声明字段会返回 400 INVALID_RENDER_JOB。

ResourceReference ​

字段类型约束
resourceTokenstring43 个 base64url 字符

图层公共字段 ​

字段类型默认值约束
typeenum无image 或 text
zIndexinteger0-1000–1000
opacitynumber10–1,最多 4 位小数
positionobjectabsolute (0,0)绝对坐标或九宫格锚点
rotationnumber0-360–360 度
shadowobject无可选阴影
repeatobject无可选平铺

图片图层 ​

json
{
  "type": "image",
  "resourceToken": "<watermark-resource-token>",
  "zIndex": 0,
  "size": { "width": 160 },
  "opacity": 0.65,
  "position": { "mode": "absolute", "x": 20, "y": 20 },
  "rotation": 0
}
字段类型必需约束
resourceTokenstring是已上传且有效的资源
size.widthinteger否1–16384 像素
size.heightinteger否1–16384 像素

size 出现时至少提供宽或高。只提供一个维度时保持原始宽高比;两者都提供时按指定尺寸渲染。

文字图层 ​

json
{
  "type": "text",
  "text": "Markify · Internal",
  "zIndex": 10,
  "font": {
    "family": "Noto Sans CJK SC",
    "size": 48,
    "weight": 600,
    "color": "#ffffff"
  },
  "opacity": 0.65,
  "position": { "mode": "center" },
  "rotation": -20
}
字段类型约束
textstring1–500 个字符
font.familystring固定为 Noto Sans CJK SC
font.sizenumber8–512 像素
font.weightinteger100–900
font.colorstring#RRGGBB 或 #RRGGBBAA

Position ​

绝对坐标:

json
{ "mode": "absolute", "x": 20, "y": 20 }

x、y 默认为 0,单位是像素。绝对模式不能提供 offset。

锚点:

json
{ "mode": "bottom-right", "offset": { "x": -20, "y": -20 } }

支持:top-left、top-center、top-right、left-center、center、right-center、bottom-left、bottom-center、bottom-right。锚点模式不能提供 x、y,offset.x/y 默认为 0。

Shadow ​

字段类型默认值约束
colorstring#000000#RRGGBB
opacitynumber0.50–1
blurnumber00–100 像素
offsetXnumber0-500–500 像素
offsetYnumber0-500–500 像素

Repeat ​

字段类型必需约束
spaceXnumber是1–8192 像素
spaceYnumber是1–8192 像素
staggerboolean否默认 false,相邻行错位半个水平间距

间距表示相邻图层实例之间的空间,不会让实例互相覆盖。

Output ​

字段类型约束
formatenumjpeg、png、webp
qualityinteger1–100

PNG 对质量参数的解释与有损格式不同,但仍要求提供合法值,以保持协议结构稳定。

Markify 文档与协议随实现同步演进。