| ## Class Driver La classe abstraite Driver rassemble toutes les méthodes permettant de dessiner sur une Image. Cette classe ne contient aucune implémentation. Celle-ci doit être effectué à l'intérieur de chaque pilote dérivant de Driver. Sur une image, l'axe des abscisses rejoint l'axe des ordonnées sur le coin haut-gauche. Le coin haut-gauche de l'image a donc pour coordonnées (0, 0) et le coin bas-droite (largeur, hauteur). Par exemple, sur une image de largeur 100 et de hauteur 50, un point à 50 sur l'axe des abscisses et 25 sur l'axe des ordonnées sera au centre de l'image. Les classes suivantes dérivent de Driver : GDDriver Retourner voir la liste de toutes les classes ## Méthodes et propriétés public int $imageWidth public int $imageHeight protected bool $antiAliasing := FALSE protected string $driverString protected PHPFontDriver $phpFontDriver protected FileFontDriver $fileFontDriver public __construct() public init(Image $image) public initFromFile(FileImage $fileImage, string $file) public setImageSize(int $width, int $height) public setPosition(float $x, float $y) public movePosition(int $x, int $y) public setAbsPosition(int $x, int $y) public setSize(float $w, float $h) public setAbsSize(int $w, int $h) public array getSize() public mixed getColor(Color $color) public send(Image $image) public get(Image $image) public setAntiAliasing(bool $bool) public copyImage(Image $image, Point $p1, Point $p2) public copyResizeImage(Image $image, Point $d1, Point $d2, Point $s1, Point $s2, bool $resampled) public string(Text $text, Point $point, int $width := NULL) public point(Color $color, Point $point) public line(Color $color, Line $line) public arc(Color $color, Point $center, int $width, int $height, float $from, float $to) public filledArc(mixed $background, Point $center, int $width, int $height, float $from, float $to) public ellipse(Color $color, Point $center, int $width, int $height) public filledEllipse(mixed $background, Point $center, int $width, int $height) public rectangle(Color $color, Line $line) public filledRectangle(mixed $background, Line $line) public polygon(Color $color, Polygon $polygon) public filledPolygon(mixed $background, Polygon $polygon) public float getTextWidth(Text $text) public float getTextHeight(Text $text) protected bool isCompatibleWithFont(Font $font) ## Documentation public int $imageWidth La largeur de l'image gérée par le pilote. Remonter public int $imageHeight La hauteur de l'image gérée par le pilote. Remonter protected bool $antiAliasing := FALSE Doit-on utiliser l'anti-aliasing sur ce dessin ? Remonter protected string $driverString Représente le type du pilote sous forme de chaîne. Remonter protected PHPFontDriver $phpFontDriver Un objet PHPFontDriver gérant l'affichage et les calculs sur les polices de type PHPFont. Remonter protected FileFontDriver $fileFontDriver Un objet FileFontDriver gérant l'affichage et les calculs sur les polices de type FileFont. Remonter public __construct() Construit le pilote. Instancie les FontDriver et initialise la propriété driverString. Remonter public init(Image $image) Disponible depuis Artichow 1.1 Initialise le pilote pour l'Image $image. Remonter public initFromFile(FileImage $fileImage, string $file) Disponible depuis Artichow 1.1 Initialise le pilote à partir d'une FileImage $fileImage. Le chemin d'accès au fichier proprement dit est contenu dans $file. Remonter public setImageSize(int $width, int $height) Change la taille de l'image gérée par le pilote pour la largeur $width et la hauteur $height. Remonter public setPosition(float $x, float $y) Informe le pilote de la position de la sous-image sur l'image. Les positions X et Y sont données via les paramètres $x et $y, qui représentent une fraction de la taille de l'image. Remonter public movePosition(int $x, int $y) Demande au pilote de déplacer la position de la sous-image sur l'image. $x et $y représentent respectivement les déplacements latéral et vertical de la position en pixels. Remonter public setAbsPosition(int $x, int $y) Informe le pilote de la position de la sous-image sur l'image. Les positions X et Y sont données via les paramètres $x et $y, dont l'unité est le pixel. Remonter public setSize(float $w, float $h) Informe le pilote de la taille de la sous-image sur l'image. Les largeur et hauteur de la sous-image sont données via les paramètres $w et $h, qui représentent une fraction de la taille de l'image. Remonter public setAbsSize(int $w, int $h) Informe le pilote de la taille de la sous-image sur l'image. Les largeur et hauteur de la sous-image sont données via les paramètres $w et $h, dont l'unité est le pixel. Remonter public array getSize() Retourne la taille de la sous-image en pixels. Les valeurs sont retournées sous la forme d'un tableau, de la forme array(largeur, hauteur). Remonter public mixed getColor(Color $color) Convertit un objet Color pour qu'il soit exploitable directement par les fonctions de dessins employées par le pilote. Le type de donnée renvoyée dépend du pilote. Remonter public send(Image $image) Construit l'image passée en paramètre et l'envoie sur la sortie standard accompagnée des en-têtes HTTP correspondants. A aucun moment vous ne devriez avoir besoin d'appeler vous-même cette méthode. Pour générez les images, utilisez Graph::draw(). Remonter public get(Image $image) Disponible depuis Artichow 1.1 Construit l'image passée en paramètre et la renvoie sous forme de données binaires. Vous pouvez donc la stocker dans une variable si vous voulez faire des manipulations spécifiques. A aucun moment vous ne devriez avoir besoin d'appeler vous-même cette méthode. Pour générez les images, utilisez Graph::draw(). Remonter public setAntiAliasing(bool $bool) Disponible depuis Artichow 1.0.9 Active ou désactive l'anti-aliasing lors du dessin. L'anti-aliasing permet d'avoir des graphiques plus propres mais demande plus de ressources. L'anti-aliasing n'est pas activé par défaut. Voir aussi : Image::setAntiAliasing() Remonter public copyImage(Image $image, Point $p1, Point $p2) Copie l'image $image vers la sous-image courante. L'image sera copiée sur la sous-image du point $p1 (coin haut-gauche) ou point $p2 (coin bas-droit). Les coordonnées de $p1 et $p2 doivent être relatives à celles de la sous-image. Remonter public copyResizeImage(Image $image, Point $d1, Point $d2, Point $s1, Point $s2, bool $resampled) Copie l'image $image vers l'image courante. L'image $image sera copiée des points $s1 (coin haut-gauche) et $s2 (coin bas-droit) vers les points $d1 (coin haut-gauche) et $d2 (coin bas-droit) de l'image courante. Si $resampled est placé à TRUE, l'image sera rééchantillonée. Remonter public string(Text $text, Point $point, int $width := NULL) Dessine la chaîne de caractères $text à partir du point $point. Les coordonnées de $point doivent être relatives à celles de la sous-image. Le paramètre $width permet de spécifier la largeur maximale en pixels de la boîte de texte. Voir aussi : Driver::getTextHeight() Driver::getTextWidth() Remonter public point(Color $color, Point $point) Dessine un pixel de couleur $color au point $point. Les coordonnées de $point doivent être relatives à celles de la sous-image. Remonter public line(Color $color, Line $line) Dessine la ligne $line de couleur $color. Les coordonnées de la ligne doivent être relatives à celles de la sous-image. Remonter public arc(Color $color, Point $center, int $width, int $height, float $from, float $to) Dessine un arc d'ellipse de couleur $color dont les deux extrémités sont reliées au centre de l'ellipse. L'ellipse a pour centre $center et est de largeur et hauteur respectives $width et $height. L'angle de départ pour l'arc est $from et l'angle d'arrivée $to. Voir aussi : Driver::filledArc() Remonter public filledArc(mixed $background, Point $center, int $width, int $height, float $from, float $to) Dessine un arc d'ellipse dont les deux extrémités sont reliées au centre de l'ellipse et le remplit avec la couleur ou le dégradé $background. L'ellipse a pour centre $center et est de largeur et hauteur respectives $width et $height. L'angle de départ pour l'arc est $from et l'angle d'arrivée $to. Voir aussi : Driver::arc() Remonter public ellipse(Color $color, Point $center, int $width, int $height) Dessine une ellipse de couleur $color, ayant pour centre $center et de largeur et hauteur respectives $width et $height. Les coordonnées de l'ellipse doivent être relatives à celles de la sous-image. Voir aussi : Driver::filledEllipse() Remonter public filledEllipse(mixed $background, Point $center, int $width, int $height) Dessine et remplit une ellipse avec la couleur ou le dégradé $background. Cette ellipse a pour centre $center et est de largeur et hauteur respectives $width et $height. Les coordonnées de l'ellipse doivent être relatives à celles de la sous-image. Voir aussi : Driver::ellipse() Remonter public rectangle(Color $color, Line $line) Dessine un rectangle de couleur $color dont la ligne $line représente la diagonale. Les coordonnées du rectangle doivent être relatives à celles de la sous-image. Voir aussi : Driver::filledRectangle() Remonter public filledRectangle(mixed $background, Line $line) Dessine et remplit un rectangle avec la couleur ou le dégradé $background dont la ligne $line représente la diagonale. Les coordonnées du rectangle doivent être relatives à celles de la sous-image. Voir aussi : Driver::rectangle() Remonter public polygon(Color $color, Polygon $polygon) Dessine le polygone $polygon de couleur $color. Les coordonnées de chaque point du polygone doivent être relatives à celles de la sous-image. Voir aussi : Driver::filledPolygon() Remonter public filledPolygon(mixed $background, Polygon $polygon) Dessine et remplit le polygone $polygon avec la couleur ou le dégradé $background. Les coordonnées de chaque point du polygone doivent être relatives à celles de la sous-image. Voir aussi : Driver::polygon() Remonter public float getTextWidth(Text $text) Disponible depuis Artichow 1.1 Renvoie la largeur prise sur l'image par le Text $text. Voir aussi : Driver::getTextHeight() Remonter public float getTextHeight(Text $text) Disponible depuis Artichow 1.1 Renvoie la hauteur prise sur l'image par le Text $text. Voir aussi : Driver::getTextWidth() Remonter protected bool isCompatibleWithFont(Font $font) Disponible depuis Artichow 1.1 Renvoie TRUE si le pilote actuel est compatible avec la police $font, FALSE sinon. Chaque pilote doit définir les polices avec lesquelles il est compatible. Remonter |