Новосибирск +7(983)

По всем вопросам :

Данная функция позволит создать миниатюра, удобно для представления в администивной части и галереи пользователя, нужно указать путь до оригинала и путь до будующей миниатюры и ее размер(можно ограничиться только один показателем высотой или шириной), картинка будет уменьшина пропорционально:

function create_thumb($image,$thumbimage,$h_o = false,$w_o = false) 
{
if (($w_o < 0) || ($h_o < 0)){return false;}
list($w_i, $h_i, $type) = getimagesize($image); // Получаем размеры и тип изображения (число)
$types = array("", "gif", "jpeg", "png"); // Массив с типами изображений
$ext = $types[$type]; // Зная "числовой" тип изображения, узнаём название типа
if ($ext)
{
$func = 'imagecreatefrom'.$ext; // Получаем название функции, соответствующую типу, для создания изображения
$img_i = $func($image); // Создаём дескриптор для работы с исходным изображением
} else {return false;}
/* Если указать только 1 параметр, то второй подстроится пропорционально */
if (!$h_o) $h_o = $w_o / ($w_i / $h_i);
if (!$w_o) $w_o = $h_o / ($h_i / $w_i);
$img_o = imagecreatetruecolor($w_o, $h_o); // Создаём дескриптор для выходного изображения
imagecopyresampled($img_o, $img_i, 0, 0, 0, 0, $w_o, $h_o, $w_i, $h_i); // Переносим изображение из исходного в выходное, масштабируя его
$func = 'image'.$ext; // Получаем функция для сохранения результата
return $func($img_o, $thumbimage); // Сохраняем изображение в тот же файл, что и исходное, возвращая результат этой операции
}

 

Комментарии (0)

Здесь ещё нет оставленных комментариев.

Оставьте свой комментарий

  1. Добавление комментария от гостя.
Вложения (0 / 3)
Share Your Location

Как с нами связаться

По всем вопросам пишите  

OnLine заказ

Отправить сообщение

Нажимая на кнопку «Отправить сообщение», я соглашаюсь:
* с условиями публичной оферты
* обработку моих персональных данных


RAD компоненты

Please publish modules in offcanvas position.