# 底图风格
::: details 目录
[[toc]]
:::
## 基本数据格式
``` json
{
"default":{
"stroke": "SColor",
"fill": "SColor | Gradient",
"lineWidth": "number",
"effect": {}
},
"selected": {
"stroke": "SColor",
"fill": "SColor | Gradient",
"lineWidth": "number",
"effect": {}
},
"disabled": {
"stroke": "SColor",
"fill": "SColor | Gradient",
"lineWidth": "number",
"effect": {}
},
}
```
## 数据格式定义,使用及扩展
1.以上数据内容只描写了框架中 item 已经支持的默认状态, 选中状态, 禁用状态及其对应的风格
2.如果需要其他状态的风格, 则需要在 item 中添加对应状态, 并在绘制时确定 item 当前处于何种状态, 同时风格数据中增加对应的状态及风格
3. stroke 为线条颜色, 其值为16进制的颜色字符串, 目前只支持6位和8位颜色字符串, 该字符串的生成方式,
调用引擎中``` SColor ```类型中``` toVal() ```方法可生成6位16进制颜色; 调用 value 属性可得到8位16进制颜色
4. Fill 为渐变时, 其值为描述渐变的字符串,如
```'SLinearGradient{0,0;0,1000;0,#ff483bff;0.5,#04ff00ff;1,#3d4effff;}'```
```'SRadialGradient{500,500,50;500,500,500;0,#ff483bff;0.5,#04ff00ff;1,#3d4effff;}' ```该字符串生成方式, 调用``` SGradient ```类型的``` value() ```方法即可生成;格式严格遵循示例,尽量不要手动拼接;
Fill 为普通颜色时, 其值与 Stroke 一致
5. lineWidth 为线条宽度, 数字类型
6.详情使用方式,参阅 [场景管理- item 示例-矩形](../scene/items/rect.md)
## 基本状态与 item 属性对应关系