上一节,我们找到了"卡"字的首地址:BD9D78
接下来我们下载字体文件(或者直接用系统自带的宋体)
<字体文件转自>http://www.pkucn.com/viewthread.php?tid=205069&extra=page%3D1&page=1
安装好字体后,
一,运行CT2,打开ROM,转到BD9D7C(首地址+4),把"Tile属性"中的高度和宽度分别设置13,14(这两个数据上一节有提到)
把"Tite颜色格式"调到VB 2bpp(注:因为是四色,所以为2bpp),如图
二,在"Tile点阵编辑器"中,的字体设置刚刚安装好的字体(可能是"宋体"或"simsun",字号为"10")
在插入文本中输入"啊",如下图所示
回车键,发现已经把字写进去了
或许颜色不同,但不大碍事,我们只是来测试
"另存为"文件后,运行游戏,发现已经修改好了
嗯,的确是这样子,如果不咸麻烦可以一个个改
三,看到以上代码,我们可以试着写一个程序来生成字图片,然后在通过CT2导入进去
/// <summary>
/// 创建Title,此方法可以调用GDI+的API,GdipDrawString
/// </summary>
/// <param name="s">字符串,单字符</param>
/// <param name="f">字体,字体的有关说明参照MSDN</param>
/// <returns></returns>
public Bitmap createTile(string s, Font f)
{
Bitmap mapA = new Bitmap(15, 15); //这两个参数可以改大改小
if (s == "") return mapA;
Graphics g = Graphics.FromImage(mapA);
g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit; //这个参数可以改变字显示的效果,可以注释掉
g.DrawString(s, f, Brushes.Black, 0, 0);
g.Dispose();
return mapA;
}
保存文件代码格式;
Bitmap.save(string filename);