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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Изминение размера изображения

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
Maskca
Отправлено: 17 Августа, 2009 - 17:43:17
Post Id


Частый гость


Покинул форум
Сообщений всего: 167
Дата рег-ции: Май 2009  


Помог: 0 раз(а)




Скажите вот есть код:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. header("Content-type: image/jpeg");
  3. $name = "site.jpg";
  4. $w = 700;
  5. $quality = 100;
  6. $image = imagecreatefromjpeg ($name);
  7. $width = imagesx ($image);
  8. $height = imagesy ($image);
  9. if ($width != $w)
  10. {
  11. $ratio = $width/$w;
  12. $new_width = round ($width/$ratio);
  13. $new_height = round ($height/$ratio);
  14. $new_image = imagecreatetruecolor ($new_width, $new_height);
  15. imagecopyresampled ($new_image, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
  16. imagejpeg ($new_image, '', $quality);
  17. imagedestroy ($image);
  18. imagedestroy ($new_image);
  19. }
  20. ?>


как сделать чтобы он работал еще и с gif и png изображениями?

(Отредактировано автором: 17 Августа, 2009 - 17:52:14)



-----
http://view-tv[dot]ru - Бесплатное телевидение, кино, радио
 
 Top
Champion Супермодератор
Отправлено: 17 Августа, 2009 - 18:03:51
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




Есть imagecreatefromgif() и imagecreatefrompng.
 
 Top
Nestor
Отправлено: 17 Августа, 2009 - 18:07:38
Post Id



Частый гость


Покинул форум
Сообщений всего: 220
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1. $ext = strtolower(substr($name,-4));
  2. if ($ext == ".gif") {
  3.         $image  = imagecreatefromgif($name);
  4. } elseif ($ext == ".jpg" or $ext == "jpeg") {
  5.         $image  = imagecreatefromjpeg($name);
  6. } elseif ($ext == ".png"){
  7.         $image  = imagecreatefrompng($name);
  8. }


-----
Aurus CMS
 
 Top
Maskca
Отправлено: 17 Августа, 2009 - 21:06:29
Post Id


Частый гость


Покинул форум
Сообщений всего: 167
Дата рег-ции: Май 2009  


Помог: 0 раз(а)




Скажите, а как сначала проверить существует ли файл по ссылке $name?
Я пробовал так:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. header("Content-type: image/jpeg");
  4.  
  5. $name = "http://absurdu.net/wp-content/uploads/2009/05/_mg_2096.jpg";
  6.  
  7. if (@fopen(''.$name, "r")) {
  8.    
  9.    $w = 355;
  10. $quality = 90;
  11. $ext = strtolower(substr($name,-4));
  12. if ($ext == ".gif") {
  13.         $image  = imagecreatefromgif($name);
  14. } elseif ($ext == ".jpg" or $ext == "jpeg") {
  15.         $image  = imagecreatefromjpeg($name);
  16. } elseif ($ext == ".png"){
  17.         $image  = imagecreatefrompng($name);
  18. }
  19. $width = imagesx ($image);
  20. $height = imagesy ($image);
  21. if ($width != $w)
  22. {
  23. $ratio = $width/$w;
  24. $new_width = round ($width/$ratio);
  25. $new_height = round ($height/$ratio);
  26. $new_image = imagecreatetruecolor ($new_width, $new_height);
  27. imagecopyresampled ($new_image, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
  28. imagejpeg ($new_image, 'proba/1.jpg', $quality);
  29. imagedestroy ($image);
  30. imagedestroy ($new_image);
  31. }
  32.  
  33. }
  34. else {
  35.     echo "Файл не найден";
  36. }
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48. ?>


Но оно почемуто не показывает, подскажите почему?
(Добавление)
Извините ошибку нашол


-----
http://view-tv[dot]ru - Бесплатное телевидение, кино, радио
 
 Top
Viper
Отправлено: 18 Августа, 2009 - 08:26:56
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




Nestor а если к примеру png изображение будет с расширением gif, то скрипт не отработает. имхо лучше через mime-type.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Nestor
Отправлено: 18 Августа, 2009 - 16:28:34
Post Id



Частый гость


Покинул форум
Сообщений всего: 220
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




Viper, мало кто так делает

Maskca, используй fsockopen


-----
Aurus CMS
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB