Forum Webscript.Ru

Программирование => PHP => Тема начата: KaToK от 07 Февраля 2002, 13:36:17

Название: Тема дня! Как сделать resize картинки?
Отправлено: KaToK от 07 Февраля 2002, 13:36:17
Блин, ну видел жлобский порно-сайт и там предпросмотр на PHP и там автоматический resize картинки ... Классно, да ....
Если поможете то пива по мылу вышлю или при всрече поставлю ... Очень надо ... Да и хочется посмотреть как это делается ....

Вроде и все ... Не стесняйтесь пишите ... потому как кто не пишет тот и не знает ...
Название: Тема дня! Как сделать resize картинки?
Отправлено: Макс от 07 Февраля 2002, 14:58:05

$img= ImageCreateFromJPEG (\'foto.jpeg\');
 // получаем текущие размеры картинки
 $imgX=ImageSX($img);  // ширину
 $imgY=ImageSY($img);  // высоту

 // размеры выводимой  фотографии будет в 3 раза меньше
 $curImgSX=intval($imgX/$scale);
 $curImgSY=intval($imgY/$scale);

 // создаем новую фотографию , которую и будем выводить.
 $curImg=ImageCreate($curImgSX,$curImgSY);
 ImageCopyResized($curImg,$img,0,0,0,0,$curImgSX,$curImgSY,$imgX,$imgY);
Название: Тема дня! Как сделать resize картинки?
Отправлено: KaToK от 07 Февраля 2002, 18:05:21
Макс все классно, токо оно не совсем работает. Вместо уменьшенной картинки скрипт выдает поток данных ... типа JPG токо не полностью ....

Мож еще че подскажешь как его запустить или место где есть рабочая версия...

Буду очень признателен...
Название: Тема дня! Как сделать resize картинки?
Отправлено: Stek от 07 Февраля 2002, 18:50:09
http://www.phpdevs.com/openbb/read.php?TID=99
и пример, и возможные проблеммы с их решениями :)
Название: Тема дня! Как сделать resize картинки?
Отправлено: Макс от 07 Февраля 2002, 21:32:09
Цитировать
Макс все классно, токо оно не совсем работает.

Что ж классного? :)

Я ж показал только как уменшить фотку, а выдавать ее клиенту или записывать в файл  это уже через imageJPEG()
Ты хедеры правильные выдавал? (image/jpeg)
Название: Тема дня! Как сделать resize картинки?
Отправлено: vvv от 16 Мая 2003, 17:02:01
Никогда раньше не ресайзил картинки, а вот теперь понадобилось уменьшить JPGшную картинку.
Сделал практически так же, как тут выше и писали.
Работает - уменьшает, НО уменьшеная картинка сохранилась в 256 цветах!!!
Как сохранить полноцветный JPG???
Название: Тема дня! Как сделать resize картинки?
Отправлено: vvv от 16 Мая 2003, 17:11:10
Попробовал в Фотошопе подобным образом извратит картинку и увидел, что похоже GD сохранил её не в 256, а в 16 цветах!!!!
Название: Тема дня! Как сделать resize картинки?
Отправлено: Макс от 16 Мая 2003, 17:17:35
function resize_image($width, $height, $source, $destination) {
      $src = imagecreatefromjpeg($source);
      $img = imagecreatetruecolor($width, $height);
      imagecopyresampled($img, $src, 0, 0, 0, 0, $width, $height, imagesx($src),imagesy($src));
//    @unlink($destination);
      imageJPEG($img, $destination);
}
Название: Тема дня! Как сделать resize картинки?
Отправлено: vvv от 16 Мая 2003, 18:14:07
Урррррррра!!!!! Заработала!
Спасиба, Макс!