[WIP] 次世代漫画汉化工具。本项目主要想要实现漫画汉化过程中多人协作,让工作流程简单化、系统化。
预期实现功能:
🚧: WIP, 🕒: Not yet started, ⚠: Warning, ✅: Finished, ❌: Abandoned
对于图片的操作,我们主要进行两种操作:
由此可以引出我们对于图层的排布要求(全部都是自动生成的):
下面是结构:
(顶)
* CustomTextItems # 自定义嵌字图层组
* TextGroup-p # 区域 p 的自定义嵌字图层组
* Text # 区域 p 的自定义嵌字图层组的文字
* ... (Unmanaged Custom layers) # 区域 p 的自定义嵌字图层组的其他图层
* TextGroup-q # 区域 q 的自定义嵌字图层组
* Text # 区域 q 的自定义嵌字图层组的文字
* ... (Unmanaged Custom layers) # 区域 q 的自定义嵌字图层组的其他图层
* ...
* AutoTextItems # 自动导出的嵌字图层组
* Text-a # 区域 a 的自动导出的嵌字
* Text-b # 区域 b 的自动导出的嵌字
* ...
* AutoBackground # 自动导出的背景图层组
* Impainting # 自动导出的背景修复图层组
* Impainting-r # 区域 r 的自动导出的背景修复图层
* Impainting-s # 区域 s 的自动导出的背景修复图层
* ...
* Color # 自动导出的纯色填充图层组
* ColorExport # 自动导出的纯色填充图层
* CustomBackground # 自定义背景图层组
* Background-c # 区域 c 的自定义背景图层组
* ...
* Background-d # 区域 d 的自定义背景图层组
* ...
* ...
* Background # 背景图层
(底)
注意:
自动导出背景图层组
在 自定义背景图层组
之上的原因是,这样蒙版的区域可以有更大的容错,无需顾虑。背景图层 => 自定义背景图层组 => 自动导出背景图层组 => 自动导出嵌字图层 => 自定义嵌字图层
这样的堆叠顺序,不能保证图层组内部的顺序。<project-name> # 项目文件夹
├── <project-name>.yuzu # 项目文件
├── Images # 图片文件夹
| ├── <image-file-1> # 图片 1
| ├── <image-file-2> # 图片 2
| ├── ...
| └── <image-file-n> # 图片 n
├── PSD # PS 文件夹
| ├── <image-file-1>.psd # 图片 1 对应的 .psd
| ├── <image-file-2>.psd # 图片 2 对应的 .psd
| ├── ...
| └── <image-file-n>.psd # 图片 n 对应的 .psd
└── Notations # 简单文本标注文件夹
├── <image-file-1> # 图片 1 对应的标注文件夹
| ├── index.json # 图片 1 标注时间戳索引
| ├── <timestamp-1>-simple.json # 图片 1 的 第1个普通标注
| ├── <timestamp-1>-<type>.json # 图片 1 的 第1个其他种类的标注
| ├── ...
| ├── <timestamp-2>-simple.json # 图片 1 的 第2个普通标注
| ├── <timestamp-2>-<type>.json # 图片 1 的 第2个其他种类的标注
| ├── ...
| ├── <timestamp-m>-simple.json # 图片 1 的 第m个普通标注
| ├── <timestamp-m>-<type>.json # 图片 1 的 第m个其他种类的标注
| └── ...
├── <image-file-2> # 下同
| ├── index.json # 图片 2 标注时间戳索引
| ├── <timestamp-1>-simple.json
| ├── <timestamp-1>-<type>.json
| ├── ...
| ├── <timestamp-2>-simple.json
| ├── <timestamp-2>-<type>.json
| ├── ...
| ├── <timestamp-m>-simple.json
| ├── <timestamp-m>-<type>.json
| └── ...
├── ...
└── <image-file-n>
├── index.json
├── <timestamp-1>-simple.json
├── <timestamp-1>-<type>.json
├── ...
├── <timestamp-2>-simple.json
├── <timestamp-2>-<type>.json
├── ...
├── <timestamp-m>-simple.json
├── <timestamp-m>-<type>.json
└── ...
使用 git 进行多人协同,考虑到汉化组的成员可能完全不了解 git 原理与思想,所以我们将 git 工作流进行简化:
对于项目文件本身,不打算,也永远不打算做加密系统,徒增代码量。理由很简单,如果要加密,为什么不打个包直接加密。
然而,对于多人协同时,由于涉及到 DMCA,我们会使用加密,特别是图片文件,这种本身就是不能被 diff 的格式,加密一下在 git 工作流上也并没有什么损失。
综上,在 git 系统中,二进制文件可以选择加密,我们会将文件夹进行如下转化:
Images => Images-Encrypted
PSD => PSD-Encrypted
此外,我们还会添加配置文件:
.yuzugitsettings # 记录加密设置
.password # 记录密码
并添加如下的 .gitignore
:
Images/
PSD/
.password
对于软件本身,我们使用 MIT License 以及以下追加条款进行授权 (见 LICENSE 文件):
如果上述条款不能满足您的需求,请和我联系,讨论商业许可证的相关问题。
注意:
No Discrimination Against Fields of Endeavor
相冲突,所以并不构成正真意义上的开源,只是在一定条件下公开源代码、允许使用。2021.11.29 Update: JetBrains 针对本 OSS 项目已经提供了免费许可证。
特别感谢@透明声彩汉化组
感谢 Jetbrains 提供的教育许可证、OSS 许可证