加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 Majirefy 于 2012-4-19 23:20 编辑
在Ace中,Window_MapName中定义了一个方法:draw_update(rect)。
想将这个稍微改造一下,实现成一种效果,在地图的名字下面画一条长长的两边都渐变的直线,当然有一定的宽度。
不知道有什么好办法。
自己改造了一下这个方法:
def draw_background(rect) temp_rect = rect.clone temp_rect.width /= 2 temp_rect.y = FONT_SIZE - PADDING temp_rect.height = LINE_HEIGHT contents.gradient_fill_rect(temp_rect, back_color2, back_color1) temp_rect.x = temp_rect.width contents.gradient_fill_rect(temp_rect, back_color1, back_color2) end
def draw_background(rect)
temp_rect = rect.clone
temp_rect.width /= 2
temp_rect.y = FONT_SIZE - PADDING
temp_rect.height = LINE_HEIGHT
contents.gradient_fill_rect(temp_rect, back_color2, back_color1)
temp_rect.x = temp_rect.width
contents.gradient_fill_rect(temp_rect, back_color1, back_color2)
end
FONT_SIZE = 36
PADDING = 12
LINE_HEIGHT = 4
两个颜色都是白色:
def back_color1 Color.new(255, 255, 255, 220) end
def back_color1
Color.new(255, 255, 255, 220)
end
def back_color2 Color.new(255, 255, 255, 0) end
def back_color2
Color.new(255, 255, 255, 0)
end
不知道有什么更好的方法,因为对contents进行渐变填充的话,其最低点的y坐标会和这个窗口的一样,而设想是和文字稍微隔开一点距离。
具体想要的效果如下:
当然背景是透明的,方便看而已
那个直线也是渐变的……(好吧,自己没有用画图软件做出来……) |