赞 | 23 |
VIP | 207 |
好人卡 | 31 |
积分 | 31 |
经验 | 48797 |
最后登录 | 2024-11-30 |
在线时间 | 1535 小时 |
Lv3.寻梦者 孤独守望
- 梦石
- 0
- 星屑
- 3137
- 在线时间
- 1535 小时
- 注册时间
- 2006-10-16
- 帖子
- 4321
|
严格脑残一只:- module Conv
- def self.c(str)
-
- m2w = Win32API.new("kernel32","MultiByteToWideChar",'ilpipi','i')
- w2m = Win32API.new("kernel32","WideCharToMultiByte",'ilpipipp','i')
- lcms = Win32API.new("kernel32","LCMapString",'llpipi','i')
- len = m2w.call(65001,0,str,-1,nil,0)
- buf = "\0"*(len*2)
- m2w.call(65001,0,str,-1,buf,len)
- len = w2m.call(0,0,buf,-1,nil,0,nil,nil)
- ret = "\0"*len
- w2m.call(0,0,buf,-1,ret,len,nil,nil)
- len = m2w.call(936,0,ret,-1,nil,0)
- buf01 = "\0"*(len*2+1)
- lcms.call(0x0804,0x04000000,ret,-1,buf01,len*2)
-
- len = m2w.call(0,0,buf01,-1,nil,0)
- buf = "\0" * (len*2)
- m2w.call(0,0,buf01,-1,buf,len)
- len = w2m.call(65001,0,buf,-1,nil,0,nil,nil)
- ret = "\0" * (len-1)
- w2m.call(65001,0,buf,-1,ret,len-1,nil,nil)
-
- return ret
- end
- end
- class Bitmap
- unless $I_LOVE_RMXP_6RWORDCONV
- alias dx draw_text
- def draw_text(p1, p2, p3 = 0, p4 = 3, p5 = nil, p6 = 0)
- if p6 == 2
- dx(p1,p2,p3,p4,p5,p6)
- return
- end
- case p1
- when Rect
- str = Conv.c(p2)
- dx(p1, str, p3)
- else
- str = Conv.c(p5)
- dx(p1, p2, p3, p4, str, p6)
- end
- end
- $I_LOVE_RMXP_6RWORDCONV = true
- end
- end
复制代码 |
|