|
2010-09-05
|
Автор: Дмитрий Львов
Обновлено: 2010-08-31 11:40:12
Просмотров: 342
ID: 246
Тип материала: Урок
Раздел: PHP
Данный скрипт необходимо разместить в отдельном php-файле. Назовем его, к примеру, img_pr.php и положим в корневую папку. Результатом функции будет превьюшноее изображение, причем размеры новой картинки можно задать. Далее идет код функции. Коментариев не много так, как они особо не требуются. Первый параметр - путь к изображению, остальные два - его новые ширина/высота. Поддерживаются форматы JPEG, PNG, GIF.
<?
//Ф-ия возвращает уменьшенную копию изображения.
//И вызывается в фомате
//thumb.php?id=путь_к_рисунку, так же можно задать
//размеры, или только высоту, тогда
//картинка уменьшится сохранив пропорции. Скрипт
//понимает такие форматы изображения как gif,jpeg,png
//а возвращает в формате jpeg.Из html вызывать ф-ию
//нужно так <img src=thumb.php?id=путь_к_рисунку>
// список параметров thumb(путь_к_рисунку, ширина,высота)
function thumb($path,$x,$y=0)
{
$t=getimagesize ($path) or die('unknown type of image');
$with=$t[0];
$height=$t[1];
switch ($t[2])
{
case 1:
$type='gif';
$img=imagecreatefromgif($path);
break;
case 2:
$type='jpeg';
$img=imagecreatefromjpeg($path);
break;
case 3:
$type='png';
$img=imagecreatefrompng($path);
break;
}
if($y==0)
{$y=$x*($height/$with);}
header("content-type: image/".$type);
$thumb=imagecreate($x,$y);
imagecopyresized($thumb,$img,0,0,0,0,$x,$y,$with,$height);
$thumb=imagejpeg($thumb);
return $thumb;
}
if($id)
{
echo thumb($id,200);
}
?>
Быстро просмотреть результат работы функции можно, набрав прямо в браузере примерно такое: http://localhost/thumb.php?id=img.jpg. Надеюсь все лаконично и понятно и у Вас не возникнет никаких сложностей с интеграцией этой полезной функции. На этом говорю всем спасибо и низко кланяюсь за проявленный интерес к этому уроку.
![]() |
Татьяна (2010-08-29)
Скажите, пожалуйста, почему у меня при вызове картинки размеры получаются 0х0?
вместо картинки выводится пустой квадратик. Не подскажете, в чем может быть ошибка?
|
![]() |
Павел (2010-08-31)
Код немного подправлен, убраны некоторые неточности. Теперь все должно работать
|
Обновление и перенаправление страницы (Урок)
Подключение базы данных MySQL (Урок)
Отправка e-mail средствами PHP (Урок)
Как работает постраничная навигация (Урок)
Операторы выбора if...else (Урок)
Работа с файлами. Чтение и запись (Урок)
Использование AJAX в шаблонах Joomla (Урок)
Скажи спаму STOP! (Урок)
Как использовать технологию Microsoft средствами PHP (Урок)
Пишем чат на PHP (Урок)Частичное либо полное копирование материалов, представленных на этом ресурсе, запрещено!
Cлужба поддержки 
|
Полезная информация
разработчику
|
|
