English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Spiegazione dettagliata e codice di esempio per la riduzione delle immagini proporzionalmente in PHP

直接上代码,imgzip($src,$newwid,$newhei)这个函数带进去的分别是原图片、缩放要求的宽度、缩放的长度。代码都备注了,不懂可以留言哈哈

<?php 
//压缩图片 缩略图
$src= "xiezheng.jpg";
$newwid=640;
$newhei= 480;
function imgzip($src,$newwid,$newhei){
 $imgInfo = getimagesize($src);
 $imgType = image_type_to_extension($imgInfo[2], false);
 $fun = "imagecreatefrom{$imgType}";
//声明图片 打开图片 在内存中
 $image = $fun($src);
//方便配置长度宽度、高度,设置框为变量wid,高度为hei
 $wid=$imgInfo[0];
 $hei=$imgInfo[1];
//判断长度和宽度,以方便等比缩放,规格按照500, 320
 if($wid>$hei){
  $wid=$newwid;
  $hei=$newwid/($wid/$hei);
 }
  $wid = $newhei * ($wid / $hei);
  $hei = $newhei;
 }
//Crea un'immagine in memoria
 $images2 = imagecreatetruecolor($newwid, $newhei); //Crea un'immagine 500x320
//Copia l'immagine originale nel nuovo immagine
//imagecopyresampled($dst_image, $src_image, $dst_x, $dst_y, $src_x, $src_y, $dst_w, $dst_h, $src_w, $src_h)
 imagecopyresampled($images2, $image, 0, 0, 0, 0, $wid,$hei, $imgInfo[0],$imgInfo[0]);
//Distruggi l'immagine originale
 imagedestroy($image);
//Esporta direttamente il file immagine
 header("Content-type: ".$imgInfo[‘mime‘]);
 imagejpeg($images2);
//Salva l'immagine in un nuovo file
 imagejpeg($images2, ‘new.jpg‘, 100); //Codice 10 per l'output della qualità dell'immagine 0-100 100 è la qualità più alta
//Distruggi
 imagedestroy($images2);
}
imgzip($src,$newwid,$newhei);
?>

 Effetto

Prima della compressione

Compresso

La seguente è la raccolta di materiali relativi alla riduzione della scala delle immagini in PHP, continueremo a integrare ulteriori materiali pertinenti, grazie per il supporto della nostra pagina!

Ti potrebbe interessare