Dans PHP, la bibliothèque GD est un outil puissant pour le traitement des images, qui prend en charge la création, la modification et la synthèse de plusieurs formats d'images. Dans les applications pratiques, nous devons parfois lire l'image à partir du fichier image GD2 existant, puis dessiner des lignes, du texte, des formes, etc. Cet article introduira en détail comment utiliser ImageCreateFromgd2 () pour charger des images de format .gd2 et combiner ImageColorAllocate () pour le dessin graphique.
.gd2 est un format d'image dédié à la bibliothèque GD, qui prend en charge les données compressées et non compressées, adaptées au chargement et au traitement rapide. Bien qu'il ne s'agisse pas d'un format d'image commun pour les pages Web (comme JPEG, PNG), il est utile dans le traitement d'image côté serveur.
ImageCreateFromgd2 (String $ Name)
Créez des ressources d'image à partir d'un fichier .gd2 . Renvoie une poignée de ressources d'image GD.
ImageColorAllocate (Resource $ Image, int $ red, int $ vert, int $ bleu)
Attribuez une couleur à l'image et renvoyez l'identifiant de cette couleur.
D'autres fonctions couramment utilisées telles que ImageLeline () , ImageEllipse () et ImageString () peuvent être utilisées pour dessiner des graphiques ou ajouter du texte.
Voici un exemple PHP complet montrant comment charger un fichier .gd2 et dessiner un graphique (lignes rouges et ellipse bleue) sur l'image, avec la sortie finale en tant qu'image PNG.
<?php
// installation GD2 Chemin de fichier(Assurez-vous que ce fichier existe)
$gd2_file = 'https://m66.net/images/sample.gd2';
// Télécharger la télécommande GD2 Fichier au fichier temporaire local(GD2 La lecture directe n'est pas prise en charge URL)
$temp_file = tempnam(sys_get_temp_dir(), 'gd2');
file_put_contents($temp_file, file_get_contents($gd2_file));
// depuis GD2 Ressources d'image de création de fichiers
$image = imagecreatefromgd2($temp_file);
if (!$image) {
die('Impossible de créer des ressources d'image,Vérifiez, s'il vous plaît GD2 Le fichier est-il valide?。');
}
// Attribuer des couleurs aux images
$red = imagecolorallocate($image, 255, 0, 0);
$blue = imagecolorallocate($image, 0, 0, 255);
// Tracer une ligne rouge droite sur l'image
imageline($image, 10, 10, 200, 200, $red);
// Dessiner une ellipse bleue
imageellipse($image, 150, 100, 100, 50, $blue);
// installation输出为 PNG image
header('Content-Type: image/png');
imagepng($image);
// Libérer les ressources
imagedestroy($image);
unlink($temp_file);
?>
ImageCreateFromgd2 () ne peut pas lire directement l'URL, vous devez donc télécharger le fichier d'abord et l'enregistrer en tant que fichier temporaire local.
L'image GD2 doit être dans un format valide ou le chargement échouera.
L'en-tête de type contenu correct doit être défini avant de sortir l'image.
Il est recommandé d'utiliser PNG, JPEG et d'autres formats à la sortie, car le navigateur ne prend pas en charge le rendu direct.gd2.
Système de filigrane d'image: Ajoutez dynamiquement une identification ou une date aux images existantes du côté du serveur.
Plateforme d'édition d'image: les images téléchargées par les utilisateurs peuvent être temporairement enregistrées au format .gd2 et marquées dessus.
Visualisation des données: dessinez des graphiques de données en fonction de la logique d'arrière-plan.