admin管理员组

文章数量:1608629

2024年1月6日发(作者:)

一、准备工作

软件:RDB解压缩工具。图片处理软件(PS)。二进制文件编辑器(WINHEX)。QQ2011正式版原版。

技能:要有一定的图片处理能力,最好是有过QQ皮肤制作经验。

需要了解的:

现在的QQ皮肤的资源文件被压缩为rdb结构的包,用软件解开后你会发现有许多的*.gft的文件,这是一个很有意思的格式。现在有些软件可以把gft直接转换成常规的png图片,但这显然不是一个很好的方法,因为这回丢失掉不少有用的信息和功能。

一个GFT其实是两个文件的集合体:GFT = 图片控制代码 + 常规图片。

常规图片是指我们能直接打开编辑的图片,而控制代码包含这个图片的拉伸值等信息,现在的软件都是把控制代码删掉,使得gft变成了常规图片,这样的坏处是显而易见的——失去了控制代码,图片一拉动就会变形。

下面说说如何调整GFT的控制代码。

我们用二进制编辑器winhex打开一个原版的GFT。你会看到文件从00000000:0的偏移地址上以数据"54 47 46"开始,对应的ASCII码是"TGF"(图1中红色部分)。继续往下看,你可以在第二行或之后几行内看到数据"89 50 4E 47",对应的ASCII码是|PNG(图中蓝色部分)。

(图1)

如果你把从54开始到89之前的00那部分给删掉,那么gft文件就被还原成了常规的PNG图片(gft转换软件的原理就是这样的)。而我们要修改的控制代码就在54到这89之间。

修改:

我研究了2天,总结出一个比较好的修改方法。就是在改之前,先把GFT文件复制一份得到一个副本,然后把原件改成常规PNG进行编辑,完毕之后再把副本的控制信息复制并粘贴到原件的文件头,这样就不会出错了。

winHEX的基本操作:

可以在16进制窗口拖动鼠标选中一个区块,然后按键盘上的Delete键删除选中的区块。复制的话就是选中,然后用快捷键Ctrl+C复制,粘贴则是点要粘贴的地方,Ctrl+v粘贴,粘贴会把数据粘贴的你点的那个字节的前面。随便复制个不用的文件来多练习几次就会了。

"NINE"代码段:

在控制代码中有一个代码段以"4E 49 4E 45"起始,对应的ASCII码为"NINE",我称之为"NINE"代码段,从其后的第5个字节开始,每2个字节分别代表了一个拉伸值,分别是“左,上,右,下”,一共是8个字节(图中的绿色部分)。这些字节里的数据是16进制的(10进制转16进制的方法请自行百度,或者用win7自带的计算器)。取个例子,我要的拉伸值是100像素,那么转换成16进制就是64,所以我需要把相应的值改成"64 00"。又比如我要的拉伸是300像素,转换成16进制就是12C,所以我得把相应的值改成"2C 01"。不得不说的纠结:有些GFT带拉伸代码后,可拉

伸的区域会被填充,仁者见仁智者见智吧。

"KEY"代码段:

有些GFT中会存在这个代码段,由于我比较笨,又病又忙,没余力去研究了,希望大家能弄明白吧。

"TGF"代码段:

这个段会不会也有其特殊的功能呢?

二、登录界面

1、经典登录界面

【1】mini_

地址:ResLoginPanel

大小:360 X 276

说明:主体图片,边缘要留出5像素的空白区域。

【2】mini_ 【3】mini_

地址:ResLoginPanel

大小:360 X 276

说明:第一张是默认banner,第二张是第一次打开QQ时显示的,图和【1】一样就行了。

【4】safeminilogin_png_

地址:ResAppFrameworkLoginPanel

大小:360 X 276

说明:做的和【1】一样,这张是最上层的白膜,和【1】一样后,不管什么节日,都不会出现广告!

2、竖版登录界面

【1】stdlogin_png_

