Автор Тема: Тема дня! Как сделать resize картинки?  (Прочитано 9227 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн KaToK

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 4
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.beep.ru/~svetik
Тема дня! Как сделать resize картинки?
« : 07 Февраля 2002, 13:36:17 »
Блин, ну видел жлобский порно-сайт и там предпросмотр на PHP и там автоматический resize картинки ... Классно, да ....
Если поможете то пива по мылу вышлю или при всрече поставлю ... Очень надо ... Да и хочется посмотреть как это делается ....

Вроде и все ... Не стесняйтесь пишите ... потому как кто не пишет тот и не знает ...

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Тема дня! Как сделать resize картинки?
« Ответ #1 : 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);
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн KaToK

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 4
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.beep.ru/~svetik
Тема дня! Как сделать resize картинки?
« Ответ #2 : 07 Февраля 2002, 18:05:21 »
Макс все классно, токо оно не совсем работает. Вместо уменьшенной картинки скрипт выдает поток данных ... типа JPG токо не полностью ....

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

Буду очень признателен...

Оффлайн Stek

  • Обожатель PHP
  • Ветеран
  • *****
  • Сообщений: 532
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.phpdevs.com
Тема дня! Как сделать resize картинки?
« Ответ #3 : 07 Февраля 2002, 18:50:09 »
http://www.phpdevs.com/openbb/read.php?TID=99
и пример, и возможные проблеммы с их решениями :)
PHP без башни - сделай свою жизнь разнообразнее.
Разбираю скрипты, собираю заново, вытираю пыль с баз данных.

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Тема дня! Как сделать resize картинки?
« Ответ #4 : 07 Февраля 2002, 21:32:09 »
Цитировать
Макс все классно, токо оно не совсем работает.

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

Я ж показал только как уменшить фотку, а выдавать ее клиенту или записывать в файл  это уже через imageJPEG()
Ты хедеры правильные выдавал? (image/jpeg)
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн vvv

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 104
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Тема дня! Как сделать resize картинки?
« Ответ #5 : 16 Мая 2003, 17:02:01 »
Никогда раньше не ресайзил картинки, а вот теперь понадобилось уменьшить JPGшную картинку.
Сделал практически так же, как тут выше и писали.
Работает - уменьшает, НО уменьшеная картинка сохранилась в 256 цветах!!!
Как сохранить полноцветный JPG???
ура!

Оффлайн vvv

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 104
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Тема дня! Как сделать resize картинки?
« Ответ #6 : 16 Мая 2003, 17:11:10 »
Попробовал в Фотошопе подобным образом извратит картинку и увидел, что похоже GD сохранил её не в 256, а в 16 цветах!!!!
ура!

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Тема дня! Как сделать resize картинки?
« Ответ #7 : 16 Мая 2003, 17:17:35 »
function resize_image($width$height$source$destination) {
      
$src imagecreatefromjpeg($source);
      
$img imagecreatetruecolor($width$height);
      
imagecopyresampled($img$src0000$width$heightimagesx($src),imagesy($src));
//    @unlink($destination);
      
imageJPEG($img$destination);
}
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн vvv

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 104
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Тема дня! Как сделать resize картинки?
« Ответ #8 : 16 Мая 2003, 18:14:07 »
Урррррррра!!!!! Заработала!
Спасиба, Макс!
ура!

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28