运行时版本: | Flash Player 10, AIR 1.5 |
ElementFormat 类表示可应用于
ContentElement
的格式设置信息。使用 ElementFormat 类可以为 ContentElement 的各个子类创建特定的文本格式。ElementFormat 类的属性适用于设备字体和嵌入字体。
将 ElementFormat 对象应用于 TextBlock 中的 ContentElement 不会使 TextBlock 失效。将 ElementFormat 应用于 ContentElement 后,其 locked
属性将设置为 true
。无法更改已锁定 ElementFormat 对象的属性。相反,可以使用 clone()
方法创建此对象的没有锁定的副本,可以对此副本进行修改并将其分配给 ContentElement。
查看示例
alignmentBaseline:String
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
指定 dominantBaseline
紧贴到哪条包含该元素的行的基线,从而确定该元素在该行中的垂直位置。对此属性使用 flash.text.engine.TextBaseline
常量。
行中的最大元素将确定基线,除非设置 TextBlock.baselineFontDescription
和 TextBlock.baselineFontSize
设置来覆盖此逻辑。
默认值为 flash.text.engine.TextBaseline.USE_DOMINANT_BASELINE
。
若要设置此属性的值,请使用下列字符串值:
字符串值 | Description |
---|
TextBaseline.ROMAN
|
dominantBaseline 与该行的罗马字基线对齐。
|
TextBaseline.ASCENT
|
dominantBaseline 与该行的上缘基线对齐。
|
TextBaseline.DESCENT
|
dominantBaseline 与该行的下缘基线对齐。
|
TextBaseline.IDEOGRAPHIC_TOP
|
dominantBaseline 与该行的表意顶部基线对齐。
|
TextBaseline.IDEOGRAPHIC_CENTER
|
dominantBaseline 与该行的表意中心基线对齐。
|
TextBaseline.IDEOGRAPHIC_BOTTOM
|
dominantBaseline 与该行的表意底部基线对齐。
|
TextBaseline.USE_DOMINANT_BASELINE
|
dominantBaseline 与该行的同一基线对齐。
|
子类 | 设置属性的效果 |
---|
GraphicElement
|
设置图形元素的 dominantBaseline 所对齐的行的对齐基线。
|
GroupElement
| 没有任何效果。 |
TextElement
|
设置文本元素的 dominantBaseline 所对齐的行的对齐基线。
|
实现 public function get alignmentBaseline():String
public function set alignmentBaseline(value:String):void
引发 另请参见
alpha:Number
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
为作者提供了一种自动将基于元素格式的所有行原子的 alpha
属性设置为指定的 Number 的途径。
指示指定对象的 Alpha 透明度值。 有效值为 0(完全透明)到 1(完全不透明)。 默认值为 1。 Alpha 设置为 0 的显示对象是活动的,即使它们不可见。
默认值为 1.0
。
子类 | 设置属性的效果 |
---|
GraphicElement
|
对图形元素应用指定的 Alpha。与在图形的 DisplayObject 本身或在 TextLine 上设置的任何 Alpha 进行乘法合并。
|
GroupElement
| 没有任何效果。 |
TextElement
|
对文本元素应用指定的 Alpha。与在 TextLine 上设置的任何 Alpha 进行乘法合并。
|
实现 public function get alpha():Number
public function set alpha(value:Number):void
引发 另请参见
baselineShift:Number
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
指示元素的基线偏移,以像素为单位。
元素将按照这个量偏离 dominantBaseline
。此偏移量将加到元素成员的 y 位置中,因此在非旋转的文本中,正基线偏移会向下移动元素,负基线偏移会向上移动元素。
默认值为 0.0
,表示不偏移。
子类 | 设置属性的效果 |
---|
GraphicElement
| 将图形偏离基线。 |
GroupElement
| 没有任何效果。 |
TextElement
| 将文本偏离基线。 |
实现 public function get baselineShift():Number
public function set baselineShift(value:Number):void
引发 breakOpportunity:String
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
就用于此文本的换行。此属性确定在将换行文本分为多行时可用于断行的字符。对此属性使用 flash.text.engine.BreakOpportunity
常量。
默认值为 flash.text.engine.BreakOpportunity.AUTO
。
若要设置此属性的值,请使用下列字符串值:
字符串值 | Description |
---|
BreakOpportunity.AUTO
| 换行基于标准的 Unicode 字符属性,如在文字间以及在连字符处换行。 |
BreakOpportunity.ANY
|
ContentElement 对象中的任何字符均可换行。此值通常用于亚洲文字中嵌入罗马文字并需要在文字的中间换行的场合。
|
BreakOpportunity.NONE
| 范围内的任何字符均不可进行换行。 |
BreakOpportunity.ALL
| 范围内的所有字符均可进行换行。可用于创建路径文本这样的效果。 |
子类 | 设置属性的效果 |
---|
GraphicElement
| 没有任何效果。 |
GroupElement
|
确定组中相邻文本元素间的换行。如果组的 elementFormat 为 null ,则使用相邻元素中第一个元素的格式。
|
TextElement
| 确定文本元素中字符间的换行。 |
实现 public function get breakOpportunity():String
public function set breakOpportunity(value:String):void
引发 另请参见
color:uint
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
指示文本的颜色。一个包含三个 8 位 RGB 分量的整数;例如,0xFF0000 为红色,0x00FF00 为绿色。
默认值为 0x000000
,这意味着 Flash Player 使用黑色。
子类 | 设置属性的效果 |
---|
GraphicElement
| 没有任何效果。 |
GroupElement
| 没有任何效果。 |
TextElement
| 设置文本的颜色。 |
实现 public function get color():uint
public function set color(value:uint):void
引发 digitCase:String
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
用于此文本的数字大小写。数字大小写会影响数字字符组的样式和位置。对此属性使用 flash.text.engine.DigitCase
常量。
默认值为 flash.text.engine.DigitCase.DEFAULT
。
若要设置此属性的值,请使用下列字符串值:
字符串值 | Description |
---|
DigitCase.DEFAULT
| 对文本应用默认数字大小写。 |
DigitCase.LINING
| 对文本应用全高数字大小写。 |
DigitCase.OLD_STYLE
| 对文本应用旧样式数字大小写。 |
子类 | 设置属性的效果 |
---|
GraphicElement
| 没有任何效果。 |
GroupElement
| 没有任何效果。 |
TextElement
| 确定用于元素中的文本的数字大小写。 |
实现 public function get digitCase():String
public function set digitCase(value:String):void
引发 另请参见
digitWidth:String
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
用于此文本的数字宽度。对此属性使用 flash.text.engine.DigitWidth
常量。
默认值为 flash.text.engine.DigitWidth.DEFAULT
。
若要设置此属性的值,请使用下列字符串值:
字符串值 | Description |
---|
DigitWidth.DEFAULT
| 对文本应用默认数字宽度。 |
DigitWidth.PROPORTIONAL
| 对文本应用变宽数字宽度。 |
DigitWidth.TABULAR
| 对文本应用定宽数字宽度。 |
子类 | 设置属性的效果 |
---|
GraphicElement
| 没有任何效果。 |
GroupElement
| 没有任何效果。 |
TextElement
| 确定用于元素中的文本的数字宽度。 |
实现 public function get digitWidth():String
public function set digitWidth(value:String):void
引发 另请参见
dominantBaseline:String
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
指定该元素的哪条基线紧贴到 alignmentBaseline
以确定元素在该行上的垂直位置。对此属性使用 flash.text.engine.TextBaseline
常量。
元素的内容将确定基线。对于 TextElement
,字体和磅值将确定基线。对于 GraphicElement
,元素的高度将确定基线。
默认值为 flash.text.engine.TextBaseline.ROMAN
。
若要设置此属性的值,请使用下列字符串值:
字符串值 | Description |
---|
TextBaseline.ROMAN
|
元素的罗马字基线将与 alignmentBaseline 对齐。
|
TextBaseline.ASCENT
|
元素的上缘基线将与 alignmentBaseline 对齐。
|
TextBaseline.DESCENT
|
元素的下缘基线将与 alignmentBaseline 对齐。
|
TextBaseline.IDEOGRAPHIC_TOP
|
元素的表意顶部基线将与 alignmentBaseline 对齐。
|
TextBaseline.IDEOGRAPHIC_CENTER
|
元素的表意中心基线将与 alignmentBaseline 对齐。
|
TextBaseline.IDEOGRAPHIC_BOTTOM
|
元素的表意底部基线将与 alignmentBaseline 对齐。
|
子类 | 设置属性的效果 |
---|
GraphicElement
|
确定图形元素的哪些基线将与 alignmentBaseline 对齐。
|
GroupElement
| 没有任何效果。 |
TextElement
|
确定文本元素的哪些基线将与 alignmentBaseline 对齐。
|
实现 public function get dominantBaseline():String
public function set dominantBaseline(value:String):void
引发 另请参见
fontDescription:FontDescription
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
一个对象,其中封装说明字体所必需的属性.
默认值为默认构造的 FontDescription 对象。
如果设置了 fontDescription 属性,提供的 FontDescription 对象已锁定,则 locked
属性将设置为 true
。无法修改已锁定 FontDescription。
子类 | 设置属性的效果 |
---|
GraphicElement
| 没有任何效果。 |
GroupElement
| 没有任何效果。 |
TextElement
| 确定用于元素中的文本的字体。 |
实现 public function get fontDescription():FontDescription
public function set fontDescription(value:FontDescription):void
引发 另请参见
fontSize:Number
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
文本的大小,以像素为单位。
默认值为 12.0
。
子类 | 设置属性的效果 |
---|
GraphicElement
| 没有任何效果。 |
GroupElement
| 没有任何效果。 |
TextElement
| 确定元素中的文本的大小(以像素为单位)。 |
实现 public function get fontSize():Number
public function set fontSize(value:Number):void
引发 kerning:String
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
用于此文本的字距调整。对此属性使用 flash.text.engine.Kerning
常量。字距调整可调整特定字符对之间的像素以改善可读性。具有字距微调表的所有字体都支持字距调整。
默认值为 flash.text.engine.Kerning.ON
。
若要设置此属性的值,请使用下列字符串值:
字符串值 | Description |
---|
Kerning.ON
| 启用字距调整。 |
Kerning.OFF
| 禁用字距调整。 |
Kerning.AUTO
| 仅对适合采用中文版式的字符启用字距调整。如果两个字符都不是日文汉字、平假名或片假名,则在这两个字符之间应用字距调整。 |
子类 | 设置属性的效果 |
---|
GraphicElement
| 没有任何效果。 |
GroupElement
|
确定是否在组中的相邻文本元素间应用字距调整。如果组的 elementFormat 为 null ,则使用相邻元素中第一个元素的格式。
|
TextElement
| 确定是否在文本元素中的字符间应用字距调整。 |
实现 public function get kerning():String
public function set kerning(value:String):void
引发 ligatureLevel:String
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
用于此文本的连字级别。由两个或两个以上的字母结合在一起形成单个字型时就是连字。连字通常用于替换一些共享公共部分的连续字符,例如字母对“fi”、“fl”或“ae”。在拉丁语字符集和非拉丁语字符集中均可使用连字。对此属性使用 flash.text.engine.LigatureLevel
常量。
默认值为 flash.text.engine.LigatureLevel.COMMON
。
若要设置此属性的值,请使用下列字符串值:
字符串值 | Description |
---|
LigatureLevel.NONE
| 不创建任何连字。 |
LigatureLevel.MINIMUM
| 创建最少的连字。 |
LigatureLevel.COMMON
| 创建常见连字。 |
LigatureLevel.UNCOMMON
| 创建不常见连字。 |
LigatureLevel.EXOTIC
| 创建外来语连字。 |
子类 | 设置属性的效果 |
---|
GraphicElement
| 没有任何效果。 |
GroupElement
|
确定组中相邻文本元素间的连字级别。如果组的 elementFormat 为 null ,则使用相邻元素中第一个元素的格式。
|
TextElement
| 确定文本元素中字符间的连字级别。 |
实现 public function get ligatureLevel():String
public function set ligatureLevel(value:String):void
引发 另请参见
locale:String
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
文本的区域设置。控制大小写转换和形状。使用标准区域设置标识符。例如,"en"、"en_US" 和 "en-US" 均表示英语,"ja" 表示日语。
默认值为 "en"
。
子类 | 设置属性的效果 |
---|
GraphicElement
| 没有任何效果。 |
GroupElement
| 没有任何效果。 |
TextElement
| 确定元素中文本的转换和形状。 |
实现 public function get locale():String
public function set locale(value:String):void
引发 locked:Boolean
[读写]
运行时版本: | Flash Player 10, AIR 1.5. |
指示 ElementFormat 是否已锁定。如果为 true
,将无法修改 ElementFormat。调用 ElementFormat.clone()
获取 ElementFormat 对象的没有锁定的副本。
实现 public function get locked():Boolean
public function set locked(value:Boolean):void
引发 textRotation:String
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
设置应用于各个字型的旋转。对此属性使用 flash.text.engine.TextRotation
常量。
默认值为 flash.text.engine.TextRotation.AUTO
。
任何字型的最终旋转均为 ElementFormat.textRotation
、ContentElement.textRotation
与 TextBlock.lineRotation
之和。
应用 ElementFormat.textRotation
的一种典型情况是亚洲文字,亚洲文字的字符必须进行旋转才能在垂直布局中正确显示,此时,需要将 flash.text.engine.TextRotation.AUTO
值与 TextBlock.lineRotation = flash.text.engine.ROTATE_90
结合使用。
对不包含垂直布局信息的字体设置此属性可能会产生不良结果。包含 vmtx 或 VORG 表的字体(例如日文字体“MS Mincho”)将可以正常工作,因为这些表提供了布局引擎执行正确布局所需的数据。而未包含必要信息的字体(例如 Verdana)则不能正常工作。
若要设置此属性的值,请使用下列字符串值:
字符串值 | Description |
---|
TextRotation.ROTATE_0
| 不旋转字型。 |
TextRotation.ROTATE_90
| 将字型顺时针旋转 90 度。 |
TextRotation.ROTATE_180
| 将字型旋转 180 度。 |
TextRotation.ROTATE_270
| 将字型顺时针旋转 270 度。 |
TextRotation.AUTO
| 指定仅将全角和宽字型沿逆时针方向旋转 90 度,这是由字型的 Unicode 属性确定的。此值通常与亚洲文字一起使用,以便仅旋转那些需要旋转的字型。此旋转仅应用在垂直文本中,以将全角字符和宽字符返回到垂直方向,而不会影响其他的字符。 |
子类 | 设置属性的效果 |
---|
GraphicElement
| 没有任何效果。 |
GroupElement
| 没有任何效果。 |
TextElement
| 确定文本元素中字型的旋转。 |
实现 public function get textRotation():String
public function set textRotation(value:String):void
引发 另请参见
trackingLeft:Number
[读写]
运行时版本: | Flash Player 10, AIR 1.5. |
应用到每个字型左侧的间距或手动字距调整(以像素为单位)。如果启用 kerning
,则会将 trackingLeft
值与字体字距微调表中的值相加。如果禁用 kerning
,则使用 trackingLeft
值作为手动字距调整值。同时支持正值和负值。
通常,在 trackingRight
与 trackingLeft
之间拆分所需的间距值。否则,在混合方向文本中,一个双向边界处间距加倍,而另一个双向边界处不存在间距。
默认值为 0.0
。
子类 | 设置属性的效果 |
---|
GraphicElement
| 确定应用到图形左侧的间距。 |
GroupElement
| 没有任何效果。 |
TextElement
| 确定应用到文本元素中字符左侧的间距。 |
示例:
//positive tracking added to kerning
var ef1:ElementFormat = new ElementFormat();
ef1.kerning = flash.text.engine.Kerning.ON;
ef1.trackingLeft = 0.5;
//negative manual kerning
var ef2:ElementFormat = new ElementFormat();
ef2.kerning = flash.text.engine.Kerning.OFF;
ef2.trackingLeft = -1.0;
实现 public function get trackingLeft():Number
public function set trackingLeft(value:Number):void
引发 trackingRight:Number
[读写]
运行时版本: | Flash Player 10, AIR 1.5. |
应用到每个字型右侧的间距或手动字距调整(以像素为单位)。如果启用 kerning
,则会将 trackingRight
值与字体字距微调表中的值相加。如果禁用 kerning
,则使用 trackingRight
值作为手动字距调整值。同时支持正值和负值。
通常,在 trackingRight
与 trackingLeft
之间拆分所需的间距值。否则,在混合方向文本中,一个双向边界处间距加倍,而另一个双向边界处不存在间距。
默认值为 0.0
。
子类 | 设置属性的效果 |
---|
GraphicElement
| 确定应用到图形右侧的间距。 |
GroupElement
| 没有任何效果。 |
TextElement
| 确定应用到文本元素中字符右侧的间距。 |
示例:
//positive tracking added to kerning
var ef1:ElementFormat = new ElementFormat();
ef1.kerning = flash.text.engine.Kerning.ON;
ef1.trackingRight = 0.5;
//negative manual kerning
var ef2:ElementFormat = new ElementFormat();
ef2.kerning = flash.text.engine.Kerning.OFF;
ef2.trackingRight = -1.0;
实现 public function get trackingRight():Number
public function set trackingRight(value:Number):void
引发 typographicCase:String
[读写]
运行时版本: | Flash Player 10, AIR 1.5 |
用于此文本的印刷大小写。对此属性使用 flash.text.engine.TypographicCase
常量。
默认值为 flash.text.engine.TypographicCase.DEFAULT
。
若要设置此属性的值,请使用下列字符串值:
字符串值 | Description |
---|
TypographicCase.DEFAULT
| 对文本应用默认印刷大小写。 |
TypographicCase.TITLE
| 指定大写字符在输出时使用标题字型。 |
TypographicCase.CAPS
| 指定在输出时调整大写字符的间距。 |
TypographicCase.SMALL_CAPS
| 指定大写字符在输出时使用小型大写字母字型。 |
TypographicCase.UPPERCASE
| 指定所有字符在输出时都使用大写字型。 |
TypographicCase.LOWERCASE
| 指定所有字符在输出时都使用小写字型。 |
TypographicCase.CAPS_AND_SMALL_CAPS
| 指定所有小写字符在输出时都使用小型大写字母字型。 |
子类 | 设置属性的效果 |
---|
GraphicElement
| 没有任何效果。 |
GroupElement
| 没有任何效果。 |
TextElement
| 确定用于元素中的文本的印刷大小写。 |
实现 public function get typographicCase():String
public function set typographicCase(value:String):void
引发 另请参见
public function ElementFormat(fontDescription:FontDescription = null, fontSize:Number = 12.0, color:uint = 0x000000, alpha:Number = 1.0, textRotation:String = "auto", dominantBaseline:String = "roman", alignmentBaseline:String = "useDominantBaseline", baselineShift:Number = 0.0, kerning:String = "on", trackingRight:Number = 0.0, trackingLeft:Number = 0.0, locale:String = "en", breakOpportunity:String = "auto", digitCase:String = "default", digitWidth:String = "default", ligatureLevel:String = "common", typographicCase:String = "default")
运行时版本: | Flash Player 10, AIR 1.5 |
创建 ElementFormat 对象。
参数 | fontDescription:FontDescription (default = null ) —
标识要与此元素格式一起使用的字体的 FontDescription 对象。默认值为 null 。如果未提供字体说明,则构造默认字体说明。
|
|
| fontSize:Number (default = 12.0 ) — 文本的大小,以像素为单位。 |
|
| color:uint (default = 0x000000 ) — 文本的颜色。一个包含三个 8 位 RGB 分量的数字;例如,0xFF0000 为红色,0x00FF00 为绿色。 |
|
| alpha:Number (default = 1.0 ) —
基于元素格式应用于所有行原子的 alpha 属性。
|
|
| textRotation:String (default = "auto ") —
应用于各个字型的旋转。对此属性使用 flash.text.engine.TextRotation 常量。
|
|
| dominantBaseline:String (default = "roman ") —
文本中的字型紧贴到的基线。对此属性使用 flash.text.engine.TextBaseline 常量。
|
|
| alignmentBaseline:String (default = "useDominantBaseline ") —
字型所在行上的基线,主要基线将贴紧到此基线。对此属性使用 flash.text.engine.TextBaseline 常量。
|
|
| baselineShift:Number (default = 0.0 ) — 文本的基线偏移,以像素为单位。 |
|
| kerning:String (default = "on ") —
用于此文本的字距调整。使用 flash.text.engine.Kerning 。
|
|
| trackingRight:Number (default = 0.0 ) — 应用到每个字型右侧的间距或手动字距调整(以像素为单位)。 |
|
| trackingLeft:Number (default = 0.0 ) — 应用到每个字型左侧的间距或手动字距调整(以像素为单位)。 |
|
| locale:String (default = "en ") — 文本的区域设置。 |
|
| breakOpportunity:String (default = "auto ") —
就用于此文本的换行。对此属性使用 flash.text.engine.BreakOpportunity 常量。
|
|
| digitCase:String (default = "default ") —
用于此文本的数字大小写。对此属性使用 flash.text.engine.DigitCase 常量。
|
|
| digitWidth:String (default = "default ") —
用于此文本的数字宽度。对此属性使用 flash.text.engine.DigitWidth 常量。
|
|
| ligatureLevel:String (default = "common ") —
用于此文本的连字级别。对此属性使用 flash.text.engine.LigatureLevel 常量。
|
|
| typographicCase:String (default = "default ") —
用于此文本的印刷大小写。对此属性使用 flash.text.engine.TypographicCase 常量。
|
引发 | ArgumentError —
指定的 fontSize 小于 0。
|
|
| ArgumentError —
指定的 textRotation 不是 flash.text.engine.TextRotation 的成员。
|
|
| ArgumentError —
指定的 dominantBaseline 不是 flash.text.engine.TextBaseline 的成员。
|
|
| ArgumentError —
指定的 alignmentBaseline 不是 flash.text.engine.TextBaseline 的成员。
|
|
| ArgumentError —
指定的 kerning 不是 flash.text.engine.Kerning 的成员。
|
|
| ArgumentError —
指定的 breakOpportunity 不是 flash.text.engine.BreakOpportunity 的成员。
|
|
| ArgumentError —
指定的 digitCase 不是 flash.text.engine.DigitCase 的成员。
|
|
| ArgumentError —
指定的 digitWidth 不是 flash.text.engine.DigitWidth 的成员。
|
|
| ArgumentError —
指定的 ligatureLevel 不是 flash.text.engine.LigatureLevel 的成员。
|
|
| ArgumentError —
指定的 typographicCase 不是 flash.text.engine.TypographicCase 的成员。
|
public function clone():ElementFormat
运行时版本: | Flash Player 10, AIR 1.5 |
构造 ElementFormat 的没有锁定的克隆副本。
返回 示例
此示例创建了一个 ElementFormat
对象并设置了 FontSize
。使用 ElementFormat
创建新的 TextElement
(因此锁定它),并将 TextElement
用作 TextBlock
的内容。从 TextBlock
创建的文本行。
若要修改 ElementFormat
对象,请首先检查其 locked
属性。如果为 true,则使用 clone()
方法创建 ElementFormat
的没有锁定的副本,更改其属性,然后将此新的 ElementFormat
重新链接到 TextBlock
。重新断开这些行后,新行将具有新的字体设置。
package {
import flash.display.Sprite;
import flash.text.engine.*;
public class ElementFormat_cloneExample extends Sprite {
private var ef1:ElementFormat;
private var ef2:ElementFormat;
public function ElementFormat_cloneExample():void {
var fd:FontDescription = new FontDescription();
fd.fontLookup = flash.text.engine.FontLookup.DEVICE;
fd.fontName = "Palatino";
var ef1:ElementFormat = new ElementFormat(fd);
ef1.fontSize=20;
var str:String = "This is flash text 0123456789";
var tb:TextBlock = new TextBlock();
var te1:TextElement = new TextElement(str, ef1);
tb.content = te1;
var line1:TextLine = tb.createTextLine(null, 600);
addChild(line1);
ef2 = (ef1.locked) ? ef1.clone() : ef1;
ef2.fontSize = 32;
tb.content.elementFormat=ef2;
var line2:TextLine = tb.createTextLine(null, 600);
addChild(line2);
}
}
}
public function getFontMetrics():FontMetrics
运行时版本: | Flash Player 10, AIR 1.5 |
返回一个 FontMetrics
对象,该对象的属性说明由 fontDescription
和 fontSize
指定的字体的全角字框、删除线位置、删除线粗细、下划线位置和下划线粗线。
返回 | FontMetrics —
说明由 fontDescription 指定的字体的属性的 FontMetrics 对象。
|
另请参见
示例
此示例创建了一个具有指定的
FontDescription
的
ElementFormat
对象并使用
getFontMetrics
方法显示所选字体的度量。
package {
import flash.display.Sprite;
import flash.text.engine.*;
public class FontMetricsExample extends Sprite {
public function FontMetricsExample():void {
var fd:FontDescription = new FontDescription();
fd.fontName = "Garamond";
fd.fontWeight = flash.text.engine.FontWeight.BOLD;
var ef1:ElementFormat = new ElementFormat(fd);
var fm1:FontMetrics = ef1.getFontMetrics();
trace(fm1.emBox);
trace(fm1.strikethroughOffset);
trace(fm1.strikethroughThickness);
trace(fm1.subscriptScale);
trace(fm1.subscriptOffset);
trace(fm1.superscriptScale);
trace(fm1.superscriptOffset);
trace(fm1.underlineOffset);
trace(fm1.underlineThickness);
}
}
}
此示例创建了两个 ElementFormat
对象并设置了它们的一些属性。然后,该示例将新的 ElementFormat 分配给 TextElement
对象,该对象已经被指定为 TextBlock
的内容。请注意,更改 TextElement
的 ElementFormat
不会影响父 TextBlock 以前创建的 TextLine。
package {
import flash.display.Sprite;
import flash.text.engine.*;
public class ElementFormatExample extends Sprite {
public function ElementFormatExample():void {
var fd:FontDescription = new FontDescription();
fd.fontName = "Garamond";
fd.fontWeight = flash.text.engine.FontWeight.BOLD;
var ef1:ElementFormat = new ElementFormat(fd);
ef1.fontSize = 30;
ef1.color = 0xFF0000;
ef1.alpha = 100;
ef1.kerning = flash.text.engine.Kerning.ON;
ef1.trackingRight = 2;
ef1.typographicCase = flash.text.engine.TypographicCase.UPPERCASE;
ef1.alignmentBaseline = flash.text.engine.TextBaseline.DESCENT;
ef1.ligatureLevel = flash.text.engine.LigatureLevel.EXOTIC;
var ef2:ElementFormat = new ElementFormat(fd);
ef2.fontSize = 30;
ef2.color = 0xFF0000;
ef2.alpha = 0.3;
ef2.kerning = flash.text.engine.Kerning.OFF;
ef2.typographicCase = flash.text.engine.TypographicCase.LOWERCASE;
ef2.digitCase = flash.text.engine.DigitCase.OLD_STYLE;
ef2.textRotation = flash.text.engine.TextRotation.ROTATE_180;
var str:String = "This is flash text 0123456789";
var tb:TextBlock = new TextBlock();
var te1:TextElement = new TextElement(str, ef1);
tb.content = te1;
var line1:TextLine = tb.createTextLine(null, 600);
addChild(line1);
line1.x = 15;
line1.y = 30;
tb.content.elementFormat = ef2;
var line2:TextLine = tb.createTextLine(null, 600);
addChild(line2);
line2.x = 15;
line2.y = 60;
}
}
}
© 2004-2008 Adobe Systems Incorporated. All rights reserved.
Sun Dec 14 2008, 10:39 PM -08:00