| 包 | flash.text |
| 类 | public class TextFormat |
| 继承 | TextFormat Object |
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
必须先使用构造函数 new TextFormat() 创建 TextFormat 对象,才能设置该构造函数的属性。 默认情况下,TextFormat 属性为 null,因为如果没有提供属性值,Flash Player 将使用自己的默认格式设置。 Flash Player 用于各个属性的默认格式(如果属性的值为 null)如下所示:
| align = "left" |
| blockIndent = 0 |
| bold = false |
| bullet = false |
| color = 0x000000 |
| font = "Times New Roman"(在 Mac OS X 上,默认字体为 Times) |
| indent = 0 |
| italic = false |
| kerning = false |
| leading = 0 |
| leftMargin = 0 |
| letterSpacing = 0 |
| rightMargin = 0 |
| size = 12 |
| tabStops = [] (empty array) |
| target = ""(empty string) |
| underline = false |
| url = ""(empty string) |
各个属性的默认格式设置在各自的说明中也有所描述。
另请参见
| 属性 | 定义方 | ||
|---|---|---|---|
| align : String
指示段落的对齐方式。
| TextFormat | ||
| blockIndent : Object
指示块缩进,以像素为单位。
| TextFormat | ||
| bold : Object
指定文本是否为粗体字。
| TextFormat | ||
| bullet : Object
指示文本为带项目符号的列表的一部分。
| TextFormat | ||
| color : Object
指示文本的颜色。
| TextFormat | ||
![]() | constructor : Object
对类对象或给定对象实例的构造函数的引用。
| Object | |
| font : String
使用此文本格式的文本的字体名称,以字符串形式表示。
| TextFormat | ||
| indent : Object
指示从左边距到段落中第一个字符的缩进。
| TextFormat | ||
| italic : Object
指示使用此文本格式的文本是否为斜体。
| TextFormat | ||
| kerning : Object
一个布尔值,指示是启用 (true) 还是禁用 (false) 字距调整。
| TextFormat | ||
| leading : Object
一个整数,表示行与行之间的垂直间距(称为前导)量。
| TextFormat | ||
| leftMargin : Object
段落的左边距,以像素为单位。
| TextFormat | ||
| letterSpacing : Object
一个数字,表示在所有字符之间均匀分配的空间量。
| TextFormat | ||
![]() | prototype : Object
[static]
对类或函数对象的原型对象的引用。
| Object | |
| rightMargin : Object
段落的右边距,以像素为单位。
| TextFormat | ||
| size : Object
使用此文本格式的文本的磅值。
| TextFormat | ||
| tabStops : Array
将自定义 Tab 停靠位指定为一个非负整数的数组。
| TextFormat | ||
| target : String
指示显示超链接的目标窗口。
| TextFormat | ||
| underline : Object
指示使用此文本格式的文本是带下划线 (true) 还是不带下划线 (false)。
| TextFormat | ||
| url : String
指示使用此文本格式的文本的目标 URL。
| TextFormat | ||
| 方法 | 定义方 | ||
|---|---|---|---|
|
TextFormat(font:String = null, size:Object = null, color:Object = null, bold:Object = null, italic:Object = null, underline:Object = null, url:String = null, target:String = null, align:String = null, leftMargin:Object = null, rightMargin:Object = null, indent:Object = null, leading:Object = null)
创建一个具有指定属性的 TextFormat 对象。
| TextFormat | ||
![]() |
指示对象是否已经定义了指定的属性。
| Object | |
![]() |
指示 Object 类的实例是否在指定为参数的对象的原型链中。
| Object | |
![]() |
指示指定的属性是否存在、是否可枚举。
| Object | |
![]() |
设置循环操作动态属性的可用性。
| Object | |
![]() |
返回指定对象的字符串表示形式。
| Object | |
![]() |
返回指定对象的原始值。
| Object | |
| align | 属性 |
align:String [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
指示段落的对齐方式。 有效值为 TextFormatAlign 常数。
默认值为 TextFormatAlign.LEFT.
public function get align():String
public function set align(value:String):void
ArgumentError — 指定的 align 不是 flash.text.TextFormatAlign 的成员。
|
另请参见
| blockIndent | 属性 |
blockIndent:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
指示块缩进,以像素为单位。 块缩进应用于整个文本块,即文本的所有行。 而普通缩进 (TextFormat.indent) 只影响各段的第一行。 如果此属性为 null,则 TextFormat 对象不指定块缩进(块缩进为 0)。
public function get blockIndent():Object
public function set blockIndent(value:Object):void
| bold | 属性 |
bold:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
指定文本是否为粗体字。 默认值为 null,这意味着不使用粗体字。 如果值为 true,则文本为粗体字。
public function get bold():Object
public function set bold(value:Object):void
| bullet | 属性 |
bullet:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
指示文本为带项目符号的列表的一部分。 在带项目符号的列表中,文本的各段都是缩进的。 项目符号显示在各段第一行的左侧。 默认值为 null,这意味着不使用带项目符号的列表。
public function get bullet():Object
public function set bullet(value:Object):void
| color | 属性 |
color:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
指示文本的颜色。 包含三个 8 位 RGB 颜色成分的数字;例如,0xFF0000 为红色,0x00FF00 为绿色。 默认值为 null,这意味着 Flash Player 使用黑色 (0x000000)。
public function get color():Object
public function set color(value:Object):void
| font | 属性 |
font:String [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
使用此文本格式的文本的字体名称,以字符串形式表示。 默认值为 null,这意味着 Flash Player 对文本使用 Times New Roman 字体。
public function get font():String
public function set font(value:String):void
| indent | 属性 |
indent:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
指示从左边距到段落中第一个字符的缩进。 默认值为 null,它指示不使用缩进。
public function get indent():Object
public function set indent(value:Object):void
另请参见
| italic | 属性 |
italic:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
指示使用此文本格式的文本是否为斜体。 默认值为 null,这意味着不使用斜体。
public function get italic():Object
public function set italic(value:Object):void
| kerning | 属性 |
kerning:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
一个布尔值,指示是启用 (true) 还是禁用 (false) 字距调整。 通过字距调整可为了提高可读性而调整某些字符对之间的像素,并且只在需要时(如使用大字体标题时)使用字距调整。 仅嵌入字体支持字距调整。
某些字体(如宋体)和等宽字体(如 Courier New)不支持字距调整。
默认值为 null,这意味着没有启用字距调整。
public function get kerning():Object
public function set kerning(value:Object):void
| leading | 属性 |
leading:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
一个整数,表示行与行之间的垂直间距(称为前导)量。 默认值为 null,它指示使用的前导量为 0。
public function get leading():Object
public function set leading(value:Object):void
| leftMargin | 属性 |
leftMargin:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
段落的左边距,以像素为单位。 默认值为 null,它指示左边距为 0 像素。
public function get leftMargin():Object
public function set leftMargin(value:Object):void
| letterSpacing | 属性 |
letterSpacing:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
一个数字,表示在所有字符之间均匀分配的空间量。 该值指定在每个字符之后添加到进距的像素数。 默认值为 null,这意味着使用的字母间距为 0 个像素。 可以使用十进制值,如 1.75。
public function get letterSpacing():Object
public function set letterSpacing(value:Object):void
| rightMargin | 属性 |
rightMargin:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
段落的右边距,以像素为单位。 默认值为 null,它指示右边距为 0 像素。
public function get rightMargin():Object
public function set rightMargin(value:Object):void
| size | 属性 |
size:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
使用此文本格式的文本的磅值。 默认值为 null,这意味着使用的磅值为 12。
public function get size():Object
public function set size(value:Object):void
| tabStops | 属性 |
tabStops:Array [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
将自定义 Tab 停靠位指定为一个非负整数的数组。 指定每个 Tab 停靠位,以像素为单位。 如果没有指定自定义 Tab 停靠位 (null),则默认的 Tab 停靠位为 4(平均字符宽度)。
public function get tabStops():Array
public function set tabStops(value:Array):void
| target | 属性 |
target:String [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
指示显示超链接的目标窗口。 如果目标窗口为空字符串,则文本显示在默认目标窗口 _self 中。 可以选择自定义名称或以下四种名称中的一个:_self 指定当前窗口中的当前帧,_blank 指定一个新窗口,_parent 指定当前帧的父级,_top 指定当前窗口中的顶级帧。 如果 TextFormat.url 属性是空字符串或 null,则虽然您可以获取或设置此属性,但该属性不起作用。
public function get target():String
public function set target(value:String):void
另请参见
| underline | 属性 |
underline:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
指示使用此文本格式的文本是带下划线 (true) 还是不带下划线 (false)。 此下划线类似于用 <U> 标签生成的下划线,但后者不是真正的下划线,因为它不能正确地跳过下行字符。 默认值为 null,它指示不使用下划线。
public function get underline():Object
public function set underline(value:Object):void
| url | 属性 |
url:String [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
指示使用此文本格式的文本的目标 URL。 如果 url 属性为空字符串,则文本没有超链接。 默认值为 null,它指示文本没有超链接。
注意:必须使用 htmlText 属性对具有指定文本格式的文本进行设置以使超链接起作用。
public function get url():String
public function set url(value:String):void
另请参见
| TextFormat | () | 构造函数 |
public function TextFormat(font:String = null, size:Object = null, color:Object = null, bold:Object = null, italic:Object = null, underline:Object = null, url:String = null, target:String = null, align:String = null, leftMargin:Object = null, rightMargin:Object = null, indent:Object = null, leading:Object = null)
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9. |
创建一个具有指定属性的 TextFormat 对象。 然后可更改 TextFormat 对象的属性以更改文本字段的格式设置。
任何参数都可设置为 null 以指示该参数未定义。 所有参数都是可选的;任何省略的参数都被视为 null。
font:String (default = null) — 以字符串形式表示的文本字体名称。
|
|
size:Object (default = null) — 一个指示磅值的整数。
|
|
color:Object (default = null) — 使用此文本格式的文本的颜色。 包含三个 8 位 RGB 颜色成分的数字;例如,0xFF0000 为红色,0x00FF00 为绿色。
|
|
bold:Object (default = null) — 一个布尔值,指示文本是否为粗体字。
|
|
italic:Object (default = null) — 一个布尔值,指示文本是否为斜体。
|
|
underline:Object (default = null) — 一个布尔值,指示文本是否带有下划线。
|
|
url:String (default = null) — 使用此文本格式的文本超链接到的 URL。 如果 url 为空字符串,则表示文本没有超链接。
|
|
target:String (default = null) — 显示超链接的目标窗口。 如果目标窗口为空字符串,则文本显示在默认目标窗口 _self 中。 如果 url 参数设置为空字符串或值 null,虽然您可以获取或设置此属性,但该属性不起作用。
|
|
align:String (default = null) — 段落的对齐方式,作为 TextFormatAlign 值。
|
|
leftMargin:Object (default = null) — 指示段落的左边距,以像素为单位。
|
|
rightMargin:Object (default = null) — 指示段落的右边距,以像素为单位。
|
|
indent:Object (default = null) — 一个整数,指示从左边距到段落中第一个字符的缩进。
|
|
leading:Object (default = null) — 一个数字,指示行与行之间的前导垂直间距量。
|
formatTextField 文本字段将在单独的行中列出所有 TextField 类属性选项(kerning 除外)。 当用户单击 formatTextField 文本字段中的某一行时,将触发 formatTextFieldClickHandler() 方法。
formatTextFieldClickHandler() 方法调用 TextField.getLineIndexAtPoint() 方法以获取所单击的行的索引,然后调用 TextField.getLineText() 方法以获取行内容。 接下来,switch 语句检查行内容,并相应地设置 newformat TextFormat 对象的属性。 然后,setTextFormat() 方法将 contentTextField 文本字段的文本格式设置为新格式。 通过单击不同的 formatTextField 行,用户可以将一组不同的格式应用于 contentTextField 文本字段。 (请注意,Tab 设置是一个数组,它为行中的每个 Tab 定义了单独的 Tab 停靠位。 如果选择了 url 或 target 行,用户必须单击 contentTextField 文本字段以激活链接并显示目标 URL(Flex 主页)的内容。 target 属性的默认值为“_self”,这意味着,如果用户选择了 url 行,则会在当前窗口中显示该内容。 为使 target 属性能够正常工作,必须已在 url 属性中设置了 URL。
如果用户单击 contentTextField 文本字段,将触发 contentTextFieldClickHandler() 方法,它将该字段的格式以及 newFormat TextFormat 对象设置为默认(原始)文本字段格式。 此操作将清除用户进行的所有格式更改。
package {
import flash.display.Sprite;
import flash.text.TextField;
import flash.text.TextFormat;
import flash.text.TextFieldAutoSize;
import flash.events.MouseEvent;
import flash.text.TextFormatAlign;
public class TextFormat_constructorExample extends Sprite {
private var contentTextField:TextField = new TextField();
private var formatTextField:TextField = new TextField();
private var newFormat:TextFormat = new TextFormat();
public function TextFormat_constructorExample() {
contentTextField.x = 10;
contentTextField.y = 10;
contentTextField.background = true;
contentTextField.border = true;
contentTextField.multiline = true;
contentTextField.wordWrap = true;
contentTextField.selectable = false;
contentTextField.width = 250;
contentTextField.height = 120;
contentTextField.htmlText = "<p>The TextFormat class represents character formatting "
+ "information. Use the TextFormat class to create specific text formatting "
+ "for text fields." +
" </p><br>" + "\tTab One" + "\tTab Two<br>";
formatTextField.x = 10;
formatTextField.y = 140;
formatTextField.background = true;
formatTextField.border = true;
formatTextField.autoSize = TextFieldAutoSize.LEFT;
formatTextField.text = "align: right\n" + "blockIndent: 10 pixels\n" + "bold:\n" + "bullet:\n" + "color: red\n"
+ "font: Arial\n" + "indent: 20 pixels\n" + "italic:\n" + "leading: 5 spaces\n"
+ "leftMargin: 20 pixels\n" + "letterSpacing: 4 pixels\n" + "rightMargin: 20 pixels\n"
+ "size: 16 point\n" + "target: new window\n" + "tabStops: 50 and 150 pixel\n"
+ "underline:\n" + "url: Adobe Flex page\n";
formatTextField.addEventListener(MouseEvent.CLICK, formatTextFieldClickHandler);
contentTextField.addEventListener(MouseEvent.CLICK, contentTextFieldClickHandler);
this.addChild(contentTextField);
this.addChild(formatTextField);
}
private function formatTextFieldClickHandler(e:MouseEvent):void {
var value:String= "";
var i:uint = 0;
var index:int = formatTextField.getLineIndexAtPoint(e.localX, e.localY);
var line:String = formatTextField.getLineText(index);;
line = line.substr(0, (line.indexOf(":")));
switch(line) {
case "align":
newFormat.align = TextFormatAlign.RIGHT;
break;
case "blockIndent":
newFormat.blockIndent = 10;
break;
case "bold":
newFormat.bold = true;
break;
case "bullet":
newFormat.bullet = true;
break;
case "color":
newFormat.color = 0xFF0000;
break;
case "font":
newFormat.font = "Arial";
break;
case "indent":
newFormat.indent = 20;
break;
case "italic":
newFormat.italic = true;
break;
case "leading":
newFormat.leading = 5;
break;
case "leftMargin":
newFormat.leftMargin = 20;
break;
case "letterSpacing":
newFormat.letterSpacing = 4;
break;
case "rightMargin":
newFormat.rightMargin = 20;
break;
case "size":
newFormat.size = 16;
break;
case "tabStops":
newFormat.tabStops = [50, 150];
break;
case "target":
newFormat.url = "http://www.adobe.com/products/flex/";
newFormat.target = "_blank";
break;
case "underline":
newFormat.underline = true;
break;
case "url":
newFormat.url = "http://www.adobe.com/products/flex/";
break;
}
contentTextField.setTextFormat(newFormat);
}
private function contentTextFieldClickHandler(e:MouseEvent):void {
contentTextField.setTextFormat(contentTextField.defaultTextFormat);
newFormat = contentTextField.defaultTextFormat;
}
}
}
label 属性。configureLabel()configureLabel() 函数首先创建一个新的 TextField 对象并将其赋给 label 然后将其参数设置为
configureLable() 创建局部变量 format 并将该变量赋给新的 TextFormat 实例,同时将其参数设置为
defaultTextFormat 属性设置为 format,而 label 实例将添加到显示列表中,此显示列表最初在舞台上显示不包含文本的文本字段(例如具有白色背景的小框)。setLabel(),标签的文本会设置为在坐标 x = 0,y = 0 处显示“Hello World and welcome to the show”。
package {
import flash.display.Sprite;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;
public class TextFormatExample extends Sprite {
private var label:TextField;
public function TextFormatExample() {
configureLabel();
setLabel("Hello World and welcome to the show");
}
public function setLabel(str:String):void {
label.text = str;
}
private function configureLabel():void {
label = new TextField();
label.autoSize = TextFieldAutoSize.LEFT;
label.background = true;
label.border = true;
var format:TextFormat = new TextFormat();
format.font = "Verdana";
format.color = 0xFF0000;
format.size = 10;
format.underline = true;
label.defaultTextFormat = format;
addChild(label);
}
}
}
当前页: http://livedocs.adobe.com/flash/9.0_cn/ActionScriptLangRefV3/flash/text/TextFormat.html