因为自己有空间,我就不上传在这儿,赚那3、5两的小钱了^_^,整个东西大概有好几M,本来里面所有face???.bmp和face.e5都可以自己做的,考虑到这儿应该没不是宽带的人了吧我就省得麻烦都发了。整个一个东西在这儿下载:
http://www.xindong.net/youngfly/变脸.rar
备份你现在的Face.e5,然后把整个解压到你曹操传的目录下,覆盖了你原来的那个
face.e5。
然后执行“变脸.exe”。在textno那个框子里面输入一个数字(每个数字代表哪个头像你看一下face目录里面的图,选好数字以后点一下“显示要被替换的头像也可以看到”,注意这个就算你换过也是不变的,其实是调用的face目录下的图)在地址栏里面选择一个bmp。建议选用face目录下的那些现成的图。我没做是否可用的判断,除非你在理解的这个图片原理的基础上,不然做出来的不是大小太大了直接出错,就是颜色花掉。所有实际上现在只能用来“换其他人的头像”玩。当然不是说不能自己做,我做了一个FaceX.bmp(在最后面),是三只眼的曹操,大家可以试试看…………(暴汗)
界面是这样的:
![](http://www.xindong.net/youngfly/jm.JPG)
以下是源代码。当时想到哪儿就写到哪儿的,没整理过,非常乱。看不懂的问吧
这个是大前天晚上没复习写的,所以急匆匆的就可以用就可以了。前天昨天忙着考试,昨天晚上回来的时候同学拉着去喝酒,路上把4000多块钱的手机掉了。现在没找到(而且现在可以肯定是被拣走了,也就是说肯定没戏了…………),所以现在心情也很沉闷,没心情改程序了。对不起大家。如果大家觉得这个东西不错,想知道更详细的情况;或者觉得还有修改的余地等等建议什么的。可以在下面跟帖,我以后会看的…………
Private Sub Command1_Click()
Dim num As Integer
Dim pos As Integer
Dim by1 As Byte, by2 As Byte, by3 As Byte
Dim Temp() As Byte
Open App.Path & "\FACE.E5" For Binary As #1
For i = 0 To 227
pos = i * 12 + 273
num = 20 * i + 11
Put #1, pos, 0
Put #1, pos + 1, 0
Put #1, pos + 2, 20
Put #1, pos + 3, 0
Put #1, pos + 4, 0
Put #1, pos + 5, 0
Put #1, pos + 6, 20
Put #1, pos + 7, 0
by1 = num \ 65535
by2 = (num - num * by1) \ 256
by3 = num Mod 256
Put #1, pos + 8, by1
Put #1, pos + 9, by2
Put #1, pos + 10, by3
Put #1, pos + 11, 196
Label1.Caption = i
Next i
For i = 0 To 227
Open App.Path & "\face\face" & i & ".bmp" For Binary As #2
ReDim Temp(5119)
Get #2, 1079, Temp
Close #2
Put #1, 5120 * i + 3013, Temp
Label1.Caption = i
Next i
Close #1
End Sub
Private Sub Command3_Click()
Dim Temp() As Byte
Open App.Path & "\FACE.E5" For Binary As #1
Open TextFile.Text For Binary As #2
ReDim Temp(5119)
Get #2, 1079, Temp
Close #2
Put #1, 5120 * CInt(TextNo.Text) + 3013, Temp
Close #1
End Sub
Private Sub Command4_Click()
On Error GoTo err4
Picture2.Picture = LoadPicture(App.Path & "\face\face" & TextNo.Text & ".bmp")
Exit Sub
err4:
MsgBox "没有这张图"
End Sub
Private Sub Dir1_Change()
File1.Path = Dir1.Path
TextFile.Text = File1.Path
End Sub
Private Sub Drive1_Change()
Dir1.Path = Drive1.Drive
TextFile.Text = File1.Path
End Sub
Private Sub File1_Click()
TextFile.Text = File1.Path & "\" & File1.FileName
Picture1.Picture = LoadPicture(File1.Path & "\" & File1.FileName)
End Sub
Private Sub Form_Load()
File1.FileName = "*.bmp"
End Sub
[ 本帖最后由 ssbye 于 2006-3-29 13:40 编辑 ]