# 核心选项 这些选项在每个 DiceBear 核心中都相同:JavaScript、PHP、Python、Rust、Go 和 Dart 库,以及 [HTTP API](https://dicebear.zhcndoc.com/how-to-use/http-api/)。不同语言之间只有传递 这些选项的方式不同,因此每个库的页面都会以其自身的语法展示。以下选项的名称、 类型、默认值和行为都不会改变。 它们适用于每种头像样式。当类型列出 `[min, max]` 时,你可以传入固定值或包含 两个元素的元组。PRNG 会从元组的范围内采样一个值。 | 选项 | 类型 | 默认值 | 描述 | | ----------------- | ------------------------------------------------ | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | | `seed` | `string` | `''` | 用于确定性生成的种子 | | `flip` | `'none' \| 'horizontal' \| 'vertical' \| 'both'` | `'none'` | 翻转头像(接受值数组以进行随机化) | | `rotate` | `number \| [min, max]` | `0` | 旋转角度(−360 至 360) | | `scale` | `number \| [min, max]` | `1` | 围绕画布中心的统一缩放比例(0 至 10;`1` 表示原始大小) | | `borderRadius` | `number \| [min, max]` | `0` | 画布百分比形式的边框半径(0 至 50;`50` 会生成圆形) | | `size` | `integer` | _未设置_ | 输出尺寸(像素)(1 至 4096);未设置时 SVG 会缩放以适应其容器 | | `translateX` | `number \| [min, max]` | `0` | 相对于画布宽度的水平位移百分比(−1000 至 1000) | | `translateY` | `number \| [min, max]` | `0` | 相对于画布高度的垂直位移百分比(−1000 至 1000) | | `idRandomization` | `boolean` | `false` | 为每个 SVG `id` 添加随机的非确定性值(当多个头像共享同一页面时避免 `url(#…)` 冲突) | | `title` | `string` | _未设置_ | 无障碍标题;设置后,SVG 会变为 `role="img"` 并包含 `` | | `fontFamily` | `string \| string[]` | `'system-ui'` | 基于文本的样式所使用的字体系列(CSS 样式的字体栈,不含引号) | | `fontWeight` | `integer \| integer[]` | `400` | 基于文本的样式所使用的字体粗细(1 至 1000) | | `tags` | `string \| string[]` | _未设置_ | 仅保留匹配这些 [标签](https://dicebear.zhcndoc.com/guides/filter-variants-with-tags/) 的变体(`category` 或 `category:value`,添加 `!` 前缀表示排除) | ## 背景选项 这些选项适用于每种样式,即使其定义中没有声明 `background` 颜色组。 | 选项 | 类型 | 默认值 | 描述 | | -------------------------- | --------------------------------- | ---------- | ------------------------------------------------------------------ | | `backgroundColor` | `string \| string[]` | _unset_ | 以十六进制表示的背景颜色(可省略 `#`,范围为 `#RGB` 至 `#RRGGBBAA`) | | `backgroundColorFill` | `'solid' \| 'linear' \| 'radial'` | `'solid'` | 背景填充类型(接受值数组以进行随机化) | | `backgroundColorFillStops` | `integer \| [min, max]` | `2` | 渐变断点数量(最少为 2);填充为 `solid` 时忽略 | | `backgroundColorAngle` | `number \| [min, max]` | `0` | 以度为单位的渐变角度(−360 至 360) | | `backgroundColorOrder` | `'random' \| 'fixed'` | `'random'` | 按给定顺序使用颜色(`fixed`),而不是将其打乱 | ## 动态组件选项 对于样式中的每个组件(例如 `eyes`、`mouth`、`hair`),都有以下选项可用: | 模式 | 类型 | 描述 | | ------------------------- | ------------------------------------------- | ------------------------------------------------ | | `{component}Variant` | `string \| string[] \| { variant: weight }` | 限制为特定变体,可选择性地设置权重 | | `{component}Probability` | `number` | 可见概率,单位为百分比(0 到 100) | 组件的旋转、平移和缩放会在渲染时根据组件定义进行采样,**不是**用户选项:不存在 `{component}Rotate`、`{component}TranslateX`、`{component}TranslateY` 或 `{component}Scale` 选项。 组件别名(通过样式定义中的 `extends` 声明)不会公开自己的选项键。它们与其扩展的组件共享 `{source}Variant` 和 `{source}Probability`。 ## 动态颜色选项 对于样式中的每个颜色组(例如 `skin`、`hair`)和 `background`,以下选项可用: | 模式 | 类型 | 描述 | | ----------------------- | --------------------------------- | ------------------------------------------------------------------ | | `{color}Color` | `string \| string[]` | 使用十六进制值(可省略 `#`)覆盖调色板 | | `{color}ColorFill` | `'solid' \| 'linear' \| 'radial'` | 填充类型(接受值数组以进行随机化) | | `{color}ColorFillStops` | `integer \| [min, max]` | 渐变色标数量(最少为 2);当填充为 `solid` 时忽略 | | `{color}ColorAngle` | `number \| [min, max]` | 以度为单位的渐变角度(−360 至 360) | | `{color}ColorOrder` | `'random' \| 'fixed'` | 按给定顺序使用颜色(`fixed`),而不是打乱颜色顺序 | 使用 `{color}ColorOrder: 'fixed'` 时,通过 `{color}Color` 传入的颜色会严格保持给定的顺序:渐变填充会将它们从第一个到最后一个应用为色标,纯色填充始终使用第一个颜色,渐变色标数量默认为给定颜色的数量。不使用 `{color}Color` 时,`fixed` 只会跳过打乱步骤;样式的调色板会去重,并按排序后的顺序使用。样式定义中的约束(`contrastTo`、`notEqualTo`)仍然适用,因此结果仍可能通过所引用的颜色组依赖种子。 ## 变体标签 当一个样式为其变体添加标签时,`tags` 选项会一次性在所有组件中,将变体池筛选为你想要的特征。标签可以是 `category` 或 `category:value`,例如 `animation` 或 `hairLength:long`。同一类别中的值以“或”组合,不同类别以“且”组合,不带值的类别表示必须具备该特征,而前置 `!` 表示不允许具备该特征。有关完整规则以及 DiceBear 样式所使用的类别,请参阅[使用标签筛选变体](https://dicebear.zhcndoc.com/guides/filter-variants-with-tags/)。