Project1

标题: 关于阴影字的框线颜色 [打印本页]

作者: j433463    时间: 2012-12-13 09:20
标题: 关于阴影字的框线颜色
本帖最后由 j433463 于 2012-12-14 00:02 编辑

我知道 VA 有文字框线,据说也有阴影字,
好像在 main 中用:

RUBY 代码复制
  1. Font.default_shadow = true #阴影字
  2. Font.default_outline = true #框线字


可是阴影字我设置后一直看不到,而且阴影也是固定的,不能调整位置,
后来加上下面这个 XP 的阴影字脚本就看到了:

RUBY 代码复制
  1. class Font
  2.   #设定预设值
  3.   @default_shadow = true
  4.   [url=home.php?mod=space&uid=31758]@Shadow[/url] = @default_shadow
  5.   def default_shadow
  6.     @default_shadow = true if @default_shadow2 == nil
  7.     return @default_shadow
  8.   end
  9.   def default_shadow=(shadow)
  10.     @default_shadow = shadow
  11.   end
  12.   def shadow
  13.     [url=home.php?mod=space&uid=31758]@Shadow[/url] = self.default_shadow if @shadow == nil
  14.     return @shadow
  15.   end
  16.   def shadow=(shadow)
  17.     @shadow = shadow
  18.   end
  19. end
  20.  
  21. class Bitmap
  22.   alias old_draw_text draw_text
  23.   def draw_text(*args)
  24.     shadow = false
  25.     shadow = true if (self.font.shadow == true)
  26.     if args.size < 4
  27.       args[2] = 0 if args.size == 2
  28.       if shadow == true
  29.         args[0].x += 1
  30.         args[0].y += 1
  31.         color = Color.new(self.font.color.red, self.font.color.green, self.font.color.blue, self.font.color.alpha)
  32.         self.font.color.set(0, 0, 0, 255)
  33.         old_draw_text(args[0], args[1], args[2])
  34.         args[0].x -= 1
  35.         args[0].y -= 1
  36.         self.font.color = color
  37.       end
  38.       old_draw_text(args[0], args[1], args[2])
  39.     else
  40.       self.font.shadow = false
  41.       args[5] = 0 if args.size == 5
  42.       if shadow == true
  43.         args[0] += 1
  44.         args[1] += 1
  45.         color = Color.new(self.font.color.red, self.font.color.green, self.font.color.blue, self.font.color.alpha)
  46.         self.font.color.set(0, 0, 0, 255)
  47.         old_draw_text(args[0], args[1], args[2], args[3], args[4], args[5])
  48.         args[0] -= 1
  49.         args[1] -= 1
  50.         self.font.color = color
  51.       end
  52.       old_draw_text(args[0], args[1], args[2], args[3], args[4], args[5])
  53.       self.font.shadow = true
  54.     end
  55.   end
  56. end


没想到 XP 的脚本也有 VA 能用的,但有一个问题,就是阴影的颜色如果不是黑色,
譬如改成黄色阴影,如果字本身有框线,阴影好像也会加上黑色的边框,看起来怪怪的,
虽然可以用 self.font.outline = false 去掉框线,但我不想去掉框线,怎么改框线颜色?
  
作者: 6699.tv    时间: 2012-12-13 10:29
    在CorelDRAW9里边如何设置字体的两种颜色的外框线 8 2008-8-24   coreldraw9 里面的字体阴影部份怎么加颜色? 2008-2-22   coreldraw里的字体颜色怎么改变...
作者: 后知后觉    时间: 2012-12-13 13:07
本帖最后由 后知后觉 于 2012-12-13 13:12 编辑

去 F1 里找 字体 类 Font 的说明呗
不过好像没有阴影色只有外框色

out_color (RGSS3)
The outline color (Color). The default is (0,0,0,128).

上面这个是字体类的实例对象用的.下面这个是字体类自己用的
Font.default_out_color



还有就是如果字号比较小的话 那就最好不要用外框

作者: j433463    时间: 2012-12-13 13:53
谢谢,我的眼睛真的花了,居然没看到 out_color,只看到 Default_out_color,
还在奇怪怎么没有实例却有类的,查过十几次都会忽略它,真不应该。

默认 Font 方法中确实没有阴影色,但是脚本中可以设定阴影色,
如果不是脚本可以改 x,y 位置,小字加框就很杂乱,不能用阴影,
所以才想要用脚本。





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