Maison  >  Article  >  développement back-end  >  PHP ajuste la largeur et la hauteur de l'image, exemple de partage

PHP ajuste la largeur et la hauteur de l'image, exemple de partage

小云云
小云云original
2018-03-09 16:10:382563parcourir

Cet article partage principalement avec vous des exemples d'ajustement de la largeur et de la hauteur des images en PHP. J'espère que ces codes pourront vous aider à apprendre à ajuster la largeur et la hauteur des images en PHP.

/** 
 * 改变图片的宽高 
 *  
 * @author flynetcn (2009-12-16) 
 *  
 * @param string $img_src 原图片的存放地址或url  
 * @param string $new_img_path  新图片的存放地址  
 * @param int $new_width  新图片的宽度  
 * @param int $new_height 新图片的高度 
 * @return bool  成功true, 失败false 
 */  
function resize_image($img_src, $new_img_path, $new_width, $new_height)  
{  
    $img_info = @getimagesize($img_src);  
    if (!$img_info || $new_width < 1 || $new_height < 1 || empty($new_img_path)) {  
        return false;  
    }  
    if (strpos($img_info[&#39;mime&#39;], &#39;jpeg&#39;) !== false) {  
        $pic_obj = imagecreatefromjpeg($img_src);  
    } else if (strpos($img_info[&#39;mime&#39;], &#39;gif&#39;) !== false) {  
        $pic_obj = imagecreatefromgif($img_src);  
    } else if (strpos($img_info[&#39;mime&#39;], &#39;png&#39;) !== false) {  
        $pic_obj = imagecreatefrompng($img_src);  
    } else {  
        return false;  
    }  
    $pic_width = imagesx($pic_obj);  
    $pic_height = imagesy($pic_obj);  
    if (function_exists("imagecopyresampled")) {  
        $new_img = imagecreatetruecolor($new_width,$new_height);  
        imagecopyresampled($new_img, $pic_obj, 0, 0, 0, 0, $new_width, $new_height, $pic_width, $pic_height);  
    } else {  
        $new_img = imagecreate($new_width, $new_height);  
        imagecopyresized($new_img, $pic_obj, 0, 0, 0, 0, $new_width, $new_height, $pic_width, $pic_height);  
    }  
    if (preg_match(&#39;~.([^.]+)$~&#39;, $new_img_path, $match)) {  
        $new_type = strtolower($match[1]);  
        switch ($new_type) {  
            case &#39;jpg&#39;:  
                imagejpeg($new_img, $new_img_path);  
                break;  
            case &#39;gif&#39;:  
                imagegif($new_img, $new_img_path);  
                break;  
            case &#39;png&#39;:  
                imagepng($new_img, $new_img_path);  
                break;  
            default:  
                imagejpeg($new_img, $new_img_path);  
        }  
    } else {  
        imagejpeg($new_img, $new_img_path);  
    }  
    imagedestroy($pic_obj);  
    imagedestroy($new_img);  
    return true;  
}  
  
//test  
$ret = resize_image(&#39;http://static.php.net/www.php.net/images/php_snow_2008.gif&#39;, &#39;test.png&#39;, &#39;300&#39;, &#39;400&#39;);  
var_dump($ret);  die;

Recommandations associées :

Introduction à la façon d'ajuster la taille de l'image en php côté serveur

Comment utiliser CSS pour ajuster la taille de l'image Exemple de partage de code de taille

Explication détaillée de la fonction de redimensionnement d'image en PHP pour ajuster la taille de l'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