Class Label

La classe Label permet de créer et d'afficher des étiquettes de texte sur des images.

Méthodes et propriétés

Documentation

  • public Border $border := new Border
    La bordure associée à l'étiquette.
  • protected Font $font := new Font(Font::FONT_2)
    La police utilisée pour ce paragraphe.
  • protected int $angle := 0
    L'angle du texte du paragraphe.
  • protected Color $color := new Color(0, 0, 0)
    La couleur du texte du paragraphe.
  • protected bool $hide
    Détermine si les étiquettes doivent être cachées.
  • protected bool $hideFirst
    Détermine si la première étiquette doit être cachée.
  • protected bool $hideLast
    Détermine si la dernière étiquette doit être cachée.
  • protected int $interval
    L'interval d'affichage des étiquettes.
  • protected int $hAlign := Label::CENTER
    L'alignement horizontal des étiquettes.
  • protected int $vAlign := Label::MIDDLE
    L'alignement vertical des étiquettes.
  • public __construct(string $label := NULL, Font $font := new Font(Text::FONT_2), color $color := new Color(0, 0, 0), int $angle := 0)
    Construit un nouvel objet qui permettra l'affichage d'étiquettes sur une image. $label est un chaîne de caractères qui représente la première étiquette (peut être laissée à NULL). $font est la police à utiliser pour l'étiquette tandis que $color sera utilisé pour la couleur du texte. Enfin, l'angle du texte prendra la valeur de $angle.
  • public mixed get(int $key)
    Retourne la valeur de l'élément de l'étiquette dont la clé vaut $key. Si la clé n'est associée à aucune valeur, alors cette méthode retourne NULL.
  • public mixed all()
    Retourne toutes la valeur de toutes les étiquettes sous la forme d'un tableau.
  • public set(mixed $labels)
    Change le texte des étiquettes à afficher sur l'image. $labels peut être une chaîne de caractères si vous n'avez besoin que d'une étiquette, ou un tableau de chaînes de caractères si vous avez besoin de plusieurs étiquettes.
  • public int count()
    Retourne le nombre de textes dans le paragraphe.
  • public setCallbackFunction(mixed $function)
    Change le nom de la fonction de callback qui sera appelé lors du dessin des textes du paragraphe. $function peut être une simple chaîne de caractères, ou un tableau du type array($this, 'methodName') pour permettre d'appeler des méthodes statiques.
  • public string getCallbackFunction()
    Retourne le nom de la fonction de callback actuellement utilisée. Si aucune fonction de callback n'a été spécifiée, alors NULL sera retourné.
  • public setFormat(string $format)
    Formate le texte de chaque étiquette selon $format. $format est du même format que les fonctions printf ou sprintf.
  • public setFont(Font $font)
    Change la police utilisée pour le texte de l'étiquette.
  • public setAngle(int $angle)
    Change l'angle du texte de l'étiquette. Les valeurs possibles sont 0 ou 90°.
  • public setColor(Color $color)
    Change la couleur du texte de l'étiquette.
  • public setBackground(mixed $background)
    Change le fond du texte de l'étiquette. $background peut être soit une couleur, soit un dégradé;
  • public setBackgroundColor(Color $color)
    Change la couleur de fond du texte de l'étiquette.
    Voir aussi :
  • public setBackgroundGradient(Gradient $gradient)
    Change le dégradé de fond du texte de l'étiquette.
    Voir aussi :
  • public setPadding(int $left, int $right, int $top, int $bottom)
    Change la valeur de l'espace qui entoure le texte par rapport à sa bordure.
  • public hide(bool $hide)
    Détermine si toutes les étiquettes doivent être cachées ou non.
  • public show(bool $show)
    Détermine si toutes les étiquettes doivent être affichées ou non.
  • public hideKey(int $key)
    Détermine si l'étiquette de clé $key doit être cachée ou non.
  • public hideFirst(bool $hide)
    Détermine si la première étiquette doit être cachée ou non.
  • public hideLast(bool $hide)
    Détermine si la dernière étiquette doit être cachée ou non.
  • public setInterval(int $interval)
    Change l'interval d'affichage des étiquettes. L'interval est à 1 par défaut, ce qui signifie que toutes les étiquettes sont affichées. Si cet interval est placé à 2 par exemple, alors la méthode draw() n'affichera qu'une étiquette sur 2.
  • public move(int $x, int $y)
    Déplace l'affichage de l'étiquette de $x pixels sur l'axe des abscisses et de $y pixels sur l'axe des ordonnées. Les appels à move() sont cumulés, c'est-à-dire qu'un appel avec de nouvelles valeurs additionnera ces valeurs avec les anciennes. Par défaut, $x et $y sont à 0.
  • public setAlign(int $h := NULL, int $v := NULL)
    Change l'alignement de l'étiquette par rapport au point où elle sera affichée. $h correspond à l'alignement horizontal (Positionable::LEFT, Positionable::RIGHT ou Positionable::CENTER) et $v à l'alignement vertical (Positionable::TOP, Positionable::BOTTOM ou Positionable::MIDDLE). Si vous ne souhaitez pas modifier une des deux valeurs, vous pouvez passer NULL.
  • public Text getText(int $key)
    Retourne un objet de type Text qui correspond à la valeur du tableau de textes passé au constructeur ou à Label::set() pour la clé $key. Cette object Text se verra attribué toutes les propriétés (couleur, police, angle, etc.) définies pour le paragraphe.
  • public int getMaxWidth(Driver $driver)
    Essaie de déterminer la longueur maximale des étiquettes. Cette méthode a besoin d'un Driver pour établir la taille de chaque texte. La longueur maximale trouvée est déterminée et rétournée en pixels.
  • public int getMaxHeight(Driver $driver)
    Essaie de déterminer la hauteur maximale des étiquettes. Cette méthode a besoin d'un Driver pour établir la taille de chaque texte. La hauteur maximale trouvée est déterminée et rétournée en pixels.
  • public draw(Driver $driver, Point $point, int $key := 0)
    Dessine l'étiquette identifiée par $key avec le pilote $driver. L'étiquette sera placée au point $point décalé des valeurs successivement passées à move(), et alignée par rapport à ce point selon les valeurs passées à setAlign(). L'étiquette ne sera pas affichée si sa clé $key n'est pas dans l'interval d'affichage donné avec setInterval().