Package | flash.text |
Classe | public class TextLineMetrics |
Héritage | TextLineMetrics Object |
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
flash.text.TextField.getLineMetrics()
.
Pour les mesures liées au champ de texte qui contient la ligne de texte (par exemple, la mesure de la « hauteur du champ de texte » dans le diagramme), consultez la section flash.text.TextField.
Le diagramme suivant indique les points et les unités de mesure d’un champ de texte et la ligne de texte contenu par le champ de texte :
Eléments de l’API associés
Propriété | Défini par | ||
---|---|---|---|
ascent : Number
La valeur ascendante du texte est la longueur depuis la hauteur de la ligne de base jusqu’à celle du haut de la ligne, en pixels. | TextLineMetrics | ||
constructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet. | Object | ||
descent : Number
La valeur descendante du texte est la longueur de la ligne de base à la partie la plus basse de la ligne, en pixels. | TextLineMetrics | ||
height : Number
Valeur de hauteur du texte des lignes sélectionnées (pas nécessairement la totalité du texte), en pixels. | TextLineMetrics | ||
leading : Number
La valeur d’interlignage est la mesure de la distance verticale entre les lignes de texte. | TextLineMetrics | ||
width : Number
La valeur width correspond à la largeur du texte des lignes sélectionnées (pas nécessairement la totalité du texte), en pixels. | TextLineMetrics | ||
x : Number
Valeur x de la position gauche du premier caractère, en pixels. | TextLineMetrics |
Méthode | Défini par | ||
---|---|---|---|
TextLineMetrics(x:Number, width:Number, height:Number, ascent:Number, descent:Number, leading:Number)
Crée un objet TextLineMetrics. | TextLineMetrics | ||
Indique si la propriété spécifiée d’un objet est définie. | Object | ||
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 | ||
Indique si la propriété spécifiée existe et est énumérable. | Object | ||
Définit la disponibilité d’une propriété dynamique pour les opérations en boucle. | Object | ||
Renvoie la représentation de chaîne de cet objet, formatée selon les paramètres régionaux en vigueur. | Object | ||
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 |
ascent | propriété |
public var ascent:Number
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
La valeur ascendante du texte est la longueur depuis la hauteur de la ligne de base jusqu’à celle du haut de la ligne, en pixels. Consultez la mesure « Ascendante » du diagramme de présentation pour cette classe.
Eléments de l’API associés
descent | propriété |
public var descent:Number
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
La valeur descendante du texte est la longueur de la ligne de base à la partie la plus basse de la ligne, en pixels. Consultez la mesure « Descendante » du diagramme de présentation pour cette classe.
Eléments de l’API associés
height | propriété |
public var height:Number
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Valeur de hauteur du texte des lignes sélectionnées (pas nécessairement la totalité du texte), en pixels. La hauteur de la ligne de texte n’inclut pas la hauteur de la marge de reliure. Consultez la mesure « Hauteur de ligne » du diagramme de présentation pour cette classe.
Eléments de l’API associés
leading | propriété |
public var leading:Number
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
La valeur d’interlignage est la mesure de la distance verticale entre les lignes de texte. Consultez la mesure « Interlignage » du diagramme de présentation pour cette classe.
Eléments de l’API associés
width | propriété |
public var width:Number
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
La valeur width correspond à la largeur du texte des lignes sélectionnées (pas nécessairement la totalité du texte), en pixels. La largeur de la ligne de texte est différente de la largeur du champ de texte. La largeur de la ligne de texte se calcule par rapport à la largeur du champ de texte, moins une marge de reliure de 4 pixels (2 pixels de chaque côté). Consultez la mesure « Largeur de la ligne de texte » du diagramme de présentation pour cette classe.
Eléments de l’API associés
x | propriété |
public var x:Number
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Valeur x de la position gauche du premier caractère, en pixels. Cette valeur inclut les largeurs de la marge, de l’indentation (le cas échéant) et de la marge de reliure. Consultez la section « Position x de la ligne de texte » du diagramme de présentation pour cette classe.
Eléments de l’API associés
TextLineMetrics | () | Constructeur |
public function TextLineMetrics(x:Number, width:Number, height:Number, ascent:Number, descent:Number, leading:Number)
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Crée un objet TextLineMetrics. L’objet TextLineMetrics contient des informations sur les unités de mesure d’une ligne de texte dans un champ de texte. Les objets de cette classe sont renvoyés par la méthode flash.text.TextField.getLineMetrics()
.
Consultez le diagramme de la présentation de cette classe pour mettre les propriétés en contexte.
Paramètresx:Number — Position gauche du premier caractère, en pixels.
| |
width:Number — Largeur du texte des lignes sélectionnées (pas nécessairement la totalité du texte), en pixels.
| |
height:Number — Hauteur du texte des lignes sélectionnées (pas nécessairement la totalité du texte), en pixels.
| |
ascent:Number — Longueur depuis la hauteur de la ligne de base jusqu’à celle du haut de la ligne, en pixels.
| |
descent:Number — Longueur depuis la profondeur de la ligne de base jusqu’à celle du bas de la ligne, en pixels.
| |
leading:Number — Mesure de la distance verticale entre les lignes de texte.
|
Eléments de l’API associés
- Crée une propriété appelée
label
de type TextField. - Le constructeur appelle
configureAssets()
, qui effectue les opérations suivantes :- Aligne la scène sur la partie supérieure gauche et sans redimensionnement.
- Crée un objet TextField appelé
label
. - Active la couleur d’arrière-plan de
label
et définit la couleur sur blanc. - Permet au texte de
label
de couvrir plusieurs lignes avec la fonctionnalité de retour automatique à la ligne. - Affecte le résultat d’un appel à
getLabelText()
à la propriététext
delabel
. La méthodegetLabelText()
crée une variable de type XML et l’affecte à un nœud XML appelébody
, qui est ensuite rempli avec une phrase longue. - Ajoute
label
à la liste d’affichage à l’aide deaddChild()
.
- Une méthode qui écoute les événements
resize
qui s’exécutent sur la scène est ensuite ajoutée en appelantresizeHandler()
. Dès que la taille de la fenêtre Flash Player change, un événementRESIZE
est distribué et produit les effets suivants :draw()
est appelée pour s’assurer quelabel
s’affiche au centre de la scène et est entouré par un tampon de 10 pixels.setTimeout()
exécute ensuiteshowMetrics()
après un bref délai. Le délai est ajouté car les unités de mesure de la ligne ne sont mises à jour que lorsque l’événementRESIZE
s’est terminé et que l’opération d’actualisation de la scène est terminée.showMetrics()
affecte une variable TextLineMetrics appeléemetrics
au résultat d’un appel àgetLineMetrics()
et cette variable est ensuite transmise à une nouvelle occurrence de LineMetricsReader appeléereader
. Les deux variables sont ensuite utilisées au sein d’appels àtrace()
pour imprimer la première et unique ligne delabel
et les informations fournies par l’occurrence LineMetricsReader par l’intermédiaire de sa méthodetoString()
.
- Le constructeur entraîne une distribution unique de l’événement
resize
pour forcerlabel
à se dessiner correctement lorsque le fichier SWF est chargé en premier.
package { import flash.display.Sprite; import flash.display.StageAlign; import flash.display.StageScaleMode; import flash.events.*; import flash.text.TextField; import flash.text.TextLineMetrics; import flash.utils.setTimeout; public class TextLineMetricsExample extends Sprite { private var gutter:int = 10; private var label:TextField; public function TextLineMetricsExample() { configureAssets(); configureListeners(); resizeHandler(new Event(Event.RESIZE)); } private function showMetrics():void { var metrics:TextLineMetrics = label.getLineMetrics(0); var reader:LineMetricsReader = new LineMetricsReader(metrics); trace("lineText: " + label.getLineText(0)); trace("metrics: " + reader); } private function configureAssets():void { stage.align = StageAlign.TOP_LEFT; stage.scaleMode = StageScaleMode.NO_SCALE; label = new TextField(); label.background = true; label.backgroundColor = 0xFFFFFF; label.multiline = true; label.wordWrap = true; label.text = getLabelText(); addChild(label); } private function configureListeners():void { stage.addEventListener(Event.RESIZE, resizeHandler); } private function resizeHandler(event:Event):void { draw(); setTimeout(showMetrics, 100); } private function draw():void { label.x = gutter; label.y = gutter; label.width = stage.stageWidth - (gutter * 2); label.height = stage.stageHeight - (gutter * 2); } private function getLabelText():String { var text:XML = <body>The Flex product line enables developers to build rich Internet applications that blend the responsiveness of desktop software, the cross-platform reach of the web, and the expressiveness of the Flash Platform.</body> return text.toString(); } } } import flash.text.TextLineMetrics; class LineMetricsReader { private var metrics:TextLineMetrics; public function LineMetricsReader(metrics:TextLineMetrics) { this.metrics = metrics; } public function toString():String { return "[TextLineMetrics ascent:" + metrics.ascent + ", descent:" + metrics.descent + ", leading:" + metrics.leading + ", width:" + metrics.width + ", height:" + metrics.height + ", x:" + metrics.x + "]"; } }
Tue Jun 12 2018, 09:30 AM Z