Pakket | flashx.textLayout.factory |
Klasse | public class TextFlowTextLineFactory |
Overerving | TextFlowTextLineFactory TextLineFactoryBase Object |
Taalversie: | ActionScript 3.0 |
Runtimeversies: | Flash Player 10, AIR 1.5 |
De tekstregels zijn statisch en zo gemaakt dat ze in een enkele selectierechthoek passen, maar ze kunnen meerdere alinea's en indelingen en inline-afbeeldingen bevatten. Als u rechtstreeks TextLine-objecten op basis van een tekenreeks wilt maken, gebruikt u StringTextLineFactory.
Opmerking: bij het gebruik van inline-afbeeldingen moet de eigenschap source
van het InlineGraphicElement-object een instantie van DisplayObject zijn of een Class-object dat een ingesloten element representeert. URLRequest-objecten kunnen niet worden gebruikt. De breedte en hoogte van de inline-afbeelding op het moment dat de regel is gemaakt, worden gebruikt om de flow samen te stellen.
Verwante API-elementen
Methode | Gedefinieerd door | ||
---|---|---|---|
Maakt een TextFlowTextLineFactory-object. | TextFlowTextLineFactory | ||
Maakt TextLine-objecten van de opgegeven tekstflow. | TextFlowTextLineFactory | ||
De kleinste rechthoek waarin de inhoud met lay-out past. | TextLineFactoryBase | ||
Geeft aan of voor een object een opgegeven eigenschap is gedefinieerd. | Object | ||
Geeft aan of een instantie van de klasse Object zich in de prototypeketen van het object bevindt dat als parameter is opgegeven. | Object | ||
Geeft aan of de opgegeven eigenschap bestaat en kan worden opgesomd. | Object | ||
Stelt de beschikbaarheid van een dynamische eigenschap voor lusbewerkingen in. | Object | ||
Geeft de tekenreeksweergave van dit object weer, geformatteerd volgens de locatiespecifieke conventies. | Object | ||
Retourneert een tekenreeksrepresentatie van het opgegeven object. | Object | ||
Retourneert de primitieve waarde van het opgegeven object. | Object |
TextFlowTextLineFactory | () | Constructor |
public function TextFlowTextLineFactory()
Taalversie: | ActionScript 3.0 |
Runtimeversies: | Flash Player 10, AIR 1.5 |
Maakt een TextFlowTextLineFactory-object.
createTextLines | () | methode |
public function createTextLines(callback:Function, textFlow:flashx.textLayout.elements:TextFlow):void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | Flash Player 10, AIR 1.5 |
Maakt TextLine-objecten van de opgegeven tekstflow.
De tekstregels worden zo gemaakt dat ze binnen de grenzen passen die aan de eigenschap compositionBounds
zijn toegewezen. Nadat een regel is gemaakt, wordt de functie aangeroepen die is opgegeven met de parameter callback
. Deze functie wordt doorgegeven aan het TextLine-object en is verantwoordelijk voor de regelweergave. Als een regel een achtergrondkleur heeft, roept de factory de callback-functie ook aan met een Shape-object dat een rechthoek van de achtergrondkleur bevat.
Het schuifbeleid van de factory bepaalt hoeveel regels worden gegenereerd.
Parameters
callback:Function — met elk gegenereerd TextLine-object aan te roepen functie. De callback-functie wordt aangeroepen met een Shape-object dat een achtergrondkleur representeert (indien van toepassing), en met TextLine-objecten voor de tekst.
| |
textFlow:flashx.textLayout.elements:TextFlow — De TextFlow waarvan de regels worden gemaakt.
|
createTextLines()
wordt twee maal aangeroepen met dezelfde frase. De factory-eigenschappen en flowindelingen worden tussen aanroepen aangepast om een slagschaduweffect te creƫren.
package flashx.textLayout.factory.examples { import flash.display.Sprite; import flash.display.DisplayObject; import flash.geom.Rectangle; import flash.text.engine.TextLine; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.factory.TextFlowTextLineFactory; import flashx.textLayout.formats.TextLayoutFormat; public class TextFlowTextLineFactory_example extends Sprite { public function TextFlowTextLineFactory_example() { var factory:TextFlowTextLineFactory = new TextFlowTextLineFactory(); factory.compositionBounds = new Rectangle( 100, 100, 200, 130 ); var flow:TextFlow = new TextFlow(); var format:TextLayoutFormat = new TextLayoutFormat(); format.fontFamily = "LilyUPC, Verdana, _sans"; format.fontSize = 32; format.color = 0x000000; format.textAlpha = .5; var span:SpanElement = new SpanElement(); span.text = "The quick brown fox jumped over the lazy dog."; span.format = format; var para:ParagraphElement = new ParagraphElement(); para.addChild( span ); flow.addChild( para ); factory.createTextLines( useTextLines, flow ); factory.compositionBounds = new Rectangle( 99, 99, 200, 130 ); format.color = 0x990000; format.textAlpha = 1; span.format = format; factory.createTextLines( useTextLines, flow ); graphics.beginFill(0x555555,.5); graphics.drawRect( 99, 99, 201, 131 ); graphics.endFill(); } private function useTextLines( lineOrShape:DisplayObject ):void { this.addChild( lineOrShape ); } } }
Wed Jun 13 2018, 11:42 AM Z