文本 |
您所在的位置:网站首页 › flash逐字渐变出现 › 文本 |
文本 link
Ren’Py内涵多种方式用于显示文本。 say 和 menu 语句就会用到文本显示。 用户接口通常都包含文本,显示时使用 text, textbutton, 和 label screen语言语句。这些screen语句加上其他的函数,可以创建 Text() 文本组件,并在界面上展示出来。 文本组件用于管理显示给用户的文本内容。文本组件按以下顺序执行行为: 转化文本。 在文本中内插数据 使用样式和文本标签将文本样式化。 给样式化后的文本布局。 将文本内容绘制到界面上。 本节内容讨论在Ren’Py中处理文本显示问题的过程。 转义字符 link对Ren’Py来说,有3个特殊字符能控制文本显示。创作者需要注意,这3个字符的写法不要让引擎产生曲解。 (反斜杠)反斜杠用于Ren’Py字符串中的字符转义。一些常见的转义符号如下: \” (反斜杠双引号)两端用双引号标识的字符串中含有一个双引号。 \’ (反斜杠单引号)两端用单引号标识的字符串中含有一个单引号。 \ (双引号空格)在Ren’Py字符串中含有一个额外的空格。默认情况下,Ren’Py脚本会将一段连续的空白转为一个空格字符。 \n (反斜杠-字符n)文本含有一个换行符。 \\ (反斜杠-反斜杠)文本含有一个反斜杠字符。 \% (反斜杠-百分号)文本中包含一个百分号字符。 也可以写作 %%。 两种写法都会显示为一个百分号。 [ (左方括号)左方括号用于转义在文本中内插的值。如果要在文本中包含左方括号,需要写两个左方括号 —— [[ 。 { (左花括号)左花括号用于转义文本标签(tag)。如果要在文本中包含左花括号,需要写两个左花括号 —— {{ 。 【 (左方头凹形括号)左方头凹形括号用于引入Ruby/片假名文本。若要在文本中直接显示左方头凹形括号,需要写两个连续的方头凹形括号 【【。 内插数值 linkRen’Py支持在文本字符串中内插数值。例如,假设用户名字存储在 playername 变量中,我们可以写这样一行对话: g "欢迎来到猫耳协会, [playername] !"Ren’Py会按以下顺序搜索变量: 在某个界面中时,搜索界面本地变量。 搜索 interpolate 命名空间的变量。 搜索全局变量。 Ren’Py并不限制只允许内插简单变量值,也支持合法的Python表达式。以下写法也是可以的: g "我姓 [player.names[0]]。"显示数值之前可以先进行格式化。下面的例子显示的是一个保留小数点后两位的浮点数: g "我百分之 [100.0 * points / max_points:.2] 喜欢你!"Ren’Py字符串的数值内插符合 PEP 3101 的字符串格式规范。 Ren’Py字符串内插使用 [ ,因为 { 被用于文本标签(tag)了。 还有,Ren’Py支持!s、!r、!q和!t等转换标记。!q转换标记表示文本标签(tag)内引号已经正确匹配和使用,显示字符串时不会转义为不希望出现的格式。举例: g "你别想忽悠我, [playername!q] !"!t转换标记会转换或计算内插字符串的值: if points > 5: $ mood = _("高兴") else: $ mood = _("头大") g "见到你我很 [mood!t] 。"!i 标识会在字符串中执行一次额外的插值: define earned_points_info = _("[points]{image=points.png} 赢得点数") g "我很高兴看到你 [earned_points_info!ti] "界面语言中会经常用到,详见 常量文本 。 !u 标识强制将(英文)文本转为大写, !l 标识强制将(英文)文本转为小写。 !c 标识将首字母大写。 这些标识可以联用,比如使用 !cl 可以将首字母大写,后面所有文本强制小写。 有几个点需要注意: 标记的使用顺序不会影响最终结果: !cl 与 !lc 是一样的。 各标记前补充感叹号将被忽略,并且依然遵循上一条规则: !l!c、!c!l 和 !cl 的结果都是一样的。 具体变换遵照以下顺序进行: r/s (替换字符串) t (多语言) i (循环插值) q (引用) u (将字母大写) l (将字母小写) c (首字母大写) 样式化和文本标签(tag) link在Ren’Py中,文本有两种方式获取样式(style)信息。第一种是,根据整个文本段落(block)应用的样式获取。请详见 样式系统 及 文本样式特性 部分的内容。 第二种是,通过使用文本标签(tag)。文本标签(tag)可用于一个文本段落(block)中一部分的样式化,也可以用于程序中所有文本段落中一部分的样式化。如果你发现自己在文本的每一行里都应用了同样的文本标签,可以考虑使用样式代替这种做法。 总共有两种文本标签。某些文本标签是自闭合的,而有些文本标签需要成对的闭合标签。当多个成对的闭合标签出现时,闭合顺序必须是后出现的标签先闭合——Ren’Py会拒绝不正确匹配。例如: # 这行是正确的 "Plain {b}Bold {i}Bold-Italic{/i} Bold{/b} Plain" # 这行是不正确的,并会引起报错或不正确的画面表现 "Plain {b}Bold {i}Bold-Italic{/b} Italic{/i} Plain"某些文本标签可以带一个入参。带入参的文本标签后面会带一个等号(=),后面跟参数值。入参不能含有右花括号(})。入参的含义根据不同的文本标签而不同。 通用文本标签 link通用文本标签可以应用于如下文本: a link锚点标签在其自身和自己的闭合标签内,创建了一个超链接。超链接的行为表现由 hyperlink_functions 样式特性控制。 默认的处理包含以下行为: 当入参以 jump: 开头,入参的其余部分是要跳转的脚本标签(label)名。 当入参以 call: 开头,入参的其余部分是要调用的脚本标签(label)名。通常来说,call执行完后会回到当前的Ren’Py语句。 当入参以 call_in_new_context: 开头,入参的其余部分是某个新的上下文(使用 renpy.call_in_new_context() 函数)中需要调用的脚本标签名。 当入参以 show: 开头,入参的其余部分是待显示的界面。 当入参以 showmenu: 开头,入参的其余部分是待显示的游戏菜单界面。 除了以上情况,入参是一个URL,可以使用系统web浏览器打开。 如果在入参中没有显式的协议头, config.hyperlink_protocol 中配置的值会自动添加到入参头部。如果 config.hyperlink_protocol 已经被配置为“jump”,{a=label}跟{a=jump:label}就是等价的。创作者可以使用 config.hyperlink_handlers 配置一个新的协议名称。 label test: e "你可以访问 {a=https://renpy.org}Ren'Py's 主页{/a}。" e "或者 {a=jump:more_text}这里来得到更多信息{/a}." return label more_text: e "在阿肯萨斯的温泉,有一座可以作为拍照景点的阿尔·卡彭雕像。" e "这就是更多信息,但不是你想要的那种对不?" return alpha linkalpha文本标签(tag)指定一个透明度,渲染范围为自身及其闭合标签内的文本。透明度是一个介于0.0和1.0之间的数值,分别对应完全透明和完全不透明。若这个数值前缀带有+或者-,则表示是在原有透明度基础上做相应增减。若这个数值前缀带有 *, 该数值与原值相乘的积作为透明度。 "{alpha=0.1}这字完全不能看!{/alpha}" "{alpha=-0.1}现在字的透明度少了10\%{/alpha}" "{alpha=*0.5}字的透明度是默认的50\%。{/alpha}" alt linkalt文本标签(tag)将阻止文本内容被渲染,不过TTS系统依然有效: g "Good to see you! {image=heart.png}{alt}heart{/alt}"还可以查看 alt 角色相关内容. art linkart文本标签(tag)会把闭合标签内的文本作为ruby文本的顶部文字显示。 详见 Ruby文本 。 b link粗体标签,将自身及其毕业标签内的文本渲染为粗体。 "一个 {b}粗体测试{/b}。" color link颜色文本标签将自身及其闭合标签内的文本渲染为特定的颜色值。颜色值使用#rgb、#rgba、#rrggbb或#rrggbbaa格式。 "{color=#f00}红色{/color}, {color=#00ff00}绿色{/color}, {color=#0000ffff}蓝色{/color}" cps link“每秒钟字符数”标签设置了文本显示速度,作用范围为标签自身及其闭合标签范围内文本。若入参开头带有一个星号和数字n,表示使用文本n倍速显示。如果没有星号,则数字n表示每秒显示n个字符。 "{cps=20}固定速度{/cps} {cps=*2}两倍速{/cps} font link字体标签将标签自身及其闭合区间之间的文本渲染为指定的字体。入参即使用的字体文件名。 "尝试使用字体 {font=mikachan.ttf}mikachan font{/font}。" i link斜体标签将自身及其闭合标签之间的文本渲染为斜体。 "游览 {i}比萨斜塔{/i}。" image link图片标签是一个自闭合标签,作用是在文本中内插一个图片。内插的图片高度应该和单行文本的高度一致。入参可以是图片文件名,或者使用image语句定义的图像名。 g "见到你真好! {image=heart.png}{alt}heart{/alt}" k link字偶距标签调整文本字偶距,作用范围为其自身及其闭合标签之间的文本。其使用一个浮点数值作为入参,该值给定了字符之间增加的距离,单位是像素(该值也可以是负值,表示字符之间缩小的距离)。 "{k=-.5}Negative{/k} Normal {k=.5}Positive{/k}" noalt linknoalt标签将防止文本被TTS系统使用。经常与 alt 标签一起使用,提供可见选项。 g "见到你真好! {noalt} |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |