Проблема в том, что он делает png пустым... то бышь открыть его нельзя, но оно создается.. допускаю, что для работы с png нужно прописать что-то ещё... никак не пойму что.. кто-нибудь знает?
function imageresize($outfile,$infile,$neww,$newh,$quality) {
$im=imagecreatefrompng($infile);
$k1=$neww/imagesx($im);
$k2=$newh/imagesy($im);
$k=$k1>$k2?$k2:$k1;
$w=intval(imagesx($im)*$k);
$h=intval(imagesy($im)*$k);
$im1=imagecreatetruecolor($w,$h);
imagecolortransparent($im1, imagecolorallocatealpha($im1, 0, 0, 0, 127));
imagealphablending($im1, false);
imagesavealpha($im1, true);
imagecopyresampled($im1,$im,0,0,0,0,$w,$h,imagesx($im),imagesy($im));
imagepng($im1,$outfile,$quality);
imagedestroy($im);
imagedestroy($im1);
}
Спустя 2 минуты, 59 секунд (8.08.2012 - 23:20) Игорь_Vasinsky написал(а):
совет
Цитата |
$w=intval(imagesx($im)*$k); |
$w=(int)imagesx($im)*$k;
ибо быстрее.
а по теме - щас сказать нечего,глаза закрываются.
Спустя 11 часов, 58 минут, 42 секунды (9.08.2012 - 11:19) Ramzes_Ra написал(а):
Попробовал переделать, теперь вообще не сохраняет...
вот бредятина то))
вот бредятина то))
function imageresize2($outfile,$infile) {
$output = imagecreatefrompng($infile); //$infile – путь к png
$w_output = 20; //ширина после уменьшения
$h_input = imagesy($output); // y – исходного
$w_input = imagesx($output); // x – исходного
if ($w_input > $w_output){
$rait = $w_input / $w_output;}
$x_output = ceil($w_input / $rait);
$y_output = ceil($h_input / $rait);
$final = imagecreatetruecolor($x_output, $y_output);
imagealphablending($final, false);
imagesavealpha($final, true);
imagecopyresampled($final, $output, 0, 0, 0, 0, $x_output, $y_output, $w_input, $h_input);
imagepng($final, $output);
}
Спустя 44 минуты, 9 секунд (9.08.2012 - 12:03) Ramzes_Ra написал(а):
сделал.. по ходу кроме меня тут никто не умеет работать с картинками
надо было добавить imagefill и проработать альфа канал..
тему можно закрывать

надо было добавить imagefill и проработать альфа канал..
тему можно закрывать
Спустя 35 минут, 27 секунд (9.08.2012 - 12:39) Игорь_Vasinsky написал(а):
все ждут твоих действий и ошибок чтобы подправить. такой менталитет у форума.