地址:DefaultLoginPanel

大小:297(最小) X ?(根据主界面大小自定)

说明:主体图片,边缘要留5像素空白。

三、登录时的过度页面

【1】LoginPanel_window_

地址:MiscLoginPanel

大小:287(最小) X ?(根据主界面大小自定)

说明:主体图片,边缘不用留5像素空白,图案可以和竖版登录界面一样。

【2】Main_

地址:MiscLoginPanel

大小:60 X 15

说明:登录时左上角显示的“QQ2011”字样,推荐调整成50%的透明度。

【3】 【4】Logining_

地址:MiscLoginPanelLogoFile2052

大小:220 X 150

说明:登陆时的加载动画,可以直接替换成透明的gif,也可以直接删除。

四、主界面

【1】main_png_bkg_

地址:ResSkinMgr

大小:大小:297(最小) X ?(大小自定)

说明:主图,边缘要有5像素的空白,使用控制代码会被填充

【2】main_search_

地址:DefaultMainPanelsearch

大小:37 X 24

说明:搜索框的背景图,不要可以改成透明图。

【3】lock_png_

地址:ResSkinMgr

大小:大小:297(最小) X ?(大小自定)

说明:锁定界面图,边缘要有5像素的空白,可以让控制代码把显示头像的部分设为拉伸。

【标签栏】

要想让标签栏透明,可以删除DefaultMainPanel里面的所有 gft 格式的文件(注意不要删除这个文件夹中的那三个文件夹中的 gft 文件)。

五、聊天面板

【1】aio_png_

地址:ResSkinMgr

大小:550 X 520

说明:聊天面板的主图,边缘留5像素,有控制代码会被填充。

【其它部分】

地址:ResChatFrame

aio_meg_ 输入框背景白膜

aio_meg_ 接受框背景白膜

aio_quickbar_ 中间工具条白膜

aio_QQshowlight_,aio_QQshow_ QQ秀下的白膜

说明:不需要的可以直接删除,in和out可以添加图案并设置拉伸。

六、好友小名片

【1】

地址:ResAppFrameworkContactTips

大小:280 X 190

说明:将鼠标放到别人的头像上可以看到这个图,不用留边缘像素,建议设置拉伸底部。

七、系统面板

【1】all_inside_

地址:ResSkinMgr

大小:652 X 471

说明:系统设置图,也是搜索好友面板等其它面板的图,肯定会被拉伸,所以应选一些线条粗的图,边缘要有5像素留空。

【2】all_inside02_

地址:ResSkinMgr

大小:806 X 518

说明:消息管理面板的图,也是应用管理面板的图,边缘要留5像素空白,建议是把拉伸值的"上"设为371像素,以适应应用管理面板

【3】all_inside04_

地址:ResSkinMgr

大小:759 X 489

说明:消息盒子的图,边缘留5像素空白。

【4】all_inside05_

地址:ResSkinMgr

大小:595 X 436

说明:查看好友资料面板图,也需要边缘留白5像素

【消息盒子的白膜】

地址:DefaultAppFrameworkCommon

不需要白膜可以删除下面的3文件 list_bkg_ listitem_ list_

建议是把它们改成50%的透明度。

地址::ResInformationBox

不需要白膜可删除,建议是把它们改成50%的透明度。

八、开始菜单

【1】:menu_topright_

地址:ResMainMenu

大小:自定

说明:可以设置上端为拉伸区域

九、其它图

【1】about_

地址:ResAppFrameworkMisc

大小:378 X 65

说明:在“关于”中的logo

【2】miniloginpanel_ 【3】stdloginpanel_ 【4】stdloginpanel_

地址:ResConfigCenter

大小:300 X 179

说明:选择登录框样式的图

【5】

地址:ResMiscUserGuide

大小:447 X 161

说明:第一次使用时,Win7系统下的提示动画

By 邪骸花哨银

/corcube

本文标签: 图片像素说明边缘文件