设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 4015|回复: 6
打印 上一主题 下一主题

[已经解决] va怎么改字体,是自己下的字体

[复制链接]

Lv1.梦旅人

梦石
0
星屑
54
在线时间
197 小时
注册时间
2012-12-15
帖子
689
跳转到指定楼层
1
发表于 2013-3-31 11:36:50 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
va怎么改字体,是自己下的字体(简娃娃篆)!
该放到媒体库的哪儿

Lv1.梦旅人

梦石
0
星屑
50
在线时间
201 小时
注册时间
2013-1-23
帖子
270
2
发表于 2013-3-31 12:20:32 | 只看该作者
在游戏文件夹创建一个fonts的文件夹,像这样

把字体文件放进去。
但是还不够的,需要一个脚本
  1. #==============================================================================

  2. # ■ Main

  3. #------------------------------------------------------------------------------

  4. #  各定义结束后、从这里开始实际处理。

  5. #==============================================================================

  6. Font.default_name = ["华康娃娃体W5"]#字体

  7. Font.default_size = 20 #字号

  8. Graphics.resize_screen(640, 480) #分辨率

  9. rgss_main { SceneManager.run }
复制代码
以上脚本替换掉脚本最下面的Main的内容,中括号里双引号中的字改成你要用的字体的名字,大小和分别率也能调整。

评分

参与人数 1梦石 +1 收起 理由
迷糊的安安 + 1 认可答案 附赠66RPG提供的精美好人卡一张^^.

查看全部评分

好吧,就这样开始完成我第一个完全版的游戏吧!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
54
在线时间
197 小时
注册时间
2012-12-15
帖子
689
3
 楼主| 发表于 2013-3-31 12:46:54 | 只看该作者
没用啊,不过他说我的字体是只读文件

点评

不应该没用啊,我试过可以转换的。你看看字体的格式对不对,再看看名字打错了没。至于说只读文件,字体是不是都是只读文件我不知道你可以改下  发表于 2013-3-31 18:51
你确定字体后缀是.ttf?确定已经安装了这个字体?你只要把main脚本里的那个Font.default_name改成自己的字体就OK了  发表于 2013-3-31 13:38
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
54
在线时间
197 小时
注册时间
2012-12-15
帖子
689
4
 楼主| 发表于 2013-4-2 21:36:02 | 只看该作者
为什么我用你的脚本没有用,只是分辨率改了

点评

