Maison  >  Article  >  développement back-end  >  Exemple de traitement d'image PHP, mise à l'échelle d'image

Exemple de traitement d'image PHP, mise à l'échelle d'image

PHPz
PHPzoriginal
2023-06-20 22:43:241895parcourir

Avec la popularité des appareils mobiles et des sites Web, le traitement d'images est devenu un élément essentiel du développement de sites Web. Lors de l'utilisation d'images sur un site Web, il est souvent nécessaire de redimensionner l'image. La mise à l'échelle de l'image est donc l'une des fonctions les plus élémentaires du traitement d'image. En PHP, nous pouvons utiliser la bibliothèque GD pour implémenter la mise à l'échelle des images. Ci-dessous, je vais vous présenter comment effectuer la mise à l'échelle des images en PHP à travers un exemple spécifique.

Tout d'abord, nous devons utiliser la bibliothèque GD de PHP pour ouvrir une image. Cela peut être réalisé en utilisant la fonction intégrée de PHP imagecreatefromjpeg() ou imagecreatefrompng(). Dans cet exemple, nous utiliserons une image au format jpeg comme exemple pour démontrer. Le code suivant ouvrira une image nommée "image.jpg" :

$image = imagecreatefromjpeg('image.jpg');

Ensuite, nous pouvons utiliser la fonction imagecreatetruecolor() pour créer une image vierge qui sera dimensionnée en fonction de la mise à l'échelle que nous souhaitons effectuer. Dans cet exemple, je vais réduire l'image originale de moitié, donc la nouvelle image doit avoir la moitié de la taille de l'image originale :

$newWidth = imagesx($image) / 2;
$newHeight = imagesy($image) / 2;
$newImage = imagecreatetruecolor($newWidth, $newHeight);

Ensuite, nous devons utiliser la fonction imagecopyresampled() pour réduire l'image originale dans la nouvelle image. . Cette fonction copie une image dans une autre et échantillonne la nouvelle image à la taille et aux proportions souhaitées. Le code suivant copiera l'image originale dans la nouvelle image et la réduira de moitié :

imagecopyresampled($newImage, $image, 0, 0, 0, 0, $newWidth, $newHeight, imagesx($image), imagesy($image));

Dans le code ci-dessus, nous copierons l'image originale dans la nouvelle image et spécifierons la taille, la position et la taille de la nouvelle image et le taille et somme de l'image d'origine. Emplacement. Enfin, nous devons enregistrer la nouvelle image dans un fichier à l'aide de la fonction imagejpeg() :

imagejpeg($newImage, 'newImage.jpg');

Maintenant, nous avons implémenté avec succès une mise à l'échelle d'image via PHP. Voici le code complet :

// 打开原图
$image = imagecreatefromjpeg('image.jpg');

// 根据缩放比例计算新图大小
$newWidth = imagesx($image) / 2;
$newHeight = imagesy($image) / 2;

// 创建新图
$newImage = imagecreatetruecolor($newWidth, $newHeight);

// 缩小原图到新图中
imagecopyresampled($newImage, $image, 0, 0, 0, 0, $newWidth, $newHeight, imagesx($image), imagesy($image));

// 保存新图到文件
imagejpeg($newImage, 'newImage.jpg');

Résumé :

Dans cet article, nous avons présenté comment mettre à l'échelle des images à l'aide de la bibliothèque GD en PHP. Pour les sites Web qui doivent souvent gérer des images, la mise à l'échelle des images est une fonction de base, qui peut rendre l'effet d'affichage du site Web plus cohérent sur différents appareils. Par conséquent, apprendre à traiter des images est l’une des compétences nécessaires pour tout développeur PHP.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn