QQ2011 皮肤资源

  新的学期又开始了,刚到学校,好久没上网了,上网后发现QQ2011已经发布了测试版了。下载一看,皮肤又有了新的进化。用QQ皮肤工具解包QQ2011后发现大多的图片已被gft文件所替代了,用了几款图片工具均无法查看gft的图片内容。看来是腾讯自己定义的文件格式。

  打开了UltraEdit,把几个gft文件拖进去看了看。。。

如上图,这样我们就可以制作一个将gft文件转换成png或是bmp的工具了。

我们执行将需要转换的gft文件或含有gft文件的文件夹拖拽到窗体上面之后便会自动转换所有文件。

转换代码
/// <summary>
/// gft文件路径
/// </summary>
/// <param name="fileName"></param>
private void ConvertFile(string fileName)
{
string ext = string.Empty;

FileStream fs
= File.OpenRead(fileName);
byte[] data = new byte[fs.Length];
fs.Read(data,
0, data.Length);
fs.Close();

int key = data[16];//第16个字指定了图片的起始地址。

byte[] data2 = data.Skip(key).ToArray();
if (data2[0].ToString("x") == "42") //42 4D
{
ext
= "bmp";
}
else if (data2[0].ToString("x") == "89") //80 50
{
ext
= "png";
}

string newFilename = Path.ChangeExtension(fileName, ext);

FileStream fs2
= new FileStream(newFilename, FileMode.Create);
fs2.Write(data2,
0, data2.Length);
fs2.Close();

CompletedCount
++;
progressBar1.Value
= CompletedCount;
}

多余的代码就不贴了,附下载。

QQ皮肤解包工具下载。

GFT转换器下载

GFT转换器源码下载

posted @ 2011-02-19 23:10  七书  阅读(4017)  评论(17编辑  收藏  举报