Maison > Article > développement back-end > (Avancé) Technologie de traitement d'image PHP-Bibliothèque GD
1. Activer l'extension GD
extension=php_gd2.dll
Redémarrage d'Apache
2. Exemple :
Scénario :
Créez une image verte de 500 × 300
①Créez un canevas
Canvas, une sorte de données de ressources. Ressources d’images pouvant être manipulées.
Créer un nouveau canevas (nouveau)
ImageCreate(largeur, hauteur), créer un canevas basé sur la palette.
imageCreateTrueColor(width, height); Créez une vraie toile de couleurs.
Créer un canevas basé sur une image (ouvrir)
imageCreateFromJPEG(adresse de l'image);
imageCreateFromPNG(adresse de l'image);
imageCreateFromGIF(adresse de l'image);
②Opération toile
Attribuer une couleur : si vous devez utiliser une couleur sur la toile, vous devez d'abord attribuer la couleur à la toile.
Utiliser la fonction :
Identification des couleurs = imageColorAllocate(canvas, R, V, B)
Représentation des couleurs :
RVB
③Remplissez le canevas : Remplissez (remplacez) les points de remplissage par des points consécutifs de la même couleur
Utilisez la fonction :
imageFill(canvas, position de remplissage x, position de remplissage Y, logo couleur) La position complète
est gérée à l'aide des coordonnées :
Origine : 0, 0, le coin supérieur gauche de la toile.
À droite, l'axe des x augmente et vers le bas, l'axe Y augmente.
Coordonnées du coin inférieur droit : largeur-1, hauteur-1
④Canevas de sortie
Sortie des informations de motif traitées dans le canevas.
Typique :
1 Sortie vers un fichier image.
2 est sorti directement.
Utiliser la fonction :
imagePNG(canvas[, adresse du fichier]):
imageJPEG();
imageGIF();
S'il n'y a pas de deuxième paramètre, cela signifie une sortie directe.
Remarque : si vous les affichez directement dans le navigateur, vous devez informer le navigateur que le type de données de réponse doit être une image au format PNG :
Utilisez la commande Content-type ; 🎜>
a Le canevas peut être sorti plusieurs fois dans différents formats ⑤ Détruire les ressources du canevas imageDestroy()<?php //例如:制作500×300的绿色图片 $width=500; $height=300; //创建真彩色的画布 $img=imageCreateTrueColor($width,$height); // var_dump($img); //测试结果: resource(2) of type (gd) $img是一个资源类型 //使用函数imageColorAllocate(画布,R,G,B)分配颜色,颜色的表示方式:R G B $green=imageColorAllocate($img, 0x0, 0xff, 0x0); //填充画布,原点:0,0,画布的左上角,imageFill(画布, 填充位置x, 填充位置Y,颜色标识)完成 imageFill($img,0,0,$green); //输出画布,直接输出到当前路径下为图片文件,格式有PNG、JPEG、GIF //imagePNG($img,'./green.png'); //如果没有第二个参数,表示直接输出 //如果直接输出到浏览器,需要告知浏览器,响应数据的类型应该是PNG格式的图片:使用指令Content-type header('Content-Type:image/png;'); imagePNG($img); //注:一个画布可以输出多次,输出为各种格式 //销毁画布资源 imageDestroy($img);
<?php //例如:制作500×300的绿色图片 $width=500; $height=300; //创建真彩色的画布 $img=imageCreateTrueColor($width,$height); // var_dump($img); //测试结果: resource(2) of type (gd) $img是一个资源类型 //使用函数imageColorAllocate(画布,R,G,B)分配颜色,颜色的表示方式:R G B $green=imageColorAllocate($img, 0x0, 0xff, 0x0); //填充画布,原点:0,0,画布的左上角,imageFill(画布, 填充位置x, 填充位置Y,颜色标识)完成 imageFill($img,0,0,$green); //输出画布,直接输出到当前路径下为图片文件,格式有PNG、JPEG、GIF //imagePNG($img,'./green.png'); //如果没有第二个参数,表示直接输出 //如果直接输出到浏览器,需要告知浏览器,响应数据的类型应该是PNG格式的图片:使用指令Content-type header('Content-Type:image/png;'); imagePNG($img); //注:一个画布可以输出多次,输出为各种格式 //销毁画布资源 imageDestroy($img);Ce qui précède est le contenu de la technologie de traitement d'image PHP (avancée)-bibliothèque GD. Pour plus de contenu connexe, veuillez suivre le site Web PHP chinois (www.php.cn) !