Maison  >  Article  >  développement back-end  >  Comment compresser des images en PHP ?

Comment compresser des images en PHP ?

零下一度
零下一度original
2017-07-20 17:25:281262parcourir

PHP peut contrôler la clarté de la vignette et le volume généré après la vignette. Voyons comment utiliser PHP pour optimiser nos images compressées.

Le développement d'applications PHP implique souvent la génération de vignettes. Le processus de génération de vignettes en utilisant PHP lui-même n'est pas difficile, mais saviez-vous que PHP est ajusté pour optimiser la qualité des vignettes. génère ?
12header('Content-type: image/PNG');
3$image=@imagecreatefrompng('http://www.phpernote.com/images/logo. png');
4imagepng($image,'logo.png',0); //Faites attention au chiffre 0 à la fin, qui est la plage de paramètres : 0-9*/
. 5imagedestroy($image) ;

Le troisième paramètre dépasse la fonction imagepng La signification de ce paramètre est le niveau de qualité de l'image générée. Ici, elle peut être divisée en 10 niveaux (0-9), l'image de niveau zéro non compressée ne sera pas déformée, l'image la plus claire, mais l'image est aussi la plus grande, avec de plus en plus de niveaux de compression numérique, l'image deviendra de moins en moins clair, mais lorsque le volume compressé de l'image peut être réduit à 50 % de l'original, le taux de compression devient de plus en plus grand. Regardons un exemple spécifique, maintenant un volume brut de 125 Ko, avec les résultats de tests suivants à travers différents niveaux de compression :
imagepng($img,null,0); --> Size = 225K
imagepng($img,null,1); --> Size = 85.9K
imagepng($img,null,2); --> Size = 83.7K
imagepng($img,null,3); --> Size = 80.9K
imagepng($img,null,4); --> Size = 74.6K
imagepng($img,null,5); --> Size = 73.8K
imagepng($img,null,6); --> Size = 73K
imagepng($img,null,7); --> Size = 72.4K
imagepng($img,null,8); --> Size = 71K
imagepng($img,null,9); --> Size = 70.6
Il est à noter que dans l'entrée PHP, lorsque le niveau de compression est supérieur à 0, le volume est plus grand que l'original car l'image originale L'image est en fait le résultat d'une légère compression, et le niveau de compression 0 n'est pas du tout un simple bit de compression, sa taille sera donc plus grande que l'image originale. Sur la base de la conclusion ci-dessus et des résultats réels des tests, l'auteur conclut que pour optimiser les images, il est généralement approprié d'utiliser le niveau 2. L'image n'est pas déformée, mais le volume est réduit de 30 % à des fins d'optimisation. Si vous compressez aux niveaux 6, 7, 8 et 9, l'image sera déformée, mais la réduction de volume ne sera pas évidente. Ces niveaux ne doivent donc pas être utilisés pour optimiser la compression d’image.

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