| 赞 | 0  | 
 
| VIP | 3 | 
 
| 好人卡 | 0 | 
 
| 积分 | 3 | 
 
| 经验 | 3830 | 
 
| 最后登录 | 2016-4-14 | 
 
| 在线时间 | 24 小时 | 
 
 
 
 
 
Lv2.观梦者 
	- 梦石
 - 0 
 
        - 星屑
 - 260 
 
        - 在线时间
 - 24 小时
 
        - 注册时间
 - 2008-8-2
 
        - 帖子
 - 128
 
 
 
 | 
	
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员  
 
x
 
 本帖最后由 谢谢合作 于 2010-7-12 03:28 编辑  
 
有很大一段信息要描绘(Bitmap)怎么办? 
再也不用一行一行的描绘了! 
 
主要用途: 
写脚本的时候,需要描绘多行字符, 
直接用draw_text_all(x, y, width, height, str, align,change_font)就行了。 
(所以,这个脚本对新手几乎没用,只是方便大家写脚本。) 
 
对于change_font ,系统自动适应放大缩小字体的话,请用true,默认为true。 
这里经过改良,已经达到非常精确的地步了! 
特殊情况您可以关掉此功能。 
 
话说这是我用VX做的、、、   
不过XP、VX通用啦。- class Bitmap
 
 -   #--------------------------------------------------------------------------
 
 -   # ● 描绘描绘字符串
 
 -   #     x, y, width, height:矩形坐标 
 
 -   #     str:                字符串
 
 -   #     align:              对齐方式
 
 -   #     change_font:        自动改变字体大小
 
 -   #--------------------------------------------------------------------------
 
 -   def draw_text_all(x, y, width, height, str, align = 0, change_font = true)
 
 -     str = str + "\n"
 
 -     # 获取行数(集成:换行标识替换,这里主要用于去掉那个框框)
 
 -     line_all = 0
 
 -     loop do
 
 -       if str[/\n/]
 
 -         str = str.sub(/\n/){'<hx>'}
 
 -         line_all += 1
 
 -       else
 
 -         break
 
 -       end
 
 -     end
 
 -     # 目标数组化
 
 -     s = []
 
 -     loop do
 
 -       break unless str[/<hx>/]
 
 -       for i in 0...str.size
 
 -         if str[i, 4] == "<hx>"
 
 -           s[s.size] = str[0, i]
 
 -           str.slice!(0, i+4)
 
 -           break
 
 -         end
 
 -       end
 
 -     end
 
 -     # 字体大小自动化
 
 -     if change_font
 
 -       size =  height * 0.75 / line_all
 
 -       if size > 96
 
 -         self.font.size = 96
 
 -       elsif size < 6
 
 -         self.font.size = 6
 
 -       else
 
 -         self.font.size = size
 
 -       end
 
 -     end
 
 -     # 描绘目标
 
 -     for j in 0...s.size
 
 -       draw_text(x, height / line_all.to_f * j + y, width, height / line_all.to_f, s[j], align)
 
 -     end
 
 -   end
 
  复制代码 |   
 
 
 
 |