Image resizer v1
Publié le 14 juillet 2015 | Par adminblog | Commenter
Fonction utile pour redimensionner des images gif, jpg et png. Utilisable avec des formulaires de transfert de fichiers.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 |
<?php function redimPhoto($img,$x=125,$y=75){ # L'emplacement de l'image à redimensionner. L'image peut être de type jpeg, gif ou png $big = $img ; $file = $img ; $size = getimagesize($file); /*homothetie peu être dévalidée*/ $w=$size[0]; $h=$size[1]; if($h>$w){ $zoom=$x/$h; $y=$y; $x=$w*$zoom; }else{ $zoom=$x/$w; $x=$x; $y=$h*$zoom; } /*fin homothetie*/ if (isset($size)>0) { //echo 'Image en cours de redimensionnement...'; if ($size['mime']=='image/jpeg' ) { //echo 'jpg'; $img_big = imagecreatefromjpeg($file); # On ouvre l'image d'origine $img_new = imagecreate($x, $y); # création de la miniature $img_mini = imagecreatetruecolor($x, $y) or $img_mini = imagecreate($x, $y); // copie de l'image, avec le redimensionnement. imagecopyresized($img_mini,$img_big,0,0,0,0,$x,$y,$size[0],$size[1]); imagejpeg($img_mini,$file ); } elseif ($size['mime']=='image/png' ) { //echo 'png'; $img_big = imagecreatefrompng($file); # On ouvre l'image d'origine $img_new = imagecreate($x, $y); # création de la miniature $img_mini = imagecreatetruecolor($x, $y) or $img_mini = imagecreate($x, $y); // copie de l'image, avec le redimensionnement. imagecopyresized($img_mini,$img_big,0,0,0,0,$x,$y,$size[0],$size[1]); imagepng($img_mini,$file ); } elseif ($size['mime']=='image/gif' ) { //echo 'gif'; $img_big = imagecreatefromgif($file); # On ouvre l'image d'origine $img_new = imagecreate($x, $y); # création de la miniature $img_mini = imagecreatetruecolor($x, $y) or $img_mini = imagecreate($x, $y); // copie de l'image, avec le redimensionnement. imagecopyresized($img_mini,$img_big,0,0,0,0,$x,$y,$size[0],$size[1]); imagegif($img_mini,$file ); } return $file; //echo 'Image redimensionnée !'; }else{ return false; } //fin function image thumb } /* avec un formulaire <form action="fichier_ou_est_la_fonction_redim.php" method="POST" enctype="multipart/form-data" /> <input type="file" name="Photo" class="form">'; <input type="submit" value="Modifier" class="form" />'; </form> dans fichier_ou_est_la_fonction_redim.php $image=$_FILES['Photo']['tmp_name'] ... */ /*autre utilisation*/ $image='une_image.jpg'; //sauver originale copy($image,$normal='n_'.$image); //sauver une miniature $redim=redimPhoto($image); copy($redim,$petit='p_'.$redim); //supression originale //unlink($image); ?> |
Commentaires récents