Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: обрезать картинку
Форумы портала PHP.SU » » Графика в PHP » обрезать картинку

Страниц (1): [1]
 

1. xhugo - 20 Августа, 2011 - 23:08:49 - перейти к сообщению
как можно обрезать картинку до например 100px? если она например 400x200
PHP:
скопировать код в буфер обмена
  1.  
  2. function resz($img,$w=100,$h=100){
  3. $im1 = imageCreateFromJPEG($img);
  4. $width = imageSX($im1);
  5. $height = imageSY($im1);
  6. $new_height = $height*0.5;
  7. $im2 = imagecreatetruecolor($w,$h);
  8. imageCopy($im2,$im1,0,0,0,0,$width,$new_height);
  9. imageJPEG($im2,$img,100);
  10. }
  11.  

делал так,но получается не 100 на 100, а будто 100 на 30 и + остальное черный фон.
есть варианты?
2. illy - 22 Августа, 2011 - 10:11:03 - перейти к сообщению

вот здесь ты создаешь чёрный холст с тем же размером 400*400
PHP:
скопировать код в буфер обмена
  1. imageCopy($im2,$im1,0,0,0,0,$width,$new_height);

и вставляешь в него фото, по высоте почему-то меньше.
конечно будет чёрное

Надо так:

PHP:
скопировать код в буфер обмена
  1. $im2=imagecreatetruecolor(100,80);
  2. imageCopyresample($im2,$im1,0,0,0,0,$width,$height);

 

Powered by ExBB FM 1.0 RC1