Спустя 1 минута, 39 секунд (1.02.2012 - 17:50) neadekvat написал(а):
Что ответила документация? Что в ней непонятно?
Спустя 19 секунд (1.02.2012 - 17:50) GET написал(а):
копирует прямоугольную часть изображения в другое изображение, плавно интерполируя пикселные значения таким образом, что, в частности, уменьшение размера изображения сохранит его чёткость и яркость. Dst_im это изображение назначения, src_im - исходное изображение.Если координаты и ширина и высота источника и назначения различны, будет выполнено соответствующее растягивание и сжатие изображения.Координаты даны относительно верхнего левого угла.Эта функция может использоваться для копирования областей в пределах одного изображения (если dst_im - то же, что и src_im), но если области перекрываются, результат непредсказуем.
Спустя 1 минута, 4 секунды (1.02.2012 - 17:51) GET написал(а):
Oggy
Сначала нужно холст нужных размеров создать, вычислить пропорции и потом только копировать
Сначала нужно холст нужных размеров создать, вычислить пропорции и потом только копировать
Спустя 6 минут, 27 секунд (1.02.2012 - 17:57) Nikitian написал(а):
Рекомендую использовать imagecopyresampled() для ресайза со сглаживанием.
Спустя 2 минуты, 6 секунд (1.02.2012 - 18:00) Oggy написал(а):
Цитата (Nikitian @ 1.02.2012 - 14:57) |
Рекомендую использовать imagecopyresampled() для ресайза со сглаживанием. |
а что тут в скобках?
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Спустя 1 минута, 48 секунд (1.02.2012 - 18:01) GET написал(а):
www.google.com
Спустя 2 минуты, 13 секунд (1.02.2012 - 18:04) Nikitian написал(а):
Цитата (Oggy @ 1.02.2012 - 18:00) | ||
а что тут в скобках? :) |
В скобках то же самое. Просто другой алгоритм используется. Даже ссылку специально сделал, ну раз не помогла ссылка, то так:
bool imagecopyresampled ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h , int $src_w , int $src_h )
Спустя 2 часа, 21 минута, 25 секунд (1.02.2012 - 20:25) Oggy написал(а):
я пишу так
copy($upload_path.$filename,$upload_path.'ava_'.$filename) or die("Could not copy $name");
imagecopyresampled($upload_path.$filename,$upload_path.'ava_'.$filename,1,1,1,1,1,1,1,1);
// пишет вот такую ошыбку: Warning: imagecopyresampled() expects parameter 1 to be resource, string given
Спустя 31 минута, 55 секунд (1.02.2012 - 20:57) GET написал(а):
Oggy
Ты все неправильно делаешь...ты читал документацию?
Ты все неправильно делаешь...ты читал документацию?
Цитата |
$upload_path.$filename,$upload_path.'ava_'.$filename, |
сздесь не файлы должны быть, а их образы как бы.
Цитата |
1,1,1,1,1,1,1,1 |
Координаты тоже неправильные.
Спустя 4 минуты, 3 секунды (1.02.2012 - 21:01) Oggy написал(а):
Цитата (A.B.C. @ 1.02.2012 - 17:57) | ||||
Oggy Ты все неправильно делаешь...ты читал документацию?
сздесь не файлы должны быть, а их образы как бы.
Координаты тоже неправильные. |
$upload_path-ето путь к файлу
$filename-имя файла
//в документации говорится что ей не надо передавать название файла изображения, а нужно дать ссылку на ресурс
// НО КАК ОНО БУДЕТ ЗНАТЬ С КАКИМ ФАЙЛОМ РАБОТАТЬ? )
imagecopyresampled ($upload_path.$filename,$upload_path.'ava_'.$filename,0,0,0,0,50,50,100,100);
Спустя 2 минуты, 8 секунд (1.02.2012 - 21:03) GET написал(а):
$upload_path.$filename - загруженный файл так?
1.
получаешь образ загруженной картинки...это типа, как ее ПХП запоминает.
2. Тебе ее надо теперь в новые размеры выгрузить:
создаешь холст, нужных тебе размеров например 150 на 150.
3. Только тогда
1.
$image_cr = imagecreatefromjpeg($upload_path.$filename);
получаешь образ загруженной картинки...это типа, как ее ПХП запоминает.
2. Тебе ее надо теперь в новые размеры выгрузить:
$image_hr = @imagecreatetruecolor($width, $high);
создаешь холст, нужных тебе размеров например 150 на 150.
3. Только тогда
imagecopyresampled($image_hr ,$image_cr,0,0,0,0,$w,$h,$w2,$h2);
Спустя 2 минуты, 44 секунды (1.02.2012 - 21:06) GET написал(а):
Цитата |
копирует прямоугольную часть изображения в другое изображение, плавно интерполируя пикселные значения таким образом, что, в частности, уменьшение размера изображения сохранит его чёткость и яркость. Dst_im это изображение назначения, src_im - исходное изображение.Если координаты и ширина и высота источника и назначения различны, будет выполнено соответствующее растягивание и сжатие изображения.Координаты даны относительно верхнего левого угла.Эта функция может использоваться для копирования областей в пределах одного изображения (если dst_im - то же, что и src_im), но если области перекрываются, результат непредсказуем. |
вдумайся, как происходит "натягивание" изображения
Спустя 11 минут, 17 секунд (1.02.2012 - 21:17) GET написал(а):
imagejpeg($image_hr, $upload_path.'ava_'.$filename, 75);//Записывает изображение, (75-качество)
Спустя 2 минуты, 36 секунд (1.02.2012 - 21:20) Oggy написал(а):
Цитата (A.B.C. @ 1.02.2012 - 18:03) |
$upload_path.$filename - загруженный файл так? 1. $image_cr = imagecreatefromjpeg($upload_path.$filename); получаешь образ загруженной картинки...это типа, как ее ПХП запоминает. 2. Тебе ее надо теперь в новые размеры выгрузить: $image_hr = @imagecreatetruecolor($width, $high); создаешь холст, нужных тебе размеров например 150 на 150. 3. Только тогда imagecopyresampled($image_hr ,$image_cr,0,0,0,0,$w,$h,$w2,$h2); |
а как создать холт?
Спустя 4 минуты, 52 секунды (1.02.2012 - 21:25) GET написал(а):
2 шаг
Цитата |
$image_hr = @imagecreatetruecolor($width, $high); |
$image_hr = @imagecreatetruecolor(150, 150);
создаст холст 150 на 150 пикселей
3. шаг.
imagecopyresampled($image_hr ,$image_cr,0,0,0,0,150,150,$w,$h);
натягиваешь свою загруженную картинку точнее сужаешь...$w,$h - ширина и высота твой загруженной картинки
Спустя 1 минута, 24 секунды (1.02.2012 - 21:26) Oggy написал(а):
оздало копию чёрного квадрата
написал так
написал так
$image_cr = imagecreatefromjpeg($upload_path.$filename);
$width=50;
$high=50;
$image_hr = @imagecreatetruecolor($width, $high);
imagejpeg($image_hr, $upload_path.'ava_'.$filename, 25);
//создало копию чёрного квадрата
Спустя 44 секунды (1.02.2012 - 21:27) GET написал(а):
$size = GetImageSize($upload_path.$filename);// вытаскиваем,0-ширину, 1-высоту, 2-тип, 3-текстовая строка
$w=$size[0];
$h=$size[1];
Спустя 1 минута, 53 секунды (1.02.2012 - 21:29) GET написал(а):
$image_hr = @imagecreatetruecolor($width, $high);
//создать черный квадрат стороной 50.
imagejpeg($image_hr, $upload_path.'ava_'.$filename, 25);
// записать черный квадрат
Малевич был бы доволен :)
Спустя 55 секунд (1.02.2012 - 21:29) GET написал(а):
Цитата |
3. Только тогда imagecopyresampled($image_hr ,$image_cr,0,0,0,0,$w,$h,$w2,$h2); |
ты пропустил третий шаг
Спустя 8 минут, 40 секунд (1.02.2012 - 21:38) Oggy написал(а):
Цитата (A.B.C. @ 1.02.2012 - 18:29) | ||
ты пропустил третий шаг |
теперь большой чёрный квадрат :)
$image_cr = imagecreatefromjpeg($upload_path.$filename);
$width=100;
$high=100;
$image_hr = @imagecreatetruecolor($width, $high);
imagejpeg($image_hr, $upload_path.'ava_'.$filename, 25);
imagecopyresampled($image_hr,$image_cr,0,0,0,0,$width,$high,50,50);
Спустя 5 минут, 52 секунды (1.02.2012 - 21:44) GET написал(а):
Oggy
поменяй местами последнюю и предпоследнюю строчки
поменяй местами последнюю и предпоследнюю строчки
Спустя 7 минут, 36 секунд (1.02.2012 - 21:52) Oggy написал(а):
теперь квадраты разних цветов
$image_cr = imagecreatefromjpeg($upload_path.$filename);
$width=100;
$high=100;
$image_hr = @imagecreatetruecolor($width,$high);
imagecopyresampled($image_hr,$image_cr,0,0,0,0,$width,$high,50,50);
imagejpeg($image_hr, $upload_path.'ava_'.$filename, 75);//75-качество
Спустя 3 минуты, 33 секунды (1.02.2012 - 21:55) GET написал(а):
Каких? А ты ширину почему ставишь 100 на 100?
Цитата |
$size = GetImageSize($upload_path.$filename);// вытаскиваем,0-ширину, 1-высоту, 2-тип, 3-текстовая строка $w=$size[0]; $h=$size[1]; |
вот я же тебе показал как узнать ширину и высоту загруженной тобой картинки. Юзеров тоже будешь просить, чтоб они только 100 на 100 картинки загружали и не обманывали тебя???
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Спустя 2 минуты, 22 секунды (1.02.2012 - 21:58) GET написал(а):
$size = GetImageSize($upload_path.$filename);
$image_cr = imagecreatefromjpeg($upload_path.$filename);
$width=$size[0];
$high=$size[1];
$image_hr = @imagecreatetruecolor(50,50);
imagecopyresampled($image_hr,$image_cr,0,0,0,0,50,50,$width,$high);
imagejpeg($image_hr, $upload_path.'ava_'.$filename, 75);//75-качество
так попробуй
Спустя 1 минута, 31 секунда (1.02.2012 - 21:59) Oggy написал(а):
фотка получается как фон
$image_cr = imagecreatefromjpeg($upload_path.$filename);
$size = GetImageSize($upload_path.$filename);// вытаскиваем,0-ширину, 1-высоту, 2-тип, 3-текстовая строка
$width=$size[0];
$high=$size[1];
$image_hr = @imagecreatetruecolor($width,$high);
imagecopyresampled($image_hr,$image_cr,0,0,0,0,$width,$high,50,50);
imagejpeg($image_hr, $upload_path.'ava_'.$filename, 75);//75-качество
Спустя 2 минуты, 4 секунды (1.02.2012 - 22:01) Oggy написал(а):
Цитата (A.B.C. @ 1.02.2012 - 18:58) |
$size = GetImageSize($upload_path.$filename); так попробуй |
РАБОТАЕТ МАЗА ФАКА!
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
СПАСИБО БОЛЬШУЩИЕ
Спустя 1 минута, 9 секунд (1.02.2012 - 22:02) GET написал(а):
![wink.gif](http://phpforum.ru/html/emoticons/wink.gif)