Xwab
Форумыnavigate_nextПрограммирование на PHP

Подкажите код уменшения фоток в размере и разширении
Сообщения
Veres

Подкажите код к чату региону как можна уменшать загружаемие фотки как в контакте! Грузиш 2мп фотку уменшает на 640х480 и размер уменшает! Помогите пожалуста кто умеит!

27 Янв 2011, 9:36
mix

как уменьшать не знаю, но ты можешь этой функцией <img weight="640" height="480" src="link.ru/foto.jpg"/> выводить 2мп фото на страницу размером 640x480

27 Янв 2011, 11:10
Патриот:)

Veres, топ тема есть , и в полезные куски кода

27 Янв 2011, 11:27
Veres

Патриот , извини не нашол. А в каком под форуме? Или как називается?

27 Янв 2011, 11:32
Патриот:)

Veres, в обшем читай http://php.su/articles/?cat=graph

27 Янв 2011, 11:40
Veres

Патриот , белая страница там!

27 Янв 2011, 11:49
Патриот:)

http://php.su/ -> статьи -> Работа с графикой

27 Янв 2011, 11:53
Rior

http://snippets.pp.ru/article/35

28 Янв 2011, 18:50
Rior


<?php
/*
*предпросмотр изображений
*автор: nc_soft
*15.09.07
*/
 
//путь к файлу картинки (jpg,gif,png)
$img='example.jpg';
 
$info=getimagesize($img);
 
//оригинальная ширина
$w_or=$info[0];
 
//оригинальная высота
$h_or=$info[1];
 
//тип
$type=$info['mime'];
 
 
//создаем изображение
$im1='';
 
if ($type=='image/jpeg')
$im1=ImageCreateFromJpeg($img);
 
if ($type=='image/gif')
$im1=ImageCreateFromGif($img);
 
if ($type=='image/png')
$im1=ImageCreateFromPng($img);
 
if (!$im1)
die('ошибка');
 
//далее условимся, что максимальный размер одной из сторон превьюшки равен 80 пикселей
//высчитаем коэффицент масштаба
if ($w_or>$h_or)
{
    $k=$w_or/80;
}
else
{
    $k=$h_or/80;
}
 
//высчитаем размеры превьюшки
$w=round($w_or/$k);
$h=round($h_or/$k);
 
 
//$im2=ImageCreate($w,$h); (если хотите ПЛОХОЕ качество картинки испоьзуйте эту функцию ;) )
$im2=imagecreatetruecolor($w,$h);
 
//ImageCopyResized($im2,$im1,0,0,0,0,$w,$h,$w_or,$h_or); (если хотите ПЛОХОЕ качество картинки испоьзуйте эту функцию ;) )
imagecopyresampled($im2,$im1,0,0,0,0,$w,$h,$w_or,$h_or);
 
if ($type=='image/jpeg')
{
    header('Content-type:image/jpeg');
    ImageJpeg($im2);
}
elseif ($type=='image/gif')
{
    header('Content-type:image/gif');
    ImageGif($im2);
}
elseif ($type=='image/png')
{
    header('Content-type:image/png');
    ImagePng($im2);
}
else die('ошибка');
 
?>

28 Янв 2011, 18:50
Fuelen

размер пофиг большой будет)) мож и станет менше, но... когда уменшал картинку (до 10 кб вес был), то выходила картинка в несколько раз тяжелее, но разрешение менше))) ыы

28 Янв 2011, 19:20
Ответить на тему