Php 函数为;“方形调整大小”;图像不适用于PNG
嗨,我已经用work编写了这个函数,它实际上对jpg很好,但对png不好 这是我的密码:Php 函数为;“方形调整大小”;图像不适用于PNG,php,gd,Php,Gd,嗨,我已经用work编写了这个函数,它实际上对jpg很好,但对png不好 这是我的密码: function vignette_carre($src, $dest, $largeur, $src_x, $src_y){ $ext = explode(".", $src); $ext = strtolower(end($ext)); if ($ext == 'jpg' or $ext == 'jpeg') {$im_src=imagecreatefromjpeg($
function vignette_carre($src, $dest, $largeur, $src_x, $src_y){
$ext = explode(".", $src);
$ext = strtolower(end($ext));
if ($ext == 'jpg' or $ext == 'jpeg') {$im_src=imagecreatefromjpeg($src);}
elseif ($ext == 'gif') { $im_src=imagecreatefromgif($src);}
elseif ($ext == 'png') {$im_src=imagecreatefrompng($src);}
if ($im_src=="") return;
if($src_x >= $src_y){
$dim=$src_y; $verticale="1";
}
elseif($src_x <= $src_y){
$dim=$src_x; $horizontale="1";
}
else{
$dim=$src_x;
}
if($verticale == "1"){
$point_x_ref=($src_x/2)-($dim/2);
$point_y_ref="0";
}
if($horizontale == "1"){
$point_x_ref="0";
$point_y_ref=($src_y/2)-($dim/2);
}
$im_dest=imagecreatetruecolor($largeur, $largeur);
$im_dest= imagecolorallocate($im_dest, 255, 255, 255);
imagecopyresampled($im_dest, $im_src, 0, 0, $point_x_ref, $point_y_ref, $largeur, $largeur, $dim, $dim);
imagedestroy($im_src);
if ($ext == 'jpg' or $ext == 'jpeg') {
imagejpeg($im_dest, $dest);
imagedestroy($im_dest);
}
elseif ($ext == 'gif') {
imagegif($im_dest, $dest);
imagedestroy($im_dest);
}
elseif ($ext == 'png') {
imagepng($im_dest, $dest);
imagedestroy($im_dest);
}
}
函数vignette_carre($src,$dest,$largeur,$src_x,$src_y){
$ext=分解(“.”,$src);
$ext=strtolower(end($ext));
如果($ext=='jpg'或$ext=='jpeg'){$im_src=imagecreatefromjpeg($src);}
elseif($ext=='gif'){$im_src=imagecreatefromfromgif($src);}
elseif($ext=='png'){$im_src=imagecreatefrompng($src);}
如果($im_src==“”)返回;
如果($src_x>=$src_y){
$dim=$src_y;$verticale=“1”;
}
elseif($src_x您将新创建的$im_dest作为imagecolorallocate中的参数
再次将INT返回到$im\u dest中?这是错误的