Packageflash.text.engine
Classpublic final class SpaceJustifier
InheritanceSpaceJustifier Inheritance TextJustifier Inheritance Object

Language version: ActionScript 3.0
Runtime version: AIR 1.5

The SpaceJustifier class represents properties that control the justification options for text lines in a text block.

Use the constructor new SpaceJustifier() to create a SpaceJustifier object before setting its properties. Setting the properties of a SpaceJustifier object after you apply it to a TextBlock does not invalidate the TextBlock.

View the examples.

See also

LineJustification
TextBlock.textJustifier
TextJustifier


Public Properties
 PropertyDefined by
 Inheritedconstructor : Object
A reference to the class object or constructor function for a given object instance.
Object
  letterSpacing : Boolean
Specifies whether to use letter spacing during justification.
SpaceJustifier
 InheritedlineJustification : String
Specifies the line justification for the text in a text block.
TextJustifier
 Inheritedlocale : String
Specifies the locale to determine the justification rules for the text in a text block.
TextJustifier
  maximumSpacing : Number
Specifies the maximum spacing (as a multiplier of the width of a normal space) between words to use during justification.
SpaceJustifier
  minimumSpacing : Number
Specifies the minimum spacing (as a multiplier of the width of a normal space) between words to use during justification.
SpaceJustifier
  optimumSpacing : Number
Specifies the optimum spacing (as a multiplier of the width of a normal space) between words to use during justification.
SpaceJustifier
 Inheritedprototype : Object
[static] A reference to the prototype object of a class or function object.
Object
Public Methods
 MethodDefined by
  
SpaceJustifier(locale:String = "en", lineJustification:String = "unjustified", letterSpacing:Boolean = false)
Creates a SpaceJustifier object.
SpaceJustifier
  
Constructs a cloned copy of the SpaceJustifier.
SpaceJustifier
 Inherited
[static] Constructs a default TextJustifier subclass appropriate to the specified locale.
TextJustifier
 Inherited
Indicates whether an object has a specified property defined.
Object
 Inherited
Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter.
Object
 Inherited
Indicates whether the specified property exists and is enumerable.
Object
 Inherited
Sets the availability of a dynamic property for loop operations.
Object
 Inherited
Returns the string representation of this object, formatted according to locale-specific conventions.
Object
 Inherited
Returns the string representation of the specified object.
Object
 Inherited
Returns the primitive value of the specified object.
Object
Property detail
letterSpacingproperty
letterSpacing:Boolean  [read-write]

Language version: ActionScript 3.0
Runtime version: AIR 1.5

Specifies whether to use letter spacing during justification.

The default value is false

Implementation
    public function get letterSpacing():Boolean
    public function set letterSpacing(value:Boolean):void
maximumSpacingproperty 
maximumSpacing:Number  [read-write]

Language version: ActionScript 3.0
Runtime version: AIR 2

Specifies the maximum spacing (as a multiplier of the width of a normal space) between words to use during justification. If letterSpacing is true, letter spacing will be used after the spaces between words reach the maximum. If letterSpacing is false, the spaces between words will be expanded beyond the maximum.

The default value is 1.5

Implementation
    public function get maximumSpacing():Number
    public function set maximumSpacing(value:Number):void

Throws
ArgumentError — The value specified is less than optimumSpacing.
minimumSpacingproperty 
minimumSpacing:Number  [read-write]

Language version: ActionScript 3.0
Runtime version: AIR 2

Specifies the minimum spacing (as a multiplier of the width of a normal space) between words to use during justification.

The default value is 0.5

Implementation
    public function get minimumSpacing():Number
    public function set minimumSpacing(value:Number):void

Throws
ArgumentError — The value specified is less than zero or greater than optimumSpacing.
optimumSpacingproperty 
optimumSpacing:Number  [read-write]

Language version: ActionScript 3.0
Runtime version: AIR 2

Specifies the optimum spacing (as a multiplier of the width of a normal space) between words to use during justification.

The default value is 1.0

Implementation
    public function get optimumSpacing():Number
    public function set optimumSpacing(value:Number):void

Throws
ArgumentError — The value specified is less than minimumSpacing or greater than maximumSpacing.
Constructor detail
SpaceJustifier()constructor
public function SpaceJustifier(locale:String = "en", lineJustification:String = "unjustified", letterSpacing:Boolean = false)

Language version: ActionScript 3.0
Runtime version: AIR 1.5

Creates a SpaceJustifier object. The LineJustification class contains constants for specifying the types of line justification that you can apply.

Parameters
locale:String (default = "en") — The locale to determine the justification rules. The default value is "en".
 
lineJustification:String (default = "unjustified") — The type of line justification for the paragraph. Use LineJustification constants for this property. The default value is LineJustification.UNJUSTIFIED.
 
letterSpacing:Boolean (default = false) — Specifies whether to use letter spacing during justification. The default value is false.

Throws
ArgumentError — The locale specified is null or too short to represent a valid locale.
 
ArgumentError — The lineJustification specified is not a member of LineJustification.

See also

Method detail
clone()method
public override function clone():TextJustifier

Language version: ActionScript 3.0
Runtime version: AIR 1.5

Constructs a cloned copy of the SpaceJustifier.

Returns
TextJustifier — A copy of the SpaceJustifier object.
Examples
examples\SpaceJustifierExample
The following example uses letter spacing and justifies all of a block of text except for the last line.

package {
    import flash.display.Sprite;
	import flash.text.engine.TextBlock;
	import flash.text.engine.TextElement;
	import flash.text.engine.TextLine;
	import flash.text.engine.ElementFormat;
	import flash.text.engine.SpaceJustifier;
	import flash.text.engine.LineJustification;
	
	public class SpaceJustifierExample extends Sprite {
		
		public function SpaceJustifierExample():void {
			var str:String = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, " +
			"sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut " +
			"enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut " +
			"aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit " +
			"in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur " +
			"sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt " +
			"mollit anim id est laborum.";
			
			var format:ElementFormat = new ElementFormat(null, 12, 0xCC0000);
			var textElement:TextElement = new TextElement(str, format);
			var spaceJustifier:SpaceJustifier = new SpaceJustifier("en", LineJustification.ALL_BUT_LAST);
			spaceJustifier.letterSpacing = true;
			var textBlock:TextBlock = new TextBlock();
			textBlock.content = textElement;
			textBlock.textJustifier = spaceJustifier;
			createLines(textBlock);
		}
		
		private function createLines(textBlock:TextBlock):void {
        
            var yPos = 20;
            var textLine:TextLine = textBlock.createTextLine (null, 150);
 
            while (textLine)
            {
                addChild(textLine);
                textLine.x = 15;
                yPos += textLine.textHeight+2;
                textLine.y = yPos;
                textLine = textBlock.createTextLine(textLine, 150);
            }        
        }
	}
}