Project1

标题: [3V]求脚本:自动换行的draw_text [打印本页]

作者: zh99998    时间: 2009-8-11 17:46
标题: [3V]求脚本:自动换行的draw_text
对默认的draw_text加强
类似这个的http://rpg.blue/viewthread.php?tid=116315
要求:
0.自动换行,不要手动加\n
1.默认的超长自动缩小功能仍然可用(也就是说必须一次描绘一行而不能一个字符一个字符描绘)
作者: IamI    时间: 2009-8-11 17:46
据说要占个楼?

Plus.rar

350.36 KB, 下载次数: 160


作者: zh99998    时间: 2009-8-11 18:16
你这还是一个字一个字描绘的啊,如果有宽度不等的字符不会出问题吗[line]1[/line]:funk: 发现了大量浮点……于是好像就不会出现问题了……
不过一个字一个字描绘加上大量浮点不知道效率咋样。。。。。。
这是一个很好的思路……
作者: wsffx13    时间: 2009-8-11 19:56
目前能想到的只有一字一字描绘……
或者换个思路,在窗口刷新时运用:

#--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    s = []
    s = @show_text.scan(/./)
    xx = 4
    yy = 0
    for i in s
      sss = self.contents.text_size(i)
      if (xx + sss.width) > (width - 32)#超过屏幕就换行
        yy += WLH
        xx = 4
      end
      self.contents.draw_text(xx, yy, sss.width, WLH, i)
      xx += sss.width
    end
   
  end


@show_text里存放文字,优点为不是计数,而依窗口宽度决定,不用担心字体大小不一致…缺点也就是执行率了……(不过影响好像也不大。)
作者: 沉影不器    时间: 2009-8-11 20:16
提示: 作者被禁止或删除 内容自动屏蔽
作者: wsffx13    时间: 2009-8-11 20:31
自动缩小了还需要自动换行么...反之...
沉影不器 发表于 2009-8-11 20:16


其实我也很想问这个问题……这两者是基本对立而存在的吧……




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