| Package | flash.text.engine |
| Classe | public final class TextLine |
| Héritage | TextLine DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Il est impossible de créer un objet TextLine directement à partir du code ActionScript. Si vous appelez new TextLine(), une exception est renvoyée. Pour créer un objet TextLine, appelez la méthode createTextLine() d'un TextBlock.
La TextLine encapsule le minimum d'informations nécessaires au rendu de son contenu. Vous pouvez récupérer d'autres informations très utiles pour l'interactivité par l'intermédiaire de méthodes décrivant les propriétés des atomes de la ligne. Le terme atome fait à la fois référence aux éléments graphiques et aux caractères (y compris aux groupes de combinaisons de caractère), entités indivisibles qui composent une ligne de texte. Il est important de noter que le lecteur ne crée pas ni ne stocke les données requises par ces méthodes avant que vous ne les appeliez. Pour ne pas surcharger la mémoire, évitez de créer des données d'atomes lorsque cela est inutile. Si les données d'atomes ne sont plus nécessaires, appelez la méthode flushAtomData() pour les mettre à la disposition du nettoyage.
Les méthodes et propriétés suivantes génèrent des données d'atome lorsqu'elles n'existent pas :
atomCount
getAtomBidiLevel()
getAtomBounds()
getAtomCenter()
getAtomIndexAtCharIndex()
getAtomIndexAtPoint()
getAtomGraphic()
getAtomTextBlockBeginIndex()
getAtomTextBlockEndIndex()
getAtomTextRotation()
getAtomWordBoundaryOnLeft()
Après un déclenchement normal d'événements pour une ligne de texte, si la ligne est valide, les événements sont reproduits dans les diffuseurs d'événements spécifiés par les propriétés eventMirror des objets d'éléments de contenu ayant contribué à la ligne de texte. Ces objets sont enregistrés dans la propriété TextLine.mirrorRegions. Les événements ne sont pas reproduits si la propagation de l'événement a échoué ou a été interrompue, ou si la ligne de texte n'est pas valide.
La mise en miroir des événements de souris est un cas à part. Etant donné que les zones miroir ne sont pas des objets d'affichage, les événements mouseOver et mouseOut sont simulés à leur place. Les événements rollOver et rollOut ne sont pas simulés. Tous les événements mouseOver, mouseOut, rollOver et rollOut qui se produisent naturellement (ciblés à la ligne de texte ou aux enfants de la ligne de texte) sont ignorés et ne sont donc pas mis en miroir.
L'origine d'un objet de ligne de texte est le début de la ligne de base. Si vous ne définissez pas la position verticale (propriété y) d'une ligne contenant du texte latin sur une ligne de base de caractères romains, seuls les jambages du texte s'affichent sous le haut de l'objet Sprite auquel vous ajoutez la ligne de texte. Examinez le diagramme suivant :
La classe TextLine descend de plusieurs autres classes, DisplayObjectContainer, InteractiveObject, DisplayObject et EventDispatcher, dont elle hérite les propriétés et les méthodes. Les propriétés héritées suivantes ne s'appliquent pas aux objets TextLine :
contextMenu
focusRect
tabChildren
tabEnabled
tabIndex
transformation
Si vous tentez de définir ces propriétés, le moteur de saisie renvoie l'erreur : IllegalOperationError. Vous pouvez lire ces propriétés, mais elles contiennent toujours des valeurs par défaut.
Voir aussi
| Propriété | Défini par | ||
|---|---|---|---|
![]() | accessibilityProperties : AccessibilityProperties Options d'accessibilité actuelles de l'objet d'affichage. | DisplayObject | |
![]() | alpha : Number Indique la valeur de transparence alpha de l'objet spécifié. | DisplayObject | |
| ascent : Number [lecture seule] Spécifie le nombre de pixels séparant la ligne de base du haut des plus grands caractères de la ligne. | TextLine | ||
| atomCount : int [lecture seule] Nombre d'atomes dans la ligne, correspondant au nombre d'éléments indivisibles, espaces et éléments graphiques compris. | TextLine | ||
![]() | blendMode : String Valeur de la classe BlendMode qui spécifie le mode de fondu à utiliser. | DisplayObject | |
![]() | blendShader : Shader [lecture seule] Définit un shader utilisé pour le fondu de l'arrière-plan et du premier plan. | DisplayObject | |
![]() | cacheAsBitmap : Boolean Si true est défini, Flash Player ou Adobe AIR place en mémoire cache une version bitmap interne de l’objet d'affichage. | DisplayObject | |
![]() | constructor : Object Référence à l'objet de classe ou à la fonction constructeur d'une occurrence donnée d'un objet. | Object | |
![]() | contextMenu : NativeMenu Spécifie le menu contextuel associé à l'objet. | InteractiveObject | |
| descent : Number [lecture seule] Spécifie le nombre de pixels séparant la ligne de base du bas des caractères descendants les plus bas de la ligne. | TextLine | ||
![]() | doubleClickEnabled : Boolean Spécifie si l'objet reçoit les événements doubleClick. | InteractiveObject | |
![]() | filters : Array Tableau indexé contenant tous les objets filtre actuellement associés à l'objet d'affichage. | DisplayObject | |
![]() | focusRect : Object Spécifie si l'objet affiche un rectangle de focus. | InteractiveObject | |
| hasGraphicElement : Boolean [lecture seule] Indique si la ligne de texte contient des éléments graphiques. | TextLine | ||
![]() | height : Number Indique la hauteur de l'objet d'affichage, en pixels. | DisplayObject | |
![]() | loaderInfo : LoaderInfo [lecture seule] Renvoie un objet LoaderInfo qui contient des informations relatives au chargement du fichier auquel appartient cet objet d'affichage. | DisplayObject | |
![]() | mask : DisplayObject L'objet d'affichage appelant est masqué par l'objet mask spécifié. | DisplayObject | |
| mirrorRegions : Vector.<TextLineMirrorRegion> [lecture seule] Vecteur contenant les objets TextLineMirrorRegion associés à la ligne, ou null lorsqu'il n'y en a pas. | TextLine | ||
![]() | mouseChildren : Boolean Détermine si les enfants de l'objet prennent ou non en charge la souris. | DisplayObjectContainer | |
![]() | mouseEnabled : Boolean Spécifie si l'objet reçoit les messages souris. | InteractiveObject | |
![]() | mouseX : Number [lecture seule] Indique la coordonnée x de la position de la souris, en pixels. | DisplayObject | |
![]() | mouseY : Number [lecture seule] Indique la coordonnée y de la position de la souris, en pixels. | DisplayObject | |
![]() | name : String Indique le nom d'occurrence de DisplayObject. | DisplayObject | |
| nextLine : TextLine [lecture seule] Prochain TextLine du TextBlock, ou null si la ligne en cours est la dernière ligne du bloc ou si sa validité est TextLineValidity.STATIC. | TextLine | ||
![]() | numChildren : int [lecture seule] Renvoie le nombre d'enfants de l'objet. | DisplayObjectContainer | |
![]() | opaqueBackground : Object Indique si l'objet d'affichage est opaque avec une couleur d'arrière-plan spécifique. | DisplayObject | |
![]() | parent : DisplayObjectContainer [lecture seule] Indique l'objet DisplayObjectContainer qui contient l'objet d'affichage. | DisplayObject | |
| previousLine : TextLine [lecture seule] TextLine précédent du TextBlock, ou null s'il s'agit de la première ligne du bloc ou si la validité de la ligne est TextLineValidity.STATIC. | TextLine | ||
![]() | prototype : Object [statique] Référence à l'objet prototype d'un objet de classe ou fonction. | Object | |
| rawTextLength : int [lecture seule] Longueur du texte brut dans le bloc de texte devenant la ligne, y compris les caractères U+FDEF représentant des éléments graphiques et tous les espaces à droite faisant partie de la ligne mais non affichés. | TextLine | ||
![]() | root : DisplayObject [lecture seule] Pour un objet d'affichage résidant dans un fichier SWF chargé, la propriété root correspond à l'objet d'affichage de premier niveau dans la partie de la structure arborescente de la liste d'affichage représentée par ce fichier. | DisplayObject | |
![]() | rotation : Number Indique la rotation de l'occurrence de DisplayObject, en degrés, à partir de son orientation d'origine. | DisplayObject | |
![]() | rotationX : Number Indique la rotation de l'axe des x de l'occurrence DisplayObject, en degrés, à partir de son orientation d'origine par rapport au conteneur 3D parent. | DisplayObject | |
![]() | rotationY : Number Indique la rotation de l'axe des y de l'occurrence DisplayObject, en degrés, à partir de son orientation d'origine par rapport au conteneur 3D parent. | DisplayObject | |
![]() | rotationZ : Number Indique la rotation de l'axe des z de l'occurrence DisplayObject, en degrés, à partir de son orientation d'origine par rapport au conteneur 3D parent. | DisplayObject | |
![]() | scale9Grid : Rectangle Grille de mise à l'échelle en vigueur. | DisplayObject | |
![]() | scaleX : Number Indique l'échelle horizontale (pourcentage) de l'objet telle qu'elle est appliquée à partir du point d'alignement. | DisplayObject | |
![]() | scaleY : Number Indique le redimensionnement vertical (pourcentage) de l'objet tel qu'il est appliqué à partir du point d'alignement. | DisplayObject | |
![]() | scaleZ : Number Indique l'échelle de profondeur (pourcentage) de l'objet tel qu'elle est appliquée à partir du point d'alignement. | DisplayObject | |
![]() | scrollRect : Rectangle Cadre de délimitation du défilement de l'objet d'affichage. | DisplayObject | |
| specifiedWidth : Number [lecture seule] Largeur spécifiée à la méthode TextBlock.createTextLine() lors de la création de la ligne. | TextLine | ||
![]() | stage : Stage [lecture seule] Scène de l'objet d'affichage. | DisplayObject | |
![]() | tabChildren : Boolean Détermine si les enfants de l'objet prennent ou non en charge la tabulation. | DisplayObjectContainer | |
![]() | tabEnabled : Boolean Indique si cet objet est spécifié dans l'ordre de tabulation. | InteractiveObject | |
![]() | tabIndex : int Spécifie l'ordre de tabulation des objets dans un fichier SWF. | InteractiveObject | |
| textBlock : TextBlock [lecture seule] TextBlock contenant cette ligne de texte, ou null si la validité de la ligne est TextLineValidity.STATIC. | TextLine | ||
| textBlockBeginIndex : int [lecture seule] Index du premier caractère de la ligne dans le texte brut du bloc de texte. | TextLine | ||
| textHeight : Number [lecture seule] Hauteur logique de la ligne de texte, égale à ascent + descent. | TextLine | ||
![]() | textSnapshot : TextSnapshot [lecture seule] Renvoie un objet TextSnapshot pour l'occurrence de DisplayObjectContainer. | DisplayObjectContainer | |
| textWidth : Number [lecture seule] Largeur logique de la ligne de texte, correspondant à la largeur utilisée par le moteur de saisie pour positionner la ligne. | TextLine | ||
![]() | transform : Transform Objet dont les propriétés se rapportent à la matrice, à la transformation des couleurs et aux limites des pixels d'un objet d'affichage. | DisplayObject | |
| unjustifiedTextWidth : Number [lecture seule] Largeur de la ligne si elle n'était pas justifiée. | TextLine | ||
| userData : * Permet à l'auteur d'associer des données arbitraires à la ligne de texte. | TextLine | ||
| validity : String Spécifie la validité actuelle de la ligne de texte. | TextLine | ||
![]() | visible : Boolean Indique si l'objet d'affichage est visible ou non. | DisplayObject | |
![]() | width : Number Indique la largeur de l'objet d'affichage, en pixels. | DisplayObject | |
![]() | x : Number Indique la coordonnée x de l'occurrence de DisplayObject par rapport aux coordonnées locales de l'objet DisplayObjectContainer parent. | DisplayObject | |
![]() | y : Number Indique la coordonnée y de l'occurrence de DisplayObject par rapport aux coordonnées locales de l'objet DisplayObjectContainer parent. | DisplayObject | |
![]() | z : Number Indique la position de coordonnée z le long de l'axe des z de l'occurrence DisplayObject par rapport au conteneur 3D parent. | DisplayObject | |
| Méthode | Défini par | ||
|---|---|---|---|
![]() | Ajoute une occurrence enfant de DisplayObject à cette occurrence de DisplayObjectContainer. | DisplayObjectContainer | |
![]() | Ajoute une occurrence enfant de DisplayObject à cette occurrence de DisplayObjectContainer. | DisplayObjectContainer | |
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void Enregistre un objet écouteur d’événement auprès d’un objet EventDispatcher afin que l’écouteur soit averti d’un événement. | EventDispatcher | |
![]() | Indique si les restrictions de sécurité entraîneraient l'omission des objets d'affichage de la liste renvoyée en appelant la méthode DisplayObjectContainer.getObjectsUnderPoint() avec le point « point » spécifié. | DisplayObjectContainer | |
![]() | Détermine si l'objet d'affichage spécifié est un enfant de l'occurrence de DisplayObjectContainer ou l'occurrence en tant que telle. | DisplayObjectContainer | |
![]() | Distribue un événement dans le flux d'événements. | EventDispatcher | |
Libère le contenu sous-jacent du TextLine sous forme de chaîne XML. | TextLine | ||
Libère les données d'atomes de la ligne en vue d'un nettoyage. | TextLine | ||
Récupère le niveau bidirectionnel de l'atome au niveau de l'index spécifié. | TextLine | ||
Récupère les limites de l'atome au niveau de l'index spécifié par rapport à la ligne de texte. | TextLine | ||
Récupère le centre de l'atome tel que mesuré le long de la ligne de base au niveau de l'index spécifié. | TextLine | ||
Récupère le graphique de l'atome au niveau de l'index spécifié, ou null si l'atome est un caractère. | TextLine | ||
Renvoie l'index de l'atome contenant le caractère spécifié par le paramètre charIndex, ou -1 si le caractère ne contribue à aucun atome dans la ligne. | TextLine | ||
Renvoie l'index de l'atome situé au niveau du point spécifié par les paramètres x et y, ou -1 s'il n'y a pas d'atome au niveau de ce point. | TextLine | ||
Récupère l'index de début du bloc de texte de l'atome au niveau de l'index spécifié. | TextLine | ||
Récupère l'index de fin du bloc de texte de l'atome au niveau de l'index spécifié. | TextLine | ||
Récupère la rotation de l'atome au niveau de l'index spécifié. | TextLine | ||
Indique s'il existe ou non une limite de mot à gauche de l'atome au niveau de l'index spécifié. | TextLine | ||
Récupère la position de la ligne de base spécifiée par rapport au TextBlock.baselineZero. | TextLine | ||
![]() | Renvoie un rectangle qui définit la zone de l'objet d'affichage relativement au système de coordonnées de l'objet targetCoordinateSpace. | DisplayObject | |
![]() | Renvoie l'occurrence enfant de l'objet d'affichage associée à l'index spécifié. | DisplayObjectContainer | |
![]() | Renvoie l'objet d'affichage enfant portant le nom spécifié. | DisplayObjectContainer | |
![]() | Renvoie la position d'index d'une occurrence enfant de DisplayObject. | DisplayObjectContainer | |
Renvoie le premier TextLineMirrorRegion de la ligne dont la propriété mirror correspond à celle spécifiée par le paramètre mirror, ou null s'il n'y a pas de correspondance. | TextLine | ||
![]() | Renvoie un tableau d'objets de niveau inférieur au point spécifié et qui sont les enfants (ou les petits-enfants, etc.) de l'occurrence de DisplayObjectContainer. | DisplayObjectContainer | |
![]() | Renvoie un rectangle qui définit les limites de l'objet d'affichage, en se basant sur le système de coordonnées défini par le paramètre targetCoordinateSpace, moins tout trait appliqué aux formes. | DisplayObject | |
![]() | Convertit l'objet point des coordonnées de scène (globales) vers les coordonnées de l'objet d'affichage (locales). | DisplayObject | |
![]() | Convertit un point bidimensionnel à partir des coordonnées de scène (globales) vers les coordonnées d'un objet d'affichage tridimensionnel (locales). | DisplayObject | |
![]() | Vérifie si des écouteurs sont enregistrés auprès de l'objet EventDispatcher pour un type spécifique d'événement. | EventDispatcher | |
![]() | Indique si la propriété spécifiée d'un objet est définie. | Object | |
![]() | Evalue le cadre de délimitation de l'objet d'affichage pour savoir s'il recouvre ou recoupe le cadre de délimitation de l'objet d'affichage obj. | DisplayObject | |
![]() | Evalue l'objet d'affichage pour savoir s'il recouvre ou recoupe le point spécifié par les paramètres x et y. | DisplayObject | |
![]() | Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l'objet spécifié en tant que paramètre. | Object | |
![]() | Convertit un point tridimensionnel des coordonnées de l'objet d'affichage tridimensionnel (locales) vers un point bidimensionnel dans les coordonnées de scène (globales). | DisplayObject | |
![]() | Convertit l'objet point des coordonnées de l'objet d'affichage (locales) vers les coordonnées de la scène (globales). | DisplayObject | |
![]() | Indique si la propriété spécifiée existe et est énumérable. | Object | |
![]() | Supprime l'occurrence enfant de DisplayObject spécifiée de la liste d'enfants de l'occurrence de DisplayObjectContainer. | DisplayObjectContainer | |
![]() | Supprime une occurrence enfant de DisplayObject de la position d'index spécifiée dans la liste d'enfants de DisplayObjectContainer. | DisplayObjectContainer | |
![]() | Supprime un écouteur de l'objet EventDispatcher. | EventDispatcher | |
![]() | Modifie la position d'un enfant existant dans le conteneur d'objet d'affichage. | DisplayObjectContainer | |
![]() | Définit la disponibilité d'une propriété dynamique pour les opérations en boucle. | Object | |
![]() | Intervertit l'ordre z (ordre d'empilement du premier plan vers l'arrière-plan) des deux objets enfants spécifiés. | DisplayObjectContainer | |
![]() | Intervertit l'ordre z (ordre d'empilement du premier plan vers l'arrière-plan) des objets enfants aux deux positions d'index spécifiées dans la liste d'enfants. | DisplayObjectContainer | |
![]() | Renvoie la représentation sous forme de chaîne de l'objet spécifié. | Object | |
![]() | Renvoie la valeur primitive de l'objet spécifié. | Object | |
![]() | Vérifie si un écouteur d'événement est enregistré auprès de cet objet EventDispatcher ou de ses ancêtres pour le type d'événement spécifié. | EventDispatcher | |
| Constante | Défini par | ||
|---|---|---|---|
| MAX_LINE_WIDTH : int = 1000000 [statique] Largeur maximale requise d'une ligne de texte, en pixels. | TextLine | ||
| ascent | propriété |
ascent:Number [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Spécifie le nombre de pixels séparant la ligne de base du haut des plus grands caractères de la ligne. Dans le cas d'un TextLine contenant uniquement un élément graphique, ascent est défini sur 0.
public function get ascent():Number| atomCount | propriété |
atomCount:int [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Nombre d'atomes dans la ligne, correspondant au nombre d'éléments indivisibles, espaces et éléments graphiques compris.
L'accès à cette propriété oblige le lecteur à créer les données d'atome lorsqu'elles n'existent pas encore.
public function get atomCount():intIllegalOperationError —
La validité de la ligne est TextLineValidity.STATIC.
|
Voir aussi
| descent | propriété |
descent:Number [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Spécifie le nombre de pixels séparant la ligne de base du bas des caractères descendants les plus bas de la ligne. Dans le cas d'un TextLine contenant uniquement un élément graphique, descent est défini sur 0.
public function get descent():Number| hasGraphicElement | propriété |
hasGraphicElement:Boolean [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Indique si la ligne de texte contient des éléments graphiques.
public function get hasGraphicElement():BooleanVoir aussi
| mirrorRegions | propriété |
mirrorRegions:Vector.<TextLineMirrorRegion> [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Vecteur contenant les objets TextLineMirrorRegion associés à la ligne, ou null lorsqu'il n'y en a pas.
public function get mirrorRegions():Vector.<TextLineMirrorRegion>Voir aussi
| nextLine | propriété |
nextLine:TextLine [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Prochain TextLine du TextBlock, ou null si la ligne en cours est la dernière ligne du bloc ou si sa validité est TextLineValidity.STATIC.
public function get nextLine():TextLineVoir aussi
| previousLine | propriété |
previousLine:TextLine [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
TextLine précédent du TextBlock, ou null s'il s'agit de la première ligne du bloc ou si la validité de la ligne est TextLineValidity.STATIC.
public function get previousLine():TextLineVoir aussi
| rawTextLength | propriété |
rawTextLength:int [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Longueur du texte brut dans le bloc de texte devenant la ligne, y compris les caractères U+FDEF représentant des éléments graphiques et tous les espaces à droite faisant partie de la ligne mais non affichés.
public function get rawTextLength():intVoir aussi
| specifiedWidth | propriété |
specifiedWidth:Number [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Largeur spécifiée à la méthode TextBlock.createTextLine() lors de la création de la ligne. Cette valeur est très utile lorsque l'on doit décider si une modification nécessite une nouvelle séparation de la ligne.
public function get specifiedWidth():NumberVoir aussi
| textBlock | propriété |
textBlock:TextBlock [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
TextBlock contenant cette ligne de texte, ou null si la validité de la ligne est TextLineValidity.STATIC.
public function get textBlock():TextBlockVoir aussi
| textBlockBeginIndex | propriété |
textBlockBeginIndex:int [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Index du premier caractère de la ligne dans le texte brut du bloc de texte.
public function get textBlockBeginIndex():intVoir aussi
| textHeight | propriété |
textHeight:Number [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Hauteur logique de la ligne de texte, égale à ascent + descent. Pour obtenir la hauteur encrée, accédez à la propriété height héritée.
La valeur est calculée à partir de la différence entre les lignes de base qui limitent la ligne, ideo top/bottom ou ascent/descent, selon si TextBlock.baselineZero est ideo ou non. Les éléments graphiques ne sont pas pris en compte lors du calcul de ces lignes de base.
public function get textHeight():NumberVoir aussi
| textWidth | propriété |
textWidth:Number [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Largeur logique de la ligne de texte, correspondant à la largeur utilisée par le moteur de saisie pour positionner la ligne. Accédez à la propriété héritée width pour obtenir la largeur réelle du cadre de délimitation de tous les pixels dessinés.
public function get textWidth():NumberVoir aussi
specifiedWidth, textWidth et width dans chaque cas. Le résultat du suivi est :
package {
import flash.display.Sprite;
import flash.text.engine.TextBlock;
import flash.text.engine.TextElement;
import flash.text.engine.TextLine;
import flash.text.engine.FontDescription;
import flash.text.engine.ElementFormat;
import flash.text.engine.FontPosture;
public class TextLine_textWidthExample extends Sprite {
public function TextLine_textWidthExample() {
var str:String = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, ";
var yPos:Number = 20;
var fontDescription:FontDescription = new FontDescription();
var textBlock:TextBlock = new TextBlock();
fontDescription.fontPosture = FontPosture.NORMAL;
var format:ElementFormat = new ElementFormat(fontDescription, 12);
var textElement:TextElement = new TextElement(str, format);
textBlock.content = textElement;
createLine(textBlock, yPos);
var fontDescriptionItalic = fontDescription.clone();
fontDescriptionItalic.fontPosture = FontPosture.ITALIC;
var formatItalic = new ElementFormat(fontDescriptionItalic, 12);
textElement = new TextElement(str, formatItalic);
textBlock.content = textElement;
createLine(textBlock, yPos + 20);
}
private function createLine(textBlock:TextBlock, yPos:Number):void {
var textLine:TextLine = textBlock.createTextLine (null, 500);
trace("specifiedWidth is: " + textLine.specifiedWidth);
trace("textWidth is: " + textLine.textWidth);
trace("width is: " + textLine.width);
addChild(textLine);
textLine.x = 15;
textLine.y = yPos;
}
}
}| unjustifiedTextWidth | propriété |
unjustifiedTextWidth:Number [lecture seule] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Largeur de la ligne si elle n'était pas justifiée. Dans le cas de texte non justifié, cette valeur est identique à textWidth. Dans le cas de texte justifié, cette valeur correspond à ce qu'aurait été la longueur sans justification et textWidth représente la largeur réelle de la ligne. Par exemple, lorsque la chaîne suivante est justifiée et envoyée à TextBlock.createTextLine() avec une largeur de 500, sa largeur réelle est de 500 mais sa largeur non justifiée de 268.9921875.
public function get unjustifiedTextWidth():NumberVoir aussi
import flash.display.Sprite;
import flash.text.engine.TextBlock;
import flash.text.engine.TextElement;
import flash.text.engine.TextLine;
import flash.text.engine.FontDescription;
import flash.text.engine.ElementFormat;
import flash.text.engine.SpaceJustifier;
import flash.text.engine.LineJustification;
var str:String = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, ";
var fontDescription:FontDescription = new FontDescription();
var textBlock:TextBlock = new TextBlock();
var format:ElementFormat = new ElementFormat(fontDescription, 12);
var textElement:TextElement = new TextElement(str, format);
textBlock.content = textElement;
var spaceJustifier:SpaceJustifier = new SpaceJustifier("en", LineJustification.ALL_INCLUDING_LAST);
textBlock.textJustifier = spaceJustifier;
var textLine:TextLine = textBlock.createTextLine(null, 500);
textLine.y = 20;
addChild(textLine);
trace("textWidth value is: " + textLine.textWidth); // 500.00244140625
trace("unjustifiedTextWidth is: " + textLine.unjustifiedTextWidth); // 268.9921875| userData | propriété |
public var userData:*| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Permet à l'auteur d'associer des données arbitraires à la ligne de texte.
| validity | propriété |
validity:String [lecture-écriture] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Spécifie la validité actuelle de la ligne de texte. Les valeurs valides pour cette propriété sont les membres de la classe TextLineValidity. Les règles de définition de cette propriété sont les suivantes :
Une ligne est considérée USER_INVALID si la validité est définie sur une chaîne quelconque, non membre de TextLineValidity. USER_INVALID est une abstraction utilisée ici pour représenter une telle valeur.
Lorsque le contenu du TextBlock est modifié, le code du lecteur marque les lignes de texte affectées, la ligne précédente et toutes les lignes suivantes comme INVALID. La ligne précédente doit être désignée comme non valide lorsqu'une modification l'autorise à absorber une partie du contenu auparavant sur la première ligne affectée.
Les lignes nouvellement séparées sont toujours VALID. Le lecteur peut faire passer les lignes suivantes de VALID à POSSIBLY_INVALID ou à INVALID. Il peut transformer les lignes POSSIBLY_INVALID en VALID si les sauts de ligne correspondent ou en INVALID dans le cas contraire.
Le code de l'utilisateur peut marquer les lignes VALID en INVALID ou en USER_INVALID, et les lignes USER_INVALID en VALID. Le code de l'utilisateur ne peut pas marquer des lignes comme POSSIBLY_INVALID.
Le code de l'utilisateur peut marquer n'importe quelle ligne STATIC. Dans ce cas, le membre du bloc devient null. L'opération efface également les données de l'atome de la ligne et empêche de les recréer. Tous les éléments graphiques d'une ligne de texte STATIC sont supprimés et réaparentés s'ils font partie d'une nouvelle séparation de ligne de texte du bloc de texte d'où dérive à l'origine la ligne de texte STATIC.
public function get validity():String public function set validity(value:String):voidArgumentError —
Si la valeur actuelle est TextLineValidity.STATIC.
| |
ArgumentError —
Si la valeur actuelle est TextLineValidity.INVALID et que la nouvelle valeur est autre que TextValidity.STATIC.
| |
ArgumentError —
Si la valeur actuelle est TextLineValidity.POSSIBLY_INVALID et que la nouvelle valeur est TextLineValidity.VALID.
| |
ArgumentError —
Si la nouvelle valeur est TextLineValidity.POSSIBLY_INVALID.
|
Voir aussi
| dump | () | méthode |
public function dump():String| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Libère le contenu sous-jacent du TextLine sous forme de chaîne XML. Cela peut se révéler utile lors de tests automatisés, et comprend le texte, la mise en forme et les informations de rendu. Disponible uniquement dans le débogueur Flash Player.
Pour une description du résultat, reportez-vous à la méthode TextBlock.dump().
Remarque : il est possible que le contenu et le format du résultat de cette méthode changent dans le futur. Adobe ne garantit pas la compatibilité ascendante de cette méthode.
Valeur renvoyéeString |
Voir aussi
| flushAtomData | () | méthode |
public function flushAtomData():void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Libère les données d'atomes de la ligne en vue d'un nettoyage. Le terme atome fait référence aux entités indivisibles qui composent une ligne de texte. Le moteur de saisie génère des données d'atome lorsque vous accédez à la propriété atomCount ou lorsque vous appelez l'une des méthodes qui récupèrent des informations sur un atome.
Voir aussi
| getAtomBidiLevel | () | méthode |
public function getAtomBidiLevel(atomIndex:int):int| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Récupère le niveau bidirectionnel de l'atome au niveau de l'index spécifié. Déterminée par une combinaison de TextBlock.bidiLevel et des propriétés bidirectionnelles Unicode des caractères qui composent la ligne.
Par exemple, si vous commencez un bloc de texte par un texte hébreu, vous définissez TextBlock.bidiLevel sur 1, en définissant droite à gauche par défaut. Si le texte contient une citation en anglais (de gauche à droite), ce texte a un paramètre AtomBidiLevel de 2. Si le texte anglais contient une section en arabe (de droite à gauche), le paramètre AtomBidiLevel de ce texte passe à 3. Si le texte arabe contient un nombre (de gauche à droite), le paramètre AtomBidiLevel du nombre est 4. La ligne dans laquelle les atomes se terminent importe peu ; les atomes hébreux sont AtomBidiLevel 1, les atomes anglais sont AtomBidiLevel 2, les atomes arabes sont AtomBidiLevel 3 et les atomes de nombre sont AtomBidiLevel 4.
Un appel à cette méthode oblige le lecteur à créer les données d'atome lorsqu'elles n'existent pas encore.
Paramètres
atomIndex:int — Valeur d'index basé sur zéro de l'atome (par exemple, le premier atome est 0, le deuxième est 1, etc.). |
int —
Niveau bidirectionnel de l'atome au niveau de atomIndex
|
RangeError — L'index de l'atome spécifié est hors limites. | |
IllegalOperationError —
La validité de la ligne est TextLineValidity.STATIC.
|
Voir aussi
| getAtomBounds | () | méthode |
public function getAtomBounds(atomIndex:int):Rectangle| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Récupère les limites de l'atome au niveau de l'index spécifié par rapport à la ligne de texte. Les limites de l'atome spécifié sont constituées de sa position horizontale (x) dans la ligne, de sa position verticale (y) dans la ligne, de sa largeur (w) et de sa hauteur (h ). Toutes les valeurs sont en pixels.
Un appel à cette méthode oblige le lecteur à créer les données d'atome lorsqu'elles n'existent pas encore.
Paramètres
atomIndex:int — Valeur d'index basé sur zéro de l'atome (par exemple, le premier atome est 0, le deuxième est 1, etc.). |
Rectangle —
Limites de l'atome au niveau de atomIndex.
|
RangeError — L'index de l'atome spécifié est hors limites. | |
IllegalOperationError —
La validité de la ligne est TextLineValidity.STATIC.
|
Voir aussi
| getAtomCenter | () | méthode |
public function getAtomCenter(atomIndex:int):Number| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Récupère le centre de l'atome tel que mesuré le long de la ligne de base au niveau de l'index spécifié.
Un appel à cette méthode oblige le lecteur à créer les données d'atome lorsqu'elles n'existent pas encore.
Paramètres
atomIndex:int — Valeur d'index basé sur zéro de l'atome (par exemple, le premier atome est 0, le deuxième est 1, etc.). |
Number —
Centre de l'atome au niveau de atomIndex
|
RangeError — L'index de l'atome spécifié est hors limites. | |
IllegalOperationError —
La validité de la ligne est TextLineValidity.STATIC.
|
Voir aussi
| getAtomGraphic | () | méthode |
public function getAtomGraphic(atomIndex:int):DisplayObject| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Récupère le graphique de l'atome au niveau de l'index spécifié, ou null si l'atome est un caractère.
Un appel à cette méthode oblige le lecteur à créer les données d'atome lorsqu'elles n'existent pas encore.
Paramètres
atomIndex:int — Valeur d'index basé sur zéro de l'atome (par exemple, le premier atome est 0, le deuxième est 1, etc.). |
DisplayObject —
Graphique de l'atome au niveau de atomIndex
|
RangeError — L'index de l'atome spécifié est hors limites. | |
IllegalOperationError —
La validité de la ligne est TextLineValidity.STATIC.
|
Voir aussi
| getAtomIndexAtCharIndex | () | méthode |
public function getAtomIndexAtCharIndex(charIndex:int):int| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Renvoie l'index de l'atome contenant le caractère spécifié par le paramètre charIndex, ou -1 si le caractère ne contribue à aucun atome dans la ligne. Le paramètre charIndex est relatif à l'ensemble du contenu du bloc de texte contenant la ligne.
Un appel à cette méthode oblige le lecteur à créer les données d'atome lorsqu'elles n'existent pas encore.
Paramètres
charIndex:int — Valeur d'index basé sur zéro du caractère (par exemple, le premier caractère est 0, le deuxième est 1, etc.). |
int —
Index de l'atome contenant le caractère au niveau de charIndex. Renvoie -1 si le caractère ne contribue à aucun atome dans la ligne.
|
IllegalOperationError —
La validité de la ligne est TextLineValidity.STATIC.
|
Voir aussi
| getAtomIndexAtPoint | () | méthode |
public function getAtomIndexAtPoint(stageX:Number, stageY:Number):int| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Renvoie l'index de l'atome situé au niveau du point spécifié par les paramètres x et y, ou -1 s'il n'y a pas d'atome au niveau de ce point.
Un appel à cette méthode oblige le lecteur à créer les données d'atome lorsqu'elles n'existent pas encore.
Cette méthode prend les coordonnées globales de sorte qu'elles puissent être aisément utilisées avec les propriétés MouseEvent.stageX et MouseEvent.stageY.
Paramètres
stageX:Number —
Coordonnée globale x du point à tester.
| |
stageY:Number —
Coordonnée globale y du point à tester.
|
int — Index de l'atome sous le point. Renvoie -1 si le point n'est pas au-dessus d'un atome. |
IllegalOperationError —
La validité de la ligne est TextLineValidity.STATIC.
|
Voir aussi
| getAtomTextBlockBeginIndex | () | méthode |
public function getAtomTextBlockBeginIndex(atomIndex:int):int| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Récupère l'index de début du bloc de texte de l'atome au niveau de l'index spécifié.
Un appel à cette méthode oblige le lecteur à créer les données d'atome lorsqu'elles n'existent pas encore.
Paramètres
atomIndex:int — Valeur d'index basé sur zéro de l'atome (par exemple, le premier atome est 0, le deuxième est 1, etc.). |
int —
Index de début du bloc de texte de l'atome au niveau de atomIndex
|
RangeError — L'index de l'atome spécifié est hors limites. | |
IllegalOperationError —
La validité de la ligne est TextLineValidity.STATIC.
|
Voir aussi
| getAtomTextBlockEndIndex | () | méthode |
public function getAtomTextBlockEndIndex(atomIndex:int):int| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Récupère l'index de fin du bloc de texte de l'atome au niveau de l'index spécifié.
Un appel à cette méthode oblige le lecteur à créer les données d'atome lorsqu'elles n'existent pas encore.
Paramètres
atomIndex:int — Valeur d'index basé sur zéro de l'atome (par exemple, le premier atome est 0, le deuxième est 1, etc.). |
int —
Index de fin du bloc de texte de l'atome au niveau de atomIndex
|
RangeError — L'index de l'atome spécifié est hors limites. | |
IllegalOperationError —
La validité de la ligne est TextLineValidity.STATIC.
|
Voir aussi
| getAtomTextRotation | () | méthode |
public function getAtomTextRotation(atomIndex:int):String| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Récupère la rotation de l'atome au niveau de l'index spécifié. Des constantes TextRotation sont utilisées pour cette propriété. La rotation de l'atome correspond aux rotations cumulées de l'élément et de la ligne. Il est principalement utilisé pour définir l'orientation du caret (curseur) lors de l'interaction avec le TextLine.
Un appel à cette méthode oblige le lecteur à créer les données d'atome lorsqu'elles n'existent pas encore.
Paramètres
atomIndex:int — Valeur d'index basé sur zéro de l'atome (par exemple, le premier atome est 0, le deuxième est 1, etc.). |
String —
Rotation de l'atome au niveau de atomIndex
|
RangeError — L'index de l'atome spécifié est hors limites. | |
IllegalOperationError —
La validité de la ligne est TextLineValidity.STATIC.
|
Voir aussi
| getAtomWordBoundaryOnLeft | () | méthode |
public function getAtomWordBoundaryOnLeft(atomIndex:int):Boolean| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Indique s'il existe ou non une limite de mot à gauche de l'atome au niveau de l'index spécifié. Les limites de mot sont déterminées à partir des propriétés Unicode des caractères qui constituent la ligne.
Un appel à cette méthode oblige le lecteur à créer les données d'atome lorsqu'elles n'existent pas encore.
Paramètres
atomIndex:int — Valeur d'index basé sur zéro de l'atome (par exemple, le premier atome est 0, le deuxième est 1, etc.). |
Boolean —
Valeur booléenne qui indique s'il existe ou non une limite de mot à gauche de l'atome au niveau de atomIndex
|
RangeError — L'index de l'atome spécifié est hors limites. | |
IllegalOperationError —
La validité de la ligne est TextLineValidity.STATIC.
|
Voir aussi
| getBaselinePosition | () | méthode |
public function getBaselinePosition(baseline:String):Number| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Récupère la position de la ligne de base spécifiée par rapport au TextBlock.baselineZero.
Paramètres
baseline:String —
Ligne de base pour laquelle la position doit être récupérée. Utilisez des valeurs TextBaseline.
|
Number —
Position de la ligne de base spécifiée par rapport à TextBlock.baselineZero.
|
ArgumentError —
Si la baseline spécifiée n'appartient pas à TextBaseline.
|
Voir aussi
| getMirrorRegion | () | méthode |
public function getMirrorRegion(mirror:EventDispatcher):TextLineMirrorRegion| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Renvoie le premier TextLineMirrorRegion de la ligne dont la propriété mirror correspond à celle spécifiée par le paramètre mirror, ou null s'il n'y a pas de correspondance.
Même un seul TextElement peut produire plusieurs objets TextLineMirrorRegion sur une ou plusieurs lignes, selon les paramètres bidirectionnel et de saut de ligne. Les propriétés nextRegion et previousRegion relient toutes les zones miroir générées par un élément de texte.
Paramètres
mirror:EventDispatcher —
Objet miroir EventDispatcher à rechercher.
|
TextLineMirrorRegion —
Premier TextLineMirrorRegion de la ligne dont la propriété mirror correspond à la valeur spécifiée, ou null s'il n'y a pas de correspondance.
|
Voir aussi
| MAX_LINE_WIDTH | Constante |
public static const MAX_LINE_WIDTH:int = 1000000| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | Flash Player 10, AIR 1.5 |
Largeur maximale requise d'une ligne de texte, en pixels. La méthode TextBlock.createTextLine() utilise cette constante comme valeur par défaut du paramètre width, si vous ne spécifiez pas de valeur.
Voir aussi
getAtomBounds() pour encadrer chacune d'elles.
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.FontDescription;
import flash.text.engine.FontPosture;
import flash.text.engine.FontWeight;
import fl.controls.NumericStepper;
import flash.events.Event;
import flash.geom.Rectangle;
public class TextLineExample extends Sprite {
private var atomStepper:NumericStepper = new NumericStepper();
private var atomDataContainer:Sprite;
private var fontDescriptionItalic:FontDescription = new FontDescription("Arial", FontWeight.NORMAL, FontPosture.ITALIC);
private var fontDescriptionNormal:FontDescription = new FontDescription("Arial", FontWeight.NORMAL , FontPosture.NORMAL);
private var textBlock:TextBlock = new TextBlock();
private var textLine:TextLine;
public function TextLineExample():void {
var myText:String = "I am a TextElement, created from a String and assigned " +
"to the content property of a TextBlock. From the text block, " +
"the createTextLine() method created these lines, 300 pixels wide, " +
"for display." ;
atomStepper.minimum = 0;
atomStepper.value = 0;
atomStepper.width = 50;
addChild(atomStepper);
atomStepper.x = 20;
atomStepper.y = 120;
atomStepper.addEventListener(Event.CHANGE, nsChange);
var directions:String = "Click up / down arrows to frame atoms in text block above.";
var formatItalic:ElementFormat = new ElementFormat(fontDescriptionItalic);
formatItalic.fontSize = 12;
var textElement1:TextElement = new TextElement(directions, formatItalic);
textBlock.content = textElement1;
createLines(textBlock, 15, 160, 400, this);
var formatNormal:ElementFormat = new ElementFormat(fontDescriptionNormal);
formatNormal.fontSize = 16;
var textElement2:TextElement = new TextElement(myText, formatNormal);
textBlock.content = textElement2;
createLines(textBlock, 15.0, 20.0, 300, this);
textLine = textBlock.firstLine;
atomStepper.maximum = textLine.atomCount - 1;
showAtom(textLine, 0);
}
private function nsChange(event:Event):void
{
removeAtom(textLine);
if (atomStepper.value == textLine.atomCount - 1)
{
if(textLine != textBlock.lastLine)
{
textLine = textLine.nextLine;
atomStepper.maximum = textLine.atomCount - 1;
atomStepper.value = 0;
}
}
showAtom(textLine, atomStepper.value);
}
private function createLines(textBlock, startX, startY, width, container)
{
var textLine:TextLine = textBlock.createTextLine (null, width);
while (textLine)
{
textLine.x = startX;
textLine.y = startY;
startY += textLine.height + 2;
container.addChild(textLine);
textLine = textBlock.createTextLine (textLine, width);
}
}
private function showAtom(textLine, i):void
{
var box:Sprite = new Sprite();
var mcGraphics = box.graphics;
var bounds:Rectangle = textLine.getAtomBounds(i);
mcGraphics.lineStyle(1, 0xFF0000, 1.0);
mcGraphics.drawRect(bounds.left, bounds.top, bounds.width, bounds.height);
textLine.userData = textLine.addChild(box);
displayAtomData(textLine,i);
}
private function displayAtomData(textLine, i)
{
if(atomDataContainer != null)
removeChild(atomDataContainer);
atomDataContainer=new Sprite();
var format = new ElementFormat(fontDescriptionNormal);
format.color = 0x00000FF;
var n:int = 0;
var nxtY:Number = 0;
var atomInfo:String = "value of getAtomBidiLevel() is: " + textLine.getAtomBidiLevel(i)+"\n"
+"value of getAtomCenter() is: " + textLine.getAtomCenter(i)+"\n"
+"value of getAtomIndexAtCharIndex() is: " + textLine.getAtomIndexAtCharIndex(i)+"\n"
+"value of getAtomTextBlockBeginIndex() is: " + textLine.getAtomTextBlockBeginIndex(i)+"\n"
+"value of getAtomTextBlockEndIndex() is: " + textLine.getAtomTextBlockEndIndex(i)+"\n"
+"value of getAtomTextRotation() is: " + textLine.getAtomTextRotation(i)+"\n";
var atomtextBlock:TextBlock = new TextBlock();
var textElement3:TextElement = new TextElement(atomInfo, format);
atomtextBlock.content = textElement3;
createLines(atomtextBlock,20,200,500, atomDataContainer)
addChild(atomDataContainer);
}
private function removeAtom(textLine):void
{
textLine.removeChild(textLine.userData);
}
}
}