downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

imageloadfont> <imagelayereffect
[edit] Last updated: Fri, 24 May 2013

view this page in

imageline

(PHP 4, PHP 5)

imagelineDessine une ligne

Description

bool imageline ( resource $image , int $x1 , int $y1 , int $x2 , int $y2 , int $color )

Dessine une ligne entre deux points fournis.

Liste de paramètres

image

Une ressource d'image, retournée par une des fonctions de création d'images, comme imagecreatetruecolor().

x1

X : coordonnée du premier point.

y1

Y : coordonnée du premier point.

x2

X : coordonnée du second point.

y2

Y : coordonnée du second point.

color

La couleur de remplissage. Un identifiant de couleur créé par la fonction imagecolorallocate().

Valeurs de retour

Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.

Exemples

Exemple #1 Trace une ligne fine

<?php

function imagelinethick($image$x1$y1$x2$y2$color$thick 1)
{
    
/* de cette manière, ca ne marche bien que pour les lignes orthogonales
    imagesetthickness($image, $thick);
    return imageline($image, $x1, $y1, $x2, $y2, $color);
    */
    
if ($thick == 1) {
        return 
imageline($image$x1$y1$x2$y2$color);
    }
    
$t $thick 0.5;
    if (
$x1 == $x2 || $y1 == $y2) {
        return 
imagefilledrectangle($imageround(min($x1$x2) - $t), round(min($y1$y2) - $t), round(max($x1$x2) + $t), round(max($y1$y2) + $t), $color);
    }
    
$k = ($y2 $y1) / ($x2 $x1); //y = kx + q
    
$a $t sqrt(pow($k2));
    
$points = array(
        
round($x1 - (1+$k)*$a), round($y1 + (1-$k)*$a),
        
round($x1 - (1-$k)*$a), round($y1 - (1+$k)*$a),
        
round($x2 + (1+$k)*$a), round($y2 - (1-$k)*$a),
        
round($x2 + (1-$k)*$a), round($y2 + (1+$k)*$a),
    );
    
imagefilledpolygon($image$points4$color);
    return 
imagepolygon($image$points4$color);
}

?>

Voir aussi



imageloadfont> <imagelayereffect
[edit] Last updated: Fri, 24 May 2013
 
add a note add a note User Contributed Notes imageline - [33 notes]