Project1

标题: 关于系统不支持繁体字体的问题!!!! [打印本页]

作者: 冰舞蝶恋    时间: 2010-7-30 13:45
标题: 关于系统不支持繁体字体的问题!!!!
下载了一个繁体字体,使用之后竟然字就看不见了!(就像之前不支持的字符一样,找不到字体自动屏蔽)然后我再改成简繁通用的字体,黑体,宋体,都用了,但我输入的文章中的繁体字竟然自动化简!这是为什么啊!?怎样才能在游戏中使用繁体字?????
作者: 精灵使者    时间: 2010-7-30 14:01
直接下载在简体字下自动转繁体的字体,例如方正繁体即可
作者: 冰舞蝶恋    时间: 2010-7-30 14:14
谢谢,不过,为什么。。。有的字体还是没办法正常显示。。。
作者: 额    时间: 2010-7-30 14:46
  1. #------------------------------------------------------------------------------
  2. # 本脚本来自www.66RPG.com,功能是将整个游戏中draw_text的简体字全部变为繁体字
  3. # 作者:66RPG技术区版大:灼眼的夏娜
  4. #------------------------------------------------------------------------------
  5. module Conv
  6. def self.c(str)
  7.   
  8.   m2w = Win32API.new("kernel32","MultiByteToWideChar",'ilpipi','i')
  9.   w2m = Win32API.new("kernel32","WideCharToMultiByte",'ilpipipp','i')
  10.   lcms = Win32API.new("kernel32","LCMapString",'llpipi','i')

  11.   len = m2w.call(65001,0,str,-1,nil,0)
  12.   buf = "\0"*(len*2)

  13.   m2w.call(65001,0,str,-1,buf,len)

  14.   len = w2m.call(0,0,buf,-1,nil,0,nil,nil)
  15.   ret = "\0"*len

  16.   w2m.call(0,0,buf,-1,ret,len,nil,nil)

  17.   len = m2w.call(936,0,ret,-1,nil,0)
  18.   buf01 = "\0"*(len*2+1)
  19.   lcms.call(0x0804,0x04000000,ret,-1,buf01,len*2)
  20.   
  21.   len = m2w.call(0,0,buf01,-1,nil,0)
  22.   buf = "\0" * (len*2)
  23.   m2w.call(0,0,buf01,-1,buf,len)

  24.   len = w2m.call(65001,0,buf,-1,nil,0,nil,nil)
  25.   ret = "\0" * (len-1)
  26.   w2m.call(65001,0,buf,-1,ret,len-1,nil,nil)
  27.   
  28.   return ret
  29. end

  30. end

  31. class Bitmap
  32. unless $I_LOVE_RMXP_6RWORDCONV
  33.    alias dx draw_text
  34.    def draw_text(p1, p2, p3 = 0, p4 = 3, p5 = nil, p6 = 0)
  35.      case p1
  36.      when Rect
  37.        str = Conv.c(p2)
  38.        dx(p1, str, p3)
  39.      else
  40.        str = Conv.c(p5)
  41.        dx(p1, p2, p3, p4, str, p6)
  42.      end
  43.    end
  44.    $I_LOVE_RMXP_6RWORDCONV = true
  45. end
  46. end
复制代码
楼主试试看这个脚本可以用不




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1