Language Version: | ActionScript 3.0 |
The TextFormat class represents character formatting information. Use the TextFormat class
to create specific text formatting for text fields. You can apply text formatting
to both static and dynamic text fields. The properties of the TextFormat class apply to device and
embedded fonts. However, for embedded fonts, bold and italic text actually require specific fonts. If you
want to display bold or italic text with an embedded font, you need to embed the bold and italic variations
of that font.
You must use the constructor
new TextFormat()
to create a TextFormat object
before setting its properties.
When you apply a TextFormat object to a text field using the
TextField.defaultTextFormat
property
or the
TextField.setTextFormat()
method, only its defined properties are applied. Use
the
TextField.defaultTextFormat
property to apply formatting BEFORE you add text to the
TextField
,
and the
setTextFormat()
method to add formatting AFTER you add text to the
TextField
.
The TextFormat properties are
null
by default
because if you don't provide values for the properties, Flash Player uses its own default formatting.
The default formatting that Flash Player uses for each property (if property's value is
null
)
is as follows:
align = "left" |
blockIndent = 0 |
bold = false |
bullet = false |
color = 0x000000 |
font = "Times New Roman" (default font is Times on Mac OS X) |
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) |
The default formatting for each property is also described in each property description.
View the examples
align:String
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
Indicates the alignment of the paragraph. Valid values are TextFormatAlign constants.
The default value is TextFormatAlign.LEFT.
Implementation public function get align():String
public function set align(value:String):void
Throws | ArgumentError —
The
align
specified is not a member of flash.text.TextFormatAlign.
|
See also
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
blockIndent:Object
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
Indicates the block indentation in pixels. Block indentation is applied to
an entire block of text; that is, to all lines of the text. In contrast, normal indentation
(
TextFormat.indent
) affects only the first line of each paragraph.
If this property is
null
, the TextFormat object does not specify block indentation
(block indentation is 0).
Implementation public function get blockIndent():Object
public function set blockIndent(value:Object):void
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
bold:Object
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
Specifies whether the text is boldface. The default value is
null
,
which means no boldface is used.
If the value is
true
, then
the text is boldface.
Implementation public function get bold():Object
public function set bold(value:Object):void
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
bullet:Object
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
Indicates that the text is part of a bulleted list. In a bulleted
list, each paragraph of text is indented. To the left of the first line of each paragraph, a bullet
symbol is displayed. The default value is
null
, which means no bulleted list
is used.
Implementation public function get bullet():Object
public function set bullet(value:Object):void
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
color:Object
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
Indicates the color of the text. A number containing three 8-bit RGB components; for example,
0xFF0000 is red, and 0x00FF00 is green. The default value is
null
,
which means that Flash Player uses the color black (0x000000).
Implementation public function get color():Object
public function set color(value:Object):void
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
font:String
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
The name of the font for text in this text format, as a string. The default value is
null
, which means that Flash Player uses Times New Roman font for the text.
Implementation public function get font():String
public function set font(value:String):void
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
indent:Object
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
Indicates the indentation from the left
margin to the first character in the paragraph. The default value is
null
, which
indicates that no indentation is used.
Implementation public function get indent():Object
public function set indent(value:Object):void
See also
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
italic:Object
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
Indicates whether text in this text format is italicized. The default
value is
null
, which means no italics are used.
Implementation public function get italic():Object
public function set italic(value:Object):void
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
kerning:Object
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
A Boolean value that indicates whether kerning is enabled (
true
)
or disabled (
false
). Kerning adjusts the pixels between certain character pairs to improve readability, and
should be used only when necessary, such as with headings in large fonts. Kerning is
supported for embedded fonts only.
Certain fonts such as Verdana and monospaced fonts,
such as Courier New, do not support kerning.
The default value is
null
, which means that kerning is not enabled.
Implementation public function get kerning():Object
public function set kerning(value:Object):void
leading:Object
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
An integer representing the amount of vertical space (called
leading
)
between lines. The default value is
null
, which indicates that the
amount of leading used is 0.
Implementation public function get leading():Object
public function set leading(value:Object):void
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
leftMargin:Object
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
The left margin of the paragraph, in pixels. The default value is
null
, which
indicates that the left margin is 0 pixels.
Implementation public function get leftMargin():Object
public function set leftMargin(value:Object):void
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
letterSpacing:Object
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
A number representing the amount of space that is uniformly distributed between all characters.
The value specifies the number of pixels that are added to the advance after each character.
The default value is
null
, which means that 0 pixels of letter spacing is used.
You can use decimal values such as
1.75
.
Implementation public function get letterSpacing():Object
public function set letterSpacing(value:Object):void
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
rightMargin:Object
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
The right margin of the paragraph, in pixels. The default value is
null
,
which indicates that the right margin is 0 pixels.
Implementation public function get rightMargin():Object
public function set rightMargin(value:Object):void
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
size:Object
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
The size in pixels of text in this text format. The default value is
null
, which
means that a size of 12 is used.
Implementation public function get size():Object
public function set size(value:Object):void
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
tabStops:Array
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
Specifies custom tab stops as an array of non-negative integers. Each tab stop is
specified in pixels. If custom tab stops are not specified (
null
), the default tab
stop is 4 (average character width).
Implementation public function get tabStops():Array
public function set tabStops(value:Array):void
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
target:String
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
Indicates the target window where the hyperlink is displayed. If the target window is an
empty string, the text is displayed in the default target window
_self
. You can choose
a custom name or one of the following four names:
_self
specifies the current frame in
the current window,
_blank
specifies a new window,
_parent
specifies the
parent of the current frame, and
_top
specifies the top-level frame in the current
window. If the
TextFormat.url
property is an empty string or
null
,
you can get or set this property, but the property will have no effect.
Implementation public function get target():String
public function set target(value:String):void
See also
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
underline:Object
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
Indicates whether the text that uses this text format is underlined (
true
)
or not (
false
). This underlining is similar to that produced by the
<U>
tag, but the latter is not true underlining, because it does not skip
descenders correctly. The default value is
null
, which indicates that underlining
is not used.
Implementation public function get underline():Object
public function set underline(value:Object):void
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
url:String
[read-write]
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
Indicates the target URL for the text in this text format. If the
url
property is an empty string, the text does not have a hyperlink. The default value is
null
,
which indicates that the text does not have a hyperlink.
Note:
The text with the assigned text format must be set with the
htmlText
property for the hyperlink to work.
Implementation public function get url():String
public function set url(value:String):void
See also
Example How to use examples
Please see the
TextFormat() constructor
example
for an illustration of how to use this property.
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)
Language Version: | ActionScript 3.0 |
Runtime Versions: | 1.0, 9. |
Creates a TextFormat object with the specified properties. You can then change the
properties of the TextFormat object to change the formatting of text fields.
Any parameter may be set to
null
to indicate that it is not defined. All of the
parameters are optional; any omitted parameters are treated as
null
.
Parameters | font:String (default = null ) — The name of a font for text as a string. |
|
| size:Object (default = null ) — An integer that indicates the size in pixels. |
|
| color:Object (default = null ) — The color of text using this text format. A number containing three 8-bit RGB
components; for example, 0xFF0000 is red, and 0x00FF00 is green. |
|
| bold:Object (default = null ) — A Boolean value that indicates whether the text is boldface. |
|
| italic:Object (default = null ) — A Boolean value that indicates whether the text is italicized. |
|
| underline:Object (default = null ) — A Boolean value that indicates whether the text is underlined. |
|
| url:String (default = null ) —
The URL to which the text in this text format hyperlinks. If
url
is
an empty string, the text does not have a hyperlink.
|
|
| target:String (default = null ) —
The target window where the hyperlink is displayed. If the target window is an empty
string, the text is displayed in the default target window
_self
. If the
url
parameter is set to an empty string or to the value
null
, you can get or
set this property, but the property will have no effect.
|
|
| align:String (default = null ) — The alignment of the paragraph, as a TextFormatAlign value. |
|
| leftMargin:Object (default = null ) — Indicates the left margin of the paragraph, in pixels. |
|
| rightMargin:Object (default = null ) — Indicates the right margin of the paragraph, in pixels. |
|
| indent:Object (default = null ) — An integer that indicates the indentation from the left margin to the first character
in the paragraph. |
|
| leading:Object (default = null ) — A number that indicates the amount of leading vertical space between lines. |
Example
In the following example, a user can select different text formatting
options from a list that is applied to the content of another text field. If the user
clicks on the text field's content, the formatting reverts to the default (original) format.
The
formatTextField
text field lists all the TextField class property options
(with the exception of
kerning
) in a separate line. When a user clicks a
line in the
formatTextField
text field, the
formatTextFieldClickHandler()
method is triggered.
The
formatTextFieldClickHandler()
method calls the
TextField.getLineIndexAtPoint()
method to get the index of the line that was clicked, and then calls the
TextField.getLineText()
method to get the content of the line. The switch statement checks the content of the line and sets
a property of the
newformat
TextFormat object accordingly. The
setTextFormat()
method then sets the text format of the
contentTextField
text field to the new format. By clicking
different
formatTextField
lines, a user can apply a different formatting
to the
contentTextField
text field. (The tab setting is an array that defines
a separate tab stop for each tab in the line.) If the
url
or
target
line
is selected, the user must click the
contentTextField
text field to activate the link
and display the content of the target URL (Flex home page). The default value of the
target
property is "_self", which means that the content is displayed in the current window if the user
selects the
url
line. For the
target
property to work, a URL must be
set already in the
url
property.
If a user clicks the
contentTextField
text field, the
contentTextFieldClickHandler()
method is triggered, which sets the field's format and the
newFormat
TextFormat
object to the default (original) format of the text field. This clears all the formatting changes
that the user made.
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;
}
}
}
The following example creates the TextFieldExample class to display a text message with
the default location (x = 0, y = 0). This is accomplished using the following steps:
-
A property
label
of type TextField is created.
-
The class constructor calls the function
configureLabel()
-
The
configureLabel()
function first creates a new TextField object and assigns it to
label
then sets its parameters to:
- Left-justify the text field
- Enable the background fill
- Enable the border.
-
Next,
configureLable()
creates the local variable,
format
, and assigns it to
a new TextFormat instance with its parameters set to:
- Font type = Verdana
- Font Color = solid red
- Font size = 10
- Font underline = true.
-
The label's
defaultTextFormat
property is set to
format
, and the
label
instance is added to the display list, which initially displays a text field with
no text (as tiny box with a white background) on the stage.
-
Finally (back in the constructor), the label's text is then set to display "Hello
World and welcome to the show", at coordinates x = 0, y = 0 by calling
setLabel()
.
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);
}
}
}
© 2004-2008 Adobe Systems Incorporated. All rights reserved.
Sun Oct 19 2008, 07:03 PM -07:00