Packageflash.text
Classepublic class TextLineMetrics
HéritageTextLineMetrics Inheritance Object

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

La classe TextLineMetrics contient des informations sur la position du texte et les unités de mesure d'une line of text dans un champ de texte. Toutes les mesures sont en pixels. Les objets de cette classe sont renvoyés par la méthode 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 :

Consulter les exemples

Voir aussi

flash.text.TextField


Propriétés publiques
 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
 Inheritedconstructor : 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
 Inheritedprototype : Object
[static] Référence à l’objet prototype d’un objet de classe ou fonction.
Object
  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éthodes publiques
 MéthodeDéfini par
  
TextLineMetrics(x:Number, width:Number, height:Number, ascent:Number, descent:Number, leading:Number)
Crée un objet TextLineMetrics.
TextLineMetrics
 Inherited
Indique si la propriété spécifiée d'un objet est définie.
Object
 Inherited
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
 Inherited
Indique si la propriété spécifiée existe et est énumérable.
Object
 Inherited
Définit la disponibilité d'une propriété dynamique pour les opérations en boucle.
Object
 Inherited
Renvoie la représentation sous forme de chaîne de l'objet spécifié.
Object
 Inherited
Renvoie la valeur primitive de l'objet spécifié.
Object
Détails des propriétés
ascentpropriété
public var ascent:Number

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

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.

Voir aussi

descentpropriété 
public var descent:Number

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

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.

Voir aussi

heightpropriété 
public var height:Number

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

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.

Voir aussi

leadingpropriété 
public var leading:Number

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

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.

Voir aussi

widthpropriété 
public var width:Number

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

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.

Voir aussi

xpropriété 
public var x:Number

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

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.

Voir aussi

Détails du constructeur
TextLineMetrics()Constructeur
public function TextLineMetrics(x:Number, width:Number, height:Number, ascent:Number, descent:Number, leading:Number)

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

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ètres
x: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.

Voir aussi

Exemples Utilisation des exemples
TextLineMetricsExample.as

L'exemple suivant crée les classes TextLineMetricsExample et LineMetricsReader pour imprimer un message dans Flash Player à l'aide d'un objet XML. Cette opération se déroule selon la procédure suivante :
  1. Crée une propriété appelée label de type TextField.
  2. 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 de label. La méthode getLabelText() 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 de addChild().
  3. Une méthode qui écoute les événements resize qui s'exécutent sur la scène est ensuite ajoutée en appelant resizeHandler(). Dès que la taille de la fenêtre Flash Player change, un événement RESIZE est distribué et produit les effets suivants :
    • draw() est appelée pour s'assurer que label s'affiche au centre de la scène et est entouré par un tampon de 10 pixels.
    • setTimeout() exécute ensuite showMetrics() 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énement RESIZE s'est terminé et que l'opération d'actualisation de la scène est terminée.
    • showMetrics() affecte une variable TextLineMetrics appelée metrics au résultat d'un appel à getLineMetrics() et cette variable est ensuite transmise à une nouvelle occurrence de LineMetricsReader appelée reader. Les deux variables sont ensuite utilisées au sein d'appels à trace() pour imprimer la première et unique ligne de label et les informations fournies par l'occurrence LineMetricsReader par l'intermédiaire de sa méthode toString().
  4. Le constructeur entraîne une distribution unique de l'événement resize pour forcer label à 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
            + "]";
    }
}




 

M'envoyer un message électronique lorsque des commentaires sont ajoutés à cette page | Rapport de commentaire

Page en cours: http://livedocs.adobe.com/flash/9.0_fr/ActionScriptLangRefV3/flash/text/TextLineMetrics.html