# psd2prefab

#### 介绍
用于将psd转化成unity预制体(UGUI)。本工具是nodejs部分，用于生成预制体描述文件。生成描述文件之后，需使用[psd2prefab_unity](https://gitee.com/Halliwood/psd2prefab_unity)工具进一步生成预制体。

#### 安装教程

本项目依赖于[canvas](https://www.npmjs.com/package/canvas)，安装时需先下载GTK并解压到C盘。
可参考[安装指引](https://github.com/Automattic/node-canvas/wiki/Installation:-Windows)或下载[GTK](https://ftp.gnome.org/pub/GNOME/binaries/win64/gtk+/2.22/gtk+-bundle_2.22.1-20101229_win64.zip)并解压到`C:/GTK`。
如canvas安装失败，可尝试用下面命令进行安装：
```
npm install canvas --canvas_binary_host_mirror=https://npm.taobao.org/mirrors/node-canvas-prebuilt/
```

```
npm i psd2prefab -g
```

#### 命令行参数

* `-p, --project`: unity项目根目录
* `-i, --input`: psd文件路径
* `-n, --name`: 生成预制体名字

#### 配置文件

可在unity项目根目录下放置一个名为`.psd2prefab`的配置文件，内容如下：

```
# --- psd2prefab configuration ---

# unity project structure
PNG_ROOT=Assets/AssetSources/ui/atlas/$name$
PREFAB_ROOT=Assets/AssetSources/ui/instruction
NOT_ART_FONTS=MicrosoftYaHei;NotoSansHans-DemiLight;AaGuiQi
```

* `PNG_ROOT`: 切图存放位置，注意unity项目需设置导入为图集Sprite
* `PREFAB_ROOT`: 预制体配置文件目录，该目录为中间文件存放目录，不需要上传到SVN或Git
* `NOT_ART_FONTS`: 非艺术字体，用分号隔开。配置后，相关不包含在此项中的文本将视为Image并生成切图。如果不配置此项，则所有文本均视为Text

#### 示例
```
psd2prefab -p F:/psd2prefabtest -i G:/psdtest/tianying/天鹰果实.psd -n tianying
```