字体名称问题吧?字体名称是对着字体文件右键,预览中第一行的名称那里的,而不是简单的文件名  发表于 2015-8-9 15:14
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
567
在线时间
465 小时
注册时间
2009-10-11
帖子
407
5
发表于 2013-4-2 22:19:57 | 只看该作者
試試這某高人寫的
  1. #encoding:utf-8
  2. #==============================================================================
  3. # ■ [PS0]双默认字体
  4. #        Draw_Text_DF
  5. #------------------------------------------------------------------------------
  6. #  对 Bitmap.draw_text 进行了重定义。
  7. #------------------------------------------------------------------------------
  8. #   若检测为纯中文,则使用默认字体;
  9. #   若检测为纯英文,则使用另一套字体。
  10. #   若检测结果为中英文混杂,则逐字描绘。
  11. #==============================================================================
  12. # [更新记录]
  13. #    - 2012.01.27 By 各种压力的猫君
  14. #      * 新写法自定义匹配更直观;
  15. #      * 更改一些语句的执行顺序以优化效率;
  16. #      * 重写基础x坐标获取方法,以兼容非等宽字体;
  17. #      * BUILD2: 修正基础x坐标的一处笔误
  18. #    - 2012.01.26 By 各种压力的猫君
  19. #      * 修正居中及居右坐标计算错误
  20. #    - 2012.01.25 By 各种压力的猫君
  21. #      * 重写逐字描绘方法,修正当对齐方式不为0时的错误
  22. #    - 2012.01.23 By 各种压力的猫君
  23. #      * 初版
  24. #------------------------------------------------------------------------------
  25. # [使用方法]
  26. #    - 插入到MAIN以上即可。
  27. #==============================================================================
  28. $_PS0 = {} if $_PS0 == nil  
  29. $_PS0["Draw_Text_DF"] = 20120127.2
  30. #==============================================================================
  31. # [PS0] 通用配置模块  
  32. #==============================================================================
  33. module PS0
  34.   module Draw_Text_DF

  35.     # 是否对str做前检测(若设定为false则一直使用逐字描绘/两次描绘)
  36.     DO_PRE_CHECK = true

  37.     # 默认字体(在这里指定了就不要再在MAIN里指定了)
  38.     Font.default_name = "微軟正黑體"

  39.     # 英文字体
  40.     ENG_FONT = "Humanst521 BT"

  41.     # 作用范围
  42.     # 0:全部字体
  43.     # 1:仅默认字体(即特殊指定的除外)
  44.     DO_CHANGE = 1

  45.     # 中英文混排时的描绘方式
  46.     # 0:逐字描绘
  47.     # 1:分段描绘
  48.     DRAW_TYPE = 0

  49.     # 自定义匹配
  50.     # 若不需要符号请将REG2、REG3清空但保留外侧半角双引号
  51.     REG1 = "0-9A-Za-z "                 # 数字、大小写字母、半角空格
  52.     REG2 = ";:?!@#%^&*(){}[]=-+_/|,.<>" # 一般符号
  53.     REG3 = "\"\'\$\\"                   # 特殊符号(要在前面加"\")

  54.     # 生成真正的正则式(若不清楚切勿随意修改下一行)
  55.     REG = /[#{REG1 + (REG2+REG3).gsub!(/./) { "\\" + [        DISCUZ_CODE_0        ] }}]/

  56.   end
  57. end
  58. #==============================================================================

  59. class Bitmap
  60.   #--------------------------------------------------------------------------
  61.   # ● Draw text
  62.   #--------------------------------------------------------------------------
  63.   alias old_draw_text draw_text
  64.   def draw_text(*args)
  65.   #--------------------------------------------------------------------------
  66.   # 当特殊字体且设定为不对特殊字体进行替换时,直接调用原有方式
  67.   if self.font.name != Font.default_name && PS0::Draw_Text_DF::DO_CHANGE == 1
  68.     old_draw_text(*args)
  69.   else
  70.   #--------------------------------------------------------------------------
  71.     # 记录默认字体
  72.     last_font_name = self.font.name
  73.     # 获取参数
  74.     if args[0].is_a?(Rect)
  75.       rect, str, align = args[0..2]
  76.       x, y, width, height = rect.x, rect.y, rect.width, rect.height
  77.     else
  78.       x, y, width, height, str, align = args[0..5]
  79.     end
  80.     str = str.to_s
  81.     align = 0 if align.nil?
  82.     # 执行前检测
  83.     if PS0::Draw_Text_DF::DO_PRE_CHECK == true
  84.       if str.scan(PS0::Draw_Text_DF::REG).size == 0 # 纯中文
  85.         old_draw_text(*args)
  86.       elsif str.scan(PS0::Draw_Text_DF::REG).size == str.size # 纯英文
  87.         change_to_eng_font
  88.         old_draw_text(*args)
  89.       else
  90.         case PS0::Draw_Text_DF::DRAW_TYPE
  91.         when 0 ; draw_text_1by1(x, y, width, height, str, align)
  92.         when 1 ; draw_text_npass(x, y, width, height, str, align)
  93.         end
  94.       end
  95.     else
  96.       case PS0::Draw_Text_DF::DRAW_TYPE
  97.       when 0 ; draw_text_1by1(x, y, width, height, str, align)
  98.       when 1 ; draw_text_npass(x, y, width, height, str, align)
  99.       end
  100.     end
  101.     # 还原默认字体
  102.     self.font.name = last_font_name
  103.   end # <- 检测特殊字体
  104.   end
  105.   #--------------------------------------------------------------------------
  106.   # ○ 逐字描绘
  107.   #--------------------------------------------------------------------------
  108.   def draw_text_1by1(x, y, width, height, str, align)
  109.     # 记录默认字体
  110.     last_font_name = self.font.name
  111.     # 临时变量(x坐标偏移量)
  112.     ox = 0
  113.     # 根据不同对齐方式计算基础x坐标
  114.     if align == 0 # 居左
  115.       bx = x
  116.     else
  117.       # 分离两种字体对应的str以实现非等宽字体的长度识别
  118.       str1 = str.clone.gsub!(PS0::Draw_Text_DF::REG)            { "" }
  119.       str2 = str.clone.gsub!(/(?!#{PS0::Draw_Text_DF::REG})./)  { "" }
  120.       str_width = text_size(str1).width
  121.       change_to_eng_font
  122.       str_width += text_size(str2).width
  123.       case align
  124.       when 0 # 居左
  125.         bx = x
  126.       when 1 # 居中
  127.         bx = x + (width - str_width) / 2
  128.       when 2 # 居右
  129.         bx = x + (width - str_width)
  130.       end
  131.     end
  132.     # 给字符串结尾添加特殊符号
  133.     str += "\P"
  134.     # 提取单个文字
  135.     while (!(c = str.slice!(/./m)).nil?)
  136.       # 还原默认字体
  137.       self.font.name = last_font_name
  138.       # 当满足正则匹配则替换字体
  139.       change_to_eng_font if c.slice(PS0::Draw_Text_DF::REG)
  140.       # 把前面的特殊符号删去(兼容Window_Command类的矩形选框)
  141.       if c == "\P"
  142.         c = ""
  143.       else
  144.         # 调用原方法
  145.         old_draw_text((bx + ox), y, width, height, c, 0)
  146.         # 横坐标偏移量
  147.         ox += text_size(c).width
  148.       end
  149.     end
  150.   end
  151.   #--------------------------------------------------------------------------
  152.   # ○ 变更为英文字体
  153.   #--------------------------------------------------------------------------
  154.   def change_to_eng_font
  155.     self.font.name = PS0::Draw_Text_DF::ENG_FONT
  156.   end
  157. end
复制代码
因为现实太残酷、所以我们都在打造虚幻的天堂。如果现实不再残酷,也是因为有这快乐的天堂。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
48 小时
注册时间
2013-1-16
帖子
29
6
发表于 2013-4-3 21:24:50 | 只看该作者
Font.default_name = "你想要的字体名称"#
放在脚本栏main的第八行 前提是你的电脑要有这个字体
Q
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
54
在线时间
197 小时
注册时间
2012-12-15
帖子
689
7
 楼主| 发表于 2013-4-4 19:46:44 | 只看该作者
第86行发生NameError   
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-26 13:34

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表