# psd2ui **Repository Path**: themoonbear/psd2ui ## Basic Information - **Project Name**: psd2ui - **Description**: Cocos Creator 3.8.x PSD文件转UI - **Primary Language**: TypeScript - **License**: Artistic-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 7 - **Created**: 2024-12-06 - **Last Updated**: 2024-12-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## PSD 转 UI 说明 >PSD 文件转 prefab 工具
>硬性要求:DPI 72,颜色 RGB 8位通道,图片图层必须转为智能对象
>适用引擎:Cocos Creator
>版本: >= 3.8.0
>使用方法:图层@标识(标识不分顺序先后,可多个嵌套)
>参数:带 * 不可缺少,标识:带 - 不常用
>符号:$ = { :,} 支持中英文
[本墨绪圆字体 下载](https://gitee.com/Jason-Huang/psd2ui/raw/master/benmoxuyuan.ttf)
[PSD 示例下载](https://gitee.com/Jason-Huang/psd2ui/raw/master/base.psd)
### PSD 参考图 ![psd](./static/psd.png) ### Prefab 参考图 ![prefab](./static/prefab.png) ### 基础类型 #### ***忽略导出*** >| 标识 | 参数 | 作用 | 简写 | 类型 | >| :----- | :-----: | :----: | :----: | :----: | >| ***@ig*** | 无 | 忽略导出 | 无 | 不可缺省 | >-- 导出:PSD 图层隐藏时,依然会被导出 >| 示例 | 说明 | >| :----- | :-----: | >| 按钮@btn@ig | 组件忽略 | >| 图片@ig | 图片忽略 | >| 文本@ig | 文本忽略 | >| ![ig](./static/ig.png) | ![ig2](./static/ig2.png) #### ***文本相关*** >| 标识 | 参数 | 作用 | 简写 | 类型 | >| :----- | :-----: | :----: | :----: | :----: | >| ***@richText*** | 无 | 富文本 | @text | 不可缺省 | >| *- @shadow* | { c, x, y, b } | 文本阴影 | @sd | 不可缺省 | >| | *c | 阴影颜色 | | 颜色码 | >| | x | x 轴偏移 | | 数字 | >| | y | y 轴偏移| | 数字 | >| | b | 模糊程度| | 数字 | >| *- @maxWidth* | 数字 | 最大宽度 | @mw | 不可缺省 | >| *- @maxHeight* | 数字 | 最大高度 | @mh | 不可缺省 | >| -- @richText:含有多种颜色或图文混合时,可标注为富文本,如聊天内容 >| -- @shadow:使用 Cocos 引擎自带的文本阴影效果,x y b 默认 2 >| -- @maxWidth @maxHeight:当文本超过宽高度时,自动缩放字体大小 >| -- @maxWidth:当文本超过宽度时,自动换行 >| -- @maxHeight:不能单独使用 >| -- 图层样式支持:1.加粗 2.倾斜 3.下划线 4.描边 >| -- 颜色码:如:#1b262e >| 示例 | 说明 | >| :----- | :-----: | >| 自动缩放@mw=100@mh=60 | 宽度100,高度60,文本自动缩放 | >| 自动换行@maxWidth=100 | 宽度100,文本自动换行 | >| 阴影@shadow={c:#000000,b:4} | cocos 阴影效果 | >| 描边 | cocos 描边效果 | >| 粗体斜体下划线 | 粗体 + 斜体 + 下划线 效果 | >| 富文本@richText | 富文本 | >| 文本 | 普通文本 | >| ![text](./static/text.png) | ![text2](./static/text2.png) #### ***图片相关*** >导出规则:根据图片所在的图层名,进行导出。同名时,采用第一次出现的图片作为原图,建议命名唯一。
>公共图片:在图层名后面添加 \$ 或 \$ + 数字(区分文件夹),如:icon\$,icon\$2。
>缩放翻转:图片进行缩放翻转时,需要原图做对比(原图层名字一致,隐藏即可),否则会直接导出。
>中文转拼音:图层名为中文时,支持中文转拼音,如:按钮底图 => an_niu_di_tu
>| 标识 | 参数 | 作用 | 简写 | 类型 | >| :----- | :-----: | :----: | :----: | :----: | >| ***@9*** | { l, r, t, b, w, h } | 九宫图片 | 无 | 不可缺省 | >| | l | 左边距 | | 数字 | >| | r | 右边距 | | 数字 | >| | t | 上边距 | | 数字 | >| | b | 下边距 | | 数字 | >| | w | 像素宽 | | 数字 | >| | h | 像素高 | | 数字 | >| *@scale* | 无 | 缩放 | @sc | 不可缺省 | >| *- @rotate* | 数字 | 旋转 | @rot | 不可缺省 | >| *- @color* | 颜色码 | 修改颜色 | @clr | 不可缺省 | >| *- @filpX* | 无 | 左右翻转 | @fx | 不可缺省 | >| *- @filpY* | 无 | 上下翻转 | @fy | 不可缺省 | >| *- @gray* | 无 | 置灰效果 | @gy | 不可缺省 | >| -- @9:l r,只填一项,对称,t b 同样;w h 默认 2 个像素 >| -- @scale:通过对比,自动计算缩放比例,需要原图,否则直接导出 >| -- @rotate:在预制体中顺时针旋转,需要原图,否则直接导出 >| -- @color:使用 Cocos 引擎自带的颜色叠加效果 >| -- @filpX:在预制体中左右翻转,需要原图,否则直接导出 >| -- @filpY:在预制体中上下翻转,需要原图,否则直接导出 >| -- @gray:使用 Cocos 引擎自带的置灰效果 >| 示例 | 说明 | >| :----- | :-----: | >| 九宫@9={l:30,t:30} | 导出九宫格图片 jiu_gong.png | >| 公共按钮3$ | 导出公共图片,gong_gong_an_niu_3.png(common文件夹) | >| 公共按钮2$ | 导出公共图片,gong_gong_an_niu_2.png(common文件夹) | >| 公共按钮1$ | 导出公共图片,gong_gong_an_niu_1.png(common文件夹) | >| 钻石@rotate=30 | zhuan_shi.png 顺时针现在30度 | >| 钻石@color=#ff1f00 | zhuan_shi.png 改变颜色 | >| 钻石@scale | zhuan_shi.png 缩放 | >| 钻石@gray | zhuan_shi.png 置灰 | >| 钻石@fy | zhuan_shi.png 上下翻转 | >| 钻石@filpX | zhuan_shi.png 左右翻转 | >| 砖石 | 导出,zhuan_shi.png | >| ![img](./static/img.png) | ![img2](./static/img2.png) #### ***程序导出*** >程序使用,微调上传好的 PSD 文件(分组和节点名),避免 UI 再次更新时,需要大幅度去修改 prefab。
>| 标识 | 参数 | 作用 | 简写 | 类型 | >| :----- | :-----: | :----: | :----: | :----: | >| ***@exp*** | 字符串 | 导出绑定节点 | 无 | 不可缺省 | >| -- 参数:预制体节点名,配合快速绑定属性插件使用 >| -- 如:@exp=node 导出 $Node #### ***组件相关*** >利用 PS 分组,设定图层结构,来定义各种功能的组件
#### ***按钮组件*** >| 标识 | 参数 | 作用 | 简写 | 类型 | >| :----- | :-----: | :----: | :----: | :----: | >| ***@button*** | 无 | 按钮 | @btn | 不可缺省 | >| | *@normal | 常态贴图 | @nrm | 图片图层 | >| | @pressed | 按下贴图 | @press| 图片图层 | >| | @disabled | 不可选贴图 | @dis | 图片图层 | >| | @hover | 鼠标经过贴图 | | 图片图层 | >| *- @transition* | 数字 | 点击效果 | @tra | 不可缺省 | >| *- @effect* | { n, p, d, h } | 颜色效果 | @eff | 不可缺省 | >| | *n | 常态颜色 | | 颜色码 | >| | *p | 按下颜色 | | 颜色码 | >| | *d | 不可选颜色 | | 颜色码 | >| | h | 鼠标经过颜色 | | 颜色码 | >| -- @transition:0 无效果,1 颜色变化,2 切换图片 3 缩放,默认:自动推断 >| -- 自动推断:只有 @normal 图层,缩放 >| -- 自动推断:拥有 @normal @pressed @disabled 图层,切换图片 >| -- 自动推断:添加 @effect 时,颜色变化 >| -- 图片按钮:没有分组,只支持除切换图片外的所有效果 >| 示例 | 说明 | >| :----- | :-----: | >| 按钮九宫格@button | 使用九宫格图片按钮 | >| 按钮颜色@btn@effect={n:#ffffff,p:#ff0000,d:#787878} | 按钮点击切换颜色效果 | >| 按钮换图@button | 按钮点击切换图片效果 | >| 按钮置灰缩放@btn | 按钮点击缩放置灰效果 | >| 公共按钮3$@button | 图片按钮 | >| ![btn](./static/btn.png) | ![btn](./static/btn2.png) #### ***进度条组件*** >| 标识 | 参数 | 作用 | 简写 | 类型 | >| :----- | :-----: | :----: | :----: | :----: | >| ***@progressBar*** | 无 | 进度条 | @prg | 不可缺省 | >| | *@bar | 进度图 | 无 | 图片图层 | >| | *@background | 背景图 | @bg | 图片图层 | >| *@mode* | 数字 | 显示模式 | 无 | 不可缺省 | >| *- @reverse* | 无 | 反向显示 | @rvs | 不可缺省 | >| *- @progress*| 数字 | 当前进度 | @prog | 不可缺省 | >| -- @mode:0 水平方向 ,1 垂直方向 ,2 环形,默认 0 >| -- @progress:进度的百分比,默认 0 >| -- 建议:@background @bar,采用九宫格模式(环形除外) >| 示例 | 说明 | >| :----- | :-----: | >| 环形进度条@prg@mode=2@prog=30 | 环形进度条,进度为 30% | >| 垂直进度条@prg@mode=1@progress=20 | 垂直进度条,进度为 20% | >| 水平进度条@progressBar | 水平进度条,进度为 0% | >| ![bar](./static/bar.png) | ![bar2](./static/bar2.png) #### ***滑动器组件*** >| 标识 | 参数 | 作用 | 简写 | 类型 | >| :----- | :-----: | :----: | :----: | :----: | >| ***@slider*** | 无 | 滑动器 | @sli | 不可缺省 | >| | *@handle | 拖拽按钮 | @hdl| 图片图层 \| 按钮组件 | >| | *@background | 背景图 | @bg | 图片图层 | >| | @bar | 进度图 | 无 | 图片图层 | >| *- @direction* | 数字 | 滑动方向 | @dir | 不可缺省 | >| *- @progress* | 数字 | 当前进度 | @prog | 不可缺省 | >| -- @handle:类型为普通图片图层,或者按钮组件(具有按钮效果) >| -- @direction:0 水平方向 ,1 垂直方向 ,默认 0 >| -- @progress:进度百分比,默认 0 >| -- 建议:@background @bar,采用九宫格模式 >| 示例 | 说明 | >| :----- | :-----: | >| 垂直进度滑动器@sli@dir=1@prog=80 | 垂直进度滑动器,进度为 80% | >| 垂直滑动器@sli@direction=1 | 垂直滑动器,进度为 0% | >| 水平进度滑动器@slider | 水平进度滑动器,进度为 0% | >| 水平滑动器@slider@progress=20 | 水平进度滑动器,进度为 20% | >| ![sli](./static/sli.png) | ![sli2](./static/sli2.png) #### ***复选按钮组件*** >| 标识 | 参数 | 作用 | 简写 | 类型 | >| :----- | :-----: | :----: | :----: | :----: | >| ***@toggle*** | 无 | 复选按钮 | @tog | 不可缺省 | >| | *@normal | 常态贴图 | @nrm | 图片图层 | >| | *@background | 背景图 | @bg | 图片图层 | >| | @pressed | 按下贴图 | @press| 图片图层 | >| | @disabled | 不可选贴图 | @dis | 图片图层 | >| | @hover | 鼠标经过贴图 | | 图片图层 | >| *-@transition* | 数字 | 点击效果 | @tra | 不可缺省 | >| *-@effect* | { n, p, d, h } | 颜色效果 | @eff | 不可缺省 | >| | *n | 常态颜色 | | 颜色码 | >| | *p | 按下颜色 | | 颜色码 | >| | *d | 不可选颜色 | | 颜色码 | >| | h | 鼠标经过颜色 | | 颜色码 | >| -- @transition:0 无效果,1 颜色变化,2 切换图片 3 缩放,默认:自动推断 >| -- 自动推断:只有 @normal 图层,无效果 >| -- 自动推断:拥有 @normal @pressed @disabled 图层,切换图片 >| -- 自动推断:添加 @effect 时,颜色变化 >| 示例 | 说明 | >| :----- | :-----: | >| 复选按钮@toggle | 复选按钮 | >| ![tog](./static/tog.png) | ![tog2](./static/tog2.png) #### ***单选按钮组件*** >| 标识 | 参数 | 作用 | 简写 | 类型 | >| :----- | :-----: | :----: | :----: | :----: | >| ***@toggleGroup*** | 无 | 单选按钮 | @togs | 不可缺省 | >| | *@toggle | 分组 | @tog | 复选按钮组件 | >| -- 注释: 单选按钮,是有由多个复选按钮组合而成的组件 >| 示例 | 说明 | >| :----- | :-----: | >| 单选按钮@toggleGroup | 单选按钮 | >| ![togs](./static/togs.png) | ![togs2](./static/togs2.png)