萤火虫框架-飞外
githubhttps://github.com/IanusInferus/firefly
https://github.com/IanusInferus/firefly/releases
1 概论
本框架的原本目标是为汉化的整个生命周期中的每一件没有已有工具或已有工具不完善的重复劳动提供工具或框架支持,但目前已不限于此。这里列出汉化的流程结构,即本框架已经支持的部分(以限定名的形式表达)。也列出部分流程的其他工具。程序加[],命名空间或库不加[]。
文件包|分散文件 ↓↑包格式分析:[UltraEdit]解包、替换包中文件、压缩解压:Firefly.Packaging,Firefly.Compressing,Firefly.GUI.PackageManager、Zlib.Net、[WQSG_UMD]、[UMDGen] ↓↑ 字符映射表|字库|文本|图片
字符映射表 ↓↑字符映射表分析:[UltraEdit]字符映射表格式转换:Firefly.TextEncoding ↓↑ .tbl字符表文件 ↓↑←通用格式文本字符映射表生成:[Firefly.MappingGen]
字库 ↓↑字库分析:[UltraEdit]、[CrystalTile]、[CrystalTile2]字库生成、字模提取:[Firefly.FontGen]、Firefly.Glyphing、Firefly.Imaging ↓↑ .fd字库描述文件+字库图片 ↓←文本导出 .loc图形文本
文本 ↓↑文本分析:[UltraEdit]、[CrystalTile]、[CrystalTile2]文本导出、文本导入:Firefly.Texting、Firefly.TextEncoding、[WQSG导出(导入)] ↓↑ 通用编码通用格式文本(UTF-16、GB18030)x(Txt、Agemo、WQSG、Plain) ↓↑直接修改:[Notepad]
图片 ↓↑图片分析:[UltraEdit]、[CrystalTile]、[CrystalTile2]图片转换:Firefly.Imaging、DevIL.Net ↓↑ 通用格式图片(bmp、png、dds) ↓↑直接修改:[Photoshop]
通用编码通用格式文本 ↓↑→ .tbl ↓↑←字符表文件文本转码:[Firefly.TransEncoding]生成字符表:[Firefly.CharAdder]汉字字形转换:[Firefly.TransVariant]
.loc图形文本 ↓↑文本显示、修改:[Firefly.Eddy] ↓↑ 通用编码通用格式文本
2 各库功能介绍2.1 核心库(Firefly.Core.dll)本库集成了汉化中常常需要用到的一些工具类。主要有如下方面:├─Compressing 压缩:LZ77、RLE算法辅助类├─Core 核心:在文件流中读写各种类型的整数、把文件流的一部分看作文件流、提取文件名的一部分、│ 从整数中提取位、从多个文件位置计算多个文件长度、遍历多个区间中的整数索引等├─Glyphing 字形:字形表示、字库生成。├─Imaging 图像:在Bitmap类与颜色数组之间传送数据、Bmp文件类、Gif文件类、颜色空间转换├─Packaging 文件包:轻松构造文件包解包打包器├─Setting 设置:INI文件支持├─TextEncoding 编码:从文本按频率提取需编码字符、文本码表格式读写└─Texting 文件:Agemo文本读写、WQSG文本读写、LOC图形文本读写、基于字节的文本正则表达式搜索、简繁日字形转换详细用法请参见Firefly.chm文档。2.2 界面库(Firefly.GUI.dll)放置主要与界面有关的内容。│ FileDialog 将打开、保存文件合并的文件对话框,同时也可用于打开文件夹。用于替代(OpenFileDialog、│ SaveFileDialog、FolderBrowserDialog)三个System.Windows.Forms控件。│ FileSelectBox 文件选取框,一个文本框和一个按钮的组合,用于选取文件或文件夹路径。│ PackageManager 包管理器,用于配合Firefly.Packing中的类,实现快速包管理器的编写。│ ProgressDialog 进度框,用于显示进度。│ ScrollablePictureBox 可滚动图片框。2.3 漩涡文本本地化工具(Firefly.Eddy)用于显示和保存各种本地化文本,GUI工具。该工具已分离为单独的漩涡(Eddy)项目。2.4 正则表达式文件重命名工具(RegexRename.exe)用于批量重命名文件,命令行工具。详细用法请参见运行命令时的帮助信息,以/?选项获得。2.5 字符入库器(CharAdder.exe)用于提取生成字库所需的字符,命令行工具。详细用法请参见运行命令时的帮助信息,以/?选项获得。2.6 编码转换器(TransEncoding.exe)用于批量转换文件编码,命令行工具。详细用法请参见运行命令时的帮助信息,以/?选项获得。2.7 Agemo文本验证器(AgemoValidator.exe)用于批量验证Agemo文本格式,GUI工具。详细用法请参见运行时的提示信息。2.8 简繁日汉字异体字转换器(TransVariant.exe)用于批量转换简繁日汉字字形,命令行工具。详细用法请参见运行命令时的帮助信息,以/?选项获得。2.9 字符映射表生成器(MappingGen.exe)用于进行最接近字符映射表生成,命令行工具。详细用法请参见运行命令时的帮助信息,以/?选项获得。2.10 WQSG文本验证器(WQSGValidator.exe)用于批量验证WQSG文本格式,GUI工具。详细用法请参见运行时的提示信息。2.11 字库图片生成器(FontGen.exe)用于生成fd字库描述文件和字库图片,命令行和图形界面工具。详细用法请参见运行命令时的帮助信息,以/?选项获得。2.12 暴力文本导出器(BruteForceExporter.exe)用于使用正则表达式或自定义标记按指定编码从字节文件中暴力提取WQSG文本。详细用法请参见运行命令时的帮助信息,以/?选项获得。2.13 WQSG文本导入器(WQSGImporter.exe)用于导入WQSG格式的文本,特别是暴力提取的文本。详细用法请参见运行命令时的帮助信息,以/?选项获得。
2.14 正则表达式字符串替换工具(RegexReplace.exe)用于命令行替换文件中的字符串,命令行工具。详细用法请参见运行命令时的帮助信息,以/?选项获得。2.15 元类型结构处理工具(MetaSchemaManipulator.exe)用于从元类型结构生成代码,命令行工具。详细用法请参见运行命令时的帮助信息,以/?选项获得。2.16 VB文本验证器(VBValidator.exe)用于批量验证VB文本格式,命令行工具。详细用法请参见运行命令时的帮助信息,以/?选项获得。3 环境要求
本框架使用 Visual Basic 10.0 编写,开发时需要 Visual Studio 2017 或 BuildTool 支持。本框架运行时需要 Microsoft .Net Framework 4 或 Microsoft .Net Framework 4 Client Profile 运行库支持。Microsoft .Net Framework 4 (x86/x64,48.1MB)http://download.microsoft.com/download/9/5/A/95A9616B-7A37-4AF6-BC36-D6EA96C8DAAE/dotNetFx40_Full_x86_x64.exe
Microsoft .NET Framework 4 Client Profile (x86,28.8MB)http://download.microsoft.com/download/3/1/8/318161B8-9874-48E4-BB38-9EB82C5D6358/dotNetFx40_Client_x86.exe
4 用户使用协议
以下协议不针对示例(Examples文件夹):本框架是免费自由软件,所有源代码和可执行程序按照BSD许可证授权,详见License.zh.txt。本框架的所有文档不按照BSD许可证授权,你可以不经修改的复制、传播这些文档,你还可以引用、翻译这些文档,其他一切权利保留。
以下协议针对示例(Examples文件夹):本框架的示例进入公有领域,可以随意修改使用。
5 备注
若你使用C++编程,需要使用C++/CLI才能调用本框架的内容。
如果发现了BUG,或者有什么意见或建议,请通过说明文件Readme.zh.txt中的邮件地址或者直接在本网页下留言与我联系。
-------------------
萤火虫汉化框架示例说明
地狱门神(F.R.C.)
示例说明如下,其中部分示例需要运行Build.cmd编译,因此请确保有编译环境:
Compressing演示LZ77压缩通用库的调用方法。
Encoding演示使用MappingGen来进行伪Shift-JIS码表的创建。使用伪Shift-JIS码表,可以在不修改日文游戏的编码处理部分的情况下,通过修改字体文件和文本来完成汉化。使用MappingGen创建的伪码表会尽量保证对应原字或原字的异体字。
Imaging\MIG演示MIG/GIM文件的导出和导入。编译后在Imaging\MIG\Bin中使用MigTran导入导出。导出时将MIG/GIM文件拖到MigTran上。导入时将导出的文件拖到MigTran上。
Imaging\ImageSplitter演示通道分离。可以将.Net类库支持的几种图像文件(如png)的按ARGB通道分离成A通道、RGB通道两个文件。
Packaging演示文件包读写框架的使用。演示跨语言调用本库。分别有F#、VB、C#、C++/CLI四个版本。
本框架的示例进入公有领域,可以随意修改使用。
本框架使用 Visual Basic 10.0 编写,开发时需要 Visual Studio 2017 或 BuildTool 支持。
免责声明:本文为转载,非本网原创内容,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
-
下周今年来最大范围雨雪将上线:注意防范
1月18日消息,据气象台消息,从下周开始,也就是春节前几天,我国会有一轮雨雪过程发展。据报道,1月23-25日,中东部地区将自西向东出现一 [详细] -
外媒:特朗普希望在2025年复活节前实现俄乌停火
中新网2月17日电 据彭博社16日援引消息人士称,特朗普政府已告诉欧洲官员,希望推动俄乌在2025年复活节(4月20日)前实现停火。 据报 [详细] -
华为Mate70系列“鸿”运当头 山姆会员商店首发鸿蒙原生版
被称为史上最强Mate的华为Mate70系列即将开售,除了在设计美学、通信、AI、影像等方面实现全面进阶外,新机到手即可升级HarmonyOS NEXT也 [详细] -
盖伦死亡骑士多少钱 LOL死亡骑士盖伦皮肤多少钱
其实盖伦死亡骑士多少钱的问题并不复杂,但是又很多的朋友都不太了解LOL死亡骑士盖伦皮肤多少钱,因此呢,今天小编就来为大家分享盖伦死亡 [详细] -
火焰之地副本入口 魔兽世界火焰之地副本的入口在哪里
各位老铁们,大家好,今天由我来为大家分享火焰之地副本入口,以及魔兽世界火焰之地副本的入口在哪里的相关问题知识,希望对大家有所帮助。 [详细] -
和平精英怎么换皮肤
具体操作如下:1 玩家在游戏主界面,找到右下角的【仓库】点击进入。2 玩家在【仓库】界面,点击右上角的【时装】即可选择角色套装。3 玩家 [详细] -
魔兽世界熊猫人声望 魔兽世界熊猫人之谜声望势力冲法解析
大家好,今天小编来为大家解答以下的问题,关于魔兽世界熊猫人声望,魔兽世界熊猫人之谜声望势力冲法解析这个很多人还不知道,现在让我们一 [详细] -
惠誉下调全球经济增长预期:美国发动贸易战致前景黯淡
海外网3月19日电 国际评级机构惠誉3月18日发布最新报告,将2025年全球经济增长预期下调至2 3%,低于2024年的2 9%,并表示美国发动的贸 [详细] -
浙大团队发明贴敷式输注贴:实现无痛“无线”挂盐水
快科技12月4日消息,据报道,浙大团队研究发明的微型盐水瓶名叫贴敷式输注贴,硬币大小、不足5毫米厚,可实现大剂量药物无痛稳定的体内输注 [详细] -
OLED屏无望!苹果新款MacBook Air将拥抱TFT LCD屏幕
快科技1月18日消息,苹果公司正在研发一款新的MacBook Air,预计将在2027年发布,笔记本将采用氧化物薄膜晶体管(TFT)液晶显示屏(LCD) [详细]